/* Maya Interaktive v7 — solid-color token system, zero gradients */

/* ═══════════════════════════════════════════
   DESIGN TOKENS — default (Orange / White / Black)
   Override-ul complet al temei albastre e la sfârşit.
═══════════════════════════════════════════ */
:root {
  /* ── Backgrounds ── */
  --bg:       #0C0800;
  --bg-2:     #130D03;
  --bg-card:  #1A1108;
  --bg-warm:  #100A02;

    /* ── High‑res gradients (no bitmap textures) ── */
  --bg-grad:
    radial-gradient(1200px circle at 18% 18%, rgba(249,115,22,.18), transparent 60%),
    radial-gradient(900px circle at 82% 28%, rgba(249,115,22,.10), transparent 55%),
    linear-gradient(135deg, #070707 0%, #0B0B0B 45%, #070707 100%);
  --bg-lines:
    repeating-linear-gradient(135deg, rgba(255,255,255,.04) 0 1px, transparent 1px 28px);
/* ── Text / surfaces ── */
  --cream:    #FFF6EE;
  --cream-2:  #FFF0E0;
  --ink:      #1A0C00;
  --ink-60:   rgba(26,12,0,.60);
  --ink-30:   rgba(26,12,0,.30);
  --white:    #FFFFFF;
  --fog:      rgba(255,246,238,.72);

  /* ── Accent scale — orange ── */
  --orange:     #F97316;
  --orange-dk:  #EA6010;
  --orange-dkr: #C94F08;
  --orange-lt:  #FB923C;

  /* ── Accent opacity tokens ── */
  --o-20: rgba(249,115,22,.20);
  --o-12: rgba(249,115,22,.12);
  --o-08: rgba(249,115,22,.08);
  --o-05: rgba(249,115,22,.05);
  --o-03: rgba(249,115,22,.03);

  /* ── Glow helpers (box-shadow / filter glows) ── */
  --glow-strong: rgba(249,115,22,.42);
  --glow-mid:    rgba(249,115,22,.22);
  --glow-soft:   rgba(249,115,22,.10);

  /* ── Type ── */
  --fs-display: clamp(4.5rem,9.5vw,10rem);
  --fs-h2:      clamp(2.8rem,5vw,5.2rem);

  /* ── Motion ── */
  --ease-c:  cubic-bezier(.16,1,.3,1);
  --ease-c2: cubic-bezier(.22,1,.36,1);
  --ease-in: cubic-bezier(.7,0,.3,1);
  --dur-reveal: 900ms;
  --dur-mid:    600ms;
  --dur-fast:   300ms;
  --amp: 14px;
}

/* ═══════════════════════════════════════════
   BLUE THEME — token override (NEGRU + ALBASTRU + ALB)
═══════════════════════════════════════════ */
html.theme-blue {
  --bg:       #06101E;
  --bg-2:     #091525;
  --bg-card:  #0C1D30;
  --bg-warm:  #081628;
  --bg-grad:
    radial-gradient(1200px circle at 18% 18%, rgba(74,144,217,.18), transparent 60%),
    radial-gradient(900px circle at 82% 28%, rgba(26,82,204,.10), transparent 55%),
    linear-gradient(135deg, #050A12 0%, #071120 45%, #050A12 100%);
  --bg-lines:
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 30px);

  --cream:    #EDF4FF;
  --cream-2:  #E8F1FF;
  --ink:      #06101E;
  --ink-60:   rgba(6,16,30,.60);
  --ink-30:   rgba(6,16,30,.30);

  --orange:     #4A90D9;
  --orange-dk:  #1A52CC;
  --orange-dkr: #1040A8;
  --orange-lt:  #6BAEE8;

  --o-20: rgba(74,144,217,.20);
  --o-12: rgba(74,144,217,.12);
  --o-08: rgba(74,144,217,.08);
  --o-05: rgba(74,144,217,.05);
  --o-03: rgba(74,144,217,.03);

  --glow-strong: rgba(26,82,204,.42);
  --glow-mid:    rgba(74,144,217,.22);
  --glow-soft:   rgba(74,144,217,.10);
}

/* ═══════════════════════════════════════════
   RESET / BASE
═══════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px;overflow-x:hidden;scrollbar-width:none}
html::-webkit-scrollbar{display:none}
body{font-family:'Instrument Sans',system-ui,sans-serif;background:var(--bg);color:var(--cream);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:'kern' 1,'liga' 1,'calt' 1}
::selection{background:var(--orange);color:var(--white)}
::moz-selection{background:var(--orange);color:var(--white)}
a{text-decoration:none;color:inherit}
button{font-family:inherit}

.r{opacity:0;transform:translateY(var(--amp));filter:blur(4px);transition:opacity var(--dur-reveal) var(--ease-c),transform var(--dur-reveal) var(--ease-c),filter calc(var(--dur-reveal)*.75) var(--ease-c)}
.r.vis{opacity:1;transform:translateY(0);filter:blur(0)}
.r-s{opacity:0;transform:scale(.97);transition:opacity var(--dur-reveal) var(--ease-c2),transform var(--dur-reveal) var(--ease-c2)}
.r-s.vis{opacity:1;transform:scale(1)}
@media(prefers-reduced-motion:reduce){.r,.r-s{transition:opacity 200ms ease;filter:none;transform:none}}

*:focus{outline:none}
*:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:3px;box-shadow:0 0 0 5px var(--o-12);transition:outline-color .2s,box-shadow .2s}
button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}

/* ── Grain — subtle film texture for luxury feel ── */
#grain-overlay{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.032;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.5'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px}

@media(pointer:coarse){.scroll-pip{display:none}}

/* ── Scroll pip — solid accent ── */
.scroll-pip{position:fixed;top:50%;right:1.8rem;width:3px;height:64px;border-radius:2px;background:var(--orange);opacity:.55;transform:translateY(-50%);z-index:200}

/* ── Progress bar — solid accent ── */
#scroll-bar{position:fixed;top:0;left:0;right:0;height:2px;z-index:600;pointer-events:none}
#scroll-fill{height:100%;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .65s cubic-bezier(.22,1,.36,1)}
@supports(animation-timeline:scroll()){
  #scroll-fill{animation:grow-bar linear both;animation-timeline:scroll();transition:none}
  @keyframes grow-bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
}

/* ═══════════════════════════════════════════
   LOADER
═══════════════════════════════════════════ */
#loader{position:fixed;inset:0;z-index:8000;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0;overflow:hidden}
#loader.out{clip-path:inset(0 0 100% 0);transition:clip-path 1s cubic-bezier(.7,0,.3,1)}
/* glow orb — solid color + blur filter (sem radial-gradient) */
.ld-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:var(--orange);opacity:.07;filter:blur(80px);animation:ld-glow-pulse 2s ease-in-out infinite;pointer-events:none}
@keyframes ld-glow-pulse{0%,100%{opacity:.07}50%{opacity:.14}}
.ld-ring-wrap{position:relative;width:120px;height:120px;margin-bottom:2.4rem}
.ld-ring{position:absolute;inset:0;border-radius:50%;border:1px solid var(--o-12)}
.ld-ring-spin{position:absolute;inset:0;border-radius:50%;border:1.5px solid transparent;border-top-color:var(--orange);border-right-color:var(--o-20);animation:ld-spin 1.1s cubic-bezier(.6,0,.4,1) infinite}
.ld-ring-spin2{animation-duration:1.8s;animation-direction:reverse;border-top-color:transparent;border-bottom-color:var(--o-08);inset:8px}
@keyframes ld-spin{to{transform:rotate(360deg)}}
.ld-mark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:1.1rem;letter-spacing:.18em;color:var(--orange);animation:ld-mark-pulse 2s ease-in-out infinite}
@keyframes ld-mark-pulse{0%,100%{opacity:.5}50%{opacity:1}}
.ld-brand{font-family:'Bebas Neue',sans-serif;font-size:.82rem;letter-spacing:.45em;color:rgba(255,246,238,.28);margin-bottom:1.8rem;text-transform:uppercase;animation:ld-brand-in .8s var(--ease-c) both}
html.theme-blue .ld-brand{color:rgba(237,244,255,.28)}
@keyframes ld-brand-in{from{opacity:0;letter-spacing:.2em}to{opacity:1;letter-spacing:.45em}}
.ld-bar-wrap{width:clamp(160px,28vw,240px);height:2px;background:var(--o-08);border-radius:2px;overflow:hidden;margin-bottom:.9rem}
#ldFill{height:100%;width:0;background:var(--orange);transition:width .06s linear;border-radius:2px}
#ldPct{font-family:'Bebas Neue',sans-serif;font-size:2.4rem;letter-spacing:.1em;color:var(--orange);line-height:1;animation:ld-num-in .5s var(--ease-c) both .2s}
@keyframes ld-num-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ld-pct-label{font-size:.6rem;letter-spacing:.25em;color:rgba(255,246,238,.2);text-transform:uppercase;margin-top:.2rem}
html.theme-blue .ld-pct-label{color:rgba(237,244,255,.2)}

