/* ==========================================================================
   Bearing Leads — Подшипник-Сервис
   ========================================================================== */
@font-face{font-family:'Plex';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/plex-sans-cyr.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Plex';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/plex-sans-lat.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}
@font-face{font-family:'PlexMono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/plex-mono-cyr.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'PlexMono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/plex-mono-lat.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F}

:root{
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);
  --text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);
  --text-2xl:clamp(1.875rem,1.2rem + 2.4vw,3.25rem);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;

  --c-bg:#f4f3f1;
  --c-surface:#ffffff;
  --c-surface-2:#ecebe8;
  --c-border:#dcd9d4;
  --c-text:#1b1d20;
  --c-muted:#5b5f66;
  --c-faint:#8c9097;
  --c-brand:#880027;
  --c-brand-hover:#6c001f;
  --c-brand-soft:#f6e7eb;
  --c-dark:#141619;
  --c-dark-2:#1e2125;
  --c-dark-3:#2a2e33;
  --c-on-dark:#f1efec;
  --c-on-dark-muted:#a9adb3;
  --c-ok:#2f7a3d;
  --c-err:#b3261e;

  --font:'Plex',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --mono:'PlexMono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --radius:6px;--radius-lg:10px;
  --shadow:0 1px 2px rgba(20,22,25,.06),0 8px 24px rgba(20,22,25,.06);
  --wrap:1240px;
  --gutter:clamp(1rem,4vw,2rem);
  --header-h:76px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1rem)}
