/* HAAK design system. Every shell override is scoped to body:has(#alc),
   so it only applies to pages that carry the new HAAK markup and cannot
   leak into the legacy pages still live on the site. */

body:has(#alc) #Subheader{display:none !important}
body:has(#alc) #Footer{display:none !important}
body:has(#alc) #Content,
body:has(#alc) #Wrapper,
body:has(#alc) #Content .section_wrapper{background:#F7F6F0}
body:has(#alc) .sections_group{margin-top:0}
body:has(#alc) #Content .section_wrapper{max-width:100%}
body:has(#alc) .hero{padding-top:132px}

#alc{--paper:#F7F6F0;--panel:#FBFBF6;--ink:#0F150F;--muted:#485349;--green:#0F7A45;
  --rule:#DEE3D7;--band:#0F150F;--bandink:#F4F7F2;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Helvetica,Arial,sans-serif;
  color:var(--ink);background:var(--paper);line-height:1.62;font-size:17px;margin:0;
  -webkit-font-smoothing:antialiased}
#alc *{box-sizing:border-box}
#alc .wrap{max-width:1000px;margin:0 auto;padding:0 28px}
#alc .eyebrow{font-family:ui-monospace,Consolas,"Courier New",monospace;font-size:11.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin:0 0 18px}
#alc h1{font-size:clamp(32px,5vw,58px);line-height:1.05;letter-spacing:-.025em;margin:0 0 22px;font-weight:700}
#alc h1 em{font-style:italic;color:var(--green)}
#alc h2{font-size:clamp(25px,3.3vw,38px);line-height:1.12;letter-spacing:-.02em;margin:0 0 16px;font-weight:700}
#alc h3{font-size:18.5px;margin:0 0 8px;font-weight:650;letter-spacing:-.01em}
#alc h4{font-size:15px;margin:0 0 6px;font-weight:650}
#alc p{margin:0 0 16px;color:var(--muted);max-width:72ch}
#alc p.lead{font-size:19.5px;color:var(--ink);max-width:62ch}
#alc li{color:var(--muted);margin-bottom:7px}
#alc strong{color:var(--ink);font-weight:650}
#alc a{color:var(--green)}
#alc section{padding:72px 0;border-top:1px solid var(--rule)}
#alc section.first{border-top:0}
#alc .hero{padding:0 0 60px;border-top:0}
#alc .hero p{max-width:64ch;font-size:18.5px}
#alc .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);
  border:1px solid var(--rule);margin:42px 0 0}
#alc .stat{background:var(--panel);padding:22px 20px}
#alc .stat b{display:block;font-size:clamp(23px,2.9vw,32px);letter-spacing:-.02em;line-height:1;margin-bottom:9px}
#alc .stat span{font-family:ui-monospace,Consolas,monospace;font-size:10.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted)}
#alc table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15.5px}
#alc th{text-align:left;font-family:ui-monospace,Consolas,monospace;font-size:10.5px;letter-spacing:.12em;
  text-transform:uppercase;color:#fff;background:var(--green);padding:12px 14px;font-weight:600}
#alc td{padding:13px 14px;border-bottom:1px solid var(--rule);color:var(--muted);vertical-align:top}
#alc td:first-child{color:var(--ink);font-weight:600;white-space:nowrap}
#alc tr:nth-child(even) td{background:var(--panel)}
#alc .grid2{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
#alc .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
#alc .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
#alc .card{background:var(--panel);border:1px solid var(--rule);padding:26px}
#alc .card p{margin:0;font-size:15px}
#alc .card h3{font-size:16.5px;margin-bottom:10px}
#alc .note{font-family:ui-monospace,Consolas,monospace;font-size:11.5px;line-height:1.65;color:#6b776c;
  border-top:1px solid var(--rule);padding-top:14px;margin-top:24px;max-width:84ch}
#alc .band{background:var(--band);color:var(--bandink);padding:64px 0}
#alc .band h2,#alc .band h3{color:var(--bandink)}
#alc .band p,#alc .band li{color:#B9C3BA}
#alc .band .eyebrow{color:#8FD3A9}
#alc .band strong{color:#F4F7F2}
#alc .pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#2A322A;
  border:1px solid #2A322A;margin-top:30px}
#alc .pillar{background:#141A14;padding:24px 22px}
#alc .pillar b{display:block;font-family:ui-monospace,Consolas,monospace;font-size:10.5px;
  letter-spacing:.12em;text-transform:uppercase;color:#8FD3A9;margin-bottom:10px}
#alc .pillar span{color:#D6DDD6;font-size:15px}
#alc .quote{border-left:3px solid var(--green);padding:4px 0 4px 22px;margin:26px 0;font-size:19px;
  color:var(--ink);max-width:64ch;line-height:1.45}
#alc .cta{padding:76px 0 84px}
#alc .btn{display:inline-block;background:var(--green);color:#fff !important;text-decoration:none;
  padding:15px 26px;font-weight:600;font-size:15px;margin-top:6px}
#alc .btn:hover{background:#0b5f36}
#alc .foot{background:var(--band);color:#B9C3BA;padding:56px 0 30px}
#alc .foot .grid3{gap:30px}
#alc .foot h4{color:#F4F7F2;font-family:ui-monospace,Consolas,monospace;font-size:10.5px;
  letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
#alc .foot a{color:#D6DDD6;text-decoration:none}
#alc .foot p{color:#B9C3BA;font-size:14px;margin:0 0 8px}
#alc .foot .legal{border-top:1px solid #2A322A;margin-top:34px;padding-top:18px;
  font-family:ui-monospace,Consolas,monospace;font-size:10.5px;letter-spacing:.08em;
  text-transform:uppercase;color:#7C877D;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* heading colour + header contrast on HAAK pages */
#alc h2,#alc h3,#alc h4{color:var(--ink)}
#alc .band h2,#alc .band h3,#alc .band h4{color:var(--bandink)}
body:has(#alc) #Header{background:#F7F6F0 !important;box-shadow:0 1px 0 #DEE3D7}
body:has(#alc) #Header a,body:has(#alc) #Header .menu > li > a{color:#0F150F !important}
body:has(#alc) #Header .menu > li > a:hover{color:#0F7A45 !important}
body:has(#alc) #Header #search_button,body:has(#alc) #Header .icon-search{color:#0F150F}

@media(max-width:860px){
  #alc .stats,#alc .grid4{grid-template-columns:1fr 1fr}
  #alc .grid2,#alc .grid3,#alc .pillars{grid-template-columns:1fr}
  #alc section{padding:50px 0}
  #alc td:first-child{white-space:normal}
}