/* ═══════════════════════════════════════════
   NAV
═══════════════════════════════════════════ */
#nav{position:fixed;top:0;left:0;right:0;z-index:500;padding:1.4rem 5vw;display:flex;align-items:center;justify-content:space-between;transition:background var(--dur-mid) var(--ease-c),padding var(--dur-mid) var(--ease-c),box-shadow var(--dur-mid) var(--ease-c),backdrop-filter var(--dur-mid) var(--ease-c)}
#nav.stuck{background:rgba(12,8,0,.88);backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6);box-shadow:0 1px 0 var(--o-12),0 8px 32px rgba(0,0,0,.2);padding:1rem 5vw}
html.theme-blue #nav.stuck{background:rgba(6,16,30,.88);box-shadow:0 1px 0 var(--o-12),0 8px 32px rgba(0,0,0,.2)}
.nav-brand{font-family:'Bebas Neue',sans-serif;font-size:1.25rem;letter-spacing:.08em;color:var(--cream)}
.nav-brand span{color:var(--orange)}
.nav-ul{display:flex;gap:2.5rem;list-style:none}
.nav-ul a{font-size:.78rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,246,238,.65);position:relative;transition:color var(--dur-fast) var(--ease-c)}
.nav-ul a::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--orange);transition:width var(--dur-fast) var(--ease-c)}
.nav-ul a:hover{color:var(--cream);text-shadow:0 0 20px var(--o-20)}.nav-ul a:hover::after{width:100%}
.nav-utils{display:flex;align-items:center;gap:.8rem}
.nav-util-btn{background:transparent;border:1px solid rgba(255,246,238,.12);color:rgba(255,246,238,.65);border-radius:100px;padding:.45rem .9rem;font-size:.75rem;letter-spacing:.08em;display:flex;align-items:center;gap:.45rem;transition:all var(--dur-fast) var(--ease-c)}
.nav-util-btn:hover{border-color:var(--orange);color:var(--cream)}
.nav-util-btn svg{flex-shrink:0}
.nav-cta-btn{background:var(--cream);color:var(--ink);border:none;border-radius:100px;padding:.55rem 1.35rem;font-size:.78rem;font-weight:600;letter-spacing:.06em;position:relative;overflow:hidden;transition:color var(--dur-fast) var(--ease-c),transform var(--dur-fast) var(--ease-c)}
.nav-cta-btn::before{content:'';position:absolute;inset:0;background:var(--orange);transform:translateX(-101%);transition:transform var(--dur-mid) var(--ease-c)}
.nav-cta-btn:hover{color:var(--white);transform:translateY(-2px);box-shadow:0 8px 24px var(--glow-mid)}.nav-cta-btn:hover::before{transform:translateX(0)}
.nav-cta-btn span{position:relative;z-index:1}
html.theme-blue .nav-cta-btn::before{background:var(--orange-dk)}
#lang-label{font-size:.75rem;font-weight:600;letter-spacing:.1em}
.nav-ham{display:none;flex-direction:column;gap:5px;background:transparent;border:none;padding:.5rem}
.nav-ham span{display:block;width:22px;height:1.5px;background:var(--cream);border-radius:2px;transition:transform var(--dur-fast) var(--ease-c),opacity var(--dur-fast)}
.nav-ham.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-ham.open span:nth-child(2){opacity:0}
.nav-ham.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nav-drawer{position:fixed;inset:0;z-index:490;background:rgba(12,8,0,.97);backdrop-filter:blur(24px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;clip-path:inset(0 0 100% 0);transition:clip-path var(--dur-mid) var(--ease-c)}
.nav-drawer.open{clip-path:inset(0 0 0% 0)}
.nav-drawer a{font-family:'Bebas Neue',sans-serif;font-size:3rem;letter-spacing:.08em;color:rgba(255,246,238,.7);transition:color var(--dur-fast) var(--ease-c)}
.nav-drawer a:hover{color:var(--orange)}
html.theme-blue .nav-drawer{background:rgba(6,16,30,.97)}

/* Theme knob */
.theme-toggle-wrap{display:flex;align-items:center;gap:.5rem}
#btn-theme{position:relative;width:44px;height:24px;background:var(--o-08);border:1px solid var(--o-20);border-radius:100px;transition:background var(--dur-mid) var(--ease-c),border-color var(--dur-mid) var(--ease-c);flex-shrink:0}
#btn-theme::before{content:'';position:absolute;top:50%;left:3px;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background:var(--orange);transition:transform var(--dur-mid) var(--ease-c)}
html.theme-blue #btn-theme::before{transform:translateY(-50%) translateX(20px)}
.theme-label{font-size:.65rem;font-weight:600;letter-spacing:.12em;color:rgba(255,246,238,.35);user-select:none;white-space:nowrap}
html.theme-blue .theme-label{color:var(--o-20)}

/* ═══════════════════════════════════════════
   HERO — solid bg + glow via filter:blur on solid orbs
═══════════════════════════════════════════ */
#hero{position:relative;min-height:100vh;background:var(--bg);display:flex;flex-direction:column;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden}
/* diagonal texture — SVG pattern, fara gradient */
.hero-bg::before{content:'';position:absolute;inset:-10%;background-image:var(--bg-grad),var(--bg-lines);background-size:cover,auto;background-position:center,0 0;will-change:background-position;animation:bg-drift 120s linear infinite}
@keyframes bg-drift{from{background-position:center,0 0}to{background-position:center,420px 420px}}
/* bottom ambient — solid orb + blur */
.hero-bg::after{content:'';position:absolute;bottom:-15%;left:50%;transform:translateX(-50%);width:60vw;height:40vh;border-radius:50%;background:var(--orange);opacity:.14;filter:blur(80px);pointer-events:none}
/* floating glows */
.hero-glow{position:absolute;top:-10%;right:-5%;width:60vw;height:60vh;border-radius:50%;background:var(--orange);opacity:.18;filter:blur(90px);pointer-events:none;z-index:0;transition:transform 1.8s var(--ease-c2)}
.hero-glow2{position:absolute;bottom:-5%;left:5%;width:40vw;height:40vh;border-radius:50%;background:var(--orange);opacity:.09;filter:blur(70px);pointer-events:none;z-index:0;transition:transform 2.4s var(--ease-c2)}
.hero-noise{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.10;mix-blend-mode:overlay;background-image:radial-gradient(800px circle at 50% 40%, rgba(255,255,255,.05), transparent 60%)}

/* hero grid: 2 columns, single row — orb centers against exact text-block height */
.hero-head{position:relative;z-index:2;padding:clamp(7rem,12vh,10rem) 5vw clamp(3rem,5vw,4rem) 5vw;display:grid;grid-template-columns:55fr 45fr;grid-template-rows:1fr;align-items:center;gap:0;min-height:calc(100vh - 6rem)}
.hero-left{display:flex;flex-direction:column;justify-content:center;gap:0}
.hero-eyebrow{display:flex;align-items:center;gap:.8rem;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--orange)}
.hero-eyebrow::before{content:'';display:block;width:28px;height:1px;background:var(--orange)}
.hero-title-col{padding-right:2rem}
.hero-title{font-family:'Bebas Neue',sans-serif;font-size:var(--fs-display);line-height:.92;letter-spacing:-.01em;color:var(--cream);text-shadow:0 2px 40px rgba(0,0,0,.15)}
.hero-title .line{display:block;overflow:hidden}
.hero-title .accent{color:var(--orange)}
.hero-desc-col{display:flex;flex-direction:column;justify-content:flex-start;padding-top:2.5rem;gap:2rem;padding-right:2rem}
.hero-desc{font-size:.95rem;line-height:1.7;color:rgba(255,246,238,.55);max-width:28ch}
.hero-actions{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}

