/* Cutting / lining services — own layout, not the category/product template */
.sv{--sv-pad:clamp(64px,8vw,112px)}
.sv-wrap{width:min(100% - 2*var(--gutter),var(--container));margin-inline:auto}
.sv h2{font-family:var(--f-display);font-stretch:112%;font-weight:750;letter-spacing:-.02em;line-height:1.05;font-size:clamp(1.9rem,3.8vw,3rem)}
.sv-kicker{font-family:var(--f-mono);font-size:.74rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-deep);display:flex;align-items:center;gap:10px;margin-bottom:14px}
.sv-kicker::before{content:"";width:26px;height:2px;background:currentColor}
.sv-dark .sv-kicker{color:var(--accent)}

/* ---------- Hero ---------- */
.sv-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--ink);color:var(--paper);padding:clamp(28px,4vw,48px) 0 clamp(56px,7vw,96px)}
.sv-grid{position:absolute;inset:0;z-index:-1;opacity:.55;
  background:
   radial-gradient(60% 70% at 85% 10%,rgba(240,168,28,.22),transparent 60%),
   linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px) 0 0/48px 48px,
   linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px) 0 0/48px 48px;
  -webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.sv-hero-in{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.8fr);gap:clamp(28px,5vw,72px);align-items:start}
.sv-hero .crumbs ol{margin-bottom:clamp(28px,4vw,48px)}
.sv-tag{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:.74rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);padding:7px 12px 7px 10px;border:1px solid rgba(240,168,28,.4);border-radius:99px;background:rgba(240,168,28,.08)}
.sv-tag i{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(240,168,28,.25)}
.sv-hero h1{font-family:var(--f-display);font-stretch:118%;font-weight:800;letter-spacing:-.03em;line-height:.98;font-size:clamp(2.5rem,6.2vw,5.2rem);margin:22px 0 14px;text-wrap:balance}
.sv-hero .c-sub{color:var(--muted-dark);font-size:1.05rem}
/* the "cut line": a torch dot travelling along a dashed seam */
.sv-cut{position:relative;height:18px;margin:26px 0 24px;max-width:520px}
.sv-cut::before{content:"";position:absolute;left:0;right:0;top:8px;border-top:2px dashed rgba(255,255,255,.28)}
.sv-cut i{position:absolute;left:0;top:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px var(--accent),0 0 22px 8px rgba(240,168,28,.7);animation:svcut 4.2s var(--ease) infinite}
.sv-cut::after{content:"";position:absolute;left:0;top:7px;height:4px;width:0;background:linear-gradient(90deg,transparent,var(--accent));animation:svtrail 4.2s var(--ease) infinite}
@keyframes svcut{0%{left:0;opacity:0}8%{opacity:1}85%{opacity:1}100%{left:calc(100% - 14px);opacity:0}}
@keyframes svtrail{0%{width:0}85%{width:calc(100% - 14px)}100%{width:calc(100% - 14px);opacity:0}}
@media (prefers-reduced-motion:reduce){.sv-cut i,.sv-cut::after{animation:none}.sv-cut i{left:calc(100% - 14px)}.sv-cut::after{width:calc(100% - 14px)}}
.sv-intro{color:#d6d0c3;font-size:1.06rem;line-height:1.65;max-width:60ch}
.sv-hero .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.sv-trust{list-style:none;margin:clamp(30px,4vw,48px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,max-content));justify-content:start;gap:14px clamp(20px,3vw,40px);border-top:1px solid var(--line-dark);padding-top:22px}
.sv-trust b{display:block;font-family:var(--f-display);font-stretch:108%;font-size:1.05rem;color:var(--paper)}
.sv-trust span{font-size:.82rem;color:var(--muted-dark)}

