/* ACE-Hellas mockup v2 — shared styles. Brand red kept from the agency build (#B31F35). */
:root{
  --red:#B31F35;
  --red-dk:#8E1729;
  --red-tint:#F7E8EB;
  --ink:#1E2227;
  --ink-2:#5A6069;
  --line:#DADCDF;
  --paper:#F6F6F4;
  --white:#FFFFFF;
  --steel:#23282F;
  --wrap:1200px;
  --hdr:72px;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Manrope",system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
img,svg{max-width:100%}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
h1,h2,h3{letter-spacing:-.02em;line-height:1.15}
h2{font-size:clamp(28px,3vw,38px);font-weight:750;margin:0 0 12px}
.intro{color:var(--ink-2);max-width:40em;margin:0 0 36px;font-size:18px}
.ext::after{content:"↗";font-size:.8em;margin-left:3px;opacity:.7}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;font-size:15.5px;text-decoration:none;padding:12px 22px;border-radius:6px;border:2px solid var(--red);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{background:var(--red-dk);border-color:var(--red-dk)}
.btn-line{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-line:hover{background:var(--white)}
.btn-white{background:#fff;color:var(--red);border-color:#fff}
.btn-white:hover{background:var(--red-tint)}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-sm{padding:8px 16px;font-size:14.5px}

/* family bar */
.family{background:var(--ink);color:#C4C8CE;font-size:13.5px}
.family .wrap{display:flex;justify-content:space-between;gap:16px;padding-top:7px;padding-bottom:7px;flex-wrap:wrap}
.family nav{display:flex;gap:20px;flex-wrap:wrap}
.family a{text-decoration:none}
.family a:hover{color:#fff}
.family .here{color:#fff;font-weight:700}

/* header */
header.site{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
header.site .wrap{display:flex;align-items:center;gap:32px;height:var(--hdr)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;white-space:nowrap}
.brand-mark{background:var(--red);color:#fff;font-weight:800;font-size:15px;letter-spacing:.02em;padding:5px 8px;border-radius:3px}
.brand-name{font-weight:800;font-size:19px}
.mainnav{display:flex;gap:24px;font-size:15.5px;font-weight:600}
.mainnav a{text-decoration:none;padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap}
.mainnav a:hover,.mainnav a[aria-current]{border-color:var(--red);color:var(--red)}
.hdr-actions{margin-left:auto;display:flex;align-items:center;gap:12px}
.search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:7px 12px;font-size:14.5px;color:var(--ink-2);width:210px;background:var(--paper)}
.menu-toggle{display:none;background:none;border:2px solid var(--ink);border-radius:6px;padding:7px 12px;font:inherit;font-weight:700}

/* footer */
footer{background:var(--ink);color:#A9AFB7;font-size:15px;padding:56px 0 28px}
.foot{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px}
footer h4{color:#fff;font-size:15px;margin:0 0 12px;font-weight:700}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
footer a{text-decoration:none}
footer a:hover{color:#fff;text-decoration:underline}
.legal{border-top:1px solid #3A4048;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13.5px}

.draft-note{position:fixed;right:16px;bottom:16px;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--red);padding:10px 14px;font-size:13px;max-width:270px;box-shadow:0 6px 20px rgba(30,34,39,.12);z-index:30}

@media (max-width:1240px){.search{display:none}}
@media (max-width:1000px){.mainnav{gap:16px;font-size:14.5px}}
@media (max-width:900px){
  .mainnav,.hdr-actions .btn-line{display:none}
  .menu-toggle{display:inline-flex}
  .foot{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .wrap{padding:0 16px}
  :root{--hdr:62px}
  header.site .wrap{gap:12px}
  .hdr-actions .btn-red{padding:7px 12px;font-size:14px}
  .family nav a:not(.here){display:none}
  .foot{grid-template-columns:1fr}
  .draft-note{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