/* ── Buttons ── */
.btn-fill{display:inline-flex;align-items:center;gap:.6rem;background:var(--orange-dk);color:var(--white);border:none;border-radius:100px;padding:.9rem 2rem;font-size:.85rem;font-weight:600;letter-spacing:.04em;position:relative;overflow:hidden;transition:transform var(--dur-fast) var(--ease-c),box-shadow var(--dur-fast) var(--ease-c)}
.btn-fill::before{content:'';position:absolute;inset:0;background:var(--orange-dkr);transform:translateX(-101%);transition:transform var(--dur-mid) var(--ease-c)}
.btn-fill:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 16px 44px var(--glow-strong),0 6px 20px var(--glow-mid),0 0 0 1px var(--o-12)}.btn-fill:hover::before{transform:translateX(0)}
.btn-fill span,.btn-fill svg{position:relative;z-index:1}
.btn-ghost{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:rgba(255,246,238,.55);border:1px solid rgba(255,246,238,.18);border-radius:100px;padding:.85rem 1.8rem;font-size:.82rem;font-weight:500;letter-spacing:.06em;transition:all var(--dur-fast) var(--ease-c)}
.btn-ghost:hover{color:var(--cream);border-color:var(--orange);box-shadow:0 0 32px var(--o-20),inset 0 0 20px var(--o-05);transform:translateY(-2px)}

/* ── B2B/B2C orbital badge — ultra-premium ── */
.hero-stats-col{grid-column:2/3;grid-row:1/2;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:0;padding:clamp(2rem,calc(50vh - clamp(7rem,12vh,10rem) - 185px),9rem) 0 0;align-self:start}
.b2-scene{position:relative;display:flex;align-items:center;justify-content:center;width:clamp(290px,30vw,370px);height:clamp(290px,30vw,370px)}

/* pulse rings — expanding halos */
.b2-pulse-ring{position:absolute;inset:-40px;border-radius:50%;border:1px solid var(--orange);opacity:0;pointer-events:none}
.b2-pulse-1{animation:b2Pulse 4s ease-out infinite}
.b2-pulse-2{animation:b2Pulse 4s ease-out 2s infinite}
@keyframes b2Pulse{0%{transform:scale(.85);opacity:.35}100%{transform:scale(1.25);opacity:0}}

/* orbit rings */
.b2-orbit-ring{position:absolute;border-radius:50%;pointer-events:none}
.b2-orbit-ring.r1{inset:-32px;border:1px dashed var(--o-20);animation:orbitSpin 28s linear infinite,orbitPulse1 6s ease-in-out infinite}
.b2-orbit-ring.r2{inset:-14px;border:1px solid var(--o-08);animation:orbitSpin 16s linear infinite reverse,orbitPulse2 9s ease-in-out infinite}
.b2-orbit-ring.r3{inset:-52px;border:1px solid var(--o-05);animation:orbitSpin 36s linear infinite;opacity:.4}
@keyframes orbitSpin{to{transform:rotate(360deg)}}
@keyframes orbitPulse1{0%,100%{opacity:.5}50%{opacity:1}}
@keyframes orbitPulse2{0%,100%{opacity:.35}40%{opacity:.8}80%{opacity:.45}}

/* orbiting dots */
.b2-orbit-dot{position:absolute;width:0;height:0;top:50%;left:50%;transform-origin:0 0;animation:orbitSpin 6s linear infinite}
.b2-orbit-dot::after{content:'';position:absolute;width:8px;height:8px;background:var(--orange);border-radius:50%;box-shadow:0 0 14px var(--orange),0 0 28px var(--glow-soft);transform:translate(-50%,-50%);animation:dotBreath 3.2s ease-in-out infinite}
.b2-orbit-dot{width:clamp(150px,16vw,200px);height:clamp(150px,16vw,200px);margin-top:calc(-1 * clamp(150px,16vw,200px));margin-left:calc(-1 * clamp(150px,16vw,200px))}
.b2-orbit-dot-2{animation-duration:9s;animation-direction:reverse;opacity:.55}
.b2-orbit-dot-2::after{animation-delay:1.6s;width:6px;height:6px}
.b2-orbit-dot-3{animation-duration:14s;opacity:.3}
.b2-orbit-dot-3::after{width:4px;height:4px;animation-delay:2.8s}
@keyframes dotBreath{0%,100%{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 10px var(--orange)}50%{transform:translate(-50%,-50%) scale(1.5);box-shadow:0 0 20px var(--orange),0 0 36px var(--glow-soft)}}

/* sparkle particles */
.b2-sparkle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--orange);pointer-events:none;opacity:0}
.b2-sp1{top:12%;left:22%;animation:sparkle 3s ease-in-out .0s infinite}
.b2-sp2{top:72%;right:15%;animation:sparkle 3s ease-in-out .8s infinite}
.b2-sp3{bottom:20%;left:12%;animation:sparkle 3s ease-in-out 1.5s infinite}
.b2-sp4{top:18%;right:22%;animation:sparkle 3s ease-in-out 2.2s infinite}
@keyframes sparkle{0%,100%{opacity:0;transform:scale(0)}30%{opacity:.8;transform:scale(1.2)}50%{opacity:.5;transform:scale(.8)}70%{opacity:.7;transform:scale(1)}90%{opacity:0;transform:scale(0)}}

/* card — premium glass sphere */
.b2-card-wrap{perspective:1000px;z-index:2;position:relative}
.b2-card{width:clamp(240px,27vw,320px);height:clamp(240px,27vw,320px);border-radius:50%;background:var(--orange-dk);border:2px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;animation:b2spin 10s ease-in-out infinite;box-shadow:0 0 90px var(--glow-strong),0 0 160px var(--glow-soft),inset 0 -20px 40px rgba(0,0,0,.15),0 28px 80px rgba(0,0,0,.35);transform-style:preserve-3d;position:relative;overflow:hidden}
/* glass sheen sweep */
.b2-card-sheen{position:absolute;inset:0;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,transparent 40%,transparent 60%,rgba(255,255,255,.05) 100%);pointer-events:none;z-index:3;animation:sheenRotate 10s ease-in-out infinite}
@keyframes sheenRotate{0%,100%{opacity:.7}50%{opacity:.3}}
@keyframes b2spin{0%,100%{transform:rotateY(-12deg) rotateX(6deg) scale(1)}25%{transform:rotateY(16deg) rotateX(-6deg) scale(1.02)}50%{transform:rotateY(-8deg) rotateX(4deg) scale(1)}75%{transform:rotateY(12deg) rotateX(-4deg) scale(1.01)}}
.b2-inner{text-align:center;transform:translateZ(30px);position:relative;z-index:4;padding:0 .8rem}
.b2-lbl{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,5vw,4.8rem);color:#fff;letter-spacing:.1em;line-height:1;text-shadow:0 4px 20px rgba(0,0,0,.3),0 0 40px rgba(255,255,255,.08)}
.b2-divider{display:flex;align-items:center;gap:.6rem;margin:.4rem auto;justify-content:center}
.b2-div-line{flex:0 0 28px;height:1px;background:rgba(255,255,255,.3);border-radius:1px}
.b2-plus-sym{display:flex;align-items:center;justify-content:center;width:24px;height:24px;opacity:.7}
.b2-sub{text-align:center;font-size:.68rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,246,238,.35);margin-top:.6rem;animation:subFadeIn 1.5s ease-out 1.2s both}
@keyframes subFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* B2B deco lines */
.b2-hline{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;position:relative}
.b2-hline::before{content:'';display:block;height:1px;width:100%;background:var(--orange);opacity:.3;animation:lineGlow 3s ease-in-out infinite}
.b2-hline::after{content:'';display:block;width:6px;height:6px;border-radius:50%;background:var(--orange);opacity:.55;box-shadow:0 0 10px var(--orange),0 0 20px var(--glow-soft);animation:dotBreath 3s ease-in-out infinite}
@keyframes lineGlow{0%,100%{opacity:.25}50%{opacity:.5}}
.b2-hline-left::after{align-self:flex-end;margin-right:-2px}
.b2-hline-right::after{align-self:flex-start;margin-left:-2px}
.b2-center-col{display:flex;flex-direction:column;align-items:center;gap:.6rem;flex-shrink:0}

