@font-face{font-family:Montserrat;src:url('/assets/montserrat.woff2') format('woff2');font-display:swap}@font-face{font-family:'DM Sans';src:url('/assets/dm-sans.woff2') format('woff2');font-display:swap}@font-face{font-family:Lora;src:url('/assets/lora.woff2') format('woff2');font-display:swap}:root{--cream:#FFF8FB;--ink:#1C1C1E;--rose:#FFD0E2;--pink:#E2007A;--line:#FFD0E2;--paper:#FFFFFF;--navy:#0B3C5D;--pink-hover:#C7006B}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.7 'DM Sans',sans-serif}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Lora,Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(48px,6.2vw,94px);margin-bottom:26px}h2{font-size:clamp(38px,4.4vw,66px);margin-bottom:27px}h3{font:600 20px/1.4 Montserrat,sans-serif;letter-spacing:-.02em}p{margin-bottom:22px}:root{--content-max:1300px;--content-width:90%;--reading-max:820px}.wrap{width:var(--content-width);max-width:var(--content-max);margin-inline:auto}.wrap.prose,.wrap.faq{max-width:var(--content-max)}.wrap.prose>p,.wrap.prose>h3,.faq details>p{max-width:var(--reading-max)}.wrap iframe{width:100%;max-width:100%;min-width:0}.split>*,.welcome>*{min-width:0}.eyebrow{display:block;font:600 11px/1.5 Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.19em;margin-bottom:25px}.muted{color:#1C1C1E}.announcement{background:var(--ink);color:var(--cream);text-align:center;font-size:12px;padding:9px 16px;letter-spacing:.035em}.announcement a{text-decoration:none}.announcement span{margin-left:18px;color:#FFD0E2;white-space:nowrap}.site-header{border-bottom:1px solid var(--line);background:var(--cream)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:108px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;flex-shrink:0}.brand img{height:76px;width:auto;object-fit:contain;flex-shrink:0}.brand strong{font:500 23px/1.2 Lora,Georgia,serif;letter-spacing:-.03em}.brand small{display:block;font:9px/2 Montserrat,sans-serif;letter-spacing:.2em;text-transform:uppercase}.nav{display:flex;align-items:center;gap:28px}.nav a{font-size:12px;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--pink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;padding:15px 23px;border:1px solid var(--ink);background:var(--ink);color:var(--cream);text-decoration:none;font:500 12px/1.5 Montserrat,sans-serif;transition:background .2s,transform .2s}.button:hover{background:#C7006B;transform:translateY(-2px)}.button.light{background:transparent;color:var(--ink)}.button.light:hover{background:#FFF8FB}.button.pink{background:var(--rose);border-color:var(--rose);color:var(--ink)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:6%;padding-block:64px 66px;align-items:center}.hero-copy{padding-block:16px}.hero h1 em{color:var(--pink);font-weight:400}.hero .intro{max-width:430px;font-size:16px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}.text-link{font-size:12px;font-weight:600}.hero-image{position:relative;padding:0 0 34px 0}.hero-image>img{width:100%;height:575px;object-fit:cover;border-radius:48% 48% 0 0}.image-caption{font-size:10px;letter-spacing:.09em;text-transform:uppercase;position:absolute;bottom:0;right:0}.seal{position:absolute;bottom:10px;left:-36px;width:123px;height:123px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--rose);border:7px solid var(--cream);text-align:center;font:italic 19px/1.25 Lora,serif;transform:rotate(-10deg)}.intro-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:22px 0;font:500 10px/1.5 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;gap:20px}.intro-strip span::before{content:'✦';margin-right:18px;color:var(--pink)}.section{padding-block:100px}.welcome{display:grid;grid-template-columns:.78fr 1.35fr;gap:13%;align-items:start}.welcome .dragon{width:155px;margin:30px auto 0}.welcome h2{max-width:800px}.welcome .prose{columns:2;column-gap:35px;font-size:15px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:38px}.section-head h2{margin:0}.experiences{background:#FFF8FB}.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.experience-card{text-decoration:none;display:flex;flex-direction:column;min-width:0}.experience-card .photo{overflow:hidden;margin-bottom:24px}.experience-card img{width:100%;height:310px;object-fit:cover;transition:transform .45s}.experience-card:hover img{transform:scale(1.035)}.experience-card .number{font:10px Montserrat,sans-serif;color:var(--pink);letter-spacing:.12em}.experience-card h3{font:30px/1.2 Lora,serif;margin:12px 0}.experience-card p{font-size:14px;max-width:none}.experience-card .go{margin-top:auto;display:flex;justify-content:space-between;border-bottom:1px solid #FFD0E2;padding-bottom:12px;font-size:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.split .feature-image{width:100%;max-height:610px;object-fit:cover}.split p{font-size:16px}.membership-panel{background:var(--ink);color:var(--cream)}.membership-panel .eyebrow{color:#FFD0E2}.membership-panel .feature-image{aspect-ratio:1;object-fit:cover}.membership-panel ul{padding:0;list-style:none;margin:28px 0}.membership-panel li{padding:10px 0;border-bottom:1px solid #FFD0E2;font-size:14px}.membership-panel li::before{content:'✦';color:var(--rose);margin-right:15px}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.quote{margin:0;padding-top:25px;border-top:1px solid var(--line)}.quote blockquote{font:22px/1.5 Lora,Georgia,serif;margin:0 0 22px}.quote figcaption{font:10px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.14em}.visit{background:#FFF8FB}.hours{margin:25px 0}.hours div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #FFD0E2;font-size:13px}.visit-card{border:1px solid #FFD0E2;padding:42px;position:relative}.visit-card img{width:100px;margin-bottom:25px}.visit-card address{font-style:normal;font-size:23px;line-height:1.6;font-family:Lora,serif}.visit-card p{font-size:14px}.site-footer{padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:65px;padding-bottom:45px}.footer-grid h2{font-size:37px}.footer-grid p,.footer-grid a{font-size:13px}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;font-size:10px;gap:16px}.page-hero{padding-block:65px 80px}.page-hero h1{font-size:clamp(46px,5.8vw,84px)}.breadcrumb{font-size:11px;margin-bottom:35px}.page-hero .feature-image{height:500px;object-fit:cover;width:100%;border-radius:45% 45% 0 0}.prose{max-width:820px}.prose p{font-size:16px}.benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:0 60px}.benefit{padding:28px 0;border-top:1px solid var(--line)}.benefit p{font-size:15px;margin-bottom:0}.benefit h3{font-family:Lora,serif;font-size:27px}.faq{max-width:900px;margin-inline:auto}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font:500 18px/1.5 Montserrat,sans-serif}details p{font-size:15px;margin:20px 0 0}.cta-band{padding:65px 0;background:var(--rose)}.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band h2{font-size:44px;max-width:620px;margin:0}.policy{font-size:14px}.policy h3{margin-top:30px}.skip-link{position:absolute;left:10px;top:-100px;background:var(--ink);color:white;padding:12px;z-index:10}.skip-link:focus{top:10px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:40px}.service-list article{border-top:1px solid var(--line);padding-top:25px}.service-list p{font-size:15px}.service-list h3{font:30px Lora,serif}.page-note{padding:20px;border-left:3px solid var(--pink);font-size:14px;background:#FFF8FB}.fade-in{animation:rise .6s ease-out both}@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(min-width:1500px){.hero{gap:9%}}@media(max-width:1050px){.nav{gap:17px}.nav a{font-size:11px}.brand strong{font-size:20px}.brand img{width:auto;height:65px}.hero-image>img{height:480px}.hero{gap:5%}.welcome{gap:7%}.section{padding-block:75px}}@media(max-width:780px){.nav-wrap{min-height:88px;flex-wrap:wrap;gap:0;padding-block:10px}.brand img{height:65px;width:auto}.menu-toggle{display:block;background:transparent;border:1px solid var(--ink);padding:9px 14px;color:var(--ink);font:12px 'DM Sans',sans-serif}.nav{display:flex;width:100%;flex-wrap:wrap;padding-block:18px;gap:18px}.js .nav{display:none}.js .nav.open{display:flex}.nav a{font-size:13px}.nav .button{padding:10px 15px}.hero{grid-template-columns:1fr;padding-block:35px 45px;gap:35px}.hero h1{max-width:570px;font-size:clamp(51px,10.2vw,76px)}.hero-image{margin-left:25px}.hero-image>img{height:450px}.seal{width:108px;height:108px;left:-25px}.intro-strip{flex-wrap:wrap;justify-content:center;font-size:9px;gap:14px}.intro-strip span::before{margin-right:10px}.welcome,.split{grid-template-columns:1fr;gap:38px}.welcome .dragon{display:none}.welcome .prose{columns:1}.section{padding-block:65px}.experience-grid{grid-template-columns:1fr;gap:38px}.experience-card img,.experience-card:first-child img{height:330px}.experience-card p{max-width:none}.section-head{align-items:start;flex-direction:column}.quotes{grid-template-columns:1fr;gap:30px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.page-hero{padding-block:35px 55px}.page-hero .feature-image{height:420px}.benefits,.service-list{grid-template-columns:1fr;gap:0}.service-list{gap:30px}.cta-band .wrap{flex-direction:column;align-items:start}.cta-band h2{font-size:39px}.visit-card{padding:30px}.hours div{font-size:12px}.announcement{font-size:10px}.announcement span{margin-left:8px}.hero-actions{gap:20px}.hero .intro{max-width:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.seal{font-size:15px;padding:12px;line-height:1.35}.welcome .prose p{break-inside:avoid}@font-face{font-family:Lora;src:url(/assets/lora.woff2) format('woff2');font-weight:400 700;font-display:swap}

@media(max-width:780px){.seal{font-size:13px;padding:10px}.hero-image>img{height:410px}}

.nav-wrap{padding-inline:0}.brand{margin:0;padding:0}.nav{margin-inline:0;padding-inline:0}@media(min-width:781px){.experience-card h3{min-height:2.4em}}

/* Client color-story preview: porcelain canvas, navy structure, magenta actions. */
h1,h2,h3,.brand strong,.text-link,.breadcrumb a,.experience-card .go{color:var(--navy)}
.button,.button.pink{background:var(--pink);border-color:var(--pink);color:#fff;border-radius:999px;font-weight:600}
.button:hover,.button.pink:hover{background:var(--pink-hover);border-color:var(--pink-hover);color:#fff}
.button.light{background:transparent;border-color:var(--navy);color:var(--navy)}
.button.light:hover{background:var(--rose);border-color:var(--navy);color:var(--navy)}
.nav a.button:hover,.nav a.button[aria-current=page]{color:#fff}
.text-link:hover,.breadcrumb a:hover{text-decoration:underline;color:var(--navy)}
.experiences{background:#fff}.membership-panel{background:var(--navy);color:var(--cream)}
.membership-panel h2{color:var(--cream)}.membership-panel .button{color:#fff}
.visit{background:var(--cream)}.visit-card{background:#fff}.cta-band{background:var(--rose)}
.site-footer{background:var(--ink);color:var(--cream)}.site-footer h2{color:var(--cream)}
.site-footer a:hover{color:var(--rose)}.footer-bottom{border-color:var(--rose)}
.page-note{background:var(--cream)}.experience-card .number{color:var(--pink-hover)}
@media(min-width:781px) and (max-width:1050px){.nav{gap:11px}.nav .button{padding:12px}.brand{gap:8px}.brand strong{font-size:18px}.brand img{height:55px}}
.shortcut-guide{max-width:820px}.shortcut-guide h1{font-size:clamp(44px,5vw,72px)}
.shortcut-preview{display:flex;align-items:center;gap:24px;margin:32px 0}.shortcut-preview img{width:96px;height:96px;border-radius:22px;border:1px solid var(--line)}
.shortcut-instructions{background:var(--paper);border:1px solid var(--line);padding:30px;margin:24px 0}.shortcut-instructions h2{font-size:30px}.shortcut-instructions li{margin-bottom:12px}
.shortcut-guide .button{cursor:pointer}.shortcut-note{font-size:14px}.shortcut-status{min-height:24px;font-size:14px}

.nav a:not(.button):hover,.nav a:not(.button)[aria-current=page]{color:var(--pink-hover)}
.lt-trap{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.lt-form label{display:block;font-size:14px;font-weight:600;margin:20px 0 8px}.lt-form .optional{font-weight:400;opacity:.75}
.lt-form input,.lt-form select,.lt-form textarea{display:block;width:100%;border:1px solid var(--navy);background:#fff;color:var(--ink);padding:14px;font:16px 'DM Sans',sans-serif;border-radius:0}
.lt-form textarea{resize:vertical;min-height:140px}.lt-form input:focus-visible,.lt-form select:focus-visible,.lt-form textarea:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.lt-form .button{margin-top:24px;cursor:pointer;min-height:48px}.lt-form button:disabled{opacity:.6;cursor:wait}
.form-status{font-size:14px;min-height:24px;margin:16px 0 0}.form-status.is-error{color:var(--pink)}.form-note{font-size:12px;margin:14px 0 0;opacity:.85}
.inquiry{align-items:start}.inquiry-card{background:var(--paper);border:1px solid var(--line);padding:40px}.inquiry-card h2{font-size:34px;letter-spacing:-.025em;margin-bottom:6px}.inquiry-card .button{width:100%}
.signup-form{margin-top:34px;max-width:520px}.signup-form .eyebrow{margin-bottom:10px;color:var(--rose)}.signup-intro{font-size:14px!important}
.signup-fields{display:grid;grid-template-columns:1fr 1.3fr;gap:0 14px}.site-footer .lt-form label{font-size:12px;margin-top:6px}
.site-footer .lt-form input{border-color:var(--rose)}.site-footer .form-status.is-error{color:var(--rose)}
@media(max-width:780px){.signup-fields{grid-template-columns:1fr}.inquiry-card{padding:25px}}
.schedule-lead{max-width:640px;margin-bottom:28px}.schedule-foot{font-size:14px;margin-top:22px}
.page-hero img[src="/assets/lauren-table.webp"]{object-position:50% 58%}
