/* ==========================================================================
   HUBEI FINE BLANKING MACHINERY — DESIGN SYSTEM
   Direction: "Precision Blueprint" — the visual language of engineering
   drawings, machine nameplates and tolerance tables, rendered for the web.
   ========================================================================== */

:root{
  --color-graphite: #10151c;
  --color-machine-white: #ffffff;
  --color-engineering-blue: #1d4e89;
  --color-safety-orange: #e8971f;
  --color-neutral-steel: #4a5561;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --focus-ring: 3px solid #e8971f;
  --max-width: 1280px;
  /* Color */
  --ink:        #10151C;   /* graphite — primary dark surface & headings */
  --ink-2:      #1A2230;   /* secondary dark surface */
  --steel:      #4A5561;   /* body copy on light */
  --steel-2:    #6B7684;   /* muted copy */
  --steel-line: #D7DBDE;   /* hairline rules */
  --paper:      #EEF1F3;   /* light section bg */
  --paper-2:    #F7F8F6;   /* card bg */
  --white:      #FFFFFF;
  --blueprint:  #1D4E89;   /* primary accent — engineering blue */
  --blueprint-b:#2E73C4;   /* bright blue — links/hover */
  --signal:     #E8971F;   /* amber — CTAs, sparing use */
  --signal-d:   #C67A0E;
  --ok:         #2F7D5A;

  /* Type */
  --f-display: 'Arial Narrow', 'Roboto Condensed', Arial, sans-serif;
  --f-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  --f-mono: 'SFMono-Regular', Consolas, 'Liberation Mono', monospace;

  --radius: 2px;
  --maxw: var(--max-width);
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}
}

body{
  margin:0;
  font-family:var(--f-body);
  color:var(--steel);
  background:var(--white);
  line-height:1.65;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;display:block;}
a{color:var(--blueprint);text-decoration:none;}
a:hover{color:var(--blueprint-b);}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:var(--focus-ring);outline-offset:3px;
}

h1,h2,h3,h4{
  font-family:var(--f-display);
  color:var(--ink);
  font-weight:600;
  letter-spacing:0.01em;
  line-height:1.15;
  margin:0 0 .5em;
  text-transform:none;
}
h1{font-size:3.25rem;letter-spacing:0.005em;}
h2{font-size:2.25rem;}
h3{font-size:1.25rem;}
p{margin:0 0 1.1em;}
.lead{font-size:1.15rem;color:var(--steel);}

.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.skip-link{position:fixed;z-index:1000;top:8px;left:8px;padding:10px 14px;background:var(--white);color:var(--ink);border:2px solid var(--signal);transform:translateY(-150%);}
.skip-link:focus{transform:translateY(0);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;}
.section{padding:88px 0;}
.section--tight{padding:56px 0;}
.section--dark{background:var(--ink);color:#B9C2CC;}
.section--dark h2,.section--dark h3{color:var(--white);}
.section--paper{background:var(--paper);}
.section--blue{background:var(--blueprint);color:#DCE7F4;}
.section--blue h2{color:var(--white);}

/* Eyebrow / kicker — used as a technical label, not decoration */
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--f-mono);
  font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--blueprint);
  margin-bottom:14px;
}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--signal);}
.section--dark .eyebrow,.section--blue .eyebrow{color:var(--signal);}

/* ============================= HEADER ============================= */
.topbar{
  background:var(--ink);color:#8B95A1;font-family:var(--f-mono);font-size:.76rem;
}
.topbar .container{display:flex;justify-content:space-between;align-items:center;height:36px;flex-wrap:wrap;gap:6px;}
.topbar a{color:#C7CFD6;}
.topbar a:hover{color:var(--signal);}
.topbar__links{display:flex;gap:18px;}
.topbar .brand__tagline{font-family:var(--f-mono);font-size:.72rem;font-weight:700;color:var(--white);letter-spacing:.06em;line-height:1;}

header.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--steel-line);
  backdrop-filter:blur(6px);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:78px;}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:42px;width:auto;}

.main-nav{display:flex;gap:2px;align-items:center;}
.main-nav > li{position:relative;list-style:none;}
.main-nav a.top-link{
  display:flex;align-items:center;gap:6px;padding:10px 15px;
  font-family:var(--f-body);font-weight:500;font-size:.92rem;color:var(--ink);
  border-radius:var(--radius);
}
.main-nav a.top-link:hover{color:var(--blueprint);background:var(--paper);}
.main-nav ul{list-style:none;display:flex;margin:0;padding:0;align-items:center;}
.main-nav .dropdown{display:block;position:absolute;top:100%;left:0;min-width:260px;background:var(--white);
  border:1px solid var(--steel-line);box-shadow:0 12px 28px rgba(16,21,28,.12);
  padding:10px 0;margin:0;list-style:none;opacity:0;visibility:hidden;transform:translateY(6px);
  transition:opacity .16s ease,transform .16s ease;}
