/* October 2026 client amendments: retain the approved burgundy / ivory system. */
[hidden]{display:none!important}
.salon-page .gift-banner{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 24px;min-height:42px;padding:9px 22px;font-size:11px;line-height:1.5;letter-spacing:.02em}
.gift-banner a{color:inherit;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.gift-banner .banner-terms{font-size:10px;opacity:.9}
.new-client-gift{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);align-items:center;gap:clamp(30px,6vw,90px);padding:72px var(--gutter);background:#eee1d6;border-block:1px solid var(--line)}
.gift-value{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;align-self:stretch;padding:32px 20px;border:1px solid #b88e7d;color:var(--wine)}
.gift-value span{font-size:10px;letter-spacing:.18em;line-height:1.6}
.gift-value strong{font-family:var(--display,'Libre Caslon Display',Georgia,serif);font-weight:400;font-size:clamp(88px,11vw,154px);line-height:1.2;letter-spacing:-.06em}
.gift-copy h2{font-size:clamp(38px,4vw,61px);line-height:1.06;margin:18px 0 22px;max-width:650px}
.gift-copy>p{font-size:16px;line-height:1.75;max-width:650px;margin:12px 0}
.gift-copy .btn{margin-top:15px}
.gift-copy .gift-terms{font-size:12px;margin-top:18px;line-height:1.65}
.gift-terms a{text-decoration:underline;text-underline-offset:3px}
.gift-compact{padding-top:48px;padding-bottom:48px}
.gift-compact .gift-value strong{font-size:104px}
.gift-compact .gift-copy h2{font-size:44px}
.salon-page .editorial-card-copy .treatment-names{font-size:12px;font-weight:500;letter-spacing:.02em;color:var(--wine);margin:10px 0;min-height:0}
.editorial-clinic-image img.reception-welcome{object-fit:cover;object-position:center 54%}
/* Art-directed CSS framing. Original portrait files remain intact. */
.salon-page .team-portrait-photo{position:relative;aspect-ratio:1 / 1;height:auto;overflow:hidden}
.salon-page .team-portrait-photo img{position:absolute;max-width:none;object-fit:initial;height:auto;bottom:auto;right:auto;transform:none}
.team-portrait[data-team-member="cassie"] .team-portrait-photo img{width:100%;left:0;top:-32.71%}
.team-portrait[data-team-member="breigh"] .team-portrait-photo img{width:146.67%;left:-43.33%;top:-31.11%}
.team-portrait[data-team-member="kyah"] .team-portrait-photo img{width:177.8%;left:-36.67%;top:-53.33%}
.team-expertise{max-width:900px;padding-top:60px;margin-top:40px;border-top:1px solid var(--line)}
.team-expertise h2{font-size:clamp(36px,4.6vw,58px);line-height:1.1;margin:18px 0}
.team-expertise p{font-size:17px;line-height:1.75;max-width:740px}
.salon-page .guide-hero h1{font-size:clamp(49px,5.3vw,80px);line-height:1.02;letter-spacing:-.035em;overflow-wrap:normal}
.hero-tagline{display:block;margin-top:20px;font-size:.56em;line-height:1.15;letter-spacing:-.015em}
.salon-page .guide-hero-copy{min-height:0;align-self:center}
.guide-hero .links .btn,.closing-side .btn{white-space:normal;text-align:center;line-height:1.5;gap:12px}
.salon-page .guide-focus-grid h3{min-height:0;font-size:clamp(27px,2.8vw,34px);line-height:1.12}
.guide-nav{flex-wrap:wrap;height:auto;min-height:60px;gap:14px 24px;padding-block:18px}
.guide-nav span{max-width:100%;line-height:1.4}
.guide-comparison{padding:42px 46px 52px;border-top:1px solid var(--line)}
.guide-comparison h2{font-size:clamp(35px,4vw,54px);line-height:1.08;max-width:800px;margin:17px 0 28px}
.comparison-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:22px}
.comparison-cards article{background:#faf5ed;border:1px solid var(--line);padding:28px;min-width:0}
.comparison-cards h3{font-size:30px;line-height:1.15;margin:0 0 17px}
.comparison-cards p{font-size:16px;line-height:1.7;margin:0 0 20px}
.comparison-cards .textlink{font-size:13px;line-height:1.5;display:inline-flex;gap:8px}
.guide-suitability{padding:38px 46px 40px;border-bottom:1px solid var(--line)}
.guide-suitability>h2{font-size:36px;line-height:1.12;margin:0 0 14px}
.guide-suitability>p{max-width:800px;font-size:15px;line-height:1.7}
.guide-suitability details{margin-top:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}
.guide-suitability summary,.friendly-faq summary,.care-detail>summary{cursor:pointer;color:var(--wine);font-size:17px;font-weight:500;line-height:1.5;padding:20px 4px;list-style-position:inside}
.guide-suitability details p{max-width:850px;font-size:15px;line-height:1.8;margin:10px 0}
.guide-suitability details>.textlink{display:inline-flex;font-size:13px;margin:14px 0 24px}
.friendly-faq{margin-top:30px}
.friendly-faq details{border-top:1px solid var(--line)}
.friendly-faq details:last-child{border-bottom:1px solid var(--line)}
.friendly-faq details>div{padding:0 4px 22px;max-width:880px}
.friendly-faq p{font-size:16px;line-height:1.75;margin:0 0 15px}
.guide-related>div:last-child{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.guide-related>div:last-child h3{font-size:28px;line-height:1.2}
.guide-related>div:last-child p{font-size:14px;line-height:1.7}
.client-results{padding:48px var(--gutter);background:var(--paper)}
.client-results h2{font-size:48px;margin:20px 0 28px}
.result-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.result-pair figure{margin:0}
.result-pair img{width:100%;height:auto;object-fit:contain}
.result-pair figcaption{font-size:13px;margin-top:12px}
.supporting-heading,.gift-details{padding:64px var(--gutter);max-width:1200px;margin:auto}
.supporting-heading h1{font-size:clamp(48px,6vw,80px);line-height:1.05;max-width:900px;margin:22px 0 28px}
.supporting-heading h2,.gift-details h2{font-size:clamp(38px,4.5vw,58px);line-height:1.08;margin:18px 0 28px}
.supporting-heading p,.gift-details p{font-size:17px;line-height:1.8;max-width:850px;margin:18px 0}
.gift-details .comparison-cards{margin-bottom:48px}
.gift-details>h3{font-size:32px;margin:30px 0 18px}
.gift-details ul{padding-left:22px;line-height:1.9;max-width:880px}
.gift-details li{margin-bottom:10px}
.care-library{padding:0 var(--gutter) 50px;max-width:1200px;margin:auto}
.care-detail{border-top:1px solid var(--line);scroll-margin-top:30px}
.care-detail:last-child{border-bottom:1px solid var(--line)}
.care-detail>summary{font-size:22px;padding:24px 4px}
.care-detail-body{padding:15px 20px 28px}
.care-detail-body h2{font-size:38px;line-height:1.12;margin:16px 0}
.care-detail-body h3{font-size:27px;margin:20px 0 15px}
.care-detail-body p,.care-detail-body li{font-size:16px;line-height:1.8}
.care-detail-body .care-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}
.care-detail-body ul{padding-left:20px}
.care-return{padding:0 20px 26px}
.booking-context{padding:26px 30px;margin-bottom:30px;border:1px solid #c7a797;background:#f1e3d7}
.booking-context h2{font-size:35px;line-height:1.15;margin:12px 0}
.booking-context p{font-size:15px;line-height:1.75;margin:12px 0}
.booking-context a{font-size:13px;text-decoration:underline;text-underline-offset:4px}
summary:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid #8b4d59;outline-offset:5px}
@media(max-width:900px){
 .new-client-gift{gap:32px;padding-block:48px;grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr)}
 .gift-copy h2,.gift-compact .gift-copy h2{font-size:39px}
 .gift-value strong,.gift-compact .gift-value strong{font-size:90px}
 .salon-page .guide-hero h1{font-size:65px}
 .guide-comparison,.guide-suitability{padding-inline:30px}
}
@media(max-width:600px){
 .salon-page .gift-banner{font-size:10px;padding:9px 15px;gap:4px 18px;text-align:center}
 .gift-banner>span{flex-basis:100%}
 .new-client-gift{grid-template-columns:1fr;gap:28px;padding:36px 24px}
 .gift-value{padding:20px}
 .gift-value strong,.gift-compact .gift-value strong{font-size:90px;line-height:1.15}
 .gift-copy h2,.gift-compact .gift-copy h2{font-size:39px}
 .gift-copy .btn{width:100%;justify-content:center;white-space:normal}
 .gift-copy>p{font-size:15px}
 .salon-page .guide-hero h1{font-size:clamp(43px,11vw,62px)}
 .hero-tagline{font-size:.61em;line-height:1.2}
 .guide-comparison,.guide-suitability{padding:30px 18px}
 .comparison-cards{grid-template-columns:1fr}
 .comparison-cards article{padding:23px}
 .guide-suitability>h2{font-size:32px}
 .guide-nav{gap:13px 17px;padding:18px 24px}
 .guide-nav span{flex-basis:100%}
 .care-detail-body{padding-inline:4px}
 .care-detail-body .care-columns{grid-template-columns:1fr;gap:5px}
 .supporting-heading,.gift-details{padding:40px 24px}
 .care-library{padding:0 24px 35px}
 .booking-context{padding:22px}
 .result-pair{gap:12px}
 .client-results h2{font-size:38px}
}
