:root { --ink:#17100e; --ink-2:#1f1714; --bone:#f4eee7; --bone-85:rgba(244,238,231,0.85); --bone-70:rgba(244,238,231,0.7); --bone-40:rgba(244,238,231,0.4); --bone-20:rgba(244,238,231,0.2); --bone-10:rgba(244,238,231,0.08); --red:#e2412b; }
  * { box-sizing:border-box; margin:0; padding:0; }
  html { scroll-behavior:smooth; }
  body { background:var(--ink); color:var(--bone); font-family:'Barlow','Helvetica Neue',Arial,sans-serif; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
  a { color:inherit; }
  .cond { font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif; text-transform:uppercase; }
  .wm { font-family:'Michroma','Eurostile','Arial Black',sans-serif; text-transform:uppercase; letter-spacing:.06em; }

  /* ---------- top bar ---------- */
  .top { position:sticky; top:0; z-index:20; display:flex; justify-content:space-between; align-items:center; padding:16px clamp(20px,6vw,96px); background:linear-gradient(180deg, rgba(23,16,14,.96), rgba(23,16,14,.85)); backdrop-filter:blur(6px); border-bottom:1px solid var(--bone-10); }
  .top .wm { font-size:12px; text-decoration:none; }
  .top .wm span { display:block; font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:800; font-style:italic; letter-spacing:.06em; font-size:11px; color:var(--bone-70); margin-top:3px; }
  .top nav { display:flex; gap:22px; align-items:center; }
  .top nav a { text-decoration:none; font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:600; letter-spacing:.14em; font-size:13px; color:var(--bone-70); }
  .top nav a:hover, .top nav a.on { color:var(--bone); }
  .top nav a.reg { color:var(--bone); border:1px solid var(--bone-40); padding:10px 14px; }

  /* ---------- hero ---------- */
  .hero { position:relative; min-height:72vh; display:flex; align-items:flex-end; overflow:hidden; }
  .hero .bg { position:absolute; inset:0; background:url(img/fire.jpg) center/cover; }
  .hero .shade { position:absolute; inset:0; background:linear-gradient(180deg, rgba(23,16,14,.5) 0%, rgba(23,16,14,.2) 40%, rgba(23,16,14,.95) 100%); }
  .hero .inner { position:relative; width:100%; padding:120px clamp(20px,6vw,96px) 56px; max-width:1100px; }
  .kicker { display:flex; align-items:center; gap:14px; margin-bottom:16px; flex-wrap:wrap; }
  .kicker .n { font-family:'Barlow Condensed'; font-weight:600; font-size:13px; letter-spacing:.3em; text-transform:uppercase; color:var(--bone-70); }
  .kicker .line { width:48px; height:1px; background:var(--bone-40); }
  h1 { font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:800; line-height:.88; letter-spacing:-.01em; font-size:clamp(60px,11vw,160px); }
  .hero .lead { margin-top:20px; max-width:640px; font-size:clamp(17px,1.5vw,21px); line-height:1.55; color:var(--bone-85); }

  /* ---------- article ---------- */
  .wrap { max-width:1100px; margin:0 auto; padding:0 clamp(20px,6vw,96px); }
  .sec { padding:clamp(48px,8vh,96px) 0; border-top:1px solid var(--bone-10); display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:clamp(28px,6vw,96px); align-items:start; }
  .sec h2 { font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:800; line-height:.9; letter-spacing:-.01em; font-size:clamp(44px,6.5vw,96px); margin-bottom:22px; }
  .sec p { font-size:clamp(17px,1.25vw,19px); line-height:1.65; color:var(--bone-85); max-width:620px; }
  .sec p + p { margin-top:16px; }
  .sec p strong { color:var(--bone); font-weight:600; }
  .quote { border-left:2px solid var(--red); padding-left:20px; margin:24px 0; font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:800; font-size:clamp(24px,2.6vw,34px); line-height:1.05; letter-spacing:.01em; color:var(--bone); }
  .panel { border-top:1px solid var(--bone-40); padding-top:20px; display:flex; flex-direction:column; gap:14px; position:sticky; top:96px; }
  .row { display:flex; justify-content:space-between; gap:20px; align-items:baseline; border-bottom:1px solid var(--bone-20); padding-bottom:12px; }
  .row .k { font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:600; letter-spacing:.1em; font-size:15px; color:var(--bone-70); flex-shrink:0; }
  .row .v { font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:800; font-size:clamp(19px,1.8vw,26px); text-align:right; line-height:1.05; }
  .row .v small { display:block; font-weight:600; font-size:13px; letter-spacing:.06em; color:var(--bone-70); margin-top:3px; text-transform:none; }
  .list { list-style:none; display:grid; gap:10px; margin-top:8px; }
  .list li { position:relative; padding-left:22px; font-size:clamp(16px,1.2vw,18px); line-height:1.5; color:var(--bone-85); }
  .list li::before { content:""; position:absolute; left:0; top:9px; width:8px; height:8px; background:var(--red); }
  .list li strong { color:var(--bone); font-weight:600; }
  .btn { display:inline-flex; align-items:center; justify-content:center; gap:14px; background:var(--bone); color:var(--ink); text-decoration:none; padding:18px 28px; font-family:'Barlow Condensed'; font-weight:800; text-transform:uppercase; letter-spacing:.12em; font-size:18px; transition:transform .2s, background .2s; }
  .btn:hover { transform:translateY(-2px); background:#fff; }
  .btn .sq { width:9px; height:9px; background:var(--ink); }
  .btn.ghost { background:transparent; color:var(--bone); border:1px solid var(--bone-40); }
  .btn.ghost .sq { background:var(--bone); }
  .actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:8px; }
  .note { font-size:14px; line-height:1.55; color:var(--bone-70); }
  .note em { color:var(--bone); font-style:normal; font-weight:600; }

  /* ---------- families band ---------- */
  .band { background:var(--ink-2); border-top:1px solid var(--bone-10); }
  .band .sec { border-top:0; }

  /* ---------- footer cta ---------- */
  .cta { position:relative; padding:clamp(80px,14vh,160px) 0; text-align:center; overflow:hidden; }
  .cta .bg { position:absolute; inset:0; background:url(img/hero.jpg) center/cover; opacity:.35; }
  .cta .shade { position:absolute; inset:0; background:linear-gradient(180deg, var(--ink), rgba(23,16,14,.6), var(--ink)); }
  .cta .inner { position:relative; }
  .cta h2 { font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:800; line-height:.88; font-size:clamp(56px,10vw,150px); margin-bottom:26px; }
  .cta .actions { justify-content:center; }
  footer { padding:28px clamp(20px,6vw,96px); border-top:1px solid var(--bone-10); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; font-family:'Barlow Condensed'; text-transform:uppercase; letter-spacing:.14em; font-size:12px; color:var(--bone-70); }
  footer a { text-decoration:none; }

  @media (max-width: 860px) {
    .top nav a:not(.reg) { display:none; }
    .hero { min-height:64vh; }
    .hero .inner { padding-top:80px; }
    .sec { grid-template-columns:1fr; gap:28px; }
    .panel { position:static; }
    .row { flex-direction:column; gap:4px; }
    .row .v { text-align:left; }
    .sec p { max-width:none; }
  }

/* ---------- form ---------- */
.form { display:grid; gap:14px; }
.form label { display:grid; gap:6px; font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:600; letter-spacing:.1em; font-size:14px; color:var(--bone-70); }
.form input, .form select, .form textarea { width:100%; background:var(--bone-10); border:1px solid var(--bone-20); color:var(--bone); font-family:'Barlow',sans-serif; font-size:17px; padding:14px; border-radius:0; -webkit-appearance:none; }
.form input:focus, .form select:focus, .form textarea:focus { outline:none; border-color:var(--bone-70); }
.form select { background-image:linear-gradient(45deg, transparent 50%, var(--bone-70) 50%), linear-gradient(135deg, var(--bone-70) 50%, transparent 50%); background-position:calc(100% - 20px) 50%, calc(100% - 14px) 50%; background-size:6px 6px; background-repeat:no-repeat; }
.form select option { color:#111; }
.form textarea { min-height:110px; resize:vertical; }
.form .two { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.form .check { display:flex; gap:12px; align-items:flex-start; text-transform:none; letter-spacing:0; font-family:'Barlow'; font-size:15px; line-height:1.5; color:var(--bone-85); }
.form .check input { width:18px; height:18px; margin-top:3px; padding:0; }
.form .btn { justify-self:start; border:0; cursor:pointer; }
.thanks { display:none; border:1px solid var(--bone-40); padding:22px; }
.thanks.show { display:block; }
.stations { list-style:none; counter-reset:st; display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:14px; margin-top:26px; }
.stations li { counter-increment:st; border:1px solid var(--bone-20); padding:18px; }
.stations li::before { content:"0" counter(st); display:block; font-family:'Barlow Condensed'; font-weight:600; letter-spacing:.3em; font-size:12px; color:var(--red); margin-bottom:10px; }
.stations li:nth-child(n+10)::before { content:counter(st); }
.stations h3 { font-family:'Barlow Condensed'; text-transform:uppercase; font-weight:800; font-size:24px; line-height:1; margin-bottom:8px; }
.stations p { font-size:15px; line-height:1.5; color:var(--bone-70); max-width:none; }
@media (max-width:600px){ .form .two { grid-template-columns:1fr; } }