.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown{opacity:1;visibility:visible;transform:translateY(0);}
.dropdown a{display:block;padding:9px 20px;font-size:.88rem;color:var(--steel);}
.dropdown a:hover{background:var(--paper);color:var(--blueprint);}
.dropdown .dd-cat{font-family:var(--f-mono);font-size:.68rem;color:var(--steel-2);letter-spacing:.08em;padding:8px 20px 4px;text-transform:uppercase;}

.header-cta{display:flex;align-items:center;gap:14px;}
.nav-toggle{display:none;}

/* ============================= BUTTONS ============================= */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--f-body);font-weight:600;font-size:.92rem;
  padding:13px 26px;border:1px solid transparent;border-radius:var(--radius);
  cursor:pointer;transition:all .15s ease;white-space:nowrap;
}
.btn-primary{background:var(--signal);color:var(--ink);}
.btn-primary:hover{background:var(--signal-d);color:var(--ink);}
.btn-outline{background:transparent;border-color:var(--ink);color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:var(--white);}
.btn-outline-light{background:transparent;border-color:rgba(255,255,255,.4);color:var(--white);}
.btn-outline-light:hover{background:var(--white);color:var(--ink);}
.btn-ghost{background:transparent;color:var(--blueprint);padding:13px 4px;}
.btn-ghost:hover{color:var(--signal-d);}
.btn-sm{padding:9px 18px;font-size:.82rem;}

