/* ARTSAN components. Every colour is a token; a section sets its ground with data-theme="bordo|paper|night". */
.ar-ground{background:var(--ground);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
.ar-ground :focus-visible{outline:2px solid var(--focus);outline-offset:3px}

/* Button */
.ar-btn{display:inline-flex;white-space:nowrap;flex:none;align-items:center;gap:var(--space-3);min-height:48px;padding:0 var(--space-6);border:1px solid transparent;border-radius:var(--radius-hair);font-family:var(--font-sans);font-weight:600;font-size:12px;line-height:1;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:border-color .2s,filter .2s}
.ar-btn::after{content:"\2192";font-size:15px;letter-spacing:0;transition:transform .2s}
.ar-btn:hover::after{transform:translateX(4px)}
.ar-btn--primary{background:var(--accent);color:var(--on-accent)}
.ar-btn--primary:hover{filter:brightness(1.08)}
.ar-btn--ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}
.ar-btn--ghost:hover{border-color:var(--text)}
.ar-btn:focus-visible{outline:2px solid var(--focus);outline-offset:3px}

/* SectionHead */
.ar-head{display:grid;gap:var(--space-6);max-width:880px}
.ar-head__kicker{margin:0;color:var(--accent-text);font-weight:500;font-size:14px;line-height:1.35;letter-spacing:.02em;text-transform:uppercase}
.ar-head__title{margin:0;color:var(--text);font-weight:300;font-size:clamp(30px,4.2vw,44px);line-height:1.14;letter-spacing:.06em;text-transform:uppercase;text-wrap:balance}
.ar-head__lede{margin:0;max-width:var(--measure);color:var(--text-muted);font-size:clamp(17px,1.4vw,19px);line-height:1.6}

/* Capacity */
.ar-capacity{display:grid;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--line)}
.ar-capacity__figure{font-family:var(--font-sans);font-weight:300;font-size:clamp(44px,5vw,56px);line-height:1;letter-spacing:.01em;color:var(--accent);font-variant-numeric:lining-nums}
.ar-capacity__unit{font-weight:600;font-size:12px;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}
.ar-capacity__label{font-size:16px;line-height:1.5;color:var(--text-muted)}

/* TechniqueRow */
.ar-tech{display:grid;grid-template-columns:96px 1fr auto auto;align-items:center;gap:var(--space-6);padding:var(--space-4) 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}
.ar-tech__img{display:block;width:96px;height:120px;object-fit:cover;border-radius:var(--radius-none)}
.ar-tech__name{display:grid;gap:var(--space-1);font-weight:500;font-size:20px;line-height:1.35;letter-spacing:.02em;text-transform:uppercase}
.ar-tech__sub{font-weight:400;font-size:16px;letter-spacing:0;text-transform:none;color:var(--text-muted)}
.ar-tech__cap{font-family:var(--font-sans);font-weight:400;font-size:28px;font-variant-numeric:lining-nums;line-height:1;color:var(--accent);white-space:nowrap}
.ar-tech__go{font-size:20px;color:var(--accent-text);transition:transform .2s}
.ar-tech:hover .ar-tech__go{transform:translateX(4px)}
@media (max-width:640px){.ar-tech{grid-template-columns:72px 1fr;gap:var(--space-4)}.ar-tech__img{width:72px;height:90px}.ar-tech__cap{grid-column:2;font-size:24px}.ar-tech__go{display:none}}

/* Field */
.ar-field{display:grid;gap:var(--space-2)}
.ar-field__label{font-weight:600;font-size:12px;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;color:var(--text)}
.ar-field__input{box-sizing:border-box;width:100%;min-height:48px;padding:var(--space-3) 0;background:transparent;border:0;border-bottom:1px solid var(--line-strong);border-radius:var(--radius-none);color:var(--text);font:400 16px/1.5 var(--font-sans)}
.ar-field__input::placeholder{color:var(--text-muted);opacity:1}
.ar-field__input:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
.ar-field--error .ar-field__input{border-bottom:2px solid var(--error)}
.ar-field__msg{margin:0;font-size:14px;line-height:1.5;color:var(--error)}

/* CertStrip — bordo ground only */
.ar-certs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8) var(--space-12);margin:0;padding:0;list-style:none}
.ar-certs img{display:block;height:56px;width:auto}
@media (max-width:640px){.ar-certs{gap:var(--space-6) var(--space-8)}.ar-certs img{height:40px}}

/* PartnerWall */
.ar-partners{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));column-gap:var(--space-6);margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.ar-partners li{padding:var(--space-4) 0;border-bottom:1px solid var(--line);font-weight:500;font-size:13px;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;color:var(--text)}

/* NavBar */
.ar-nav{display:flex;align-items:center;gap:var(--space-8);min-height:80px;padding-inline:var(--gutter-lg);background:var(--ground);color:var(--text);border-bottom:1px solid var(--line);font-family:var(--font-sans)}
.ar-nav__brand{display:block;flex:none}
.ar-nav__brand img{display:block;height:28px;width:auto}
.ar-nav__links{display:flex;gap:var(--space-6);margin-left:auto}
.ar-nav__links a,.ar-nav__lang a,.ar-nav__menu{color:var(--text);text-decoration:none;font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding-block:var(--space-2);border-bottom:1px solid transparent}
.ar-nav__links a:hover,.ar-nav__links a[aria-current="page"]{border-bottom-color:var(--accent)}
.ar-nav__lang{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:12px}
.ar-nav__lang a[aria-current="true"]{color:var(--accent-text)}
.ar-nav__menu{display:none;background:none;border:0;cursor:pointer;min-height:48px;font-family:var(--font-sans)}
@media (max-width:860px){.ar-nav{padding-inline:var(--gutter-sm);gap:var(--space-4)}.ar-nav__links,.ar-nav .ar-btn{display:none}.ar-nav__lang{margin-left:auto}.ar-nav__menu{display:block}}

@media (prefers-reduced-motion:reduce){.ar-btn,.ar-btn::after,.ar-tech__go{transition:none}}
