/* Triplex Systems — Gantry-free Grav 2 theme
   Brand heritage (from the live Gantry 5 / Hadron preset 6 site):
     primary blue  #1e73be   dark blue  #0d4c82 / #144b7c / #175892
     sky accent    #3b93d0 / #40b0e0
     ink           #282828 / #1b1b1b / #3a3541   body grey #777777
     font          Noto Sans, Verdana, Helvetica, Arial
     brand gold    #d4ae35         silver #bfbfbf  (the logo's three stroke colours)
   Modernised: larger type scale, 1200px container, sticky white header
   with the original soft shadow, pill buttons in the brand blue, cards
   that lift on hover (evolved from the site's own custom .card-view
   rules), dark ink footer, CSS custom properties so Admin > Themes can
   retint the blues without touching code. No build step, no framework.
*/
@font-face{
  font-family:"Noto Sans Variable";font-style:normal;font-display:swap;font-weight:100 900;
  src:url("../fonts/noto-sans-latin-wght-normal.woff2") format("woff2-variations"),url("../fonts/noto-sans-latin-wght-normal.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root{
  --brand:#1e73be;          /* overridden inline from theme config */
  --brand-dark:#0d4c82;     /* overridden inline from theme config */
  --brand-deep:#061624;
  --brand-sky:#3b93d0;
  --brand-gold:#d4ae35;     /* logo gold */
  --brand-gold-dark:#b8922a;
  --brand-silver:#bfbfbf;   /* logo silver */
  --stage:#eef3f8;          /* light panel behind product photos */
  --ink:#282828;
  --ink-soft:#3a3541;
  --body:#4b5563;
  --muted:#79767f;
  --line:#e5e5e5;
  --bg-soft:#f8f9fa;
  --radius:14px;
  --shadow:0 4px 16px rgba(6,22,36,.10);
  --shadow-lift:0 14px 34px rgba(6,22,36,.16);
  --font:"Noto Sans Variable","Noto Sans","Segoe UI",Verdana,Helvetica,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);font-size:1.0625rem;line-height:1.65;color:var(--body);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--brand-dark);text-decoration:underline}