/* quick-quote card */
.sv-quote{background:var(--paper);color:var(--text);border-radius:var(--r-lg);padding:clamp(22px,2.6vw,30px);box-shadow:0 40px 70px -34px rgba(0,0,0,.7);position:relative}
.sv-quote::before{content:"";position:absolute;left:24px;right:24px;top:-6px;height:6px;border-radius:6px 6px 0 0;background:var(--accent)}
.sv-quote h2{font-size:1.45rem;font-stretch:108%;line-height:1.1;margin-bottom:6px}
.sv-quote>p{color:var(--muted);font-size:.92rem;margin-bottom:18px}
.sv-q-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sv-q-grid .full{grid-column:1/-1}.sv-q-grid .half{grid-column:span 3/3}
.sv-q label{display:block;font-family:var(--f-mono);font-size:.68rem;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
.sv-q input,.sv-q select{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:#faf9f5;font:inherit;color:var(--text);transition:border-color .2s,background .2s}
.sv-q input:focus,.sv-q select:focus{outline:0;border-color:var(--text);background:#fff}
.sv-q-go{display:flex;width:100%;justify-content:center;margin-top:16px;background:#25d366;color:#06210f;box-shadow:0 10px 26px -12px rgba(37,211,102,.8)}
.sv-q-go:hover{background:#1ebe5a}
.sv-q-go svg{width:20px;height:20px}
.sv-q-alt{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin-top:14px;font-size:.88rem;color:var(--muted)}
.sv-q-alt a{color:var(--text);font-weight:600;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}

/* ---------- Sticky section nav ---------- */
.sv-nav{position:sticky;top:var(--hdr-h,66px);z-index:30;background:rgba(244,242,237,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.sv-nav .sv-wrap{display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none;padding-block:8px}
.sv-nav .sv-wrap::-webkit-scrollbar{display:none}
.sv-nav a{flex:none;padding:9px 16px;border-radius:99px;font-weight:600;font-size:.92rem;text-decoration:none;color:var(--muted);transition:background .2s,color .2s}
.sv-nav a:hover{color:var(--text)}
.sv-nav a.active{background:var(--ink);color:var(--paper)}
.sv-nav .sv-nav-cta{margin-left:auto;background:var(--accent);color:var(--accent-ink)}
.sv-nav .sv-nav-cta:hover{background:#f6b83d;color:var(--accent-ink)}
@media (max-width:700px){.sv-nav .sv-nav-cta{display:none}}

/* ---------- Generic section rhythm ---------- */
.sv-sec{padding:var(--sv-pad) 0;scroll-margin-top:120px}
.sv-alt{background:var(--paper-2)}
.sv-dark{background:var(--ink);color:var(--paper)}
.sv-sec-head{max-width:760px;margin-bottom:clamp(28px,4vw,52px)}
.sv-sec-head p{color:var(--muted);font-size:1.05rem;margin-top:14px}
.sv-dark .sv-sec-head p{color:var(--muted-dark)}

/* ---------- Overview ---------- */
.sv-over{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:center}
.sv-frame{position:relative;margin:0;padding:14px}
.sv-frame img{display:block;width:100%;height:auto;aspect-ratio:10/7;object-fit:cover;border-radius:var(--r-md);filter:contrast(1.04)}
.sv-frame::before,.sv-frame::after{content:"";position:absolute;width:56px;height:56px;border:3px solid var(--accent)}
.sv-frame::before{left:0;top:0;border-right:0;border-bottom:0}
.sv-frame::after{right:0;bottom:0;border-left:0;border-top:0}
.sv-frame figcaption{position:absolute;left:30px;bottom:30px;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:99px;font-family:var(--f-mono);font-size:.72rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}
.sv-copy-lg h2{margin-bottom:20px}
.sv-copy-lg p{font-size:1.1rem;line-height:1.7;color:#3d3930}
.sv-copy-lg p+p{margin-top:16px}
.sv-copy-lg em{display:block;margin-top:20px;padding:16px 20px;border-left:3px solid var(--accent);background:var(--paper-2);border-radius:0 var(--r-md) var(--r-md) 0;font-size:.98rem;color:#3d3930}
.sv-copy-lg em strong{font-weight:650}
.sv-read{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;margin-top:28px;border:1px solid var(--ink);border-radius:var(--r-md);overflow:hidden;background:var(--ink);color:var(--paper)}
.sv-read div{padding:18px 20px;border-right:1px solid var(--line-dark)}
.sv-read div:last-child{border-right:0}
.sv-read dt{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-weight:650}
.sv-read dd{margin:6px 0 0;font-family:var(--f-display);font-stretch:108%;font-weight:700;font-size:1.1rem;line-height:1.25}

/* ---------- Features ---------- */
.sv-feat{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sv-feat li{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:26px 24px 24px;display:flex;flex-direction:column;gap:14px;min-height:150px;transition:transform .25s var(--ease),border-color .25s,box-shadow .25s}
.sv-feat li:hover{transform:translateY(-4px);border-color:var(--ink);box-shadow:0 22px 40px -28px rgba(30,24,10,.45)}
.sv-feat .no{font-family:var(--f-display);font-stretch:120%;font-weight:800;font-size:2.3rem;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--accent-deep)}
.sv-feat p{font-weight:550;line-height:1.5;color:var(--text)}
@media (max-width:1000px){.sv-feat{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.sv-feat{grid-template-columns:1fr}}

/* ---------- Process ---------- */
.sv-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:st;position:relative}
.sv-steps::before{content:"";position:absolute;left:0;right:0;top:27px;border-top:2px dashed rgba(255,255,255,.22)}
.sv-steps li{position:relative;padding:0 clamp(12px,2vw,28px) 0 0}
.sv-steps .dot{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--ink);border:2px solid var(--accent);color:var(--accent);font-family:var(--f-display);font-stretch:112%;font-weight:800;font-size:1.15rem;box-shadow:0 0 0 8px var(--ink)}
.sv-steps h3{font-family:var(--f-display);font-stretch:108%;font-size:1.2rem;margin:22px 0 8px}
.sv-steps p{color:var(--muted-dark);line-height:1.6;font-size:.98rem;max-width:30ch}
@media (max-width:900px){.sv-steps{grid-template-columns:1fr;gap:34px}.sv-steps::before{left:27px;right:auto;top:0;bottom:0;border-top:0;border-left:2px dashed rgba(255,255,255,.22)}.sv-steps li{display:grid;grid-template-columns:56px 1fr;column-gap:20px}.sv-steps h3{margin:4px 0 6px}.sv-steps li>div{grid-column:2}.sv-steps p{max-width:none}}

/* contact band */
.sv-band{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);margin-top:clamp(52px,6vw,84px);padding:clamp(26px,3.6vw,48px);border-radius:var(--r-lg);background:linear-gradient(135deg,#2a2519,#1a1812);border:1px solid var(--line-dark);position:relative;overflow:hidden}
.sv-band::after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(240,168,28,.28),transparent 65%)}
.sv-band>*{position:relative;z-index:1}
.sv-band h3{font-family:var(--f-display);font-stretch:116%;font-weight:800;font-size:clamp(1.9rem,3.6vw,2.8rem);letter-spacing:-.02em;line-height:1.02}
.sv-band .sub{font-size:1.1rem;color:#e6e1d4;margin-top:6px}
.sv-band em{display:block;margin-top:16px;color:#b8b2a4;font-size:.98rem;max-width:56ch;line-height:1.6}
.sv-band .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.sv-band .hours{margin-top:16px;color:#9a9486;font-size:.86rem;line-height:1.6}
.sv-band-side{display:grid;gap:12px;align-content:center}
.sv-link{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;padding:16px 18px;border:1px solid var(--line-dark);border-radius:var(--r-md);background:rgba(255,255,255,.04);color:var(--paper);text-decoration:none;transition:border-color .2s,background .2s,transform .2s}
.sv-link:hover{border-color:var(--accent);background:rgba(240,168,28,.08);transform:translateX(4px)}
.sv-link .ic{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--accent);color:var(--accent-ink)}
.sv-link .ic svg{width:20px;height:20px}
.sv-link b{display:block;font-weight:650}
.sv-link span span{display:block;font-size:.86rem;color:var(--muted-dark);margin-top:2px}
.sv-link>svg{width:18px;height:18px;color:var(--accent)}
@media (max-width:900px){.sv-band{grid-template-columns:1fr}}

/* ---------- Why ---------- */
.sv-why{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:start}
.sv-why-l{position:sticky;top:150px}
.sv-why-l p{margin-top:16px;color:#3d3930;font-size:1.05rem;line-height:1.65}
.sv-why-l .more{color:var(--muted);font-size:.98rem}
.sv-pts{list-style:none;margin:0;padding:0;counter-reset:pt}
.sv-pts li{display:grid;grid-template-columns:64px 1fr;align-items:baseline;gap:6px;padding:20px 0;border-top:1px solid var(--line);transition:padding .25s var(--ease)}
.sv-pts li:last-child{border-bottom:1px solid var(--line)}
.sv-pts li:hover{padding-left:10px}
.sv-pts .n{font-family:var(--f-display);font-stretch:118%;font-weight:800;font-size:1.7rem;color:var(--accent-deep);line-height:1}
.sv-pts p{font-size:1.08rem;font-weight:550;line-height:1.45}
@media (max-width:900px){.sv-why{grid-template-columns:1fr}.sv-why-l{position:static}}

/* ---------- Tabs (documents, export) ---------- */
.sv-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.sv-tabs button{appearance:none;border:1.5px solid var(--line);background:var(--paper);color:var(--text);font:inherit;font-weight:600;font-size:.95rem;padding:10px 18px;border-radius:99px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.sv-tabs button:hover{border-color:var(--ink)}
.sv-tabs button[aria-selected="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.sv-tabs button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.sv-docs{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:clamp(24px,4vw,56px);align-items:start}
.sv-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(24px,3vw,40px)}
.sv-panel h3{font-family:var(--f-display);font-stretch:110%;font-size:1.5rem;margin-bottom:14px}
.sv-panel p{font-size:1.05rem;line-height:1.7;color:#3d3930;max-width:68ch}
.sv-cert{margin:0}
.sv-cert figcaption{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:650;margin-bottom:10px}
.sv-cert img{width:100%;height:auto;border-radius:var(--r-sm);border:1px solid var(--line);box-shadow:0 24px 48px -28px rgba(40,30,10,.5);transform:rotate(1.5deg);transition:transform .3s var(--ease)}
.sv-cert img:hover{transform:rotate(0)}
@media (max-width:900px){.sv-docs{grid-template-columns:1fr}.sv-cert{max-width:220px}}
/* no-JS / pre-JS: show every panel stacked */
.js .sv-panel[hidden]{display:none}
html:not(.js) .sv-tabs,.static .sv-tabs{display:none}
.sv-panels>.sv-panel+.sv-panel{margin-top:12px}
.js:not(.static) .sv-panels>.sv-panel+.sv-panel{margin-top:0}

.sv-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.sv-chips li{padding:8px 14px;border:1px solid var(--line);border-radius:99px;background:var(--paper);font-size:.92rem;transition:border-color .2s,background .2s}
.sv-chips li:hover{border-color:var(--ink);background:#fff}
.sv-export-lead{max-width:62ch}

/* ---------- Other services ---------- */
.sv-more{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sv-mc{position:relative;display:block;border-radius:var(--r-md);overflow:hidden;background:var(--ink);color:var(--paper);text-decoration:none;isolation:isolate;aspect-ratio:4/3}
.sv-mc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;opacity:.78;transition:transform .6s var(--ease),opacity .3s}
.sv-mc::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(10,9,6,.92));z-index:-1}
.sv-mc:hover img{transform:scale(1.06);opacity:.95}
.sv-mc div{position:absolute;left:0;right:0;bottom:0;padding:20px}
.sv-mc b{display:block;font-family:var(--f-display);font-stretch:108%;font-size:1.2rem;line-height:1.15}
.sv-mc span{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:.88rem;color:var(--accent);font-weight:600}
.sv-mc span svg{width:14px;height:14px;transition:transform .2s}
.sv-mc:hover span svg{transform:translateX(4px)}
.sv-mc .no{text-shadow:0 1px 8px rgba(0,0,0,.8);position:absolute;right:16px;top:14px;font-family:var(--f-mono);font-size:.74rem;font-weight:650;color:var(--accent);letter-spacing:.08em}
@media (max-width:900px){.sv-more{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.sv-more{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.sv-faq-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(28px,5vw,80px);align-items:start}
.sv-faq-grid>div:first-child{position:sticky;top:150px}
.sv-faq-grid .lead{margin-top:16px;color:var(--muted)}
.sv-faq-grid .faq-tools{margin:22px 0 0;display:block}
.sv-faq-grid .faq-tools .mono{display:block;margin-bottom:8px}
@media (max-width:900px){.sv-faq-grid{grid-template-columns:1fr}.sv-faq-grid>div:first-child{position:static}}

.sv-note{padding:0 0 var(--sv-pad)}
.sv-note .note-panel{margin:0}

/* ---------- Hub (metal-cutting-services) ---------- */
.sv-index{list-style:none;margin:0;padding:0;background:var(--paper);color:var(--text);border-radius:var(--r-lg);overflow:hidden;box-shadow:0 40px 70px -34px rgba(0,0,0,.7)}
.sv-index li+li{border-top:1px solid var(--line)}
.sv-index a{display:grid;grid-template-columns:34px 1fr 18px;align-items:center;gap:12px;padding:15px 20px;text-decoration:none;font-weight:600;transition:background .2s,padding .25s var(--ease)}
.sv-index a:hover{background:var(--paper-2);padding-left:26px}
.sv-index .n{font-family:var(--f-mono);font-size:.74rem;color:var(--accent-deep);font-weight:650}
.sv-index svg{width:16px;height:16px}
.sv-index-h{font-family:var(--f-mono);font-size:.72rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;padding:16px 20px;background:var(--accent);color:var(--accent-ink)}
.sv-rows{list-style:none;margin:0;padding:0;display:grid;gap:clamp(40px,6vw,88px)}
.sv-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center}
.sv-row:nth-child(even) .sv-row-img{order:2}
.sv-row-img{position:relative;display:block;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:10/7;background:var(--ink)}
.sv-row-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.sv-row:hover .sv-row-img img{transform:scale(1.05)}
.sv-row-img::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(10,9,6,.55),transparent 45%);pointer-events:none}
.sv-row-img .no{z-index:1;position:absolute;left:18px;top:14px;font-family:var(--f-display);font-stretch:120%;font-weight:800;font-size:3.4rem;line-height:1;color:transparent;-webkit-text-stroke:1.5px #fff;text-shadow:0 2px 18px rgba(0,0,0,.4)}
.sv-row h3{font-family:var(--f-display);font-stretch:114%;font-weight:780;letter-spacing:-.02em;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.05;margin-bottom:14px}
.sv-row h3 a{text-decoration:none}
.sv-row p{color:#3d3930;font-size:1.06rem;line-height:1.65;max-width:52ch}
.sv-row .sv-chips{margin-top:18px}
.sv-row .go{display:inline-flex;align-items:center;gap:10px;margin-top:24px;font-weight:650;text-decoration:none;border-bottom:2px solid var(--accent);padding-bottom:3px;transition:gap .2s}
.sv-row .go:hover{gap:16px}
.sv-row .go svg{width:16px;height:16px}
.sv-count{font-family:var(--f-mono);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:650;margin-bottom:clamp(28px,4vw,48px)}
@media (max-width:860px){.sv-row{grid-template-columns:1fr}.sv-row:nth-child(even) .sv-row-img{order:0}}

.sv-ind{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.sv-ind li{position:relative;aspect-ratio:1/1;border-radius:var(--r-md);overflow:hidden;isolation:isolate;background:var(--ink-2)}
.sv-ind img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;opacity:.8;transition:transform .6s var(--ease),opacity .3s}
.sv-ind li::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 35%,rgba(10,9,6,.9))}
.sv-ind li:hover img{transform:scale(1.08);opacity:1}
.sv-ind .n{text-shadow:0 1px 6px rgba(0,0,0,.9);position:absolute;left:12px;top:10px;font-family:var(--f-mono);font-size:.7rem;font-weight:650;color:var(--accent)}
.sv-ind b{position:absolute;left:12px;right:12px;bottom:12px;font-size:.92rem;line-height:1.2;font-weight:650;color:var(--paper)}
@media (max-width:1100px){.sv-ind{grid-template-columns:repeat(4,1fr)}}
@media (max-width:760px){.sv-ind{grid-template-columns:repeat(2,1fr)}}

@media (max-width:1000px){
  .sv-hero-in{grid-template-columns:1fr}
  .sv-over{grid-template-columns:1fr}
}
@media (max-width:640px){
  .sv-trust{grid-template-columns:repeat(2,auto)}
  .sv-q-grid{grid-template-columns:1fr 1fr 1fr}
}

/* ---------- About us ---------- */
.ab-stats{list-style:none;margin:clamp(24px,3vw,36px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:16px clamp(24px,4vw,56px)}
.ab-stats b{display:block;font-family:var(--f-display);font-stretch:118%;font-weight:800;font-size:clamp(1.8rem,3.4vw,2.8rem);letter-spacing:-.02em;color:var(--paper);line-height:1}
.ab-stats span{display:block;margin-top:8px;font-size:.86rem;color:var(--muted-dark);max-width:16ch}
.ab-photo{margin:0;position:relative;padding:14px}
.ab-photo img{display:block;width:100%;height:auto;border-radius:var(--r-lg);box-shadow:0 40px 70px -34px rgba(0,0,0,.7)}
.ab-photo::before,.ab-photo::after{content:"";position:absolute;width:56px;height:56px;border:3px solid var(--accent)}
.ab-photo::before{left:0;top:0;border-right:0;border-bottom:0}
.ab-photo::after{right:0;bottom:0;border-left:0;border-top:0}
.sv-hero .hero-actions{margin-top:32px}
.ab-story{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:clamp(24px,5vw,80px);align-items:start}
.ab-prose{max-width:78ch}
.ab-prose p{font-size:1.08rem;line-height:1.75;color:#3d3930;margin:0 0 1.25em}
.ab-prose p:first-of-type{font-size:1.2rem;color:var(--text)}
.ab-prose a{color:var(--text);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:2px}
.ab-prose a:hover{color:var(--accent-deep)}
.ab-side{position:sticky;top:150px}
.ab-card{background:var(--ink);color:var(--paper);border-radius:var(--r-lg);padding:28px 24px}
.ab-card b{display:block;font-family:var(--f-display);font-stretch:120%;font-weight:800;font-size:3rem;line-height:1;color:var(--accent)}
.ab-card span{display:block;margin-top:10px;color:var(--muted-dark)}
@media (max-width:900px){.ab-story{grid-template-columns:1fr}.ab-side{display:none}}
.ab-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.ab-chips li>*{display:block;padding:12px 18px;border:1.5px solid var(--line);border-radius:99px;background:var(--paper);font-weight:600;text-decoration:none;color:var(--text);transition:background .2s,color .2s,border-color .2s,transform .2s}
.ab-chips a:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:translateY(-2px)}
.ab-chips .more{border-style:dashed;color:var(--muted);font-weight:500}
.ab-team{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start}
.ab-p{color:#cfc9bd;font-size:1.06rem;line-height:1.7;margin-top:18px;max-width:58ch}
.ab-team h2{color:var(--paper)}
.ab-label{font-family:var(--f-mono);font-size:.78rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.ab-pros{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.ab-pros li{display:flex;flex-direction:column;gap:18px;padding:20px;border:1px solid var(--line-dark);border-radius:var(--r-md);background:rgba(255,255,255,.04);font-weight:600;min-height:110px;transition:border-color .2s,background .2s}
.ab-pros li:hover{border-color:var(--accent);background:rgba(240,168,28,.08)}
.ab-pros li span{font-family:var(--f-mono);font-size:.74rem;color:var(--accent);font-weight:650}
@media (max-width:900px){.ab-team{grid-template-columns:1fr}}
@media (max-width:560px){.ab-stats{grid-template-columns:repeat(3,auto);gap:12px 20px}.ab-pros{grid-template-columns:1fr}}

/* About: product range photo cards */
.ab-range{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ab-range a{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;isolation:isolate;background:var(--ink);color:var(--paper);text-decoration:none}
.ab-range img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;transition:transform .6s var(--ease)}
.ab-range a::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 40%,rgba(10,9,6,.88))}
.ab-range a:hover img{transform:scale(1.07)}
.ab-range b{position:absolute;left:16px;right:16px;bottom:14px;font-family:var(--f-display);font-stretch:106%;font-size:1.02rem;line-height:1.2}
.ab-range a:hover b{color:var(--accent)}
.ab-range .more-card{display:grid;place-items:center;aspect-ratio:4/3;border:1.5px dashed var(--line);border-radius:var(--r-md);color:var(--muted);font-weight:600;text-align:center;padding:16px}
@media (max-width:1100px){.ab-range{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.ab-range{grid-template-columns:repeat(2,1fr)}}

/* ---------- Our products ---------- */
.op-hero{padding-bottom:clamp(40px,5vw,72px)}
.op-hero-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(24px,5vw,72px);align-items:end}
.op-hero h1{margin-bottom:0}
.op-search label{display:block;font-family:var(--f-mono);font-size:.72rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.op-field{display:flex;align-items:center;gap:12px;padding:0 18px;background:var(--paper);color:var(--text);border-radius:var(--r-md)}
.op-field svg{width:20px;height:20px;flex:none;color:var(--muted)}
.op-field input{flex:1;border:0;outline:0;background:none;font:inherit;padding:18px 0;min-width:0}
.op-field:focus-within{box-shadow:0 0 0 3px var(--accent)}
.op-count{margin-top:10px;font-size:.88rem;color:var(--muted-dark)}
@media (max-width:900px){.op-hero-in{grid-template-columns:1fr}}
.op-filters button{flex:none;appearance:none;border:0;background:none;font:inherit;padding:9px 16px;border-radius:99px;font-weight:600;font-size:.92rem;color:var(--muted);cursor:pointer;transition:background .2s,color .2s}
.op-filters button:hover{color:var(--text)}
.op-filters button.on{background:var(--ink);color:var(--paper)}
.op-sec{padding-top:clamp(36px,5vw,64px)}
.op-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.op-grid li[hidden]{display:none}
.op-grid a{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden;isolation:isolate;background:var(--ink);color:var(--paper);text-decoration:none}
.op-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;transition:transform .7s var(--ease)}
.op-grid a::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 38%,rgba(10,9,6,.92))}
.op-grid a:hover img{transform:scale(1.07)}
.op-grid .fam{position:absolute;left:16px;top:16px;padding:6px 12px;border-radius:99px;background:rgba(10,9,6,.62);backdrop-filter:blur(6px);font-family:var(--f-mono);font-size:.68rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.op-grid div{position:absolute;left:0;right:0;bottom:0;padding:22px}
.op-grid b{display:block;font-family:var(--f-display);font-stretch:110%;font-weight:750;font-size:1.3rem;line-height:1.15;letter-spacing:-.01em}
.op-grid .go{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:.9rem;font-weight:600;color:var(--accent)}
.op-grid .go svg{width:14px;height:14px;transition:transform .2s}
.op-grid a:hover .go svg{transform:translateX(5px)}
.op-empty{margin-top:24px;color:var(--muted)}
@media (max-width:1000px){.op-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.op-grid{grid-template-columns:1fr}}