/* Scroll indicator */
.hero-scroll{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,246,238,.3)}
.scroll-arrow{display:flex;flex-direction:column;align-items:center;gap:-2px;animation:scrollBounce 1.8s ease-in-out infinite}
.scroll-arrow svg{display:block}
@keyframes scrollBounce{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(8px);opacity:1}}
/* trail — solid + opacity, no gradient */
.scroll-arrow-trail{width:1px;height:24px;background:var(--orange);opacity:.4;margin-bottom:-2px}
@keyframes spinSlow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* ═══════════════════════════════════════════
   MARQUEE
═══════════════════════════════════════════ */
.marquee-wrap{background:var(--orange-dk);padding:.85rem 0;overflow:hidden;position:relative;z-index:10}
.marquee-track{display:flex;width:max-content;will-change:transform}
.marquee-item{display:flex;align-items:center;gap:1.8rem;font-family:'Bebas Neue',sans-serif;font-size:1rem;letter-spacing:.12em;color:var(--white);padding:0 1.8rem;white-space:nowrap;flex-shrink:0}
.marquee-sep{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.35);flex-shrink:0}
.marquee-wrap:hover .marquee-track{animation-play-state:paused}

/* ═══════════════════════════════════════════
   ABOUT — solid panels
═══════════════════════════════════════════ */
#about{display:grid;grid-template-columns:1fr 1fr}
.about-left{background:var(--bg-2);padding:clamp(4rem,8vh,7rem) 5vw;position:relative;overflow:hidden}
/* corner accent glow — solid orb + blur */
.about-left::before{content:'';position:absolute;top:-10%;right:-10%;width:50%;height:50%;border-radius:50%;background:var(--orange);opacity:.07;filter:blur(60px);pointer-events:none}
.about-quote{font-family:'DM Serif Display',serif;font-style:italic;font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.45;color:var(--cream);margin-bottom:3rem;max-width:30ch}
.about-stats{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem}
.about-stat-val{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,4vw,3.6rem);line-height:1;color:var(--orange);letter-spacing:.02em;display:inline-block;animation:floatY 4s ease-in-out infinite}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.about-stat:nth-child(2) .about-stat-val{animation-delay:.6s}
.about-stat:nth-child(3) .about-stat-val{animation-delay:1.2s}
.about-stat-val sup{font-size:.5em;color:var(--orange);vertical-align:super}
.about-stat-lbl{font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,246,238,.45);margin-top:.2rem}
.about-right{background:var(--cream);padding:clamp(4rem,8vh,7rem) 5vw;color:var(--ink);position:relative}
html.theme-blue .about-left{background:var(--bg-2)}
html.theme-blue .about-right{background:var(--cream-2);color:var(--ink)}
.s-label{display:inline-flex;align-items:center;gap:.6rem;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.8rem;opacity:0;transition:opacity var(--dur-reveal) var(--ease-c)}
.s-label.vis{opacity:1}.s-label::before{content:'—';font-size:.8em}
.s-label.dark{color:var(--orange-dk)}.s-label.dark::before{color:var(--orange-dk)}
.s-label.light{color:var(--orange)}.s-label.light::before{color:var(--orange)}
.about-h2{font-family:'DM Serif Display',serif;font-size:var(--fs-h2);line-height:1.1;color:var(--ink);margin-bottom:2rem}
.about-h2 em{font-style:italic;color:var(--orange-dk)}
.about-body{font-size:.95rem;line-height:1.7;color:var(--ink-60);margin-bottom:1.2rem}
.about-pills{display:flex;flex-wrap:wrap;gap:.6rem;margin:2rem 0}
.pill{display:inline-flex;padding:.45rem 1.1rem;border-radius:100px;border:1.5px solid var(--o-20);color:var(--orange-dk);font-size:.78rem;font-weight:500;background:var(--o-05);transition:all var(--dur-fast) var(--ease-c)}
.pill:hover{background:var(--orange-dk);border-color:var(--orange-dk);color:var(--white);transform:translateY(-2px);box-shadow:0 4px 16px var(--glow-soft)}

/* ═══════════════════════════════════════════
   SERVICES
═══════════════════════════════════════════ */
#services{background:var(--cream-2);padding:clamp(5rem,10vh,8rem) 5vw;color:var(--ink);position:relative;overflow:hidden}
#services::before{content:'';position:absolute;inset:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23EA6010' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.svc-header{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-bottom:4rem;align-items:end}
.svc-h2{font-family:'Bebas Neue',sans-serif;font-size:var(--fs-h2);line-height:.95;color:var(--ink)}.svc-h2 span{color:var(--orange-dk)}
.svc-sub{font-size:.95rem;line-height:1.7;color:var(--ink-60);max-width:34ch}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.svc-card{background:var(--white);border-radius:1.2rem;padding:2.5rem;position:relative;overflow:hidden;border:1.5px solid var(--o-08);transition:transform var(--dur-mid) var(--ease-c),box-shadow var(--dur-mid) var(--ease-c),border-color var(--dur-mid) var(--ease-c);transform-style:preserve-3d}
/* bottom accent bar — solid */
.svc-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--orange-dk);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-mid) var(--ease-c)}
.svc-card:hover{transform:translateY(-8px);box-shadow:0 24px 60px var(--glow-soft),0 8px 24px rgba(0,0,0,.06);border-color:var(--o-20)}.svc-card:hover::after{transform:scaleX(1)}
.svc-num{font-family:'Bebas Neue',sans-serif;font-size:.85rem;letter-spacing:.18em;color:var(--orange);opacity:.5;margin-bottom:1.5rem}
.svc-icon{font-size:1.6rem;color:var(--orange-dk);margin-bottom:1rem}
.svc-title{font-family:'DM Serif Display',serif;font-size:1.5rem;color:var(--ink);margin-bottom:1rem;line-height:1.2}
.svc-desc{font-size:.88rem;line-height:1.68;color:var(--ink-60);margin-bottom:1.8rem}
.svc-tags{display:flex;flex-wrap:wrap;gap:.45rem}
.svc-tag{padding:.28rem .8rem;border-radius:100px;border:1px solid var(--o-12);font-size:.72rem;font-weight:500;letter-spacing:.06em;color:var(--orange-dk);background:var(--o-03)}
@keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}

