:root{--ivory:#f6f1ea;--cream:#fcf9f5;--sand:#efe7db;--rose-bg:#f1e3dd;--rose-soft:#e7d2cb;--ink:#221b15;--ink-2:#3a2f27;--muted:#6c5e53;--line:#e4d9cc;--line-dark:rgba(255,255,255,0.14);--rose:#bb938a;--rose-deep:#9c6f67;--gold:#a98850;--gold-2:#c4a86c;--espresso:#1b1410;--espresso-2:#241b15;--radius:4px;--radius-lg:10px;--maxw:1240px;--ease:cubic-bezier(0.22,1,0.36,1);--font-display:Georgia,"Times New Roman",serif;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.001ms!important;transition-duration:.001ms!important}}body{font-family:var(--font-body);background:var(--ivory);color:var(--ink);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}::selection{background:var(--rose-soft);color:var(--ink)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;line-height:1.08;letter-spacing:-.01em;color:var(--ink)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.font-display{font-family:var(--font-display)}.italic{font-style:italic}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px}.section{padding:clamp(72px,11vw,150px) 0}.eyebrow{font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--rose-deep);display:inline-flex;align-items:center;gap:12px}.eyebrow.center:after,.eyebrow:before{content:"";width:28px;height:1px;background:var(--rose);display:inline-block}.eyebrow.center{justify-content:center}.section-head{max-width:640px}.section-head.center{margin:0 auto;text-align:center}.section-title{font-size:clamp(2rem,4.6vw,3.4rem);margin:22px 0 0}.section-title em{font-style:italic;color:var(--rose-deep)}.lead{color:var(--muted);font-size:clamp(1rem,1.4vw,1.18rem);margin-top:20px;line-height:1.75}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:17px 30px;border-radius:var(--radius);cursor:pointer;border:1px solid transparent;transition:all .4s var(--ease);white-space:nowrap}.btn svg{width:15px;height:15px;transition:transform .4s var(--ease)}.btn:hover svg{transform:translateX(4px)}.btn-dark{background:var(--ink);color:var(--cream)}.btn-dark:hover{background:var(--espresso);transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(34,27,21,.6)}.btn-gold{background:var(--gold);color:#fff}.btn-gold:hover{background:var(--gold-2);transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(169,136,80,.6)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ink);background:var(--ink);color:var(--cream)}#training .btn-ghost,.on-dark .btn-ghost{color:var(--cream);border-color:var(--line-dark)}#training .btn-ghost:hover,.on-dark .btn-ghost:hover{background:var(--cream);color:var(--ink);border-color:var(--cream)}.btn-light{background:rgba(255,255,255,.08);color:var(--cream);border-color:var(--line-dark);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.btn-light:hover{background:var(--cream);color:var(--ink)}.nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:all .45s var(--ease);padding:22px 0}.nav.scrolled{background:rgba(246,241,234,.86);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--line);padding:14px 0}.nav-inner{justify-content:space-between;gap:24px}.brand,.nav-inner{display:flex;align-items:center}.brand{line-height:1}.brand-logo{display:block;height:44px;width:auto}.brand-logo-footer{height:58px}.nav-links{display:flex;align-items:center;gap:34px}.nav-links a{font-size:13px;font-weight:450;letter-spacing:.05em;color:var(--ink-2);position:relative;padding:4px 0}.nav-links a:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:1px;background:var(--rose-deep);transition:width .4s var(--ease)}.nav-links a:hover:after{width:100%}.nav-cta{gap:18px}.nav-cta,.nav-phone{display:flex;align-items:center}.nav-phone{font-size:13px;font-weight:500;letter-spacing:.03em;color:var(--ink);gap:8px}.nav-phone svg{width:15px;height:15px;color:var(--rose-deep)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--ink);padding:9px;margin:-9px}.mobile-menu,.nav-toggle{align-items:center;justify-content:center}.mobile-menu{position:fixed;inset:0;z-index:99;background:var(--cream);display:flex;flex-direction:column;gap:6px;padding:40px}.mobile-menu a{font-family:var(--font-display);font-size:30px;padding:10px;color:var(--ink)}.mobile-menu .btn{margin-top:24px;color:var(--cream);font-family:var(--font-body);font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:17px 30px}.hero{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1.05fr 1fr}.hero,.hero-copy{position:relative}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:140px clamp(28px,6vw,90px) 80px;background:var(--cream)}.hero-copy h1{font-size:clamp(2.7rem,5.6vw,4.6rem);margin:28px 0 0;letter-spacing:-.02em}.hero-copy h1 em{font-style:italic;color:var(--rose-deep)}.hero-sub{color:var(--muted);font-size:clamp(1rem,1.5vw,1.18rem);margin-top:26px;max-width:30em;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:40px}.hero-rating{display:inline-flex;align-items:center;gap:14px;margin-top:44px;padding-top:30px;border-top:1px solid var(--line)}.stars{display:inline-flex;gap:2px;color:var(--gold)}.stars svg{width:17px;height:17px}.hero-rating .rt{font-size:14px;color:var(--muted)}.hero-rating .rt b{color:var(--ink);font-weight:600}.hero-media{position:relative;overflow:hidden;background:var(--sand)}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(252,249,245,.5),rgba(252,249,245,0) 22%)}.hero-badge{position:absolute;left:32px;bottom:32px;z-index:3;background:rgba(27,20,16,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--cream);padding:18px 24px;border-radius:var(--radius-lg);display:flex;align-items:center;gap:16px}.hero-badge .n{font-family:var(--font-display);font-size:30px;line-height:1;color:var(--gold-2)}.hero-badge .l{font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.85;line-height:1.4}.scroll-cue{position:absolute;left:clamp(28px,6vw,90px);bottom:30px;font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px}.scroll-cue:after{content:"";width:40px;height:1px;background:var(--rose);animation:cue 2.4s var(--ease) infinite;transform-origin:left}@keyframes cue{0%,to{transform:scaleX(.3);opacity:.5}50%{transform:scaleX(1);opacity:1}}.marquee{background:var(--ink);color:var(--cream);padding:22px 0;overflow:hidden;white-space:nowrap}.marquee-track{display:inline-flex;gap:0;animation:scroll 30s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track span{font-family:var(--font-display);font-style:italic;font-size:21px;padding:0 30px;opacity:.92}.marquee-track span.dot{color:var(--gold-2);font-style:normal}@keyframes scroll{to{transform:translateX(-50%)}}.intro-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(40px,7vw,110px);gap:clamp(40px,7vw,110px);align-items:center}.intro-figure{position:relative}.intro-figure .img-frame{aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden}.intro-figure .img-frame img{width:100%;height:100%;object-fit:cover}.intro-figure .img-frame.small{position:absolute;width:46%;aspect-ratio:1/1;right:-22px;bottom:-34px;border:8px solid var(--ivory);border-radius:var(--radius-lg)}.intro-body p{color:var(--muted);margin-top:22px;font-size:1.05rem}.intro-sign{font-family:var(--font-display);font-style:italic;font-size:1.5rem;color:var(--rose-deep);margin-top:26px}.intro-sign small{display:block;font-style:normal;font-family:var(--font-body);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:6px}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:24px;gap:24px;margin-top:clamp(56px,8vw,96px);border-top:1px solid var(--line);padding-top:48px}.stat .n{font-family:var(--font-display);font-size:clamp(2.2rem,4vw,3rem);color:var(--ink);line-height:1}.stat .n em{font-style:italic;color:var(--gold)}.stat .l{font-size:13px;color:var(--muted);margin-top:12px;letter-spacing:.04em}#treatments{background:var(--cream)}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:26px;gap:26px;margin-top:60px}.service-card{background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;display:grid;grid-template-columns:.85fr 1fr;transition:all .5s var(--ease)}.service-card:hover{border-color:var(--rose);box-shadow:0 26px 50px -30px rgba(34,27,21,.4);transform:translateY(-4px)}.service-media{position:relative;overflow:hidden;min-height:260px}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.service-card:hover .service-media img{transform:scale(1.06)}.service-body{padding:32px 30px;display:flex;flex-direction:column}.service-num{font-size:12px;letter-spacing:.2em;color:var(--gold);font-weight:600}.service-body h3{font-size:1.55rem;margin:14px 0 0}.service-body p{color:var(--muted);font-size:.97rem;margin-top:14px;flex:1 1}.service-link{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--ink);margin-top:22px;display:inline-flex;align-items:center;gap:8px}.service-link svg{width:14px;height:14px;color:var(--rose-deep);transition:transform .4s var(--ease)}.service-card:hover .service-link svg{transform:translateX(4px)}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;grid-auto-flow:dense;grid-gap:16px;gap:16px;margin-top:58px}.pf{position:relative;overflow:hidden;border-radius:var(--radius-lg);background:var(--sand)}.pf img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.pf:hover img{transform:scale(1.07)}.pf:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(27,20,16,.55),transparent 55%);opacity:0;transition:opacity .5s var(--ease)}.pf:hover:after{opacity:1}.pf .cap{position:absolute;left:18px;bottom:16px;z-index:2;color:var(--cream);transform:translateY(8px);opacity:0;transition:all .5s var(--ease)}.pf:hover .cap{transform:translateY(0);opacity:1}.pf .cap b{font-family:var(--font-display);font-size:1.05rem;font-weight:500}.pf .cap span{display:block;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2);margin-top:3px}.pf.tall{grid-row:span 2}.pf.wide{grid-column:span 2}#about{background:var(--rose-bg)}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:clamp(40px,7vw,90px);gap:clamp(40px,7vw,90px);align-items:center}.about-portrait{position:relative}.about-portrait .img-frame{aspect-ratio:3/4;border-radius:var(--radius-lg);overflow:hidden}.about-portrait .img-frame img{width:100%;height:100%;object-fit:cover}.about-portrait .tag{position:absolute;bottom:26px;left:-26px;background:var(--cream);border-radius:var(--radius-lg);padding:18px 24px;box-shadow:0 24px 44px -26px rgba(34,27,21,.5)}.about-portrait .tag b{font-family:var(--font-display);font-size:1.2rem;display:block}.about-portrait .tag span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--rose-deep)}.about-body p{color:var(--ink-2);margin-top:20px;font-size:1.05rem}.creds{display:grid;grid-gap:2px;gap:2px;margin-top:34px}.cred{display:flex;gap:16px;padding:18px 0;border-top:1px solid var(--rose-soft)}.cred svg{width:22px;height:22px;color:var(--gold);flex-shrink:0;margin-top:2px}.cred b{font-family:var(--font-display);font-size:1.1rem}.cred p{margin-top:4px;font-size:.95rem;color:var(--muted)}#training{background:var(--espresso)}#training,#training .stat .n,#training h2,#training h3{color:var(--cream)}#training .lead{color:rgba(252,249,245,.7)}#training .eyebrow{color:var(--gold-2)}#training .eyebrow.center:after,#training .eyebrow:before{background:var(--gold)}.training-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:clamp(40px,6vw,80px);gap:clamp(40px,6vw,80px);align-items:center;margin-top:56px}.training-grid>*{min-width:0}.training-media{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.training-media .img-frame{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:3/4}.training-media .img-frame img{width:100%;height:100%;object-fit:cover}.training-media .img-frame:first-child{margin-top:36px}.course-card{background:var(--espresso-2);border:1px solid var(--line-dark);border-radius:var(--radius-lg);padding:clamp(28px,4vw,44px)}.course-card .badge{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2);border:1px solid var(--line-dark);padding:7px 14px;border-radius:40px}.course-card h3{font-size:clamp(1.6rem,3vw,2.1rem);margin-top:22px;color:var(--cream)}.course-card>p{color:rgba(252,249,245,.66);margin-top:16px;font-size:.98rem}.includes{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px 22px;gap:12px 22px;margin-top:30px}.includes li{list-style:none;display:flex;gap:11px;font-size:.92rem;color:rgba(252,249,245,.84);align-items:flex-start}.includes svg{width:16px;height:16px;color:var(--gold-2);flex-shrink:0;margin-top:3px}.course-card .btn{margin-top:34px}.income-block{max-width:720px;margin:clamp(40px,6vw,64px) auto 0;text-align:center}.income-intro{color:var(--muted);font-size:1.02rem;line-height:1.75}.income-table-wrap{margin-top:26px;overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-lg)}.income-table{width:100%;min-width:460px;border-collapse:collapse;background:var(--cream);text-align:center}.income-caption{caption-side:top;padding:16px 18px 4px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.income-table thead th{background:var(--espresso);color:var(--cream);font-family:var(--font-display);font-weight:400;font-size:.92rem;padding:14px 16px}.income-table tbody td{padding:13px 16px;font-size:.96rem;color:var(--ink);border-top:1px solid var(--line)}.income-table tbody td:first-child{font-weight:600}.income-table tbody tr:nth-child(2n) td{background:rgba(169,136,80,.07)}.income-note{margin-top:16px;font-size:.82rem;font-style:italic;color:var(--muted)}#reviews{background:var(--cream)}.reviews-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:30px}.rating-block{display:flex;align-items:center;gap:22px}.rating-score{font-family:var(--font-display);font-size:4rem;line-height:.9;color:var(--ink)}.rating-meta .stars svg{width:20px;height:20px}.rating-meta p{font-size:14px;color:var(--muted);margin-top:8px}.rating-meta .gmaps{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--rose-deep);margin-top:10px}.rating-meta .gmaps svg{width:16px;height:16px}.rating-meta .gmaps:hover{color:var(--ink)}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;margin-top:52px}.review-card{background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius-lg);padding:36px 32px;display:flex;flex-direction:column}.review-card .stars{margin-bottom:18px}.review-card .stars svg{width:16px;height:16px}.review-card .quote{font-family:var(--font-display);font-size:1.16rem;line-height:1.55;color:var(--ink-2);flex:1 1}.review-card .who{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;letter-spacing:.04em;color:var(--muted);display:flex;align-items:center;gap:10px}.review-card .who svg{width:16px;height:16px}#contact{background:var(--ivory)}.contact-grid{display:grid;grid-template-columns:1fr 1.05fr;grid-gap:clamp(40px,6vw,80px);gap:clamp(40px,6vw,80px);align-items:stretch;margin-top:58px}.contact-info h3{font-size:1.5rem}.contact-detail{display:flex;gap:16px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}.contact-detail svg{width:20px;height:20px;color:var(--rose-deep);flex-shrink:0}.contact-detail .k{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.contact-detail .v{font-size:1.05rem;color:var(--ink);margin-top:2px}.map-frame{margin-top:28px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);aspect-ratio:16/10;background:var(--sand)}.map-frame iframe{width:100%;height:100%;border:0;filter:grayscale(.2) contrast(1.02)}.form-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(28px,4vw,46px)}.form-card h3{font-size:1.7rem}.form-card>p{color:var(--muted);margin-top:12px;font-size:.98rem}.form{margin-top:28px;grid-gap:18px}.form,.form-row{display:grid;gap:18px}.form-row{grid-template-columns:1fr 1fr;grid-gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);font-weight:500}.field label .req{color:var(--rose-deep)}.field input,.field textarea{font-family:var(--font-body);font-size:16px;color:var(--ink);background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;width:100%;transition:border-color .3s,box-shadow .3s}.field input:focus,.field textarea:focus{outline:none;border-color:var(--rose);box-shadow:0 0 0 3px var(--rose-soft)}.field textarea{resize:vertical;min-height:120px}.form .btn{width:100%;justify-content:center;margin-top:6px}.form-success{background:var(--rose-bg);border:1px solid var(--rose-soft);border-radius:var(--radius-lg);padding:40px 32px;text-align:center}.form-success svg{width:44px;height:44px;color:var(--gold);margin:0 auto 16px}.form-success h3{font-size:1.5rem}.form-success p{color:var(--muted);margin-top:10px}.form-note{font-size:12px;color:var(--muted);text-align:center;line-height:1.6}.footer{background:var(--espresso);color:rgba(252,249,245,.7);padding:80px 0 36px}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-gap:40px;gap:40px;padding-bottom:50px;border-bottom:1px solid var(--line-dark)}.footer-blurb{margin-top:20px;max-width:30em;font-size:.96rem;line-height:1.7}.footer-col h4{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);margin-bottom:18px;font-family:var(--font-body);font-weight:600}.footer-col a,.footer-col p{display:block;font-size:.96rem;color:rgba(252,249,245,.72);padding:6px 0;transition:color .3s}.footer-col a:hover{color:var(--cream)}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;padding-top:28px;font-size:13px}.footer-bottom a{color:var(--gold-2)}.path-fork{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(16px,2.4vw,28px);gap:clamp(16px,2.4vw,28px)}.path-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;height:100%;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(28px,3.6vw,44px);text-decoration:none;color:inherit;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}.path-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -42px rgba(34,27,21,.55);border-color:var(--rose)}.path-card.path-feature{background:var(--espresso);border-color:var(--espresso);color:var(--cream)}.path-card.path-feature:hover{border-color:var(--gold);box-shadow:0 34px 64px -40px rgba(27,20,16,.7)}.path-card.path-feature .path-eyebrow{color:var(--gold-2)}.path-card.path-feature .path-title{color:var(--cream)}.path-card.path-feature .path-blurb{color:rgba(252,249,245,.72)}.path-card.path-feature .path-cta{color:var(--gold-2)}.path-card.path-feature .path-icon{background:rgba(255,255,255,.06);border-color:var(--line-dark);color:var(--gold-2)}.path-icon{width:46px;height:46px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--ivory);border:1px solid var(--line);color:var(--rose-deep)}.path-icon svg{width:22px;height:22px}.path-eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--rose-deep)}.path-title{font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.1}.path-blurb{color:var(--ink-2);margin-bottom:4px}.path-cta{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--ink)}.path-cta svg{width:16px;height:16px;transition:transform .3s var(--ease)}.path-card:hover .path-cta svg{transform:translateX(4px)}.faq-list{max-width:800px;margin:0 auto;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{list-style:none;cursor:pointer;padding:22px 44px 22px 0;position:relative;font-family:var(--font-display);font-size:clamp(1.1rem,1.8vw,1.3rem);color:var(--ink)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--rose-deep);transition:transform .3s var(--ease);line-height:1}.faq-item[open] summary:after{transform:translateY(-50%) rotate(45deg)}.faq-item p{padding:0 44px 24px 0;color:var(--ink-2);max-width:68ch}#booking{background:var(--rose-bg)}.booking-grid{display:grid;grid-template-columns:.85fr 1.15fr;grid-gap:clamp(40px,6vw,80px);gap:clamp(40px,6vw,80px);align-items:start}.booking-grid>*{min-width:0}.booking-intro{position:-webkit-sticky;position:sticky;top:110px}.booking-points{list-style:none;margin-top:32px;display:grid;grid-gap:14px;gap:14px}.booking-points li{display:flex;gap:12px;align-items:center;font-size:1rem;color:var(--ink-2)}.booking-points svg{width:18px;height:18px;color:var(--gold);flex-shrink:0}.bk-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(24px,3.4vw,40px);box-shadow:0 30px 60px -40px rgba(34,27,21,.5);min-width:0}.bk-step+.bk-step{margin-top:30px;padding-top:30px;border-top:1px solid var(--line)}.bk-step-n{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--rose-deep);font-weight:600;display:block;margin-bottom:18px}.bk-step-n em{font-style:normal;color:var(--gold);letter-spacing:.12em}.bk-locked{opacity:.4;pointer-events:none;filter:grayscale(.3);transition:opacity .4s var(--ease)}.bk-services{display:grid;grid-gap:10px;gap:10px}.bk-svc{position:relative;text-align:left;background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);padding:15px 46px 15px 18px;cursor:pointer;transition:all .3s var(--ease);display:flex;flex-direction:column;gap:5px}.bk-svc:hover{border-color:var(--rose)}.bk-svc.on{border-color:var(--ink);background:#fff;box-shadow:0 0 0 1px var(--ink)}.bk-svc-t{font-family:var(--font-display);font-size:1.15rem;color:var(--ink)}.bk-svc-m{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--muted)}.bk-svc-m svg{width:14px;height:14px;color:var(--rose-deep)}.bk-tick{position:absolute;top:14px;right:16px;width:22px;height:22px;background:var(--ink);color:var(--cream);border-radius:50%;display:flex;align-items:center;justify-content:center}.bk-tick svg{width:13px;height:13px}.bk-days{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;min-width:0}.bk-day{flex:0 0 auto;width:62px;scroll-snap-align:start;background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);padding:12px 0;cursor:pointer;transition:all .3s var(--ease);display:flex;flex-direction:column;align-items:center;gap:2px}.bk-day:hover{border-color:var(--rose)}.bk-day.on{background:var(--ink);border-color:var(--ink);color:var(--cream)}.bk-day .wd{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.bk-day.on .mo,.bk-day.on .wd{color:rgba(252,249,245,.7)}.bk-day .dn{font-family:var(--font-display);font-size:1.5rem;line-height:1}.bk-day .mo{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:10px;gap:10px}.bk-slot{position:relative;background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);padding:13px 8px;font-size:15px;font-weight:500;color:var(--ink);cursor:pointer;transition:all .3s var(--ease)}.bk-slot:hover:not(:disabled){border-color:var(--rose)}.bk-slot.on{background:var(--ink);border-color:var(--ink);color:var(--cream)}.bk-slot:disabled{cursor:not-allowed;opacity:.5;text-decoration:line-through;color:var(--muted)}.bk-slot-x{position:absolute;top:-8px;right:-6px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;background:var(--rose-soft);color:var(--rose-deep);padding:2px 6px;border-radius:20px;text-decoration:none}.bk-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.bk-input{font-family:var(--font-body);font-size:16px;color:var(--ink);background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;width:100%;transition:border-color .3s,box-shadow .3s}.bk-input:focus{outline:none;border-color:var(--rose);box-shadow:0 0 0 3px var(--rose-soft)}.bk-confirm{width:100%;justify-content:center;margin-top:16px}.bk-confirm:disabled{opacity:.45;cursor:not-allowed}.bk-note{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}.bk-done{text-align:center;padding:14px 6px}.bk-done svg{width:48px;height:48px;color:var(--gold);margin:0 auto 14px}.bk-done h3{font-size:1.7rem}.bk-done-sum{margin-top:10px;color:var(--muted)}.bk-done-sum b{color:var(--ink);font-family:var(--font-display)}.bk-auto{display:grid;grid-gap:12px;gap:12px;margin:28px 0;text-align:left}.bk-auto-row{display:flex;gap:14px;align-items:flex-start;background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}.bk-auto-row svg{width:20px;height:20px;color:var(--rose-deep);flex-shrink:0;margin-top:2px}.bk-auto-row b{display:block;font-family:var(--font-display);font-size:1.05rem}.bk-auto-row span{display:block;font-size:.92rem;color:var(--muted);margin-top:3px;line-height:1.55}.bk-variant{display:inline-block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--rose-deep);border:1px solid var(--line);padding:7px 14px;border-radius:40px;margin-bottom:16px}.bk-variant,.cal-embed{background:var(--cream)}.cal-embed{width:100%;height:760px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 30px 60px -40px rgba(34,27,21,.5)}.img-frame{position:relative}.ph{position:absolute;inset:0;justify-content:center;text-align:center;padding:22px;color:var(--rose-deep);background:repeating-linear-gradient(45deg,rgba(169,136,80,.06) 0 10px,transparent 10px 22px),linear-gradient(140deg,var(--sand),var(--rose-bg));border:1px dashed var(--rose);border-radius:inherit}.ph,.ph-inner{display:flex;align-items:center}.ph-inner{flex-direction:column;gap:8px;max-width:88%}.ph-icon{width:30px;height:30px;color:var(--rose);opacity:.9}.ph-id{font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);background:rgba(255,255,255,.6);border:1px solid var(--rose-soft);padding:4px 10px;border-radius:40px}.ph-label{font-size:12.5px;line-height:1.45;color:var(--muted);max-width:26ch}.ph-ratio{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--rose)}.student-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:58px}.student-grid .img-frame{aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden}.student-grid .img-frame img{width:100%;height:100%;object-fit:cover}@media (max-width:760px){.student-grid{grid-template-columns:1fr;gap:12px}}#training .ph,.on-dark .ph{color:var(--gold-2);background:repeating-linear-gradient(45deg,rgba(196,168,108,.08) 0 10px,transparent 10px 22px),linear-gradient(140deg,var(--espresso),var(--espresso-2));border-color:var(--line-dark)}#training .ph-id,.on-dark .ph-id{color:var(--cream);background:rgba(255,255,255,.06);border-color:var(--line-dark)}#training .ph-label,.on-dark .ph-label{color:rgba(252,249,245,.7)}#training .ph-icon,.on-dark .ph-icon{color:var(--gold-2)}.page-sub .section{padding:clamp(48px,6.5vw,92px) 0}.page-sub>section:nth-of-type(2n){background:var(--cream)}.page-hero{display:grid;grid-template-columns:1.08fr .92fr;grid-gap:clamp(40px,6vw,84px);gap:clamp(40px,6vw,84px);align-items:center}.page-hero .section-head{max-width:none}.page-hero-media{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/5}.why-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;grid-gap:16px 44px;gap:16px 44px;max-width:640px;margin:36px auto 0}.why-list li{display:flex;gap:12px;align-items:center;font-size:1.06rem;color:var(--ink-2)}.why-list svg{width:19px;height:19px;color:var(--gold);flex-shrink:0}.reveal{opacity:0;transform:translateY(26px)}@media (max-width:1024px){.nav-links,.nav-phone{display:none}.nav-toggle{display:flex}.hero{grid-template-columns:1fr}.hero-media{min-height:56vh;order:-1}.hero-copy{padding-top:110px}.scroll-cue{display:none}.services-grid{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:210px}.pf.wide{grid-column:span 2}.about-grid,.contact-grid,.intro-grid,.page-hero,.training-grid{grid-template-columns:1fr}.page-hero{gap:40px}.page-hero-media{max-width:460px;aspect-ratio:5/4}.booking-grid{grid-template-columns:1fr}.booking-intro{position:static}.training-media{max-width:460px}.about-portrait{max-width:440px}.reviews-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}}@media (max-width:680px){body{font-size:16px}.container{padding:0 20px}.btn{white-space:normal;text-align:center}.brand-logo{height:38px}.brand-logo-footer{height:50px}.service-card{grid-template-columns:1fr}.service-media{min-height:220px}.stats{grid-template-columns:1fr 1fr;gap:30px 20px}.form-row,.includes{grid-template-columns:1fr}.reviews-top{flex-direction:column;align-items:flex-start}.path-fork,.why-list{grid-template-columns:1fr}.why-list{gap:14px;max-width:420px}.bk-fields{grid-template-columns:1fr}.bk-card{padding:22px 18px}.bk-step+.bk-step{margin-top:24px;padding-top:24px}.bk-slots{grid-template-columns:repeat(3,1fr);gap:8px}.bk-slot{padding:14px 4px;font-size:14px}.bk-day{width:58px}.bk-svc-t{font-size:1.08rem}.bk-done h3{font-size:1.5rem}.bk-auto-row{padding:14px}.cal-embed{height:640px}.intro-figure .img-frame.small{display:none}.about-portrait .tag{left:0}.footer-top{grid-template-columns:1fr;gap:30px}.portfolio-grid{gap:12px}}@media (hover:none){.pf .cap,.pf:after{opacity:1}.pf .cap{transform:none}}