:root{--ink:#211d1b;--cream:#f1eee8;--paper:#fbfaf7;--red:#bd4331;--gold:#d6ad45;--line:rgba(33,29,27,.16);--muted:#6b625c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Myriad Pro","Myriad",Arial,sans-serif;font-size:16px}a{color:inherit}img{display:block;max-width:100%}
.topbar{position:absolute;z-index:5;top:0;left:0;right:0;height:104px;padding:0 clamp(20px,4vw,72px);display:flex;align-items:center;justify-content:space-between;color:white;border-bottom:1px solid rgba(255,255,255,.24)}.brand{text-decoration:none;display:inline-flex;align-items:center}.brand img{width:88px;height:88px;object-fit:contain}.topbar nav{display:flex;align-items:center;gap:26px}.topbar nav a{text-decoration:none;font-size:.9rem}.nav-cta{padding:11px 19px;border:1px solid rgba(255,255,255,.7);border-radius:99px}.menu-toggle{display:none}
.hero{position:relative;min-height:760px;height:100svh;overflow:hidden;color:white}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 46%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,10,6,.9) 0%,rgba(18,10,6,.54) 45%,rgba(18,10,6,.12) 78%),linear-gradient(0deg,rgba(18,10,6,.35),transparent 45%)}.hero-copy{position:absolute;z-index:2;left:clamp(24px,8vw,130px);top:50%;transform:translateY(-42%);max-width:700px}.eyebrow,.section-tag{text-transform:uppercase;letter-spacing:.2em;font-weight:700;font-size:.73rem}.eyebrow{color:var(--gold)}
.hero h1,.intro-section h2,.space-copy h2,.workshops h2,.reviews h2,.contact h2{font-family:"Lobster Two",cursive;font-weight:700;letter-spacing:-.025em;line-height:.96}.hero h1{font-size:clamp(4rem,8vw,8.3rem);margin:16px 0 26px}.hero h1 em{color:var(--gold);font-weight:700}.intro{max-width:525px;font-size:1.15rem;line-height:1.65;color:rgba(255,255,255,.9)}.actions{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 22px;border-radius:2px;text-decoration:none;font-weight:700;font-size:.88rem}.button.primary{background:var(--red);color:white}.button.ghost{border:1px solid rgba(255,255,255,.6);color:white}.hero-note{position:absolute;z-index:2;right:clamp(24px,5vw,76px);bottom:48px;padding-left:20px;border-left:2px solid var(--gold);display:flex;flex-direction:column;font-size:.8rem}.hero-note strong{font-size:1rem;margin-top:5px}
.section-tag{color:var(--red)}.intro-section{padding:clamp(90px,11vw,160px) clamp(24px,8vw,130px) clamp(70px,8vw,105px)}.intro-section h2{font-size:clamp(3.2rem,6.5vw,6.8rem);max-width:1050px;margin:22px 0 34px}.section-intro{max-width:690px;margin:0 0 0 auto;color:var(--muted);font-size:1.18rem;line-height:1.7}
.spaces{padding:0 clamp(24px,6vw,100px) clamp(100px,12vw,180px)}.space-card{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--cream);margin-bottom:42px}.space-card.reverse{background:var(--red);color:white}.space-card.reverse .space-photo{order:2}.space-card.reverse .space-number,.space-card.reverse dt{color:var(--gold)}.space-card.reverse .space-copy>p:not(.space-number){color:rgba(255,255,255,.82)}.space-card.reverse dl>div{border-color:rgba(255,255,255,.25)}.space-card.reverse .text-link{border-color:rgba(255,255,255,.65)}.space-photo{min-height:680px;overflow:hidden}.space-photo img{width:100%;height:100%;object-fit:cover}.space-copy{padding:clamp(50px,6vw,95px);display:flex;flex-direction:column;justify-content:center}.space-number{text-transform:uppercase;letter-spacing:.18em;color:var(--red);font-size:.72rem;font-weight:700}.space-copy h2{font-size:clamp(3.4rem,5.7vw,6.2rem);margin:18px 0 26px}.space-copy>p:not(.space-number){color:var(--muted);line-height:1.7;max-width:520px}.space-copy dl{margin:28px 0 0}.space-copy dl>div{display:flex;justify-content:space-between;gap:25px;padding:17px 0;border-bottom:1px solid var(--line)}.space-copy dt{text-transform:uppercase;letter-spacing:.12em;color:var(--red);font-size:.68rem;font-weight:700}.space-copy dd{margin:0;text-align:right;font-size:.92rem}.card-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:34px}.text-link{text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:7px;font-weight:700;font-size:.88rem}
.workshops{padding:clamp(90px,10vw,150px) clamp(24px,8vw,130px);background:var(--ink);color:white}.workshops .section-tag{color:#e5c777}.workshops-intro{display:grid;grid-template-columns:1fr .72fr;gap:clamp(45px,8vw,120px);align-items:center}.workshops-intro h2{font-size:clamp(3.7rem,6vw,6.4rem);margin:20px 0 28px}.workshops-intro>div>p:not(.section-tag){color:rgba(255,255,255,.7);line-height:1.75;max-width:560px}.workshops-intro .button{margin-top:24px}.workshops-intro>img{width:100%;height:610px;object-fit:cover}.workshop-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.17);margin-top:72px;border:1px solid rgba(255,255,255,.17)}.workshop-card{padding:clamp(32px,4vw,58px);background:#272321}.workshop-number{margin:0 0 30px;color:#e5c777;font-size:.72rem;letter-spacing:.18em}.workshop-card h3{margin:0 0 18px;font:700 clamp(2rem,3vw,3rem)/1.05 "Lobster Two",cursive}.workshop-card>p:not(.workshop-number){color:rgba(255,255,255,.68);line-height:1.65}.workshop-card h4{margin:28px 0 14px;text-transform:uppercase;letter-spacing:.15em;font-size:.7rem;color:#e5c777}.workshop-card ul{padding-left:20px;margin:0 0 30px;color:rgba(255,255,255,.82);line-height:1.7}.workshop-card a{display:inline-block;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:6px;font-weight:700;font-size:.88rem}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:10px;background:var(--paper)}.gallery figure{position:relative;height:70vh;min-height:520px;margin:0;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover}.gallery figcaption{position:absolute;left:22px;bottom:20px;background:var(--paper);padding:10px 14px;text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;font-weight:700}
.reviews{padding:clamp(85px,10vw,145px) clamp(24px,8vw,130px);background:#efede8;display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(45px,8vw,120px);align-items:center}.reviews h2{font-size:clamp(3rem,5.7vw,6rem);margin:20px 0 28px}.reviews-copy>p:not(.section-tag){color:var(--muted);line-height:1.7;max-width:470px}.reviews-link{display:inline-flex;gap:28px;margin-top:26px;padding-bottom:8px;border-bottom:1px solid var(--ink);text-decoration:none;font-weight:700}.reviews-widget{min-width:0}.reviews-widget noscript a{display:block;background:white;padding:30px;text-align:center;text-decoration:none;box-shadow:0 18px 55px rgba(33,29,27,.09)}
.contact{padding:clamp(90px,11vw,160px) clamp(24px,8vw,130px);display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--cream)}.contact h2{font-size:clamp(3.5rem,6.2vw,6.7rem);margin:22px 0}.contact-options a{display:flex;align-items:center;justify-content:space-between;text-decoration:none;border-bottom:1px solid var(--line);padding:26px 0;font:700 clamp(1.25rem,2vw,1.8rem) "Lobster Two",cursive}.contact-options b{color:var(--red)}
footer{padding:28px clamp(24px,5vw,72px);display:flex;align-items:center;gap:30px;background:var(--ink);color:white}.footer-brand img{width:74px;height:74px}footer p{font-size:.76rem;color:rgba(255,255,255,.65)}.instagram-link{color:var(--gold);font-weight:700;text-decoration:none;border-bottom:1px solid rgba(255,211,91,.55);padding-bottom:4px}.instagram-link span{margin-left:7px}.footer-city{margin-left:auto}
@media(max-width:1050px){.topbar nav{gap:16px}.space-copy{padding:50px}.footer-city{margin-left:0}footer{flex-wrap:wrap}}
@media(max-width:760px){.topbar{height:82px}.brand img{width:68px;height:68px}.menu-toggle{display:block;background:none;color:white;border:1px solid rgba(255,255,255,.5);border-radius:99px;padding:9px 14px}.topbar nav{display:none;position:absolute;top:82px;left:0;right:0;padding:22px;background:var(--ink);flex-direction:column;align-items:stretch;gap:18px}.topbar nav.open{display:flex}.hero{min-height:720px}.hero>img{object-position:54% center}.hero-copy{top:46%;transform:translateY(-40%)}.hero h1{font-size:3.8rem}.hero-note{bottom:24px;left:24px;right:auto}.intro-section{padding-bottom:58px}.section-intro{margin:0}.space-card{grid-template-columns:1fr}.space-card.reverse .space-photo{order:0}.space-photo{min-height:500px;height:70vh}.space-copy{padding:58px 24px 66px}.space-copy dl>div{align-items:flex-start}.workshops{padding-left:24px;padding-right:24px}.workshops-intro{grid-template-columns:1fr}.workshops-intro>img{height:520px}.workshop-cards{grid-template-columns:1fr;margin-top:48px}.gallery{grid-template-columns:1fr}.gallery figure{height:68vh;min-height:480px}.reviews{grid-template-columns:1fr;gap:45px}.contact{grid-template-columns:1fr;gap:35px}footer{align-items:flex-start;flex-direction:column;gap:14px}footer p{margin:0}.footer-brand img{width:68px;height:68px}}
@media(prefers-reduced-motion:no-preference){.button,.nav-cta,.contact-options a{transition:transform .2s,background .2s}.button:hover,.nav-cta:hover,.contact-options a:hover{transform:translateY(-2px)}.hero>img{animation:reveal 1.2s ease-out both}@keyframes reveal{from{transform:scale(1.04);opacity:.7}to{transform:scale(1);opacity:1}}}
