:root{--cream: #faf5ef;--cream-2: #f3ebe1;--blush: #f6dcd2;--blush-deep: #e7b5a4;--rose: #c97a63;--rose-deep: #a85a44;--ink: #2b2320;--ink-soft: #5a4e49;--muted: #8a7d77;--line: #e8ddd2;--white: #ffffff;--serif: "Cormorant Garamond", "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--radius: 14px;--radius-lg: 24px;--shadow-sm: 0 4px 16px rgba(43, 35, 32, .06);--shadow-md: 0 18px 48px rgba(43, 35, 32, .1);--shadow-lg: 0 30px 80px rgba(43, 35, 32, .14);--max: 1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;min-height:100vh;min-height:100dvh}img{max-width:100%;display:block}a{color:var(--rose-deep);text-decoration:none;transition:color .2s ease}a:hover{color:var(--rose)}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 clamp(16px,4vw,32px)}h1,h2,h3,h4,h5{font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:-.01em;line-height:1.1;margin:0 0 .4em}h1{font-size:clamp(2.6rem,6vw,4.6rem);font-weight:500}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.4rem,2.2vw,1.75rem)}h4{font-size:1.25rem}h1 em,h2 em{font-style:italic;font-weight:400;color:var(--rose)}p{margin:0 0 1em;color:var(--ink-soft)}.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;color:var(--rose);font-weight:500;margin:0 0 1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.95rem 1.6rem;border-radius:999px;font-family:var(--sans);font-size:.85rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:1px solid transparent;transition:all .25s ease;white-space:nowrap}.btn-primary{background:var(--ink);color:var(--cream)}.btn-primary:hover{background:var(--rose-deep);color:var(--white);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--cream)}.btn-outline{background:transparent;border-color:var(--rose);color:var(--rose-deep)}.btn-outline:hover{background:var(--rose);color:var(--white)}.btn-block{width:100%}.site-header{position:sticky;top:0;z-index:50;background:#faf5efd9;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid transparent;transition:border-color .3s ease,background .3s ease;padding-top:env(safe-area-inset-top,0px)}.site-header.scrolled{border-bottom-color:var(--line);background:#faf5eff2}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 24px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-family:var(--serif)}.brand:hover{color:var(--ink)}.brand-mark{width:42px;height:42px;border-radius:50%;background:var(--ink);color:var(--cream);display:grid;place-items:center;font-family:var(--serif);font-weight:600;font-size:1rem;letter-spacing:.05em}.brand-text{font-size:1.15rem;line-height:1.1;display:flex;flex-direction:column}.brand-text small{font-family:var(--sans);font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-top:2px}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{font-size:.85rem;color:var(--ink);font-weight:500;letter-spacing:.04em}.nav-links a:hover{color:var(--rose-deep)}.nav-cta{padding:.7rem 1.2rem;font-size:.74rem;background:var(--rose);color:var(--white);border-color:var(--rose)}.nav-cta:hover{background:var(--rose-deep);border-color:var(--rose-deep);color:var(--white)}.nav-toggle{display:none;background:none;border:0;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;min-width:44px;min-height:44px;padding:10px;margin:-10px -10px -10px 0}.nav-toggle span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s ease,opacity .3s ease}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{padding:0;margin:0}.hero-banner{position:relative;width:100%;min-height:clamp(520px,85vh,920px);height:clamp(520px,85vh,920px);overflow:hidden;background:#2b2320}@supports (height: 100dvh){.hero-banner{min-height:clamp(520px,85dvh,920px);height:clamp(520px,85dvh,920px)}}.hero-carousel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:#2b2320}.hero-carousel__slide{position:absolute;top:0;right:0;bottom:0;left:0}.hero-carousel__media{width:100%;height:100%;overflow:hidden}.hero-carousel__video,.hero-carousel__poster{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.hero-carousel__dots{position:absolute;z-index:2;bottom:clamp(20px,3vh,36px);right:clamp(20px,4vw,48px);display:flex;gap:10px;pointer-events:auto}.hero-carousel__dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#ffffff73;cursor:pointer;transition:transform .25s ease,background .25s ease}.hero-carousel__dot.is-active{background:var(--white);transform:scale(1.2)}.hero-carousel__dot:hover{background:#ffffffd9}.hero-carousel__arrows{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-carousel__arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:#ffffff2e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--white);font-size:1.75rem;line-height:1;cursor:pointer;pointer-events:auto;opacity:0;transition:opacity .3s ease,background .25s ease}.hero-banner:hover .hero-carousel__arrow{opacity:1}.hero-carousel__arrow:hover{background:#ffffff52}.hero-carousel__arrow--prev{left:clamp(16px,3vw,32px)}.hero-carousel__arrow--next{right:clamp(16px,3vw,32px)}@media(max-width:720px){.hero-carousel__arrow{display:none}.hero-carousel__dots{top:clamp(84px,14vh,120px);bottom:auto;right:16px;left:auto;transform:none}}.hero-banner__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(90deg,#2b23206b,#2b23201f 42%,#2b232038),linear-gradient(180deg,#2b232014,#2b232047);pointer-events:none}.hero-panel{position:absolute;z-index:2;top:auto;bottom:clamp(16px,3vh,40px);left:clamp(20px,5vw,72px);transform:none;width:min(480px,calc(100% - 40px));max-height:calc(100% - 48px);overflow:auto;background:#fffffff7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:clamp(32px,4vw,52px) clamp(28px,3.5vw,48px);box-shadow:0 20px 60px #2b232038}.hero-welcome{font-family:var(--sans);text-transform:uppercase;letter-spacing:.28em;font-size:.68rem;color:var(--rose);font-weight:500;margin:0 0 .75rem}.hero-panel h1{font-size:clamp(2.2rem,4.2vw,3.4rem);font-weight:500;line-height:1.1;margin:0 0 1.25rem}.hero-panel h1 em{font-style:italic;font-weight:400;color:var(--rose)}.hero-panel .lede{font-size:clamp(.95rem,1.5vw,1.05rem);line-height:1.65;color:var(--ink-soft);margin:0 0 2rem}.btn-hero{display:inline-flex;align-items:center;gap:10px;background:#e8d5c4;color:var(--ink);border:none;padding:1rem 1.5rem;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;border-radius:0;transition:background .25s ease,color .25s ease}.btn-hero:hover{background:var(--ink);color:var(--cream);transform:none}.btn-hero span{font-size:1rem;line-height:1;transition:transform .25s ease}.btn-hero:hover span{transform:translate(4px)}.welcome{padding:100px 0;content-visibility:auto;contain-intrinsic-size:auto 600px}.welcome-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center}.welcome-img{position:relative;aspect-ratio:4 / 5;width:100%;max-width:480px}.img-frame{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--blush);box-shadow:var(--shadow-md)}.img-frame img,.img-frame video{width:100%;height:100%;object-fit:cover;display:block}.studio-carousel{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:pan-y}.studio-carousel__slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .55s ease;pointer-events:none}.studio-carousel__slide.is-active{opacity:1;pointer-events:auto}.studio-carousel__slide video{width:100%;height:100%;object-fit:cover;display:block}.studio-carousel__dots{position:absolute;z-index:2;bottom:14px;left:50%;transform:translate(-50%);display:flex;gap:8px;pointer-events:auto}.studio-carousel__dot{width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer;display:grid;place-items:center;transition:transform .25s ease}.studio-carousel__dot:after{content:"";width:8px;height:8px;border-radius:50%;background:#ffffff8c;transition:transform .25s ease,background .25s ease}.studio-carousel__dot.is-active:after{background:var(--white);transform:scale(1.25)}.studio-carousel__dot:hover:after{background:#ffffffe6}.img-accent{position:absolute;width:50%;height:50%;bottom:-20px;right:-20px;border-radius:50%;background:var(--cream-2);z-index:-1}.welcome-copy h2,.welcome-copy p{max-width:520px}.section-head{text-align:center;max-width:720px;margin:0 auto 56px}.section-head .eyebrow{display:block}.section-sub{color:var(--ink-soft);font-size:1.05rem;margin:0}.services{padding:100px 0;background:var(--cream-2);position:relative;content-visibility:auto;contain-intrinsic-size:auto 800px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;border:1px solid transparent;display:flex;flex-direction:column}.card-media{position:relative;aspect-ratio:4 / 3;overflow:hidden;background:var(--blush)}.card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.service-card:hover .card-media img,.tip-card:hover .card-media img{transform:scale(1.04)}.card-body{padding:28px 28px 32px;display:flex;flex-direction:column;flex:1}.service-num{font-family:var(--serif);font-style:italic;color:var(--rose);font-size:1.1rem;margin-bottom:14px}.service-card h3{margin-bottom:.6rem}.service-card p{font-size:.95rem;margin-bottom:1.2rem}.service-meta{font-family:var(--sans);font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ink);font-weight:500;padding-top:14px;border-top:1px solid var(--line);display:block}.services-cta{text-align:center;margin-top:56px}.services-cta .deposit-notice--compact{max-width:520px;margin:1.25rem auto 0;text-align:left}.policies{padding:100px 0;background:var(--cream-2)}.policy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.policy-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 32px;box-shadow:var(--shadow-sm)}.policy-card h3{margin:0 0 .65rem;font-size:1.2rem}.policy-card p{margin:0;color:var(--ink-soft);line-height:1.65;font-size:.98rem}.deposit-notice{background:var(--cream-2);border:1px solid var(--line);border-left:4px solid var(--ink);padding:18px 20px;margin:0}.deposit-notice p{margin:0 0 .65rem;font-size:.95rem;line-height:1.6;color:var(--ink-soft)}.deposit-notice p:last-child{margin-bottom:0}.deposit-notice--compact{font-size:.9rem;line-height:1.6;color:var(--ink-soft);background:transparent;border:none;border-left:none;padding:0}.deposit-notice--compact a{color:var(--rose);font-weight:500}.field-checkbox{margin-top:.25rem}.checkbox-label{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;line-height:1.55;color:var(--ink-soft);cursor:pointer}.checkbox-label input{margin-top:.2rem;flex-shrink:0}.checkbox-label a{color:var(--rose)}.promo-tag{font-family:var(--sans);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--rose);font-weight:600;margin:0 0 .75rem}.promo-modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:20px}.promo-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;background:#2b23208c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);cursor:pointer}.promo-modal{position:relative;z-index:1;width:min(520px,100%);background:var(--white);border:1px solid var(--line);border-top:4px solid var(--rose);padding:clamp(28px,4vw,40px);box-shadow:0 24px 64px #2b232038;outline:none}.promo-modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border:none;background:transparent;color:var(--ink-soft);font-size:1.75rem;line-height:1;cursor:pointer;border-radius:50%;transition:background .2s ease,color .2s ease}.promo-modal-close:hover{background:var(--cream-2);color:var(--ink)}.promo-modal h2{font-size:clamp(1.45rem,3vw,1.85rem);margin:0 0 .75rem;padding-right:2rem}.promo-modal p:not(.promo-tag){color:var(--ink-soft);margin:0 0 1.5rem;line-height:1.65}.promo-modal-actions{display:flex;flex-wrap:wrap;gap:10px}.service-menus{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:48px}.service-menu{background:var(--white);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-sm);border:1px solid var(--line)}.service-menu h3{margin:0 0 .5rem;font-size:1.35rem}.service-menu-note{font-size:.92rem;color:var(--ink-soft);margin:0 0 1rem}.service-menu ul{list-style:none;margin:0;padding:0}.service-menu li{display:flex;justify-content:space-between;gap:16px;padding:.85rem 0;border-bottom:1px solid var(--line);font-size:.98rem}.service-menu li:last-child{border-bottom:none;padding-bottom:0}.service-menu li span:last-child{font-weight:600;white-space:nowrap;color:var(--ink)}.booking-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:1.5rem}.contact-form select{width:100%;padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);font:inherit;color:var(--ink)}.expect{padding:100px 0}.expect-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.expect-step{text-align:center;padding:28px 16px}.step-num{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--blush);color:var(--rose-deep);font-family:var(--serif);font-size:1.4rem;font-weight:600;margin-bottom:18px}.expect-step h4{font-family:var(--serif);font-size:1.4rem;margin-bottom:.5rem}.expect-step p{font-size:.92rem;margin:0}.quote{padding:80px 0;background:radial-gradient(60% 80% at 50% 50%,var(--blush) 0%,transparent 70%),var(--cream)}.quote blockquote{margin:0;max-width:820px;margin-inline:auto;text-align:center}.quote blockquote p{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.4;color:var(--ink);margin:0 0 1.4rem}.quote cite{font-family:var(--sans);font-style:normal;font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rose-deep)}.tips{padding:100px 0;background:var(--cream-2)}.tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.tip-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden;border:1px solid transparent}.tip-tag{align-self:flex-start;background:var(--blush);color:var(--rose-deep);font-family:var(--sans);font-size:.65rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;padding:6px 12px;border-radius:999px;margin-bottom:18px}.tip-card h4{font-family:var(--serif);font-size:1.4rem;line-height:1.2;margin-bottom:.8rem}.tip-card p{font-size:.93rem;flex:1;margin-bottom:1.2rem}.read-more{font-family:var(--sans);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rose-deep);font-weight:500}.contact{padding:100px 0;background:radial-gradient(70% 60% at 100% 0%,var(--blush) 0%,transparent 60%),var(--cream)}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:start}.contact-info h2{max-width:460px}.contact-list{list-style:none;padding:0;margin:28px 0;display:grid;gap:14px}.contact-list li{display:grid;grid-template-columns:110px 1fr;align-items:baseline;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:.95rem}.contact-list strong{font-family:var(--sans);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500}.contact-list a{color:var(--ink)}.contact-list a:hover{color:var(--rose-deep)}.contact-note{font-size:.85rem;color:var(--muted);font-style:italic}.contact-form{background:var(--white);padding:40px;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.contact-form h3{font-size:1.6rem;margin-bottom:1.6rem}.field{margin-bottom:18px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{display:block;font-family:var(--sans);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px;font-weight:500}.field input,.field textarea{width:100%;padding:12px 14px;font-family:var(--sans);font-size:.95rem;background:var(--cream);border:1px solid var(--line);border-radius:10px;color:var(--ink);transition:border-color .2s ease,background .2s ease}.field input:focus,.field textarea:focus{outline:none;border-color:var(--rose);background:var(--white)}.field textarea{resize:vertical;min-height:120px}.form-status{margin:14px 0 0;font-size:.85rem;text-align:center;min-height:1.2em}.form-status.success{color:#4a7c4a}.form-status.error{color:#b03a3a}.site-footer{background:var(--ink);color:var(--cream);padding:72px 0 calc(32px + env(safe-area-inset-bottom,0px))}.site-footer .brand-mark{background:var(--cream);color:var(--ink)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand p{margin:0;font-family:var(--serif);font-size:1.15rem;color:var(--cream);line-height:1.4}.footer-brand p strong{font-weight:600}.footer-col h5{font-family:var(--sans);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--blush);margin-bottom:16px;font-weight:600}.footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.footer-col a{color:var(--cream);font-size:.92rem}.footer-col a:hover{color:var(--blush)}.footer-bottom{display:flex;justify-content:space-between;gap:12px;padding-top:24px;border-top:1px solid rgba(250,245,239,.12);font-size:.78rem;color:#faf5ef99}.footer-bottom p{margin:0;color:inherit}@media(min-width:1600px){:root{--max: 1280px}h1{font-size:5rem}.hero-panel h1{font-size:3.6rem}.hero-carousel__video,.hero-carousel__poster{object-position:center center}}@media(max-width:1100px){.nav-links{gap:22px}.service-grid{gap:20px}}@media(max-width:960px){.welcome,.services,.expect,.tips,.policies,.contact{padding:80px 0}.hero-banner{min-height:clamp(460px,62vh,620px);height:clamp(460px,62vh,620px)}@supports (height: 100dvh){.hero-banner{min-height:clamp(460px,62dvh,620px);height:clamp(460px,62dvh,620px)}}.hero-panel{left:clamp(16px,3vw,32px);bottom:clamp(20px,4vh,40px);width:min(420px,calc(100% - 32px));padding:clamp(28px,3.5vw,40px) clamp(24px,3vw,36px)}.hero-panel h1{font-size:clamp(2rem,4.5vw,2.8rem)}.welcome-grid,.contact-grid{grid-template-columns:1fr;gap:56px}.welcome-img{max-width:520px;margin:0 auto;justify-self:center}.service-grid,.tips-grid{grid-template-columns:repeat(2,1fr)}.service-menus,.policy-grid{grid-template-columns:1fr}.expect-grid{grid-template-columns:repeat(2,1fr);gap:20px}.footer-grid{grid-template-columns:1fr 1fr}.contact-form{padding:32px}}@media(max-width:820px){.hero-banner{min-height:clamp(420px,58vh,560px);height:clamp(420px,58vh,560px)}@supports (height: 100dvh){.hero-banner{min-height:clamp(420px,58dvh,560px);height:clamp(420px,58dvh,560px)}}.hero-panel{width:min(380px,calc(100% - 28px));bottom:clamp(16px,3vh,32px);left:14px;padding:28px 24px 32px}.hero-panel .lede{margin-bottom:1.5rem;font-size:.92rem}}@media(max-width:720px){.nav-links{position:fixed;inset:calc(70px + env(safe-area-inset-top,0px)) 16px auto 16px;flex-direction:column;align-items:stretch;gap:0;background:var(--white);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow-lg);transform:translateY(-12px);opacity:0;visibility:hidden;transition:all .25s ease;max-height:calc(100dvh - 90px - env(safe-area-inset-top,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}.nav-links a{padding:14px 8px;min-height:44px;display:flex;align-items:center;border-bottom:1px solid var(--line);text-align:left}.nav-links a:last-child{border-bottom:0}.nav-links.open{transform:translateY(0);opacity:1;visibility:visible}.nav-cta{margin-top:8px}.nav-toggle{display:flex}.hero-banner{min-height:clamp(480px,78vh,640px);height:clamp(480px,78vh,640px)}@supports (height: 100dvh){.hero-banner{min-height:clamp(480px,78dvh,640px);height:clamp(480px,78dvh,640px)}}.hero-panel{left:16px;right:16px;width:auto;bottom:calc(clamp(12px,2vh,24px) + env(safe-area-inset-bottom,0px));padding:28px 22px 32px;max-height:calc(100% - 32px - env(safe-area-inset-bottom,0px))}.hero-carousel__dot{width:32px;height:32px;background:transparent;display:grid;place-items:center}.hero-carousel__dot:after{content:"";width:8px;height:8px;border-radius:50%;background:#ffffff73;transition:transform .25s ease,background .25s ease}.hero-carousel__dot.is-active{transform:none}.hero-carousel__dot.is-active:after{background:var(--white);transform:scale(1.25)}.promo-modal-root{padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));align-items:center}.promo-modal-actions{flex-direction:column}.promo-modal-actions .btn{width:100%;white-space:normal;text-align:center}.booking-actions{flex-direction:column}.booking-actions .btn{width:100%;white-space:normal}.btn-hero{width:100%;justify-content:center}.welcome,.services,.expect,.tips,.policies,.contact,.quote{padding:64px 0}.service-grid,.tips-grid,.expect-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{flex-direction:column;text-align:center}.field-row{grid-template-columns:1fr}.contact-list li{grid-template-columns:1fr;gap:4px}.contact-list strong{font-size:.65rem}.brand-text small{display:none}.nav-wrap{padding:14px 16px}.section-head{margin-bottom:40px}}@media(max-width:420px){.hero-panel h1{font-size:2rem}.hero-panel{padding:24px 18px 28px}.hero-panel .lede{font-size:.9rem;line-height:1.6}.hero-welcome{letter-spacing:.18em;font-size:.62rem}.btn{padding:.85rem 1.2rem;font-size:.78rem;letter-spacing:.1em;white-space:normal}.card-body{padding:24px 22px 26px}.contact-form{padding:24px 20px}.contact-form h3{font-size:1.35rem}.brand-mark{width:38px;height:38px}.brand-text{font-size:1rem}.policy-card,.service-menu{padding:22px 20px}.welcome-img{width:100%;max-width:none}.studio-carousel__dots{bottom:10px}}@media(max-width:920px)and (max-height:500px)and (orientation:landscape){.hero-banner{min-height:100vh;height:100vh;min-height:100dvh;height:100dvh}.hero-panel{padding:16px 18px 20px;max-width:min(360px,42vw);max-height:calc(100% - 24px);overflow-y:auto;-webkit-overflow-scrolling:touch}.hero-panel .lede{margin-bottom:1rem;font-size:.88rem}.hero-panel h1{font-size:1.75rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
