/* Homepage typography is the shared reference for the four main pages. */
.site-standard{--site-heading-size:clamp(48px,6.1vw,96px);--site-body-size:20px}
.site-standard #main :is(h1,h2){font-family:Italiana,serif;font-size:var(--site-heading-size);font-weight:400;line-height:1;letter-spacing:-.04em}
.site-standard #main :is(h1,h2) em{font:inherit;letter-spacing:inherit;color:inherit}
.site-standard #main p{font-family:'Space Grotesk',sans-serif;font-size:var(--site-body-size);font-weight:400;line-height:1.65;letter-spacing:normal}
.site-standard #main :is(.required-note,.form-safety,.privacy-line,.form-status){font-size:var(--site-body-size)!important}
.site-standard #main h3{font:500 24px/1.35 'Space Grotesk',sans-serif;letter-spacing:normal}
.site-standard .fine-list,.site-standard .contact-details address{font-size:var(--site-body-size);line-height:1.65}
@media(max-width:760px){.site-standard{--site-heading-size:clamp(36px,10.8vw,60px);--site-body-size:16px}.site-standard #main h3{font-size:20px}}
@media(min-width:761px) and (max-height:500px){.site-standard{--site-heading-size:36px;--site-body-size:16px}}

/* Interior pages use neutral paper and dark text outside photographic sections. */
.site-standard:not(.home-page){--ink:#29251f;--muted:#75603b;--paper:#eeeae0;background:var(--paper);color:var(--ink)}
.site-standard:not(.home-page) :is(.service-introduction,.founder-intro,.consultation,.invitation){background:#f4f2e8}
.site-standard:not(.home-page) :is(.service-story,.founder-portrait,.how-it-begins,.background-story,.contact-details){background:#eeeae0}
.site-standard:not(.home-page) #main :is(h1,h2){color:#75603b}
.site-standard:not(.home-page) #main p{color:#3e3932}
.site-standard:not(.home-page) :is(.inner-hero,.contact-intro){background:#191713;color:#fff}
.site-standard:not(.home-page) #main :is(.inner-hero,.contact-intro) :is(h1,h2,p){color:#fff}
.site-standard:not(.home-page) .hero-shade{background:linear-gradient(90deg,rgba(17,17,17,.78),rgba(17,17,17,.38)),linear-gradient(0deg,rgba(17,17,17,.25),transparent)}
.site-standard:not(.home-page) .about-hero .hero-shade{background:linear-gradient(90deg,#191713 8%,rgba(25,23,19,.8) 42%,rgba(25,23,19,.32))}
.site-standard:not(.home-page) .contact-atmosphere .hero-shade{background:linear-gradient(90deg,rgba(17,17,17,.78),rgba(17,17,17,.6))}
.site-standard:not(.home-page) .service-visual{background:#191713}
.site-standard:not(.home-page) .cta-link{border-bottom-color:currentColor}
.site-standard:not(.home-page) .fine-list li::before{color:#75603b}
.site-standard:not(.home-page) .submit-button{background:#29251f;color:#fff}
.site-standard:not(.home-page) .submit-button:hover{background:#494035}
.site-standard:not(.home-page) :is(input,select,textarea){color:#29251f;border-color:#75603b}
.site-standard:not(.home-page) .consultation-form ::placeholder{color:#61594e}
.site-standard:not(.home-page) .consultation-form label>span{color:#61594e}
.site-standard:not(.home-page) :is(input,select,textarea):focus-visible{outline-color:#75603b}

/* Neutral header backing keeps navigation readable over both images and paper. */
.site-standard:not(.home-page) .site-header{background:rgba(25,23,19,.94);color:#fff;backdrop-filter:blur(12px)}
.site-standard .mobile-menu nav{background:#191713;border-color:#c6a56866;color:#fff}
.site-standard .nav .consult{border-radius:30px}
.site-standard .brand span{font-weight:400}
.site-standard .site-footer{color:#e7eadf}
.site-standard:not(.home-page) .inner-hero-copy>p{max-width:460px}
.site-standard:not(.home-page) .contact-heading p{max-width:40%}
@media(max-width:760px){
.site-standard:not(.home-page) .contact-heading p{max-width:none}
.site-standard:not(.home-page) .about-hero .hero-shade{background:linear-gradient(0deg,#191713,rgba(25,23,19,.8) 60%,rgba(25,23,19,.25))}
}

/* Photographs retain their original tones, without shading layers. */
.site-standard :is(.hero-shade,.world-shade){display:none}
.site-standard :is(.world-sea,.world-person,.ocean-reveal,.service-visual)::after{content:none;background:none}
.site-standard :is(.world img,.world video,.hero-media img,.contact-atmosphere video){filter:none}
.site-standard:not(.home-page) .site-header{background:#191713;backdrop-filter:none}


/* Plain service lists, separated by space rather than arrows or rules. */
.services-page .service-chapter .fine-list li{border-bottom:0;padding:8px 0}
.services-page .service-chapter .fine-list li::before{content:none}

/* Keep the sticky image transitions on the compositor during scroll. */
.services-page .service-frame{will-change:opacity,transform;backface-visibility:hidden}

/* Separate the getting-started steps with space. */
.services-page .how-it-begins li{border-top:0}

/* Match the Services closing invitation to the homepage. */
.site-standard.services-page .invitation{background:#e9ece3;color:#173a36}
.site-standard.services-page #main .invitation p{color:#173a36}
.site-standard.services-page .invitation .cta-link{color:#173a36;border-bottom-color:#173a3670}

/* Keep the estate headline's second phrase together at desktop widths. */
@media(min-width:761px){.services-page #estate h2{width:calc(100% + 3vw)}}

/* About Drew: one centered reading column, using the shared type sizes. */
.about-page .founder-intro{display:flex;flex-direction:column;align-items:center;gap:0;padding-block:clamp(65px,8vw,120px)}
.about-page .founder-intro>h2{width:100%;max-width:960px;margin:0 0 48px;text-align:left}
.about-page .founder-copy{width:100%;max-width:960px}
.about-page .founder-copy p{max-width:68ch}
.about-page .founder-copy p:first-child{margin-top:0}
.about-page .founder-copy p:last-child{margin-bottom:0}
.about-page .founder-copy+.founder-copy{margin-top:32px}
.about-page .founder-copy p+p{margin-top:32px}
@media(max-width:760px){.about-page .founder-intro>h2{margin-bottom:36px}.about-page .founder-copy+.founder-copy,.about-page .founder-copy p+p{margin-top:24px}}

/* One controller owns the About hero's framing and scroll motion. */
.about-page .about-hero .hero-media{inset:-4% 0 -4% 29%;overflow:hidden;background:#191713;animation:none;transform:translateY(var(--drew-photo-drift,0px));will-change:transform}
.about-page .about-hero .hero-media img{object-fit:cover;object-position:50% var(--drew-crop-y,12%);transform-origin:50% var(--drew-focal-y,150px);animation:none;transform:scale(var(--drew-photo-scale,1));will-change:transform}
@media(max-width:760px){.about-page .about-hero .hero-media{inset:0}}
@media(prefers-reduced-motion:reduce){.about-page .about-hero .hero-media,.about-page .about-hero .hero-media img{transform:none}}
.motion-off .about-page .about-hero .hero-media,.motion-off .about-page .about-hero .hero-media img{transform:none}

/* Contact opening: transparent navigation and one continuous text block. */
.site-standard.contact-page .site-header{position:absolute;background:transparent;backdrop-filter:none}
.contact-page .contact-heading{display:block}
.site-standard.contact-page .contact-heading p{position:static;max-width:560px;margin:28px 0 0}

/* Direct contact details give the consultation introduction useful weight. */
.contact-page .consultation-direct{margin-top:40px;font-style:normal;font-size:var(--site-body-size);line-height:1.65;display:flex;flex-direction:column;gap:12px;min-width:0}
.contact-page .consultation-direct::before{content:'';display:block;width:64px;height:1px;background:#a58a55;margin-bottom:12px}
.contact-page .consultation-direct .email-text{overflow-wrap:anywhere}
.contact-page .consultation-form label{font-size:15px}
.contact-page .consultation-form label>span{font-size:13px}

/* Place the Contact opening over the water, opposite the form introduction. */
@media(min-width:761px){
.contact-page .contact-heading{text-align:right}
.site-standard.contact-page .contact-heading p{margin-left:auto}
}
