:root {
  --ink: #0b0809;
  --paper: #f3eadc;
  --cream: #fff8ee;
  --gold: #d6a343;
  --gold-light: #f2d48a;
  --pink: #e8758d;
  --cyan: #56d8df;
  --muted: #8f8179;
  --line: rgba(243, 234, 220, .15);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--paper);
  background:
    radial-gradient(circle at 78% 14%, rgba(232,117,141,.10), transparent 23rem),
    radial-gradient(circle at 14% 65%, rgba(86,216,223,.07), transparent 24rem),
    var(--ink);
  font-family: Inter, system-ui, sans-serif;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .045;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
  z-index: 20;
}
.grain { position: fixed; inset: 0; pointer-events: none; border: 1px solid rgba(255,255,255,.04); z-index: 19; }

.topbar {
  height: 84px; display: flex; align-items: center; justify-content: space-between;
  padding: 0 clamp(20px, 6vw, 86px); border-bottom: 1px solid var(--line);
}
.brand-mini img { width: 150px; height: 54px; object-fit: contain; }
.topbar-note { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .16em; }
.topbar-note i { display:inline-block; width:7px; height:7px; margin-left:8px; border-radius:50%; background:var(--pink); box-shadow:0 0 12px var(--pink); }

.hero {
  position: relative; min-height: 690px; display:grid; grid-template-columns: 1.12fr .88fr;
  align-items:center; gap:30px; max-width:1250px; margin:auto; padding:72px clamp(20px, 6vw, 80px);
  overflow:hidden;
}
.hero-copy { position:relative; z-index:2; }
.eyebrow, .section-tag, .form-title span {
  font-size: 11px; letter-spacing: .18em; text-transform: uppercase; font-weight:800;
}
.eyebrow { color:var(--gold-light); }
.eyebrow span { color:var(--pink); margin:0 7px; }
h1, h2 { font-family:"Cormorant Garamond", Georgia, serif; font-weight:600; }
h1 { font-size:clamp(64px, 8vw, 112px); line-height:.79; letter-spacing:-.045em; margin:25px 0 35px; }
h1 em, h2 em { color:var(--gold-light); font-style:italic; }
.hero-text { max-width:650px; color:#c7bdb4; line-height:1.8; font-size:16px; }

.return-card {
  margin-top:32px; width:min(620px,100%); display:grid; grid-template-columns:1fr auto 1fr;
  align-items:center; gap:22px; padding:22px 24px; border:1px solid rgba(214,163,67,.35);
  background:linear-gradient(110deg,rgba(214,163,67,.10),rgba(255,255,255,.025));
  transform:rotate(-.6deg);
}
.return-card span { display:block; color:var(--muted); font-size:10px; letter-spacing:.16em; text-transform:uppercase; }
.return-card strong { display:block; margin-top:3px; font-family:"Cormorant Garamond"; font-size:34px; color:var(--gold-light); }
.return-card p { margin:0; color:#b9ada4; font-size:12px; line-height:1.5; }
.spark { color:var(--pink); font-size:26px; }

.countdown { display:flex; gap:7px; margin-top:18px; }
.countdown > div { min-width:75px; padding:10px 12px; border:1px solid var(--line); background:rgba(255,255,255,.025); }
.countdown strong { display:block; font-size:21px; }
.countdown span { display:block; margin-top:2px; color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.12em; }

.hero-art { position:relative; height:520px; display:grid; place-items:center; }
.hero-art::before {
  content:""; position:absolute; width:350px; height:350px; border:1px solid rgba(232,117,141,.35);
  border-radius:50%; box-shadow:0 0 90px rgba(232,117,141,.08); transform:rotate(15deg);
}
.orbit { position:absolute; width:440px; height:180px; border:1px solid rgba(86,216,223,.28); border-radius:50%; transform:rotate(-34deg); }
.orbit-b { width:380px; height:380px; border-color:rgba(214,163,67,.22); transform:rotate(25deg); }
.heart { font-family:"Cormorant Garamond"; font-size:230px; line-height:1; color:transparent; -webkit-text-stroke:1px var(--gold); filter:drop-shadow(0 0 30px rgba(214,163,67,.18)); transform:rotate(-8deg); }
.scribble { position:absolute; right:4%; bottom:8%; color:var(--cyan); font-size:11px; line-height:1.1; text-align:center; text-transform:uppercase; letter-spacing:.13em; transform:rotate(8deg); }
.star { position:absolute; color:var(--pink); }
.star-1 { top:13%; right:13%; font-size:34px; }
.star-2 { bottom:20%; left:13%; font-size:25px; color:var(--cyan); }
.star-3 { top:35%; left:5%; font-size:18px; }

.contact-section {
  background:var(--paper); color:var(--ink); padding:100px clamp(20px, 7vw, 100px);
  position:relative; overflow:hidden;
}
.contact-section::after {
  content:"ANA"; position:absolute; right:-20px; bottom:-90px; font-family:"Cormorant Garamond";
  font-size:260px; color:rgba(11,8,9,.045); font-weight:700;
}
.section-tag { color:#9b6e18; margin-bottom:20px; }
.contact-grid { position:relative; z-index:1; max-width:1150px; margin:auto; display:grid; grid-template-columns:1fr .9fr; gap:90px; align-items:start; }
h2 { font-size:clamp(50px,6vw,78px); line-height:.88; margin:0 0 28px; letter-spacing:-.04em; }
.contact-copy > p { max-width:560px; line-height:1.75; color:#514942; }
.small-copy { font-size:13px; }
.partners { margin-top:45px; display:flex; align-items:center; gap:16px; color:#89796e; text-transform:uppercase; letter-spacing:.13em; font-size:9px; }
.partners img { width:78px; height:50px; object-fit:contain; filter:grayscale(1); opacity:.7; }

.contact-form {
  padding:30px; background:var(--ink); color:var(--paper); box-shadow:15px 15px 0 rgba(11,8,9,.10);
  border:1px solid rgba(11,8,9,.15); position:relative;
}
.form-title { display:flex; justify-content:space-between; align-items:center; margin-bottom:26px; }
.form-title b { color:var(--pink); font-size:22px; }
.contact-form label { display:block; margin:0 0 17px; color:#c8bcb4; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.contact-form input, .contact-form textarea {
  width:100%; margin-top:8px; padding:13px 14px; color:var(--cream); background:#151011; border:1px solid #332b2a;
  outline:none; border-radius:0; font:inherit; font-size:14px; resize:vertical;
}
.contact-form input:focus, .contact-form textarea:focus { border-color:var(--gold); box-shadow:0 0 0 2px rgba(214,163,67,.08); }
.contact-form textarea { min-height:120px; }
.contact-form button {
  width:100%; border:0; padding:15px 18px; background:var(--gold); color:var(--ink); font-weight:900;
  text-transform:uppercase; letter-spacing:.08em; cursor:pointer; display:flex; justify-content:space-between; align-items:center;
}
.contact-form button:hover { background:var(--gold-light); }
.contact-form button:disabled { opacity:.65; cursor:wait; }
.form-status { min-height:22px; margin:14px 0 0; font-size:12px; line-height:1.5; }
.form-status.success { color:#8de0c1; }
.form-status.error { color:#ff9cac; }
.privacy { margin:12px 0 0; color:#756a64; font-size:9px; line-height:1.5; }
.hp { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }

footer {
  min-height:90px; display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:22px clamp(20px,6vw,80px); color:#756a64; font-size:9px; letter-spacing:.11em; text-transform:uppercase;
}
footer img { width:120px; height:45px; object-fit:contain; opacity:.75; }

@media (max-width:850px) {
  .hero { grid-template-columns:1fr; padding-top:55px; }
  .hero-art { height:260px; order:-1; }
  .hero-art .heart { font-size:150px; }
  .orbit { width:300px; height:130px; }
  .orbit-b { width:230px; height:230px; }
  .contact-grid { grid-template-columns:1fr; gap:45px; }
}
@media (max-width:560px) {
  .topbar { height:70px; }
  .topbar-note { display:none; }
  .brand-mini img { width:125px; }
  .hero { min-height:auto; padding-top:35px; padding-bottom:70px; }
  h1 { font-size:58px; }
  .return-card { grid-template-columns:1fr auto; }
  .return-card p { grid-column:1 / -1; }
  .countdown > div { min-width:0; flex:1; }
  .countdown strong { font-size:17px; }
  .contact-section { padding-top:70px; padding-bottom:70px; }
  .contact-form { padding:22px 18px; }
  footer { flex-direction:column; text-align:center; }
}