/* ═══════════════════════════════════════════
   STATS — solid dark
═══════════════════════════════════════════ */
#stats{background:var(--bg-warm);padding:clamp(4rem,8vh,6rem) 5vw;position:relative;overflow:hidden}
#stats::before{content:'';position:absolute;inset:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23F97316' fill-opacity='0.025'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
/* top accent glow — solid + blur */
#stats::after{content:'';position:absolute;top:-15%;left:50%;transform:translateX(-50%);width:50vw;height:30vh;border-radius:50%;background:var(--orange);opacity:.12;filter:blur(70px);pointer-events:none}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative;z-index:1}
.stat-item{text-align:center}
.stat-val{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,5vw,5rem);line-height:1;color:var(--orange);letter-spacing:.03em;position:relative;display:inline-block;transition:text-shadow .5s}
.stat-val::after{content:'';position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:24px;height:2px;background:var(--orange-dkr);border-radius:2px;opacity:.5}
.stat-item.vis .stat-val{text-shadow:0 0 50px var(--glow-mid),0 0 100px var(--glow-soft)}
.stat-lbl{margin-top:1rem;font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,246,238,.4)}

/* ═══════════════════════════════════════════
   WHY — solid dark section
═══════════════════════════════════════════ */
#why{background:var(--bg-2);padding:clamp(5rem,10vh,8rem) 5vw;position:relative;overflow:hidden}
.why-glow{position:absolute;right:-10%;top:20%;width:40vw;height:40vh;border-radius:50%;background:var(--orange);opacity:.1;filter:blur(70px);pointer-events:none;z-index:0;transition:transform 2s var(--ease-c2)}
.why-header{max-width:48ch;margin-bottom:4rem;position:relative;z-index:1}
.why-h2{font-family:'Bebas Neue',sans-serif;font-size:var(--fs-h2);line-height:.92;color:var(--cream)}.why-h2 span{color:var(--orange)}
.why-intro{margin-top:1.5rem;font-size:.95rem;line-height:1.7;color:rgba(255,246,238,.5);max-width:36ch}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative;z-index:1}
.why-item{padding:2rem 1.5rem 2.5rem;border:1px solid rgba(255,246,238,.06);border-radius:1rem;background:rgba(255,246,238,.02);position:relative;overflow:hidden;transition:background var(--dur-mid) var(--ease-c),border-color var(--dur-mid) var(--ease-c),transform var(--dur-mid) var(--ease-c);transform-style:flat}
/* top accent strip instead of radial-gradient overlay */
.why-item::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--orange);opacity:0;transition:opacity var(--dur-mid) var(--ease-c)}
.why-item:hover{background:rgba(255,246,238,.04);border-color:var(--o-20);transform:translateY(-6px);box-shadow:0 16px 40px rgba(0,0,0,.2),0 0 0 1px var(--o-08)}.why-item:hover::before{opacity:1}
.why-item-num{font-family:'Bebas Neue',sans-serif;font-size:.85rem;letter-spacing:.18em;color:var(--orange);margin-bottom:1.5rem;transition:color var(--dur-fast) var(--ease-c),letter-spacing var(--dur-fast) var(--ease-c);display:inline-block}
.why-item:hover .why-item-num{letter-spacing:.26em}
.why-item-icon{font-size:1.4rem;margin-bottom:1rem;color:rgba(255,246,238,.2);transition:color var(--dur-fast) var(--ease-c)}.why-item:hover .why-item-icon{color:var(--orange)}
.why-item-title{font-family:'DM Serif Display',serif;font-size:1.15rem;color:var(--cream);margin-bottom:.75rem;line-height:1.25}
.why-item-desc{font-size:.85rem;line-height:1.65;color:rgba(255,246,238,.45)}

/* ═══════════════════════════════════════════
   PROCESS — solid card-dark
═══════════════════════════════════════════ */
#process{background:var(--bg-card);padding:clamp(5rem,10vh,8rem) 5vw;position:relative;overflow:hidden}
#process::before{content:'';position:absolute;top:0;right:0;width:35%;height:100%;background:var(--orange);opacity:.03;pointer-events:none}
.proc-header{margin-bottom:5rem}
.proc-h2{font-family:'DM Serif Display',serif;font-size:var(--fs-h2);line-height:1.1;color:var(--cream)}.proc-h2 em{font-style:italic;color:var(--orange)}
.proc-sub{margin-top:1.2rem;font-size:.95rem;line-height:1.7;color:rgba(255,246,238,.45);max-width:42ch}
.proc-steps{display:flex;gap:0;position:relative}
.proc-line{display:none!important}
.proc-step{flex:1;padding:2rem 2rem 2rem 1.5rem;position:relative;z-index:1;transition:transform var(--dur-mid) var(--ease-c)}.proc-step:hover{transform:translateY(-4px)}
.proc-dot{width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,246,238,.12);display:flex;align-items:center;justify-content:center;margin-bottom:2rem;font-family:'Bebas Neue',sans-serif;font-size:1.1rem;color:rgba(255,246,238,.4);letter-spacing:.08em;background:var(--bg-2);transition:all var(--dur-mid) var(--ease-c)}
.proc-step:hover .proc-dot{background:var(--orange-dk);border-color:var(--orange-dk);color:var(--white);box-shadow:0 0 0 6px var(--o-12),0 8px 24px var(--glow-mid);animation:dotPulse .6s var(--ease-c)}
@keyframes dotPulse{0%{transform:scale(1)}40%{transform:scale(1.18)}100%{transform:scale(1)}}
.proc-icon{font-size:1rem;color:var(--orange);margin-bottom:.8rem;opacity:.6}
.proc-title{font-family:'DM Serif Display',serif;font-size:1.25rem;color:var(--cream);margin-bottom:.8rem;line-height:1.2}
.proc-desc{font-size:.87rem;line-height:1.65;color:rgba(255,246,238,.45)}

/* ═══════════════════════════════════════════
   CONTACT
═══════════════════════════════════════════ */
#contact{display:grid;grid-template-columns:1fr 1fr}
.ct-left{background:var(--orange-dk);color:var(--white);padding:clamp(4rem,8vh,7rem) 5vw;position:relative;overflow:hidden}
.ct-left-inner{position:relative;z-index:1}
.ct-h2{font-family:'Bebas Neue',sans-serif;font-size:var(--fs-h2);line-height:.92;color:var(--white);margin-bottom:3rem}
.ct-info{display:flex;flex-direction:column;gap:1.5rem}
.ct-info-item{display:flex;flex-direction:column;gap:.25rem}
.ct-info-label{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.ct-info-val{font-size:1.05rem;font-weight:500;color:var(--white)}
.ct-info-val a{color:inherit;transition:opacity var(--dur-fast)}.ct-info-val a:hover{opacity:.75}
.ct-right{background:var(--cream);padding:clamp(4rem,8vh,7rem) 5vw;color:var(--ink)}
html.theme-blue .ct-right{background:var(--cream-2);color:var(--ink)}
.form-title-wrap{margin-bottom:2.5rem}
.form-title{font-family:'DM Serif Display',serif;font-size:1.8rem;color:var(--ink);margin-bottom:.4rem}
.form-sub{font-size:.87rem;color:var(--ink-60)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 1.5rem}
.fgroup{display:flex;flex-direction:column;gap:.4rem}.fgroup.full{grid-column:1/-1}
.flabel{font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60)}
.finput,.fselect,.ftextarea{width:100%;padding:.75rem 1rem;background:var(--white);color:var(--ink);border:1.5px solid var(--o-12);border-radius:.7rem;font-family:inherit;font-size:.9rem;transition:border-color var(--dur-fast) var(--ease-c),box-shadow var(--dur-fast) var(--ease-c)}
.finput:focus,.fselect:focus,.ftextarea:focus{outline:none;border-color:var(--orange-dk);box-shadow:0 0 0 4px var(--o-08),0 2px 12px var(--o-05)}
.ftextarea{resize:vertical;min-height:120px}
.fsubmit{margin-top:.5rem;width:100%;padding:1rem;background:var(--orange-dk);color:var(--white);border:none;border-radius:.7rem;font-family:inherit;font-size:.9rem;font-weight:600;letter-spacing:.04em;position:relative;overflow:hidden;transition:transform var(--dur-fast) var(--ease-c),box-shadow var(--dur-fast) var(--ease-c)}
.fsubmit::before{content:'';position:absolute;inset:0;background:var(--orange-dkr);transform:translateX(-101%);transition:transform var(--dur-mid) var(--ease-c)}
.fsubmit:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 16px 40px var(--glow-strong),0 4px 12px var(--glow-mid)}.fsubmit:hover::before{transform:translateX(0)}
.fsubmit span{position:relative;z-index:1}
.form-success{display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1rem;padding:3rem}
.form-success.vis{display:flex}
.form-success-icon{font-size:3rem;color:var(--orange-dk)}
.form-success-title{font-family:'DM Serif Display',serif;font-size:1.5rem;color:var(--ink)}
.form-success-sub{font-size:.9rem;color:var(--ink-60)}

/* ═══════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════ */
footer{background:var(--bg);border-top:1px solid var(--o-12);padding:1.8rem 5vw;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.2rem;min-height:60px}
.foot-brand{font-family:'Bebas Neue',sans-serif;font-size:.95rem;letter-spacing:.1em;color:rgba(255,246,238,.6)}
.foot-links{display:flex;gap:2rem;flex-wrap:wrap}
.foot-links a{font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,246,238,.55);transition:color var(--dur-fast) var(--ease-c)}.foot-links a:hover{color:var(--orange)}
.foot-badges{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.foot-badge{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(255,246,238,.15);border-radius:6px;padding:.3rem .7rem;font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,246,238,.45);transition:all var(--dur-fast) var(--ease-c)}
.foot-badge:hover{border-color:var(--orange);color:var(--cream)}
.foot-badge svg{flex-shrink:0;opacity:.6}

/* ═══════════════════════════════════════════
   LEGAL OVERLAY
═══════════════════════════════════════════ */
#legal-overlay{background:var(--bg);overflow-y:auto;overflow-x:hidden}
.lgl-nav{position:sticky;top:0;z-index:10;padding:1.1rem 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(12,8,0,.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--o-12)}
html.theme-blue .lgl-nav{background:rgba(6,16,30,.92);border-bottom-color:var(--o-12)}
.lgl-brand{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:.08em;color:var(--cream)}
.lgl-brand span{color:var(--orange)}
.lgl-back{display:inline-flex;align-items:center;gap:.55rem;background:transparent;border:1px solid rgba(255,246,238,.14);color:rgba(255,246,238,.55);border-radius:100px;padding:.45rem 1.1rem;font-size:.75rem;font-weight:500;letter-spacing:.08em;transition:all var(--dur-fast) var(--ease-c)}
.lgl-back:hover{color:var(--cream);border-color:var(--orange)}
html.theme-blue .lgl-back{border-color:var(--o-12)}.html.theme-blue .lgl-back:hover{border-color:var(--o-20)}
.lgl-tabs{display:flex;gap:.5rem;padding:.6rem 5vw;background:rgba(12,8,0,.6);border-bottom:1px solid var(--o-05);overflow-x:auto;-webkit-overflow-scrolling:touch}
html.theme-blue .lgl-tabs{background:rgba(6,16,30,.6);border-bottom-color:var(--o-05)}
.lgl-tab{background:transparent;border:1px solid rgba(255,246,238,.1);color:rgba(255,246,238,.4);border-radius:100px;padding:.4rem 1.1rem;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;transition:all var(--dur-fast) var(--ease-c)}
.lgl-tab:hover{border-color:var(--orange);color:rgba(255,246,238,.7)}
.lgl-tab.active{background:var(--orange-dk);border-color:var(--orange-dk);color:#fff}
.lgl-page{display:none;max-width:860px;margin:0 auto;padding:3.5rem 5vw 6rem}
.lgl-page.active{display:block}
.lgl-page-hero{margin-bottom:3rem;padding-bottom:2.5rem;border-bottom:1px solid var(--o-12);position:relative}
.lgl-label{font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}
.lgl-label::before{content:'—'}
.lgl-title{font-family:'DM Serif Display',serif;font-size:clamp(2rem,4.5vw,3.5rem);line-height:1.1;color:var(--cream);margin-bottom:.8rem}
.lgl-meta{font-size:.8rem;color:rgba(255,246,238,.3);letter-spacing:.04em}
.lgl-section{margin-bottom:3rem}
.lgl-section h2{font-family:'DM Serif Display',serif;font-size:1.55rem;color:var(--cream);margin-bottom:1rem;padding-bottom:.55rem;border-bottom:1px solid var(--o-12)}
.lgl-section h3{font-size:1rem;font-weight:600;color:var(--cream);margin:1.4rem 0 .5rem;letter-spacing:.02em}
.lgl-section p{font-size:.92rem;line-height:1.78;color:rgba(255,246,238,.55);margin-bottom:.9rem}
html.theme-blue .lgl-section p{color:rgba(237,244,255,.55)}
.lgl-section ul,.lgl-section ol{margin:.4rem 0 .9rem 1.4rem}
.lgl-section li{font-size:.89rem;line-height:1.72;color:rgba(255,246,238,.5);margin-bottom:.35rem}
html.theme-blue .lgl-section li{color:rgba(237,244,255,.5)}
.lgl-section strong{color:var(--cream);font-weight:600}
.lgl-section a{color:var(--orange);text-decoration:none;transition:opacity .2s}.lgl-section a:hover{opacity:.75}
.lgl-box{background:var(--o-05);border:1px solid var(--o-12);border-radius:.8rem;padding:1.3rem 1.5rem;margin:1.4rem 0}
.lgl-box p{margin:0;color:rgba(255,246,238,.55)}
html.theme-blue .lgl-box p{color:rgba(237,244,255,.55)}
.ck-table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.84rem}
.ck-table th{background:var(--o-12);color:var(--cream);font-weight:600;padding:.7rem 1rem;text-align:left;border-bottom:1px solid var(--o-20)}
.ck-table td{padding:.7rem 1rem;border-bottom:1px solid rgba(255,246,238,.05);color:rgba(255,246,238,.5);vertical-align:top}
html.theme-blue .ck-table td{border-bottom-color:rgba(237,244,255,.05);color:rgba(237,244,255,.5)}
.ck-table tr:hover td{background:rgba(255,246,238,.02)}
.badge{display:inline-block;padding:.18rem .55rem;border-radius:100px;font-size:.68rem;font-weight:600;letter-spacing:.06em;white-space:nowrap}
.badge-ess{background:rgba(34,197,94,.1);color:#4ade80;border:1px solid rgba(34,197,94,.2)}
.badge-ana{background:var(--o-12);color:var(--orange);border:1px solid var(--o-20)}
.badge-mkt{background:rgba(168,85,247,.1);color:#c084fc;border:1px solid rgba(168,85,247,.2)}
.rights-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.4rem 0}
.right-card{background:rgba(255,246,238,.03);border:1px solid var(--o-12);border-radius:.75rem;padding:1.1rem 1.3rem}
html.theme-blue .right-card{background:rgba(237,244,255,.03);border-color:var(--o-12)}
.right-card h3{margin:0 0 .4rem;font-size:.88rem;color:var(--orange)}
.right-card p{margin:0;font-size:.82rem;color:rgba(255,246,238,.45)}
html.theme-blue .right-card p{color:rgba(237,244,255,.45)}

/* ═══════════════════════════════════════════
   HoReCa
═══════════════════════════════════════════ */
#horeca{padding:clamp(5rem,10vh,8rem) 5vw;background:var(--bg-2);position:relative;overflow:hidden;color:var(--cream)}
#horeca::before{content:'';position:absolute;inset:0;background-image:var(--bg-lines);opacity:.35}
.horeca-intro{text-align:center;max-width:780px;margin:0 auto 5rem}
.horeca-eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);margin-bottom:1.4rem}
.horeca-eyebrow::before,.horeca-eyebrow::after{content:'';display:block;width:24px;height:1px;background:var(--orange);opacity:.5}
.horeca-h2{font-family:'DM Serif Display',serif;font-size:var(--fs-h2);line-height:1.05;color:var(--cream);margin-bottom:1.2rem}
.horeca-h2 em{font-style:italic;color:var(--orange)}
.horeca-lead{font-size:.98rem;line-height:1.78;color:rgba(255,246,238,.48);max-width:50ch;margin:0 auto}
html.theme-blue .horeca-lead{color:rgba(237,244,255,.48)}
.horeca-features{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin:2rem auto 0;max-width:640px}
.horeca-feat{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:500;color:rgba(255,246,238,.55);letter-spacing:.04em}
.horeca-feat::before{content:'✓';color:var(--orange);font-weight:700;font-size:.85rem}
html.theme-blue .horeca-feat{color:rgba(237,244,255,.55)}
.horeca-steps-label{font-family:'Bebas Neue',sans-serif;font-size:.8rem;letter-spacing:.22em;color:rgba(255,246,238,.25);text-align:center;margin-bottom:2rem;text-transform:uppercase}
html.theme-blue .horeca-steps-label{color:rgba(237,244,255,.25)}
.horeca-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem;margin-bottom:5rem;position:relative}
/* connecting line — solid accent */
.horeca-steps::before{content:'';position:absolute;top:3.6rem;left:calc(33.33% - .5rem);right:calc(33.33% - .5rem);height:1px;background:var(--orange);opacity:.2;pointer-events:none}
.horeca-step{background:var(--bg-card);border:1.5px solid var(--o-08);border-radius:1.2rem;padding:2.4rem 2rem;position:relative;overflow:hidden;transition:border-color .3s var(--ease-c),transform .3s var(--ease-c),box-shadow .3s var(--ease-c)}
.horeca-step:hover{border-color:var(--o-20);transform:translateY(-7px);box-shadow:0 24px 60px rgba(0,0,0,.3),0 0 0 1px var(--o-08)}
/* corner glow — solid orb + blur */
.horeca-step-glow{position:absolute;top:-20px;right:-20px;width:100px;height:100px;border-radius:50%;background:var(--orange);opacity:.06;filter:blur(24px);pointer-events:none}
.horeca-step-num{font-family:'Bebas Neue',sans-serif;font-size:4.5rem;line-height:1;color:var(--orange);opacity:.1;position:absolute;bottom:1rem;right:1.5rem;letter-spacing:-.03em;transition:opacity .3s}
.horeca-step:hover .horeca-step-num{opacity:.25}
.horeca-step-icon{width:48px;height:48px;border-radius:12px;background:var(--o-08);border:1px solid var(--o-12);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;font-size:1.35rem;transition:transform .3s var(--ease-c),background .3s}
.horeca-step:hover .horeca-step-icon{transform:scale(1.1) rotate(-4deg);background:var(--o-12)}
.horeca-step-title{font-family:'DM Serif Display',serif;font-size:1.18rem;color:var(--cream);margin-bottom:.8rem;line-height:1.25}
.horeca-step-body{font-size:.86rem;line-height:1.72;color:rgba(255,246,238,.44)}
html.theme-blue .horeca-step-body{color:rgba(237,244,255,.44)}
.horeca-step-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.1rem}
.horeca-tag{font-size:.68rem;font-weight:600;letter-spacing:.07em;padding:.28rem .7rem;border-radius:100px;border:1px solid var(--o-20);color:var(--orange);background:var(--o-03)}
/* Pricing */
.horeca-pricing{margin-bottom:5rem}
.horeca-section-title{font-family:'DM Serif Display',serif;font-size:clamp(1.8rem,3.2vw,2.6rem);color:var(--cream);text-align:center;margin-bottom:.5rem}
.horeca-section-note{text-align:center;font-size:.83rem;color:rgba(255,246,238,.38);letter-spacing:.06em;margin-bottom:3rem;text-transform:uppercase}
html.theme-blue .horeca-section-note{color:rgba(237,244,255,.38)}
.horeca-plans{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:840px;margin:0 auto}
.horeca-plan{border-radius:1.4rem;padding:2.8rem 2.4rem;position:relative;overflow:hidden;transition:transform .3s var(--ease-c),box-shadow .3s}
.horeca-plan:hover{transform:translateY(-6px)}
.horeca-plan.basic{background:var(--bg-card);border:1.5px solid var(--o-12)}
/* premium — solid accent, sem gradient */
.horeca-plan.premium{background:var(--orange-dk);border:none;box-shadow:0 0 60px var(--glow-strong),0 24px 60px rgba(0,0,0,.3)}
.horeca-plan.premium:hover{box-shadow:0 0 80px var(--glow-strong),0 32px 80px rgba(0,0,0,.35)}
.plan-badge{position:absolute;top:1.4rem;right:1.4rem;background:rgba(255,255,255,.14);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.28rem .8rem;border-radius:100px}
.plan-price{font-family:'Bebas Neue',sans-serif;font-size:clamp(3.2rem,5.5vw,4.5rem);line-height:1;letter-spacing:-.01em}
.horeca-plan.basic .plan-price{color:var(--orange)}
.horeca-plan.premium .plan-price{color:#fff}
.plan-price-note{font-size:.76rem;margin-bottom:1.8rem;letter-spacing:.03em;margin-top:.2rem}
.horeca-plan.basic .plan-price-note{color:rgba(255,246,238,.45)}
html.theme-blue .horeca-plan.basic .plan-price-note{color:rgba(237,244,255,.45)}
.horeca-plan.premium .plan-price-note{color:rgba(255,255,255,.6)}
.plan-features{list-style:none;display:flex;flex-direction:column;gap:.75rem;margin-bottom:2.2rem}
.plan-features li{display:flex;align-items:flex-start;gap:.6rem;font-size:.86rem;line-height:1.55}
.plan-features li::before{content:'✓';font-weight:700;flex-shrink:0;margin-top:.05rem}
.horeca-plan.basic .plan-features li{color:rgba(255,246,238,.52)}
.horeca-plan.basic .plan-features li::before{color:var(--orange)}
html.theme-blue .horeca-plan.basic .plan-features li{color:rgba(237,244,255,.52)}
.horeca-plan.premium .plan-features li{color:rgba(255,255,255,.82)}
.horeca-plan.premium .plan-features li::before{color:rgba(255,255,255,.9)}
.plan-cta{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;width:100%;padding:.95rem 1.5rem;border-radius:.8rem;font-size:.88rem;font-weight:600;letter-spacing:.04em;transition:all .3s var(--ease-c);text-decoration:none;position:relative;overflow:hidden}
.horeca-plan.basic .plan-cta{background:var(--orange-dk);color:#fff;border:none}
.horeca-plan.basic .plan-cta:hover{background:var(--orange-dkr);transform:translateY(-2px);box-shadow:0 10px 28px var(--glow-strong)}
.horeca-plan.premium .plan-cta{background:rgba(255,255,255,.18);color:#fff;border:1.5px solid rgba(255,255,255,.28)}
.horeca-plan.premium .plan-cta:hover{background:rgba(255,255,255,.3);transform:translateY(-2px)}
/* Testimonials */
.horeca-testimonials{margin-top:1rem}
.horeca-test-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;max-width:880px;margin:0 auto}
.horeca-test-card{background:var(--bg-card);border:1px solid var(--o-08);border-radius:1rem;padding:1.8rem;position:relative;transition:border-color .3s,transform .3s var(--ease-c)}
.horeca-test-card:hover{border-color:var(--o-20);transform:translateY(-3px)}
.horeca-test-card::before{content:'"';font-family:'DM Serif Display',serif;font-size:5rem;line-height:.7;color:var(--orange);opacity:.14;position:absolute;top:1.2rem;right:1.4rem}
.horeca-test-text{font-size:.88rem;line-height:1.74;color:rgba(255,246,238,.52);font-style:italic;margin-bottom:1.3rem}
html.theme-blue .horeca-test-text{color:rgba(237,244,255,.52)}
.horeca-test-author{display:flex;align-items:center;gap:.75rem}
.horeca-test-av{width:38px;height:38px;border-radius:50%;background:var(--o-08);border:1.5px solid var(--o-12);display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:.95rem;color:var(--orange);flex-shrink:0}
.horeca-test-name{font-size:.82rem;font-weight:600;color:var(--cream)}
.horeca-test-co{font-size:.72rem;color:rgba(255,246,238,.35);margin-top:.1rem}
html.theme-blue .horeca-test-co{color:rgba(237,244,255,.35)}
.horeca-cta-strip{margin-top:4.5rem;padding:3rem 2.5rem;background:var(--o-05);border:1px solid var(--o-12);border-radius:1.4rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;max-width:860px;margin-left:auto;margin-right:auto}
.horeca-cta-text h3{font-family:'DM Serif Display',serif;font-size:1.55rem;color:var(--cream);margin-bottom:.4rem}
.horeca-cta-text p{font-size:.87rem;color:rgba(255,246,238,.45);max-width:36ch;line-height:1.65}
html.theme-blue .horeca-cta-text p{color:rgba(237,244,255,.45)}

/* ═══════════════════════════════════════════
   PERFORMANCE — content-visibility for paint optimization
═══════════════════════════════════════════ */
#horeca{content-visibility:auto;contain-intrinsic-size:auto 800px}

/* ═══════════════════════════════════════════
   REDUCED MOTION
═══════════════════════════════════════════ */
/* pause animations when tab hidden */
html.page-hidden *{animation-play-state:paused!important}
html.reduced-motion .hero-glow,html.reduced-motion .hero-glow2,html.reduced-motion .why-glow{animation:none}
html.reduced-motion .b2-orbit-ring.r1{animation:orbitSpin 22s linear infinite}
html.reduced-motion .b2-orbit-ring.r2{animation:orbitSpin 12s linear infinite reverse}
html.reduced-motion .b2-orbit-dot::after{animation:none}
@media(prefers-reduced-motion:reduce){.b2-orbit-ring.r1{animation:none}.b2-orbit-ring.r2{animation:none}.b2-orbit-dot::after{animation:none}.b2-orbit-dot,.b2-orbit-dot-2{animation:none}}
@media(pointer:coarse){.b2-orbit-ring.r1{animation:orbitSpin 22s linear infinite}.b2-orbit-ring.r2{animation:orbitSpin 12s linear infinite reverse}.b2-orbit-dot::after{animation:none}}

/* ═══════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════ */
@media(max-width:1024px){
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .rights-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  :root{--fs-display:clamp(3.2rem,7.5vw,5.8rem);--fs-h2:clamp(2.2rem,4.5vw,3.8rem)}
  .nav-ul{display:none}.nav-utils{gap:.5rem}.nav-ham{display:flex}
  .hero-head{grid-template-columns:1fr;grid-template-rows:auto auto;padding-top:5.5rem;gap:0;min-height:auto}
  .hero-left{grid-column:1;grid-row:1}
  .hero-title-col{padding-right:0}
  .hero-stats-col{grid-column:1;grid-row:2;flex-direction:column;padding:2rem 0 1rem;margin:0 auto;align-self:auto}
  .b2-hline{display:none}
  .b2-center-col{flex-direction:column}
  .b2-scene{width:clamp(200px,44vw,260px);height:clamp(200px,44vw,260px)}
  .b2-card{width:clamp(168px,38vw,220px)!important;height:clamp(168px,38vw,220px)!important}
  .b2-pulse-ring{inset:-24px}
  .b2-orbit-dot{width:115px;height:115px;margin-top:-115px;margin-left:-115px}
  .hero-desc-col{padding-right:0;padding-top:1.5rem;padding-bottom:3rem}
  .hero-desc{max-width:100%}
  #about{grid-template-columns:1fr}
  .svc-header{grid-template-columns:1fr}
  .svc-grid{grid-template-columns:1fr 1fr;gap:1.2rem}
  .why-grid{grid-template-columns:1fr 1fr;gap:1.2rem}
  .proc-steps{flex-direction:column;gap:1rem}
  #contact{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .horeca-steps{grid-template-columns:1fr;gap:1.2rem}
  .horeca-steps::before{display:none}
  .horeca-plans{grid-template-columns:1fr;max-width:480px}
  .horeca-test-grid{grid-template-columns:1fr;max-width:520px}
  .horeca-cta-strip{flex-direction:column;text-align:center;padding:2.2rem 1.8rem}
  .horeca-cta-text p{max-width:100%;margin:0 auto}
  footer{flex-direction:column;align-items:center;gap:.8rem}.scroll-pip{display:none}
  .lgl-tabs{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.2rem}
}
@media(max-width:600px){
  :root{--fs-display:clamp(2.8rem,11vw,4.2rem);--fs-h2:clamp(1.9rem,7vw,3rem)}
  .hero-head{padding-top:4.8rem}
  .hero-title .line{display:block}
  .b2-scene{width:clamp(170px,52vw,220px);height:clamp(170px,52vw,220px)}
  .b2-card{width:clamp(146px,44vw,190px)!important;height:clamp(146px,44vw,190px)!important}
  .b2-lbl{font-size:clamp(2.2rem,8vw,3rem)!important}
  .b2-pulse-ring{inset:-18px}
  .b2-orbit-dot{width:90px;height:90px;margin-top:-90px;margin-left:-90px}
  .b2-orbit-ring.r3{inset:-28px}
  .b2-sparkle{display:none}
  .svc-grid{grid-template-columns:1fr}
  .why-grid{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:1fr 1fr}
  .nav-util-btn span{display:none}
  .nav-cta-btn span{font-size:.72rem}
  .horeca-plans{grid-template-columns:1fr}
  .horeca-test-grid{grid-template-columns:1fr}
  .horeca-step{padding:1.8rem 1.5rem}
  .horeca-intro{margin-bottom:3.5rem}
  #services,#why,#process,#horeca,#stats{padding-left:5vw;padding-right:5vw}
  .svc-header,.about-left,.about-right,.ct-left,.ct-right{padding-left:5vw;padding-right:5vw}
  .proc-step{padding:1.5rem 1rem}
  .foot-links{gap:1.2rem;justify-content:center}
  .foot-badges{justify-content:center}
}
@media(max-width:400px){
  :root{--fs-display:clamp(2.4rem,13vw,3.2rem)}
  .hero-actions{flex-direction:column;gap:.8rem}
  .btn-fill,.btn-ghost{width:100%;justify-content:center}
  .nav-cta-btn{display:none}
}

/* ═══════════════════════════════════════════
   SMOOTH SCROLL — reduced-motion override
═══════════════════════════════════════════ */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ═══════════════════════════════════════════
   ACTIVE NAV — data-page attribute
═══════════════════════════════════════════ */
[data-page="about"] .nav-ul a[href="about.html"],
[data-page="services"] .nav-ul a[href="services.html"],
[data-page="why"] .nav-ul a[href="why.html"],
[data-page="process"] .nav-ul a[href="process.html"],
[data-page="horeca"] .nav-ul a[href="horeca.html"],
[data-page="contact"] .nav-ul a[href="contact.html"]{color:var(--cream)}
[data-page="about"] .nav-ul a[href="about.html"]::after,
[data-page="services"] .nav-ul a[href="services.html"]::after,
[data-page="why"] .nav-ul a[href="why.html"]::after,
[data-page="process"] .nav-ul a[href="process.html"]::after,
[data-page="horeca"] .nav-ul a[href="horeca.html"]::after,
[data-page="contact"] .nav-ul a[href="contact.html"]::after{width:100%}
