@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Bricolage+Grotesque:opsz,wght@12..96,500;12..96,600;12..96,700&family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Fraunces:opsz,wght@9..144,500;9..144,600&family=Outfit:wght@400;500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap');
/* Pass 4: a complete multicolor vocabulary for each brand, with useful wayfinding. */
.concept{font-family:var(--body)}
.concept h1,.concept h2,.concept h3,.concept .wordmark{font-family:var(--display)}
.concept .eyebrow,.concept .button,.concept .text-link,.concept input,.concept select,.concept textarea{font-family:var(--body)}
.concept .headline-accent{color:var(--heading-accent)}
.theme-shortcuts{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px;max-width:100%;position:relative;z-index:2}
.theme-shortcuts a{background:var(--tone-one);color:var(--palette-ink);font:500 11px/1.3 var(--body);padding:12px 14px;min-height:40px;display:inline-flex;align-items:center;gap:14px;border:1px solid transparent;transition:transform .2s,border-color .2s}
.theme-shortcuts a:nth-child(2){background:var(--tone-two)}
.theme-shortcuts a:nth-child(3){background:var(--tone-three)}
.theme-shortcuts a>span{font-size:15px;line-height:1}
.theme-shortcuts a:hover{transform:translateY(-2px);border-color:var(--palette-ink)}
.theme-shortcuts a:focus-visible{outline:3px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 3px var(--paper)}
.concept .service-list .index,.concept .service-editorial-list article>span{display:inline-block;width:auto;height:auto;min-width:26px;font-weight:600;color:inherit;background:transparent}

.concept .person{border-top:1px solid var(--line)}
.concept .page-intro{position:relative}
.concept .page-intro:after{content:'';position:absolute;bottom:0;left:0;right:0;height:0;background:none}
.concept .demo-form,.concept .video-editor{border-top:1px solid var(--line)}
.concept .footer{border-top:8px solid var(--tone-three)}
.concept .journey-step>span{color:inherit}
.palette-strip{display:flex;gap:0;width:108px;height:14px;margin:14px 0 18px}
.palette-strip span{flex:1;background:var(--tone-one)}
.palette-strip span:nth-child(2){background:var(--tone-two)}
.palette-strip span:nth-child(3){background:var(--tone-three)}
.palette-strip span:nth-child(4){background:var(--tone-four)}
.collection-card .identity-label{margin-bottom:10px}
.collection-card .collection-card-copy{border-bottom:7px solid var(--tone-two)}

