/* Vuulcan Ceramics — site styles (generated pages use this file; see ../site-src/) */
:root{
  --ink:#0B0F12;--ink-2:#12181D;--ink-3:#1B232A;--ink-line:rgba(255,255,255,.08);
  --paper:#FFFFFF;--paper-2:#F4F6F7;--paper-3:#EAEEF0;
  --line:#DDE3E7;--line-2:#C9D1D7;
  --text:#0B0F12;--mute:#55616B;--mute-2:#87939C;--on-dark:#E8EDF0;--on-dark-mute:#9AA6AF;
  --teal:#0C8C8C;--teal-d:#0A7272;--teal-l:#E7F3F3;--teal-glow:rgba(12,140,140,.14);
  --amber:#A8600C;--amber-l:#FBF3E8;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --mono:ui-monospace,'SF Mono','SFMono-Regular',Menlo,Consolas,'Liberation Mono',monospace;
  --mw:1200px;--gutter:24px;--r:2px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-size:16.5px;line-height:1.7;color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
h1,h2,h3,h4{line-height:1.14;font-weight:780;letter-spacing:-.022em}
h1{font-size:clamp(34px,5.2vw,60px)}
h2{font-size:clamp(26px,3.3vw,40px)}
h3{font-size:clamp(18px,1.6vw,21px);font-weight:700;letter-spacing:-.012em;line-height:1.3}
h4{font-size:15px;font-weight:700;letter-spacing:0}
p{margin-bottom:1em}p:last-child{margin-bottom:0}
strong{font-weight:650}
sub,sup{font-size:.72em;line-height:0}
::selection{background:var(--teal);color:#fff}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.ctn{max-width:var(--mw);margin:0 auto;padding:0 var(--gutter);width:100%}
.skip{position:absolute;left:-9999px;top:8px;background:var(--teal);color:#fff;padding:8px 14px;z-index:999}
.skip:focus{left:8px}
.mono{font-family:var(--mono);font-feature-settings:"zero" 1}
.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:18px}
.eyebrow::before{content:'';width:22px;height:1px;background:currentColor}
.eyebrow--plain::before{display:none}
.lead{font-size:clamp(17px,1.5vw,19.5px);line-height:1.65;color:var(--mute)}
.on-dark .lead,.lead--dark{color:var(--on-dark-mute)}
.muted{color:var(--mute)}
.small{font-size:14px}
.tiny{font-size:12.5px;color:var(--mute-2)}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;font-size:14px;font-weight:650;letter-spacing:.01em;border:1px solid var(--ink);background:var(--ink);color:#fff;border-radius:var(--r);cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s;font-family:var(--sans);white-space:nowrap;line-height:1.2}
.btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;transition:transform .2s}
.btn:hover svg{transform:translateX(3px)}
.btn--teal{background:var(--teal-d);border-color:var(--teal-d)}
.btn--teal:hover{background:var(--teal);border-color:var(--teal)}
.btn--ghost{background:transparent;color:var(--text);border-color:var(--line-2)}
.btn--ghost:hover{border-color:var(--text)}
.on-dark .btn--ghost,.phero .btn--ghost,.hero .btn--ghost{color:#fff;border-color:rgba(255,255,255,.28)}
.on-dark .btn--ghost:hover,.phero .btn--ghost:hover,.hero .btn--ghost:hover{border-color:#fff}
.btn--wa{background:#1FA855;border-color:#1FA855}
.btn--wa:hover{background:#1b944b;border-color:#1b944b}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.link{color:var(--teal-d);font-weight:600;border-bottom:1px solid rgba(10,114,114,.3);transition:border-color .2s}
.link:hover{border-color:var(--teal-d)}
.on-dark .link{color:#5FC4C4;border-color:rgba(95,196,196,.35)}
.arrow-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:650;color:var(--teal-d)}
.arrow-link svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;transition:transform .2s}
.arrow-link:hover svg{transform:translateX(3px)}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:300;background:rgba(11,15,18,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--ink-line);transition:background .3s}
.nav--hero{background:transparent;border-bottom-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.nav--hero.is-scrolled{background:rgba(11,15,18,.94);border-bottom-color:var(--ink-line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.nav .ctn{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;flex-direction:column;line-height:1}
.logo-main{font-size:20px;font-weight:800;letter-spacing:.09em;color:#fff}
.logo-main span{color:var(--teal)}
.logo-sub{font-family:var(--mono);font-size:10px;letter-spacing:.32em;color:var(--on-dark-mute);margin-top:5px;text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-link{font-size:14px;font-weight:550;color:var(--on-dark-mute);transition:color .2s;position:relative}
.nav-link:hover,.nav-link[aria-current="page"]{color:#fff}
.nav-link[aria-current="page"]::after{content:'';position:absolute;left:0;right:0;bottom:-24px;height:2px;background:var(--teal)}
.nav-cta{font-size:13.5px;font-weight:650;color:#fff;background:var(--teal-d);padding:10px 16px;border-radius:var(--r);transition:background .2s}
.nav-cta:hover{background:var(--teal)}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px;margin-right:-8px}
.nav-toggle svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:1.8}
@media(max-width:960px){
  .nav-toggle{display:block}
  .nav-links{display:none;position:fixed;top:68px;left:0;right:0;bottom:0;background:var(--ink);flex-direction:column;align-items:flex-start;gap:0;padding:12px var(--gutter) 32px;overflow-y:auto}
  .nav-links.is-open{display:flex}
  .nav-link{font-size:18px;color:#fff;padding:14px 0;width:100%;border-bottom:1px solid var(--ink-line)}
  .nav-link[aria-current="page"]::after{display:none}
  .nav-link[aria-current="page"]{color:#5FC4C4}
  .nav-cta{margin-top:22px;font-size:16px;padding:14px 20px;width:100%;text-align:center}
  .nav--hero{background:rgba(11,15,18,.94);border-bottom-color:var(--ink-line)}
}

/* HERO (home) */
.hero{position:relative;background:var(--ink);color:#fff;padding:148px 0 0;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse 80% 70% at 70% 40%,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 70% 40%,#000 30%,transparent 80%)}
.hero::after{content:'';position:absolute;width:720px;height:720px;right:-180px;top:-120px;background:radial-gradient(circle,var(--teal-glow) 0%,transparent 62%);pointer-events:none}
.hero .ctn{position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.hero h1{margin-bottom:24px}
.hero h1 em{font-style:normal;color:#5FC4C4}
.hero .lead{max-width:600px;margin-bottom:36px;color:#B9C4CB}
.hero-fig{position:relative}
.hero-fig figcaption{margin-top:10px}
.facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:88px;border-top:1px solid var(--ink-line)}
.fact{padding:26px 24px 30px 0;border-right:1px solid var(--ink-line)}
.fact+.fact{padding-left:24px}
.fact:last-child{border-right:0}
.fact-k{font-family:var(--mono);font-size:22px;font-weight:600;color:#fff;letter-spacing:-.01em;display:block;margin-bottom:6px}
.fact-v{font-size:13.5px;color:var(--on-dark-mute);line-height:1.5}
@media(max-width:1000px){.hero-grid{grid-template-columns:minmax(0,1fr);gap:40px}.hero-fig{max-width:560px}}
@media(max-width:600px){.hero .btn-row .btn,.phero .btn-row .btn{width:100%}}
@media(max-width:760px){.hero{padding-top:116px}.facts{grid-template-columns:1fr 1fr;margin-top:56px}.fact{padding:20px 12px 22px 0}.fact+.fact{padding-left:0}.fact:nth-child(2n){padding-left:16px;border-right:0}.fact:nth-child(n+3){border-top:1px solid var(--ink-line)}.fact-k{font-size:18px}}

/* PAGE HERO (inner) */
.phero{position:relative;background:var(--ink);color:#fff;padding:128px 0 72px;overflow:hidden}
.phero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(90deg,transparent 0%,#000 60%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 60%)}
.phero .ctn{position:relative;z-index:1}
.phero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:end}
.phero h1{font-size:clamp(32px,4.4vw,52px);margin-bottom:20px}
.phero .lead{max-width:640px;color:#B9C4CB}
.phero .btn-row{margin-top:30px}
.phero-fig{align-self:center}
@media(max-width:1000px){.phero-grid{grid-template-columns:minmax(0,1fr);gap:36px}.phero-fig{max-width:520px}}
@media(max-width:760px){.phero{padding:108px 0 52px}}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--on-dark-mute);margin-bottom:26px}
.crumbs a:hover{color:#fff}
.crumbs li+li::before{content:'/';margin-right:8px;color:#4c5862}

/* SECTIONS */
.sec{padding:104px 0}
.sec--tight{padding:72px 0}
.sec--alt{background:var(--paper-2)}
.sec--dark{background:var(--ink);color:#fff}
.sec--line{border-top:1px solid var(--line)}
.sec-head{max-width:760px;margin-bottom:52px}
.sec-head h2{margin-bottom:16px}
.sec-head--row{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.sec-head--row>div{max-width:720px}
@media(max-width:760px){.sec{padding:72px 0}.sec--tight{padding:52px 0}.sec-head{margin-bottom:36px}.sec-head--row{flex-direction:column;align-items:flex-start}}
.prose{max-width:760px}
.prose h2{font-size:clamp(24px,2.6vw,32px);margin:56px 0 16px}
.prose h2:first-child{margin-top:0}
.prose h3{margin:32px 0 10px}
.prose p,.prose ul,.prose ol{margin-bottom:16px}
.prose ul{padding-left:0}
.prose ul li{position:relative;padding-left:22px;margin-bottom:8px}
.prose ul li::before{content:'';position:absolute;left:2px;top:.78em;width:10px;height:1px;background:var(--teal)}
.prose ol{counter-reset:o}
.prose ol li{counter-increment:o;position:relative;padding-left:34px;margin-bottom:10px}
.prose ol li::before{content:counter(o,decimal-leading-zero);position:absolute;left:0;top:.18em;font-family:var(--mono);font-size:12.5px;color:var(--teal);font-weight:600}
.prose a:not(.btn){color:var(--teal-d);border-bottom:1px solid rgba(10,114,114,.3)}
.cols{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:72px;align-items:start}
.aside{position:sticky;top:96px}
@media(max-width:1000px){.cols{grid-template-columns:minmax(0,1fr);gap:48px}.aside{position:static}}

/* GRIDS & CARDS */
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g5{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1100px){.g5{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.g3,.g5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.g2,.g3,.g4,.g5{grid-template-columns:minmax(0,1fr)}}
.card{position:relative;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);transition:border-color .2s,box-shadow .2s,transform .2s;overflow:hidden}
.card:hover{border-color:var(--line-2)}
a.card:hover{border-color:var(--teal);box-shadow:0 14px 32px -18px rgba(11,15,18,.35);transform:translateY(-2px)}
.card-fig{background:var(--paper-2);border-bottom:1px solid var(--line);padding:22px 22px 18px;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center}
.card-fig svg{width:100%;height:100%}
.card-fig img{width:100%;height:100%;object-fit:cover}
.card-fig--photo{padding:0;position:relative;overflow:hidden}
.card-fig--photo img{position:absolute;inset:0}
.card-body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.card-idx{font-family:var(--mono);font-size:11.5px;color:var(--mute-2);letter-spacing:.08em;margin-bottom:10px;display:block}
.card h3{margin-bottom:10px}
.card p{font-size:15px;color:var(--mute);line-height:1.6}
.card .arrow-link{margin-top:auto;padding-top:18px}
.card--dark{background:var(--ink-2);border-color:var(--ink-line);color:#fff}
.card--dark p{color:var(--on-dark-mute)}
.card--dark:hover{border-color:rgba(255,255,255,.2)}
.card--flat{padding:28px}
.card--flat h3{margin-bottom:8px}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.tag{font-family:var(--mono);font-size:11.5px;padding:3px 8px;border:1px solid var(--line);color:var(--mute);border-radius:var(--r);background:var(--paper)}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.step{padding:30px 30px 6px 0;border-right:1px solid var(--line)}
.step+.step{padding-left:30px}
.step:last-child{border-right:0}
.step-n{font-family:var(--mono);font-size:12.5px;color:var(--teal);font-weight:600;letter-spacing:.08em;margin-bottom:14px;display:block}
.step h3{margin-bottom:10px}
.step p{color:var(--mute);font-size:15.5px}
.on-dark .steps,.on-dark .step{border-color:var(--ink-line)}
.on-dark .step p{color:var(--on-dark-mute)}
@media(max-width:860px){.steps{grid-template-columns:minmax(0,1fr)}.step,.step+.step{padding:26px 0;border-right:0;border-bottom:1px solid var(--line)}.on-dark .step{border-color:var(--ink-line)}}

/* VALUE LIST / SPLIT */
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
@media(max-width:960px){.split{grid-template-columns:minmax(0,1fr);gap:40px}}
.vlist{border-top:1px solid var(--line)}
.vitem{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:24px 0;border-bottom:1px solid var(--line)}
.vitem-n{font-family:var(--mono);font-size:13px;color:var(--teal);font-weight:600;padding-top:3px}
.vitem h3{font-size:18px;margin-bottom:6px}
.vitem p{color:var(--mute);font-size:15.5px}
.on-dark .vlist,.on-dark .vitem{border-color:var(--ink-line)}
.on-dark .vitem p{color:var(--on-dark-mute)}

/* TABLES */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);-webkit-overflow-scrolling:touch}
table.tbl{width:100%;border-collapse:collapse;font-size:14.5px;min-width:560px}
.tbl caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tbl th,.tbl td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.tbl thead th{font-size:12.5px;font-weight:650;color:var(--mute);background:var(--paper-2);letter-spacing:.02em;white-space:nowrap}
.tbl tbody tr:last-child td,.tbl tbody tr:last-child th{border-bottom:0}
.tbl tbody th{font-weight:650;color:var(--text)}
.tbl td.num,.tbl .num{font-family:var(--mono);font-size:13.5px;white-space:nowrap}
.tbl-note{font-size:13px;color:var(--mute-2);margin-top:12px}

/* CALLOUTS */
.callout{border-left:2px solid var(--teal);background:var(--teal-l);padding:20px 22px;border-radius:0 var(--r) var(--r) 0;font-size:15.5px}
.callout h4{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-d);margin-bottom:8px}
.callout--limit{border-color:var(--amber);background:var(--amber-l)}
.callout--limit h4{color:var(--amber)}
.callout ul li{position:relative;padding-left:18px;margin-bottom:6px}
.callout ul li::before{content:'';position:absolute;left:0;top:.75em;width:8px;height:1px;background:currentColor;opacity:.6}
.callout+.callout{margin-top:14px}

/* RELATED LINKS */
.rel{border-top:1px solid var(--line);margin-top:10px}
.rel li{border-bottom:1px solid var(--line)}
.rel a{display:flex;justify-content:space-between;align-items:center;padding:11px 0;font-size:14.5px;font-weight:600;color:var(--teal-d)}
.rel a::after{content:'\2192';color:var(--mute-2);font-weight:400}
.rel a:hover{color:var(--teal)}

/* CHECKLIST */
.check{display:grid;gap:0;border-top:1px solid var(--line)}
ul.check li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:12px 0;margin:0;border-bottom:1px solid var(--line);font-size:15px}
ul.check li::before{content:'';position:static;width:16px;height:16px;margin-top:4px;border:1.5px solid var(--teal);border-radius:2px;background:linear-gradient(var(--teal),var(--teal)) center/8px 8px no-repeat}
ul.check li strong{display:block}
ul.check li span{color:var(--mute);font-size:14px}
.aside-box{border:1px solid var(--line);border-radius:var(--r);padding:24px;background:var(--paper)}
.aside-box h3{font-size:16px;margin-bottom:6px}
.aside-box p{font-size:14.5px;color:var(--mute)}
.aside-box .btn{width:100%;margin-top:18px}
.aside-box+.aside-box{margin-top:16px}

/* FIGURES */
.fig{margin:0}
.fig figcaption{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;color:var(--mute-2);margin-top:12px;line-height:1.5}
.on-dark .fig figcaption,.hero .fig figcaption,.phero .fig figcaption{color:#76838D}
.fig-frame{border:1px solid var(--line);background:var(--paper-2);border-radius:var(--r);padding:24px}
.photo{border-radius:var(--r);overflow:hidden;background:var(--ink)}
.photo img{width:100%;height:auto}

/* DRAWING STYLES (inline SVG) */
.dwg{font-family:var(--mono)}
.dwg .steel{fill:#D5DCE1;stroke:#5B6770;stroke-width:1.2}
.dwg .steel-h{fill:url(#hatch);stroke:#5B6770;stroke-width:1.2}
.dwg .cer{fill:#FFFFFF;stroke:#0C8C8C;stroke-width:1.2}
.dwg .cer-f{fill:#E7F3F3;stroke:#0C8C8C;stroke-width:1.2}
.dwg .rub{fill:#2B3238;stroke:#2B3238;stroke-width:1}
.dwg .ln{fill:none;stroke:#5B6770;stroke-width:1.2}
.dwg .ln-t{fill:none;stroke:#0C8C8C;stroke-width:1.4}
.dwg .ln-thin{fill:none;stroke:#87939C;stroke-width:.8}
.dwg .dim{fill:none;stroke:#87939C;stroke-width:.8}
.dwg .ctr{fill:none;stroke:#87939C;stroke-width:.7;stroke-dasharray:8 3 2 3}
.dwg .flow{fill:none;stroke:#A8600C;stroke-width:1.6}
.dwg .flow-h{fill:#A8600C}
.dwg .lbl{font-size:11px;fill:#55616B;letter-spacing:.02em}
.dwg .lbl-b{font-size:11px;fill:#0B0F12;font-weight:600}
.dwg .lbl-t{font-size:11px;fill:#0A7272;font-weight:600}
.dwg .lbl-a{font-size:11px;fill:#A8600C;font-weight:600}
.dwg .lead-ln{fill:none;stroke:#87939C;stroke-width:.8}
.dwg .dot{fill:#87939C}
.dwg--dark .steel{fill:#26313A;stroke:#7C8A94}
.dwg--dark .steel-h{fill:url(#hatchd);stroke:#7C8A94}
.dwg--dark .cer{fill:#0F1E22;stroke:#3FB3B3}
.dwg--dark .cer-f{fill:#143036;stroke:#3FB3B3}
.dwg--dark .ln{stroke:#7C8A94}
.dwg--dark .ln-t{stroke:#3FB3B3}
.dwg--dark .ln-thin,.dwg--dark .dim,.dwg--dark .ctr,.dwg--dark .lead-ln{stroke:#53616B}
.dwg--dark .dot{fill:#53616B}
.dwg--dark .lbl{fill:#8F9CA6}
.dwg--dark .lbl-b{fill:#E8EDF0}
.dwg--dark .lbl-t{fill:#5FC4C4}
.dwg--dark .flow{stroke:#D9902F}
.dwg--dark .flow-h{fill:#D9902F}
.dwg--dark .lbl-a{fill:#D9902F}
.dwg--dark .rub{fill:#3A444C;stroke:#4A555E}

/* FAQ */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:22px 44px 22px 0;position:relative;font-weight:650;font-size:17px;line-height:1.45}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'';position:absolute;right:6px;top:50%;width:12px;height:12px;margin-top:-8px;border-right:1.5px solid var(--mute);border-bottom:1.5px solid var(--mute);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
.faq .faq-a{padding:0 0 24px;color:var(--mute);max-width:760px}
.faq .faq-a p{margin-bottom:.8em}

/* CTA BAND */
.cta{background:var(--ink);color:#fff;padding:88px 0;position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;width:600px;height:600px;left:-200px;bottom:-320px;background:radial-gradient(circle,var(--teal-glow) 0%,transparent 65%)}
.cta .ctn{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.cta h2{margin-bottom:14px}
.cta .lead{color:var(--on-dark-mute)}
.cta-side{border-left:1px solid var(--ink-line);padding-left:40px;font-size:15px;color:var(--on-dark-mute)}
.cta-side dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#76838D;margin-bottom:4px}
.cta-side dd{color:#fff;margin-bottom:18px;font-weight:550}
.cta-side dd a:hover{color:#5FC4C4}
@media(max-width:860px){.cta .ctn{grid-template-columns:minmax(0,1fr);gap:36px}.cta-side{border-left:0;border-top:1px solid var(--ink-line);padding:28px 0 0}}

/* NOT-DO LIST */
.nots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--ink-line)}
.not{padding:24px 28px 24px 0;border-bottom:1px solid var(--ink-line);display:grid;grid-template-columns:28px 1fr;gap:8px}
.not:nth-child(2n){padding-left:28px;border-left:1px solid var(--ink-line)}
.not-x{font-family:var(--mono);color:#D9902F;font-weight:700}
.not p{color:var(--on-dark-mute);font-size:15.5px}
.not strong{color:#fff;display:block;margin-bottom:4px;font-size:16.5px}
@media(max-width:760px){.nots{grid-template-columns:minmax(0,1fr)}.not:nth-child(2n){padding-left:0;border-left:0}}

/* FORM */
.form-wrap{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
@media(max-width:1000px){.form-wrap{grid-template-columns:minmax(0,1fr);gap:40px}}
.form{border:1px solid var(--line);border-radius:var(--r);background:var(--paper);padding:36px}
@media(max-width:600px){.form{padding:24px 18px}}
.fset{border:0;padding:0;margin:0 0 34px}
.fset legend{display:flex;align-items:baseline;gap:12px;font-size:19px;font-weight:700;letter-spacing:-.01em;margin-bottom:6px;padding:0}
.fset legend .mono{font-size:12px;color:var(--teal);font-weight:600}
.fset-note{font-size:14px;color:var(--mute);margin-bottom:20px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.frow--3{grid-template-columns:1fr 1fr 1fr}
@media(max-width:700px){.frow,.frow--3{grid-template-columns:minmax(0,1fr)}}
.fgrp{margin-bottom:16px}
.flabel{display:block;font-size:13.5px;font-weight:620;margin-bottom:7px;color:var(--text)}
.flabel .req{color:var(--teal-d)}
.flabel .opt{font-weight:400;color:var(--mute-2)}
.finput,.fselect,.ftext{width:100%;font-family:var(--sans);font-size:15.5px;padding:12px 13px;border:1px solid var(--line-2);border-radius:var(--r);background:#fff;color:var(--text);transition:border-color .2s,box-shadow .2s;appearance:none;-webkit-appearance:none}
.fselect{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2355616B' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:36px}
.ftext{min-height:120px;resize:vertical;line-height:1.55}
.finput:focus,.fselect:focus,.ftext:focus{outline:0;border-color:var(--teal);box-shadow:0 0 0 3px rgba(12,140,140,.14)}
.fhint{font-size:12.5px;color:var(--mute-2);margin-top:6px}
.fdrop{border:1.5px dashed var(--line-2);border-radius:var(--r);padding:22px;text-align:center;background:var(--paper-2);transition:border-color .2s,background .2s;cursor:pointer;position:relative}
.fdrop:hover,.fdrop.is-over{border-color:var(--teal);background:var(--teal-l)}
.fdrop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.fdrop strong{display:block;font-size:15px}
.fdrop span{font-size:13px;color:var(--mute)}
.ffiles{margin-top:10px;font-size:13.5px}
.ffiles li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--line)}
.ffiles li.is-bad{color:#B3261E}
.fconsent{display:grid;grid-template-columns:20px 1fr;gap:10px;font-size:13.5px;color:var(--mute);margin:8px 0 22px;align-items:start}
.fconsent input{width:17px;height:17px;margin-top:3px;accent-color:var(--teal-d)}
.fconsent a{color:var(--teal-d);text-decoration:underline}
.fsubmit{width:100%;padding:17px}
.fstatus{font-size:13.5px;color:var(--mute);margin-top:14px;text-align:center}
.fstatus a{color:var(--teal-d);text-decoration:underline}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.contact-list{border-top:1px solid var(--line)}
.contact-list div{padding:16px 0;border-bottom:1px solid var(--line)}
.contact-list dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute-2);margin-bottom:3px}
.contact-list dd{font-weight:600}
.contact-list dd a:hover{color:var(--teal-d)}
.qr{width:148px;margin-top:12px;border:1px solid var(--line);padding:8px;background:#fff}

/* FOOTER */
.foot{background:var(--ink);color:var(--on-dark-mute);padding:72px 0 0;font-size:14.5px;border-top:1px solid var(--ink-line)}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.1fr;gap:40px;padding-bottom:56px}
.foot-brand p{margin-top:16px;max-width:300px;line-height:1.6}
.foot h4{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:16px}
.foot-col a,.foot-col span{display:block;padding:5px 0;transition:color .2s}
.foot-col a:hover{color:#fff}
.foot-bar{border-top:1px solid var(--ink-line);padding:22px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px}
.foot-bar a:hover{color:#fff}
.foot-bar nav{display:flex;gap:20px}
@media(max-width:1000px){.foot-grid{grid-template-columns:1fr 1fr 1fr}.foot-brand{grid-column:1/-1}}
@media(max-width:600px){.foot-grid{grid-template-columns:1fr 1fr}.foot-col--contact{grid-column:1/-1}}

/* FLOATING WHATSAPP */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:250;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s,transform .3s,visibility .3s}
.wa-float.is-visible{opacity:1;visibility:visible;transform:none}
.wa-float a{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:#25D366;box-shadow:0 6px 18px rgba(0,0,0,.28);transition:transform .2s}
.wa-float a:hover{transform:scale(1.06)}
.wa-float svg{width:27px;height:27px;fill:#fff}
@media(max-width:600px){.wa-float{right:16px;bottom:16px}}

/* CONSENT */
.consent{position:fixed;left:0;right:0;bottom:0;z-index:400;background:var(--ink);color:#fff;padding:16px var(--gutter);border-top:1px solid var(--ink-line);box-shadow:0 -6px 24px rgba(0,0,0,.25)}
.consent-box{max-width:var(--mw);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.consent p{margin:0;font-size:13.5px;color:#C5CED4;max-width:680px}
.consent a{color:#5FC4C4;text-decoration:underline}
.consent-actions{display:flex;gap:10px}
.consent button{font-family:var(--sans);font-size:13px;font-weight:650;padding:10px 16px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;cursor:pointer;border-radius:var(--r)}
.consent button.is-primary{background:var(--teal-d);border-color:var(--teal-d)}

/* REVEAL */
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.rv.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transform:none;transition:none}.btn svg,.arrow-link svg,a.card{transition:none}}

/* MISC */
.kv{display:grid;grid-template-columns:auto 1fr;border-top:1px solid var(--line)}
.kv dt,.kv dd{padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.kv dt{font-family:var(--mono);font-size:12.5px;color:var(--mute-2);padding-right:24px;letter-spacing:.02em}
.divider{height:1px;background:var(--line);margin:56px 0}
.center{text-align:center}
.mt-s{margin-top:16px}.mt-m{margin-top:32px}.mt-l{margin-top:56px}
.mb-s{margin-bottom:16px}.mb-m{margin-bottom:32px}
.notfound{min-height:72vh;display:flex;align-items:center}
.ty-mark{width:56px;height:56px;border:1.5px solid var(--teal);display:flex;align-items:center;justify-content:center;margin-bottom:28px;border-radius:50%}
.ty-mark svg{width:24px;height:24px;stroke:var(--teal);fill:none;stroke-width:2}
.pp h2{font-size:21px;margin:40px 0 12px}
.pp p,.pp ul{margin-bottom:14px;color:#2A333A}
.pp ul{padding-left:22px;list-style:disc}
.pp li{margin-bottom:6px}
.pp a{color:var(--teal-d);text-decoration:underline}
.pp-note{padding:18px 20px;border-left:2px solid var(--teal);background:var(--paper-2);font-size:14.5px}

/* PHOTOS + DRAWINGS (2026-10 rev.) */
.photo--crop{aspect-ratio:4/3}
.photo--crop img{width:100%;height:100%;object-fit:cover}
.photo--video{aspect-ratio:16/9;background:#111}
.photo--video video{width:100%;height:100%;object-fit:cover;display:block}
.gallery{display:grid;gap:18px}
.gallery.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.gallery.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){.gallery.g3,.gallery.g2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch}
.pair .photo{height:100%}
.pair .photo img{width:100%;height:100%;object-fit:cover}
.pair .fig-frame{height:100%;display:flex;align-items:center}
.pair .fig{display:flex;flex-direction:column}
.pair .fig>div{flex:1}
@media(max-width:700px){.pair{grid-template-columns:minmax(0,1fr)}}
.card-fig--photo img{width:100%;height:100%;object-fit:cover}
.card-dwg{position:absolute;inset:0;background:rgba(244,246,247,.96);padding:20px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .35s}
.card-dwg svg{width:100%;height:100%}
.card-badge{position:absolute;left:12px;bottom:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(11,15,18,.72);padding:3px 7px;border-radius:2px;transition:opacity .25s}
a.card:hover .card-dwg,a.card:focus-visible .card-dwg{opacity:1}
a.card:hover .card-badge,a.card:focus-visible .card-badge{opacity:0}
@media(hover:none){.card-dwg,.card-badge{display:none}}
.loops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:44px}
@media(max-width:760px){.loops{grid-template-columns:minmax(0,1fr)}}
.annot{position:relative;border-radius:var(--r);overflow:hidden;background:#111}
.annot img{width:100%;height:auto;display:block}
.annot-svg{position:absolute;inset:0;width:100%;height:100%}
.annot .an-ln{fill:none;stroke:#7FD3D3;stroke-width:4}
.annot .an-dot{fill:#7FD3D3;stroke:#0B0F12;stroke-width:3}
.annot .an-box{fill:rgba(11,15,18,.84);stroke:rgba(127,211,211,.6);stroke-width:2.5}
.annot .an-h{fill:#fff;font-family:var(--mono);font-weight:600;letter-spacing:.06em}
.annot .an-s{fill:#AEB9C1;font-family:var(--mono)}
.band{position:relative;min-height:440px;display:flex;align-items:center;background-color:var(--ink);background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed;color:#fff;overflow:hidden}
.band::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,15,18,.9) 0%,rgba(11,15,18,.62) 55%,rgba(11,15,18,.45) 100%)}
.band .ctn{position:relative}
.band-k{font-size:clamp(26px,3.4vw,44px);font-weight:760;letter-spacing:-.02em;line-height:1.15;max-width:760px;margin:0}
.band-s{margin-top:14px;font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#9AA6AF}
@media(max-width:900px),(hover:none){.band{background-attachment:scroll;min-height:340px}}
.hero-fig .photo,.phero-fig .photo{border:1px solid var(--ink-line)}
.dl-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:650;color:var(--teal-d);margin-top:14px}
.dl-link::before{content:'';width:14px;height:14px;background:linear-gradient(var(--teal-d),var(--teal-d)) center bottom/14px 2px no-repeat,linear-gradient(var(--teal-d),var(--teal-d)) center 1px/2px 9px no-repeat}

/* HERO WITH PRODUCT IMAGE (2026-10-15) */
.hero--photo{padding:0;min-height:clamp(560px,82vh,860px);display:flex;align-items:center;background:#0E1316}
.hero--photo::before,.hero--photo::after{display:none}
.hero-bg{position:absolute;top:50%;right:0;width:min(74vw,1320px);transform:translateY(-46%)}
.hero-bg img{width:100%;height:auto;display:block}
.hero--photo .ctn{position:relative;z-index:1;padding-top:110px;padding-bottom:72px}
.hero--photo::selection{background:var(--teal)}
.hero-copy{max-width:560px}
.hero-copy h1{margin-bottom:24px}
.hero-copy .lead{margin-bottom:34px;color:#B9C4CB}
.hero--photo .hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0E1316 0%,rgba(14,19,22,0) 30%),linear-gradient(180deg,#0E1316 0%,rgba(14,19,22,0) 14%,rgba(14,19,22,0) 86%,#0E1316 100%)}
.facts-band{background:var(--ink);border-top:1px solid var(--ink-line)}
.facts-band .facts{margin-top:0;border-top:0}
@media(max-width:760px){
  .hero--photo{min-height:auto;align-items:flex-start}
  .hero--photo{flex-direction:column}
  .hero--photo .ctn{padding-top:104px;padding-bottom:0}
  .hero-bg{position:relative;top:auto;right:auto;width:100%;transform:none;margin-top:-18vw}
  .hero--photo .hero-bg::after{background:linear-gradient(180deg,#0E1316 0%,rgba(14,19,22,0) 34%)}
}

/* Direct vs Vuulcan comparison */
.cmp .tbl td:last-child{background:var(--teal-l);color:var(--text);font-weight:520}
.cmp .tbl thead th:last-child{background:var(--teal-d);color:#fff}
.cmp .tbl td:nth-child(2){color:var(--mute)}

/* AD LANDING PAGES */
.lp-nav .ctn{height:64px}
.lp-contact{display:flex;align-items:center;gap:18px}
.lp-mail{color:var(--on-dark-mute);font-size:14px}
.lp-mail:hover{color:#fff}
@media(max-width:600px){.lp-mail{display:none}}
.lp-hero{background:var(--ink);color:#fff;padding:108px 0 64px;position:relative}
.lp-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:start}
.lp-copy h1{font-size:clamp(30px,4vw,48px);margin-bottom:18px}
.lp-copy .lead{color:#B9C4CB;margin-bottom:24px}
.lp-bullets li{position:relative;padding:8px 0 8px 30px;color:#DDE3E7;border-top:1px solid var(--ink-line);font-size:15.5px}
.lp-bullets li::before{content:'';position:absolute;left:2px;top:15px;width:14px;height:8px;border-left:2px solid #5FC4C4;border-bottom:2px solid #5FC4C4;transform:rotate(-45deg)}
.lp-form{color:var(--text);padding:28px}
.lp-form-h{font-size:22px;margin-bottom:6px}
.lp-form .frow{gap:12px}
.lp-form .fgrp{margin-bottom:12px}
.lp-form .fdrop{padding:14px}
.lp-foot{padding-top:0}
@media(max-width:960px){.lp-grid{grid-template-columns:minmax(0,1fr)}.lp-hero{padding-top:92px}}
