/* freekickslot.it — tema campo di calcio: verde notte, gesso, arancio */
:root{
  --fkk-night:#0b2a20;--fkk-grass:#134a36;--fkk-turf:#1b5e43;--fkk-chalk:#c8f169;
  --fkk-cream:#f3f1e8;--fkk-paper:#fffdf6;--fkk-ink:#10241b;--fkk-mute:#4a6357;
  --fkk-orange:#ff6b2c;--fkk-orange-d:#e2541a;--fkk-line:#d9d5c4;
  --fkk-head:"Bahnschrift","DIN Alternate","Arial Narrow","Roboto Condensed",system-ui,sans-serif;
  --fkk-body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.fkk{margin:0;background:var(--fkk-cream);color:var(--fkk-ink);font:17px/1.65 var(--fkk-body);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}

/* pulsanti */
.fkk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:999px;background:var(--fkk-orange);color:#1a0d05;font:700 16px/1 var(--fkk-head);letter-spacing:.04em;text-transform:uppercase;text-decoration:none;box-shadow:0 4px 0 var(--fkk-orange-d);transition:transform .15s,box-shadow .15s}
.fkk-btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--fkk-orange-d)}
.fkk-btn--sm{min-height:44px;padding:0 18px;font-size:14px}
.fkk-btn--ghost{background:transparent;color:var(--fkk-cream);box-shadow:inset 0 0 0 2px var(--fkk-chalk)}
.fkk-btn--ghost:hover{box-shadow:inset 0 0 0 2px var(--fkk-chalk),0 4px 0 rgba(200,241,105,.35)}
.fkk-btn--dark{background:var(--fkk-night);color:var(--fkk-chalk);box-shadow:0 4px 0 #04130d}
.fkk-btn--ghost-dark{background:transparent;color:var(--fkk-ink);box-shadow:inset 0 0 0 2px var(--fkk-ink)}

/* testata */
.fkk-top{background:var(--fkk-night);border-bottom:3px solid var(--fkk-chalk)}
.fkk-top__in{max-width:1180px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:14px}
.fkk-logo{display:flex;align-items:center;gap:8px;color:var(--fkk-cream);text-decoration:none;font:600 21px/1 var(--fkk-head);letter-spacing:.02em}
.fkk-logo b{color:var(--fkk-chalk);font-weight:700}
.fkk-logo__dot{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 50% 50%,var(--fkk-ink) 0 28%,#fbfbf6 30%);box-shadow:0 0 0 2px var(--fkk-cream)}
.fkk-top__tag{display:none;color:#9fbcae;font-size:14px}
.fkk-top .fkk-btn{margin-left:auto}

/* primo schermo */
.fkk-hero{background:linear-gradient(180deg,var(--fkk-night) 0,var(--fkk-grass) 100%);color:var(--fkk-cream);position:relative}
.fkk-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:repeating-linear-gradient(90deg,var(--fkk-turf) 0 40px,var(--fkk-grass) 40px 80px)}
.fkk-hero__in{max-width:1180px;margin:0 auto;padding:26px 16px 40px;display:grid;gap:22px}
.fkk-hero__kick{margin:0 0 10px;color:var(--fkk-chalk);font:600 13px/1 var(--fkk-head);letter-spacing:.14em;text-transform:uppercase}
.fkk-hero__h1{margin:0 0 14px;font:700 clamp(30px,8vw,54px)/1.05 var(--fkk-head);letter-spacing:-.01em}
.fkk-hero__sub{margin:0 0 20px;color:#d6e3da;font-size:17px;max-width:34em}
.fkk-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.fkk-hero__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.fkk-hero__chips li{padding:6px 12px;border:1px dashed rgba(200,241,105,.6);border-radius:6px;font-size:14px;color:#e7f4d0}
.fkk-hero__art{display:block;border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.35);outline:3px solid rgba(243,241,232,.12)}
.fkk-hero__img{width:100%}

/* programma (indice) */
.fkk-main{padding:0 16px 48px}
.fkk-prog{max-width:1180px;margin:-1px auto 0;background:var(--fkk-paper);border:1px solid var(--fkk-line);border-top:0;border-radius:0 0 16px 16px;padding:14px 16px}
.fkk-prog__h{margin:0 0 8px;font:700 13px/1 var(--fkk-head);letter-spacing:.12em;text-transform:uppercase;color:var(--fkk-mute)}
.fkk-prog__l{list-style:none;margin:0;padding:0;display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding-bottom:4px}
.fkk-prog__l a{display:flex;align-items:center;gap:8px;white-space:nowrap;min-height:44px;padding:0 14px;border-radius:10px;background:var(--fkk-cream);text-decoration:none;font-size:15px}
.fkk-prog__l a span{font:700 13px/1 var(--fkk-head);color:var(--fkk-orange-d)}
.fkk-prog__l a:hover{background:#e8f6c6}

/* colonna testo */
.fkk-col{max-width:800px;margin:30px auto 0}
.fkk-intro p:first-child{font-size:19px;line-height:1.6}
.fkk-sec,.fkk-faq{margin-top:38px;scroll-margin-top:16px}
.fkk-sec__h{position:relative;margin:0 0 14px;padding-left:18px;font:700 clamp(24px,5vw,32px)/1.15 var(--fkk-head);color:var(--fkk-night)}
.fkk-sec__h::before{content:"";position:absolute;left:0;top:.12em;bottom:.12em;width:6px;border-radius:3px;background:var(--fkk-orange)}
.fkk-sec__h--doc{font-size:clamp(21px,4vw,26px);margin-top:30px}
.fkk-sec p,.fkk-col p{margin:0 0 14px}
.fkk-sec--rg{background:var(--fkk-paper);border:2px dashed var(--fkk-turf);border-radius:16px;padding:22px 18px 8px}

/* tabellone */
.fkk-board{margin:18px 0 6px;overflow-x:auto;border-radius:14px;background:var(--fkk-night);padding:4px}
.fkk-board__t{width:100%;min-width:520px;border-collapse:separate;border-spacing:0;font-size:15px;color:var(--fkk-cream)}
.fkk-board__t thead th{padding:12px 14px;text-align:left;font:700 13px/1.2 var(--fkk-head);letter-spacing:.08em;text-transform:uppercase;color:var(--fkk-chalk);border-bottom:2px solid var(--fkk-chalk)}
.fkk-board__t tbody th,.fkk-board__t td{padding:12px 14px;vertical-align:top;text-align:left;border-bottom:1px solid rgba(243,241,232,.12)}
.fkk-board__t tbody th{font-weight:700;color:#fff;width:28%}
.fkk-board__t tbody tr:last-child>*{border-bottom:0}

/* figure */
.fkk-fig{margin:18px 0 22px}
.fkk-fig__a{display:block;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(16,36,27,.18)}
.fkk-fig__img{width:100%}
.fkk-fig figcaption{margin-top:8px;font-size:14px;color:var(--fkk-mute)}

/* fascia CTA */
.fkk-band{margin:36px 0 0;padding:22px 20px;border-radius:16px;background:var(--fkk-chalk);display:grid;gap:14px;justify-items:start}
.fkk-band__t{margin:0!important;font:700 19px/1.3 var(--fkk-head);color:var(--fkk-night)}
.fkk-band--doc{margin-top:34px}

/* FAQ */
.fkk-faq__grid{display:grid;gap:14px}
.fkk-faq__item{background:var(--fkk-paper);border:1px solid var(--fkk-line);border-radius:14px;padding:16px 18px 4px;border-top:4px solid var(--fkk-turf)}
.fkk-faq__q{margin:0 0 8px;font:700 18px/1.3 var(--fkk-head);color:var(--fkk-night)}
.fkk-faq__cta{margin-top:22px}
.fkk-list{margin:0 0 16px;padding-left:22px}
.fkk-list li{margin-bottom:6px}
.fkk-col--doc a[data-fkk-nav]{color:#0d5b3d;text-decoration-thickness:2px;text-underline-offset:3px}

/* 404 */
.fkk-404{text-align:left;padding:30px 0}
.fkk-404__code{font:700 64px/1 var(--fkk-head);color:var(--fkk-orange);margin:0 0 8px!important}

/* piè di pagina */
.fkk-foot{background:var(--fkk-night);color:#cfdcd4;font-size:15px}
.fkk-foot__in{max-width:1180px;margin:0 auto;padding:30px 16px 24px}
.fkk-foot__warn{display:flex;gap:14px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid rgba(200,241,105,.25)}
.fkk-foot__warn p{margin:0}
.fkk-18{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:3px solid var(--fkk-orange);color:#fff;font:700 16px/1 var(--fkk-head)}
.fkk-foot__cols{display:grid;gap:22px;padding:22px 0}
.fkk-foot__h{margin:0 0 10px;font:700 14px/1 var(--fkk-head);letter-spacing:.1em;text-transform:uppercase;color:var(--fkk-chalk)}
.fkk-foot ul{list-style:none;margin:0;padding:0}
.fkk-foot li{margin-bottom:4px}
.fkk-foot li a{display:inline-block;padding:6px 0;text-decoration:none;border-bottom:1px solid transparent}
.fkk-foot li a:hover{border-color:var(--fkk-chalk);color:#fff}
.fkk-foot__upd{margin:0;padding-top:16px;border-top:1px solid rgba(200,241,105,.25);font-size:14px;color:#9fbcae}

@media (min-width:720px){
  .fkk-top__tag{display:block}
  .fkk-faq__grid{grid-template-columns:1fr 1fr}
  .fkk-band{grid-template-columns:1fr auto;align-items:center}
  .fkk-foot__cols{grid-template-columns:1.3fr 1fr .9fr}
}
@media (min-width:1000px){
  .fkk-hero__in{grid-template-columns:1.02fr 1fr;align-items:center;padding:46px 16px 60px;gap:44px}
  .fkk-prog{padding:16px 24px}
  .fkk-prog__l{flex-wrap:wrap;overflow:visible}
}
