:root{
  --ink:#0f172a;
  --muted:#64748b;
  --line:#e2e8f0;
  --bg:#ffffff;
  --soft:#f8fafc;
  --brand:#0ea5e9;
  --brand-ink:#0369a1;
  --card:#ffffff;
  --shadow:0 8px 28px rgba(2,6,23,.06);
  --radius:18px
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;background:linear-gradient(180deg,#fff,var(--soft));
  color:var(--ink);
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial;
  line-height:1.6
}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.site{min-height:100%;display:flex;flex-direction:column}

/* Topbar */
.topbar{border-bottom:1px solid var(--line);background:#fff}
.topbar-row{display:flex;justify-content:space-between;align-items:center;height:68px}
.brand{
  font-weight:900;font-size:18px;letter-spacing:.08em;text-transform:uppercase;
  color:#fff;background:linear-gradient(135deg,#67e8f9,#0ea5e9);
  padding:8px 12px;border-radius:12px
}
.menu{display:flex;gap:14px;flex-wrap:wrap}
.menu a{font-size:14px;color:var(--ink);opacity:.85}
.menu a:hover{opacity:1}

/* Hero */
.hero{padding:28px 0;border-bottom:1px solid var(--line);background:#fff}
.hero-grid{display:grid;gap:22px;grid-template-columns:1.1fr .9fr;align-items:center}
.hero-media p{margin:0}
.hero-copy h1{margin:0 0 12px;font-size:34px}
.movie{width:100%;aspect-ratio:16/9;border:0;border-radius:16px;box-shadow:var(--shadow)}

/* Main */
.main{display:grid;gap:28px;padding:28px 0}
.section{padding:0}
.section.alt{background:linear-gradient(180deg,transparent,#f0f9ff)}

/* Cards */
.card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;box-shadow:var(--shadow);position:relative;overflow:hidden
}
.card::before{
  content:"";
  position:absolute;left:0;top:0;height:100%;width:6px;
  background:linear-gradient(180deg,#0ea5e9,#22d3ee)
}
.flow>*+*{margin-top:12px}

/* Grids */
.grid-2{display:grid;gap:22px;grid-template-columns:1fr 1fr}

/* FAQ */
.faq h4{margin:14px 0 6px}
.faq p{margin:0 0 12px}

/* Footer */
.footer{margin-top:auto;border-top:1px solid var(--line);background:#fff}
.foot-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0}
.foot-brand{font-weight:800}
.foot-links{display:flex;gap:14px}
.map{border-top:1px solid var(--line)}
.map iframe{width:100%;height:340px;border:0;display:block}
.legal{text-align:center;color:var(--muted);padding:12px 0;font-size:13px}

/* Responsive */
@media (max-width: 980px){
  .hero-grid{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
}