/* Sunday picnic: illustrated-book warmth, friendly labels and contrasting color blocks. */
.welcome h1,.welcome h2{font-weight:500;letter-spacing:-.05em}
.welcome .hero-copy h1{font-size:clamp(3rem,5.5vw,6rem);font-weight:500}
.welcome .hero-visual{box-shadow:16px 16px 0 var(--tone-two);border-bottom:9px solid var(--tone-one)}
.welcome .hero .button{background:#ad452e;border-color:#ad452e;color:#fff}
.welcome .theme-shortcuts a{border-radius:8px 8px 8px 0}
.welcome .image-stamp{background:var(--tone-one);color:var(--palette-ink);border-left-color:#ad452e}
.welcome .visit-notebook{background:var(--tone-one);color:var(--palette-ink)}
.welcome .notebook-pages article:nth-child(2){border-color:#568d79}
.welcome .journey{background:var(--tone-two);color:var(--palette-ink)}
.welcome .final-cta{background:var(--tone-three);color:var(--palette-ink)}
.welcome .event{border-top-color:#ad452e}

/* Heritage garden: wine, sage, gold and blue, composed like a formal invitation. */
.sanctuary .hero-copy{border-color:var(--tone-one);background:#101e3430;max-width:1100px}
.sanctuary .hero-copy h1{font-family:var(--display);font-weight:500;letter-spacing:-.035em}
.sanctuary .hero .theme-shortcuts{justify-content:center}
.sanctuary .theme-shortcuts a{font-size:11px;text-transform:uppercase;letter-spacing:.08em;border-radius:0}
.sanctuary .hero{border-bottom:14px solid #6d3548}
.sanctuary .sanctuary-invitation{background:var(--tone-two);color:var(--palette-ink);border-block-color:#6d3548}
.sanctuary .sanctuary-invitation .eyebrow,.sanctuary .invitation-columns>div>span{color:#6d3548}
.sanctuary .invitation-columns>div{border-color:#172c4050}
.sanctuary .history{background:#432a3d;color:#f5edd9}
.sanctuary .tinted .eyebrow{color:var(--tone-one)}
.sanctuary .final-cta{background:var(--tone-three);color:var(--palette-ink)}
.sanctuary .final-cta .eyebrow{color:#6d3548}
.sanctuary .final-cta .button{background:#172c40;color:#fff;border-color:#172c40}

/* City in color: energetic wayfinding, with lilac, lime and orange playing equal roles. */
.gathering h1,.gathering h2,.gathering h3,.gathering .gathering-path-list h3{font-family:var(--display);font-weight:700;letter-spacing:-.055em}
.gathering .demo-bar{background:var(--tone-three)}
.gathering .hero-visual{border-color:var(--tone-two);box-shadow:12px 12px 0 #142e8b}
.gathering .image-stamp{background:var(--tone-three);color:var(--palette-ink)}
.gathering .hero .theme-shortcuts a{border-radius:0;font-weight:600}
.gathering .gathering-paths{background:var(--tone-three);color:var(--palette-ink)}
.gathering .gathering-path-list a:nth-child(2)>span{background:#a24720}
.gathering .gathering-path-list a:nth-child(3)>span{background:#5d448b}
.gathering .journey{background:var(--tone-two);color:var(--palette-ink)}
.gathering .tinted{background:var(--tone-four);color:var(--palette-ink)}
.gathering .final-cta{border-top:12px solid var(--tone-two)}

/* Color club: fashion type with petrol, wine, peach and lemon. */
.salon-editorial .editorial-copy{background:var(--tone-one);padding:28px;border-left:6px solid #145957}
.salon-editorial .editorial-footnote{border-color:#14595770}
.salon-editorial .editorial-photo{border-bottom:10px solid #145957;box-shadow:10px 10px 0 var(--tone-three)}
.salon .theme-shortcuts a{font-size:10px;gap:8px;padding:11px 12px;border:1px solid #49232c50}
.salon .theme-shortcuts a:first-child{background:var(--tone-two)}
.salon .theme-shortcuts a:nth-child(2){background:var(--tone-three)}
.salon .theme-shortcuts a:nth-child(3){background:var(--tone-four)}
.salon .story-split{background:#145957;color:#fff5ef}
.salon .journey{background:var(--tone-three);color:var(--palette-ink)}
.salon .final-cta{background:#592938;color:#fff5ef}
.salon .final-cta .button{color:#592938}
.salon .footer{background:var(--tone-two);color:var(--palette-ink)}

/* Denim & brass: condensed craft typography, denim panels and copper rules. */
.barber h1,.barber h2,.barber h3,.barber-editorial h1{font-family:var(--display);font-weight:600;letter-spacing:-.035em}
.barber-editorial h1{font-size:clamp(3.8rem,6.6vw,7.4rem);line-height:.98}
.barber-editorial .editorial-copy{background:#25415b;padding-top:25px;border-bottom:8px solid #a35b40}
.barber-editorial .editorial-heading{border-color:#a35b40}
.barber-editorial .editorial-footnote{font-family:var(--body);letter-spacing:0}
.barber .theme-shortcuts a{font-size:10px;letter-spacing:.02em;text-transform:uppercase;gap:10px}
.barber .journey{background:#25415b}
.barber .studio-edit-image{border-bottom-color:#a35b40}
.barber .person-number{font-family:var(--display);font-size:68px;color:var(--tone-two)}
.barber .final-cta{background:#d9c7aa;color:#172b3a;border-color:#a35b40}
.barber .final-cta .button{background:#25415b;color:#fff;border-color:#25415b}

/* Botanical balance: pine, clay, marigold and sea glass. */
.skin h1,.skin h2,.skin h3{font-family:var(--display);font-weight:500}
.skin-editorial .editorial-heading h1{font-size:clamp(3.7rem,6.5vw,7rem);line-height:1.02}
.skin-editorial .editorial-copy{background:var(--tone-one);color:var(--palette-ink);padding:25px;border-radius:0 0 55px 0;margin-bottom:10px}
.skin-editorial .editorial-photo{border:8px solid var(--tone-two)}
.skin-editorial .editorial-footnote{border-color:#193c3160}
.skin-editorial .button{background:#17573f;color:#fff;border-color:#17573f}
.skin .theme-shortcuts a{border-radius:25px;background:var(--tone-two);font-size:10px;gap:8px}
.skin .theme-shortcuts a:nth-child(2){background:var(--tone-three)}
.skin .theme-shortcuts a:nth-child(3){background:var(--tone-four)}
.skin .story-split{background:var(--tone-three)}
.skin .journey{background:var(--tone-two);color:var(--palette-ink)}
.skin .final-cta{border-top:12px solid var(--tone-one)}
.skin .footer{background:var(--tone-four);color:var(--palette-ink)}

/* Modern muse: the approved photo, with plum, rose, ice blue and champagne. */
.makeup h1,.makeup h2,.makeup h3{font-family:var(--display);font-weight:500;letter-spacing:-.035em}
.makeup-editorial-copy{border-top:7px solid var(--tone-four);background:#38182f}
.makeup-editorial-copy h1{font-size:clamp(3.6rem,6.1vw,7rem);line-height:1.02}
.makeup-editorial-copy .lead{font-family:var(--body)}
.makeup-editorial-meta{border-color:var(--tone-two)}
.makeup-editorial-caption{background:var(--tone-two);color:var(--palette-ink)}
.makeup .theme-shortcuts a{font-size:10px;gap:10px;padding:12px;letter-spacing:.03em}
.makeup .journey{background:var(--tone-one);color:var(--palette-ink)}
.makeup .journey-step{border-color:#3c193750}
.makeup .makeup-work-list article:nth-child(2){border-color:var(--tone-two)}
.makeup .makeup-work-list article:nth-child(3){border-color:var(--tone-four)}
.makeup .final-cta{background:#2f142b;border-top:10px solid var(--tone-two)}

/* Candy studio: expressive display type, a serif accent and candy colors. */
.nails h1,.nails h2,.nails h3{font-family:var(--display);font-weight:600}
.nails-editorial h1{font-family:var(--display);font-style:normal;font-size:clamp(3.1rem,5.8vw,6.5rem);letter-spacing:-.055em}
.nails-editorial .headline-accent{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500}
.nails .demo-bar{background:var(--tone-one)}
.nails-editorial .editorial-copy{padding:24px;background:var(--tone-two);border-radius:16px;margin-bottom:20px}
.nails-editorial .editorial-photo{border:8px solid var(--tone-three);box-shadow:12px 12px 0 #d092ba}
.nails .theme-shortcuts a{border-radius:22px;font-size:10px;gap:8px}
.nails .theme-shortcuts a:nth-child(2){background:var(--tone-three)}
.nails .theme-shortcuts a:nth-child(3){background:var(--tone-four)}
.nails .nail-palette>span:nth-child(1){background:var(--tone-one)}
.nails .nail-palette>span:nth-child(2){background:var(--tone-two)}
.nails .nail-palette>span:nth-child(3){background:var(--tone-three)}
.nails .nail-palette>span:nth-child(4){background:var(--tone-four)}
.nails .journey{background:var(--tone-three);color:var(--palette-ink)}
.nails .person-number{background:var(--tone-two);color:var(--palette-ink)}
.nails .person:nth-child(2) .person-number{background:var(--tone-three)}
.nails .footer{background:var(--tone-one);color:var(--palette-ink)}

/* Creative commons: a color-coded specialty directory and graphic editorial type. */
.collective .demo-bar{background:var(--tone-one)}
.collective-editorial .editorial-heading .eyebrow{border-color:var(--tone-two)}
.collective-editorial h1{font-family:var(--display);font-weight:700;letter-spacing:-.065em}
.collective-editorial .editorial-photo{border-bottom:8px solid var(--tone-three);box-shadow:12px 12px 0 var(--tone-one)}
.collective .theme-shortcuts a{border:1px solid #202638;font-size:10px;gap:12px}
.collective .specialty-directory{background:#fff;color:var(--palette-ink)}
.collective .specialty-row{background:var(--tone-one);padding:25px 20px;border:0;margin-bottom:8px}
.collective .specialty-row:nth-child(2){background:var(--tone-two)}
.collective .specialty-row:nth-child(3){background:var(--tone-three)}
.collective .specialty-row:nth-child(4){background:var(--tone-four)}
.collective .specialty-row h3{font-family:var(--display);font-size:27px}
.collective .journey{background:var(--tone-three);color:var(--palette-ink)}
.collective .person:nth-child(2) .person-number{border-color:var(--tone-two)}
.collective .person:nth-child(3) .person-number{border-color:var(--tone-three)}
.collective .person:nth-child(4) .person-number{border-color:var(--tone-one)}
.collective .footer{background:var(--tone-one);color:var(--palette-ink)}

@media(max-width:1050px) and (min-width:701px){.theme-shortcuts a{font-size:10px;padding:10px;gap:7px}.salon-editorial .editorial-copy,.skin-editorial .editorial-copy,.nails-editorial .editorial-copy{padding:18px}.barber-editorial h1{font-size:7vw}.makeup-editorial-copy h1{font-size:6.5vw}}
@media(max-width:700px){.theme-shortcuts{gap:7px;margin-top:22px}.theme-shortcuts a{font-size:10px;min-height:40px;padding:10px;gap:8px}.concept .service-list .index,.concept .service-editorial-list article>span{width:25px;height:25px;font-size:10px}.welcome .hero-copy h1{font-size:clamp(2.7rem,11.3vw,4.7rem)}.welcome .hero-visual{box-shadow:8px 8px 0 var(--tone-two)}.sanctuary .hero-copy h1{font-size:clamp(3rem,12vw,4.5rem)}.sanctuary .hero-copy{padding:30px 18px}.sanctuary .theme-shortcuts{gap:6px}.sanctuary .theme-shortcuts a{font-size:9px;padding:10px;letter-spacing:0;gap:6px}.gathering .hero-visual{box-shadow:7px 7px 0 #142e8b}.gathering .hero-copy h1{font-size:clamp(2.5rem,10.5vw,4.6rem)}.salon-editorial .editorial-copy{padding:22px}.salon-editorial .editorial-photo{box-shadow:7px 7px 0 var(--tone-three)}.barber-editorial h1{font-size:clamp(3.3rem,14vw,5rem)}.barber-editorial .editorial-copy{padding-top:23px}.skin-editorial .editorial-heading h1{font-size:clamp(3.2rem,13vw,5rem)}.skin-editorial .editorial-copy{padding:23px}.skin-editorial .editorial-photo{border-width:6px}.makeup-editorial-copy h1{font-size:clamp(3.2rem,13vw,4.8rem)}.makeup .theme-shortcuts a{font-size:9px;padding:10px;gap:6px}.nails-editorial h1{font-size:clamp(2.9rem,11vw,4.6rem)}.nails-editorial .editorial-copy{padding:20px}.nails-editorial .editorial-photo{border-width:6px;box-shadow:7px 7px 0 #d092ba}.collective .specialty-row{padding:22px 14px;gap:10px;grid-template-columns:25px minmax(0,1fr) 18px}.collective .specialty-row h3{font-size:23px}.collective-editorial .editorial-photo{box-shadow:7px 7px 0 var(--tone-one)}.concept .site-header .wordmark{font-size:clamp(17px,4.4vw,21px)}}
@media(prefers-reduced-motion:reduce){.theme-shortcuts a:hover{transform:none}}
html[data-reduced-motion=true] .theme-shortcuts a:hover{transform:none}


/* Pass 5 — distinct color families. These variables override the older
   inline demo-generation defaults on all 87 routes and collection previews.
   Keep text-bearing tones light so the shared palette-ink is accessible. */
.collection-card.welcome{--tone-one:#f2bc38!important;--tone-two:#a9cce9!important;--tone-three:#ed8872!important;--tone-four:#f7e8c8!important;--palette-ink:#173653!important;--heading-accent:#ad452e!important}
.concept.welcome{--tone-one:#f2bc38!important;--tone-two:#a9cce9!important;--tone-three:#ed8872!important;--tone-four:#f7e8c8!important;--palette-ink:#173653!important;--heading-accent:#ad452e!important}
.collection-card.sanctuary{--tone-one:#d2ab61!important;--tone-two:#d8d4c4!important;--tone-three:#a9c4b8!important;--tone-four:#c2a7aa!important;--palette-ink:#1b2734!important;--heading-accent:#e7c383!important}
.concept.sanctuary{--tone-one:#d2ab61!important;--tone-two:#d8d4c4!important;--tone-three:#a9c4b8!important;--tone-four:#c2a7aa!important;--palette-ink:#1b2734!important;--heading-accent:#e7c383!important}
.collection-card.gathering{--tone-one:#c4f044!important;--tone-two:#ffab68!important;--tone-three:#c6acff!important;--tone-four:#b6e5f3!important;--palette-ink:#272044!important;--heading-accent:#c4f044!important}
.concept.gathering{--tone-one:#c4f044!important;--tone-two:#ffab68!important;--tone-three:#c6acff!important;--tone-four:#b6e5f3!important;--palette-ink:#272044!important;--heading-accent:#c4f044!important}
.collection-card.salon{--tone-one:#ed9c80!important;--tone-two:#a8c7c2!important;--tone-three:#e5c46e!important;--tone-four:#bb9da7!important;--palette-ink:#342831!important;--heading-accent:#ad4939!important}
.concept.salon{--tone-one:#ed9c80!important;--tone-two:#a8c7c2!important;--tone-three:#e5c46e!important;--tone-four:#bb9da7!important;--palette-ink:#342831!important;--heading-accent:#ad4939!important}
.collection-card.barber{--tone-one:#bb936c!important;--tone-two:#9bb8cf!important;--tone-three:#d9c2a2!important;--tone-four:#aaadaa!important;--palette-ink:#1c3041!important;--heading-accent:#d5a36b!important}
.concept.barber{--tone-one:#bb936c!important;--tone-two:#9bb8cf!important;--tone-three:#d9c2a2!important;--tone-four:#aaadaa!important;--palette-ink:#1c3041!important;--heading-accent:#d5a36b!important}
.collection-card.skin{--tone-one:#c7c59e!important;--tone-two:#ddbb77!important;--tone-three:#c5d2ae!important;--tone-four:#e8ceb0!important;--palette-ink:#263929!important;--heading-accent:#bc8847!important}
.concept.skin{--tone-one:#c7c59e!important;--tone-two:#ddbb77!important;--tone-three:#c5d2ae!important;--tone-four:#e8ceb0!important;--palette-ink:#263929!important;--heading-accent:#bc8847!important}
.collection-card.makeup{--tone-one:#ebc29a!important;--tone-two:#d9b2ac!important;--tone-three:#c1a5b1!important;--tone-four:#e3d8d2!important;--palette-ink:#30202a!important;--heading-accent:#efb68a!important}
.concept.makeup{--tone-one:#ebc29a!important;--tone-two:#d9b2ac!important;--tone-three:#c1a5b1!important;--tone-four:#e3d8d2!important;--palette-ink:#30202a!important;--heading-accent:#efb68a!important}
.collection-card.nails{--tone-one:#f3a6dc!important;--tone-two:#a0e9f2!important;--tone-three:#d5ed7f!important;--tone-four:#c3b0f4!important;--palette-ink:#2c2047!important;--heading-accent:#6421a0!important}
.concept.nails{--tone-one:#f3a6dc!important;--tone-two:#a0e9f2!important;--tone-three:#d5ed7f!important;--tone-four:#c3b0f4!important;--palette-ink:#2c2047!important;--heading-accent:#6421a0!important}
.collection-card.collective{--tone-one:#f1d44e!important;--tone-two:#b6c1e1!important;--tone-three:#ec967d!important;--tone-four:#c5d5aa!important;--palette-ink:#1f2634!important;--heading-accent:#a33c2c!important}
.concept.collective{--tone-one:#f1d44e!important;--tone-two:#b6c1e1!important;--tone-three:#ec967d!important;--tone-four:#c5d5aa!important;--palette-ink:#1f2634!important;--heading-accent:#a33c2c!important}

/* Carry distinct contrast and chroma into existing section composition
   without disturbing page structure, assets, navigation or form behavior. */
.welcome .journey{background:#a9cce9}.welcome .final-cta{background:#f7e8c8}
.sanctuary .sanctuary-invitation{background:#d8d4c4}.sanctuary .final-cta{background:#a9c4b8}
.gathering .gathering-paths{background:#c6acff}.gathering .journey{background:#ffab68}.gathering .tinted{background:#b6e5f3}
.salon .journey{background:#e5c46e}.salon .footer{background:#a8c7c2}
.barber .final-cta{background:#d9c2a2}
.skin .story-split{background:#c5d2ae}.skin .journey{background:#ddbb77}.skin .footer{background:#e8ceb0}
.makeup .journey{background:#ebc29a}.makeup-editorial-caption{background:#d9b2ac}
.nails .journey{background:#d5ed7f}.nails .footer{background:#f3a6dc}
.collective .specialty-row:nth-child(1){background:#f1d44e}.collective .specialty-row:nth-child(2){background:#b6c1e1}.collective .specialty-row:nth-child(3){background:#ec967d}.collective .specialty-row:nth-child(4){background:#c5d5aa}


/* Pass 7 — brand-specific interior layouts; original covers, hero photos,
   palette tokens, navigation and booking demo behavior are untouched. */
.concept .page-intro h1{text-wrap:balance}
.concept .page-intro .lead{max-width:62ch}
.concept .page-intro{overflow:hidden}
.concept .theme-shortcuts a{min-height:44px}
@media(min-width:900px){
/* Welcome: friendly, open, storybook margins instead of a generic page banner */
.welcome .page-intro{padding-block:76px 68px;border-radius:0 0 48px 0}
.welcome .page-intro h1{font-size:clamp(3.2rem,6vw,6.2rem);max-width:14ch}
.welcome .page-intro:after{height:11px;border-radius:0 0 40px 0}
/* Sanctuary: editorial centerline and formal negative space */
.sanctuary .page-intro{padding-block:115px 95px;text-align:center;border-block:1px solid #d2ab6180}
.sanctuary .page-intro h1{margin-inline:auto;font-size:clamp(4.5rem,7.7vw,8rem);max-width:18ch;line-height:1}
.sanctuary .page-intro .lead{margin-inline:auto}
.sanctuary .page-intro:after{left:40%;right:40%;height:4px}
/* Gathering: wide display, angular banner and compact energetic subhead */
.gathering .page-intro{padding-block:70px 100px;clip-path:polygon(0 0,100% 0,100% 94%,0 100%)}
.gathering .page-intro h1{font-size:clamp(4rem,8vw,8.5rem);line-height:.94;text-transform:uppercase;max-width:15ch}
.gathering .page-intro .lead{font-size:clamp(1.05rem,1.45vw,1.3rem);max-width:45ch}
.gathering .page-intro:after{height:13px}
/* Salon: large fashion-serif headline with left editorial rule */
.salon .page-intro{padding:110px 5vw 90px;border-left:clamp(8px,1.4vw,22px) solid #ad4939}
.salon .page-intro h1{font-size:clamp(4.5rem,8vw,8.4rem);line-height:.98;max-width:14ch}
/* Barber: condensed craft heading and purposeful hard edges */
.barber .page-intro{padding:90px 6vw 75px;border-left:16px solid #bb936c}
.barber .page-intro h1{font-size:clamp(4.6rem,8.8vw,9rem);line-height:.9;max-width:13ch;text-transform:uppercase}
.barber .page-intro:after{height:4px}
/* Skin: calm editorial volume and rounded lower corner */
.skin .page-intro{padding:108px 7vw 100px;border-radius:0 0 90px 0}
.skin .page-intro h1{font-size:clamp(4.1rem,7vw,7rem);line-height:1.02;max-width:15ch}
.skin .page-intro:after{height:3px;right:45%}
/* Makeup: dramatic editorial title, while keeping approved imagery unchanged */
.makeup .page-intro{padding-block:108px 90px;border-top:9px solid #ebc29a}
.makeup .page-intro h1{font-size:clamp(4.7rem,8vw,8.4rem);line-height:.97;max-width:15ch}
.makeup .page-intro:after{height:3px;left:75%}
/* Nails: punchier play in shapes and title rhythm without adding new imagery */
.nails .page-intro{padding:96px 6vw 94px;border-radius:0 0 60px 0}
.nails .page-intro h1{font-size:clamp(4.4rem,8vw,8rem);line-height:.94;letter-spacing:-.07em;max-width:14ch}
.nails .page-intro:after{height:16px}
/* Collective: systematic directory-first, grid-inspired composition */
.collective .page-intro{padding:88px 6vw 84px;border-top:12px solid #171c24}
.collective .page-intro h1{font-size:clamp(4rem,7.8vw,8rem);text-transform:uppercase;line-height:.95;max-width:16ch}
.collective .page-intro:after{height:5px}
}
@media(max-width:700px){
 .concept .page-intro h1{overflow-wrap:break-word}
 .sanctuary .page-intro h1,.makeup .page-intro h1{line-height:1.04}
 .gathering .page-intro h1,.barber .page-intro h1,.collective .page-intro h1{line-height:1.02}
}

/* Pass 8: INTERIOR-ONLY design systems. Gallery covers remain at pass 4.
   Scope every new rule to body.concept; do not alter .catalog/.collection-card.
   These are real multi-page site personalities, not a cover-image redesign. */
body.concept.welcome{--paper:#fffaf0!important;--ink:#18365e!important;--surface:#deebfa!important;--surface-2:#fffefd!important;--hero:#fffaf0!important;--on-hero:#18365e!important;--action:#1556a3!important;--action-ink:#fff!important;--tone-one:#f2bc38!important;--tone-two:#b0d8f0!important;--tone-three:#ec8265!important;--tone-four:#f6e4b7!important;--palette-ink:#18365e!important}
body.concept.sanctuary{--paper:#111e32!important;--ink:#f8ecd7!important;--surface:#253851!important;--surface-2:#30435a!important;--hero:#0c172c!important;--on-hero:#fff4e3!important;--action:#dab87a!important;--action-ink:#172238!important;--tone-one:#e5bf7f!important;--tone-two:#c3d4bb!important;--tone-three:#e2c2ca!important;--tone-four:#c3d3d9!important;--palette-ink:#172238!important}
body.concept.gathering{--paper:#faf4ff!important;--ink:#301563!important;--surface:#e6d5fa!important;--surface-2:#fff!important;--hero:#5427ad!important;--on-hero:#fff!important;--action:#4720af!important;--action-ink:#fff!important;--tone-one:#cef051!important;--tone-two:#ffb074!important;--tone-three:#c8b2f7!important;--tone-four:#b5e7f3!important;--palette-ink:#28144f!important}
body.concept.salon{--paper:#fff5ed!important;--ink:#3f2734!important;--surface:#d0e2df!important;--surface-2:#fffaf7!important;--hero:#fff5ed!important;--on-hero:#3f2734!important;--action:#a83d36!important;--action-ink:#fff!important;--tone-one:#eaa180!important;--tone-two:#a9cfc8!important;--tone-three:#e7cb7d!important;--tone-four:#c9a6b5!important;--palette-ink:#35212d!important}
body.concept.barber{--paper:#142536!important;--ink:#f3e8d9!important;--surface:#253c51!important;--surface-2:#2d4154!important;--hero:#152637!important;--on-hero:#f3e8d9!important;--action:#d4a06c!important;--action-ink:#1e2b3a!important;--tone-one:#cfaa83!important;--tone-two:#aac3d8!important;--tone-three:#e2cdb4!important;--tone-four:#c6b0a0!important;--palette-ink:#223044!important}
body.concept.skin{--paper:#f4f2e6!important;--ink:#254336!important;--surface:#dfe7cf!important;--surface-2:#fffdf5!important;--hero:#204c38!important;--on-hero:#fff8e9!important;--action:#205a42!important;--action-ink:#fff!important;--tone-one:#d7c994!important;--tone-two:#d5ad82!important;--tone-three:#bdd7b3!important;--tone-four:#f0d7b6!important;--palette-ink:#254336!important}
body.concept.makeup{--paper:#291625!important;--ink:#f9e9dc!important;--surface:#482739!important;--surface-2:#583749!important;--hero:#291625!important;--on-hero:#fff0e2!important;--action:#e3b585!important;--action-ink:#2c1b29!important;--tone-one:#e8bf9d!important;--tone-two:#d9b3b8!important;--tone-three:#bd99b1!important;--tone-four:#ebdcd4!important;--palette-ink:#30202a!important}
body.concept.nails{--paper:#fff5fc!important;--ink:#341c64!important;--surface:#f4c6ea!important;--surface-2:#fff!important;--hero:#edb9ee!important;--on-hero:#341c64!important;--action:#6826a9!important;--action-ink:#fff!important;--tone-one:#f1a8dc!important;--tone-two:#a0e9f2!important;--tone-three:#d3ed81!important;--tone-four:#c7aef1!important;--palette-ink:#2c2047!important}
body.concept.collective{--paper:#fff!important;--ink:#17202e!important;--surface:#f5de63!important;--surface-2:#f3f4f5!important;--hero:#fff!important;--on-hero:#17202e!important;--action:#17202e!important;--action-ink:#fff!important;--tone-one:#f1d44e!important;--tone-two:#b6c1e1!important;--tone-three:#ec967d!important;--tone-four:#c5d5aa!important;--palette-ink:#1f2634!important}
/* Preserve legibility throughout demos: accent color must never be the only
   way to convey meaning; focus rings and labels remain visible. */
body.concept .site-header .desktop-nav a{transition:color .2s,border-color .2s}
body.concept .site-header .desktop-nav a[aria-current=page]{font-weight:700}
body.concept .page-intro h1{max-width:17ch}
body.concept .person,body.concept .journey-step{min-width:0}
body.concept .service-list article>div{min-width:0}

/* Welcome: friendly, bright, family-first editorial rhythm. */
body.concept.welcome .site-header{border-bottom:5px solid #f2bc38}
body.concept.welcome .wordmark{font-weight:700}
body.concept.welcome .section-head h2{letter-spacing:-.045em}
body.concept.welcome .grid{gap:20px}
body.concept.welcome .grid>article{background:#fff;border:1px solid #a9cde5;border-top:8px solid #ec8265;padding:28px;border-radius:16px}
body.concept.welcome .grid>article:nth-child(2){border-top-color:#f2bc38}
body.concept.welcome .grid>article:nth-child(3){border-top-color:#1556a3}
body.concept.welcome .service-list article{background:#fff;border-radius:18px;padding:26px;margin-block:14px;border:1px solid #c6dbed}
body.concept.welcome .journey-steps{gap:18px}
body.concept.welcome .journey-step{background:#fffdfa;color:#18365e;padding:27px;border:0;border-radius:18px;box-shadow:0 5px 0 #ec8265}
body.concept.welcome .journey-step:nth-child(2){box-shadow:0 5px 0 #f2bc38}
body.concept.welcome .journey-step:nth-child(3){box-shadow:0 5px 0 #1556a3}
body.concept.welcome .journey-step>span{margin-bottom:27px}

/* Sanctuary: framed, symmetrical, quiet high-contrast editorial flow. */
body.concept.sanctuary .site-header{border-bottom:1px solid #dab87a}
body.concept.sanctuary .section-head{text-align:center;margin-inline:auto;max-width:850px}
body.concept.sanctuary .section-head>p:not(.eyebrow){margin-inline:auto}
body.concept.sanctuary .section-head h2{font-size:clamp(3.2rem,5.6vw,6.4rem);line-height:.98}
body.concept.sanctuary .service-list{border-top:2px solid #dab87a}
body.concept.sanctuary .service-list article{border-bottom:1px solid #dab87a60;padding-block:40px}
body.concept.sanctuary .grid>article{text-align:center;border-top:1px solid #dab87a;padding:38px 20px}
body.concept.sanctuary .journey-step{text-align:center;border-top:0;border-inline:1px solid #dab87a50;padding:35px}
body.concept.sanctuary .journey-step>span{font:italic 42px var(--display);color:#e5bf7f;margin-bottom:18px}
body.concept.sanctuary .person-number{font-size:72px}
body.concept.sanctuary .footer{border-top:4px double #dab87a}

/* Gathering: poster-like blocks, offset grid, punchy interaction cues. */
body.concept.gathering .site-header{border-bottom:8px solid #cef051}
body.concept.gathering .wordmark{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-.06em}
body.concept.gathering .section-head h2{text-transform:uppercase;font-size:clamp(3rem,5vw,6rem);letter-spacing:-.065em}
body.concept.gathering .grid{gap:14px}
body.concept.gathering .grid>article{background:#cef051;border:2px solid #301563;padding:26px;box-shadow:7px 7px 0 #5427ad}
body.concept.gathering .grid>article:nth-child(2){background:#ffb074;box-shadow:7px 7px 0 #d7652c}
body.concept.gathering .grid>article:nth-child(3){background:#c8b2f7;box-shadow:7px 7px 0 #301563}
body.concept.gathering .service-list article{border-bottom:4px solid #5427ad;padding:31px 14px}
body.concept.gathering .journey-step{background:#301563;color:#fff;border:0;padding:26px}
body.concept.gathering .journey-step:nth-child(2){background:#ffb074;color:#301563}
body.concept.gathering .journey-step:nth-child(3){background:#cef051;color:#301563}
body.concept.gathering .journey-step>span{font-weight:800;margin-bottom:24px}
body.concept.gathering .footer{border-top:12px solid #cef051}

/* Salon: editorial hair magazine, offset text and elongated divisions. */
body.concept.salon .site-header{border-bottom:3px solid #a83d36}
body.concept.salon .section-head{max-width:980px}
body.concept.salon .section-head h2{font-style:italic;max-width:13ch;font-size:clamp(3.2rem,5.7vw,6.7rem)}
body.concept.salon .grid{gap:30px}
body.concept.salon .grid>article{border-top:7px solid #a83d36;padding:34px 15px 28px}
body.concept.salon .grid>article:nth-child(2){border-top-color:#145957}
body.concept.salon .grid>article:nth-child(3){border-top-color:#d3a456}
body.concept.salon .service-list article{grid-template-columns:70px minmax(0,1.4fr) minmax(0,.7fr);padding-block:37px;border-color:#a83d3670}
body.concept.salon .person-number{font-style:italic;font-size:80px;color:#a83d36}
body.concept.salon .journey-steps{gap:8px}
body.concept.salon .journey-step{padding:32px;background:#e2ebe6;color:#3f2734;border:0}
body.concept.salon .journey-step:nth-child(2){background:#e5c46e}
body.concept.salon .journey-step:nth-child(3){background:#f2c6ba}
body.concept.salon .footer{border-top:12px solid #145957}

/* Barber: disciplined industrial rows, heavy rules, practical scanning. */
body.concept.barber .site-header{border-bottom:3px solid #d4a06c}
body.concept.barber .wordmark{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-weight:700}
body.concept.barber .section-head h2{text-transform:uppercase;letter-spacing:-.035em;line-height:.93}
body.concept.barber .grid{gap:0;border-top:3px solid #d4a06c}
body.concept.barber .grid>article{padding:28px;border:1px solid #d4a06c70;border-top:0}
body.concept.barber .service-list{border-top:4px solid #d4a06c}
body.concept.barber .service-list article{border-bottom:1px solid #d4a06c80;grid-template-columns:45px 1.5fr .7fr}
body.concept.barber .service-list h3{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:clamp(30px,3.2vw,45px)}
body.concept.barber .journey-steps{gap:0}
body.concept.barber .journey-step{padding:28px;border:1px solid #d4a06c70;border-right:0}
body.concept.barber .journey-step:last-child{border-right:1px solid #d4a06c70}
body.concept.barber .journey-step>span{color:#d4a06c;font-weight:700;margin-bottom:24px}
body.concept.barber .footer{border-top:6px solid #a3533f}

/* Skin: breathy intervals, botanical curves, softer information density. */
body.concept.skin .site-header{border-bottom:1px solid #6e8d6f}
body.concept.skin .section{padding-block:115px}
body.concept.skin .section-head{max-width:650px}
body.concept.skin .section-head h2{font-size:clamp(3.2rem,5.2vw,6rem);font-style:italic;line-height:1.05}
body.concept.skin .grid{gap:36px}
body.concept.skin .grid>article{border-top:1px solid #738b70;padding:33px 0}
body.concept.skin .service-list article{padding-block:45px;border-color:#8a9d8080}
body.concept.skin .journey-step{background:#f8f3df;color:#254336;padding:32px;border:0;border-radius:70px 5px 70px 5px}
body.concept.skin .journey-step>span{margin-bottom:28px}
body.concept.skin .person-number{font-size:70px;font-style:italic;color:#446749}
body.concept.skin .footer{border-top:8px solid #c1a274}

/* Makeup: night-gallery luxury, bold serif numbers and exhibition framing. */
body.concept.makeup .site-header{border-bottom:1px solid #e3b58580}
body.concept.makeup .section-head h2{font-size:clamp(3.4rem,6vw,7rem);max-width:12ch;font-weight:400}
body.concept.makeup .grid{gap:20px}
body.concept.makeup .grid>article{padding:36px 25px;background:#412235;border:1px solid #e3b58565}
body.concept.makeup .grid>article:nth-child(2){background:#542b43}
body.concept.makeup .service-list{border-top:1px solid #e3b585}
body.concept.makeup .service-list article{padding-block:43px;border-color:#e3b58570}
body.concept.makeup .journey-step{border-top:1px solid #e3b585;padding:42px 24px}
body.concept.makeup .journey-step>span{font:italic 62px var(--display);color:#e3b585;margin-bottom:15px}
body.concept.makeup .person-number{font:italic 78px var(--display);color:#e3b585}
body.concept.makeup .footer{border-top:2px solid #e3b585}

/* Nails: punchy shapes and product-style vibrant choice cards. */
body.concept.nails .site-header{border-bottom:7px solid #f07ac6}
body.concept.nails .section-head h2{letter-spacing:-.075em;max-width:14ch}
body.concept.nails .grid{gap:18px}
body.concept.nails .grid>article{padding:30px 22px;border:3px solid #341c64;border-radius:28px;background:#f4c6ea;box-shadow:6px 6px 0 #a0e9f2}
body.concept.nails .grid>article:nth-child(2){background:#d3ed81;box-shadow:6px 6px 0 #f1a8dc}
body.concept.nails .grid>article:nth-child(3){background:#a0e9f2;box-shadow:6px 6px 0 #c7aef1}
body.concept.nails .service-list article{margin-block:12px;padding:24px;background:#fff;border:2px solid #c7aef1;border-radius:24px}
body.concept.nails .journey-step{background:#d3ed81;color:#341c64;border:0;border-radius:22px;padding:30px}
body.concept.nails .journey-step:nth-child(2){background:#a0e9f2}
body.concept.nails .journey-step:nth-child(3){background:#f1a8dc}
body.concept.nails .journey-step>span{font-weight:800;margin-bottom:22px}
body.concept.nails .footer{border-top:12px solid #6826a9}

/* Collective: Swiss-style information grid, category and people first. */
body.concept.collective .site-header{border-bottom:4px solid #17202e}
body.concept.collective .wordmark{font-weight:800;letter-spacing:-.07em}
body.concept.collective .section-head h2{font-family:'Manrope',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.065em}
body.concept.collective .grid{gap:0;border-top:4px solid #17202e;border-left:1px solid #17202e}
body.concept.collective .grid>article{border:0;border-right:1px solid #17202e;border-bottom:1px solid #17202e;padding:24px}
body.concept.collective .service-list article{border-bottom:2px solid #17202e;padding-block:27px}
body.concept.collective .journey-step{background:#f1d44e;color:#17202e;padding:30px;border:1px solid #17202e}
body.concept.collective .journey-step:nth-child(2){background:#b6c1e1}
body.concept.collective .journey-step:nth-child(3){background:#ec967d}
body.concept.collective .journey-step>span{margin-bottom:25px;font-weight:800}
body.concept.collective .footer{border-top:9px solid #17202e}

/* Restore light site ink inside intentionally light grid and step panels
   where a brand's surrounding theme is dark or where earlier pass hardcoded
   --palette-ink for brand accents. */
body.concept.gathering .grid>article,body.concept.nails .grid>article{color:#301563}
body.concept.welcome .grid>article{color:#18365e}
body.concept.salon .journey-step{color:#3f2734}
body.concept.collective .grid>article{color:#17202e}
body.concept.skin .journey-step{color:#254336}
/* Keep all new card layouts legible on narrow viewports. */
@media(max-width:900px){
 body.concept .grid{gap:16px}
 body.concept .grid>article{padding:22px}
 body.concept .journey-steps{gap:14px}
 body.concept .journey-step{padding:22px}
 body.concept .service-list article{grid-template-columns:40px minmax(0,1fr);gap:14px}
 body.concept .service-list article>div:last-child{grid-column:2}
 body.concept .service-list article>div:last-child{min-width:0}
 body.concept.salon .service-list article,body.concept.barber .service-list article{grid-template-columns:40px minmax(0,1fr)}
}
@media(max-width:700px){
 body.concept.gathering .grid>article,body.concept.nails .grid>article{box-shadow:none}
 body.concept.sanctuary .section-head{text-align:left}
 body.concept.gathering .journey-step,body.concept.nails .journey-step{border-radius:16px}
 body.concept .service-list article{padding:24px 12px}
 body.concept .journey-step>span{margin-bottom:18px}
}

/* Pass 9: remove identical three-pastel shortcut motifs from SITE INTERIORS.
   Approved catalog covers and images remain untouched. Brand routes have
   varied quantity, placement, geometry, hierarchy, and interaction. */
body.concept .brand-paths{position:relative;z-index:3;margin-top:30px;max-width:100%}
body.concept .brand-paths a{display:flex;align-items:center;gap:12px;min-height:48px;color:inherit;text-decoration:none;transition:transform .18s ease,color .18s ease,background-color .18s ease,border-color .18s ease}
body.concept .brand-paths a:focus-visible{outline:3px solid currentColor;outline-offset:4px}
body.concept .brand-paths .path-number{font-size:11px;font-weight:700;letter-spacing:.08em}
body.concept .brand-paths .path-copy{display:flex;flex-direction:column;min-width:0}
body.concept .brand-paths .path-copy strong{font:inherit;font-weight:700}
body.concept .brand-paths .path-copy small{display:block;font-size:10px;line-height:1.45;letter-spacing:.05em}
body.concept .brand-paths .path-arrow{margin-left:auto;font-size:19px;line-height:1;flex:none}
body.concept .actions .button{min-height:48px;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}
body.concept .actions .button:focus-visible{outline-offset:4px}
body.concept .brand-paths a:hover .path-copy strong{text-decoration:underline;text-underline-offset:5px}

/* Welcome: two friendly step cards, not a row of candy-colored chips. */
body.concept.welcome .brand-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-width:560px;margin-top:40px}
body.concept.welcome .brand-paths a{background:#fff;border:2px solid #a8c8dc;border-radius:18px;padding:16px 20px;color:#18365e;box-shadow:0 5px 0 #18365e19}
body.concept.welcome .brand-paths a:nth-child(2){border-color:#de957a}
body.concept.welcome .brand-paths .path-number{font:600 22px var(--display);color:#b34331}
body.concept.welcome .brand-paths .path-copy strong{font-size:15px}
body.concept.welcome .brand-paths .path-copy small{color:#38526b}
body.concept.welcome .brand-paths a:hover{transform:translateY(-4px)}
body.concept.welcome .actions .button{background:#b34331;color:#fff;border:2px solid #b34331;border-radius:999px;padding-inline:31px;font-weight:700}
body.concept.welcome .actions .button:hover{background:#8b3326}

/* Sanctuary: an understated ceremonial two-column editorial directory. */
body.concept.sanctuary .brand-paths{max-width:690px;margin:45px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
body.concept.sanctuary .brand-paths a{padding:15px 5px 21px;justify-content:center;border-bottom:1px solid #d2ab61;color:#fff4e3;background:transparent;gap:18px}
body.concept.sanctuary .brand-paths .path-number{font:italic 25px var(--display);color:#e0bc78}
body.concept.sanctuary .brand-paths .path-copy strong{font:500 17px var(--display);letter-spacing:.01em}
body.concept.sanctuary .brand-paths .path-copy small{font-family:var(--body);color:#f0dbc0}
body.concept.sanctuary .brand-paths .path-arrow{font-size:15px;color:#e0bc78}
body.concept.sanctuary .actions .button{background:#d9ba7d;color:#132138;border-color:#d9ba7d;border-radius:0;padding:17px 35px;font-weight:600}
body.concept.sanctuary .actions .button:hover{background:#f3d19b}

/* Gathering: bold event-poster panels with oversized index numbers. */
body.concept.gathering .brand-paths{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;max-width:740px;margin-top:52px}
body.concept.gathering .brand-paths a{background:#d0f04d;color:#28144f;padding:18px 15px;border:2px solid #28144f;box-shadow:5px 5px 0 #28144f;align-items:start;min-height:100px}
body.concept.gathering .brand-paths a:nth-child(2){background:#ff9c5e;transform:translateY(11px)}
body.concept.gathering .brand-paths a:nth-child(3){background:#fcf6f1}
body.concept.gathering .brand-paths .path-number{display:none}
body.concept.gathering .brand-paths .path-copy strong{font:700 16px/1.1 'Space Grotesk',sans-serif;text-transform:uppercase;letter-spacing:-.035em}
body.concept.gathering .brand-paths .path-copy small{margin-top:12px;font-weight:700;letter-spacing:.1em}
body.concept.gathering .brand-paths .path-arrow{font-size:21px}
body.concept.gathering .brand-paths a:hover{transform:translate(-3px,-4px)}
body.concept.gathering .brand-paths a:nth-child(2):hover{transform:translate(-3px,7px)}
body.concept.gathering .actions .button{background:#c4f044;color:#28144f;border:3px solid #28144f;border-radius:0;box-shadow:6px 6px 0 #28144f;text-transform:uppercase}
body.concept.gathering .actions .button:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 #28144f}

/* Salon: two vertical editorial folio links, no backgrounds. */
body.concept.salon .brand-paths{display:grid;grid-template-columns:1fr;gap:0;margin-top:30px}
body.concept.salon .brand-paths a{border-top:1px solid #682b2c;padding:15px 0;color:#542831}
body.concept.salon .brand-paths a:last-child{border-bottom:1px solid #682b2c}
body.concept.salon .brand-paths .path-number{font:italic 24px var(--display);color:#a53329}
body.concept.salon .brand-paths .path-copy strong{font:italic 19px var(--display)}
body.concept.salon .brand-paths .path-copy small{text-transform:uppercase;font-size:9px;letter-spacing:.13em}
body.concept.salon .brand-paths a:hover{padding-left:8px}
body.concept.salon .actions .button{background:#a52d25;color:#fff;border-color:#a52d25;border-radius:0;padding-inline:30px}
body.concept.salon .actions .button:hover{background:#7d211d}

/* Barber: compact workshop navigation inspired by type on metal plaques. */
body.concept.barber .brand-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:30px}
body.concept.barber .brand-paths a{display:flex;flex-direction:column;align-items:start;min-height:116px;background:#1a2b3b;color:#f3e8d9;border:1px solid #c59566;padding:16px 12px}
body.concept.barber .brand-paths a+a{border-left:0}
body.concept.barber .brand-paths .path-number{font:700 12px 'Barlow Condensed',sans-serif;color:#d4a06c}
body.concept.barber .brand-paths .path-copy strong{font:700 20px/1 'Barlow Condensed',sans-serif;text-transform:uppercase}
body.concept.barber .brand-paths .path-copy small{font-size:9px;text-transform:uppercase;color:#dfc6ac}
body.concept.barber .brand-paths .path-arrow{align-self:end;margin-top:-40px;color:#d4a06c}
body.concept.barber .brand-paths a:hover{background:#36536c}
body.concept.barber .actions .button{background:#d4a06c;color:#192638;border:2px solid #d4a06c;border-radius:0;clip-path:polygon(0 0,100% 0,100% 77%,94% 100%,0 100%);font-weight:800;text-transform:uppercase;letter-spacing:.05em}

/* Skin: near-invisible calm, two typographic links along a single rule. */
body.concept.skin .brand-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;border-top:1px solid #285f4b;margin-top:36px}
body.concept.skin .brand-paths a{padding:20px 0 10px;align-items:start;color:#254336}
body.concept.skin .brand-paths .path-number{display:none}
body.concept.skin .brand-paths .path-copy strong{font:italic 24px/1.2 var(--display);font-weight:500}
body.concept.skin .brand-paths .path-copy small{font-size:11px;color:#375748}
body.concept.skin .brand-paths .path-arrow{font-size:18px;color:#254336}
body.concept.skin .brand-paths a:hover{transform:translateX(5px)}
body.concept.skin .actions .button{background:#1b533e;color:#fff;border:2px solid #1b533e;border-radius:100px;padding-inline:32px}

/* Makeup: a pair of gallery labels, like captions beneath exhibition art. */
body.concept.makeup .brand-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:520px;margin-top:58px}
body.concept.makeup .brand-paths a{border-top:1px solid #dcb684;padding:22px 0 10px;color:#f6e7dd;background:transparent;align-items:start}
body.concept.makeup .brand-paths .path-number{display:none}
body.concept.makeup .brand-paths .path-copy strong{font:500 21px var(--display);color:#f5e0c8}
body.concept.makeup .brand-paths .path-copy small{font:500 9px var(--body);text-transform:uppercase;letter-spacing:.19em;color:#dfc1a6;margin-top:7px}
body.concept.makeup .brand-paths .path-arrow{color:#dcb684;font-size:16px}
body.concept.makeup .brand-paths a:hover{transform:translateY(-3px)}
body.concept.makeup .actions .button{background:transparent;color:#f5dfc2;border:1px solid #dcb684;border-radius:0;padding:17px 28px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}
body.concept.makeup .actions .button:hover{background:#dcb684;color:#291625}

/* Nails: editorial shapes and bold contrast; remove repeated pastel dots. */
body.concept.nails .nail-manifesto{margin:34px 0 8px;padding:12px 0 12px 20px;border-left:7px solid #6826a9;color:#341c64;font:italic 22px/1.3 'Playfair Display',serif}
body.concept.nails .nail-manifesto span{display:block;font:800 11px/1.3 'Bricolage Grotesque',sans-serif;letter-spacing:.12em;margin-bottom:9px}
body.concept.nails .brand-paths{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;margin-top:33px}
body.concept.nails .brand-paths a{background:#4c2488;color:#fff;padding:21px 17px;min-height:100px;border-radius:25px 4px 25px 4px}
body.concept.nails .brand-paths a:nth-child(2){background:#fff;border:2px solid #4c2488;color:#341c64;border-radius:4px 25px 4px 25px}
body.concept.nails .brand-paths .path-number{display:none}
body.concept.nails .brand-paths .path-copy strong{font:700 18px/1.1 'Bricolage Grotesque',sans-serif}
body.concept.nails .brand-paths .path-copy small{text-transform:uppercase;font-weight:700;margin-top:8px}
body.concept.nails .brand-paths a:hover{transform:rotate(-2deg)}
body.concept.nails .brand-paths a:nth-child(2):hover{transform:rotate(2deg)}
body.concept.nails .actions .button{background:#65259e;color:#fff;border:2px solid #65259e;border-radius:12px;box-shadow:5px 5px 0 #f077cf;padding-inline:26px}
body.concept.nails .actions .button:hover{transform:translateY(-3px);box-shadow:5px 8px 0 #f077cf}

/* Collective: four-part black/white directory rather than colored pastels. */
body.concept.collective .brand-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:32px;border-top:2px solid #17202e;border-left:2px solid #17202e}
body.concept.collective .brand-paths a{border-right:2px solid #17202e;border-bottom:2px solid #17202e;background:#fff;color:#17202e;padding:18px 17px;min-height:84px}
body.concept.collective .brand-paths a:hover{background:#f1d44e}
body.concept.collective .brand-paths .path-number{font:800 14px 'Manrope',sans-serif;border-right:1px solid #17202e;padding-right:12px}
body.concept.collective .brand-paths .path-copy strong{font:800 14px/1.25 'Manrope',sans-serif;text-transform:uppercase}
body.concept.collective .brand-paths .path-copy small{display:none}
body.concept.collective .brand-paths .path-arrow{font-size:21px}
body.concept.collective .actions .button{background:#17202e;color:#fff;border:2px solid #17202e;border-radius:0;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
body.concept.collective .actions .button:hover{background:#f1d44e;color:#17202e}
/* In the professionals directory, remove the four soft-pastel bars. */
body.concept.collective .specialty-row{padding:24px;border:2px solid #17202e;color:#17202e;margin-block:12px;background:#fff}
body.concept.collective .specialty-row:nth-child(1){background:#fff}
body.concept.collective .specialty-row:nth-child(2){background:#f1d44e}
body.concept.collective .specialty-row:nth-child(3){background:#fff}
body.concept.collective .specialty-row:nth-child(4){background:#fff}
body.concept.collective .specialty-row:hover{background:#f1d44e}
/* Interactions remain accessible without a reliance on motion. */
@media(max-width:700px){
 body.concept .brand-paths{gap:12px}
 body.concept.welcome .brand-paths,body.concept.skin .brand-paths,body.concept.makeup .brand-paths,body.concept.nails .brand-paths{grid-template-columns:1fr}
 body.concept.gathering .brand-paths,body.concept.barber .brand-paths{grid-template-columns:1fr}
 body.concept.gathering .brand-paths a:nth-child(2){transform:none}
 body.concept.barber .brand-paths a+a{border-left:1px solid #c59566;border-top:0}
 body.concept.collective .brand-paths{grid-template-columns:1fr}
 body.concept.sanctuary .brand-paths{grid-template-columns:1fr;max-width:340px;gap:0}
 body.concept.sanctuary .brand-paths a{justify-content:flex-start;min-height:76px;padding:17px 8px}
 body.concept.sanctuary .brand-paths .path-copy strong{font-size:21px}
 body.concept .brand-paths a{min-height:48px}
}
@media(prefers-reduced-motion:reduce){
 body.concept .brand-paths a,body.concept .actions .button{transition:none;transform:none!important}
 body.concept .brand-paths a:hover,body.concept .actions .button:hover{transform:none!important}
}

/* Pass 9 continued: independently art-directed header CTAs and quiet links. */
body.concept.welcome .header-action{background:#1556a3;color:#fff;border:2px solid #1556a3;border-radius:999px;padding:12px 23px;font-weight:700}
body.concept.welcome .header-action:hover{background:#0d3c79}
body.concept.welcome .text-link{text-decoration:none;text-underline-offset:6px;border-bottom:2px solid #1556a3}
body.concept.sanctuary .header-action{background:transparent;color:#e9c78a;border:1px solid #d9ba7d;border-radius:0;padding:15px 24px;letter-spacing:.06em}
body.concept.sanctuary .header-action:hover{background:#d9ba7d;color:#132138}
body.concept.sanctuary .text-link{border-bottom:1px solid #d9ba7d;letter-spacing:.05em}
body.concept.gathering .header-action{background:#d0f04d;color:#28144f;border:3px solid #28144f;border-radius:0;box-shadow:4px 4px 0 #28144f;text-transform:uppercase;font-weight:800}
body.concept.gathering .header-action:hover{transform:translate(-2px,-2px)}
body.concept.gathering .text-link{border-bottom:3px solid currentColor;text-transform:uppercase;font-weight:800}
body.concept.salon .header-action{background:#a52d25;color:#fff;border:0;border-radius:0;padding:16px 30px;text-transform:none;font-weight:700}
body.concept.salon .text-link{border-bottom:1px solid #a52d25;font-style:italic;font-size:14px}
body.concept.barber .header-action{background:#d4a06c;color:#192638;border:2px solid #d4a06c;border-radius:0;letter-spacing:.06em;text-transform:uppercase;font-weight:800}
body.concept.barber .text-link{border-bottom:2px solid #d4a06c;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
body.concept.skin .header-action{background:transparent;color:#254336;border:2px solid #254336;border-radius:60px;padding:12px 26px}
body.concept.skin .header-action:hover{background:#254336;color:#fff}
body.concept.skin .text-link{border-bottom:1px solid #254336;font-weight:500}
body.concept.makeup .header-action{background:#e3b585;color:#291625;border:1px solid #e3b585;border-radius:0;padding:14px 25px;letter-spacing:.1em;text-transform:uppercase}
body.concept.makeup .header-action:hover{background:#f7d6af}
body.concept.makeup .text-link{border-bottom:1px solid #e3b585;font-weight:500;letter-spacing:.05em}
body.concept.nails .header-action{background:#6826a9;color:#fff;border:2px solid #6826a9;border-radius:8px 25px 8px 25px;padding:12px 23px;font-weight:800}
body.concept.nails .header-action:hover{background:#4d1b83}
body.concept.nails .text-link{border-bottom:3px solid #6826a9;font-weight:700}
body.concept.collective .header-action{background:#17202e;color:#fff;border:2px solid #17202e;border-radius:0;padding:13px 25px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
body.concept.collective .header-action:hover{background:#f1d44e;color:#17202e}
body.concept.collective .text-link{border-bottom:3px solid currentColor;text-transform:uppercase;font-weight:800;letter-spacing:.04em}

/* Pass 10: individual service, people, form and page-title details.
   Remove universal pastel color bars; retain working forms, IDs and links. */
body.concept .demo-form{min-width:0}
body.concept .demo-form input,body.concept .demo-form select,body.concept .demo-form textarea{min-height:44px}
body.concept .demo-form button[type=submit]:focus-visible{outline-offset:4px}

/* Welcome — friendly invitation cards, not multicolor chips. */
body.concept.welcome .page-intro:after{height:9px;left:4vw;right:auto;width:125px;background:#b34331;border-radius:6px}
body.concept.welcome .service-list .index{color:#1556a3;font:700 20px 'DM Sans',sans-serif;border-bottom:3px solid #b34331;padding:0 0 4px}
body.concept.welcome .person{background:#fffdf7;border:1px solid #b7d4e7;border-left:6px solid #1556a3;padding:24px;border-radius:20px}
body.concept.welcome .person:nth-child(2){border-left-color:#b34331}
body.concept.welcome .person-number{font-size:48px;color:#1556a3;opacity:1}
body.concept.welcome .demo-form{background:#fffdf7;border:2px solid #b7d4e7;border-left:10px solid #b34331;padding:36px;border-radius:24px}
body.concept.welcome .demo-form input,body.concept.welcome .demo-form select,body.concept.welcome .demo-form textarea{border:1px solid #7eaac5;border-radius:10px;background:#fff}
body.concept.welcome .demo-form button[type=submit]{background:#1556a3;color:#fff;border-radius:999px}

/* Sanctuary — serif numbering, centered inscription, antique-gold rulings. */
body.concept.sanctuary .page-intro:after{height:1px;left:40%;right:40%;background:#d9ba7d}
body.concept.sanctuary .service-list .index{font:italic 33px 'Cormorant Garamond',serif;color:#d9ba7d}
body.concept.sanctuary .person{text-align:center;border:0;border-bottom:1px solid #dab87a88;padding:48px 24px;background:transparent}
body.concept.sanctuary .person-number{font:italic 66px 'Cormorant Garamond',serif;color:#dab87a;opacity:1}
body.concept.sanctuary .demo-form{background:#192c47;border:1px solid #dab87a;padding:44px;color:#f8ecd7}
body.concept.sanctuary .demo-form label{color:#f8ecd7}
body.concept.sanctuary .demo-form input,body.concept.sanctuary .demo-form select,body.concept.sanctuary .demo-form textarea{background:#101e34;color:#f8ecd7;border:1px solid #bfa576}
body.concept.sanctuary .demo-form button[type=submit]{background:#dab87a;border:1px solid #dab87a;color:#101e34;border-radius:0}

/* Gathering — poster numbering, lively asymmetry, bold black ink. */
body.concept.gathering .page-intro:after{height:13px;left:0;right:55%;background:#cef051;transform:skewX(-15deg);transform-origin:left}
body.concept.gathering .service-list .index{font:800 38px 'Space Grotesk',sans-serif;color:#5427ad;letter-spacing:-.08em}
body.concept.gathering .person{background:#cef051;color:#28144f;border:3px solid #28144f;padding:26px;box-shadow:7px 7px 0 #28144f}
body.concept.gathering .person:nth-child(2){background:#ffb074}
body.concept.gathering .person:nth-child(3){background:#f7f3ff}
body.concept.gathering .person-number{font:800 54px 'Space Grotesk',sans-serif;color:#28144f;opacity:1}
body.concept.gathering .demo-form{background:#f7f2ff;border:3px solid #28144f;padding:30px;box-shadow:9px 9px 0 #5427ad}
body.concept.gathering .demo-form input,body.concept.gathering .demo-form select,body.concept.gathering .demo-form textarea{background:#fff;border:2px solid #5427ad}
body.concept.gathering .demo-form button[type=submit]{background:#cef051;border:2px solid #28144f;color:#28144f;text-transform:uppercase;font-weight:800}

/* Salon — editorial folio, a typographic rule rather than repeated chips. */
body.concept.salon .page-intro:after{height:2px;left:4vw;right:62%;background:#a52d25}
body.concept.salon .service-list .index{font:italic 32px 'Playfair Display',serif;color:#a52d25}
body.concept.salon .person{border-top:8px solid #145957;background:#fff9f1;padding:34px 20px;transform:none}
body.concept.salon .person:nth-child(2){border-top-color:#a52d25}
body.concept.salon .person-number{font:italic 76px 'Playfair Display',serif;color:#a52d25;opacity:1}
body.concept.salon .demo-form{background:#fff9f1;border:0;border-left:12px solid #145957;padding:40px;box-shadow:0 14px 35px #49232c13}
body.concept.salon .demo-form input,body.concept.salon .demo-form select,body.concept.salon .demo-form textarea{background:#fff;border:0;border-bottom:2px solid #a52d25;padding-inline:0}
body.concept.salon .demo-form button[type=submit]{border-radius:0;background:#a52d25;color:#fff}

/* Barber — utilitarian labels and machine-plate borders. */
body.concept.barber .page-intro:after{height:6px;left:0;right:0;background:#d4a06c}
body.concept.barber .service-list .index{font:700 24px 'Barlow Condensed',sans-serif;color:#d4a06c;border:1px solid #d4a06c;padding:4px 10px;letter-spacing:.04em}
body.concept.barber .person{border:1px solid #d4a06c;background:#192b3c;padding:26px;box-shadow:inset 0 5px 0 #d4a06c}
body.concept.barber .person-number{font:700 65px 'Barlow Condensed',sans-serif;color:#d4a06c;opacity:1}
body.concept.barber .person h3{text-transform:uppercase}
body.concept.barber .demo-form{background:#203548;border:1px solid #d4a06c;border-top:8px solid #d4a06c;padding:34px}
body.concept.barber .demo-form input,body.concept.barber .demo-form select,body.concept.barber .demo-form textarea{background:#142536;border:1px solid #b38d64;color:#f3e8d9}
body.concept.barber .demo-form button[type=submit]{background:#d4a06c;color:#172638;border-radius:0;text-transform:uppercase;font-weight:800}

/* Skin — minimal, botanical, gentle hierarchy without colored circles. */
body.concept.skin .page-intro:after{display:none}
body.concept.skin .service-list .index{font:italic 26px 'Cormorant Garamond',serif;color:#416c55}
body.concept.skin .person{border:0;border-left:1px solid #7b9e7b;background:transparent;padding:18px 28px}
body.concept.skin .person-number{font:italic 58px 'Cormorant Garamond',serif;color:#416c55;opacity:1}
body.concept.skin .demo-form{background:#fdfbf2;border:1px solid #94aa87;padding:45px;border-radius:5px 74px 5px 5px}
body.concept.skin .demo-form input,body.concept.skin .demo-form select,body.concept.skin .demo-form textarea{background:#fffdf5;border:0;border-bottom:1px solid #497459;border-radius:0}
body.concept.skin .demo-form button[type=submit]{border-radius:60px;background:#205a42;color:#fff}

/* Makeup — sophisticated gallery notes and antique-gold forms. */
body.concept.makeup .page-intro:after{height:1px;left:72%;right:4vw;background:#e3b585}
body.concept.makeup .service-list .index{font:italic 38px 'Italiana',serif;color:#e3b585}
body.concept.makeup .person{border:0;border-bottom:1px solid #e3b585;background:#3b2031;padding:37px 26px}
body.concept.makeup .person-number{font:italic 75px 'Italiana',serif;color:#e3b585;opacity:1}
body.concept.makeup .demo-form{background:#482739;border:1px solid #b58b67;padding:40px;color:#f9e9dc}
body.concept.makeup .demo-form input,body.concept.makeup .demo-form select,body.concept.makeup .demo-form textarea{background:#291625;border:0;border-bottom:1px solid #e3b585;color:#f9e9dc}
body.concept.makeup .demo-form button[type=submit]{background:transparent;color:#e3b585;border:1px solid #e3b585;border-radius:0;letter-spacing:.08em;text-transform:uppercase}

/* Nail Studio — vivid asymmetric layering, no repeated pastel dots. */
body.concept.nails .page-intro:after{height:8px;left:5vw;right:30%;background:#6826a9;border-radius:0 0 24px 0}
body.concept.nails .service-list .index{font:800 24px 'Bricolage Grotesque',sans-serif;color:#6826a9;transform:rotate(-7deg)}
body.concept.nails .person{border:3px solid #6826a9;border-radius:25px 4px 25px 4px;background:#fff;padding:26px;box-shadow:5px 5px 0 #e8addc}
body.concept.nails .person:nth-child(2){box-shadow:5px 5px 0 #9fe7e8}
body.concept.nails .person-number{font:800 55px 'Bricolage Grotesque',sans-serif;color:#6826a9;opacity:1}
body.concept.nails .demo-form{background:#fff;border:3px solid #6826a9;padding:30px;border-radius:4px 44px 4px 44px;box-shadow:8px 8px 0 #f1a8dc}
body.concept.nails .demo-form input,body.concept.nails .demo-form select,body.concept.nails .demo-form textarea{background:#fff;border:2px solid #6826a9;border-radius:9px}
body.concept.nails .demo-form button[type=submit]{background:#6826a9;color:#fff;border-radius:12px;font-weight:800}

/* Collective — professional grid, monochrome typography, one accent. */
body.concept.collective .page-intro:after{height:12px;left:0;right:0;background:#17202e}
body.concept.collective .service-list .index{font:800 15px 'Manrope',sans-serif;background:#17202e;color:#fff;padding:7px 12px;letter-spacing:.04em}
body.concept.collective .person{border:2px solid #17202e;background:#fff;padding:28px;box-shadow:none}
body.concept.collective .person-number{font:800 55px 'Manrope',sans-serif;color:#17202e;opacity:1}
body.concept.collective .demo-form{background:#fff;border:2px solid #17202e;border-top:12px solid #17202e;padding:33px;box-shadow:none}
body.concept.collective .demo-form input,body.concept.collective .demo-form select,body.concept.collective .demo-form textarea{background:#fff;border:2px solid #17202e;border-radius:0}
body.concept.collective .demo-form button[type=submit]{background:#17202e;color:#fff;border-radius:0;font-weight:800;text-transform:uppercase}

/* Mobile: preserve clear service rows and prevent decorative box-shadow overflow. */
@media(max-width:700px){
 body.concept .demo-form{padding:23px}
 body.concept.gathering .person,body.concept.nails .person,body.concept.gathering .demo-form,body.concept.nails .demo-form{box-shadow:none}
 body.concept .service-list .index{min-width:22px}
}

/* Pass 11 — visible, simulated generosity and appointment journeys.
   No changes to catalog/gallery covers. No external payment or booking system. */
body.concept .giving-invitation,body.concept .booking-invitation{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);align-items:center;gap:5vw;position:relative}
body.concept .giving-invitation h2,body.concept .booking-invitation h2{font-size:clamp(2.6rem,5vw,5.6rem);line-height:1.04;max-width:17ch;margin-block:17px}
body.concept .giving-invitation p:not(.eyebrow),body.concept .booking-invitation p:not(.eyebrow){max-width:58ch}
body.concept .giving-invitation-action,body.concept .booking-invitation-action{display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-width:0}
body.concept .giving-invitation-action p{line-height:1.7;font-size:14px;margin:0}
body.concept .giving-invitation .button,body.concept .booking-invitation .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:16px 24px;font-weight:700;text-align:center}
body.concept .giving-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.95fr);gap:6vw;align-items:start}
body.concept .giving-page h2{font-size:clamp(2.2rem,3.6vw,3.8rem)}
body.concept .giving-context>p{max-width:62ch}
body.concept .giving-purpose-list{margin-block:35px}
body.concept .giving-purpose-list article{padding:20px 0;border-bottom:1px solid currentColor}
body.concept .giving-purpose-list article h3{font-size:clamp(1.2rem,2vw,1.7rem)}
body.concept .giving-purpose-list article p{font-size:14px;max-width:50ch}
body.concept .giving-form .fine{line-height:1.6}
body.concept .giving-amounts{border:0;padding:0;margin:22px 0 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.concept .giving-amounts legend{font-size:12px;font-weight:700;margin-bottom:13px}
body.concept .giving-amounts label{display:flex;align-items:center;justify-content:center;gap:11px;min-height:52px;padding:13px 12px;margin:0;border:1px solid currentColor;font-size:15px;font-weight:700;cursor:pointer}
body.concept .giving-amounts input{appearance:auto;width:17px;height:17px;margin:0;accent-color:currentColor;flex:none}
body.concept .giving-custom-label[hidden]{display:none}
body.concept .giving-form .check{line-height:1.5}
body.concept .giving-result{display:block;margin-top:23px;font-size:15px;line-height:1.65}
body.concept .giving-result:empty{display:none}
body.concept .giving-result:not(:empty){padding:19px;border-left:5px solid currentColor;background:color-mix(in srgb,currentColor 8%,transparent)}
body.concept .giving-form button[type=submit]{min-height:48px}
/* Three church giving designs look and feel like their own congregations. */
body.concept.welcome .giving-invitation{background:#e8f3f9;color:#18365e;border-radius:0 60px 0 60px;border-left:12px solid #b34331}
body.concept.welcome .giving-invitation .button{background:#1556a3;color:white;border-radius:999px}
body.concept.welcome .giving-form{background:#fffdf7}
body.concept.welcome .giving-amounts label{border:2px solid #92b9d0;border-radius:14px;background:#fff}
body.concept.welcome .giving-amounts label:has(input:checked){border-color:#1556a3;background:#e0edf6}
body.concept.sanctuary .giving-invitation{background:#17263c;color:#f8ecd7;border-top:1px solid #dab87a;border-bottom:1px solid #dab87a;text-align:center}
body.concept.sanctuary .giving-invitation h2{font-style:italic}
body.concept.sanctuary .giving-invitation-action{align-items:center}
body.concept.sanctuary .giving-invitation .button{background:#d9ba7d;color:#17263c;border:1px solid #d9ba7d;border-radius:0}
body.concept.sanctuary .giving-amounts label{border:1px solid #dab87a;color:#f8ecd7;background:#152740}
body.concept.sanctuary .giving-amounts label:has(input:checked){background:#344764}
body.concept.gathering .giving-invitation{background:#cef051;color:#28144f;border:5px solid #28144f;box-shadow:12px 12px 0 #5427ad}
body.concept.gathering .giving-invitation h2{font-family:'Space Grotesk',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.06em}
body.concept.gathering .giving-invitation .button{background:#28144f;color:#fff;border:2px solid #28144f;border-radius:0;text-transform:uppercase}
body.concept.gathering .giving-amounts label{background:#fff;border:2px solid #28144f;color:#28144f;box-shadow:3px 3px 0 #28144f}
body.concept.gathering .giving-amounts label:has(input:checked){background:#cef051}
/* Six intentionally different beauty booking spotlights. */
body.concept.salon .booking-invitation{background:#f7ddcf;color:#4b2930;border-top:10px solid #a52d25}
body.concept.salon .booking-invitation h2{font-style:italic}
body.concept.salon .booking-invitation .button{background:#a52d25;color:#fff;border-radius:0}
body.concept.barber .booking-invitation{background:#172b3b;color:#f3e8d9;border:2px solid #d4a06c}
body.concept.barber .booking-invitation h2{font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase}
body.concept.barber .booking-invitation .button{background:#d4a06c;color:#172b3b;border-radius:0;text-transform:uppercase}
body.concept.skin .booking-invitation{background:#dae7d6;color:#254336;border-radius:90px 0 90px 0}
body.concept.skin .booking-invitation h2{font-style:italic}
body.concept.skin .booking-invitation .button{background:#205a42;color:#fff;border-radius:999px}
body.concept.makeup .booking-invitation{background:#412436;color:#f9e9dc;border-top:1px solid #e3b585}
body.concept.makeup .booking-invitation h2{font-weight:400;font-style:italic}
body.concept.makeup .booking-invitation .button{background:transparent;border:1px solid #e3b585;color:#e3b585;border-radius:0;text-transform:uppercase}
body.concept.nails .booking-invitation{background:#a5eaf1;color:#341c64;border:3px solid #6826a9;border-radius:34px 5px 34px 5px}
body.concept.nails .booking-invitation h2{letter-spacing:-.06em}
body.concept.nails .booking-invitation .button{background:#6826a9;color:#fff;border-radius:14px;box-shadow:5px 5px 0 #f1a8dc}
body.concept.collective .booking-invitation{background:#f1d44e;color:#17202e;border-block:5px solid #17202e}
body.concept.collective .booking-invitation h2{font-family:'Manrope',sans-serif;text-transform:uppercase;font-weight:800}
body.concept.collective .booking-invitation .button{background:#17202e;color:#fff;border-radius:0;text-transform:uppercase}
@media(max-width:760px){
 body.concept .giving-invitation,body.concept .booking-invitation,body.concept .giving-page{grid-template-columns:minmax(0,1fr);gap:22px}
 body.concept .giving-invitation h2,body.concept .booking-invitation h2{font-size:clamp(2.1rem,9vw,3.6rem)}
 body.concept .giving-page .giving-form{min-width:0;padding:24px}
 body.concept.gathering .giving-invitation{box-shadow:none}
 body.concept .giving-amounts{gap:8px}
 body.concept .giving-amounts label{min-height:48px}
}

/* Pass 12: Six individually art-directed SIMULATION-ONLY checkout and
   confirmation experiences. Body-scoped: approved gallery covers untouched. */
body.concept [data-booking-stage][hidden],
body.concept [data-checkout-stage][hidden],
body.concept [data-confirmation-stage][hidden]{display:none!important}
body.concept .simulated-checkout{padding-block:70px 100px}
body.concept .checkout-heading{max-width:850px;margin-bottom:35px}
body.concept .checkout-heading h2,
body.concept .checkout-confirmation h2{font-size:clamp(2.6rem,5.5vw,5.5rem);line-height:1.02;margin:15px 0 23px;text-wrap:balance}
body.concept .checkout-heading>p:last-child{font-size:16px;line-height:1.6;max-width:60ch}
body.concept .checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(22px,4vw,60px);align-items:start}
body.concept .checkout-review,
body.concept .checkout-panel{min-width:0;padding:clamp(24px,3.7vw,56px)}
body.concept .checkout-review h3,
body.concept .checkout-panel h3{font-size:clamp(1.8rem,3vw,2.9rem);line-height:1.1;margin:13px 0 24px}
body.concept .checkout-facts,
body.concept .confirmation-facts{display:grid;grid-template-columns:minmax(105px,43%) minmax(0,1fr);gap:13px 15px;margin:28px 0}
body.concept .checkout-facts dt,
body.concept .confirmation-facts dt{font-size:12px;letter-spacing:.04em;font-weight:600}
body.concept .checkout-facts dd,
body.concept .confirmation-facts dd{margin:0;font-size:15px;overflow-wrap:anywhere;font-weight:700;line-height:1.45}
body.concept .checkout-pricing,
body.concept .checkout-charge{border-block:1px solid currentColor;padding:22px 0;margin-block:28px}
body.concept .checkout-pricing>span,
body.concept .checkout-charge>span{font-size:13px;font-weight:700;display:block}
body.concept .checkout-pricing>strong,
body.concept .checkout-charge>strong{display:block;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;margin:10px 0}
body.concept .checkout-pricing>p,
body.concept .checkout-charge>p{font-size:12px;line-height:1.65;max-width:60ch}
body.concept .checkout-panel>p{max-width:54ch;font-size:14px;line-height:1.65}
body.concept .checkout-panel fieldset{border:0;padding:0;margin:30px 0}
body.concept .checkout-panel legend{font-weight:800;font-size:13px;margin-bottom:15px}
body.concept .checkout-panel fieldset label{display:flex;align-items:center;gap:13px;min-height:72px;padding:18px;margin:0 0 11px;cursor:pointer;font-weight:600}
body.concept .checkout-panel fieldset label input{margin:0;flex:none;width:20px;height:20px;accent-color:currentColor}
body.concept .checkout-panel fieldset label span{min-width:0}
body.concept .checkout-panel fieldset label strong{display:block;font-size:15px}
body.concept .checkout-panel fieldset label small{display:block;font-size:11px;font-weight:400;line-height:1.5;margin-top:5px}
body.concept .checkout-panel fieldset label.unavailable{opacity:.55;cursor:not-allowed}
body.concept .checkout-panel fieldset label:has(input:focus-visible){outline:3px solid currentColor;outline-offset:3px}
body.concept .checkout-panel button[type=submit]{min-height:50px;width:100%;padding:14px 18px;font-weight:800}
body.concept .checkout-notice{font-size:12px!important;line-height:1.6;margin:30px 0}
body.concept .checkout-confirmation{min-height:560px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px}
body.concept .confirmation-mark{display:grid;place-content:center;font-size:38px;width:83px;height:83px;margin-bottom:24px}
body.concept .confirmation-lead{font-size:17px;line-height:1.6;max-width:55ch}
body.concept .confirmation-facts{width:min(100%,650px);padding-block:20px;border-block:1px solid currentColor}
body.concept .confirmation-safety{font-weight:800;line-height:1.7;max-width:60ch}
body.concept .checkout-confirmation .button{margin:20px 0;min-height:48px;padding:16px 30px}
@media(max-width:860px){
 body.concept .checkout-layout{grid-template-columns:minmax(0,1fr)}
 body.concept .simulated-checkout{padding-block:55px 75px}
 body.concept .checkout-review,body.concept .checkout-panel{padding:24px}
 body.concept .checkout-facts,body.concept .confirmation-facts{grid-template-columns:minmax(100px,42%) minmax(0,1fr)}
}
/* Salon House: warm editorial folio and tailored red rails. */
body.concept.salon .simulated-checkout{background:#fff5ed;color:#43292f}
body.concept.salon .checkout-heading h2{font-family:'Playfair Display',serif;font-style:italic;color:#a52d25}
body.concept.salon .checkout-review{border-left:12px solid #145957;background:#fffdf8}
body.concept.salon .checkout-panel{border-top:8px solid #a52d25;background:#f6e2d4}
body.concept.salon .checkout-panel fieldset label{background:#fffaf4;border-bottom:2px solid #a52d25;color:#4b2930}
body.concept.salon .checkout-panel fieldset label:has(input:checked){background:#ddede8;border-color:#145957}
body.concept.salon .checkout-panel button[type=submit]{border:0;border-radius:0;background:#a52d25;color:#fff}
body.concept.salon .checkout-confirmation{background:#fff5ed;color:#43292f;border-left:16px solid #a52d25}
body.concept.salon .checkout-confirmation h2{font-family:'Playfair Display',serif;font-style:italic;color:#a52d25}
body.concept.salon .confirmation-mark{background:#145957;color:#fff;border-radius:0}
/* Barber Studio: dense navy industrial panel and stamped copper signage. */
body.concept.barber .simulated-checkout{background:#152637;color:#f3e8d9}
body.concept.barber .checkout-heading h2{font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.025em}
body.concept.barber .checkout-review{border:2px solid #d4a06c;background:#203548}
body.concept.barber .checkout-panel{background:#172a3b;border-top:12px solid #d4a06c;box-shadow:inset 0 0 0 1px #d4a06c}
body.concept.barber .checkout-panel h3{text-transform:uppercase;font-family:'Barlow Condensed',sans-serif}
body.concept.barber .checkout-panel fieldset label{border:1px solid #b69265;color:#f3e8d9;background:#142536}
body.concept.barber .checkout-panel fieldset label:has(input:checked){background:#3f4b4e;border-width:2px}
body.concept.barber .checkout-panel button[type=submit]{background:#d4a06c;color:#172638;text-transform:uppercase;letter-spacing:.07em;border:2px solid #d4a06c;border-radius:0}
body.concept.barber .checkout-confirmation{background:#192b3c;color:#f3e8d9;border-top:13px solid #d4a06c}
body.concept.barber .checkout-confirmation h2{font:800 clamp(3rem,7vw,6rem)/.93 'Barlow Condensed',sans-serif;text-transform:uppercase}
body.concept.barber .confirmation-mark{background:#d4a06c;color:#172638}
/* Skin Room: botanical quiet with curved form framing. */
body.concept.skin .simulated-checkout{background:#f4f2e6;color:#254336}
body.concept.skin .checkout-heading h2{font:italic clamp(2.6rem,5.5vw,6rem)/1.05 'Cormorant Garamond',serif}
body.concept.skin .checkout-review{background:#dfe7cf;border-radius:0 80px 0 0}
body.concept.skin .checkout-panel{background:#fffdf5;border:1px solid #8ba58c;border-radius:0 0 80px 0}
body.concept.skin .checkout-panel h3{font-style:italic}
body.concept.skin .checkout-panel fieldset label{border:1px solid #8ba58c;border-radius:50px;background:#f4f2e6;color:#254336;padding-inline:25px}
body.concept.skin .checkout-panel fieldset label:has(input:checked){border:2px solid #205a42;background:#e2ecdd}
body.concept.skin .checkout-panel button[type=submit]{background:#205a42;color:#fff;border-radius:999px;border:0}
body.concept.skin .checkout-confirmation{background:#e3e8d7;color:#254336;border-radius:0 110px 0 0}
body.concept.skin .checkout-confirmation h2{font-style:italic}
body.concept.skin .confirmation-mark{background:#205a42;color:#fff;border-radius:50%}
/* Makeup Atelier: nocturne gallery, delicate bronze rules and framed choice. */
body.concept.makeup .simulated-checkout{background:#291625;color:#f9e9dc}
body.concept.makeup .checkout-heading h2{font:400 clamp(2.8rem,6vw,6rem)/1.03 'Italiana',serif;color:#e3b585}
body.concept.makeup .checkout-review{border:1px solid #b58b67;background:#382030}
body.concept.makeup .checkout-panel{background:#482739;border:1px solid #e3b585}
body.concept.makeup .checkout-panel h3{font-family:'Italiana',serif;font-weight:400}
body.concept.makeup .checkout-panel fieldset label{background:transparent;border-bottom:1px solid #e3b585;color:#f9e9dc;padding-left:4px}
body.concept.makeup .checkout-panel fieldset label:has(input:checked){background:#5f3b4d}
body.concept.makeup .checkout-panel button[type=submit]{background:transparent;color:#e3b585;border:1px solid #e3b585;border-radius:0;text-transform:uppercase;letter-spacing:.12em}
body.concept.makeup .checkout-confirmation{background:#291625;color:#f9e9dc;border-block:1px solid #e3b585;text-align:left}
body.concept.makeup .checkout-confirmation h2{font:400 clamp(3rem,6vw,6rem)/1.1 'Italiana',serif;color:#e3b585}
body.concept.makeup .confirmation-mark{border:1px solid #e3b585;color:#e3b585;border-radius:0}
/* Nail Studio: asymmetric color architecture with high-contrast violet. */
body.concept.nails .simulated-checkout{background:#fff5fc;color:#341c64}
body.concept.nails .checkout-heading h2{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;letter-spacing:-.07em}
body.concept.nails .checkout-review{background:#a0e9f2;color:#341c64;border:3px solid #6826a9;border-radius:32px 4px 32px 4px}
body.concept.nails .checkout-panel{background:#fff;border:3px solid #6826a9;border-radius:4px 38px 4px 38px;box-shadow:8px 8px 0 #f1a8dc}
body.concept.nails .checkout-panel fieldset label{background:#fff;border:2px solid #6826a9;color:#341c64;border-radius:10px 25px 10px 25px}
body.concept.nails .checkout-panel fieldset label:has(input:checked){background:#d3ed81}
body.concept.nails .checkout-panel button[type=submit]{background:#6826a9;color:#fff;border:2px solid #6826a9;border-radius:14px}
body.concept.nails .checkout-confirmation{background:#d3ed81;color:#341c64;border:3px solid #6826a9;border-radius:30px 6px 30px 6px}
body.concept.nails .confirmation-mark{background:#6826a9;color:#fff;border-radius:50% 10px 50% 10px}
/* Beauty Collective: modular black and signal-yellow Swiss grid. */
body.concept.collective .simulated-checkout{background:#fff;color:#17202e}
body.concept.collective .checkout-heading h2{font-family:'Manrope',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.06em}
body.concept.collective .checkout-review{background:#f1d44e;border:3px solid #17202e}
body.concept.collective .checkout-panel{border:3px solid #17202e;background:#fff}
body.concept.collective .checkout-panel h3{text-transform:uppercase;font-family:'Manrope',sans-serif;font-weight:800}
body.concept.collective .checkout-panel fieldset label{border:2px solid #17202e;background:#fff;color:#17202e;border-radius:0}
body.concept.collective .checkout-panel fieldset label:has(input:checked){background:#f1d44e}
body.concept.collective .checkout-panel button[type=submit]{background:#17202e;border:2px solid #17202e;color:#fff;text-transform:uppercase;border-radius:0;letter-spacing:.08em}
body.concept.collective .checkout-confirmation{background:#fff;color:#17202e;border:6px solid #17202e;border-top:18px solid #f1d44e}
body.concept.collective .checkout-confirmation h2{text-transform:uppercase;font-family:'Manrope',sans-serif;font-weight:800}
body.concept.collective .confirmation-mark{background:#f1d44e;color:#17202e;border:2px solid #17202e}
@media(max-width:520px){
 body.concept .checkout-facts,body.concept .confirmation-facts{grid-template-columns:minmax(85px,38%) minmax(0,1fr);gap:11px 12px}
 body.concept .checkout-review,body.concept .checkout-panel{padding:20px}
 body.concept .checkout-panel fieldset label{padding:15px 11px}
 body.concept .checkout-confirmation{padding:30px 22px}
 body.concept.nails .checkout-panel{box-shadow:none}
}
