@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&display=swap";:root{color:#1d2320;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f7f4ed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh;overflow:hidden}.site-header{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0e093e;border-bottom:1px solid #d29d0b;justify-content:space-between;align-items:center;padding:12px clamp(18px,4vw,56px);display:flex;position:fixed;top:0;left:0;right:0}.brand{align-items:center;height:64px;display:inline-flex}.brand img{object-fit:contain;background:0 0;width:300px;height:64px;padding:0;display:block}.nav-links{align-items:center;gap:28px;font-size:.95rem;font-weight:700;display:flex}.nav-links a{color:#f7f2e8}.nav-links a:hover{color:#ff4d72}.icon-button{color:#f7f2e8;cursor:pointer;background:#ffffff14;border:1px solid #fff3;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.menu-button{display:none}.hero{color:#fff;background:linear-gradient(90deg,#141612b8,#14161247),url(https://images.unsplash.com/photo-1618220179428-22790b461013?auto=format&fit=crop&w=1800&q=85) 50%/cover;align-items:end;min-height:88vh;padding:142px clamp(18px,5vw,72px) 34px;display:grid;position:relative}.hero-content{z-index:1;max-width:760px;position:relative}.eyebrow{color:#a52336;letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:900}.hero .eyebrow{color:#ff8787}.hero h1{margin:0;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(4rem,13vw,9.5rem);font-weight:700;line-height:.9}.hero p:not(.eyebrow){max-width:670px;margin:24px 0 0;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.55}.hero-actions,.contact-strip{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.primary-action,.secondary-action,.secondary-submit{cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-weight:850;display:inline-flex}.primary-action:disabled,.secondary-submit:disabled{cursor:not-allowed;opacity:.68}.primary-action{color:#fff;background:#a52336}.secondary-action{color:#fff;background:#ffffff29;border:1px solid #fff6}.hero-proof{z-index:1;flex-wrap:wrap;align-items:center;gap:12px;margin-top:64px;display:flex;position:relative}.hero-proof span,.intro-band div,.product-list span,.contact-strip a,.contact-strip span{align-items:center;gap:8px;display:inline-flex}.hero-proof span{color:#fff;background:#ffffff24;border:1px solid #fff3;min-height:42px;padding:0 14px}.intro-band{color:#fff;background:#1d2320;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.intro-band div{background:#ffffff0a;flex-direction:column;align-items:flex-start;gap:8px;min-height:120px;padding:28px clamp(18px,4vw,56px)}.intro-band strong{font-size:1.1rem}.intro-band span{color:#cbd3ce;line-height:1.45}.section,.booking-section{padding:84px clamp(18px,5vw,72px)}.section-heading{text-align:center;max-width:720px;margin:0 auto 34px}.section-heading.align-left{text-align:left;margin:0}.section-heading h2,.booking-copy h2,.contact-card h2{color:#1d2320;margin:0;font-size:clamp(2rem,4vw,3.5rem);line-height:1}.section-heading p:not(.eyebrow),.booking-copy p,.contact-card p,.step-card p{color:#5d6861;line-height:1.65}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.gallery-card{background:#fff;position:relative;overflow:hidden;box-shadow:0 20px 45px #1e221d14}.gallery-card img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform .24s,filter .24s;display:block}.gallery-summary{background:#fff;padding:18px}.gallery-card span{color:#a52336;text-transform:uppercase;font-size:.78rem;font-weight:900}.gallery-card h3,.step-card h3{margin:7px 0 0}.gallery-detail{color:#fff;opacity:0;pointer-events:none;background:linear-gradient(#0c100e6b,#0c100ef0 44%,#0c100efc);align-content:end;min-height:100%;padding:22px;transition:opacity .22s,transform .22s;display:grid;position:absolute;inset:0;transform:translateY(10px)}.gallery-detail span{color:#ffd6d9}.gallery-detail h3{color:#fff;margin:8px 0 0;font-size:1.25rem;line-height:1.15}.gallery-detail p{color:#f4f7f5;margin:12px 0 0;line-height:1.48}.gallery-detail ul{flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none;display:flex}.gallery-detail li{color:#fff;background:#ffffff24;border:1px solid #ffffff3d;padding:7px 9px;font-size:.8rem;font-weight:800}.gallery-card:hover img,.gallery-card:focus-within img{filter:saturate(.9);transform:scale(1.04)}.gallery-card:hover .gallery-detail,.gallery-card:focus-within .gallery-detail{opacity:1;transform:translateY(0)}.gallery-actions{justify-content:center;margin-top:28px;display:flex}.product-toggle{color:#fff;cursor:pointer;background:#060c1b;border:1px solid #c72b4b52;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-weight:850;display:inline-flex}.product-toggle:hover{background:#a52336}.service-layout,.booking-section,.contact-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,56px);display:grid}.product-list{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.product-list span{color:#344039;background:#fff;border:1px solid #1d23201a;min-height:40px;padding:0 12px;font-weight:750}.product-list svg{color:#a52336}.steps{gap:14px;display:grid}.step-card,.form-panel,.contact-card,.contact-form{background:#fff;border:1px solid #1d232017;box-shadow:0 18px 45px #1e221d14}.step-card{padding:26px}.step-card svg{color:#a52336}.booking-section{background:#e7ece5}.booking-copy{align-self:center}.contact-strip{flex-direction:column;align-items:stretch}.contact-strip a,.contact-strip span{color:#29332d;font-weight:750}.form-panel,.contact-form{gap:16px;padding:clamp(20px,4vw,34px);display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}label{color:#2e3732;gap:8px;font-size:.88rem;font-weight:850;display:grid}.field-title{width:fit-content;display:inline-flex}.required-mark{color:#a52336;font-weight:900}input,select,textarea{color:#1d2320;background:#f7f4ed;border:1px solid #1d232029;outline:none;width:100%;min-height:48px;padding:0 13px}textarea{resize:vertical;min-height:112px;padding:13px}input:focus,select:focus,textarea:focus{border-color:#a52336;box-shadow:0 0 0 3px #a5233624}.full-width{width:100%}.form-success,.form-error{color:#246f3a;background:#e7f4ea;border:1px solid #246f3a38;margin:0;padding:12px 14px;font-weight:800}.form-error{color:#a52336;background:#fff0f1;border-color:#a523363d}.contact-section{align-items:start}.contact-card{padding:clamp(22px,4vw,34px)}.business-hours{border-top:1px solid #1d23201f;gap:10px;margin-top:24px;padding-top:22px;display:grid}.business-hours span{color:#344039;font-weight:750}.secondary-submit{color:#fff;background:#1d2320}.site-footer{color:#fff;background:#1d2320;justify-content:space-between;align-items:center;gap:16px;padding:28px clamp(18px,5vw,72px);display:flex}.site-footer img{object-fit:contain;background:0 0;width:350px;height:76px;padding:0;display:block}.site-footer span{color:#cbd3ce}@media (width<=900px){.menu-button{display:inline-flex}.nav-links{background:#060c1b;border-bottom:1px solid #c72b4b59;flex-direction:column;align-items:stretch;gap:0;padding:12px 18px 18px;display:none;position:absolute;top:89px;left:0;right:0}.nav-links.open{display:flex}.nav-links a{padding:14px 0}.hero{min-height:82vh}.intro-band,.gallery-grid,.service-layout,.booking-section,.contact-section{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.site-header{padding:12px 16px}.brand small{display:none}.brand,.brand img{height:52px}.brand img{width:220px}.hero{min-height:86vh;padding:118px 18px 26px}.hero h1{font-size:clamp(3.8rem,20vw,5.5rem)}.hero-actions,.hero-proof,.site-footer{flex-direction:column;align-items:stretch}.primary-action,.secondary-action,.secondary-submit{width:100%}.section,.booking-section{padding:62px 18px}.gallery-grid,.field-grid{grid-template-columns:1fr}.gallery-card img{aspect-ratio:16/11}}
