:root{--ink:#242824;--paper:#fffdf8;--orange:#f58b32;--coral:#c9363e;--blue:#126fa7;--green:#237b58;--muted:#5b625d;--line:#deded3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;font:16px/1.7 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none;cursor:pointer}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #157b96;outline-offset:5px}.skip{position:fixed;left:12px;top:-70px;background:white;padding:12px;z-index:50}.skip:focus{top:12px}.notice{background:#263d37;color:white;text-align:center;padding:8px 20px;font-size:11px;letter-spacing:1.5px}.notice span{margin-left:25px;letter-spacing:.5px}header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;background:#fffdf8f5;backdrop-filter:blur(14px);padding:12px 4.5vw;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:11px;font-weight:900;font-size:20px;line-height:1.06;letter-spacing:-.6px}.brand img{width:67px;height:67px;object-fit:contain;mix-blend-mode:multiply}.brand small{display:block;font-size:8px;letter-spacing:1.4px;line-height:1.5;margin-top:7px}nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:600}nav>a:not(.button):hover{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:17px 25px;border:1px solid var(--orange);background:var(--orange);color:#202820;border-radius:7px;font-size:14px;font-weight:700;line-height:1.35;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#ff9853}.button.small{padding:13px 20px}.secondary{background:transparent;border-color:var(--ink)}.secondary:hover{background:#f8e9d8}.menu{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;background:#f9efdf;min-height:600px}.hero-copy{padding:70px 5.5vw 80px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;line-height:1.5}.pill{display:inline-block;background:#fae0c8;color:#8e411d;border-radius:30px;padding:8px 16px}h1{font-size:clamp(42px,4.2vw,72px);line-height:1.08;letter-spacing:-2.6px;margin:26px 0 23px;font-weight:800}h1 em{font-style:normal;color:#b84920}p{color:var(--muted);margin:0 0 22px}.hero p{max-width:490px;font-size:16px}.actions{display:flex;gap:13px;flex-wrap:wrap}.hero-location{display:inline-block;font-size:12px;font-weight:600;margin-top:25px}.hero-photo{position:relative;min-width:0;overflow:hidden}.hero-photo>img{height:100%;width:100%;position:absolute;object-fit:cover;object-position:50% 42%}.photo-tag{position:absolute;bottom:35px;right:30px;background:#fffdf8ed;padding:13px 20px;border-radius:5px;font-weight:700;font-size:14px}.highlights{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:-30px 4.5vw 0;z-index:2}.highlight{padding:32px;border-radius:12px;color:white;display:flex;flex-direction:column;align-items:flex-start;min-height:318px;box-shadow:0 15px 35px #363b3510;transition:transform .2s}.highlight:hover{transform:translateY(-5px)}.blue{background:var(--blue)}.orange{background:var(--orange);color:#232922}.coral{background:var(--coral)}.icon{font-size:28px;line-height:1;background:#ffffffeb;color:var(--ink);border-radius:10px;width:46px;height:46px;display:grid;place-items:center;margin-bottom:20px}.highlight h2{font-size:27px;letter-spacing:-.7px;line-height:1.15;margin:12px 0 15px}.highlight p{color:inherit;opacity:.97;font-size:14px;line-height:1.65}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px;display:inline-block}.highlight .text-link{margin-top:auto}.section{padding:100px 6vw;scroll-margin-top:10px}h2{font-size:clamp(34px,3.6vw,53px);line-height:1.12;letter-spacing:-1.8px;margin:19px 0 26px}h2 em{font-style:normal;color:#b84920}.story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.story-photo{position:relative;padding-right:20px}.story-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.photo-caption{position:absolute;bottom:30px;right:0;background:#f5cb73;padding:16px 22px;border-radius:5px;font-size:12px;font-weight:700}.story-copy p{font-size:15px}.classes{background:#ecf3ee}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:35px}.section-head h2{margin-bottom:0}.section-head>p{max-width:340px;margin:0;font-size:15px}.class-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.class-card{border:1px solid #cfdbd0;border-radius:10px;padding:28px 23px;background:#fffdf8;display:flex;flex-direction:column;transition:transform .2s}.class-card:hover{transform:translateY(-4px)}.class-number{font-size:9px;letter-spacing:1px;font-weight:800;color:#566c5f}.class-card h3{font-size:26px;line-height:1.15;letter-spacing:-.8px;margin:27px 0 18px}.class-card p{font-size:14px}.class-card .text-link{margin-top:auto;align-self:start;font-size:12px}.class-note{font-size:12px;margin:25px 0 0}.booking{background:#263d37;color:white;display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.booking h2 em{color:#ffb15d}.booking p{color:#e1e7dd;font-size:15px}.booking-links{display:flex;gap:25px;flex-wrap:wrap;font-size:13px;text-decoration:underline}.booking-panel{padding:38px;border:1px solid #c0d0bd55;background:#ffffff08;border-radius:12px}.booking-panel h3{font-size:30px;line-height:1.2;letter-spacing:-.8px;margin:20px 0}.booking-panel .button{width:100%;margin:6px 0}.booking-panel .secondary{color:white;border-color:#b7c1b4}.booking-panel .secondary:hover{background:#ffffff16}.booking-panel small{display:block;color:#bfcabd;font-size:11px;margin-top:16px}.gallery{background:#fffdf8}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}figure{margin:0}.photo-open{border:0;background:none;padding:0;width:100%;display:block;overflow:hidden;border-radius:9px}.photo-open img{display:block;width:100%;aspect-ratio:1.14;object-fit:cover;transition:transform .35s}.photo-open:hover img{transform:scale(1.035)}figure:nth-child(1) img{object-position:50% 45%}figure:nth-child(2) img{object-position:50% 28%}figcaption{font-size:12px;font-weight:600;margin-top:10px}.welcome{display:grid;grid-template-columns:1fr 1fr;gap:9vw;background:#fae8d2}.welcome>div>p{max-width:450px}.steps{list-style:none;counter-reset:step;padding:0;margin:0}.steps li{counter-increment:step;position:relative;padding:24px 0 24px 65px;border-bottom:1px solid #d6c7b5}.steps li:before{content:'0' counter(step);position:absolute;left:0;top:23px;font-size:24px;color:#ab4b28;font-weight:800}.steps h3{font-size:18px;margin:0 0 10px}.steps p{font-size:14px;margin:0}.faq{display:grid;grid-template-columns:1fr 1fr;gap:8vw}details{border-bottom:1px solid var(--line);padding:23px 0}details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:15px;font-weight:600;list-style:none;padding-right:25px;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;font-size:22px;line-height:1}details[open] summary:after{content:'−'}details p{font-size:14px;margin:18px 0 0}details a{text-decoration:underline}.location{background:#edf1e9;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.location address{font-style:normal;font-size:25px;line-height:1.4;font-weight:600}.location>div>p{font-size:14px;margin-top:10px}.contact{padding-top:20px}.contact h3{font-size:29px;letter-spacing:-1px;line-height:1.2}.contact p{font-size:14px}.contact-link{display:block;font-size:23px;font-weight:600;margin:12px 0}.contact-link small{font-size:12px;color:var(--muted);font-weight:400}.contact-link.email{font-size:17px;overflow-wrap:anywhere}.location-note{border-top:1px solid #cbd6c8;margin-top:35px;padding-top:25px}.location-note p{margin:12px 0 0}.last{text-align:center;padding:75px 20px;background:#f4ac51;color:#263429}.last h2{font-size:clamp(40px,5.3vw,76px);letter-spacing:-2.7px;margin:20px 0 30px}.last .button{background:#263d37;color:white;border-color:#263d37}.boutique{text-align:center;padding:44px 20px;background:#f9efdf}.boutique h2{font-size:28px;letter-spacing:-.6px;margin:12px 0}footer{padding:50px 5vw;display:flex;align-items:start;justify-content:space-between;gap:30px}footer>div{display:flex;gap:17px;flex-wrap:wrap;font-size:12px;max-width:470px}footer>small{font-size:10px;color:var(--muted)}.mobile-book{display:none}dialog{padding:45px 15px 15px;border:0;background:#fffdf8;border-radius:12px;max-width:94vw;max-height:92vh}dialog::backdrop{background:#12211ce6}dialog img{display:block;max-width:86vw;max-height:76vh;object-fit:contain}.close{position:absolute;right:14px;top:8px;background:transparent;border:0;font-weight:700;padding:4px 10px}
@media(min-width:1600px){.hero-copy{padding-top:95px;padding-bottom:100px}.hero{min-height:720px}}@media(max-width:1100px){nav{gap:16px;font-size:12px}.brand{font-size:17px}.brand img{width:52px;height:52px}.hero-copy{padding:55px 4.5vw 65px}h1{font-size:48px}.highlight{padding:27px}.class-grid{grid-template-columns:repeat(2,1fr)}.section{padding:75px 5vw}.email{font-size:15px!important}}@media(max-width:780px){html{scroll-padding-top:85px}.notice{font-size:9px}.notice span{display:block;margin:2px 0 0}.brand{font-size:15px}.brand img{width:45px;height:45px}header{padding:12px 5vw}.menu{display:block;background:none;border:1px solid #d2d5cb;border-radius:5px;padding:7px 10px;font-size:12px}nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:25px;box-shadow:0 10px 15px #0001;flex-direction:column;align-items:stretch;font-size:14px}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6vw 38px}h1{font-size:clamp(39px,7.2vw,58px);letter-spacing:-1.7px}.hero p{font-size:15px}.hero-photo{height:410px}.hero-photo img{object-position:50% 48%}.photo-tag{bottom:36px;right:20px}.highlights{grid-template-columns:1fr;margin:-15px 5vw 0;gap:14px}.highlight{min-height:0;padding:27px}.highlight h2{font-size:27px}.highlight .icon{display:none}.highlight p{max-width:500px}.section{padding:60px 6vw}h2{font-size:37px;letter-spacing:-1.3px}.story,.booking,.welcome,.faq,.location{grid-template-columns:1fr;gap:32px}.story-photo{max-width:520px}.story-copy{order:-1}.section-head{display:block;margin-bottom:27px}.section-head>p{margin-top:23px;max-width:550px}.class-grid{gap:12px}.class-card{padding:23px 18px}.class-card h3{font-size:24px}.class-number{font-size:8px}.photo-grid{grid-template-columns:repeat(2,1fr);gap:18px 12px}.booking-panel{padding:27px}.booking-panel h3{font-size:27px}.contact{padding:0}.contact h3{margin-top:0}.last{padding:60px 6vw}.last h2{font-size:48px}.boutique h2{font-size:25px}footer{flex-direction:column;padding:35px 6vw 95px;gap:24px}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;background:#263d37;color:white;z-index:15;text-align:center;padding:15px 12px calc(15px + env(safe-area-inset-bottom));font-size:13px;font-weight:700;box-shadow:0 -3px 15px #0002}}@media(max-width:420px){.class-grid{grid-template-columns:1fr}.hero-photo{height:350px}.button{padding:15px 19px;gap:15px;font-size:13px}.class-card h3{margin-top:20px}.photo-grid{gap:20px 12px}h1{font-size:40px}.contact-link{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* Bright studio identity, with a clear path from discovery to booking. */
:root{--ink:#172b38;--paper:#fff;--orange:#f18625;--coral:#bd3037;--blue:#087eae;--green:#24765d;--muted:#52626b;--line:#dce3e7}
.notice{background:var(--green)}header{background:#ffffffed;border-bottom:1px solid #edf0f2;padding:15px 4.5vw;min-height:108px}.brand{font-size:19px}.brand img{width:75px;height:75px}.brand small{font-size:7px;letter-spacing:1.6px}nav{font-size:12px;gap:24px;text-transform:uppercase;letter-spacing:.4px}.button{background:#bd5312;border-color:#bd5312;color:#fff;border-radius:8px;font-size:14px}.button:hover{background:#a8450c}.button.small{background:#bd5312;border-color:#bd5312}.secondary{background:var(--blue);border-color:var(--blue);color:#fff}.secondary:hover{background:#066b95}
.hero{position:relative;background:linear-gradient(100deg,#f4f9fc 0%,#f4f9fc 49%,#edf5f5 100%);grid-template-columns:1.1fr 1fr;min-height:650px}.hero-copy{padding:74px 2vw 110px 5.5vw;position:relative;z-index:1}.pill{background:var(--coral);color:#fff;font-size:10px;letter-spacing:1.5px;padding:8px 17px}h1{font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:clamp(44px,4.6vw,72px);letter-spacing:-2.6px;line-height:1.08;margin-top:28px}h1 em{color:#bc5415;font-style:normal}.hero p{max-width:485px;font-size:16px;line-height:1.8}.hero-location{border:1px solid #cbdce5;border-radius:30px;padding:9px 18px;font-weight:400}.hero:after{content:'';position:absolute;width:350px;height:350px;border-radius:50%;right:9%;top:40px;background:#d5eaf1;filter:blur(90px);opacity:.5;pointer-events:none}
.hero-logo{display:flex;align-items:center;justify-content:center;background:#f6f2eb;border:0;border-left:1px solid #e3e4dc;padding:45px 25px 80px;overflow:hidden}.studio-signature{position:relative;text-align:center;width:100%;color:#213e52}.flame-mark{display:block;position:relative;overflow:hidden;width:160px;height:250px;margin:0 auto -3px;mix-blend-mode:multiply;animation:float-flame 6s ease-in-out infinite}.flame-mark img{position:absolute;width:640px;height:640px;max-width:none;left:-240px;top:-80px}.flame-shadow{display:block;width:52px;height:5px;margin:0 auto 32px;border-radius:50%;background:#213e5224;filter:blur(4px);animation:float-shadow 6s ease-in-out infinite}.signature-name{font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,3.1vw,46px);line-height:1.2;letter-spacing:-1.3px}.signature-studio{font-size:11px;letter-spacing:4px;margin-top:15px}.signature-rule{display:flex;justify-content:center;gap:5px;margin:25px auto;width:100px}.signature-rule i{height:2px;flex:1;background:#315c77}.signature-rule i:nth-child(2){background:#a94c48}.signature-rule i:nth-child(3){background:#d48642}.signature-rule i:nth-child(4){background:#3d6656}.signature-motto{font-size:8px;letter-spacing:2.2px}.hero-logo .photo-tag{bottom:24px;right:0;left:0;text-align:center;background:none;color:#5c6c64;font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:15px;padding:0}

.hero-logo{background:transparent;border:0;z-index:1;padding-bottom:115px}.signature-name{font-size:clamp(30px,3.1vw,46px);color:#172b38}.hero-logo .photo-tag{bottom:90px}.signature-rule i{background:var(--blue)}.signature-rule i:nth-child(2){background:var(--coral)}.signature-rule i:nth-child(3){background:var(--orange)}.signature-rule i:nth-child(4){background:var(--green)}
.highlights{margin:-62px 4.5vw 0;gap:20px;border:0}.highlight{border-radius:14px;min-height:335px;padding:32px;color:#fff;box-shadow:0 18px 35px #173b4810;border:0}.highlight.blue{background:var(--blue)}.highlight.orange{background:#ba5313;color:#fff}.highlight.coral{background:var(--coral)}.highlight .eyebrow{color:#fff;opacity:.9}.highlight .icon{display:grid;color:var(--ink);width:48px;height:48px}.highlight h2{font-family:Arial,Helvetica,sans-serif;font-size:27px;font-weight:750;letter-spacing:-.7px;line-height:1.15}.highlight p{color:#fff;font-size:14px}.highlight .text-link{font-size:12px;border:0}.highlight:hover{transform:translateY(-4px)}
h2{font-family:Arial,Helvetica,sans-serif;font-weight:750;letter-spacing:-1.7px}h2 em{color:#b64d12;font-style:normal}.section{padding-top:100px;padding-bottom:100px}.story-photo img{border-radius:18px 18px 70px 18px}.photo-caption{background:var(--green);color:#fff;border-radius:7px}.story-copy .eyebrow{color:var(--blue)}.story-copy .text-link{color:var(--green)}.classes{background:#eef5f2}.class-card{border:0;border-top:5px solid var(--blue);padding:30px 24px;box-shadow:0 8px 24px #12382508;border-radius:10px}.class-card:nth-child(2){border-top-color:var(--orange)}.class-card:nth-child(3){border-top-color:var(--green)}.class-card:nth-child(4){border-top-color:var(--coral)}.class-card h3{font-size:27px}.class-number{font-size:9px;color:#496459}.booking{background:#153c54}.booking-panel{background:#ffffff0a;border-color:#ffffff50;border-radius:14px}.booking h2 em{color:#ffb264}.booking-panel .secondary{background:transparent;color:#fff}.gallery{background:#fff}.photo-open{border-radius:12px}.welcome{background:#fff0df}.steps li:before{color:#b64d12}.location{background:#eaf4ef}.last{background:var(--green);color:white}.last .button{background:#fff;border-color:#fff;color:#173c30}.boutique{background:#f2f6f9}.boutique h2{font-weight:600}.mobile-book{background:#08749f}footer{background:#153042;color:#fff}footer>small{color:#d4e0e6}footer .brand small{color:#d4e0e6}footer>div>a:hover{text-decoration:underline}
@keyframes float-flame{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes float-shadow{0%,100%{transform:scaleX(1);opacity:.65}50%{transform:scaleX(.75);opacity:.35}}

@media(max-width:1100px){nav{gap:14px;font-size:10px}.brand{font-size:16px}.brand img{width:58px;height:58px}.hero-copy{padding:65px 3vw 105px 5vw}h1{font-size:49px}.highlight{padding:26px}.highlight h2{font-size:25px}}
@media(max-width:780px){header{min-height:80px;padding:10px 5vw}.brand{font-size:15px}.brand img{width:52px;height:52px}nav{font-size:13px;gap:20px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6vw 25px}.hero p{font-size:15px}h1{font-size:clamp(40px,7.8vw,58px);letter-spacing:-1.8px}.hero-logo{min-height:430px;height:auto;padding:15px 25px 95px}.hero-logo .photo-tag{bottom:65px}.signature-name{font-size:34px}.flame-mark{height:235px}.flame-shadow{margin-bottom:23px}.signature-studio{margin-top:12px}.signature-rule{margin:20px auto}.highlights{grid-template-columns:1fr;margin:-25px 5vw 0;gap:14px}.highlight{padding:27px;min-height:0}.highlight .icon{display:grid;width:40px;height:40px;font-size:24px;margin-bottom:16px}.highlight h2{font-size:27px}.section{padding-top:60px;padding-bottom:60px}.story-copy{order:0}.story-photo{padding-right:0}.photo-caption{right:-6px;font-size:10px;padding:12px}.last h2{font-size:46px}.hero:after{display:none}.class-grid{grid-template-columns:repeat(2,1fr)}.contact-link.email{font-size:16px!important}}
@media(max-width:420px){.class-grid{grid-template-columns:1fr}.hero-location{font-size:11px;padding:8px 13px}.hero .actions{gap:10px}.hero .button{padding:15px 17px;font-size:13px}.signature-name{font-size:30px}}
@media(prefers-reduced-motion:reduce){.flame-mark,.flame-shadow{animation:none}}
.hero-logo{mix-blend-mode:multiply}.button,.button.small{background:#f18625;border-color:#f18625;color:#172b38}.button:hover{background:#ffa04b}.secondary{background:#087eae;border-color:#087eae;color:white}.secondary:hover{background:#066b95}.highlight.orange{background:#f18625;color:#172b38}.highlight.orange p,.highlight.orange .eyebrow{color:#172b38}.booking-panel .secondary{color:white}.last .button{background:white;border-color:white;color:#173c30}

/* Soft sage booking section, coordinated with the neighboring light sections. */
.booking{background:#eef5f2;color:var(--ink)}
.booking h2 em{color:#b64d12}
.booking p,.booking-panel small{color:var(--muted)}
.booking-panel{background:#fff;border-color:#d2e1d9}
.booking-panel .secondary{background:var(--blue);border-color:var(--blue);color:#fff}
.booking-panel .secondary:hover{background:#066b95}

/* Studio golden-hour photo behind the floating hero logo. */
.hero-logo{background:linear-gradient(180deg,rgba(246,249,247,.62),rgba(246,249,247,.76)),url("assets/studio-golden-hour-clean.png") 58% 48%/cover no-repeat;mix-blend-mode:normal}
.hero-logo .photo-tag{color:#344c43}

/* Black studio theme with warm flame and jewel-color accents. */
:root{color-scheme:dark;--ink:#f5f3ee;--paper:#0b0d0e;--muted:#b6c0c4;--line:#2d3336}
body{background:var(--paper);color:var(--ink)}
header{background:#0b0d0ef2;border-bottom-color:#262d30}
.brand img{filter:invert(1);mix-blend-mode:screen}
.notice{background:#15513e}
.hero{background:linear-gradient(110deg,#0b0d0e 15%,#111a1d 100%)}
.hero:after{background:#087eae;opacity:.12}
h1 em,h2 em,.booking h2 em{color:#f7a25a}
.hero-location{border-color:#39464b;color:#d2dcdf}
.hero-logo{background:linear-gradient(180deg,rgba(6,12,15,.56),rgba(6,12,15,.78)),url("assets/studio-golden-hour-clean.png") 58% 48%/cover no-repeat;mix-blend-mode:normal}
.studio-signature,.signature-name{color:#fff9ee}
.flame-mark{mix-blend-mode:screen}
.flame-mark img{filter:invert(1)}
.flame-shadow{background:#f7a25a55}
.hero-logo .photo-tag{color:#e0ded2}
.button,.button.small{color:#171c1e}
.secondary{color:#fff}
.highlight{box-shadow:0 18px 40px #0004}
.highlight .icon{color:#172b38}
.highlight.orange,.highlight.orange p,.highlight.orange .eyebrow{color:#172b38}
.classes,.booking{background:#11191a}
.class-card{background:#191f21;box-shadow:none}
.class-number{color:#a8c9bb}
.story-copy .eyebrow{color:#6dc9eb}
.story-copy .text-link{color:#88cfad}
.booking{color:var(--ink);border-top:1px solid #263536;border-bottom:1px solid #263536}
.booking p,.booking-panel small{color:var(--muted)}
.booking-panel{background:#191f21;border-color:#374347}
.gallery,.faq{background:#0b0d0e}
.welcome{background:#1e1712}
.steps li{border-color:#49362b}
.steps li:before{color:#f7a25a}
.location{background:#111d19}
.location-note{border-color:#334b40}
.contact-link small{color:var(--muted)}
.last{background:#174b3c}
.last .button{background:#f5f3ee;border-color:#f5f3ee;color:#173c30}
.boutique{background:#111619}
footer{background:#080a0b;border-top:1px solid #242c2f}
.menu{color:var(--ink);border-color:#39464b}
.photo-caption{background:#1c684e}
summary:after{color:#f7a25a}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#71c9ed}
dialog{background:#141a1d;color:var(--ink)}
.close{color:var(--ink)}

/* Teal accents and one full-width studio photograph across the hero. */
:root{--teal:#087f7c;--blue:var(--teal);--green:var(--teal)}
.notice,.last{background:#115a56}
.hero{background:linear-gradient(90deg,rgba(5,12,14,.88) 0%,rgba(5,12,14,.76) 40%,rgba(5,12,14,.48) 100%),url("assets/studio-golden-hour-clean.png") center 48%/cover no-repeat}
.hero:after{display:none}
.hero-logo{background:transparent}
.secondary,.booking-panel .secondary{background:var(--teal);border-color:var(--teal);color:#fff}
.secondary:hover,.booking-panel .secondary:hover{background:#066764}
.hero .button.secondary{color:#fff}
.story-copy .eyebrow,.story-copy .text-link{color:#64d2c9}
.class-number{color:#a1d3cc}
.classes,.booking{background:#111b1b}
.location{background:#11201f}
.location-note{border-color:#30514e}
.photo-caption,.mobile-book{background:var(--teal)}
.hero-location{border-color:#5a7b77;color:#e2efed}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#64d2c9}
@media(max-width:780px){.hero{background:linear-gradient(180deg,rgba(5,12,14,.87) 0%,rgba(5,12,14,.71) 48%,rgba(5,12,14,.48) 100%),url("assets/studio-golden-hour-clean.png") 58% center/cover no-repeat}.hero-logo{background:transparent}}
.hero-logo{mix-blend-mode:screen}

/* Red accents throughout the black-and-teal studio theme. */
:root{--orange:#d52f3a}
.button,.button.small{background:#d52f3a;border-color:#d52f3a;color:#fff}
.button:hover{background:#b82430}
.secondary,.booking-panel .secondary{background:var(--teal);border-color:var(--teal);color:#fff}
.secondary:hover,.booking-panel .secondary:hover{background:#066764}
.highlight.orange{background:#d52f3a;color:#fff}
.highlight.orange p,.highlight.orange .eyebrow{color:#fff}
h1 em,h2 em,.booking h2 em,.steps li:before,summary:after{color:#ff7b80}
.flame-shadow{background:#ff7b8055}
.last .button{background:#f5f3ee;border-color:#f5f3ee;color:#173c30}

.photo-grid .gallery-logo .photo-open{background:#fffdf8}.photo-grid .gallery-logo img{object-fit:contain;background:#fffdf8}

.boutique-logo{display:block;width:min(440px,100%);height:auto;margin:26px auto 0;border-radius:12px}

/* Fire orange for the Your Practice feature card. */
.highlight.orange{background:#f47721;color:#172b38}
.highlight.orange p,.highlight.orange .eyebrow{color:#172b38}

.hero-copy .eyebrow.pill{text-transform:none}

/* Keep the embedded Mindbody schedule readable within the studio theme. */
.schedule-embed{grid-column:1/-1;min-width:0;width:100%;background:#fff;color:#242824;color-scheme:light;border-radius:12px;padding:24px;overflow:hidden}
.schedule-embed .mindbody-widget{min-height:340px}
.schedule-embed iframe{max-width:100%;border:0}
@media(max-width:780px){.schedule-embed{padding:12px;border-radius:8px}}

/* Three studio highlights, with the rest of the gallery available on demand. */
.gallery-preview{grid-template-columns:repeat(3,minmax(0,1fr))}
.gallery-preview .photo-open img{aspect-ratio:4/3;object-position:50% 58%}
.gallery-preview figure:first-child img{object-position:50% 54%}
.gallery-more,.gallery-more:first-child{padding:0;margin-top:32px;border:0;text-align:center}
.gallery-more>summary{width:fit-content;margin:0 auto;padding:15px 25px;font-size:14px;list-style:none}
.gallery-more>summary::after{display:none}
.gallery-more>summary .gallery-open-label,.gallery-more>summary .gallery-close-label{display:flex;align-items:center;gap:24px}
.gallery-more>summary .gallery-close-label{display:none}
.gallery-more[open]>summary .gallery-open-label{display:none}
.gallery-more[open]>summary .gallery-close-label{display:flex}
.gallery-rest{margin-top:36px;text-align:left}
@media(max-width:600px){.gallery-preview{grid-template-columns:1fr;gap:22px}.gallery-more{margin-top:26px}}

/* Attributed, short excerpts from the studio's Google reviews. */
.reviews{background:#0d1515;border-top:1px solid #263536}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.review-card{display:flex;flex-direction:column;padding:30px;border:1px solid #344443;border-radius:12px;background:#152120}
.review-stars{color:#f6aa61;font-size:20px;letter-spacing:3px;line-height:1}
.review-card blockquote{margin:24px 0 30px;flex:1}
.review-card blockquote p{color:var(--ink);font-size:21px;line-height:1.5;margin:0}
.review-card figcaption{margin:0;font-size:14px;line-height:1.6}
.review-card figcaption strong{display:block;color:var(--ink)}
.review-card figcaption span{display:block;color:var(--muted);font-size:12px;font-weight:400}
.reviews-source{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;flex-wrap:wrap}
.reviews-source p{font-size:12px;margin:0}
.reviews-source a{color:#64d2c9}
@media(max-width:780px){.review-grid{grid-template-columns:1fr}.review-card{padding:26px}.review-card blockquote p{font-size:20px}}

.amy-story{display:grid;grid-template-columns:.85fr 1.15fr;gap:6vw;align-items:center;background:#111d1c;border-top:1px solid #29413e;border-bottom:1px solid #29413e;padding-top:80px;padding-bottom:80px}
.amy-photo{position:relative;min-width:0}.amy-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 50%;border-radius:14px}.amy-photo>span{display:block;margin-top:17px;font-size:10px;letter-spacing:2px;color:#91cfc6}
.amy-copy .eyebrow{color:#83d1c8}.amy-copy h2{font-size:clamp(38px,4vw,58px);margin:15px 0 18px}.amy-copy .amy-intro{font-size:18px;line-height:1.5;color:#e2c69e;margin-bottom:24px}.amy-copy p{font-size:14px;line-height:1.8;margin-bottom:17px}.amy-copy p:last-child{margin-bottom:0}
@media(max-width:780px){.amy-story{grid-template-columns:1fr;gap:36px}.amy-photo{max-width:480px}.amy-photo img{aspect-ratio:1/1}.amy-copy h2{font-size:42px}}


.teachers-section{padding:0 6vw 64px;background:var(--paper)}
.teachers-disclosure,.teachers-disclosure:first-child{padding:0;border:0}
.teachers-disclosure>summary{display:inline-block;color:#237b58;font-size:15px;font-weight:700;padding:10px 0;border-bottom:1px solid currentColor}
.teachers-disclosure>summary:after{content:none}
.teachers-open>span,.teachers-hide>span{margin-left:14px}
.teachers-hide,.teachers-disclosure[open] .teachers-open{display:none}
.teachers-disclosure[open] .teachers-hide{display:inline}
.teachers-content{padding-top:38px}
.teachers-content>p{max-width:610px;margin-bottom:32px}
.teachers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.teacher-card{border:1px solid var(--line);background:#fffdf8;border-radius:12px;padding:26px;display:grid;grid-template-columns:100px minmax(0,1fr);gap:22px;align-items:start}
.teacher-card>img{width:100px;height:125px;object-fit:cover;border-radius:8px}
.teacher-card h3{font-size:23px;line-height:1.2;margin:0 0 17px;letter-spacing:-.4px}
.teacher-card p{font-size:14px;line-height:1.75;margin:0 0 14px}
.teacher-card p:last-child{margin-bottom:0}
@media(max-width:1000px){.teachers-grid{grid-template-columns:1fr}}
@media(max-width:480px){.teachers-section{padding-bottom:44px}.teacher-card{grid-template-columns:1fr;padding:22px;gap:20px}.teacher-card>img{width:110px;height:138px}}

/* Keep the studio photograph upright in its existing square frame. */
#about .story-photo>img{transform:none}
/* Match the approved teacher cards to the studio’s dark theme. */
.teacher-card{background:#152120}.teachers-disclosure>summary{color:#83d1c8}