body{margin:0;font-family:var(--font);font-size:var(--text-base);line-height:1.6;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--c-brand);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--c-brand-hover)}
h1,h2,h3,h4{line-height:1.15;letter-spacing:-.01em;margin:0 0 var(--space-4);font-weight:700;text-wrap:balance}
h1{font-size:var(--text-2xl)}
h2{font-size:var(--text-xl)}
h3{font-size:var(--text-lg);font-weight:600}
p{margin:0 0 var(--space-4)}
ul,ol{padding-left:1.25em;margin:0 0 var(--space-4)}
:focus-visible{outline:2px solid var(--c-brand);outline-offset:2px}
.screen-reader-text,.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;left:1rem;top:1rem;z-index:999;background:#fff;padding:.5rem 1rem;clip:auto;width:auto;height:auto}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.mono{font-family:var(--mono);font-weight:500;letter-spacing:0}
.muted{color:var(--c-muted)}
.eyebrow{display:inline-block;font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c-brand);margin-bottom:var(--space-3)}
.on-dark .eyebrow{color:#e4a3b4}

/* Buttons ---------------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:.7em 1.35em;border-radius:var(--radius);border:1px solid transparent;font:600 var(--text-sm)/1.2 var(--font);text-decoration:none;cursor:pointer;transition:background-color .18s,border-color .18s,color .18s,transform .18s;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--c-brand);color:#fff}
.btn-primary:hover{background:var(--c-brand-hover);color:#fff}
.btn-ghost{background:transparent;border-color:var(--c-border);color:var(--c-text)}
.btn-ghost:hover{border-color:var(--c-text);color:var(--c-text)}
.on-dark .btn-ghost{border-color:rgba(255,255,255,.28);color:var(--c-on-dark)}
.on-dark .btn-ghost:hover{border-color:#fff;color:#fff}
.btn-wa{background:#1f8f4e;color:#fff}.btn-wa:hover{background:#17733e;color:#fff}
.btn-tg{background:#2481cc;color:#fff}.btn-tg:hover{background:#1c6aa8;color:#fff}
.btn-block{width:100%}
.btn svg{width:18px;height:18px;flex:none}

/* Top bar & header -------------------------------------------------------- */
.topbar{background:var(--c-dark);color:var(--c-on-dark-muted);font-size:var(--text-xs)}
.topbar .wrap{display:flex;gap:var(--space-6);align-items:center;justify-content:space-between;min-height:36px}
.topbar a{color:var(--c-on-dark);text-decoration:none}
.topbar-items{display:flex;gap:var(--space-6);flex-wrap:wrap}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--c-border)}
.site-header .wrap{display:flex;align-items:center;gap:var(--space-6);min-height:var(--header-h)}
.logo{flex:none;display:block;width:200px}
.logo img{width:100%;height:auto}
.nav{flex:1;min-width:0}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:var(--space-1);flex-wrap:nowrap}
.nav>ul>li{position:relative}
.nav a{display:block;padding:.55em .7em;border-radius:var(--radius);color:var(--c-text);text-decoration:none;font-size:var(--text-sm);font-weight:500;white-space:nowrap}
.nav a:hover,.nav .current-menu-item>a,.nav .current-menu-ancestor>a{color:var(--c-brand);background:var(--c-brand-soft)}
.nav .sub-menu{position:absolute;left:0;top:100%;min-width:260px;background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-2);display:none;flex-direction:column}
.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu{display:flex}
.nav .menu-item-has-children>a::after{content:"";display:inline-block;width:.4em;height:.4em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);margin-left:.5em}
.header-contacts{display:flex;align-items:center;gap:var(--space-4);flex:none}
.header-phone{display:flex;flex-direction:column;line-height:1.2;text-decoration:none;color:var(--c-text)}
.header-phone strong{font-size:var(--text-base);font-weight:700;white-space:nowrap}
.header-phone span{font-size:var(--text-xs);color:var(--c-muted)}
.header-phone:hover strong{color:var(--c-brand)}
.burger{display:none;width:48px;height:48px;border:1px solid var(--c-border);border-radius:var(--radius);background:#fff;cursor:pointer;align-items:center;justify-content:center}
.burger span,.burger span::before,.burger span::after{display:block;width:20px;height:2px;background:var(--c-text);position:relative;content:"";transition:.2s}
.burger span::before{position:absolute;top:-6px}.burger span::after{position:absolute;top:6px}

@media (max-width:1320px){
  .header-phone span{display:none}
  .nav a{padding:.5em .5em}
  .logo{width:170px}
}
@media (max-width:1180px){
  .burger{display:inline-flex}
  .nav{position:fixed;inset:calc(var(--header-h) + 36px) 0 0 0;background:#fff;padding:var(--space-4) var(--gutter) var(--space-24);overflow:auto;display:none;border-top:1px solid var(--c-border)}
  .nav.is-open{display:block}
  .nav ul{flex-direction:column}
  .nav a{font-size:var(--text-base);padding:.8em .25em;border-bottom:1px solid var(--c-surface-2);border-radius:0}
  .nav .sub-menu{position:static;display:flex;border:0;box-shadow:none;padding:0 0 0 var(--space-4);min-width:0}
  .nav .menu-item-has-children>a::after{display:none}
  .header-contacts .btn{display:none}
  .site-header .wrap{justify-content:space-between}
}
@media (max-width:640px){
  .topbar .topbar-hide-sm{display:none}
  .logo{width:150px}
  .header-phone strong{font-size:var(--text-sm)}
}

/* Sections --------------------------------------------------------------- */
.section{padding-block:clamp(var(--space-12),7vw,var(--space-24))}
.section-tight{padding-block:clamp(var(--space-10),5vw,var(--space-16))}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:var(--space-6);margin-bottom:var(--space-10);flex-wrap:wrap}
.section-head h2{margin:0;max-width:22ch}
.section-head p{margin:0;max-width:52ch;color:var(--c-muted)}
.on-dark{background:var(--c-dark);color:var(--c-on-dark)}
.on-dark .muted,.on-dark .section-head p{color:var(--c-on-dark-muted)}
.surface{background:var(--c-surface)}

/* Hero ------------------------------------------------------------------- */
.hero{position:relative;overflow:hidden;background:var(--c-dark);color:var(--c-on-dark);isolation:isolate}
.hero-media{position:absolute;inset:0;z-index:-1}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,22,25,.97) 0%,rgba(20,22,25,.9) 38%,rgba(20,22,25,.45) 70%,rgba(20,22,25,.2) 100%)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--space-12);align-items:center;padding-block:clamp(var(--space-12),7vw,var(--space-20))}
.hero h1{font-size:var(--text-2xl);max-width:18ch;margin-bottom:var(--space-5)}
.hero-lead{font-size:var(--text-lg);font-weight:400;color:#d6d4d0;max-width:46ch;margin-bottom:var(--space-8);line-height:1.45}
.hero-points{list-style:none;padding:0;margin:var(--space-8) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6);font-size:var(--text-sm);color:#d6d4d0}
.hero-points li{display:flex;gap:.5em;align-items:center}
.hero-points li::before{content:"";width:8px;height:8px;border-radius:50%;background:#e4a3b4;flex:none}

/* Part number search ----------------------------------------------------- */
.partsearch{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-lg);padding:var(--space-4)}
.partsearch label{display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-2);color:var(--c-on-dark)}
.partsearch-row{display:flex;gap:var(--space-2)}
.partsearch input{flex:1;min-width:0;height:52px;border-radius:var(--radius);border:1px solid transparent;padding:0 1em;font:500 var(--text-base) var(--mono);background:#fff;color:var(--c-text)}
.partsearch input::placeholder{color:var(--c-faint);font-family:var(--font);font-weight:400}
.partsearch .btn{min-height:52px}
.partsearch-hint{font-size:var(--text-xs);color:var(--c-on-dark-muted);margin:var(--space-2) 0 0}
.partsearch-hint button{background:none;border:0;padding:0;color:#e9c3cd;font:500 var(--text-xs) var(--mono);cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px;margin-right:.6em}
@media (max-width:520px){.partsearch-row{flex-direction:column}}

/* Lead card -------------------------------------------------------------- */
.lead-card{background:var(--c-surface);color:var(--c-text);border-radius:var(--radius-lg);padding:clamp(var(--space-5),3vw,var(--space-8));box-shadow:0 20px 50px rgba(0,0,0,.25)}
.lead-card h2,.lead-card h3{font-size:var(--text-lg);margin-bottom:var(--space-2)}
.lead-card .lead-sub{font-size:var(--text-sm);color:var(--c-muted);margin-bottom:var(--space-5)}
.lead-card--flat{box-shadow:none;border:1px solid var(--c-border)}
@media (max-width:960px){.hero .wrap{grid-template-columns:1fr}.hero-media::after{background:linear-gradient(180deg,rgba(20,22,25,.92),rgba(20,22,25,.97))}}

/* Forms ------------------------------------------------------------------ */
.bs-form{display:grid;gap:var(--space-3)}
.bs-form .row-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
@media (max-width:520px){.bs-form .row-2{grid-template-columns:1fr}}
.field label{display:block;font-size:var(--text-xs);font-weight:600;margin-bottom:var(--space-1);color:var(--c-muted)}
.field input[type=text],.field input[type=tel],.field input[type=email],.field textarea,.field select{width:100%;min-height:46px;padding:.65em .85em;border:1px solid var(--c-border);border-radius:var(--radius);font:400 var(--text-sm)/1.4 var(--font);background:#fff;color:var(--c-text);transition:border-color .15s,box-shadow .15s}
.field textarea{min-height:96px;resize:vertical}
.field textarea.mono{font-family:var(--mono)}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--c-brand);box-shadow:0 0 0 3px rgba(136,0,39,.12)}
.field .req{color:var(--c-brand)}
.file-drop{position:relative;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px dashed var(--c-border);border-radius:var(--radius);font-size:var(--text-sm);color:var(--c-muted);cursor:pointer;background:var(--c-bg);transition:border-color .15s}
.file-drop:hover{border-color:var(--c-brand)}
.file-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.file-drop svg{width:22px;height:22px;flex:none;color:var(--c-brand)}
.file-drop .file-name{color:var(--c-text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.consent{display:flex;gap:var(--space-2);align-items:flex-start;font-size:var(--text-xs);color:var(--c-muted);line-height:1.45}
.consent input{margin-top:.2em;width:16px;height:16px;flex:none;accent-color:var(--c-brand)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-msg{font-size:var(--text-sm);padding:var(--space-3) var(--space-4);border-radius:var(--radius);display:none}
.form-msg.is-ok{display:block;background:#e8f3ea;color:var(--c-ok)}
.form-msg.is-err{display:block;background:#fbeaea;color:var(--c-err)}
.bs-form.is-loading button[type=submit]{opacity:.6;pointer-events:none}
.form-alt{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;font-size:var(--text-xs);color:var(--c-muted);margin-top:var(--space-1)}
.form-alt a{font-weight:600;text-decoration:none}
.form-success{text-align:center;padding:var(--space-6) 0}
.form-success svg{width:56px;height:56px;margin:0 auto var(--space-4);color:var(--c-ok)}

/* Stats ------------------------------------------------------------------ */
.stats-band{background:var(--c-surface);border-bottom:1px solid var(--c-border)}
.stats{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:var(--space-8) var(--space-6);border-right:1px solid var(--c-border)}
.stat:first-child{padding-left:0}
.stat:last-child{border-right:0}
.stat b{display:block;font-size:var(--text-xl);font-weight:700;line-height:1.1;color:var(--c-brand);font-variant-numeric:tabular-nums}
.stat span{display:block;font-size:var(--text-sm);color:var(--c-muted);margin-top:var(--space-2);line-height:1.4}
@media (max-width:860px){.stats{grid-template-columns:repeat(2,1fr)}.stat{padding:var(--space-6) var(--space-4)}.stat:nth-child(odd){padding-left:0}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--c-border)}}

/* Steps ------------------------------------------------------------------ */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);counter-reset:s;list-style:none;padding:0;margin:0}
.steps li{counter-increment:s;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:var(--space-6)}
.steps li::before{content:"0" counter(s);display:block;font:500 var(--text-sm) var(--mono);color:var(--c-brand);margin-bottom:var(--space-4)}
.steps h3{font-size:var(--text-base);margin-bottom:var(--space-2)}
.steps p{font-size:var(--text-sm);color:var(--c-muted);margin:0}
@media (max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* Direction cards -------------------------------------------------------- */
.dir-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
.dir-card{position:relative;display:flex;flex-direction:column;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:var(--c-text);transition:border-color .2s,transform .2s,box-shadow .2s}
.dir-card:hover{border-color:var(--c-brand);transform:translateY(-2px);box-shadow:var(--shadow);color:var(--c-text)}
.dir-card img{aspect-ratio:4/3;object-fit:cover;width:100%;background:var(--c-dark)}
.dir-card-body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);flex:1}
.dir-card h3{font-size:var(--text-base);margin:0}
.dir-card p{font-size:var(--text-sm);color:var(--c-muted);margin:0}
.dir-card .tags{margin-top:auto;padding-top:var(--space-3);display:flex;flex-wrap:wrap;gap:var(--space-1)}
.tag{font-size:var(--text-xs);padding:.15em .55em;border-radius:4px;background:var(--c-surface-2);color:var(--c-muted)}
.dir-card .arrow{font-size:var(--text-sm);font-weight:600;color:var(--c-brand);margin-top:var(--space-3)}
.dir-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin-top:var(--space-4)}
.dir-mini a{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);text-decoration:none;color:var(--c-text);font-weight:600;font-size:var(--text-sm)}
.dir-mini a:hover{border-color:var(--c-brand);color:var(--c-brand)}
.dir-mini a::after{content:"→";color:var(--c-brand)}
@media (max-width:1000px){.dir-grid,.dir-mini{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.dir-grid,.dir-mini{grid-template-columns:1fr}}

/* Split / feature -------------------------------------------------------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--space-8),5vw,var(--space-16));align-items:center}
.split--form{align-items:start}
.split img.cover{border-radius:var(--radius-lg);aspect-ratio:4/3;object-fit:cover;width:100%}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.checklist{list-style:none;padding:0;margin:0 0 var(--space-6);display:grid;gap:var(--space-3)}
.checklist li{position:relative;padding-left:1.9em}
.checklist li::before{content:"";position:absolute;left:0;top:.3em;width:1.15em;height:1.15em;border-radius:50%;background:var(--c-brand-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23880027'%3E%3Cpath d='M8.2 13.6 4.8 10.2l-1.2 1.2 4.6 4.6 8.4-8.4-1.2-1.2z'/%3E%3C/svg%3E") center/80% no-repeat}
.on-dark .checklist li::before{background:rgba(228,163,180,.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23f0b8c6'%3E%3Cpath d='M8.2 13.6 4.8 10.2l-1.2 1.2 4.6 4.6 8.4-8.4-1.2-1.2z'/%3E%3C/svg%3E") center/80% no-repeat}

/* Why grid --------------------------------------------------------------- */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--c-dark-3);border:1px solid var(--c-dark-3);border-radius:var(--radius-lg);overflow:hidden}
.why-item{background:var(--c-dark-2);padding:var(--space-8) var(--space-6)}
.why-item h3{font-size:var(--text-base);margin-bottom:var(--space-2);color:#fff}
.why-item p{font-size:var(--text-sm);color:var(--c-on-dark-muted);margin:0}
.why-item svg{width:28px;height:28px;color:#e4a3b4;margin-bottom:var(--space-4)}
@media (max-width:900px){.why-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.why-grid{grid-template-columns:1fr}}

/* Brands ----------------------------------------------------------------- */
.brand-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-3)}
.brand-tile{display:flex;flex-direction:column;justify-content:center;gap:var(--space-1);min-height:96px;padding:var(--space-4) var(--space-5);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);text-decoration:none;color:var(--c-text);transition:border-color .2s}
.brand-tile:hover{border-color:var(--c-brand);color:var(--c-text)}
.brand-tile b{font-size:var(--text-base);font-weight:700;letter-spacing:.01em}
.brand-tile span{font-size:var(--text-xs);color:var(--c-muted);line-height:1.35}
@media (max-width:1000px){.brand-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.brand-grid{grid-template-columns:repeat(2,1fr)}}

