/* Corsten V5 unified layout polish
   Applies consistent typography, spacing, cards, references, FAQs and download previews across all pages. */
:root{
  --corsten-font: Arial, Helvetica, sans-serif;
  --corsten-text:#06142d;
  --corsten-muted:#50627f;
  --corsten-border:#dbe5f2;
  --corsten-card:#ffffff;
  --corsten-soft:#f6f9fd;
  --corsten-blue:#2563eb;
  --corsten-cyan:#7dd3fc;
  --corsten-shadow:0 18px 46px rgba(15,23,42,.07);
}
html,body{font-family:var(--corsten-font)!important;color:var(--corsten-text);}
body{font-size:16px;line-height:1.68;}
.container{width:min(1180px,calc(100% - 44px));margin-left:auto;margin-right:auto;}
.site-header .nav{min-height:72px;}
.brand-main{font-weight:900;letter-spacing:.01em;}
.brand-sub{font-size:.82rem;}
.nav-links{gap:1rem;font-size:.95rem;}
.nav-cta{padding:.68rem 1.05rem;border-radius:999px;}
.hero{padding:94px 0 82px;}
.hero-grid{gap:56px;align-items:center;}
.hero h1{font-size:clamp(3rem,5.4vw,5.2rem);line-height:1.05;letter-spacing:-.035em;margin:0 0 1.25rem;}
.hero p{font-size:1.1rem;line-height:1.72;max-width:760px;}
.hero-card{padding:1.8rem;border-radius:28px;}
.hero-card h2{font-size:1.75rem;line-height:1.1;margin:0 0 1.1rem!important;}
.hero-card li{margin:.34rem 0;line-height:1.55;}
.hero-actions{gap:.8rem;margin-top:1.45rem;margin-bottom:2rem;}
.hero-meta{display:flex;flex-wrap:nowrap;gap:.75rem;margin-top:1.35rem;align-items:center;}
.hero-meta span{display:inline-flex;white-space:nowrap;border:1px solid rgba(255,255,255,.23);border-radius:999px;padding:.34rem .72rem;font-size:.86rem;line-height:1.1;color:#fff;background:rgba(255,255,255,.035);}
.section{padding:82px 0;}
.section.alt{background:var(--corsten-soft);}
.eyebrow{letter-spacing:.24em;font-size:.75rem;font-weight:900;text-transform:uppercase;color:var(--corsten-cyan);}
.article-content h2,
.section h2,
.contact-full h2{
  font-size:clamp(2.45rem,4vw,3.9rem);
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.035em;
  margin:0 0 2rem;
  color:var(--corsten-text);
}
.article-content h3,
.reference-card h3,
.faq-item h3,
.card strong,
.download-mini-item strong{font-weight:900;color:var(--corsten-text);}
.article-content section{padding-top:2.7rem;margin-top:2.7rem;border-top:1px solid var(--corsten-border);scroll-margin-top:108px;}
.article-content section:first-child{padding-top:0;margin-top:0;border-top:0;}
.article-content p,.article-content li{font-size:1.04rem;color:#243954;line-height:1.75;}
.article-grid{grid-template-columns:minmax(0,1fr) 320px;gap:46px;align-items:start;}
.article-aside{border:1px solid var(--corsten-border);border-radius:26px;background:#fff;box-shadow:var(--corsten-shadow);padding:1.35rem;top:96px;}
.article-aside h3{font-size:1.22rem;line-height:1.22;margin:0 0 1rem;font-weight:900;}
.article-aside a{display:block;margin:.45rem 0;color:var(--corsten-blue);line-height:1.38;}
.article-aside hr{border:0;border-top:1px solid rgba(15,23,42,.2);margin:1rem 0;}
.card,.fact-card,.reference-card,.faq-item,.download-mini-item,.profile-download-card,.contact-card,.diagram-card,.tuning-card{
  border:1px solid var(--corsten-border)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:var(--corsten-shadow)!important;
}
.specialization-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem;}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem;}
@media(min-width:761px) and (max-width:1100px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
.service-grid .card,.specialization-grid .card{padding:1.65rem 1.8rem;min-height:150px;display:block;}
.service-grid .card strong,.specialization-grid .card strong{display:block;font-size:1.12rem;color:var(--corsten-blue);margin-bottom:.9rem;}
.service-grid .card p,.specialization-grid .card p{margin:0;color:var(--corsten-muted);}
.reference-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem!important;margin-top:1.7rem;}
.reference-card{padding:1.7rem!important;min-height:unset!important;margin:0!important;}
.reference-card h3{font-size:1.28rem!important;line-height:1.25!important;margin:0 0 .8rem!important;}
.reference-card .meta,.reference-card strong{display:block;color:var(--corsten-blue);font-weight:900;margin:.2rem 0 .9rem;}
.reference-card p{margin:0;color:#243954;}
.faq-list{display:grid;gap:1.2rem;margin-top:1.6rem;}
.faq-item{padding:1.55rem 1.7rem!important;margin:0!important;}
.faq-item h3{font-size:1.18rem!important;line-height:1.3;margin:0 0 .75rem!important;}
.faq-item p{margin:0;color:#243954;}
.diagram-card{padding:1.25rem!important;margin:2rem 0;}
.diagram-card img{width:100%;height:auto;display:block;}
.sql-code,pre{border-radius:20px!important;line-height:1.58;}
.contact-full{padding:82px 0!important;margin-top:0!important;}
.contact-full .contact-card.compact-contact,.contact-card.compact-contact{grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr);gap:2.2rem;padding:2rem 2.2rem!important;}
.compact-contact .contact-copy h3{font-size:1.28rem;line-height:1.28;margin:0 0 1rem;}
.compact-contact .contact-row{gap:.75rem;}
.compact-contact .contact-row a{font-size:.98rem;}
.download-mini-list{display:grid;gap:.85rem;margin-top:1.1rem;}
.download-mini-item{padding:1rem 1.05rem!important;display:block;}
.download-mini-item strong{display:block;font-size:1rem;line-height:1.25;margin-bottom:.4rem;}
.download-mini-item p{margin:.15rem 0 .55rem;color:var(--corsten-muted);line-height:1.45;}
.download-mini-item span{display:block;color:var(--corsten-muted);font-size:.92rem;line-height:1.45;margin:.18rem 0;word-break:break-word;}
.download-mini-item .download-actions{margin-top:.8rem!important;display:block;}
.download-mini-item .download-actions a,
.download-mini-item>a{
  display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;border-radius:999px;background:var(--corsten-blue);color:#fff!important;font-weight:900;padding:.65rem 1rem;text-decoration:none;
}
.all-downloads-link,.download-all-link a{display:inline-flex;margin-top:.95rem;color:var(--corsten-blue);font-weight:800;}
.profile-download-card{padding:1.55rem!important;}
.profile-download-card h3{font-size:1.45rem;margin:0 0 .7rem;}
.profile-download-card .muted{color:var(--corsten-muted);margin:0 0 .8rem;}
.site-footer{font-size:.95rem;}
@media(max-width:1000px){
  .hero-grid,.article-grid,.contact-full .contact-card.compact-contact,.contact-card.compact-contact{grid-template-columns:1fr!important;}
  .article-aside{position:static;}
  .hero-meta{flex-wrap:wrap;}
}
@media(max-width:760px){
  .container{width:min(100% - 28px,1180px);}
  .hero h1{font-size:2.75rem;}
  .article-content h2,.section h2,.contact-full h2{font-size:2.2rem;}
  .service-grid,.specialization-grid,.reference-grid{grid-template-columns:1fr!important;}
  .section{padding:58px 0;}
}

/* final override: smaller headings, consistent with v5-consistency */
.hero h1{font-size:clamp(3.05rem,5.1vw,4.25rem)!important;line-height:1.06!important;}
.article-content h2,.section h2{font-size:clamp(2.25rem,3.55vw,3.05rem)!important;line-height:1.1!important;}
