@charset "UTF-8";
@font-face{font-family:Bodoni;src:url('assets/bodoni-moda.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Bodoni;src:url('assets/bodoni-moda-italic.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}
:root{--paper:#f6f2e9;--ivory:#f2eadc;--ink:#2b180f;--plum:#382921;--muted:#6b5d54;--line:#d1c6b9;--serif:Bodoni,Georgia,serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}p,h1,h2,h3,figure{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid #c99bba;outline-offset:7px}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:var(--ivory);color:var(--ink);padding:16px}.skip:focus{top:15px}
.header{position:absolute;z-index:2;top:0;left:0;width:100%;padding:27px 5.55%;display:flex;justify-content:center;align-items:center;color:var(--ink)}.wordmark{display:inline-flex;flex-direction:column;width:max-content;font:40px/1 var(--serif);letter-spacing:-1.7px}.wordmark small{font:10px/1 var(--sans);letter-spacing:7px;text-align:center;padding-left:7px;margin-top:13px}
.hero{position:relative;min-height:850px;background:#e4d6c5;color:var(--ink);padding:180px 5.55% 100px;isolation:isolate}.hero-image{position:absolute;inset:0;z-index:-1}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-copy{max-width:555px}.eyebrow{font-size:11px;line-height:1.7;font-weight:600;letter-spacing:2.8px}.hero .eyebrow{margin-bottom:28px}h1{font:106px/.91 var(--serif);letter-spacing:-4.8px;margin-bottom:30px}h1 em{color:var(--ink);font-weight:400}.description{font-size:17px;line-height:1.7;max-width:480px;color:var(--ink);margin-bottom:37px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:52px;min-width:264px;min-height:54px;padding:8px 0;background:transparent;border:0;border-bottom:1px solid currentColor;color:inherit;font:24px/1.4 var(--serif);letter-spacing:-.35px;transition:color .25s}.button img{width:21px;height:21px;filter:none;opacity:.9;transition:transform .25s}.button:hover img{transform:translateX(4px)}.micro{font:14px/1.7 var(--serif);color:#503c30;margin-top:14px}.micro>span{margin:0 3px}
.section{padding:76px 5.55%;max-width:1680px;margin:auto}.club{padding-top:50px;padding-bottom:93px}.section-rule{display:flex;align-items:center;gap:15px;margin-bottom:30px}.section-rule::after{content:"";height:1px;flex:1;background:#a59a9d}.club-introduction{display:grid;grid-template-columns:1fr 235px;gap:40px;align-items:start}h2{font:58px/1.13 var(--serif);letter-spacing:-2.3px;font-weight:400}h2 em{font-weight:400}.club-introduction h2{font-size:clamp(40px,4.1vw,65px);letter-spacing:-2.8px;white-space:nowrap}.tablet-break{display:none}.club-introduction>p{font-size:14px;line-height:1.7;color:var(--muted);padding-top:4px}.club-details{margin-top:67px;display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.focus-row{display:flex;gap:20px;padding-top:25px;border-top:1px solid var(--line)}.number{font:italic 18px var(--serif);color:#806472}.focus-row h3{font:25px/1.2 var(--serif);margin-bottom:13px;letter-spacing:-.6px}.focus-row p{font:14px/1.8 var(--sans);color:var(--muted);max-width:330px}
.waitlist{max-width:none;display:grid;grid-template-columns:1.25fr 1fr;gap:12%;padding:98px 8%;background:var(--plum);color:var(--paper)}.waitlist .eyebrow{margin-bottom:26px;color:#d9c6ce}.waitlist h2{font-size:clamp(43px,4.4vw,65px);margin-bottom:24px}.waitlist h2 em{color:#e5c8ce}.waitlist>div>p:not(.eyebrow){max-width:450px;font:15px/1.85 var(--sans);color:#e7dce2}.invitation{border-left:1px solid #74606d;padding-left:48px}.launch-date{font-size:11px;letter-spacing:3px;display:block;margin-bottom:27px}.invitation h3{font:30px/1.2 var(--serif);letter-spacing:-.8px;margin-bottom:15px}.invitation p{font-size:14px;line-height:1.85;color:#e7dce2;margin-bottom:26px}.invitation .micro{font:12px/1.8 var(--sans);margin-bottom:0;margin-top:16px}.invitation .button{max-width:280px;min-width:264px}.invitation .button img{filter:invert(1)}
.questions{display:grid;grid-template-columns:1fr 1.2fr;gap:9%;padding:96px 8%}.questions .eyebrow{margin-bottom:25px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:25px 6px 25px 0;font-size:14px;line-height:1.5}summary::marker{font-size:10px;color:#775363}details p{font-size:14px;line-height:1.85;padding:0 20px 25px 16px;color:var(--muted)}details a{text-decoration:underline;text-underline-offset:3px}
footer{padding:45px 5.55% 25px;border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:42px}.footer-top .wordmark{font-size:32px}.footer-top .wordmark small{font-size:8px;letter-spacing:5px}.footer-top p{font:italic 20px var(--serif);color:var(--muted)}.footer-top>a:last-child{font-size:14px;border-bottom:1px solid var(--line);padding:12px 0}.footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:25px;color:var(--muted);font:11px/1.7 var(--sans)}footer a:hover{text-decoration:underline;text-underline-offset:5px}
@media(min-width:1650px){.hero{padding-left:calc((100vw - 1480px)/2);min-height:960px;padding-top:210px}.hero-copy{max-width:650px}h1{font-size:130px}.description{font-size:18px}.header{padding-left:calc((100vw - 1480px)/2);padding-right:calc((100vw - 1480px)/2)}}
@media(max-width:1180px){.hero{min-height:760px;padding-top:160px}h1{font-size:94px}.hero-copy{max-width:450px}.description{font-size:16px;max-width:385px}.desktop-break{display:none}.hero-image>img{object-position:56% center}.club-introduction{grid-template-columns:1fr 240px}.club-introduction h2{white-space:normal;font-size:52px}.tablet-break{display:block}.club-details{gap:28px}.waitlist{gap:7%;padding:80px 6%}.invitation{padding-left:32px}.questions{padding:80px 6%}}
@media(max-width:800px){.hero{min-height:710px;padding-top:156px}.hero-image>img{object-position:48% center;opacity:.35}.hero-copy{max-width:480px}h1{font-size:90px}.header{padding:28px 5.55%}.wordmark{font-size:33px}.club-introduction{grid-template-columns:1fr;gap:25px}.club-introduction>p{max-width:500px}.club-introduction h2{font-size:54px}.club-details{gap:25px;grid-template-columns:1fr;margin-top:42px}.focus-row p{max-width:550px}.focus-row h3{font-size:27px}.waitlist{grid-template-columns:1fr;gap:40px}.invitation{border-left:0;border-top:1px solid #74606d;padding:32px 0 0}.questions{grid-template-columns:1fr;gap:35px}.footer-top p{max-width:190px}.footer-bottom{font-size:10px}}
@media(max-width:560px){.header{height:100px;padding:24px 6%;justify-content:center;align-items:center}.wordmark{font-size:28px;letter-spacing:-1px}.wordmark small{font-size:8px;letter-spacing:5px;margin-top:10px}.hero{padding:340px 6% 48px;min-height:0;background:#f2e9dd}.hero-image{height:388px;top:95px}.hero-image>img{opacity:1;object-fit:cover;object-position:85% center}.hero-copy{position:relative;background:#f2e9dd;padding-top:26px}.hero .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:23px}h1{font-size:clamp(57px,16.2vw,84px);letter-spacing:-3px;line-height:.98;margin-bottom:27px}.description{font-size:15px;line-height:1.75;margin-bottom:28px;max-width:345px}.button{font-size:23px;min-height:54px;min-width:254px;width:auto;max-width:100%;padding:8px 0}.micro{font-size:12px;margin-top:16px}.section{padding:52px 6%}.section-rule{margin-bottom:25px;font-size:10px}.club-introduction{gap:22px}.club-introduction h2{font-size:43px;letter-spacing:-1.8px}.club-introduction>p{font-size:14px}.club-details{margin-top:40px}.focus-row{padding-top:22px;gap:20px}.focus-row h3{font-size:24px}.waitlist{padding:60px 6%;gap:35px}.waitlist h2{font-size:44px;letter-spacing:-1.8px}.waitlist>div>p:not(.eyebrow){font-size:14px}.waitlist .eyebrow{font-size:10px}.invitation .button{max-width:none}.questions h2{font-size:45px}.questions .eyebrow{font-size:10px;margin-bottom:20px}summary{font-size:14px;line-height:1.7;padding:22px 0}.footer-top{flex-wrap:wrap;gap:30px;align-items:flex-start}.footer-top .wordmark{font-size:28px}.footer-top p{order:3;max-width:none;flex-basis:100%;font-size:18px}.footer-top>a:last-child{font-size:12px}.footer-bottom{flex-direction:column;gap:12px;font-size:10px}footer{padding:35px 6% 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(min-width:1181px){.club-introduction h2 em{margin-left:.12em}}
@media(max-width:560px){.hero-image{height:245px}}
@media(max-width:360px){.wordmark{font-size:25px}h1{font-size:57px}}

/* Main brand website and shared page navigation. */
@font-face{font-family:Allura;src:url('assets/allura-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.header{flex-direction:column;gap:25px;padding-top:28px;padding-bottom:20px}
.main-nav{display:flex;justify-content:center;gap:38px;align-items:center}
.main-nav a{display:flex;align-items:center;min-height:44px;font:14px/1.4 var(--sans);padding:6px 0;border-bottom:1px solid transparent}
.main-nav a:hover,.main-nav a[aria-current=page]{border-bottom-color:currentColor}
.home-page .hero{padding-top:230px;padding-bottom:70px;min-height:880px}
.home-page h1{margin-bottom:22px}
h1 .handwritten{font:400 1.38em/.78 Allura,cursive;letter-spacing:-2px;display:inline-block;padding:12px 18px 0 0}
.hero-club{margin-top:42px;max-width:360px}
.hero .hero-club .eyebrow{font-size:10px;letter-spacing:2.1px;margin-bottom:12px}
.hero-club .description{font-size:14px;line-height:1.7;margin-bottom:16px;max-width:340px}
.hero-club .micro{font-size:12px;margin-top:12px}
.brand-intro{padding-top:76px;padding-bottom:80px}
.editorial-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:start}
.prose p,.business-paths p:not(.eyebrow),.contact-grid p:not(.eyebrow){font:15px/1.85 var(--sans);color:var(--muted);max-width:540px;margin-bottom:22px}
.prose .button{margin-top:15px}
.business-paths{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#eae1d5;max-width:none;padding-top:76px;padding-bottom:80px}
.business-paths article+article{border-left:1px solid #c8baaa;padding-left:16%}
.business-paths .eyebrow{margin-bottom:24px;font-size:10px}
.business-paths h2{font-size:52px;margin-bottom:22px}
.business-paths .button{min-width:240px;font-size:22px}
.inner-page .header{position:relative;background:#f2e9dd}
.page-intro{padding-top:80px;padding-bottom:70px;background:#f2e9dd;max-width:none}
.page-intro .eyebrow{margin-bottom:32px}
.page-intro h1{font-size:92px;line-height:1.02;letter-spacing:-4px;margin-bottom:30px}
.page-deck{font-size:18px;line-height:1.7;max-width:570px}
.page-intro .button{margin-top:28px}
.biography{padding-top:70px;padding-bottom:90px}
.text-link{display:block;width:fit-content;max-width:100%;font-size:14px;line-height:1.7;text-decoration:underline;text-underline-offset:6px;margin-top:26px;min-height:44px;padding-top:10px}
.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;padding-top:70px;padding-bottom:90px}
.contact-grid .eyebrow{margin-bottom:25px;font-size:10px}
.contact-card h2{margin-bottom:26px}
.email-address{display:block;font-size:14px;overflow-wrap:anywhere;margin-top:22px;min-height:44px;padding-top:10px}
.contact-grid .contact-note{font-size:12px;margin-top:10px}
.contact-aside{border-left:1px solid var(--line);padding-left:15%}
.contact-aside h3{font:30px/1.2 var(--serif);margin-bottom:20px;letter-spacing:-.8px}
.aside-club{border-top:1px solid var(--line);margin-top:35px;padding-top:35px}
@media(max-width:1180px){.main-nav{gap:28px}.home-page .hero{padding-top:220px}.editorial-grid{gap:8%}.business-paths h2{font-size:45px}.business-paths article+article{padding-left:12%}}
@media(max-width:800px){.header{gap:18px}.main-nav{gap:22px}.main-nav a{font-size:12px}.home-page .hero{padding-top:205px;min-height:840px}.editorial-grid{grid-template-columns:1fr;gap:30px}.business-paths{gap:7%}.business-paths h2{font-size:40px}.business-paths .button{min-width:0;width:100%;gap:15px}.contact-grid{gap:7%}.contact-aside{padding-left:10%}.page-intro h1{font-size:80px}.prose p{max-width:620px}}
@media(max-width:560px){.header{height:190px;padding:23px 6% 13px;gap:16px;justify-content:flex-start}.main-nav{display:grid;grid-template-columns:auto auto;gap:0 22px;width:100%;max-width:380px;justify-content:center}.main-nav a{font-size:11px;min-height:36px;justify-content:center;padding:7px 0}.home-page .hero{padding:435px 6% 48px;min-height:0}.home-page .hero-image{top:190px;height:245px}.home-page h1{font-size:clamp(57px,16.2vw,84px);margin-bottom:20px}.home-page .hero-copy{padding-top:35px}h1 .handwritten{letter-spacing:-1px;padding-top:8px}.hero-club{margin-top:30px}.hero .hero-club .eyebrow{font-size:9px;margin-bottom:10px}.hero-club .description{font-size:13px;max-width:310px;margin-bottom:16px}.hero-club .micro{font-size:11px}.brand-intro{padding:50px 6%}.editorial-grid h2{font-size:43px}.business-paths{grid-template-columns:1fr;gap:40px}.business-paths article+article{border-left:0;border-top:1px solid #c8baaa;padding:40px 0 0}.business-paths .button{width:auto;min-width:244px}.business-paths h2{font-size:43px}.inner-page .header{height:190px}.page-intro{padding:50px 6%}.page-intro h1{font-size:64px;letter-spacing:-2.5px}.page-intro .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:25px}.page-deck{font-size:16px}.biography{padding:50px 6%}.prose p,.business-paths p:not(.eyebrow),.contact-grid p:not(.eyebrow){font-size:14px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-aside{border-left:0;border-top:1px solid var(--line);padding:35px 0 0}.contact-card h2{font-size:44px}.main-nav a:focus-visible{outline-offset:2px}}
@media(max-width:360px){.main-nav{column-gap:14px}.main-nav a{font-size:10px}.home-page h1{font-size:57px}.page-intro h1{font-size:58px}}

.phone-number{display:block;font:24px/1.6 var(--serif);min-height:44px;margin:5px 0 12px;width:fit-content}.phone-number:hover{text-decoration:underline;text-underline-offset:6px}
.home-page .header{background:transparent;border:0}
.home-page .hero-image::after{content:"";position:absolute;inset:0 0 auto;height:310px;background:linear-gradient(to bottom,rgba(242,233,221,.97),rgba(242,233,221,.88) 45%,rgba(242,233,221,0));pointer-events:none}
@media(max-width:560px){.home-page .hero-image::after{height:60px;background:linear-gradient(to bottom,#f2e9dd,rgba(242,233,221,0))}}
@media(max-width:560px){.main-nav a{font-size:12px;min-height:44px}.header{padding-top:21px;gap:12px}}
@media(max-width:360px){.main-nav a{font-size:11px}}

/* Separate booking and enquiry journeys. */
.enquiry-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:10%;padding-top:70px;padding-bottom:90px}.form-heading{font-size:48px;margin-bottom:18px}.form-intro{font-size:14px;line-height:1.8;color:var(--muted);max-width:500px;margin-bottom:38px}.form-intro a,.form-note a{text-decoration:underline;text-underline-offset:3px}.enquiry-form{max-width:720px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.form-field{display:flex;flex-direction:column;margin-bottom:28px}.form-field label{font-size:12px;letter-spacing:.3px;margin-bottom:10px}.form-field label span{color:var(--muted);font-size:11px}.form-field input,.form-field select,.form-field textarea{width:100%;border:0;border-bottom:1px solid #8f8173;border-radius:0;background:transparent;padding:11px 2px;font:16px/1.5 var(--sans);color:var(--ink);min-height:48px}.form-field select{padding-right:20px}.form-field textarea{resize:vertical;min-height:140px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid #8f6c53;outline-offset:5px}.form-note{font:12px/1.85 var(--sans);color:var(--muted);max-width:510px;margin:0 0 26px}.enquiry-form .button{cursor:pointer}.enquiry-aside{border-left:1px solid var(--line);padding-left:14%}.enquiry-aside .eyebrow{font-size:10px;margin-bottom:25px}.enquiry-aside h2{font-size:48px;margin-bottom:24px}.enquiry-aside .email-address{margin:12px 0 20px}.enquiry-aside .phone-number{font-size:30px}.form-trap{display:none}.booking-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:70px;padding-bottom:90px}.booking-intro .eyebrow{margin-bottom:25px}.booking-intro h2{font-size:50px}.booking-unavailable{border-left:1px solid var(--line);padding-left:14%}.booking-unavailable h3{font:32px/1.3 var(--serif);margin-bottom:20px}.booking-unavailable p{font:15px/1.85 var(--sans);color:var(--muted);margin-bottom:22px}.booking-unavailable .button{margin-top:20px}.confirmation{min-height:65vh}.confirmation .form-note{margin-top:24px}
@media(max-width:800px){.enquiry-layout{gap:6%;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.form-row{grid-template-columns:1fr;gap:0}.enquiry-aside{padding-left:10%}.enquiry-aside h2{font-size:40px}.booking-intro h2{font-size:42px}}
@media(max-width:560px){.main-nav{display:flex;flex-wrap:wrap;gap:0 20px;max-width:340px}.main-nav a{font-size:12px;min-height:44px}.header{height:190px}.enquiry-layout,.booking-section{grid-template-columns:1fr;gap:50px;padding:50px 6%}.enquiry-aside,.booking-unavailable{border-left:0;border-top:1px solid var(--line);padding:35px 0 0}.form-heading,.enquiry-aside h2{font-size:42px}.form-intro{margin-bottom:30px}.form-note{font-size:12px}.enquiry-aside .phone-number{font-size:28px}}

@media(max-width:560px){.enquiries-page .page-intro h1{font-size:clamp(48px,16vw,64px)}}

.contact-fallback-note{margin-top:26px}

/* Blend section backgrounds without hiding or animating the content. */
:root{--section-fade:clamp(80px,10vw,160px)}
.home-page .hero::after{content:"";position:absolute;inset:auto 0 0;height:var(--section-fade);background:linear-gradient(to bottom,rgba(246,242,233,0),var(--paper));pointer-events:none;z-index:0}
.home-page .hero-copy{position:relative;z-index:1;background:transparent}
.business-paths{background:linear-gradient(to bottom,var(--paper),#eae1d5 var(--section-fade),#eae1d5 calc(100% - var(--section-fade)),var(--paper))}
.page-intro{background:linear-gradient(to bottom,#f2e9dd 0%,#f2e9dd 65%,var(--paper) 100%)}
.waitlist{background:linear-gradient(to bottom,var(--paper),rgba(246,242,233,.92) 15%,rgba(246,242,233,.74) 35%,rgba(246,242,233,.26) 65%,rgba(246,242,233,.08) 85%,rgba(246,242,233,0)) top/100% var(--section-fade) no-repeat,linear-gradient(to top,var(--paper),rgba(246,242,233,.92) 15%,rgba(246,242,233,.74) 35%,rgba(246,242,233,.26) 65%,rgba(246,242,233,.08) 85%,rgba(246,242,233,0)) bottom/100% var(--section-fade) no-repeat,var(--plum);padding-top:calc(var(--section-fade) + 64px);padding-bottom:calc(var(--section-fade) + 64px)}
footer{border-top:0}
.section-rule::after{background:linear-gradient(to right,rgba(165,154,157,.55),rgba(165,154,157,0))}
@media(max-width:560px){
 .home-page .hero::after{height:64px}
 .home-page .hero-image::before{content:"";position:absolute;inset:auto 0 0;height:64px;background:linear-gradient(to bottom,rgba(242,233,221,0),#f2e9dd);pointer-events:none}
 .waitlist{padding-top:calc(var(--section-fade) + 40px);padding-bottom:calc(var(--section-fade) + 40px)}
 .business-paths article+article{border-top:0}
}

/* Gallery introduction; genuine portfolio images will be added when supplied. */
.gallery-introduction{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;padding-top:70px;padding-bottom:100px}.gallery-introduction .eyebrow{margin-bottom:26px}.gallery-introduction .prose{padding-top:10px}.gallery-introduction h2{font-size:54px}
@media(max-width:800px){.gallery-introduction{grid-template-columns:1fr;gap:30px}.gallery-introduction h2{font-size:46px}}
@media(max-width:560px){.gallery-introduction{padding:50px 6% 65px}.gallery-introduction h2{font-size:43px}.booking-unavailable .button{font-size:21px;min-width:0;width:100%;gap:18px}}

/* Approved portrait and biography. The source photograph is displayed uncropped. */
.mandesa-profile{padding-top:55px;padding-bottom:90px;background:linear-gradient(to bottom,#f2e9dd,#f2e9dd 35%,var(--paper) 100%)}.profile-heading{margin-bottom:58px}.profile-heading .eyebrow{margin-bottom:25px}.profile-heading h1{font-size:82px;margin-bottom:22px}.profile-heading .page-deck{font-size:16px}.profile-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:10%;align-items:start;max-width:1280px}.profile-portrait{max-width:480px;width:100%}.profile-portrait img{display:block;width:100%;height:auto}.profile-story{padding-top:8px}.profile-story h2{font-size:48px;margin-bottom:30px}.profile-story p{max-width:590px}.profile-story .button{font-size:23px}.profile-story .text-link{margin-top:18px}
@media(max-width:900px){.profile-layout{gap:7%;grid-template-columns:minmax(0,.85fr) minmax(0,1fr)}.profile-story h2{font-size:40px}.profile-story p{font-size:14px}.profile-heading h1{font-size:72px}}
@media(max-width:640px){.mandesa-profile{padding-top:40px;padding-bottom:65px}.profile-heading{margin-bottom:35px}.profile-heading h1{font-size:clamp(52px,12vw,70px);letter-spacing:-2px}.profile-heading .page-deck{font-size:14px}.profile-layout{grid-template-columns:1fr;gap:40px}.profile-portrait{max-width:420px}.profile-story{padding-top:0}.profile-story h2{font-size:43px;margin-bottom:24px}.profile-story .button{font-size:22px;gap:24px;min-width:0;width:100%;max-width:320px}}

/* Photographs are self-hosted originals; keep complete compositions and real nail detail. */
.gallery-page .page-intro{padding-top:55px;padding-bottom:55px}.gallery-page .page-intro h1{font-size:82px}.portfolio{padding-top:20px;padding-bottom:45px;max-width:1320px}.portfolio-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}.portfolio-heading h2{font-size:46px}.portfolio-heading p{max-width:340px;font:14px/1.8 var(--sans);color:var(--muted)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 30px;align-items:start}.portfolio-image{display:block;width:100%;padding:0;border:0;background:#e9e1d6;cursor:zoom-in}.portfolio-image img{display:block;width:100%;height:auto}.portfolio-image:focus-visible{outline:2px solid var(--ink);outline-offset:6px}.portfolio-card figcaption{display:flex;gap:14px;align-items:baseline;padding-top:16px;font:23px/1.35 var(--serif);letter-spacing:-.5px}.portfolio-number{font:10px/1.5 var(--sans);letter-spacing:1px;color:var(--muted)}.portfolio-invitation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12%;align-items:center;max-width:1060px;padding-top:35px;padding-bottom:100px}.portfolio-invitation .eyebrow{font-size:10px;margin-bottom:25px}.portfolio-invitation h2{font-size:51px;margin-bottom:26px}.portfolio-invitation .button{font-size:22px;min-width:0;width:100%;gap:18px}.gallery-lightbox{border:0;padding:24px;background:var(--paper);color:var(--ink);max-width:min(90vw,760px);max-height:94dvh;overflow:auto}.gallery-lightbox::backdrop{background:rgba(25,17,12,.82)}.gallery-close{display:flex;align-items:center;justify-content:end;gap:14px;margin:0 0 18px auto;padding:4px 0;min-height:44px;background:none;border:0;color:inherit;font:14px var(--sans);cursor:pointer}.gallery-close span{font-size:28px}.gallery-close:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.gallery-enlarged{display:block;max-width:100%;width:auto;max-height:68dvh;height:auto;margin:auto;object-fit:contain}.gallery-caption{text-align:center;font:23px/1.4 var(--serif);padding-top:18px}body:has(.gallery-lightbox[open]){overflow:hidden}
@media(max-width:900px){.portfolio-grid{gap:35px 24px;grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-heading{align-items:start}.portfolio-card figcaption{font-size:22px}.portfolio-invitation{gap:8%}.portfolio-invitation h2{font-size:43px}}
@media(max-width:560px){.gallery-page .page-intro{padding-top:38px;padding-bottom:35px}.gallery-page .page-intro h1{font-size:64px}.portfolio{padding-top:10px}.portfolio-heading{display:block;margin-bottom:30px}.portfolio-heading h2{font-size:40px;margin-bottom:18px}.portfolio-heading p{font-size:14px}.portfolio-grid{grid-template-columns:1fr;gap:35px}.portfolio-card{max-width:420px;width:100%;margin-inline:auto}.portfolio-card figcaption{font-size:24px;padding-top:13px}.portfolio-invitation{grid-template-columns:1fr;gap:38px;padding-top:0;padding-bottom:65px}.portfolio-invitation .prose{max-width:420px}.gallery-lightbox{padding:15px;max-width:94vw}.gallery-enlarged{max-height:65dvh}}

/* The Club shares the main site's champagne-to-ivory background. */
.club-page .micro{color:var(--muted)}
.club-page .waitlist{background:var(--paper);color:var(--ink)}
.club-page .waitlist .eyebrow,.club-page .launch-date{color:var(--muted)}
.club-page .waitlist h2 em{color:var(--ink)}
.club-page .waitlist>div>p:not(.eyebrow),.club-page .invitation p{color:var(--muted)}
.club-page .invitation{border-color:var(--line)}
.club-page .invitation .button img{filter:none}

/* Keep the profile actions aligned with the page content. */
.profile-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:30px}
.profile-actions .button{margin-top:0;width:100%;max-width:360px}
.profile-actions .text-link{margin-top:0;padding-top:10px}
.profile-story>p:last-of-type{margin-bottom:0}
@media(max-width:640px){
 .mandesa-page .profile-actions{margin-top:26px}
 .mandesa-page .profile-actions .button{max-width:none;gap:16px}
 .mandesa-page .profile-actions .button img{flex:none}
 .mandesa-page .mandesa-profile{padding-bottom:32px}
}

/* A shared, centred signature across every page. */
footer{padding:54px 5.55% 28px;text-align:center}
.footer-top{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding-bottom:28px}
.footer-top .wordmark{order:0;margin-inline:auto}
.footer-top p{order:1;flex-basis:auto;max-width:none;line-height:1.5}
.footer-top>a:last-child{order:2;min-height:44px;padding:12px 4px}
.footer-bottom{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 28px;padding-top:22px;font-size:11px;line-height:1.7}
.footer-bottom>span{flex-basis:100%;margin-bottom:4px}
.footer-bottom>a{display:flex;align-items:center;justify-content:center;min-height:44px}
@media(max-width:640px){
 footer{padding:34px 6% 24px}
 .footer-top{gap:20px;padding-bottom:26px}
 .footer-top .wordmark{font-size:28px;letter-spacing:-1px}
 .footer-top p{font-size:18px}
 .footer-top>a:last-child{font-size:13px}
 .footer-bottom{gap:4px 24px;padding-top:20px}
}