h1,h2,h3,h4{color:var(--ink);line-height:1.2;margin:0 0 .6em;font-weight:700;letter-spacing:-.01em}
h1{font-size:clamp(2rem,4.5vw,3.1rem)}
h2{font-size:clamp(1.55rem,3vw,2.15rem)}
h3{font-size:1.3rem}
.container{width:min(1200px,100% - 2.5rem);margin-inline:auto}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--brand);color:#fff;padding:.6rem 1rem;z-index:2000}
.skip-link:focus{left:0;color:#fff}

/* Top bar */
.topbar{background:var(--brand-deep);color:#cfe3f5;font-size:.86rem}
.topbar-inner{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;flex-wrap:wrap}
.topbar a{color:#fff;font-weight:600}
.topbar-contact{display:flex;gap:1.25rem}

/* Header — white, sticky, soft shadow (as the Gantry site's custom CSS) */
.site-header{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:0 4px 10px rgba(0,0,0,.10)}
.header-inner{display:flex;align-items:center;gap:1.5rem;min-height:84px}
.site-logo{flex-shrink:0}
.site-logo img{height:46px;width:auto;display:block}
.wordmark{font-size:1.55rem;font-weight:800;letter-spacing:.04em;color:var(--ink);white-space:nowrap}
.wordmark span{color:var(--brand)}
.wordmark-light{color:#fff}
.header-cta{margin-left:auto}

/* Navigation — original behaviour kept: blue fill on hover, outlined active */
.site-nav{margin-left:auto}
.nav-list{display:flex;gap:.25rem;list-style:none;margin:0;padding:0;align-items:center}
.nav-item{position:relative;display:flex;align-items:center;border:2px solid transparent;border-radius:8px}
.nav-item:hover,.nav-item:focus-within{background:var(--brand);border-color:var(--brand)}
.nav-item:hover .nav-link,.nav-item:focus-within .nav-link{color:#fff;text-decoration:none}
.nav-item.is-active{border-color:var(--ink-soft)}
.nav-item.is-active:hover{border-color:var(--brand)}
.nav-link{display:block;padding:.55rem .8rem;color:var(--ink-soft);font-weight:600;font-size:.98rem}
.nav-caret{background:none;border:0;color:inherit;cursor:pointer;padding:.4rem .5rem .4rem 0;font-size:.75rem;color:var(--ink-soft)}
.nav-item:hover .nav-caret{color:#fff}
.nav-dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:300px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lift);list-style:none;margin:0;padding:.5rem;display:none;z-index:1100}
.nav-item:hover .nav-dropdown,.nav-item:focus-within .nav-dropdown,.nav-item.is-open .nav-dropdown{display:block}
.nav-dropdown a{display:block;padding:.55rem .75rem;border-radius:6px;color:var(--ink);font-weight:500}
.nav-dropdown a:hover{background:#eaf3fb;color:var(--brand-dark);text-decoration:none}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:.6rem;margin-left:auto}
.nav-toggle-bar{display:block;width:26px;height:3px;background:var(--ink);margin:5px 0;border-radius:2px}

/* Buttons — evolved from the site's .read-more button */
.button{display:inline-block;background:var(--brand);color:#fff!important;padding:.72rem 1.5rem;border-radius:999px;font-weight:600;border:2px solid var(--brand);transition:background .2s,border-color .2s,transform .2s;text-decoration:none!important}
.button:hover{background:var(--brand-dark);border-color:var(--brand-dark);transform:translateY(-1px)}
.button-small{padding:.5rem 1.1rem;font-size:.95rem}
.button-light{background:#fff;border-color:#fff;color:var(--brand-dark)!important}
.button-light:hover{background:#eaf3fb;border-color:#eaf3fb}
.button-gold{background:var(--brand-gold);border-color:var(--brand-gold);color:#1b1b1b!important}
.button-gold:hover{background:#e2c159;border-color:#e2c159}
.button-ghost{background:transparent;color:var(--brand)!important}
.button-ghost:hover{background:var(--brand);color:#fff!important}

/* Hero */
.hero{position:relative;background:linear-gradient(120deg,var(--brand-deep) 0%,var(--brand-dark) 52%,var(--brand) 100%);color:#fff;overflow:hidden}
.hero-media{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;opacity:.28}
.hero-inner{position:relative;padding:clamp(3.5rem,8vw,6.5rem) 0;max-width:1200px}
.hero h1,.hero h2{color:#fff;max-width:18em}
.hero-sub{font-size:clamp(1.1rem,2vw,1.35rem);color:#dbeaf8;max-width:42em}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;font-weight:700;color:var(--brand-sky);margin:0 0 .8rem}
.hero .eyebrow{color:#9fd0f5}
.hero-actions{margin-top:1.6rem}

/* Content */
.content-wrap{padding:clamp(2.2rem,5vw,3.8rem) 0}
.page-title{margin-bottom:1rem}
.prose{max-width:78ch}
.prose p{margin:0 0 1.1em}
.prose ul,.prose ol{margin:0 0 1.1em;padding-left:1.4em}
.prose img{border-radius:var(--radius)}
.prose-lead{font-size:1.13rem}
.prose-light,.prose-light p{color:#dbeaf8}
.section-title{margin-bottom:1.2rem}

/* Cards — modernised .card-view */
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin-top:2.2rem}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift)}
.card-media{display:block;height:250px;overflow:hidden}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;display:block}
.card-media.stage{border-radius:0;position:relative}
.card-media.stage img{position:absolute;inset:1.2rem;width:calc(100% - 2.4rem);height:calc(100% - 2.4rem);object-fit:contain}
.card:hover .card-media img{transform:scale(1.05)}
.card-body{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}
.card-title{margin-bottom:.4rem}
.card-title a{color:var(--brand)}
.card-title a:hover{color:var(--brand-dark)}
.card-meta{color:var(--muted);font-size:.9rem;margin:0 0 .6rem}
.card-text{flex-grow:1}

/* Home feature band + mission */
.feature-band{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3rem}
.feature{background:var(--bg-soft);border-top:4px solid var(--brand);border-radius:var(--radius);padding:2rem}
.mission{margin-top:3rem;text-align:center;background:linear-gradient(120deg,var(--brand-dark),var(--brand));color:#fff;border-radius:var(--radius);padding:2.8rem 2rem}
.mission h2{color:#fff}
.mission-text{font-size:1.4rem;font-weight:600;max-width:34em;margin:0 auto}


/* Brand motif: the logo's three strokes (silver, blue, gold) as a small
   slanted tick in front of section labels. */
.eyebrow-stripe{display:flex;align-items:center;gap:.7rem}
.eyebrow-stripe::before{content:"";flex:0 0 34px;height:10px;transform:skewX(-30deg);background:linear-gradient(90deg,var(--brand-silver) 0 28%,transparent 28% 36%,var(--brand) 36% 64%,transparent 64% 72%,var(--brand-gold) 72% 100%)}

/* Stage: soft panel behind product photos. multiply drops the photos'
   white backgrounds into the panel colour. */
.stage{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#f5f8fb 0%,var(--stage) 100%);border-radius:var(--radius)}
.stage img{mix-blend-mode:multiply;display:block}

/* Home: hero */
.home-hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:linear-gradient(120deg,var(--brand-deep) 0%,var(--brand-dark) 60%,var(--brand) 100%)}
.home-hero-media{position:absolute;inset:0;z-index:-1}
.home-hero-media img{width:100%;height:100%;object-fit:cover;object-position:75% 35%}
.home-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,22,36,.97) 0%,rgba(6,22,36,.9) 34%,rgba(13,76,130,.55) 64%,rgba(13,76,130,.28) 100%)}
.home-hero-inner{padding:clamp(3.5rem,8vw,6.5rem) 0 clamp(6rem,10vw,8.5rem)}
.home-hero-copy{max-width:640px}
.home-hero h1{color:#fff;font-size:clamp(2.1rem,4.6vw,3.35rem);letter-spacing:-.02em;margin-bottom:.45em}
.home-hero .eyebrow{color:#fff;opacity:.92}
.home-hero .hero-sub{color:#dbeaf8}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}
.hero-highlights{list-style:none;margin:2rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;font-size:.95rem;color:#e6f0fa}
.hero-highlights li{display:flex;align-items:center;gap:.5rem}
.hero-highlights li::before{content:"";width:14px;height:5px;background:var(--brand-gold);transform:skewX(-30deg)}

/* Home: value strip, overlapping the hero */
.home-values{position:relative;z-index:2;margin-top:clamp(-4.5rem,-6vw,-3rem)}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-lift)}
.value{display:flex;gap:1.1rem;align-items:flex-start;padding:1.8rem 1.7rem}
.value+.value{border-left:1px solid var(--line)}
.value-icon{flex:0 0 56px}
.value-icon img{width:56px;height:56px;display:block}
.value h3{font-size:1.12rem;margin-bottom:.35rem}
.value p{margin:0;font-size:.98rem}

.home-intro{padding:clamp(2.5rem,5vw,3.5rem) 0 0}

/* Home: alternating product rows */
.feature-row-wrap{padding:clamp(3rem,7vw,5.5rem) 0 0}
.feature-row{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.feature-row.is-reversed .feature-row-media{order:2}
.feature-row-media{padding:clamp(1rem,3vw,2.2rem);min-height:320px}
.feature-row-media img{width:100%;height:auto;max-height:480px;object-fit:contain}
.feature-row-copy h2{margin-bottom:.55em}
.check-prose ul{list-style:none;padding:0;margin:1.2rem 0 0}
.check-prose li{position:relative;padding-left:1.7rem;margin:.45rem 0;color:var(--ink-soft)}
.check-prose li::before{content:"";position:absolute;left:0;top:.62em;width:12px;height:5px;background:var(--brand);transform:skewX(-30deg)}
.row-actions{margin:1.8rem 0 0}
.model-strip{list-style:none;padding:0;margin:1.8rem 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}
.model a{display:block;color:var(--ink);text-decoration:none}
.model-media{position:relative;aspect-ratio:10/7;transition:box-shadow .25s,transform .25s}
.model-media img{position:absolute;inset:.6rem;width:calc(100% - 1.2rem);height:calc(100% - 1.2rem);object-fit:contain}
.model a:hover .model-media{box-shadow:var(--shadow);transform:translateY(-2px)}
.model-name{display:block;margin-top:.45rem;font-weight:700;font-size:.92rem;letter-spacing:.02em}
.model a:hover .model-name{color:var(--brand)}

/* Home: components */
.home-components{background:var(--bg-soft);margin-top:clamp(3.5rem,7vw,5.5rem);padding:clamp(3rem,7vw,5rem) 0;border-top:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:2.2rem}
.section-head h2{margin-bottom:.35em}
.section-lead{font-size:1.1rem;max-width:44em;margin:0}
.section-head-action{margin:0}
.component-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.component-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}
.component-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift)}
.component-media{position:relative;border-radius:0;aspect-ratio:4/3}
.component-media img{position:absolute;inset:1rem;width:calc(100% - 2rem);height:calc(100% - 2rem);object-fit:contain}
.component-body{padding:1.2rem 1.3rem 1.4rem}
.component-body h3{font-size:1.08rem;margin-bottom:.35rem}
.component-body h3 a{color:var(--ink)}
.component-card:hover h3 a{color:var(--brand)}
.component-body p{margin:0;font-size:.95rem}
.stretched-link::after{content:"";position:absolute;inset:0}
.stretched-link:hover{text-decoration:none}

/* Home: mission */
.home-mission{background:linear-gradient(120deg,var(--brand-deep) 0%,var(--brand-dark) 100%);color:#dbeaf8;padding:clamp(3.5rem,7vw,5.5rem) 0}
.mission-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.mission-media img{width:100%;height:auto;border-radius:var(--radius);box-shadow:16px 16px 0 var(--brand-gold);display:block}
.home-mission h2{color:#fff;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.25}
.home-mission .eyebrow{color:#fff;opacity:.92}
.mission-points{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 2rem}
.mission-points li{border-top:3px solid var(--brand-gold);padding-top:.8rem}
.mission-points strong{display:block;color:#fff;font-size:1.05rem;margin-bottom:.2rem}
.mission-points span{font-size:.97rem}

/* Home: closing call to action */
.home-cta{position:relative;isolation:isolate;overflow:hidden;background:var(--brand-deep);color:#e6f0fa;text-align:center}
.home-cta-media{position:absolute;inset:0;z-index:-1}
.home-cta-media img{width:100%;height:100%;object-fit:cover}
.home-cta-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,22,36,.72),rgba(6,22,36,.86))}
.home-cta-inner{padding:clamp(4rem,9vw,6.5rem) 0;max-width:760px}
.home-cta h2{color:#fff}
.home-cta p{font-size:1.12rem}
.home-cta .hero-actions{justify-content:center;margin-top:1.8rem}

/* Product pages: main photo */
.product-figure{margin:0 0 2rem;padding:clamp(1rem,3vw,2rem)}
.product-figure img{width:100%;height:auto;max-height:520px;object-fit:contain}

/* Product pages */
.product-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:3rem;align-items:start}
.spec-block{margin-top:2.4rem}
.check-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.45rem 1.5rem}
.check-list li{padding-left:1.6rem;position:relative}
.check-list li::before{content:"✓";position:absolute;left:0;color:var(--brand);font-weight:800}
.spec-table{width:100%;border-collapse:collapse}
.spec-table th,.spec-table td{border:1px solid var(--line);padding:.6rem .9rem;text-align:left;vertical-align:top}
.spec-table th{background:var(--bg-soft);width:38%;color:var(--ink)}
.aside-card{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem;margin-bottom:1.4rem}
.aside-card h2{font-size:1.25rem}
.aside-nav ul{list-style:none;margin:0;padding:0}
.aside-nav li{border-top:1px solid var(--line)}
.aside-nav a{display:block;padding:.55rem 0}

/* Articles */
.article-wrap{max-width:860px}
.article-meta{color:var(--muted)}
.article-hero img{border-radius:var(--radius);width:100%}
.prev-next{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2.5rem}

/* Pagination — round, blue active (as the live site's custom CSS) */
.pagination-wrap{display:flex;justify-content:center;margin-top:2.5rem}
.pagination{display:flex;gap:.5rem;list-style:none;margin:0;padding:0}
.pagination a,.pagination span{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#f5f5f5;color:#333;font-weight:600}
.pagination .is-current span,.pagination a:hover{background:var(--brand);color:#fff;text-decoration:none}

/* Footer — dark ink, blue accents */
.site-footer{background:var(--ink);color:#cfcfcf;margin-top:0}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2.5rem;padding:3.5rem 0 2.5rem}
.footer-logo{display:flex;align-items:center;gap:.75rem;color:#fff;font-weight:700;font-size:1.2rem;margin:0 0 1rem}
.footer-logo .brand-mark{width:56px;height:auto;flex-shrink:0}
.footer-col h2{color:#fff;font-size:1.05rem;text-transform:uppercase;letter-spacing:.08em}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col li{margin:.45rem 0}
.site-footer a{color:#cfcfcf}
.site-footer a:hover{color:#fff}
.footer-address{white-space:normal}
.site-footer a{overflow-wrap:anywhere}
.footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid #3d3d3d;padding:1.2rem 0 1.6rem;font-size:.9rem;color:#a8a8a8}

/* Forms (Grav form plugin output on Contact) */
form .form-field{margin-bottom:1.1rem}
form label{display:block;font-weight:600;color:var(--ink);margin-bottom:.35rem}
form input[type="text"],form input[type="email"],form textarea,form select{width:100%;padding:.7rem .9rem;border:1px solid #c9d4de;border-radius:8px;font:inherit;background:#fff}
form input:focus,form textarea:focus{outline:3px solid rgba(30,115,190,.3);border-color:var(--brand)}
form button[type="submit"]{background:var(--brand);color:#fff;border:2px solid var(--brand);border-radius:999px;padding:.72rem 1.6rem;font-weight:600;cursor:pointer}
form button[type="submit"]:hover{background:var(--brand-dark)}

.button-ghost-light{background:transparent;border-color:rgba(255,255,255,.75);color:#fff!important}
.button-ghost-light:hover{background:rgba(255,255,255,.14);border-color:#fff;color:#fff!important}

/* Component Library patterns (grav-plugin-component-library, cl-* markup).
   Styled to match this theme's cards/buttons so pattern content looks
   native. The plugin's own stylesheet can stay off. */
.cl-hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.6rem}
.cl-cta-rows{margin-top:2.5rem;display:grid;gap:2.5rem}
.cl-cta-rows__row{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:center}
.cl-cta-rows__row--media{grid-template-columns:1.2fr 1fr}
.cl-cta-rows__media img{border-radius:var(--radius);width:100%}
.cl-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:2.5rem}
.cl-tiles__card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem;height:100%}
.cl-tiles__media img{border-radius:8px;width:100%}
.cl-header-image img{width:100%;display:block}

/* Responsive */
@media (max-width:1100px){
  .component-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:960px){
  .product-layout{grid-template-columns:1fr}
  .feature-row,.mission-grid{grid-template-columns:1fr}
  .feature-row.is-reversed .feature-row-media{order:0}
  .feature-row-media{min-height:0}
  .values-grid{grid-template-columns:1fr}
  .value+.value{border-left:0;border-top:1px solid var(--line)}
  .home-hero-media::after{background:linear-gradient(180deg,rgba(6,22,36,.8),rgba(6,22,36,.92))}
  .mission-media{max-width:560px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .feature-band{grid-template-columns:1fr}
}
@media (max-width:820px){
  .header-cta{display:none}
  .nav-toggle{display:block}
  .site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:var(--shadow-lift);padding:1rem 1.25rem 1.4rem;margin:0}
  .site-nav.is-open{display:block}
  .nav-list{flex-direction:column;align-items:stretch}
  .nav-item{flex-wrap:wrap;border:0}
  .nav-item:hover{background:transparent}
  .nav-item:hover .nav-link{color:var(--brand)}
  .nav-dropdown{position:static;display:none;box-shadow:none;border:0;padding:.2rem 0 .6rem 1rem;min-width:0}
  .nav-item.is-open .nav-dropdown{display:block}
  .topbar-tagline{display:none}
  .check-list{grid-template-columns:1fr}
  .site-logo img{height:38px}
}
@media (max-width:560px){
  .footer-grid{grid-template-columns:1fr;gap:1.8rem}
  .component-grid{grid-template-columns:1fr}
  .mission-points{grid-template-columns:1fr}
  .model-strip{gap:.6rem}
  .hero-actions .button{flex:1 1 100%;text-align:center}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;scroll-behavior:auto!important}
}
