:root{--navy:#071322;--navy2:#0c1d31;--gold:#d3aa5c;--cream:#f6f1e7;--ink:#18202a;--muted:#64707d;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream);font-size:16px}a{color:inherit;text-decoration:none}.nav{height:82px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(7,19,34,.97);color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(211,170,92,.2)}.brand{display:flex;align-items:center;gap:12px;font-family:'Playfair Display',serif;font-weight:700;line-height:1.05}.brand small{display:block;font-family:'DM Sans';text-transform:uppercase;letter-spacing:.16em;font-size:.58rem;color:var(--gold);margin-top:4px}.mark{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--gold);border-radius:50%;font-family:'Playfair Display';color:var(--gold)}nav{display:flex;gap:30px;font-size:.9rem}nav a:hover{color:var(--gold)}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--gold);color:#081421;padding:15px 24px;font-weight:700;border:none;cursor:pointer;transition:.2s}.button:hover{background:#e7c67f;transform:translateY(-1px)}.button-small{padding:11px 18px;font-size:.86rem}.hero{min-height:calc(100vh - 82px);position:relative;display:flex;align-items:center;color:white;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,12,22,.96) 0%,rgba(4,12,22,.72) 38%,rgba(4,12,22,.1) 75%),linear-gradient(0deg,rgba(4,12,22,.55),transparent 45%)}.hero-copy{position:relative;z-index:2;width:min(680px,90%);margin-left:6vw;padding:70px 0}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 20px}.hero h1,.section h2,.team-section h2,.contact h2{font-family:'Playfair Display',serif}.hero h1{font-size:clamp(3.2rem,6.2vw,6.8rem);line-height:.98;margin:0 0 28px;letter-spacing:-.035em}.hero h1 em{font-weight:600;color:var(--gold)}.hero-copy>p:not(.eyebrow){max-width:610px;font-size:1.14rem;line-height:1.7;color:#dce2e8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}.text-link{font-weight:600}.text-link span{color:var(--gold);padding-left:7px}.hero-note{position:absolute;z-index:2;right:5vw;bottom:32px;padding:18px 24px;border-left:2px solid var(--gold);background:rgba(7,19,34,.7);backdrop-filter:blur(7px);display:flex;flex-direction:column;gap:5px}.hero-note span{font-size:.82rem;color:#c9d0d8}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);color:white;padding:30px 5vw;border-top:1px solid rgba(211,170,92,.25)}.trust-strip div{padding:0 25px;border-right:1px solid rgba(255,255,255,.12)}.trust-strip div:last-child{border:0}.trust-strip b,.trust-strip span{display:block}.trust-strip b{font-family:'Playfair Display';font-size:1.35rem;color:var(--gold)}.trust-strip span{font-size:.82rem;color:#aeb8c3;margin-top:6px}.section{padding:100px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start;background:var(--cream)}.section h2,.team-section h2,.contact h2{font-size:clamp(2.5rem,4.2vw,4.7rem);line-height:1.05;margin:0}.section>div:last-child{font-size:1.06rem;line-height:1.8;color:#53606c;padding-top:34px}.gold{color:#9d752e}.inline-link{color:#8a6320;font-weight:700;display:inline-block;margin-top:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c9c1b3;margin:0 5vw 100px}.cards article{background:white;padding:45px}.cards article span{font-family:'Playfair Display';font-size:1.1rem;color:#ad823b}.cards h3{font-family:'Playfair Display';font-size:1.65rem;margin:45px 0 14px}.cards p{line-height:1.7;color:var(--muted)}.team-section{background:var(--navy2);color:#fff;padding:110px 7vw;display:grid;grid-template-columns:1.25fr .75fr;gap:10vw;align-items:center}.team-copy>p:not(.eyebrow){line-height:1.75;color:#bdc7d1;font-size:1.05rem}.team-section ul{list-style:none;padding:0;margin:30px 0}.team-section li{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}.team-section li:before{content:'✓';color:var(--gold);padding-right:12px}.team-section aside{border:1px solid rgba(211,170,92,.5);padding:48px;background:rgba(255,255,255,.03)}.team-section aside p,.team-section aside span{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}blockquote{font-family:'Playfair Display';font-size:1.85rem;line-height:1.45;margin:28px 0}.about{background:#fff}.contact{padding:100px 7vw;background:#d7ad63;display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.contact .eyebrow{color:#4f360c}.contact>div>p:last-child{line-height:1.7}.contact form{background:#fff;padding:38px;box-shadow:0 18px 45px rgba(35,25,10,.18)}label{display:block;font-size:.83rem;font-weight:700;margin-top:18px}input,textarea{display:block;width:100%;margin-top:8px;border:1px solid #d9d5ce;padding:13px 14px;font:inherit;background:#fbfaf8;border-radius:0}input:focus,textarea:focus{outline:2px solid var(--gold);border-color:transparent}.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice button{padding:12px;border:1px solid #cfc8bd;background:white;font:inherit;cursor:pointer}.choice button.active{background:var(--navy);color:white;border-color:var(--navy)}.submit{width:100%;margin-top:22px}.form-note{font-size:.75rem;color:var(--muted);text-align:center;margin:12px 0 0}footer{background:#040c16;color:#fff;padding:40px 5vw;display:flex;justify-content:space-between;align-items:center}footer p{color:#8f9aa6;font-size:.8rem}footer>a{color:var(--gold);font-size:.82rem}@media(max-width:800px){.nav{height:72px;padding:0 4vw}.nav nav{display:none}.nav .button-small{padding:9px 12px}.hero{min-height:760px}.hero-copy{margin:0 auto;padding:80px 0 190px}.hero h1{font-size:clamp(3.1rem,15vw,5rem)}.hero-shade{background:linear-gradient(90deg,rgba(4,12,22,.92),rgba(4,12,22,.3)),linear-gradient(0deg,rgba(4,12,22,.75),transparent 60%)}.hero-note{left:5vw;right:5vw}.trust-strip{grid-template-columns:1fr 1fr;gap:25px}.trust-strip div{border:0;padding:0}.section,.team-section,.contact{grid-template-columns:1fr;gap:34px;padding:75px 6vw}.section>div:last-child{padding-top:0}.cards{grid-template-columns:1fr;margin:0 5vw 75px}.cards article{padding:34px}.cards h3{margin-top:22px}.team-section aside{padding:32px}.split{grid-template-columns:1fr}footer{gap:25px;align-items:flex-start;flex-direction:column}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}}

.promo-bar{background:#0c1d31;color:#fff;min-height:58px;padding:10px 5vw;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(211,170,92,.45)}.promo-bar>div{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.promo-bar strong{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--gold)}.promo-bar>div>span:not(.promo-live){font-size:.86rem;color:#dce2e8}.promo-live{background:var(--gold);color:#071322;padding:7px 10px;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.promo-bar>a{color:var(--gold);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border-bottom:1px solid var(--gold);padding-bottom:3px}.workshop-offer{padding:90px 7vw;background:#fff;display:grid;grid-template-columns:160px 1fr 280px;gap:5vw;align-items:center;border-bottom:1px solid #e6dfd3}.offer-date{width:150px;height:180px;background:var(--navy);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;border-top:7px solid var(--gold);box-shadow:0 18px 42px rgba(7,19,34,.15)}.offer-date span,.offer-date small{font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.offer-date strong{font-family:'Playfair Display',serif;font-size:5.2rem;line-height:.9;margin:8px 0 12px}.offer-date small{font-size:.68rem}.offer-copy h2{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,4vw,4.5rem);line-height:1.03;margin:0 0 24px}.offer-copy>p:not(.eyebrow){color:#53606c;line-height:1.75;font-size:1.03rem;max-width:720px}.offer-includes{display:grid;grid-template-columns:1fr 1fr;gap:11px 22px;margin-top:26px}.offer-includes span{font-weight:700;font-size:.86rem}.offer-includes span:before{content:'✓';color:#9d752e;margin-right:9px}.offer-price{background:var(--cream);padding:30px;border:1px solid #ded5c7}.offer-price>p{font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0;color:#76551f}.offer-price>strong{display:block;font-family:'Playfair Display',serif;font-size:4rem;color:var(--navy);line-height:1;margin:10px 0}.offer-price>span{display:block;color:#596571;line-height:1.6;font-size:.9rem}.offer-price .button{width:100%;margin:24px 0 15px}.offer-price>small{display:block;color:#737b83;line-height:1.5;font-size:.68rem}

@media(max-width:900px){.workshop-offer{grid-template-columns:120px 1fr;gap:38px}.offer-date{width:120px;height:150px}.offer-date strong{font-size:4rem}.offer-price{grid-column:1/-1}}
@media(max-width:800px){.promo-bar{padding:12px 5vw;align-items:flex-start}.promo-bar>div{gap:7px}.promo-bar>div>span:not(.promo-live){width:100%}.promo-bar>a{padding-top:7px}.workshop-offer{padding:65px 6vw;grid-template-columns:1fr}.offer-date{width:110px;height:132px}.offer-date strong{font-size:3.4rem}.offer-price{grid-column:auto}.offer-includes{grid-template-columns:1fr}}
@media(max-width:520px){.promo-bar{display:block}.promo-bar>a{display:inline-block;margin-top:10px}.hero{min-height:700px}.hero-copy{padding-top:60px}.workshop-offer{padding-top:55px}}

.local-search-section{padding:100px 7vw;background:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:start}.local-search-section h2,.faq-section h2{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,4vw,4.4rem);line-height:1.05;margin:0}.local-search-section>div:last-child{color:#53606c;font-size:1.04rem;line-height:1.8;padding-top:30px}.faq-section{padding:100px 7vw;background:var(--cream);display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.faq-list{border-top:1px solid #cfc5b6}.faq-list details{border-bottom:1px solid #cfc5b6;padding:0}.faq-list summary{cursor:pointer;list-style:none;padding:23px 40px 23px 0;font-weight:700;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:4px;top:18px;font-family:'Playfair Display',serif;font-size:1.7rem;color:#9d752e}.faq-list details[open] summary:after{content:'–'}.faq-list p{color:#5d6873;line-height:1.7;margin:0;padding:0 35px 24px 0}.faq-list details[open] summary{color:#8a6320}@media(max-width:800px){.local-search-section,.faq-section{grid-template-columns:1fr;gap:34px;padding:75px 6vw}.local-search-section>div:last-child{padding-top:0}}
