:root{
  --brand:#0ea5e9;/* sky-500 */
  --brand-dark:#0284c7;/* sky-600 */
  --accent:#10b981;/* emerald-500 */
  --bg:#f8fafc;/* slate-50 */
  --text:#0f172a;/* slate-900 */
  --muted:#475569;/* slate-600 */
  --ring: 0 0 0 4px rgba(14,165,233,.2)
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg)}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--brand-dark)}
img{max-width:100%;height:auto;display:block}
.container{max-width:1200px;margin:0 auto;padding:0 16px}
header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e2e8f0}
.nav{display:flex;align-items:center;justify-content:space-between;padding:12px 0}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px}
.menu{display:flex;gap:18px;align-items:center}
.menu a{font-weight:600;color:#0f172a}
.cta-btn,.ghost-btn{display:inline-block;padding:12px 18px;border-radius:12px;font-weight:700;border:0;cursor:pointer}
.cta-btn{background:var(--brand);color:#fff;box-shadow:0 8px 30px rgba(14,165,233,.25)}
.cta-btn:hover{background:var(--brand-dark)}
.ghost-btn{background:#fff;border:1px solid #cbd5e1;color:var(--text)}
.hero{background:linear-gradient(180deg,#e0f2fe 0%, transparent 60%);padding:36px 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:32px}
.kicker{display:inline-block;background:#ecfeff;color:#075985;border:1px solid #bae6fd;padding:6px 10px;border-radius:999px;font-weight:700;font-size:12px;letter-spacing:.02em;margin-bottom:10px}
h1{font-size:40px;line-height:1.1;margin:0 0 12px}
.lead{font-size:18px;color:var(--muted)}
.badgebar{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.badge{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:8px 12px;font-weight:600}
/* Holiday mood hero image */
.hero-visual{border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(2,132,199,.15);border:1px solid #e2e8f0;margin-bottom:16px}
.hero-visual img{aspect-ratio:16/10;object-fit:cover}
.hero-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:18px;box-shadow:0 10px 30px rgba(2,132,199,.08)}
.hero-card label{display:block;font-size:12px;color:#334155;margin-bottom:4px}
.hero-card input,.hero-card select{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:10px;font-size:14px}
.hero-card input:focus,.hero-card select:focus{outline:none;box-shadow:var(--ring);border-color:var(--brand)}
.grid{display:grid;gap:18px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px}
.card h3{margin:0 0 8px}
.tag{display:inline-block;background:#f1f5f9;color:#0f172a;padding:6px 10px;border-radius:999px;font-weight:700;font-size:12px}
.section{padding:48px 0}
.section h2{font-size:28px;margin:0 0 10px}
.muted{color:var(--muted)}
.pill-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(90deg,#0ea5e9,#10b981);color:#fff;border-radius:18px;padding:18px}
.pill-cta h3{margin:0;font-size:22px}
.price-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}
.price-table th,.price-table td{padding:14px;border-bottom:1px solid #e2e8f0;text-align:left}
.price-table tr:last-child td{border-bottom:0}
.price-tag{font-weight:900;font-size:22px}
.list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.list li{display:flex;gap:8px}
.check{font-weight:900;color:var(--accent)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gallery img{width:100%;height:220px;object-fit:cover;border-radius:12px}
.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
form input, form select, form textarea{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:10px;font-size:14px}
form textarea{min-height:120px}
form input:focus, form select:focus, form textarea:focus{outline:none;box-shadow:var(--ring);border-color:var(--brand)}
.sticky-bar{position:fixed;bottom:12px;left:12px;right:12px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 14px 40px rgba(2,6,23,.15);padding:10px;display:flex;gap:10px;align-items:center;justify-content:space-between}
.sticky-bar b{font-size:14px}
footer{background:#0b1220;color:#e2e8f0;margin-top:40px}
footer a{color:#bae6fd}
.cols{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.disclaimer{font-size:12px;color:#94a3b8}
/* Responsive */
@media (max-width:1020px){
  .hero-grid,.contact{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
  .grid-4{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  h1{font-size:30px}
  .menu{display:none}
  .grid-3,.grid-4,.gallery{grid-template-columns:1fr}
  .pill-cta{flex-direction:column;align-items:flex-start}
  .cols{grid-template-columns:1fr 1fr}
}
