/* De Gids — design tokens (moodboard v1) */
:root{
  --purple:#261050;
  --purple-2:#3b1d7a;
  --ink:#2b2828;
  --ink-soft:#606060;
  --grey:#5c5c62;
  --cream:#fff7e6;
  --pink:#fde2e4;
  --lav:#ede9fe;
  --mint:#dff4e8;
  --sky:#e0f0fb;
  --peach:#ffe8d6;
  --yellow:#ffd43b;
  --white:#ffffff;
  --paper:#f7f4ee;
  --radius-l:28px;
  --radius-m:20px;
  --radius-s:14px;
  --font-head:"Inter Tight",Arial,sans-serif;
  --font-body:"Inter",system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--font-body);background:var(--paper);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-head);font-weight:800;letter-spacing:-.02em;line-height:1.15}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
section{margin-bottom:48px}
img{max-width:100%}

.skip-link{position:absolute;left:-999px;top:0;background:var(--purple);color:#fff;padding:10px 18px;z-index:99;border-radius:0 0 12px 0}
.skip-link:focus{left:0}

.label{font-family:var(--font-head);font-weight:600;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--grey);margin:0 0 16px;line-height:1.2}
.kicker{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-head);font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px;border-radius:999px;width:max-content}
.k-mint{background:var(--mint);color:#0e5c3f}
.k-peach{background:var(--peach);color:#8a4416}
.k-sky{background:var(--sky);color:#1c4d80}
.k-lav{background:var(--lav);color:var(--purple)}
.k-pink{background:var(--pink);color:#a33a41}
.k-cream{background:var(--cream);color:#7a5b12}

/* ——— nav ——— */
.nav{background:var(--purple);color:#fff;position:sticky;top:0;z-index:50}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:62px;gap:20px}
.brand{font-family:var(--font-head);font-weight:900;font-size:1.5rem;letter-spacing:-.03em;text-decoration:none}
.brand em{font-style:normal;color:var(--yellow)}
.nav-links{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.nav-link{font-size:.85rem;font-weight:500;text-decoration:none;padding:8px 12px;border-radius:999px;color:#e8e2fb}
.nav-link:hover{background:#ffffff1f;color:#fff}
.nav-search{font-family:var(--font-head);font-weight:700;font-size:.78rem;background:var(--yellow);color:var(--purple);padding:8px 16px;border-radius:999px;text-decoration:none;margin-left:6px}

/* ——— hero (home) ——— */
.home-hero{background:var(--purple);color:#fff;padding:56px 0 52px;margin-bottom:48px}
.hero-eyebrow{color:var(--yellow);font-weight:600;font-size:.95rem;margin-bottom:10px}
.hero-title{font-size:3.2rem;font-weight:900;letter-spacing:-.03em;line-height:1.04}
.hero-title em{font-style:italic;font-weight:600;color:var(--yellow)}
.hero-search{display:flex;gap:10px;margin-top:28px;max-width:560px}
.hero-search input{flex:1;font-family:var(--font-body);font-size:1rem;padding:15px 20px;border:none;border-radius:999px;background:#fff;color:var(--ink)}
.hero-search input:focus{outline:3px solid var(--yellow);outline-offset:2px}
.hero-search button{font-family:var(--font-head);font-weight:700;font-size:.95rem;background:var(--yellow);color:var(--purple);border:none;padding:15px 26px;border-radius:999px;cursor:pointer}
.hero-meta{margin-top:16px;font-size:.82rem;color:#cfc6ee}

/* ——— tiles ——— */
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.tile{border-radius:var(--radius-l);padding:26px;min-height:160px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}
.tile:hover{transform:translateY(-3px);box-shadow:0 14px 30px -14px #26105044}
.tile .kicker{background:#00000012;color:var(--ink)}
.tile h3{font-size:1.3rem;margin-top:10px}
.tile p{font-size:.85rem;color:var(--ink-soft);margin-top:6px}
.tile .go{font-family:var(--font-head);font-weight:700;font-size:.82rem;margin-top:16px}
.tile-mint{background:var(--mint)} .tile-peach{background:var(--peach)}
.tile-sky{background:var(--sky)} .tile-lav{background:var(--lav)}
.tile-pink{background:var(--pink)} .tile-cream{background:var(--cream)}

/* ——— cards ——— */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px}
.card{background:var(--white);border-radius:var(--radius-l);padding:22px;border:1px solid #0000000d;display:flex;flex-direction:column;gap:10px}
.card .card-title{font-size:1.12rem;font-weight:700;line-height:1.28}
.card .card-title a{text-decoration:none}
.card .card-title a:hover{color:var(--purple)}
.card p{font-size:.85rem;color:var(--ink-soft)}
.card .foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;border-top:1px dashed #0000001a;font-size:.75rem;color:var(--grey)}
.card .foot b{color:var(--ink)}
.foot-go{font-family:var(--font-head);font-weight:700;color:var(--purple);font-size:.8rem}
.empty{color:var(--ink-soft)}

/* ——— index page ——— */
.index-head{background:var(--cream);padding:44px 0 36px;margin-bottom:44px}
.index-title{font-size:2.6rem;font-weight:900;letter-spacing:-.03em;margin-top:14px}
.index-intro{font-size:1.05rem;color:var(--ink-soft);margin-top:12px;max-width:620px}
.index-count{margin-top:14px;font-size:.8rem;color:var(--grey);font-weight:600;letter-spacing:.1em;text-transform:uppercase}

/* ——— guide page ——— */
.guide-head{background:var(--cream);padding:44px 0 40px}
.crumbs{font-size:.78rem;color:var(--ink-soft);margin-bottom:16px}
.crumbs a{text-decoration:none;border-bottom:1px dashed #00000033}
.guide-title{font-size:2.7rem;font-weight:900;letter-spacing:-.03em;margin-top:14px;max-width:720px}
.guide-intro{font-size:1.1rem;color:var(--ink-soft);margin-top:14px;max-width:640px}
.guide-meta{margin-top:18px;font-size:.85rem;color:var(--ink-soft)}
.guide-meta strong{color:var(--purple)}

.guide-grid{display:grid;grid-template-columns:220px 1fr;gap:48px;padding-top:48px;padding-bottom:24px}
.guide-toc{position:sticky;top:86px;align-self:start;display:flex;flex-direction:column;gap:2px}
.toc-label{font-size:.62rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--grey);margin-bottom:12px}
.toc-link{font-family:var(--font-head);font-weight:600;font-size:.86rem;color:var(--ink-soft);text-decoration:none;padding:7px 12px;border-radius:10px;border-left:3px solid transparent}
.toc-link:hover,.toc-link.on{color:var(--purple);background:var(--lav);border-left-color:var(--purple)}

.guide-body{max-width:680px}
.summary-card{background:var(--white);border:2px solid var(--purple);border-radius:var(--radius-s);padding:22px 24px;margin-bottom:36px;scroll-margin-top:90px}
.summary-label{font-size:.62rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--purple);margin-bottom:10px}
.summary-card ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.summary-card li{padding-left:24px;position:relative;font-size:.95rem}
.summary-card li::before{content:"✓";position:absolute;left:0;color:var(--purple);font-weight:800}

.gblock{margin-bottom:32px;scroll-margin-top:90px}
.gblock h2{font-size:1.5rem;margin-bottom:14px}
.gblock h3{font-size:1.2rem;margin:18px 0 10px}
.gblock p{margin-bottom:14px;font-size:.98rem}
.gblock ul,.gblock ol{padding-left:22px;margin-bottom:14px}
.gblock li{margin-bottom:6px}
.gblock a{color:var(--purple);font-weight:500}

/* checklist */
.check{background:var(--white);border-radius:var(--radius-l);padding:26px;border:1px solid #0000000d}
.check-title{margin-bottom:8px}
.check .item{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px dashed #00000014;font-size:.93rem}
.check .item:last-child{border:none}
.check .box{flex:none;width:20px;height:20px;border-radius:6px;border:2px solid var(--purple);margin-top:2px}

/* stats */
.stats{background:var(--lav);border-radius:var(--radius-l);padding:26px}
.stats-title{margin-bottom:16px}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}
.stat{background:#fff;border-radius:var(--radius-s);padding:16px}
.stat strong{display:block;font-family:var(--font-head);font-weight:900;font-size:1.5rem;color:var(--purple);letter-spacing:-.02em}
.stat span{font-size:.78rem;color:var(--ink-soft)}

/* sources */
.sources{background:var(--white);border-radius:var(--radius-l);padding:26px;border:1px dashed #00000022}
.sources-title{margin-bottom:12px}
.sources ul{list-style:none;padding:0}
.sources li{padding:9px 0;border-bottom:1px dashed #00000012;font-size:.9rem}
.sources li:last-child{border:none}
.sources a{color:var(--purple);font-weight:600;text-decoration:none;border-bottom:1px solid var(--purple)}

/* callout */
.callout{border-radius:var(--radius-s);padding:18px 20px;margin-bottom:8px}
.callout-tip{background:var(--mint)}
.callout-let-op{background:var(--peach)}
.callout-label{font-size:.62rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:6px}
.callout-tip .callout-label{color:#0e5c3f}
.callout-let-op .callout-label{color:#8a4416}
.callout-text{font-size:.92rem}

/* faq */
.faq-item{background:var(--white);border:1px solid #00000010;border-radius:var(--radius-s);margin-bottom:10px;overflow:hidden}
.faq-item summary{font-family:var(--font-head);font-weight:700;font-size:.95rem;padding:16px 20px;cursor:pointer;list-style:none}
.faq-item summary::after{content:"+";float:right;font-weight:900;color:var(--purple)}
.faq-item[open] summary::after{content:"–"}
.faq-answer{padding:0 20px 16px;font-size:.92rem;color:var(--ink-soft)}

.guide-foot{margin-top:44px;padding-top:20px;border-top:2px solid var(--purple);font-size:.82rem;color:var(--ink-soft)}

.related{padding-bottom:48px}

/* ——— search ——— */
.search-head{padding:40px 0 24px}
.search-head h1{font-size:2rem}
.search-form{display:flex;gap:10px;margin-top:18px;max-width:560px}
.search-form input{flex:1;font-size:1rem;padding:13px 20px;border:2px solid var(--purple);border-radius:999px;background:#fff}
.search-form button{font-family:var(--font-head);font-weight:700;background:var(--purple);color:#fff;border:none;padding:13px 26px;border-radius:999px;cursor:pointer}

/* ——— footer ——— */
.site-footer{background:var(--purple);color:#fff;margin-top:60px;padding:52px 0 32px}
.foot-grid{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}
.footer-brand{color:#fff}
.foot-sub{color:#cfc6ee;font-size:.88rem;max-width:320px;margin-top:10px}
.foot-pills{display:flex;flex-wrap:wrap;gap:10px;align-content:flex-start;max-width:520px}
.pill{border:1.5px solid #ffffff55;border-radius:999px;padding:8px 16px;font-size:.8rem;color:#e8e2fb;text-decoration:none}
.pill:hover{background:#ffffff1f}
.foot-fine{margin-top:36px;font-size:.75rem;color:#a79bc9;border-top:1px solid #ffffff22;padding-top:20px}

@media(max-width:820px){
  .guide-grid{grid-template-columns:1fr}
  .guide-toc{position:static;flex-direction:row;flex-wrap:wrap;gap:6px;margin-bottom:8px}
  .toc-link{border-left:none;border:1.5px solid #00000018}
  .hero-title{font-size:2.1rem}
  .guide-title{font-size:1.9rem}
  .nav-links .nav-link{display:none}
}
