:root{
    --ink:#0E1A2B;
    --muted:#57667A;
    --paper:#FBFBFA;
    --panel:#EFF6F5;
    --navy:#052153;
    --navy-2:#0B2E6B;
    --teal:#02BFB1;
    --teal-deep:#019488;
    --teal-soft:#DDF5F2;
    --line:#E1E6E6;
    --radius:14px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    color:var(--ink);
    background:var(--paper);
    line-height:1.55;
  }
  h1,h2,h3{
    font-family:Georgia,"Iowan Old Style","Palatino Linotype",serif;
    font-weight:600;
    margin:0 0 .5em;
    line-height:1.15;
    letter-spacing:-0.01em;
  }
  p{margin:0 0 1em}
  a{color:inherit}
  .wrap{max-width:1080px;margin:0 auto;padding:0 24px}
  .skip{position:absolute;left:-9999px;top:auto}
  .skip:focus{left:24px;top:12px;background:#fff;padding:10px 16px;border-radius:8px;z-index:999}

  /* Header */
  .draft-notice{background:#FCEFD7;color:#5C4213;text-align:center;font-size:.82rem;padding:8px 16px;border-bottom:1px solid #E9D3A0}
  header{position:sticky;top:0;z-index:20;background:rgba(251,250,246,.92);backdrop-filter:saturate(140%) blur(6px);border-bottom:1px solid var(--line)}
  nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
  .brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-weight:600;font-size:1.05rem}
  .brand .mark{display:flex;align-items:center;flex:none}
  .brand .mark img{height:32px;width:auto;display:block}
  .brand .brand-text{display:none}
  .navlinks{display:flex;gap:26px;font-size:.95rem}
  .navlinks a{text-decoration:none;color:var(--muted)}
  .navlinks a:hover{color:var(--navy)}
  .navlinks a:focus-visible,.brand:focus-visible,.btn:focus-visible{outline:2px solid var(--teal-deep);outline-offset:3px}

  /* Hero */
  .hero{padding:72px 0 64px;background:linear-gradient(180deg,#EFEDE3 0%,var(--paper) 78%)}
  .hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
  .eyebrow{display:inline-block;color:var(--teal);font-size:.85rem;font-weight:600;margin-bottom:14px}
  h1{font-size:clamp(2.1rem,4.4vw,3.1rem)}
  h1 span{color:var(--navy-2)}
  .official-title{font-size:.9rem;color:var(--muted);font-style:italic;margin:0 0 14px;max-width:48ch}
  .lead{font-size:1.14rem;color:var(--muted);max-width:46ch}
  .runs{font-size:.95rem;color:var(--muted)}
  .actions{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap}
  .btn{display:inline-block;padding:12px 22px;border-radius:999px;text-decoration:none;font-size:.96rem;font-weight:600;border:1px solid transparent}
  .btn.primary{background:var(--navy);color:#fff}
  .btn.primary:hover{background:var(--navy-2)}
  .btn.secondary{border-color:var(--navy);color:var(--navy)}
  .btn.secondary:hover{background:var(--navy);color:#fff}

  .hero-card{background:var(--navy);border-radius:22px;padding:26px;box-shadow:0 24px 48px -20px rgba(15,37,64,.45)}
  .hero-logo-card{background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;padding:56px 36px;box-shadow:0 24px 48px -24px rgba(15,37,64,.25)}
  .hero-logo{width:100%;max-width:340px;height:auto;display:block}

  section{padding:68px 0}
  section.band{background:var(--panel)}
  .kicker{color:var(--muted);font-size:1.02rem;max-width:62ch}
  .measure{max-width:70ch}

  /* About cards */
  .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
  .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
  .card .num{color:var(--teal-deep);font-family:Georgia,serif;font-size:1.3rem;margin-bottom:10px}
  .card h3{font-size:1.1rem}
  .card p{color:var(--muted);font-size:.95rem;margin:0}

  /* Focus / topics */
  .topics{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
  .topic{background:var(--teal-soft);color:var(--teal);border-radius:999px;padding:9px 16px;font-size:.9rem;font-weight:600}
  .official-topics{margin-top:20px;font-size:.85rem;color:var(--muted)}

  /* Kit */
  .kit-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;margin-top:28px}
  .kit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
  .kit-list li{position:relative;padding-left:26px;color:var(--ink)}
  .kit-list li::before{content:"";position:absolute;left:0;top:.45em;width:9px;height:9px;border-radius:50%;background:var(--teal-deep)}
  .kit-note{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
  .kit-note h3{font-size:1.02rem;margin-bottom:.4em}
  .kit-note p{color:var(--muted);font-size:.94rem}

  /* Steps / timeline */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px;counter-reset:phase}
  .step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;position:relative}
  .step .n{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;font-size:.85rem;font-weight:700;margin-bottom:14px}
  .step .when{color:var(--teal-deep);font-size:.85rem;font-weight:600;margin:0 0 8px}
  .step p:last-child{color:var(--muted);font-size:.94rem;margin:0}

  /* Aims / results */
  .aims{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:30px}
  .aim{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 18px;text-align:center}
  .aim b{display:block;font-family:Georgia,serif;font-size:2rem;color:var(--navy)}
  .aim span{color:var(--muted);font-size:.88rem}

  /* Partners */
  .partners{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:30px}
  .partner{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}
  .partner.assoc{border-style:dashed}
  .partner .where{display:block;color:var(--teal);font-size:.82rem;font-weight:600;margin:2px 0 8px}
  .partner b{font-size:1.02rem}
  .partner p{color:var(--muted);font-size:.92rem;margin:0}

  /* Contact */
  .contact-box{background:var(--navy);color:#EFEFEA;border-radius:22px;padding:40px;margin-top:30px}
  .contact-box h2{color:#fff}
  .contact-box a.mail{color:var(--teal-soft);text-decoration:underline}
  .safeguard{font-size:.88rem;color:#C8D2DE;border-top:1px solid rgba(255,255,255,.18);padding-top:16px;margin-top:20px}
  .safeguard a{color:#C8D2DE}

  footer{background:#0C1E33;color:#B9C4D2;padding:44px 0 30px;font-size:.86rem}
  .foot-brand{display:flex;align-items:center;gap:10px;color:var(--teal);font-family:Georgia,serif;font-size:1.15rem;font-weight:600;margin:0 0 22px}
  .foot-brand img{height:26px;width:auto;display:block}
  .fund{display:flex;gap:16px;align-items:flex-start;margin-bottom:20px}
  .eu-badge{display:inline-flex;background:#fff;border-radius:8px;padding:10px 14px;flex:none}
  .eu-badge img{display:block}
  .fund strong{color:#fff;display:block;margin-bottom:4px}
  .ref{color:#8C9AAC;margin:0 0 8px}
  .ref a{color:#B9C4D2}
  .foot-links{list-style:none;display:flex;gap:18px;flex-wrap:wrap;padding:0;margin:18px 0 0}
  .foot-links a{text-decoration:none;color:#B9C4D2}
  .foot-links a:hover{color:#fff}

  @media (max-width:820px){
    .hero-grid{grid-template-columns:1fr}
    .cards,.steps{grid-template-columns:1fr}
    .aims{grid-template-columns:repeat(2,1fr)}
    .partners{grid-template-columns:1fr}
    .kit-grid{grid-template-columns:1fr}
    .navlinks{display:none}
  }
  @media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }
