/* Viking Digital Forge LLC — no external fonts or JS; multi-page responsive website */
:root{--bg:#0a0e13;--panel:#131b24;--panel2:#19232d;--line:#36424e;--text:#eff3f7;--muted:#b4bfcb;--accent:#f39b50;--accent2:#ffc493;--rgb:243,155,80;--blue:#85c7ff;--sans:Inter,'Segoe UI',Arial,sans-serif;color-scheme:dark;scroll-behavior:smooth}
body[data-mode=digital]{--accent:#79c7ff;--accent2:#b1e0ff;--rgb:121,199,255;--blue:#f39b50}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2{line-height:1.1;letter-spacing:-.045em}h1 em,h2 em{color:var(--accent2);font-style:normal}p{color:var(--muted)}.shell{max-width:1200px;width:calc(100% - 64px);margin:0 auto}.skip{position:absolute;top:-100px;left:20px;padding:12px;background:white;color:black;z-index:101}.skip:focus{top:10px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.2em;color:var(--accent2);text-transform:uppercase;margin-bottom:20px}.site-header{position:sticky;top:0;z-index:50;background:rgba(9,13,19,.96);backdrop-filter:blur(14px);border-bottom:1px solid #ffffff1b}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px}.site-logo img{display:block;width:265px;height:auto;max-height:85px;object-fit:contain}.main-nav{display:flex;gap:22px;align-items:center}.main-nav a{font-size:12px;letter-spacing:.07em;font-weight:750;text-transform:uppercase;color:#dce4eb;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--accent2)}.main-nav .nav-quote{border:1px solid var(--accent);color:var(--text);padding:12px 14px}.main-nav .nav-quote span{color:var(--accent2)}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span{display:block;width:25px;height:2px;margin:6px;background:white}.hero{position:relative;min-height:630px;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse at 82% 40%,#3e291e,#0a0e13 59%)}.hero-art{position:absolute;inset:0;background-image:url('assets/forge-art.png');background-size:auto 115%;background-repeat:no-repeat;background-position:91% center;opacity:.31;filter:saturate(.75)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#0a0e13 2%,rgba(10,14,19,.93) 46%,rgba(10,14,19,.37) 100%)}.embers{position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(circle at 19% 61%,var(--accent) 0 1px,transparent 2px),radial-gradient(circle at 75% 25%,var(--accent) 0 2px,transparent 3px);background-size:240px 230px,320px 280px;animation:embers 19s linear infinite}@keyframes embers{to{background-position:0 -420px,120px -370px}}.ignite .embers{opacity:.72;animation-duration:5s}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.35fr .7fr;gap:60px;align-items:center;padding-block:95px}.hero-main{max-width:770px}.hero h1{font-size:clamp(3.1rem,5.6vw,5.5rem);margin-bottom:27px}.hero-lead{max-width:660px;font-size:1.12rem;line-height:1.85;color:#e0e5ea}.hero-logo-card{padding:25px;background:#0b1119b8;border:1px solid #ffffff30;box-shadow:0 25px 65px #0007}.hero-logo-card img{width:100%;height:auto;display:block}.hero-logo-card p{font-size:13px;text-align:center;margin:12px 0 0}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;gap:24px;align-items:center;justify-content:space-between;min-height:51px;padding:14px 18px;text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:800;border:1px solid transparent;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--accent2);color:#11161a}.btn-ghost{border-color:#86909a;color:white;background:#1118206b}.trust-strip{background:#151d26;border-bottom:1px solid var(--line)}.trust-strip .shell{display:flex;flex-wrap:wrap;justify-content:space-between;gap:13px;padding:18px 0;color:#ced6df;font-weight:700;letter-spacing:.11em;font-size:10px}.section{padding-block:100px}.section-heading{display:grid;grid-template-columns:1.4fr .75fr;align-items:end;gap:60px;margin-bottom:40px}.section-heading h2,h2{font-size:clamp(2.3rem,4.4vw,4.5rem)}.section-heading>p{line-height:1.9;max-width:420px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-card{display:flex;flex-direction:column;min-height:265px;background:linear-gradient(140deg,#19232e,#10161e);border:1px solid #43515e;padding:30px;transition:border-color .25s,transform .25s,background .25s}.service-card:hover{border-color:var(--accent);transform:translateY(-4px);background:linear-gradient(140deg,#26333e,#111820)}.service-card-top{display:flex;justify-content:space-between;align-items:center}.card-kicker,.learn-more{font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--accent2)}.card-arrow{color:var(--accent2);font-size:23px}.service-card h3{font-size:26px;margin:27px 0 9px}.service-card p{font-size:14px;line-height:1.75}.learn-more{margin-top:auto}.video-section{padding:100px 0;background:#121923;border-block:1px solid var(--line)}.film-frame{padding:10px;background:#030608;border:1px solid #505c68;box-shadow:0 35px 75px #0007}.film-frame video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#000}.film-caption{padding:14px 8px 5px;display:flex;justify-content:space-between;gap:12px;color:#aab5c0;font-size:10px;letter-spacing:.13em}.experience-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border:1px solid var(--line);background:#121b25;padding:17px 20px;margin-bottom:20px}.controls-label{font-size:10px;letter-spacing:.15em;color:#b6c0cb;margin-right:auto}.control,.demo-tab{padding:10px 14px;background:#1b2631;border:1px solid #4b5b69;color:#e6edf3}.control.active,.demo-tab.active{border-color:var(--accent);color:var(--accent2)}.demo-shell{border:1px solid #455260;background:#111923}.demo-header{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;gap:15px;border-bottom:1px solid #3e4c58;font-size:11px;color:#b2bfcc;letter-spacing:.12em}.demo-tabs{display:flex;gap:5px}.demo-grid{display:grid;grid-template-columns:1.1fr 1fr}.demo-stage{min-height:390px;display:grid;place-items:center;padding:30px;background:radial-gradient(circle,rgba(var(--rgb),.13),transparent 64%),#0b1118}.demo-info{padding:65px 40px;align-self:center}.demo-info h3{font-size:clamp(27px,3vw,41px);line-height:1.2}.demo-info p{line-height:1.85}.text-link{font-weight:800;color:var(--accent2);font-size:12px;letter-spacing:.06em;text-transform:uppercase}.phone-mock{width:224px;min-height:315px;border:7px solid #47525e;border-radius:28px;padding:23px 16px;box-shadow:0 30px 60px #000a;background:linear-gradient(135deg,#25364a,#121922)}.phone-top{display:flex;justify-content:space-between;font-weight:900;color:var(--accent2)}.phone-mock>p{font-size:10px;margin-top:34px;letter-spacing:.13em}.phone-mock h3{font-size:25px;line-height:1.14}.phone-feature{margin-top:13px;padding:13px 10px;background:#263647;border:1px solid #425365;font-size:10px}.phone-feature span{float:right}.browser-mock{width:min(100%,510px);overflow:hidden;border-radius:8px;background:#e5edf5;color:#1a2530;box-shadow:0 30px 55px #0008}.browser-top{background:#293b4c;color:#e6edf5;padding:12px 16px;font-size:11px}.browser-content{padding:37px}.browser-content>span{font-size:10px;letter-spacing:.13em}.browser-content h3{font-size:39px;line-height:1.1;margin:20px 0;color:#243648}.browser-action{display:inline-block;background:#2f4961;color:white;padding:12px;font-size:11px}.ai-mock{width:min(100%,490px);padding:30px;background:linear-gradient(135deg,#223448,#111923);border:1px solid #6b90aa}.ai-mock h3{color:#c1e2ff;font-size:19px}.ai-path{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:37px 0}.ai-path b{border:1px solid #88b4d7;border-radius:50%;display:grid;place-items:center;width:75px;height:75px;font-size:12px}.ai-path b:nth-child(2){width:105px;height:105px;color:var(--accent2);font-size:31px}.ai-mock p{margin:0}.process-section{padding:90px 0;background:#161f28;border-block:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}.process-grid article{border-top:1px solid #65717d;padding-top:22px}.process-grid span,.feature-index{font-size:11px;letter-spacing:.11em;color:var(--accent2)}.process-grid h3{font-size:20px;margin-top:23px}.process-grid p{font-size:13px}.closing-cta{text-align:center;padding-block:105px}.closing-cta h2{max-width:800px;margin:0 auto 22px}.closing-cta p{max-width:600px;margin:0 auto 25px}.subhero{background:radial-gradient(ellipse at 88% 20%,rgba(var(--rgb),.17),transparent 56%),#111821;padding:105px 0 98px;border-bottom:1px solid var(--line)}.subhero .shell{max-width:1200px}.subhero h1{font-size:clamp(3rem,6vw,6rem);max-width:930px;margin-bottom:25px}.subhero p:not(.eyebrow){font-size:19px;line-height:1.85;max-width:800px}.narrow-intro>p:not(.eyebrow){font-size:18px;line-height:1.9;max-width:950px}.muted-section{background:#131c25;border-block:1px solid var(--line)}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.feature-card{border:1px solid #445260;background:#17222c;padding:30px;min-height:205px}.feature-card h3{font-size:24px;margin:24px 0 12px}.feature-card p{font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.split>div>p:not(.eyebrow){font-size:17px;line-height:1.9}.approach-band{padding:90px 0;background:#151f2a}.approach-band p{font-size:18px;line-height:1.85}.example-list{list-style:none;padding:0}.example-list li{border-bottom:1px solid #43515e;padding:15px 0;color:#e1e7ed}.example-list li:before{content:'↗';color:var(--accent);margin-right:15px}.related{padding-top:35px}.related .service-grid{grid-template-columns:repeat(3,1fr)}.related .service-card{padding:23px;min-height:265px}.related .service-card h3{font-size:21px}.support-copy{font-size:17px;line-height:1.8}.honesty-note,.contact-disclosure{border-left:3px solid var(--accent);background:#1c2732;padding:23px;color:#c8d3dd;margin-top:28px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact-grid h2{margin-bottom:25px}.contact-panel{border:1px solid #4a5967;padding:30px;background:#18232e}.contact-panel h3{font-size:30px}.contact-questions p{display:flex;flex-direction:column;gap:4px;border-bottom:1px solid #42515e;padding:12px 0}.contact-questions b{font-size:13px;color:var(--accent2)}.micro{font-size:12px}.footer{background:#080b10;border-top:1px solid #374450}.footer-grid{padding:56px 0 42px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-logo{display:block;width:260px;max-width:100%;height:auto}.footer-grid h2{font-size:13px;letter-spacing:.08em}.footer-grid a{display:block;font-size:13px;color:#b9c4cf;padding:6px 0}.footer-grid a:hover{color:var(--accent2)}.footer-grid p{font-size:13px}.foot-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #283640;padding:20px 0 30px;font-size:12px;color:#98a8b6}
.motion-off *, .motion-off *::before,.motion-off *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:1050px){.site-logo img{width:210px}.main-nav{gap:12px}.main-nav a{font-size:11px}.hero-grid{grid-template-columns:1fr}.hero-logo-card{max-width:470px}.related .service-grid{grid-template-columns:1fr 1fr}}
@media(max-width:790px){.shell{width:calc(100% - 36px)}.header-inner{min-height:79px}.site-logo img{width:210px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:79px;left:0;right:0;background:#101820;padding:25px;flex-direction:column;align-items:stretch;gap:20px;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero-grid{padding:75px 0}.hero h1{font-size:clamp(2.8rem,9vw,4.7rem)}.hero-logo-card{display:none}.section{padding-block:70px}.section-heading,.split,.contact-grid,.demo-grid{grid-template-columns:1fr;gap:23px}.section-heading{margin-bottom:30px}.feature-grid,.service-grid,.related .service-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.demo-info{padding:30px}.subhero{padding:72px 0}.trust-strip .shell{justify-content:start}}
@media(max-width:500px){.site-logo img{width:190px}.hero h1{font-size:clamp(2.5rem,11vw,3.8rem)}.actions{flex-direction:column}.btn{justify-content:center}.demo-header{flex-wrap:wrap}.demo-tabs{width:100%}.demo-tab{flex:1}.experience-controls .controls-label{width:100%}.film-caption{display:block}.film-caption span{display:block;margin-bottom:6px}.process-grid,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.foot-bottom{flex-direction:column}.service-card{padding:23px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* V6 - Team experience credibility section */
.experience-proof{background:linear-gradient(120deg,#171e27,#0c1117);border-block:1px solid #374452;padding:46px 0}.experience-proof-inner{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.experience-proof .eyebrow{display:block;margin-bottom:12px}.experience-proof h2{font-size:clamp(1.8rem,3.1vw,3.2rem);line-height:1.18;margin:0}.experience-proof p{color:#d0dae4;line-height:1.75}.experience-proof a{display:inline-block;margin-top:8px}.experience-about{border-left:3px solid #e98a45;padding-left:20px;color:#e4eaf1!important;font-weight:500}@media(max-width:740px){.experience-proof-inner{grid-template-columns:1fr;gap:18px}}

/* Connected-services network: transparent live SVG, not a background video. */
.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:18px}
.hero-main{position:relative;z-index:2}.hero-network{min-width:0;isolation:isolate;transform:translateX(18px)}
.net-visual svg{width:100%;height:auto;display:block;overflow:visible}.hero-network svg a{cursor:pointer}
.net-wire{fill:none;stroke:#68adce;stroke-width:1.6;stroke-opacity:.52;stroke-dasharray:3 6}
.mesh-wire{stroke:#6a8da6;stroke-width:.8;stroke-opacity:.19}
.core-unit rect{fill:#172531;stroke:#ffa05d;stroke-width:2;filter:drop-shadow(0 0 13px #ff994f66)}
.core-unit circle{fill:#243a4b;stroke:#a8c9dc;stroke-width:2}
.core-unit path{stroke:#ffb272;stroke-width:3;stroke-linecap:round}
.net-node rect{fill:#17212c;fill-opacity:.94;stroke:#7aa7c6;stroke-width:1.3;transition:stroke .3s,fill .3s}
.net-node text{fill:#edf4fa;font:600 17px 'Segoe UI',Arial,sans-serif;pointer-events:none}
.node-led{fill:#ff9c50;filter:drop-shadow(0 0 7px #ff9c50)}
.hero-network a:hover rect,.hero-network a:focus rect{stroke:#ffb574;fill:#263849}
.net-pulse{filter:drop-shadow(0 0 7px currentColor)}
.net-caption{text-align:center;font:700 10px 'Segoe UI',Arial,sans-serif;letter-spacing:.18em;color:#b7cedf}
.net-live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#ff9d55;box-shadow:0 0 12px #ff9d55;margin-right:8px;animation:nodeBeat 2.4s ease-in-out infinite}
@keyframes nodeBeat{50%{opacity:.4;transform:scale(.7)}}
@media(max-width:1100px){.hero-grid{grid-template-columns:1fr}.hero-network{width:min(100%,650px);margin:10px auto 0;transform:none}}
@media(max-width:790px){.hero-network{display:block;width:100%;max-width:650px}.hero-grid{padding-bottom:55px}.net-caption{font-size:8px}}
@media(prefers-reduced-motion:reduce){.net-pulse{display:none}.net-live-dot{animation:none}}
.motion-off .net-pulse{display:none}

/* V8 — original product portfolio, company umbrella, project inquiry */
.main-nav{gap:16px}.main-nav a{font-size:11px}.main-nav .nav-quote{padding:11px 12px}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}.product-card{overflow:hidden;background:#141e29;border:1px solid #405263;display:flex;flex-direction:column}.product-art{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:radial-gradient(circle at 50% 50%,#314b64,#101923 72%);color:#b2dfff;letter-spacing:.18em;font-size:11px}.product-grocery .product-art{background:radial-gradient(circle at 50% 50%,#285048,#101923 72%);color:#c6efcf}.product-glyph{font-size:85px;line-height:1.1;color:var(--accent2);text-shadow:0 0 32px rgba(var(--rgb),.34)}.product-content{padding:29px;flex:1;display:flex;flex-direction:column}.product-content h3{font-size:31px;margin:18px 0 8px}.product-content p{line-height:1.8;font-size:14px}.product-content .text-link{margin-top:auto;padding-top:15px}.status-tag{font-size:10px;letter-spacing:.13em;color:#98d3f8;font-weight:800}.venture-band{background:linear-gradient(115deg,#1a2734,#0e151d);border-block:1px solid #425364;padding:85px 0}.venture-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.venture-split p{font-size:17px;line-height:1.85}.venture-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.venture-band .feature-grid{margin-top:34px}.brief-form{display:flex;flex-direction:column;gap:10px}.brief-form label{font-weight:700;font-size:13px;margin-top:8px;color:#e8eff5}.brief-form label span{color:var(--accent2)}.brief-form input,.brief-form select,.brief-form textarea{width:100%;font:inherit;color:#f4f7f9;background:#0a121b;border:1px solid #67788a;border-radius:3px;padding:12px}.brief-form textarea{resize:vertical}.brief-form input:focus,.brief-form select:focus,.brief-form textarea:focus{outline:2px solid var(--accent2);outline-offset:2px}.brief-form .btn{margin-top:12px;justify-content:center}.contact-disclosure a{text-decoration:underline;color:var(--accent2)}.net-visual{background:transparent}
@media(max-width:1050px){.main-nav{gap:10px}.main-nav a{font-size:10px}}
@media(max-width:790px){.product-grid,.venture-split{grid-template-columns:1fr}.venture-band{padding:65px 0}.product-art{min-height:150px}}

/* V9 Interactive Studio — meaningful motion, compositional detail, no external dependencies */
html{background:#080c11}body{animation:pageArrive .48s ease-out both}body.page-depart{animation:pageDepart .30s cubic-bezier(.45,.02,.89,.52) forwards;pointer-events:none}
@keyframes pageArrive{from{opacity:0;transform:translateY(9px);filter:brightness(.7)}to{opacity:1;transform:none;filter:none}}
@keyframes pageDepart{from{opacity:1;filter:brightness(1)}to{opacity:0;filter:brightness(.45)}}
body::after{content:"";position:fixed;inset:0;z-index:200;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent 0%,rgba(var(--rgb),.15) 45%,transparent 85%);transform:translateX(-120%)}
body.page-depart::after{opacity:1;animation:forgeFlash .30s ease-in forwards}
@keyframes forgeFlash{to{transform:translateX(120%);opacity:0}}
.btn,.service-card,.feature-card,.product-card,.control,.demo-tab,.nav-quote{position:relative;isolation:isolate;overflow:hidden}
.btn::before,.service-card::before,.feature-card::before,.product-card::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:0;background:radial-gradient(circle at 50% 115%,rgba(var(--rgb),.21),transparent 68%);transition:opacity .35s ease}
.btn:hover::before,.service-card:hover::before,.feature-card:hover::before,.product-card:hover::before{opacity:1}
.feature-card,.product-card{transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease}
.feature-card:hover,.product-card:hover{transform:translateY(-4px);border-color:rgba(var(--rgb),.72);box-shadow:0 19px 48px #0007,0 0 38px rgba(var(--rgb),.07)}
.btn:active,.control:active,.demo-tab:active{transform:scale(.97)}
.click-spark{position:fixed;width:6px;height:6px;pointer-events:none;z-index:201;border-radius:50%;background:var(--accent2);box-shadow:0 0 10px var(--accent),0 0 20px #ff8b43;animation:clickSpark .65s cubic-bezier(.1,.6,.3,1) forwards}
@keyframes clickSpark{0%{transform:translate(-50%,-50%) scale(1);opacity:1}100%{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.18);opacity:0}}
.reveal-section{transition:opacity .65s ease,transform .7s cubic-bezier(.16,.8,.2,1)}.js-enhanced .reveal-section:not(.is-visible){opacity:.72;transform:translateY(10px)}
.subhero-enhanced{position:relative;overflow:hidden;background:radial-gradient(ellipse at 76% 28%,rgba(var(--rgb),.19),transparent 48%),#111821}
.subhero-enhanced>.shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.7fr);column-gap:18px;align-items:center}
.subhero-enhanced>.shell>p,.subhero-enhanced>.shell>h1{grid-column:1}.subhero-enhanced .diagram-panel{grid-column:2;grid-row:1/4;align-self:center;min-width:0}
.subhero-enhanced .shell>h1{font-size:clamp(2.8rem,4.5vw,4.7rem)}.subhero-enhanced .shell>p:not(.eyebrow){font-size:16px}
.diagram-panel{position:relative;background:linear-gradient(140deg,rgba(27,40,54,.85),rgba(8,12,19,.35));border:1px solid #455666;box-shadow:0 25px 75px #0005;clip-path:polygon(0 0,calc(100% - 21px) 0,100% 21px,100% 100%,0 100%)}
.diagram-panel svg{display:block;width:100%;height:auto}.diagram-topline,.diagram-footer{display:flex;justify-content:space-between;gap:10px;padding:12px 16px;color:#9cb7c8;font-size:9px;font-weight:750;letter-spacing:.12em}.diagram-topline{border-bottom:1px solid #344858}.diagram-footer{border-top:1px solid #344858}.diagram-indicator{color:var(--accent2)}
.diagram-mesh path{fill:none;stroke:#66889c;stroke-width:1;stroke-opacity:.22;stroke-dasharray:4 8}.diagram-paths path{fill:none;stroke:#7cb5cf;stroke-width:2;stroke-opacity:.46;stroke-dasharray:3 8}.diagram-core circle{fill:#23394b;stroke:#f7a969;stroke-width:2;filter:drop-shadow(0 0 9px #ffa45d)}.diagram-core text{font-size:19px;fill:#fff;letter-spacing:.15em;font-weight:850}.diagram-node circle{fill:#e99759;stroke:#ffe0ae;stroke-width:2;filter:drop-shadow(0 0 8px #f29a54)}.diagram-node text{font-size:13px;font-weight:700;fill:#d6e6f3;letter-spacing:.07em}.diagram-pulses circle{fill:#bceeff;filter:drop-shadow(0 0 7px #87d6ff)}
.product-art{padding:22px;overflow:hidden}.product-mock{width:min(100%,440px);min-height:240px;padding:18px 20px;background:linear-gradient(150deg,#203248,#101a27);border:1px solid #58748a;box-shadow:0 23px 50px #0007;transform:perspective(900px) rotateY(-6deg) rotateX(3deg);transition:transform .5s ease,box-shadow .4s ease}.product-card:hover .product-mock,.large-product-preview:hover .product-mock{transform:perspective(900px) rotateY(0deg) rotateX(0deg);box-shadow:0 23px 60px #0009,0 0 35px rgba(var(--rgb),.12)}
.product-food{background:linear-gradient(150deg,#1d3437,#101b22);border-color:#4d8078}.mock-screen-header{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #ffffff2d;padding-bottom:12px;color:#e2eaf3;font-size:14px;font-weight:900;letter-spacing:.1em}.mock-screen-header span{font-size:8px;color:#94b7d3}.mock-headline{margin:20px 0;color:#f0f4f9;font-weight:750;font-size:18px;line-height:1.3;letter-spacing:0}.mock-bars{display:grid;gap:10px}.mock-bars div{display:grid;gap:4px}.mock-bars span{font-size:9px;letter-spacing:.09em;color:#b3c8d9}.mock-bars i{position:relative;width:100%;height:6px;background:#40556a;border-radius:6px;display:block;overflow:hidden}.mock-bars i::before{content:"";position:absolute;inset:0 auto 0 0;width:var(--bar);border-radius:6px;background:linear-gradient(90deg,#f39b50,#9bdaf3);transform-origin:left;animation:barGrow 2s ease-out both}@keyframes barGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.mock-caption{color:#9eafb8;font-size:9px;letter-spacing:.04em;margin-top:15px}.mock-scanner{height:125px;max-width:170px;margin:15px auto;position:relative;display:grid;place-items:center}.mock-scanner>span{font-size:75px;line-height:1;color:#b7e5cf}.scan-corner{position:absolute;width:25px;height:25px;border-color:#baf4d6;border-style:solid;border-width:0}.scan-corner.a{top:0;left:0;border-top-width:2px;border-left-width:2px}.scan-corner.b{top:0;right:0;border-top-width:2px;border-right-width:2px}.scan-corner.c{bottom:0;left:0;border-bottom-width:2px;border-left-width:2px}.scan-corner.d{bottom:0;right:0;border-bottom-width:2px;border-right-width:2px}.scan-bar{position:absolute;left:10px;right:10px;top:24%;height:2px;background:#92f8d7;box-shadow:0 0 16px #5ff4cd;animation:scan 3s ease-in-out infinite alternate}@keyframes scan{to{top:80%}}.mock-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:6px}.mock-tags span{padding:6px;border:1px solid #507e72;color:#d2e9df;font-size:8px;letter-spacing:.06em}
.large-product-preview{display:grid;place-items:center;padding:34px;background:radial-gradient(circle at 50% 50%,rgba(var(--rgb),.16),transparent 65%),#101924;border:1px solid #46596b;margin-bottom:42px;min-height:360px}.large-product-preview .product-mock{width:min(100%,560px);min-height:275px}.large-product-preview .mock-headline{font-size:23px}
@media(max-width:1000px){.subhero-enhanced>.shell{grid-template-columns:1fr}.subhero-enhanced .diagram-panel{grid-column:1;grid-row:auto;max-width:580px;margin-top:28px}}
@media(max-width:650px){.subhero-enhanced .diagram-panel{width:100%}.diagram-node text{font-size:12px}.diagram-topline,.diagram-footer{font-size:8px}.large-product-preview{padding:12px}.product-mock{transform:none}.product-art{padding:16px}.hero-grid{gap:0}}
@media(prefers-reduced-motion:reduce){body,body.page-depart{animation:none!important;transform:none!important;opacity:1!important;filter:none!important}.reveal-section{opacity:1!important;transform:none!important}.click-spark{display:none!important}.mock-bars i::before,.scan-bar{animation:none!important}.diagram-pulses circle{display:none}}
.motion-off .click-spark,.motion-off .diagram-pulses circle{display:none}.motion-off body::after{display:none}

/* V10: Prominent theme switch and flowing particles across every page. */
.header-theme{display:flex;align-items:center;gap:5px;flex-shrink:0;position:relative;z-index:2}
.header-theme-btn{display:flex;align-items:center;gap:7px;border:1px solid #546273;background:rgba(13,21,31,.83);color:#d9e4ed;border-radius:999px;padding:9px 12px;font-size:11px;font-weight:750;letter-spacing:.03em;transition:border-color .2s,color .2s,box-shadow .2s}
.header-theme-btn:hover,.header-theme-btn.active{border-color:var(--accent);color:var(--accent2);box-shadow:0 0 14px rgba(var(--rgb),.12)}
.theme-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.theme-dot.ember{background:#f59c54;box-shadow:0 0 8px #f59c54}.theme-dot.digital{background:#79c7ff;box-shadow:0 0 8px #79c7ff}
body[data-mode=digital] .hero{background:radial-gradient(ellipse at 78% 39%,#112c49,#0a0e13 62%)}
body[data-mode=digital] .hero-art{filter:hue-rotate(150deg) saturate(.7)}
body[data-mode=digital] .eyebrow,body[data-mode=digital] h1 em,body[data-mode=digital] h2 em,body[data-mode=digital] .learn-more{color:#b1e0ff}
body[data-mode=digital] .net-wire{stroke:#7bc7ff}
body[data-mode=digital] .net-pulse{fill:#c5ecff}
.global-particles{position:fixed;inset:0;z-index:41;pointer-events:none;overflow:hidden;opacity:.9}
.particle-layer{position:absolute;inset:-40% 0 0;background-repeat:repeat;will-change:transform;animation:particle-fall 19s linear infinite}
.particle-layer-1{opacity:.83;background-image:radial-gradient(circle,#ffb579 0 1.3px,transparent 2.5px),radial-gradient(circle,#a1d9ff 0 .9px,transparent 2px);background-size:112px 137px,149px 183px;background-position:18px 30px,70px 95px;animation-duration:19s}
.particle-layer-2{opacity:.66;background-image:radial-gradient(circle,#f5a56d 0 1.6px,transparent 2.7px),radial-gradient(circle,#c1d9f4 0 1px,transparent 2px);background-size:218px 229px,176px 165px;background-position:77px 17px,121px 80px;animation-duration:28s;animation-direction:reverse}
.particle-layer-3{opacity:.48;background-image:radial-gradient(circle,#f8b97c 0 1px,transparent 2px);background-size:82px 99px;background-position:25px 46px;animation-duration:33s}
body[data-mode=digital] .particle-layer-1{background-image:radial-gradient(circle,#97d3ff 0 1.4px,transparent 2.5px),radial-gradient(circle,#daefff 0 .9px,transparent 2px)}
body[data-mode=digital] .particle-layer-2{background-image:radial-gradient(circle,#6ebcf7 0 1.6px,transparent 2.7px),radial-gradient(circle,#dcecff 0 1px,transparent 2px)}
body[data-mode=digital] .particle-layer-3{background-image:radial-gradient(circle,#b1ddff 0 1px,transparent 2px)}
@keyframes particle-fall{from{transform:translate3d(0,-11%,0)}to{transform:translate3d(-35px,34%,0)}}
.motion-off .global-particles,.motion-off .embers{display:none}
@media(prefers-reduced-motion:reduce){.global-particles{display:none}}

.mailing-section{padding-block:20px 70px}.mailing-section h2{font-size:clamp(1.4rem,2vw,2rem)}.mailing-section a{color:var(--accent2);text-decoration:underline}
.business-address{font-size:11px;color:#acb7c2}
@media(max-width:1150px){.header-inner{gap:10px}.main-nav{gap:11px}.site-logo img{width:210px}.header-theme-btn{padding:7px 9px}}
@media(max-width:790px){.header-theme{margin-left:auto;margin-right:7px}.header-theme-btn{font-size:10px}.header-inner{gap:7px}}
@media(max-width:490px){.site-logo img{width:145px}.header-theme-btn{padding:8px}.header-theme-btn .theme-dot{width:6px;height:6px}}

/* V11: Calm, sparse, one-direction falling sparks/snow; no reverse animation. */
.global-particles{opacity:.67;z-index:41;overflow:hidden}
.particle-layer{position:absolute;inset:-660px 0 0;will-change:auto;animation-name:vdf-snow-down;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:normal;background-position:0 0;background-repeat:repeat}
.particle-layer-1{opacity:.68;background-image:radial-gradient(circle,var(--accent2) 0 1.2px,transparent 2.1px);background-size:360px 440px;animation-duration:52s}
.particle-layer-2{opacity:.5;background-image:radial-gradient(circle,var(--accent2) 0 1.1px,transparent 2px);background-size:560px 620px;animation-duration:79s;animation-direction:normal}
.particle-layer-3{display:none!important}
body[data-mode=digital] .particle-layer-1,body[data-mode=digital] .particle-layer-2{background-image:radial-gradient(circle,var(--accent2) 0 1.2px,transparent 2.1px)}
@keyframes vdf-snow-down{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,620px,0)}}
/* Each layer falls a whole number of its repeat grid; moving only down. */
.particle-layer-1{animation-name:vdf-snow-down-a}
.particle-layer-2{animation-name:vdf-snow-down-b}
@keyframes vdf-snow-down-a{from{transform:translateY(0)}to{transform:translateY(440px)}}
@keyframes vdf-snow-down-b{from{transform:translateY(0)}to{transform:translateY(620px)}}
.header-motion{white-space:nowrap}
body.motion-off .global-particles,body.motion-off .embers{display:none!important}
@media(max-width:790px){.header-theme{gap:3px}.header-motion{font-size:10px}}
@media(max-width:490px){.header-motion{font-size:9px;padding:7px}.header-theme-btn{font-size:9px}}
@media(prefers-reduced-motion:reduce){.global-particles{display:none!important}}
