body.rjn-public-body { margin: 0; background: #f8f5ee; color: #172538; font: 1rem/1.65 system-ui, sans-serif; }
.rjn-public-body *, .rjn-page-blocks * { box-sizing: border-box; }
.rjn-public-body a { color: inherit; }
.rjn-public-body :focus-visible { outline: 3px solid #c68615; outline-offset: 4px; }
.rjn-public-width, .rjn-page-width { width: min(1120px, 100% - 3rem); margin-inline: auto; }
.rjn-public-skip { position: absolute; left: 1rem; top: .5rem; z-index: 3; background: #fff; padding: .5rem; transform: translateY(-200%); }
.rjn-public-skip:focus { transform: none; }
.rjn-public-header { background: #f8f5ee; border-bottom: 1px solid #d9c9a9; }
.rjn-public-header-inner, .rjn-public-header nav { display: flex; align-items: center; flex-wrap: wrap; gap: .6rem clamp(.75rem, 2vw, 1.6rem); }
.rjn-public-header-inner { min-height: 82px; justify-content: space-between; padding-block: .65rem; }
.rjn-public-header a { text-decoration: none; }
.rjn-public-header nav a { font-size: .9rem; font-weight: 650; }
.rjn-public-header nav a:hover, .rjn-public-header nav [aria-current] { color: #805204; text-decoration: underline; text-underline-offset: .25em; }
.rjn-public-header .rjn-public-brand { display: inline-flex; gap: .4rem; align-items: center; color: #112a42; }
.rjn-public-brand strong, .rjn-public-brand small { display: block; line-height: 1; }
.rjn-public-brand strong { font-size: 2.3rem; letter-spacing: -.06em; }
.rjn-public-brand small { font-size: .73rem; margin-top: .2rem; }
.rjn-public-brand img { max-width: 175px; max-height: 55px; width: auto; height: auto; }
.rjn-public-header .rjn-public-header-cta, .rjn-page-blocks .wp-block-button__link { display: inline-block; padding: .75rem 1.25rem; border-radius: 5px; background: #8c5b0a; color: #fff; font: 700 .93rem/1.35 system-ui,sans-serif; text-decoration: none; }
.rjn-public-header .rjn-public-header-cta:hover, .rjn-page-blocks .wp-block-button__link:hover { background: #714706; }
.rjn-page-blocks { background: #f8f5ee; color: #172538; font: 1rem/1.65 system-ui,sans-serif; margin: 0; }
.rjn-page-blocks h1, .rjn-page-blocks h2, .rjn-page-blocks h3, .rjn-public-footer h2 { font-family: Georgia, serif; color: inherit; font-weight: 700; line-height: 1.09; margin: 0 0 .6em; letter-spacing: -.035em; }
.rjn-page-blocks h1 { font-size: clamp(2.65rem, 6vw, 5.25rem); }
.rjn-page-blocks h2 { font-size: clamp(2rem, 4.1vw, 3.45rem); }
.rjn-page-blocks h3 { font-size: 1.65rem; }
.rjn-page-blocks p { margin: 0 0 1rem; }
.rjn-page-blocks .rjn-page-eyebrow { color: #805204; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; font-size: .76rem; }
.rjn-page-hero { text-align: center; color: #fff; background: linear-gradient(165deg,#102d45,#112a42); padding: clamp(3.5rem, 7vw, 6.75rem) 0; }
.rjn-page-hero .rjn-page-width { max-width: 880px; }
.rjn-page-hero p:not(.rjn-page-eyebrow) { max-width: 40rem; margin-inline: auto; font-size: 1.13rem; }
.rjn-page-hero .rjn-page-eyebrow { color: #f4ca72; }
.rjn-page-hero .wp-block-buttons { justify-content: center; }
.rjn-page-hero .wp-block-button__link { background: #e3b450; color: #172538; }
.rjn-page-hero .wp-block-button__link:hover { background: #f0c770; }
.rjn-page-hero .rjn-outline .wp-block-button__link { background: #112a42; border: 1px solid #d7dce0; color: #fff; }
.rjn-photo-hero { background: linear-gradient(180deg,#081a2b91,#081a2be0), var(--rjn-page-photo, url('aerial.webp')) center 53% / cover no-repeat #102d45; }
.rjn-home-hero { padding-block: clamp(5rem, 12vw, 10rem); }
.rjn-page-section { padding: clamp(2.75rem, 6.4vw, 5.4rem) 0; }
.rjn-page-sand { background: #f0e7d1; }
.rjn-page-strip { border-bottom: 1px solid #d9c9a9; padding: .9rem 0; text-align: center; color: #694600; font-size: .9rem; font-weight: 700; }
.rjn-page-strip p { margin: 0; }
.rjn-page-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(1rem,4vw,2.5rem); }
.rjn-page-cards .rjn-page-card { border: 1px solid #d9c9a9; border-top: 4px solid #a77722; border-radius: 10px; background: #f8f5ee; padding: clamp(1.35rem,4vw,2.5rem); }
.rjn-page-cards .rjn-page-card + .rjn-page-card { border-top-color: #112a42; }
.rjn-page-reading { max-width: 780px; }
.rjn-page-questions h3 { border-top: 1px solid #d9c9a9; padding-top: 1rem; margin-top: 1rem; }
.rjn-page-inquiry { scroll-margin-top: 2rem; padding: clamp(1.25rem,4vw,2.5rem); background: #fffaf0; border: 1px solid #d9c9a9; border-radius: 10px; }
.rjn-public-footer { border-top: 1px solid #d9c9a9; padding: 2.75rem 0 1rem; }
.rjn-public-footer-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; }
.rjn-public-footer h2 { font-size: 1.25rem; }
.rjn-public-footer p, .rjn-public-footer a, .rjn-public-footer summary { font-size: .88rem; }
.rjn-public-footer-grid > section:nth-child(2) a { display: block; }
.rjn-public-footer details { margin-top: .4rem; }
.rjn-public-footer summary { cursor: pointer; }
.rjn-public-copyright { border-top: 1px solid #d9c9a9; padding-top: .85rem; margin-top: 1.25rem; }
@media (max-width: 720px) {
    .rjn-public-header nav { order: 2; flex-basis: 100%; }
    .rjn-public-header nav a { font-size: .82rem; }
    .rjn-page-cards, .rjn-public-footer-grid { grid-template-columns: 1fr; }
}
@media (max-width: 420px) {
    .rjn-public-width, .rjn-page-width { width: calc(100% - 2rem); }
}
.rjn-home-cards .rjn-page-card { --rjn-card-padding: clamp(1.35rem,4vw,2.5rem); padding: var(--rjn-card-padding); overflow: hidden; }
.rjn-home-cards .rjn-page-card::before { content: ""; display: block; margin: calc(-1 * var(--rjn-card-padding)) calc(-1 * var(--rjn-card-padding)) 1.55rem; height: clamp(145px,18vw,220px); background: url('seller.webp') center 43% / cover no-repeat; }
.rjn-page-blocks > :is(.rjn-page-section, .rjn-page-strip, .rjn-page-hero), .rjn-page-cards > .rjn-page-card { margin-block: 0; }

/* Full-width public sections with aligned inner content. */
.rjn-public-body #rjn-main,
.rjn-public-body #rjn-main > .rjn-page-blocks,
.rjn-public-body .rjn-page-blocks > .wp-block-group {
    width: 100%;
    max-width: none;
    margin: 0;
}
.rjn-public-width, .rjn-page-width { width: min(1240px, 90%); }
.rjn-public-header nav { margin-left: auto; }
.rjn-public-header nav a { color: #44433f; }
.rjn-public-header nav [aria-current] { color: #865d00; text-decoration: none; }
.rjn-public-header .rjn-public-header-cta,
.rjn-page-blocks .wp-block-button__link { background: #926100; border-radius: 6px; }
.rjn-page-blocks { color: #161514; }
.rjn-home-hero {
    display: grid;
    place-items: center;
    min-height: clamp(34rem, 70vh, 50rem);
    padding-block: clamp(5rem, 10vw, 9rem);
    background-image: linear-gradient(#0a1018a6, #0a1018b0), var(--rjn-page-photo, url('aerial.webp'));
}
.rjn-home-hero .rjn-page-width { max-width: 1130px; }
.rjn-home-hero h1 { font-size: clamp(2.65rem, 5vw, 5.15rem); line-height: 1.04; margin-bottom: .3em; }
.rjn-home-hero .rjn-page-eyebrow { color: #f1c457; font-size: .88rem; }
.rjn-home-hero p:not(.rjn-page-eyebrow) { max-width: 46rem; font-size: clamp(1rem,1.8vw,1.3rem); }
.rjn-home-hero .wp-block-buttons { margin-top: 2.25rem; gap: .85rem; }
.rjn-home-hero .wp-block-button__link,
.rjn-home-final .wp-block-button__link { padding: 1rem 1.65rem; background: #9e6b05; color: #fff; }
.rjn-home-hero .rjn-outline .wp-block-button__link,
.rjn-home-banner .rjn-outline .wp-block-button__link,
.rjn-home-final .rjn-outline .wp-block-button__link {
    background: #ffffff1f;
    border: 1px solid #ffffff73;
    color: #fff;
}
.rjn-home-highlights { padding-block: 2.6rem; border-bottom: 1px solid #dccfad; }
.rjn-four-up, .rjn-three-up { display: grid; gap: clamp(1rem, 3vw, 2rem); }
.rjn-four-up { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.rjn-three-up { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rjn-four-up > .wp-block-group, .rjn-three-up > .wp-block-group { margin: 0; }
.rjn-home-highlight { text-align: center; }
.rjn-home-highlight h3 { color: #8e620b; font-size: clamp(1.5rem, 3vw, 2.75rem); margin: 0 0 .2rem; }
.rjn-home-highlight p { color: #66480d; text-transform: uppercase; font-size: .75rem; letter-spacing: .04em; margin: 0; }
.rjn-home-cards .rjn-page-card { border-top: 1px solid #d9c9a9; background: #f8f5ee; }
.rjn-home-cards .rjn-page-card + .rjn-page-card::before { background: url('houses.webp') center 48% / cover no-repeat; }
.rjn-home-cards .rjn-page-card + .rjn-page-card .wp-block-button__link { background: #101010; }
.rjn-home-process .rjn-page-width, .rjn-home-questions { max-width: 1080px; }
.rjn-home-process .rjn-page-width > :is(h2,p), .rjn-home-questions > h2 { text-align: center; }
.rjn-home-process .rjn-three-up, .rjn-home-faq { margin-top: 2.4rem; }
.rjn-home-step .rjn-home-step-number { font: 700 2.9rem/1 Georgia,serif; color: #9a6a16; margin: 0 0 .7rem; }
.rjn-home-step h3, .rjn-home-answer h3 { font-size: 1.35rem; }
.rjn-home-answer { background: #f8f5ee; border: 1px solid #d9c9a9; border-radius: 10px; padding: 1.4rem; }
.rjn-home-answer p { margin: 0; }
.rjn-home-banner, .rjn-home-final { padding: clamp(3.3rem, 7vw, 6rem) 0; color: #fff; text-align: center; }
.rjn-home-banner { background: linear-gradient(#091521ba,#091521ba), url('seller.webp') center 42% / cover no-repeat; }
.rjn-home-final { background: #0b0b0b; }
.rjn-home-banner .wp-block-buttons, .rjn-home-final .wp-block-buttons { justify-content: center; gap: .8rem; }
.rjn-home-final p { max-width: 38rem; margin-inline: auto; }
.rjn-public-footer { background: #f8f5ee; }
@media (max-width: 720px) {
    .rjn-public-header nav { margin-left: 0; }
    .rjn-home-hero { min-height: 32rem; }
    .rjn-four-up { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rjn-three-up { grid-template-columns: 1fr; }
    .rjn-home-process .rjn-three-up, .rjn-home-faq { margin-top: 1.7rem; }
}

.rjn-cash-offer {
    --rjn-form-ink: #112a42;
    --rjn-form-border: #a69a85;
    color: var(--rjn-form-ink);
}
.rjn-cash-offer .rjn-cash-intro {
    color: #4b4c48;
    margin: 0 0 1.35rem;
}
.rjn-cash-grid, .rjn-cash-address {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem 1rem;
}
.rjn-cash-grid label {
    display: grid;
    align-content: start;
    gap: .3rem;
    font-size: .9rem;
    font-weight: 650;
}
.rjn-cash-wide { grid-column: 1 / -1; }
.rjn-cash-grid input, .rjn-cash-grid textarea {
    box-sizing: border-box;
    min-height: 46px;
    min-width: 0;
    width: 100%;
    padding: .65rem .75rem;
    border: 1px solid var(--rjn-form-border);
    border-radius: 6px;
    background: #fff;
    color: var(--rjn-form-ink);
    font: 400 1rem/1.4 system-ui, sans-serif;
}
.rjn-cash-grid textarea { resize: vertical; }
.rjn-cash-grid input:focus, .rjn-cash-grid textarea:focus {
    border-color: #926100;
    outline: 2px solid #926100;
    outline-offset: 1px;
}
.rjn-cash-offer .rjn-cash-submit {
    min-height: 46px;
    margin-top: 1.35rem;
    padding: .8rem 1.4rem;
    border: 0;
    border-radius: 6px;
    background: #926100;
    color: #fff;
    font: 700 .95rem/1.35 system-ui, sans-serif;
    cursor: pointer;
}
.rjn-cash-offer .rjn-cash-submit:enabled:hover { background: #714706; }
.rjn-cash-offer .rjn-cash-submit:disabled { background: #775c2b; cursor: default; }
.rjn-cash-offer .rjn-cash-status { color: #5b503d; margin: .55rem 0 0; font-size: .84rem; }
@media (max-width: 580px) {
    .rjn-cash-grid { grid-template-columns: minmax(0, 1fr); }
    .rjn-cash-offer .rjn-cash-submit { width: 100%; }
}
