:root{
  --black:#070507;
  --black-2:#121012;
  --pink:#f4b6c8;
  --pink-hot:#d84f83;
  --gold:#d8b15a;
  --cream:#fff7ed;
  --muted:#c8bfc3;
  --line:rgba(216,177,90,.28);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--black);color:var(--cream)}
a{text-decoration:none;color:inherit}.topbar{position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:18px 6vw;background:rgba(7,5,7,.72);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.06)}
.brand-mark{width:54px;height:54px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-family:Georgia,serif;font-weight:800;letter-spacing:-.04em;background:radial-gradient(circle at 30% 20%,rgba(244,182,200,.25),transparent 42%),#0b080b}.brand-mark.small{width:42px;height:42px;margin:auto}.topbar nav{display:flex;gap:22px;font-size:14px;color:#f3e7d9}.topbar nav a:hover{color:var(--pink)}
.hero{min-height:100vh;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden;background:linear-gradient(rgba(0,0,0,.44),rgba(0,0,0,.78)),url('https://images.unsplash.com/photo-1511795409834-ef04bbd61622?auto=format&fit=crop&w=1800&q=80') center/cover}.hero:before{content:"";position:absolute;inset:10%;border:1px solid rgba(216,177,90,.35);pointer-events:none}.hero-content{position:relative;z-index:2;max-width:980px;padding:120px 24px 70px}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.24em;color:var(--gold);font-size:12px;font-weight:800}.logo-lockup{margin:22px auto}.monogram{width:96px;height:96px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;font-family:Georgia,serif;font-size:42px;color:var(--gold);background:rgba(0,0,0,.45);box-shadow:0 0 80px rgba(216,177,90,.2)}h1{font-family:Georgia,serif;font-size:clamp(58px,10vw,130px);line-height:.84;margin:0;color:#fff;text-shadow:0 10px 50px rgba(0,0,0,.6)}.tagline{font-size:clamp(20px,3vw,32px);margin:24px auto 34px;color:#ffeef4}.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border-radius:999px;font-weight:800;border:1px solid transparent;transition:.25s}.btn.gold{background:linear-gradient(135deg,#f1d17a,var(--gold));color:#1b1307}.btn.outline{border-color:rgba(255,255,255,.35);color:white;background:rgba(255,255,255,.07)}.btn.dark{background:#0b080b;color:white;border-color:var(--gold)}.btn.full{width:100%;margin-top:8px}.btn:hover{transform:translateY(-2px)}.notice{margin:26px auto 0;border:1px solid var(--line);display:inline-block;padding:11px 18px;border-radius:999px;background:rgba(0,0,0,.38);color:#f5dce6}
.section{padding:86px 7vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;background:linear-gradient(135deg,#0a080a,#180e14)}h2{font-family:Georgia,serif;font-size:clamp(32px,5vw,58px);line-height:1;margin:8px 0 18px}.intro p:last-child{font-size:20px;line-height:1.65;color:var(--muted)}.center{text-align:center}.services{background:#0c090c}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px}.service-grid article,.booking-card,.quote-card,.steps div{background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025));border:1px solid rgba(216,177,90,.25);border-radius:26px;padding:26px;box-shadow:0 22px 60px rgba(0,0,0,.22)}.service-grid span{color:var(--pink);font-weight:900}.service-grid h3,.booking-card h3,.steps h3{font-family:Georgia,serif;font-size:25px;margin:10px 0}.service-grid p,.booking-copy p,.booking-copy li,.steps p,.muted{color:var(--muted);line-height:1.55}.gallery-section{background:linear-gradient(180deg,#120d12,#090709)}.gallery-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:26px 0}.tab{border:1px solid var(--line);background:transparent;color:var(--cream);padding:10px 16px;border-radius:999px;cursor:pointer}.tab.active{background:var(--pink-hot);border-color:var(--pink-hot);color:white}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-grid img{width:100%;height:260px;object-fit:cover;border-radius:24px;border:1px solid rgba(216,177,90,.22);filter:saturate(.95) contrast(1.05)}.gallery-grid img.hide{display:none}.booking-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center;background:#0a070a}.booking-copy ul{padding-left:20px}.booking-card label{display:block;color:#f5e6d0;font-weight:700;margin:13px 0 7px}.booking-card input,.booking-card select,.quote-card input,.quote-card textarea{width:100%;padding:14px 15px;border-radius:14px;border:1px solid rgba(216,177,90,.22);background:#151015;color:white;outline:none}.payment-choice{display:grid;gap:7px;margin:14px 0;color:var(--muted)}.payment-choice label{font-weight:500;margin:0}.quote-section{background:linear-gradient(135deg,#1a0d14,#080608)}.quote-card{max-width:900px;margin:auto}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.quote-card textarea{min-height:130px;margin-bottom:14px}.success{display:none;color:#90f0ba;font-weight:800}.process{background:#0b080b}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px}.steps strong{width:44px;height:44px;border-radius:50%;background:var(--gold);color:#171006;display:grid;place-items:center}.contact{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(90deg,#150d12,#241019)}footer{text-align:center;padding:45px 20px;border-top:1px solid var(--line);background:#050405}.creator{color:var(--gold);font-weight:800}
@media(max-width:900px){.topbar nav{display:none}.intro,.booking-wrap{grid-template-columns:1fr}.service-grid,.gallery-grid,.steps{grid-template-columns:1fr 1fr}.contact{display:block}.contact .btn{margin-top:20px}.two-col{grid-template-columns:1fr}}
@media(max-width:560px){.section{padding:68px 5vw}.service-grid,.gallery-grid,.steps{grid-template-columns:1fr}.gallery-grid img{height:235px}.hero:before{inset:5%}.notice{border-radius:18px}}