/* Industries ------------------------------------------------------------- */
.ind-list{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);list-style:none;padding:0;margin:0}
.ind-list li{padding:var(--space-4) var(--space-5);border-left:3px solid var(--c-brand);background:var(--c-surface);font-size:var(--text-sm);font-weight:500}
@media (max-width:900px){.ind-list{grid-template-columns:1fr 1fr}}

/* FAQ -------------------------------------------------------------------- */
.faq{display:grid;gap:var(--space-2);max-width:880px}
.faq details{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius)}
.faq summary{cursor:pointer;list-style:none;padding:var(--space-4) var(--space-5);font-weight:600;display:flex;justify-content:space-between;gap:var(--space-4);align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:500 1.4em/1 var(--mono);color:var(--c-brand);flex:none;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .faq-a{padding:0 var(--space-5) var(--space-5);color:var(--c-muted);font-size:var(--text-sm)}
.faq .faq-a p:last-child{margin:0}

/* Articles --------------------------------------------------------------- */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.post-card{display:flex;flex-direction:column;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:var(--c-text)}
.post-card:hover{border-color:var(--c-brand);color:var(--c-text)}
.post-card img{aspect-ratio:16/9;object-fit:cover;width:100%;background:var(--c-surface-2)}
.post-card-body{padding:var(--space-5)}
.post-card h3{font-size:var(--text-base);margin-bottom:var(--space-2)}
.post-card p{font-size:var(--text-sm);color:var(--c-muted);margin:0}
.post-meta{font-size:var(--text-xs);color:var(--c-faint);margin-bottom:var(--space-2)}
@media (max-width:900px){.post-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.post-grid{grid-template-columns:1fr}}

/* Page / content --------------------------------------------------------- */
.page-hero{background:var(--c-dark);color:var(--c-on-dark);position:relative;overflow:hidden;isolation:isolate}
.page-hero .wrap{padding-block:clamp(var(--space-10),5vw,var(--space-16))}
.page-hero h1{font-size:var(--text-2xl);max-width:24ch;margin-bottom:var(--space-4)}
.page-hero .lead{font-size:var(--text-lg);color:#d6d4d0;max-width:60ch;margin:0;line-height:1.45}
.page-hero--img .hero-media::after{background:linear-gradient(90deg,rgba(20,22,25,.96) 0%,rgba(20,22,25,.88) 45%,rgba(20,22,25,.35) 100%)}
.dir-hero .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--space-12);align-items:center}
.dir-hero .hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-8)}
@media (max-width:960px){.dir-hero .wrap{grid-template-columns:1fr}}
.breadcrumbs{font-size:var(--text-xs);color:var(--c-on-dark-muted);margin-bottom:var(--space-5)}
.breadcrumbs a{color:var(--c-on-dark-muted);text-decoration:none}
.breadcrumbs a:hover{color:#fff}
.breadcrumbs span{margin:0 .45em;opacity:.6}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(var(--space-8),4vw,var(--space-16));align-items:start}
.content-layout .sidebar{position:sticky;top:calc(var(--header-h) + var(--space-6))}
@media (max-width:1000px){.content-layout{grid-template-columns:minmax(0,1fr)}.content-layout .sidebar{position:static}}
.entry{max-width:780px}
.entry h2{margin-top:var(--space-12)}
.entry h3{margin-top:var(--space-8)}
.entry h2:first-child,.entry h3:first-child{margin-top:0}
.entry img{border-radius:var(--radius-lg)}
.entry table{width:100%;border-collapse:collapse;font-size:var(--text-sm);margin:var(--space-6) 0;background:var(--c-surface)}
.entry th,.entry td{border:1px solid var(--c-border);padding:.6em .8em;text-align:left;vertical-align:top}
.entry th{background:var(--c-surface-2);font-weight:600}
.entry blockquote{margin:var(--space-6) 0;padding:var(--space-4) var(--space-6);border-left:3px solid var(--c-brand);background:var(--c-surface)}
.entry .wp-block-columns{gap:var(--space-6)}
.entry ul li{margin-bottom:.35em}
.note{background:var(--c-surface);border:1px solid var(--c-border);border-left:3px solid var(--c-brand);border-radius:var(--radius);padding:var(--space-5) var(--space-6);margin:var(--space-6) 0}
.note p:last-child{margin:0}
.inline-cta{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);flex-wrap:wrap;background:var(--c-dark);color:var(--c-on-dark);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);margin:var(--space-10) 0}
.inline-cta p{margin:0;max-width:44ch}
.inline-cta strong{display:block;font-size:var(--text-lg);margin-bottom:var(--space-1);color:#fff}
.side-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:var(--space-6)}
.side-card + .side-card{margin-top:var(--space-4)}
.side-card h3{font-size:var(--text-base)}
.contact-line{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--text-sm);margin-bottom:var(--space-3)}
.contact-line svg{width:18px;height:18px;color:var(--c-brand);flex:none;margin-top:.2em}
.contact-line a{color:var(--c-text);text-decoration:none;font-weight:600}
.contact-line a:hover{color:var(--c-brand)}