/* ============================= HERO ============================= */
.hero{
  position:relative;background:var(--ink);color:#C7CFD6;overflow:hidden;
  padding:110px 0 90px;
}
.hero::before{
  content:"";position:absolute;inset:0;
  border-left:1px solid rgba(46,115,196,.18);
  border-right:1px solid rgba(46,115,196,.18);
  opacity:.7;
}
.hero__grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
.hero h1{color:var(--white);}
.hero .lead{color:#AEB8C2;max-width:520px;}
.hero__actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap;}
.hero__stats{display:flex;gap:0;margin-top:48px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px;}
.hero__stat{flex:1;border-right:1px solid rgba(255,255,255,.14);padding-right:18px;margin-right:18px;}
.hero__stat:last-child{border-right:none;}
.hero__stat b{display:block;font-family:var(--f-display);font-size:1.9rem;color:var(--white);}
.hero__stat span{font-family:var(--f-mono);font-size:.7rem;color:#8B95A1;letter-spacing:.06em;text-transform:uppercase;}

/* Blueprint corner-bracket frame — signature visual device */
.plate{position:relative;padding:18px;}
.plate::before,.plate::after,.plate i::before,.plate i::after{content:"";position:absolute;width:22px;height:22px;border:2px solid var(--signal);}
.plate::before{top:0;left:0;border-right:none;border-bottom:none;}
.plate::after{top:0;right:0;border-left:none;border-bottom:none;}
.plate i{display:block;position:relative;}
.plate i::before{bottom:0;left:0;top:auto;right:auto;border-right:none;border-top:none;}
.plate i::after{bottom:0;right:0;top:auto;left:auto;border-left:none;border-top:none;}
.plate img{width:100%;height:100%;object-fit:cover;display:block;}
.plate__cap{font-family:var(--f-mono);font-size:.68rem;color:var(--steel-2);letter-spacing:.05em;margin-top:10px;text-align:center;text-transform:uppercase;}

/* ============================= BREADCRUMB ============================= */
.crumb{background:var(--paper);border-bottom:1px solid var(--steel-line);}
.crumb .container{display:flex;gap:8px;align-items:center;height:46px;font-family:var(--f-mono);font-size:.76rem;color:var(--steel-2);flex-wrap:wrap;}
.crumb a{color:var(--steel-2);}
.crumb a:hover{color:var(--blueprint);}
.crumb span.sep{color:#C3CAD0;}
.crumb span.current{color:var(--ink);}

/* ============================= GRID / CARDS ============================= */
.grid{display:grid;gap:28px;}
.product-grid,.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}

.card{background:var(--white);border:1px solid var(--steel-line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .18s ease,transform .18s ease;}
.card:hover{box-shadow:0 16px 32px rgba(16,21,28,.1);transform:translateY(-3px);}
.card__media{aspect-ratio:4/3;background:var(--paper);overflow:hidden;}
.card__media img{width:100%;height:100%;object-fit:cover;}
.card__body{padding:22px 24px 26px;}
.card__tag{font-family:var(--f-mono);font-size:.68rem;color:var(--blueprint);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;display:block;}
.card__body h3{margin-bottom:8px;font-size:1.08rem;}
.card__body p{font-size:.92rem;margin-bottom:14px;color:var(--steel-2);}
.card__specs{display:flex;gap:16px;font-family:var(--f-mono);font-size:.76rem;color:var(--steel);border-top:1px dashed var(--steel-line);padding-top:12px;margin-top:4px;}
.card__specs b{display:block;color:var(--ink);font-size:.92rem;}
.card__specs span{color:var(--steel-2);font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;}

/* Product nameplate — mimics a machine ID plate */
.nameplate{border:1px solid var(--steel-line);background:var(--ink);color:#DCE1E6;padding:26px 28px;font-family:var(--f-mono);border-radius:var(--radius);}
.nameplate h4{color:var(--white);font-family:var(--f-display);font-size:1.1rem;margin-bottom:14px;letter-spacing:.03em;}
.nameplate dl{display:grid;grid-template-columns:1fr auto;gap:8px 14px;margin:0;font-size:.82rem;}
.nameplate dt{color:#8B95A1;}
.nameplate dd{margin:0;text-align:right;color:var(--signal);}

/* Spec / datasheet table: compact industrial catalogue treatment. */
.spec-table{width:100%;border-collapse:collapse;font-family:var(--f-body);font-size:.9rem;background:var(--white);}
.spec-table caption{text-align:left;font-family:var(--f-body);font-weight:700;color:var(--ink);margin:0 0 10px;font-size:1rem;}
.spec-table thead th{background:#4d4d4d;color:var(--white);font-family:var(--f-body);font-weight:700;text-transform:none;font-size:.86rem;letter-spacing:0;}
.spec-table th,.spec-table td{padding:13px 16px;border:1px solid #d9d9d9;text-align:left;vertical-align:middle;}
.spec-table tbody tr:nth-child(even){background:#f1f1f1;}
.spec-table tbody tr:nth-child(odd){background:var(--white);}
.spec-table tbody td:first-child,.spec-table tbody th[scope="row"]{color:#53687d;font-weight:600;width:38%;}
.spec-table tbody td:last-child{color:#53687d;font-family:var(--f-mono);font-weight:500;}
.spec-table--comparison tbody th[scope="row"]{font-family:var(--f-body);white-space:normal;min-width:220px;}
.spec-table--comparison tbody td{font-family:var(--f-mono);font-weight:500;color:#53687d;}
.table-wrap{overflow-x:auto;border:1px solid #d9d9d9;background:var(--white);box-shadow:0 1px 2px rgba(16,21,28,.05);}
.table-wrap .spec-table{margin:0;min-width:600px;}
.table-wrap--wide .spec-table{min-width:1120px;}
.table-wrap .spec-table th,.table-wrap .spec-table td{white-space:nowrap;}

/* Process / numbered steps — used only for genuine sequences */
.steps{counter-reset:step;display:grid;gap:0;}
.step{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:26px 0;border-top:1px solid var(--steel-line);}
.step:first-child{border-top:none;}
.step__num{counter-increment:step;font-family:var(--f-display);font-size:1.6rem;color:var(--blueprint);}
.step__num::before{content:counter(step,decimal-leading-zero);}

/* Feature list w/ check */
.checklist{list-style:none;margin:0;padding:0;}
.checklist li{position:relative;padding:6px 0 6px 28px;font-size:.95rem;}
.checklist li::before{content:"✓";position:absolute;left:0;top:6px;color:var(--ok);font-family:var(--f-mono);font-weight:700;}

/* Badges */
.badge{display:inline-block;font-family:var(--f-mono);font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;padding:5px 10px;border:1px solid var(--steel-line);color:var(--steel);border-radius:2px;background:var(--paper-2);}
.badge-signal{border-color:var(--signal);color:var(--signal-d);background:#FFF6E9;}

/* Logo strip */
.logo-strip{display:flex;flex-wrap:wrap;gap:36px;align-items:center;justify-content:space-between;opacity:.75;}
.logo-strip span{font-family:var(--f-mono);font-size:.82rem;color:var(--steel-2);border:1px solid var(--steel-line);padding:10px 18px;}

/* CTA band */
.cta-band{background:var(--blueprint);color:var(--white);padding:60px 0;}
.cta-band .container{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.cta-band h2{color:var(--white);margin-bottom:6px;}
.cta-band p{color:#CFE0F2;margin:0;}
.cta-band__actions{display:flex;gap:14px;flex-wrap:wrap;}

/* Forms */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
.field label{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--steel-2);}
.field input,.field select,.field textarea{
  font-family:var(--f-body);font-size:.95rem;padding:12px 14px;border:1px solid var(--steel-line);border-radius:var(--radius);background:var(--white);color:var(--ink);
}
.field textarea{resize:vertical;min-height:120px;}
.field-full{grid-column:1/-1;}
.field input[type="file"]{padding:10px;background:var(--white);}
.consent label{font-family:var(--f-body);font-size:.88rem;letter-spacing:0;text-transform:none;color:var(--steel);}
.consent input{width:auto;margin-right:8px;}
.honeypot{position:absolute !important;left:-10000px !important;width:1px !important;height:1px !important;overflow:hidden !important;}

/* Footer */
footer.site-footer{background:var(--ink-2);color:#9AA5B1;padding-top:70px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.08);}
.footer-brand img{height:38px;margin-bottom:16px;}
.footer-brand p{font-size:.88rem;color:#8B95A1;max-width:300px;}
.footer-brand .footer-evidence{color:#c7cfd6;border-left:2px solid var(--signal);padding-left:12px;}
footer h5{font-family:var(--f-mono);color:#DCE1E6;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px;}
footer ul{list-style:none;margin:0;padding:0;}
footer li{margin-bottom:10px;font-size:.88rem;}
footer a{color:#9AA5B1;}
footer a:hover{color:var(--signal);}
.footer-bottom{display:flex;justify-content:space-between;padding:22px 0;font-size:.78rem;color:#6E7885;flex-wrap:wrap;gap:10px;font-family:var(--f-mono);}
.footer-bottom a{color:#8B95A1;}

/* Utility */
.text-center{text-align:center;}
.mt-0{margin-top:0;}
.muted{color:var(--steel-2);}
.small{font-size:.85rem;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.two-col--rev{direction:rtl;}
.two-col--rev > *{direction:ltr;}
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0;}
.divider{height:1px;background:var(--steel-line);border:none;margin:60px 0;}
.kicker-list{columns:2;gap:40px;}
.kicker-list li{break-inside:avoid;margin-bottom:10px;}

/* Anchors within long tech articles */
.toc{background:var(--paper);border:1px solid var(--steel-line);padding:24px 26px;border-radius:var(--radius);}
.toc h4{font-family:var(--f-mono);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--steel-2);margin-bottom:12px;}
.toc ol{margin:0;padding-left:18px;font-size:.9rem;}
.toc li{margin-bottom:8px;}

article.prose h2{margin-top:2em;border-top:1px solid var(--steel-line);padding-top:.8em;}
article.prose h3{margin-top:1.6em;color:var(--blueprint);}
article.prose ul,article.prose ol{padding-left:22px;}
article.prose li{margin-bottom:.4em;}
article.prose img{margin:28px 0;}
figure{margin:0;}
figcaption{font-family:var(--f-mono);font-size:.74rem;color:var(--steel-2);margin-top:8px;}

/* FAQ Accordion — native <details>, no JS required */
.faq-list{border-top:1px solid var(--steel-line);}
.faq-item{border-bottom:1px solid var(--steel-line);}
.faq-item summary{
  cursor:pointer;padding:20px 4px;font-family:var(--f-body);font-weight:600;color:var(--ink);
  font-size:1rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-family:var(--f-mono);font-size:1.3rem;color:var(--blueprint);flex-shrink:0;transition:transform .15s ease;}
.faq-item[open] summary::after{content:"–";}
.faq-item .faq-a{padding:0 4px 22px;color:var(--steel);font-size:.94rem;max-width:760px;}

/* Glossary */
.glossary-letter{font-family:var(--f-display);font-size:1.6rem;color:var(--blueprint);border-bottom:2px solid var(--signal);display:inline-block;padding:0 2px 4px;margin:44px 0 18px;}
.glossary-term{padding:18px 0;border-bottom:1px dashed var(--steel-line);}
.glossary-term dt{font-family:var(--f-mono);font-weight:600;color:var(--ink);font-size:.98rem;margin-bottom:6px;}
.glossary-term dd{margin:0;color:var(--steel);font-size:.92rem;}

/* Market / region stat strip */
.market-flag{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-2);border:1px solid var(--steel-line);padding:4px 10px;display:inline-block;margin-bottom:16px;}
.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.compare-grid .card__body h3{color:var(--blueprint);}

/* Reusable layout utilities for generated editorial sections */
.u-items-start{align-items:flex-start;}
.u-stat-divider{border-right:1px solid rgba(255,255,255,.14);}
.u-note-steel{color:#8b95a1;margin-top:12px;}
.u-accent-link{color:#e8971f;}
.u-columns-3{columns:3;column-gap:40px;}
.u-text-white-lg{font-size:1.05rem;color:#fff;}
.u-two-col-wide{grid-template-columns:2.2fr 1fr;align-items:start;}
.u-center{justify-content:center;}
.u-mb-24{margin-bottom:24px;}
.u-mt-10{margin-top:10px;}
.u-mt-12{margin-top:12px;}
.u-mt-14{margin-top:14px;}
.u-mt-14-accent{margin-top:14px;color:#e8971f;}
.u-mt-16{margin-top:16px;}
.u-full-center{margin-top:16px;width:100%;justify-content:center;}
.u-mt-18{margin-top:18px;}
.u-mt-20{margin-top:20px;}
.u-mt-24{margin-top:24px;}
.u-mt-28{margin-top:28px;}
.u-mt-30{margin-top:30px;}
.u-mt-36{margin-top:36px;}
.u-mt-40{margin-top:40px;}
.u-max-700{max-width:700px;}
.u-max-760{max-width:760px;}
.u-max-820{max-width:820px;}
.u-error-section{padding:140px 0;}
.u-badge-roomy{padding:14px 16px;font-size:.8rem;text-align:center;}
.model-filter{display:flex;align-items:center;gap:12px;margin-bottom:24px;font-family:var(--f-mono);font-size:.82rem;color:var(--steel);}
.model-filter select{min-height:44px;padding:8px 36px 8px 12px;border:1px solid var(--steel-line);background:var(--white);color:var(--ink);font:inherit;}
.form-status{min-height:1.4em;margin-top:10px;color:var(--blueprint);font-size:.86rem;}

/* Responsive */
@media (max-width:1080px){
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .hero__grid{grid-template-columns:1fr;}
  .product-grid,.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:860px){
  h1{font-size:2.35rem;}
  h2{font-size:1.75rem;}
  .topbar .container{height:auto;padding-top:8px;padding-bottom:8px;align-items:flex-start;}
  .topbar__links{gap:8px 14px;flex-wrap:wrap;}
  .nav{height:70px;}
  .nav nav{margin-left:auto;}
  .main-nav{display:block;position:absolute;top:100%;left:0;right:0;background:var(--white);border-bottom:1px solid var(--steel-line);padding:10px 20px 20px;margin:0;max-height:calc(100vh - 106px);overflow-y:auto;}
  .js-enabled .main-nav{display:none;}
  .js-enabled .main-nav.is-open{display:block;}
  .main-nav a.top-link{justify-content:space-between;padding:12px 8px;border-bottom:1px solid var(--steel-line);}
  .dropdown{position:static;min-width:0;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:4px 0 10px 12px;}
  .js-enabled .nav-toggle{display:flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid var(--ink);background:var(--white);color:var(--ink);font:600 .9rem var(--f-body);cursor:pointer;}
  .header-cta .btn-outline{display:none;}
  .header-cta .btn-primary{padding:10px 12px;}
  .two-col{grid-template-columns:1fr;gap:28px;}
  .form-grid{grid-template-columns:1fr;}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}
  .hero__stats{flex-wrap:wrap;}
  .hero__stat{flex:0 0 46%;margin-bottom:16px;}
  .kicker-list{columns:1;}
  .cta-band .container{flex-direction:column;align-items:flex-start;}
  .product-grid,.case-grid{grid-template-columns:1fr;}
  .u-columns-3{columns:1;}
}
@media (max-width:560px){
  .container{padding-left:16px;padding-right:16px;}
  .section{padding:64px 0;}
  .topbar__links:first-child a:nth-child(2){display:none;}
  .header-cta{margin-left:8px;}
  .header-cta .btn-primary{font-size:.75rem;}
  .footer-grid{grid-template-columns:1fr;}
  .hero{padding:72px 0 60px;}
}
@media (max-width:430px){
  .header-cta{display:none;}
  .nav{justify-content:flex-start;gap:12px;}
  .nav nav{margin-left:auto;}
  .btn{max-width:100%;white-space:normal;text-align:center;justify-content:center;}
  .hero__actions .btn{width:100%;justify-content:center;white-space:normal;text-align:center;}
}
