/* Isolated white cosmetic direction. Existing selector appearance stays intact. */
:root { --paper:#fff; --soft:#fff; --ink:#302a35; --muted:#68616b; --line:#e8e1de; --plum:#352d3e; --iris:#665577; }
body { background:#fff; }
.site-header.home-header:not(.menu-open),.site-header.home-header.past-home-hero:not(.menu-open) { color:var(--ink); --nav-accent:var(--iris); background:linear-gradient(115deg,rgba(255,255,255,.9),rgba(255,255,255,.78)); border-bottom-color:rgba(74,51,62,.1); box-shadow:0 6px 24px rgba(55,39,52,.045); }
.site-header.home-header:not(.menu-open) .brand-color { opacity:1; }
.site-header.home-header:not(.menu-open) .brand-white { opacity:0; }
.home-header.past-home-hero:not(.menu-open) .nav-actions .button-primary { color:#fff; background:var(--plum); border-color:var(--plum); }
.home-hero,.home-hero .hero-media { background:#f7f3ee; color:var(--ink); }
.home-hero .hero-media::after { background:linear-gradient(90deg,#faf8f5 0%,rgba(250,248,245,.98) 27%,rgba(250,248,245,.91) 43%,rgba(250,248,245,.36) 63%,rgba(250,248,245,0) 82%); }
.home-hero #hero-title { color:var(--ink); }
.home-hero #hero-title em { color:#80604f; }
.home-hero .eyebrow,.home-hero .hero-proof dt { color:#785b50; }
.home-hero .hero-lede { color:#514850; }
.home-hero .hero-proof,.home-hero .hero-proof > div { border-color:rgba(67,48,58,.2); }
.home-hero .hero-proof dd,.home-hero .proof-link,.home-hero .proof-arrow { color:var(--ink); }
.home-hero .hero-proof > div::before { background:linear-gradient(90deg,rgba(236,207,192,.55),rgba(255,255,255,.35)); }
.home-hero .hero-proof > div:hover .proof-arrow { color:#80604f; }
.home-hero .hero-actions .button-primary { color:var(--plum); border-color:#a18c81; }
.history,.trust,.private-results,.visit,.review-band,.closing,.page-hero,.contact-hero { color:var(--ink); background:#faf7f4; }
.trust,.visit,.page-hero,.contact-hero { background:#f7f5f8; }
.history :is(h2,p,small,span),.trust :is(h2,h3,p,span),.private-results :is(h2,h3,p,small,span),.visit :is(h2,p,address,a,dt,dd),.review-band :is(p,blockquote,figcaption),.closing :is(h2,p,a),.page-hero :is(h1,p,a,dt,dd),.contact-hero :is(h1,p,a) { color:var(--ink); }
.history .section-kicker,.trust .section-kicker,.private-results .section-kicker,.visit .section-kicker,.review-band .section-kicker,.page-hero .eyebrow { color:#785b50; }
.history-home .history-number-lockup { color:#94705d; }
.history-home .heritage-logo-link,.history-home .heritage-logo-link:first-child,.history-principles,.history-principles span + span,.trust-proof-list article + article,.hours,.hours div { border-color:var(--line); }
.history-home .heritage-logo-link img { filter:none; opacity:1; mix-blend-mode:multiply; }
.access-preview { background:#fff; border-color:var(--line); box-shadow:0 16px 50px rgba(67,48,58,.05); }
.access-preview .preview-field { color:var(--muted); border-color:var(--line); }
.access-preview .preview-field input { color:var(--ink); }
.access-preview button { color:#fff; background:var(--plum); border-color:var(--plum); }
.visit-logo { filter:none; }
.visit-map { background:#f4f0ed; }
.review-band + .closing::before { background:#c7b6ac; }
.review-dots button { border-color:#947b6c; }
.review-dots button.is-active { background:#947b6c; }
.closing .button-light,.private-results .button-light,.page-hero .button-primary { color:var(--plum); border-color:#c6b5aa; background:#fff; }
.site-footer,.consultation,.team,.photo-story,.brands,.questions,.requested,.treatments { background:#fff; }
.site-heritage { background:#faf7f4; }
.crumbs,.crumbs a { color:var(--muted); }
@media(max-width:920px) {
 .home-hero .hero-media::after { background:linear-gradient(90deg,rgba(250,248,245,.95),rgba(250,248,245,.65) 60%,rgba(250,248,245,.15)),linear-gradient(0deg,#faf8f5 0%,rgba(250,248,245,.15) 75%); }
}

/* Explicit inherited text colours from the original dark sections. */
.history-home .history-copy p,.private-results .private-results-copy > p:not(.section-kicker),.access-preview > p:last-child { color:var(--muted); }
.brands,.brands :is(h2,p,a,span) { color:var(--ink); }
.brands .brand-rail span,.brands .brand-rail a { border-color:var(--line); }
.review-dots button::before { border-color:#947b6c; }
.review-dots button.is-active::before { background:#947b6c; }
.review-dots button.is-active { background:transparent; }
.home-header.past-home-hero:not(.menu-open) .nav-actions .button-primary:hover { color:var(--plum); background:#f2c9b8; border-color:#f2c9b8; }
@media(min-width:921px) { .home-hero .hero-lede { max-width:650px; } }

.brands .section-kicker,.history .history-copy p { color:var(--muted); }
.page-hero-photo .crumbs,.page-hero-photo .crumbs a { color:#514850; }
.site-header.home-header.menu-open .brand-color { opacity:1; }
.site-header.home-header.menu-open .brand-white { opacity:0; }
.site-header.home-header .nav-panel { background:rgba(255,255,255,.98); }
.access-preview .preview-field input { border-color:var(--line); background:#fcfaf8; }

.page-hero-photo { background:#faf8f5; color:var(--ink); }
.page-hero-photo .hero-media::after { background:linear-gradient(90deg,rgba(250,248,245,.99),rgba(250,248,245,.95) 35%,rgba(250,248,245,.75) 55%,rgba(250,248,245,.08)); }
.page-hero-photo .hero-media img { filter:brightness(1.06); }
.page-hero-photo :is(h1,.hero-lede,.text-link,.proof-link,.hero-proof dd) { color:var(--ink); }
.page-hero-photo .hero-proof dt { color:#785b50; }
.page-hero-photo .hero-proof,.page-hero-photo .hero-proof > div { border-color:#c6b5aa; }
.page-hero-photo .button-primary { background:var(--plum); color:#fff; border-color:var(--plum); }
.page-hero-photo .button-primary:hover { background:#f2c9b8; color:var(--plum); }

.site-header.home-header.past-home-hero:not(.menu-open) .brand-color { opacity:1; }
.site-header.home-header.past-home-hero:not(.menu-open) .brand-white { opacity:0; }
.visit .visit-logo { filter:brightness(0) saturate(100%); opacity:.82; }

/* Clear white glass, with a restrained highlight and readable color logo. */
.site-header.home-header:not(.past-home-hero):not(.menu-open),
.site-header.home-header.past-home-hero:not(.menu-open),
.site-header.home-header.menu-open {
 background:linear-gradient(115deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.88) 48%,rgba(249,247,251,.94) 100%);
 border-bottom:1px solid rgba(94,75,104,.1);
 box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(255,255,255,.7),0 5px 22px rgba(48,42,53,.04);
 backdrop-filter:blur(22px) saturate(1.12);
 -webkit-backdrop-filter:blur(22px) saturate(1.12);
}
.visit .visit-logo { filter:none; opacity:1; }
.history-home { background:#fff; }
.history-home .history-number-lockup { opacity:1; color:#94705d; }
.history-home .history-brand-row,.site-heritage {
 background:#fff; border-top:1px solid #e2dbdf; border-bottom:1px solid #e2dbdf;
}
.history-home .history-brand-row { padding-block:12px; }
.history-home .heritage-logo-link,.history-home .heritage-logo-link:first-child,
.site-heritage .heritage-logo-link { border:0; padding:14px 24px; }
.history-home .heritage-logo-link img,.site-heritage .heritage-logo-link img,
.history-home .heritage-logo-link:hover img,.site-heritage .heritage-logo-link:hover img {
 filter:none; opacity:1; mix-blend-mode:normal;
}

/* Selector paused: let the existing treatment categories fill the dropdown. */
.site-header.home-header #treatments-menu { grid-template-columns:minmax(0,1fr); }
.site-header.home-header #treatments-menu > .nav-panel-links { width:100%; }



/* Interaction colours belong to the white draft, including keyboard focus. */
.brands .brand-rail > span { padding:0; }
.brands .brand-rail > span > a {
 width:100%; min-height:92px; padding:22px; align-items:center;
 color:var(--ink); text-decoration:none;
 background-image:linear-gradient(90deg,#f2c9b8,#f8ded0);
 background-position:left center; background-repeat:no-repeat; background-size:0% 100%;
 transition:background-size .35s var(--ease),color .2s ease;
}
.brands .brand-rail > span > a :is(span,sup) { color:inherit; }
.brands .brand-rail > span > a:is(:hover,:focus-visible) {
 color:var(--plum); background-size:100% 100%; text-decoration:none;
}
.brands .brand-rail > span > a:focus-visible { outline:2px solid var(--iris); outline-offset:-3px; }
body .button.button-primary:is(:hover,:focus-visible),
body .button.button-light:is(:hover,:focus-visible),
.access-preview.access-form button:is(:hover,:focus-visible) {
 color:var(--plum); background-color:#f2c9b8; border-color:#f2c9b8;
}
.access-preview.access-form button { transition:background-color .25s ease,color .25s ease,border-color .25s ease; }
.visit .visit-copy a:not(.button) {
 background-image:linear-gradient(90deg,#f2c9b8,#f8ded0);
 background-position:left; background-repeat:no-repeat; background-size:0% 100%;
 transition:background-size .35s var(--ease),color .2s ease;
}
.visit .visit-copy a:is(:hover,:focus-visible) { color:var(--plum); background-size:100% 100%; }
.closing > div > a:focus-visible,.home-hero .hero-proof > div:focus-within { outline-color:var(--iris); }
.accordion summary { transition:background-color .25s ease; }
.accordion summary:is(:hover,:focus-visible) { background-color:#faf3ef; }
@media(prefers-reduced-motion:reduce) {
 .brands .brand-rail > span > a,.visit .visit-copy a:not(.button),.access-preview.access-form button,.accordion summary { transition:none; }
}


/* 2026-09-09 speed and accessibility pass (technical, no layout change) */
.footer-wordmark::before { content: attr(data-word); }
.footer-brand p a { display: inline-block; padding: 5px 0; min-height: 24px; }
@media (max-width: 720px) {
  .site-header, .home-header { backdrop-filter: blur(12px) saturate(1.2); -webkit-backdrop-filter: blur(12px) saturate(1.2); }
}

/* the logo strips: composited, contained, so their animation never re-lays the page out */
.heritage-marquee { contain: layout paint; }
.heritage-marquee-track { will-change: transform; }

/* Patient guides remain centered within the approved reading width. */
.patient-guide{width:min(100% - 48px,900px);margin:0 auto;padding:52px 0;color:var(--ink)}
.page-main .patient-guide{width:100%;padding:28px 0 36px}
.patient-guide h2{font-family:var(--serif);font-size:clamp(28px,3vw,40px);font-weight:400;line-height:1.15;max-width:30ch;margin:0 0 22px}
.patient-guide>p{max-width:70ch;font-size:18px;line-height:1.75;margin:0 0 18px}
.patient-guide .guide-reference{font-size:14px;color:var(--muted)}
.patient-guide a{color:var(--iris);text-underline-offset:4px}
.patient-guide .guide-links{display:flex;flex-wrap:wrap;gap:14px 24px;font-size:16px}
.patient-guide .accordion{margin-top:28px}
.patient-guide a:focus-visible{outline:2px solid var(--iris);outline-offset:4px}

/* Keep the existing consultation section after removing its process column. */
.consultation.consultation-copy-only{display:block}
.consultation-copy-only .consultation-copy{max-width:780px}
.consultation-copy-only .consultation-copy>p:not(.section-kicker){width:100%;max-width:70ch}

/* Eight brand cells with equal columns, including on smaller phones. */
.brands .brand-rail{grid-template-columns:repeat(4,minmax(0,1fr))}.brands .brand-rail>span{min-width:0;grid-column:auto}.brands .brand-rail>span>a{min-width:0}
@media(max-width:920px){.brands .brand-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.brands .brand-rail>span{font-size:14px}.brands .brand-rail>span>a{padding:18px 10px}}