/* CTA band --------------------------------------------------------------- */
.cta-band .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--space-8),5vw,var(--space-16));align-items:center}
@media (max-width:900px){.cta-band .wrap{grid-template-columns:1fr}}
.messengers{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-6)}

/* Footer ----------------------------------------------------------------- */
.site-footer{background:var(--c-dark);color:var(--c-on-dark-muted);font-size:var(--text-sm);padding-top:var(--space-16)}
.site-footer a{color:var(--c-on-dark);text-decoration:none}
.site-footer a:hover{color:#fff;text-decoration:underline}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:var(--space-10);padding-bottom:var(--space-12)}
.footer-grid h4{color:#fff;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-4)}
.footer-grid ul{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}
.footer-logo{width:200px;margin-bottom:var(--space-5);background:#fff;border-radius:var(--radius);padding:10px 12px;box-sizing:content-box}
.footer-bottom{border-top:1px solid var(--c-dark-3);padding-block:var(--space-6);display:flex;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;font-size:var(--text-xs)}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}

/* Mobile action bar ------------------------------------------------------ */
.mbar{display:none}
@media (max-width:860px){
  .site-footer{padding-bottom:64px}
  .mbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--c-border);box-shadow:0 -6px 20px rgba(0,0,0,.06)}
  .mbar a,.mbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;font:600 11px/1.1 var(--font);color:var(--c-text);text-decoration:none;background:none;border:0;cursor:pointer}
  .mbar svg{width:22px;height:22px}
  .mbar .mbar-main{background:var(--c-brand);color:#fff}
}

/* Modal ------------------------------------------------------------------ */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:var(--space-4);background:rgba(15,16,18,.62)}
.modal.is-open{display:flex}
.modal-box{position:relative;width:100%;max-width:520px;max-height:calc(100vh - 2rem);overflow:auto;background:#fff;border-radius:var(--radius-lg);padding:clamp(var(--space-6),4vw,var(--space-10))}
.modal-close{position:absolute;top:var(--space-3);right:var(--space-3);width:40px;height:40px;border:0;background:var(--c-surface-2);border-radius:50%;cursor:pointer;font-size:22px;line-height:1;color:var(--c-text)}
.modal-box h3{font-size:var(--text-lg);padding-right:var(--space-10)}

/* Cookie ----------------------------------------------------------------- */
.cookie{position:fixed;left:var(--space-4);bottom:var(--space-4);z-index:70;max-width:420px;background:var(--c-dark-2);color:var(--c-on-dark);font-size:var(--text-xs);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);display:none;gap:var(--space-4);align-items:center;box-shadow:var(--shadow)}
.cookie.is-on{display:flex}
.cookie a{color:#e9c3cd}
.cookie .btn{min-height:36px;padding:.4em 1em}
@media (max-width:860px){.cookie{bottom:76px;right:var(--space-4)}}

/* Pagination ------------------------------------------------------------- */
.pagination{display:flex;gap:var(--space-2);margin-top:var(--space-10);flex-wrap:wrap}
.pagination .page-numbers{display:inline-flex;min-width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--c-border);border-radius:var(--radius);text-decoration:none;color:var(--c-text);background:#fff}
.pagination .current{background:var(--c-brand);color:#fff;border-color:var(--c-brand)}

/* WP core ---------------------------------------------------------------- */
.alignwide{max-width:none}
.wp-block-image figcaption{font-size:var(--text-xs);color:var(--c-muted)}
.aligncenter{margin-inline:auto}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.entry{min-width:0}
@media (max-width:720px){.entry table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}}
@media (max-width:1000px){.page-template-direction .sidebar .lead-card,.page-template-page-templatesdirection-php .sidebar .lead-card{display:none}}

/* Stock search: dropdown, results ----------------------------------------- */
.btn-sm{min-height:38px;padding:.45em 1em;font-size:var(--text-xs)}
.partsearch{position:relative}
.partsearch-field{position:relative;flex:1;min-width:0;display:flex}
.partsearch-field input{width:100%}
.ps-drop{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;background:#fff;color:var(--c-text);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:0 18px 40px rgba(20,10,14,.22);overflow:hidden;max-height:420px;overflow-y:auto}
.ps-item{display:flex;width:100%;gap:var(--space-3);justify-content:space-between;align-items:center;text-align:left;background:#fff;border:0;border-bottom:1px solid var(--c-border);padding:.7em 1em;cursor:pointer;font:inherit;color:inherit}
.ps-item:hover,.ps-item.is-active{background:#f7eef1}
.ps-main{display:flex;flex-direction:column;min-width:0}
.ps-name{font:500 var(--text-sm) var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps-meta{font-size:var(--text-xs);color:var(--c-muted)}
.ps-side{display:flex;flex-direction:column;align-items:flex-end;flex:none;font-size:var(--text-xs)}
.ps-stock{color:var(--c-muted)}.ps-stock.is-ok{color:#1f7a45;font-weight:600}
.ps-price{font-weight:600;font-size:var(--text-sm)}
.ps-all{display:block;padding:.75em 1em;font-size:var(--text-sm);font-weight:600;color:var(--c-brand);text-decoration:none;background:#fbf7f8}
.ps-none{display:flex;gap:var(--space-3);align-items:center;justify-content:space-between;padding:.85em 1em;font-size:var(--text-sm)}
.partsearch--wide{max-width:760px;margin-top:var(--space-6)}
.stock-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}
.stock-count{margin:0}
.stock-table-wrap{border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;background:#fff}
.stock-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.stock-table th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--c-muted);background:#faf8f8;padding:.8em 1em;border-bottom:1px solid var(--c-border)}
.stock-table td{padding:.75em 1em;border-bottom:1px solid var(--c-border);vertical-align:middle}
.stock-table tr:last-child td{border-bottom:0}
.stock-table td a{color:var(--c-text)}
.st-name .mono{font-size:var(--text-base)}
.st-price{font-weight:700;white-space:nowrap}.st-price.is-req{font-weight:500;color:var(--c-muted)}
.st-act{text-align:right}
.st-badge{display:inline-block;padding:.2em .6em;border-radius:999px;font-size:var(--text-xs);font-weight:600;background:#eef0f2;color:#4a4f55;white-space:nowrap}
.st-badge.is-ok{background:#e4f4ea;color:#1f7a45}
.stock-note{font-size:var(--text-xs);color:var(--c-muted);margin-top:var(--space-4)}
.stock-empty{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:var(--space-10);align-items:start}
.stock-browse{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);margin-bottom:var(--space-10)}
.stock-browse h2{font-size:var(--text-lg)}
.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}
.chips a{display:inline-flex;gap:.4em;padding:.4em .8em;border:1px solid var(--c-border);border-radius:999px;text-decoration:none;color:var(--c-text);font-size:var(--text-sm);background:#fff}
.chips a:hover{border-color:var(--c-brand);color:var(--c-brand)}
.chips span{color:var(--c-faint)}
@media (max-width:860px){
  .stock-empty,.stock-browse{grid-template-columns:minmax(0,1fr)}
  .stock-table thead{display:none}
  .stock-table,.stock-table tbody,.stock-table tr,.stock-table td{display:block;width:100%}
  .stock-table tr{padding:.8em 1em;border-bottom:1px solid var(--c-border)}
  .stock-table td{border:0;padding:.2em 0;display:flex;justify-content:space-between;gap:var(--space-3)}
  .stock-table td::before{content:attr(data-l);color:var(--c-muted);font-size:var(--text-xs)}
  .stock-table td.st-name{display:block}.stock-table td.st-name::before{display:none}
  .st-act{text-align:left;padding-top:.6em!important}.st-act .btn{width:100%}
}
@media (max-width:560px){.ps-item{flex-direction:column;align-items:flex-start;gap:.3em}.ps-side{flex-direction:row;gap:.8em;align-items:baseline}.ps-none{flex-direction:column;align-items:flex-start}}

/* Catalog sections (imported from the old site) --------------------------- */
.cat-hero .wrap{padding-block:clamp(var(--space-8),4vw,var(--space-12))}
.cat-hero h1{font-size:var(--text-xl);max-width:32ch}
.cat-hero .hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}
.page-template-page-templatescatalog-php .content-layout .sidebar{position:static}
.entry--catalog{max-width:820px}
.entry--catalog img{max-width:100%;height:auto;background:#fff}
.entry--catalog p > img{display:block;margin:var(--space-4) 0}
.entry .old-fig{margin:var(--space-4) 0;display:inline-block;max-width:100%;vertical-align:top;margin-right:var(--space-4)}
.entry .old-fig img{max-height:320px;width:auto;border:1px solid var(--c-border);padding:6px}
.entry .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:var(--space-6) 0;border-radius:var(--radius)}
.entry .table-wrap table{margin:0;min-width:520px}
.entry .table-wrap td img{max-height:120px;width:auto}
.lead-dark{font-size:var(--text-lg);color:var(--c-muted);max-width:62ch}
.subpages{margin-top:var(--space-12)}
.subpages h2{margin-top:0}
.subpages-grid{list-style:none;padding:0;margin:var(--space-4) 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--space-3)}
.entry .subpages-grid li{margin:0}
.subpages-grid a{display:flex;flex-direction:column;gap:.35em;height:100%;padding:var(--space-4) var(--space-5);border:1px solid var(--c-border);border-radius:var(--radius-lg);background:#fff;text-decoration:none;color:var(--c-text);transition:border-color .15s,box-shadow .15s}
.subpages-grid a:hover{border-color:var(--c-brand);box-shadow:0 6px 18px rgba(136,0,39,.08)}
.subpages-grid strong{font-size:var(--text-base);line-height:1.3}
.subpages-grid span{font-size:var(--text-xs);color:var(--c-muted);line-height:1.45}
.subpages-grid em{font-style:normal;font-size:var(--text-xs);color:var(--c-brand);font-weight:600;margin-top:auto}
.cat-cta{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5);flex-wrap:wrap;margin-top:var(--space-12);padding:var(--space-6);border:1px solid var(--c-border);border-left:3px solid var(--c-brand);border-radius:var(--radius-lg);background:var(--c-surface)}
.cat-cta strong{display:block;font-size:var(--text-lg)}
.cat-cta span{display:block;color:var(--c-muted);font-size:var(--text-sm);max-width:52ch}
.side-nav{background:#fff;border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4)}
.side-nav-title{display:block;font-weight:700;color:var(--c-text);text-decoration:none;margin-bottom:var(--space-3)}
.side-nav ul{list-style:none;margin:0;padding:0;max-height:440px;overflow-y:auto}
.side-nav li a{display:block;padding:.4em .6em;border-radius:6px;font-size:var(--text-sm);color:var(--c-text);text-decoration:none;line-height:1.35}
.side-nav li a:hover{background:var(--c-surface)}
.side-nav li.is-current a{background:#f7eef1;color:var(--c-brand);font-weight:600}
@media (max-width:1000px){.page-template-page-templatescatalog-php .side-nav{display:none}}
