/* ============================================================
   DESIGN PLAN — Bitmaker Cloud / BMC (Solutions sub-page)
   Same system as Home / Professional Services / Custom Applications
   & Tools (tokens copied verbatim) so every Solutions page reads as
   one site. BMC's own idea: it is the one Solutions product with a
   real self-serve product behind it (cloud.bitmaker.dev), so the
   hero and closing CTAs route straight to account creation instead
   of only a contact form, and the trust panel is a severity table
   split by tier (self-service: best effort · Enterprise: committed
   response times) rather than one flat SLA.
   ============================================================ */
:root{
  --bg:#FBF6EE;
  --bg-soft:#F4EADA;
  --surface:#FFFFFF;
  --surface-tint:#FFF9F1;
  --border:#E8D9C4;
  --border-strong:#D7BE9C;
  --fg:#25190F;
  --fg-muted:#6E5A46;
  --fg-faint:#A08C72;
  --accent:#FF5733;
  --accent-2:#FFB36B;
  --accent-deep:#C8431F;
  --accent-soft:rgba(255,87,51,.13);
  --accent-glow:rgba(255,87,51,.33);
  --violet:#7A5CC8;
  --violet-soft:rgba(122,92,200,.14);
  --nav-bg:
    repeating-linear-gradient(0deg, rgba(255,255,255,.055) 0 1px, transparent 1px 36px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 1px, transparent 1px 36px),
    linear-gradient(90deg,#1C1330 0%,#2B1A2E 65%,#3A1F1C 100%);
  --nav-fg:#F4EFE6;
  --nav-fg-muted:rgba(244,239,230,.72);
  --good:#1E8F5F;
  --dark-1:#1C1330;
  --dark-2:#2B1A2E;
  --dark-3:#3A1F1C;
  --dark-fg:#F5EEE6;
  --dark-fg-muted:#C9B7C6;
  --dark-border:rgba(255,255,255,.14);
  --font-display:'Space Grotesk',system-ui,sans-serif;
  --font-body:'IBM Plex Sans',system-ui,sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,monospace;
  --container:1180px;
  color-scheme:light;
}
*{box-sizing:border-box;}
body{
  background:var(--bg);
  color:var(--fg);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  position:relative;
}
.bg-texture{
  position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 6%, rgba(255,87,51,.12), transparent 30%),
    radial-gradient(circle at 88% 14%, rgba(122,92,200,.10), transparent 32%),
    radial-gradient(circle at 70% 78%, rgba(255,179,107,.16), transparent 34%),
    repeating-linear-gradient(0deg, rgba(37,25,15,.04) 0 1px, transparent 1px 36px),
    repeating-linear-gradient(90deg, rgba(37,25,15,.04) 0 1px, transparent 1px 36px);
}
h1,h2,h3,h4{
  font-family:var(--font-display);
  font-weight:600;
  line-height:1.12;
  letter-spacing:-0.01em;
  text-wrap:balance;
  margin:0;
  color:var(--fg);
}
p{margin:0;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;}
.wrap{max-width:var(--container);margin:0 auto;padding-inline:24px;}
section{padding-block:96px;position:relative;}
@media (max-width:720px){ section{padding-block:60px;} }
.eyebrow{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--accent-deep);
}
.section-head{max-width:640px;margin-bottom:48px;}
.section-head h2{font-size:clamp(1.7rem,3vw,2.3rem);margin-top:10px;}
.section-head p{color:var(--fg-muted);margin-top:14px;font-size:1.05rem;max-width:58ch;}
.tag-coming{
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--fg-faint);border:1px solid var(--border-strong);border-radius:4px;padding:3px 7px;white-space:nowrap;
}
.breadcrumb{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.78rem;color:var(--fg-faint);margin-top:14px;flex-wrap:wrap;}
.breadcrumb a{color:var(--fg-muted);}
.breadcrumb a:hover{color:var(--accent-deep);}
.breadcrumb .sep{opacity:.5;}
.breadcrumb .current{
  color:var(--accent-deep);font-weight:700;font-size:1.3em;letter-spacing:-0.01em;
}

/* ---------- buttons / links ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:7px;
  font-family:var(--font-body);font-weight:600;font-size:.95rem;white-space:nowrap;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.btn-primary{
  background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:#fff;
  box-shadow:0 10px 28px -10px var(--accent-glow), 0 0 0 1px rgba(200,67,31,.25);
}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 34px -8px var(--accent-glow), 0 0 0 1px rgba(200,67,31,.3);}
.btn-primary:active{transform:translateY(0) scale(.98);}
.btn-ghost{background:transparent;color:var(--fg);border:1px solid var(--border-strong);}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent-deep);}
.card-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.92rem;color:var(--accent-deep);}
.card-link svg{transition:transform .18s ease;}
.card-link:hover svg{transform:translateX(3px);}
.card-link.is-muted{color:var(--fg-faint);cursor:default;}
.card-link.is-muted svg{display:none;}

/* ---------- nav ---------- */
.site-nav{
  position:sticky;top:env(safe-area-inset-top,0px);z-index:40;
  display:flex;align-items:center;justify-content:space-between;padding:14px 24px;
  background:var(--nav-bg);border-bottom:1px solid rgba(0,0,0,.18);height:68px;
}
.brand{display:flex;align-items:center;gap:10px;}
.brand img{height:22px;width:auto;display:block;}
.nav-links{display:flex;align-items:center;gap:30px;}
.nav-links > a{font-size:.92rem;color:var(--nav-fg-muted);transition:color .15s ease;}
.nav-links > a:hover{color:var(--nav-fg);}
.nav-right{display:flex;align-items:center;gap:16px;}
.nav-toggle{display:none;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid rgba(244,239,230,.3);border-radius:6px;}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{content:"";display:block;width:16px;height:1.5px;background:var(--nav-fg);position:relative;}
.nav-toggle span::before{position:absolute;top:-5px;}
.nav-toggle span::after{position:absolute;top:5px;}

.nav-dropdown{position:relative;}
.nav-dropdown summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;
  font-size:.92rem;color:var(--nav-fg-muted);transition:color .15s ease;
}
.nav-dropdown summary::-webkit-details-marker{display:none;}
.nav-dropdown summary:hover,.nav-dropdown[open] summary{color:var(--nav-fg);}
.nav-dropdown summary .chev{transition:transform .18s ease;}
.nav-dropdown[open] summary .chev{transform:rotate(180deg);}
.dropdown-panel{
  display:flex;flex-direction:column;gap:2px;padding:10px;
  background:var(--surface);border:1px solid var(--border);border-radius:14px;
  box-shadow:0 24px 48px -24px rgba(37,25,15,.45);
}
.dropdown-item{
  display:flex;align-items:flex-start;gap:12px;padding:11px 12px;border-radius:9px;
  transition:background .15s ease;
}
a.dropdown-item:hover{background:var(--surface-tint);}
.dropdown-item .icon{
  flex-shrink:0;width:34px;height:34px;border-radius:8px;background:var(--accent-soft);
  color:var(--accent-deep);display:flex;align-items:center;justify-content:center;
}
.dropdown-item.is-current .icon{background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:#fff;}
.dropdown-item .txt h4{font-size:.9rem;color:var(--fg);display:flex;align-items:center;gap:8px;}
.dropdown-item .txt p{font-size:.78rem;color:var(--fg-muted);margin-top:2px;}
.dropdown-item.is-current{background:var(--surface-tint);}
.current-tag{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--accent-deep);padding:2px 7px;border-radius:999px;}
@media (min-width:861px){
  .dropdown-panel{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);width:400px;z-index:5;}
}
@media (max-width:860px){
  .nav-links{position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:var(--nav-bg);border-bottom:1px solid rgba(0,0,0,.2);max-height:0;overflow:hidden;transition:max-height .3s ease;}
  .nav-links.is-open{max-height:600px;overflow-y:auto;}
  .nav-links > a{width:100%;padding:14px 24px;border-top:1px solid rgba(244,239,230,.12);}
  .nav-right .btn-primary{display:none;}
  .nav-links .nav-cta{display:block;padding:16px 24px;}
  .nav-toggle{display:inline-flex;}
  .nav-dropdown{width:100%;border-top:1px solid rgba(244,239,230,.12);}
  .nav-dropdown summary{padding:14px 24px;justify-content:space-between;}
  .dropdown-panel{background:rgba(0,0,0,.18);border:none;border-radius:0;box-shadow:none;padding:4px 10px 10px;}
  a.dropdown-item:hover{background:rgba(244,239,230,.06);}
  .dropdown-item .txt h4{color:var(--nav-fg);}
  .dropdown-item .txt p{color:var(--nav-fg-muted);}
  .dropdown-item.is-current{background:rgba(244,239,230,.06);}
}

/* ---------- hero ---------- */
.hero{padding-block:56px 56px;overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
@media (max-width:900px){ .hero-grid{grid-template-columns:1fr;gap:40px;} }
.hero h1{font-size:clamp(2.1rem,4.4vw,3.3rem);margin-top:14px;}
.hero .sub{color:var(--fg-muted);font-size:1.12rem;margin-top:20px;max-width:48ch;}
.hero-cta{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap;}
.hero-note{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:.85rem;color:var(--fg-faint);}
.hero-note svg{color:var(--accent-deep);flex-shrink:0;}
.hero-visual{position:relative;min-height:300px;display:flex;align-items:center;justify-content:center;}
.glow-blob{position:absolute;border-radius:50%;filter:blur(54px);pointer-events:none;}
.glow-blob.b1{width:300px;height:300px;top:-50px;right:-20px;background:radial-gradient(circle,var(--accent-2) 0%,transparent 70%);opacity:.6;animation:drift 14s ease-in-out infinite;}
.glow-blob.b2{width:220px;height:220px;bottom:-30px;left:0;background:radial-gradient(circle,var(--violet) 0%,transparent 70%);opacity:.35;animation:drift 18s ease-in-out infinite reverse;}
@keyframes drift{0%,100%{transform:translate(0,0);}50%{transform:translate(-14px,16px);}}
@media (prefers-reduced-motion:reduce){ .glow-blob{animation:none;} }

.hero-chip{
  position:absolute;display:flex;align-items:center;gap:8px;background:var(--surface);
  border:1px solid var(--border);border-radius:999px;padding:9px 14px;box-shadow:0 10px 24px -14px rgba(37,25,15,.35);
  font-size:.8rem;color:var(--fg-muted);z-index:2;animation:chipfloat 5s ease-in-out infinite;
}
.hero-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);}
.hero-chip b{font-family:var(--font-mono);color:var(--fg);font-weight:600;}
.hero-chip.c1{top:-23%;left:4%;animation-delay:0s;}
.hero-chip.c2{top:-11%;right:0%;animation-delay:1.2s;}
.hero-chip.c3{bottom:-15%;left:12%;animation-delay:2.1s;}
.hero-chip.c4{bottom:-24%;right:10%;animation-delay:.6s;}
@keyframes chipfloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}}
@media (prefers-reduced-motion:reduce){ .hero-chip{animation:none;} }
@media (max-width:760px){
  .hero-chip{position:static;animation:none;box-shadow:none;border-color:var(--border);margin:4px;}
  .hero-chips-mobile{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:18px;}
}
@media (min-width:761px){ .hero-chips-mobile{display:none;} }

/* ---------- pipeline widget (Deploy / Run / Monitor & bill) ---------- */
.pw-wrap{container-type:inline-size;width:100%;max-width:520px;position:relative;z-index:1;}
.pw-pipeline{display:grid;grid-template-columns:1fr 3.4em 1fr 3.4em 1fr;align-items:start;gap:0 .1em;font-size:clamp(7px,2.1cqw,15px);}
@container (max-width:30em){
  .pw-pipeline{grid-template-columns:1fr;grid-auto-rows:auto;justify-items:center;font-size:clamp(11px,4.4cqw,15px);}
  .pw-connector{width:3.4em;height:3em;margin-inline:auto;}
  .pw-connector .pw-track{width:.3em;height:100%;}
  .pw-connector .pw-dot{animation-name:pwFlowY !important;}
  .pw-connector .pw-chevron{transform:rotate(90deg);}
}
.pw-stage{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1em;padding-block:.4em;}
.pw-badge-row{display:flex;flex-direction:column;align-items:center;gap:.3em;}
.pw-stage-title{font-family:var(--font-display);font-weight:700;font-size:1.05em;color:var(--fg);}
.pw-stage-caption{font-size:.84em;color:var(--fg-muted);max-width:11em;}
.pw-connector{position:relative;height:6.6em;align-self:center;display:flex;align-items:center;justify-content:center;}
.pw-connector .pw-track{width:100%;height:.28em;border-radius:.3em;background:repeating-linear-gradient(90deg,var(--border-strong) 0 .55em,transparent .55em 1em);}
.pw-connector .pw-chevron{position:absolute;color:var(--fg-faint);font-size:1.1em;opacity:.7;}
.pw-connector .pw-dot{position:absolute;top:50%;left:0;width:.65em;height:.65em;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%);animation:pwFlowX 2.6s linear infinite;}
.pw-connector .pw-dot:nth-child(2){animation-delay:-.87s;background:var(--accent-2);}
.pw-connector .pw-dot:nth-child(3){animation-delay:-1.73s;background:var(--accent-deep);}
@keyframes pwFlowX{0%{left:0%;opacity:0;}12%{opacity:1;}88%{opacity:1;}100%{left:100%;opacity:0;}}
@keyframes pwFlowY{0%{top:0%;opacity:0;}12%{opacity:1;}88%{opacity:1;}100%{top:100%;opacity:0;}}
.pw-icon-stack{position:relative;width:8.4em;height:6.2em;}
.pw-page{position:absolute;width:5.8em;height:4.3em;background:var(--surface);border:.08em solid var(--fg);border-radius:.5em;box-shadow:0 .25em .5em -.3em rgba(37,25,15,.25);}
.pw-page-a{top:1.3em;left:2.4em;transform:rotate(-7deg);opacity:.5;}
.pw-page-b{top:.65em;left:1.3em;transform:rotate(-2deg);opacity:.78;}
.pw-page-c{top:0;left:0;transform:rotate(4deg);display:flex;flex-direction:column;animation:pwBob 3.6s ease-in-out infinite;}
.pw-page-c .pw-dots{display:flex;gap:.22em;padding:.36em .46em 0;}
.pw-page-c .pw-dots span{width:.36em;height:.36em;border-radius:50%;background:var(--border-strong);}
.pw-page-c .pw-dots span:first-child{background:var(--accent);}
.pw-page-c .pw-lines{padding:.46em .56em;display:flex;flex-direction:column;gap:.3em;flex:1;}
.pw-page-c .pw-lines i{display:block;height:.28em;border-radius:.2em;background:var(--border-strong);}
.pw-page-c .pw-lines i:nth-child(1){width:90%;}
.pw-page-c .pw-lines i:nth-child(2){width:70%;background:var(--accent-2);}
.pw-page-c .pw-lines i:nth-child(3){width:80%;}
.pw-magnifier{position:absolute;right:-.35em;bottom:-.45em;width:2.1em;height:2.1em;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-deep));display:flex;align-items:center;justify-content:center;box-shadow:0 .3em .6em -.3em rgba(37,25,15,.4);animation:pwPulse 2.4s ease-in-out infinite;}
.pw-magnifier::before{content:"";width:.8em;height:.8em;border-radius:50%;border:.16em solid #fff;background:transparent;}
.pw-magnifier::after{content:"";position:absolute;width:.65em;height:.16em;background:#fff;border-radius:.1em;transform:translate(.5em,.5em) rotate(45deg);}
@keyframes pwBob{0%,100%{transform:rotate(4deg) translateY(0);}50%{transform:rotate(4deg) translateY(-.3em);}}
@keyframes pwPulse{0%,100%{transform:scale(1);}50%{transform:scale(1.1);}}
.pw-processor{position:relative;width:6.4em;height:6.4em;display:flex;align-items:center;justify-content:center;}
.pw-ring{position:absolute;inset:0;border-radius:50%;border:.3em dashed var(--accent);animation:pwSpin 7s linear infinite;}
.pw-orbit{position:absolute;inset:0;animation:pwSpin 5s linear infinite;}
.pw-orbit.rev{animation-direction:reverse;animation-duration:6.4s;}
.pw-orbit i{position:absolute;top:-.28em;left:50%;width:.5em;height:.5em;border-radius:50%;background:var(--accent-2);transform:translateX(-50%);}
.pw-orbit.rev i{background:var(--accent-deep);top:auto;bottom:-.28em;}
.pw-core{position:relative;width:4em;height:4em;border-radius:50%;background:var(--surface);border:.08em solid var(--fg);display:flex;align-items:flex-end;justify-content:center;gap:.22em;padding-bottom:.6em;}
.pw-core i{display:block;width:.4em;border-radius:.15em;background:var(--accent);animation:pwCorebar 2.2s ease-in-out infinite;transform-origin:bottom;}
.pw-core i:nth-child(1){height:1em;animation-delay:0s;}
.pw-core i:nth-child(2){height:1.5em;background:var(--accent-deep);animation-delay:.25s;}
.pw-core i:nth-child(3){height:.8em;animation-delay:.5s;}
@keyframes pwSpin{to{transform:rotate(360deg);}}
@keyframes pwCorebar{0%,100%{transform:scaleY(.72);}50%{transform:scaleY(1);}}
.pw-output{display:flex;align-items:flex-end;gap:.55em;}
.pw-monitor{position:relative;width:8.8em;height:6.4em;border:.09em solid var(--fg);border-radius:.6em;background:var(--surface);box-shadow:0 .3em .6em -.35em rgba(37,25,15,.3);padding:.55em .55em .45em;display:flex;align-items:flex-end;justify-content:space-between;}
.pw-monitor::after{content:"";position:absolute;left:50%;bottom:-.85em;translate:-50% 0;width:2em;height:.46em;background:var(--fg);border-radius:.2em;}
.pw-bars{display:flex;align-items:flex-end;gap:.32em;height:100%;}
.pw-bars i{width:.5em;border-radius:.15em .15em 0 0;background:var(--accent);transform-origin:bottom;animation:pwCorebar 1.9s ease-in-out infinite;}
.pw-bars i:nth-child(1){height:55%;animation-delay:0s;}
.pw-bars i:nth-child(2){height:85%;background:var(--accent-deep);animation-delay:.2s;}
.pw-bars i:nth-child(3){height:40%;animation-delay:.4s;}
.pw-bars i:nth-child(4){height:70%;background:var(--accent-2);animation-delay:.6s;}
.pw-donut{width:2.3em;height:2.3em;border-radius:50%;background:conic-gradient(var(--good) 0 82%,var(--accent-2) 82% 100%);position:relative;animation:pwSpin 11s linear infinite;flex-shrink:0;}
.pw-donut::after{content:"";position:absolute;inset:.55em;border-radius:50%;background:var(--surface);}
.pw-files{display:flex;flex-direction:column;gap:.46em;}
.pw-file{position:relative;width:1.55em;height:1.9em;background:var(--surface);border:.07em solid var(--fg);border-radius:.2em .2em .2em 0;animation:pwFilefloat 3.2s ease-in-out infinite;}
.pw-file::before{content:"";position:absolute;top:0;right:0;width:.5em;height:.5em;background:var(--accent-2);border-bottom:.07em solid var(--fg);border-left:.07em solid var(--fg);border-radius:0 0 0 .2em;}
.pw-file.f2{animation-delay:-1.6s;}
@keyframes pwFilefloat{0%,100%{transform:translateY(0);opacity:.85;}50%{transform:translateY(-.32em);opacity:1;}}
@media (prefers-reduced-motion:reduce){
  .pw-page-c,.pw-magnifier,.pw-ring,.pw-orbit,.pw-core i,.pw-bars i,.pw-donut,.pw-file,.pw-connector .pw-dot{animation-duration:3.2s !important;}
  .pw-page-c{animation-name:none !important;}
  .pw-ring,.pw-orbit,.pw-donut{animation-name:none !important;}
  .pw-core i,.pw-bars i{animation-name:pwPulse !important;transform-origin:center;}
  .pw-connector .pw-dot{animation-name:none !important;opacity:.9;}
  .pw-file{animation-name:pwPulse !important;}
}

/* ---------- hero dashboard mock (replaces the deploy/run/monitor pipeline animation) ---------- */
.dash-mock{
  width:100%;max-width:560px;position:relative;z-index:1;border-radius:16px;overflow:hidden;
  background:linear-gradient(165deg,#2A1710,#30140E 55%,#20110C);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 34px 68px -26px rgba(0,0,0,.55), 0 0 0 1px rgba(0,0,0,.2);
}
.dash-mock-bar{
  display:flex;align-items:center;gap:12px;padding:9px 18px;
  border-bottom:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.2);
}
.dash-mock-dots{display:flex;gap:6px;flex-shrink:0;}
.dash-mock-dots span{width:9px;height:9px;border-radius:50%;display:block;}
.dash-mock-dots span:nth-child(1){background:#FF5F57;}
.dash-mock-dots span:nth-child(2){background:#FEBC2E;}
.dash-mock-dots span:nth-child(3){background:#28C840;}
.dash-mock-title{font-family:var(--font-mono);font-size:.74rem;color:rgba(244,239,230,.68);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.dash-mock-body{padding:14px 22px 12px;display:flex;flex-direction:column;gap:9px;}
.dash-credit-row{
  display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:9px 16px;
}
.dash-credit-icon{
  width:26px;height:26px;border-radius:8px;background:var(--accent-2);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;color:#2A1710;
}
.dash-credit-label{flex:1;font-size:.82rem;color:rgba(244,239,230,.68);}
.dash-credit-value{font-family:var(--font-mono);font-weight:600;font-size:1.1rem;color:var(--accent-2);white-space:nowrap;}
.dash-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.dash-stat{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:9px;padding:8px 12px;}
.dash-stat-val{display:block;font-family:var(--font-mono);font-weight:600;font-size:clamp(.92rem,2.1cqw,1.1rem);color:var(--accent-2);}
.dash-stat-label{display:block;margin-top:3px;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;color:rgba(244,239,230,.5);}
.dash-job-list{border-top:1px solid rgba(255,255,255,.08);}
.dash-job{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 2px;border-bottom:1px solid rgba(255,255,255,.08);}
.dash-job:last-child{border-bottom:none;padding-bottom:1px;}
.dash-job-info{display:flex;flex-direction:column;gap:2px;min-width:0;}
.dash-job-name{font-weight:600;font-size:.88rem;color:#F4EFE6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.dash-job-sub{font-family:var(--font-mono);font-size:.68rem;color:rgba(244,239,230,.48);}
.dash-job-status{display:flex;align-items:center;gap:6px;font-size:.78rem;white-space:nowrap;flex-shrink:0;}
.dash-job-status .dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.dash-job-status.is-running{color:#54D98C;}
.dash-job-status.is-running .dot{background:#3DDC84;box-shadow:0 0 0 4px rgba(61,220,132,.22);animation:dashPulse 2.4s ease-in-out infinite;}
.dash-job-status.is-scheduled{color:rgba(244,239,230,.52);}
.dash-job-status.is-scheduled .dot{background:rgba(244,239,230,.4);}
.dash-job-status.is-completed{color:#A48CE0;}
.dash-job-status.is-completed .dot{background:var(--violet);}
@keyframes dashPulse{0%,100%{opacity:1;}50%{opacity:.35;}}
@media (prefers-reduced-motion:reduce){ .dash-job-status.is-running .dot{animation:none;} }
@media (max-width:420px){ .dash-stat-row{gap:7px;} .dash-stat{padding:9px 6px;} }

/* ---------- pillar cards ---------- */
.cards-row{display:flex;flex-wrap:wrap;gap:20px;}
.card{
  flex:1 1 260px;background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--accent);
  border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:14px;
  transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.card:hover{transform:translateY(-3px);box-shadow:0 18px 36px -22px var(--accent-glow);}
.card .icon{width:42px;height:42px;border-radius:9px;background:linear-gradient(135deg,var(--accent-soft),rgba(255,179,107,.3));display:flex;align-items:center;justify-content:center;color:var(--accent-deep);flex-shrink:0;}
.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.card h3{font-size:1.1rem;}
.card p.desc{color:var(--fg-muted);font-size:.93rem;flex:1;}
.svc-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--fg-faint);border:1px solid var(--border);border-radius:999px;padding:4px 9px;white-space:nowrap;}

/* ---------- helper card / pricing ---------- */
.helper-card{
  background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:32px clamp(18px,4vw,36px);
  box-shadow:0 20px 46px -30px rgba(37,25,15,.35);
}
.helper-card h3{font-size:1.15rem;max-width:40ch;}
.helper-card > p.lead{color:var(--fg-muted);margin-top:10px;max-width:62ch;}

.service-timeline{margin-top:16px;}
.service-panel{display:flex;gap:28px;padding-block:40px;position:relative;}
.service-panel + .service-panel{border-top:1px solid var(--border);}
.panel-spine{flex:0 0 60px;position:relative;display:flex;justify-content:center;}
.panel-spine::before{content:"";position:absolute;top:0;bottom:-40px;left:50%;width:1px;background:var(--border-strong);}
.service-panel:last-child .panel-spine::before{bottom:50%;}
.panel-icon{
  width:52px;height:52px;border-radius:14px;background:var(--accent-soft);color:var(--accent-deep);
  display:flex;align-items:center;justify-content:center;position:relative;z-index:1;border:1px solid var(--border);flex-shrink:0;
  font-family:var(--font-mono);font-weight:600;font-size:1.05rem;
}
.spine-pulse{position:absolute;top:0;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px 2px var(--accent-glow);animation:spinePulse 3.6s linear infinite;}
@keyframes spinePulse{0%{top:0%;opacity:0;}10%{opacity:1;}90%{opacity:1;}100%{top:100%;opacity:0;}}
@media (prefers-reduced-motion:reduce){ .spine-pulse{animation:none;opacity:.6;top:50%;} }
.panel-content{flex:1;min-width:0;}
.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.panel-head h3{font-size:1.3rem;}
.panel-price{font-family:var(--font-mono);font-size:.8rem;color:var(--fg-faint);white-space:nowrap;}
.panel-lead{color:var(--fg-muted);margin-top:10px;font-size:1.02rem;max-width:62ch;}
.fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:22px;}
@media (max-width:620px){ .fact-grid{grid-template-columns:1fr;} }
.fact{background:var(--surface-tint);border:1px solid var(--border);border-radius:10px;padding:14px 16px;}
.fact-label{display:block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:var(--fg-faint);}
.fact-value{display:block;margin-top:6px;font-size:.92rem;color:var(--fg);}

/* ---------- fit / not-fit ---------- */
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;}
@media (max-width:860px){ .fit-grid{grid-template-columns:1fr;} }
.fit-list li{display:flex;gap:12px;padding-block:11px;border-top:1px solid var(--border);font-size:.98rem;color:var(--fg);}
.fit-list li:first-child{border-top:none;}
.fit-list .check{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent-deep);display:flex;align-items:center;justify-content:center;margin-top:1px;}
.redirect-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media (max-width:540px){ .redirect-grid{grid-template-columns:1fr;} }

/* ---------- industries / roles (reused card shape) ---------- */
.industry-card{flex:1 1 220px;border:1px solid var(--border);border-radius:12px;padding:22px;background:var(--surface);display:flex;flex-direction:column;gap:10px;min-height:150px;}
.industry-card h4{font-size:1rem;}
.industry-card p{color:var(--fg-muted);font-size:.86rem;}
.industry-card .card-link{margin-top:auto;}
.industries-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.chip-static{border:1px solid var(--border-strong);border-radius:999px;padding:8px 15px;font-size:.84rem;color:var(--fg-muted);background:var(--surface-tint);}

/* ---------- dark panel / SLA by tier (full-bleed band, matches Professional Services 6.5) ---------- */
.dark-panel{
  position:relative;overflow:hidden;color:var(--dark-fg);
  padding-block:64px;
  background:
    radial-gradient(circle at 88% 92%, rgba(255,140,73,.38), transparent 45%),
    radial-gradient(circle at 8% 10%, rgba(122,92,200,.32), transparent 42%),
    linear-gradient(150deg,var(--dark-1),var(--dark-2) 55%,var(--dark-3));
}
.dark-panel::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;
  background-image:repeating-linear-gradient(0deg, rgba(255,255,255,.06) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 1px, transparent 1px 42px);
  mask-image:radial-gradient(circle at 50% 35%, #000 0%, transparent 78%);
}
.dark-panel-head{position:relative;z-index:1;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between;}
.dark-panel h2{color:var(--dark-fg);font-size:clamp(1.5rem,3vw,2rem);}
.more-pill{font-family:var(--font-mono);font-size:.76rem;background:rgba(255,255,255,.08);border:1px solid var(--dark-border);padding:8px 14px;border-radius:999px;color:var(--dark-fg-muted);display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
.more-pill svg{color:var(--accent-2);}
.sla-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px;}
@media (max-width:860px){ .sla-grid{grid-template-columns:repeat(2,1fr);} }
.sla-card{border:1px solid var(--dark-border);background:rgba(255,255,255,.045);border-radius:14px;padding:18px;}
.sla-sev{display:flex;align-items:center;gap:8px;}
.sla-sev .dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;}
.sla-card.s1 .dot{background:var(--accent-deep);box-shadow:0 0 0 4px rgba(200,67,31,.28);}
.sla-card.s2 .dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-glow);}
.sla-card.s3 .dot{background:var(--accent-2);box-shadow:0 0 0 4px rgba(255,179,107,.28);}
.sla-card.s4 .dot{background:var(--dark-fg-muted);box-shadow:0 0 0 4px rgba(255,255,255,.1);}
.sla-sev b{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--dark-fg);}
.sla-times{margin-top:14px;}
.sla-times .ent{display:flex;align-items:baseline;gap:8px;}
.sla-times .num{font-family:var(--font-mono);font-weight:600;font-size:clamp(1.1rem,2.2vw,1.4rem);color:var(--dark-fg);font-variant-numeric:tabular-nums;}
.sla-times .lbl{font-size:.68rem;color:var(--dark-fg-muted);}
.sla-times .self{margin-top:8px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.03em;color:var(--dark-fg-muted);text-transform:uppercase;}
.sla-card .crit{color:var(--dark-fg-muted);font-size:.8rem;margin-top:14px;line-height:1.45;}
.dark-note{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;margin-top:30px;max-width:72ch;}
.dark-note p{color:var(--dark-fg-muted);font-size:.96rem;}
.dark-note b{color:var(--dark-fg);font-weight:600;}

/* ---------- FAQ accordion ---------- */
.faq-list{display:flex;flex-direction:column;gap:10px;}
.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.faq-item summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:18px 22px;font-family:var(--font-display);font-weight:600;font-size:1rem;color:var(--fg);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary .plus{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent-deep);display:flex;align-items:center;justify-content:center;transition:transform .2s ease;}
.faq-item[open] summary .plus{transform:rotate(45deg);}
.faq-item .faq-body{padding:0 22px 20px;color:var(--fg-muted);font-size:.95rem;max-width:72ch;}

/* ---------- step cards (how it works, mirrors the live cloud.bitmaker.dev flow) ---------- */
.steps-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media (max-width:860px){ .steps-grid{grid-template-columns:1fr;} }
.step-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:14px;}
.step-card .step-num{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-deep);}
.step-card h3{font-size:1.15rem;}
.step-card p.desc{color:var(--fg-muted);font-size:.93rem;}
.step-card code{background:var(--surface-tint);border:1px solid var(--border);border-radius:5px;padding:1px 6px;font-family:var(--font-mono);font-size:.86em;color:var(--accent-deep);}
.step-visual{margin-top:4px;}

.mock-terminal{border-radius:10px;overflow:hidden;background:linear-gradient(160deg,var(--dark-1),var(--dark-3));border:1px solid var(--dark-border);}
.mock-terminal .mt-bar{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:9px 13px;border-bottom:1px solid var(--dark-border);}
.mock-terminal .mt-dots{display:flex;gap:6px;}
.mock-terminal .mt-dots span{width:9px;height:9px;border-radius:50%;display:block;}
.mock-terminal .mt-dots span:nth-child(1){background:#FF5F57;}
.mock-terminal .mt-dots span:nth-child(2){background:#FEBC2E;}
.mock-terminal .mt-dots span:nth-child(3){background:#28C840;}
.mock-terminal .mt-label{font-family:var(--font-mono);font-size:.68rem;color:var(--dark-fg-muted);}
.mock-terminal .mt-body{padding:14px 16px;font-family:var(--font-mono);font-size:.76rem;line-height:1.75;color:var(--dark-fg-muted);overflow-x:auto;}
.mock-terminal .mt-body .cmd{color:var(--accent-2);}
.mock-terminal .mt-body .ok{color:#6FD39A;}
.mock-terminal .mt-body .out{color:var(--dark-fg);}
.mock-terminal .mt-body .lnk{color:var(--accent-2);}

.mock-ui{border:1px solid var(--border);border-radius:10px;background:var(--surface-tint);padding:16px;}
.mock-ui .mu-head{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-faint);margin-bottom:10px;}
.mu-signup{display:flex;flex-direction:column;gap:9px;}
.mu-field{display:flex;flex-direction:column;gap:4px;}
.mu-field .mu-label{font-family:var(--font-mono);font-size:.64rem;color:var(--fg-faint);}
.mu-field .mu-input{background:var(--surface);border:1px solid var(--border-strong);border-radius:5px;height:28px;}
.mu-btn{align-self:stretch;text-align:center;background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:#fff;border-radius:6px;padding:8px;font-size:.78rem;font-weight:600;margin-top:4px;}
.mu-grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;}
.mu-row-check{display:flex;align-items:center;gap:6px;font-size:.68rem;color:var(--fg-faint);}
.mu-row-check .mu-box{width:12px;height:12px;border-radius:3px;background:var(--accent);flex-shrink:0;}
.mu-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
@media (max-width:420px){ .mu-stat-row{grid-template-columns:1fr 1fr;} }
.mu-stat{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:9px 11px;}
.mu-stat .mu-stat-label{font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;color:var(--fg-faint);display:block;}
.mu-stat .mu-stat-val{font-family:var(--font-mono);font-size:.9rem;color:var(--fg);display:block;margin-top:3px;}
.mu-bar{height:4px;border-radius:3px;background:var(--border);margin-top:7px;overflow:hidden;}
.mu-bar i{display:block;height:100%;background:var(--accent);border-radius:3px;}
.mu-detail-list{display:flex;flex-direction:column;gap:6px;margin-top:10px;}
.mu-detail-list .mu-detail-row{display:flex;justify-content:space-between;gap:10px;font-size:.78rem;padding:6px 0;border-top:1px solid var(--border);}
.mu-detail-list .mu-detail-row:first-child{border-top:none;}
.mu-detail-row .k{color:var(--fg-faint);font-family:var(--font-mono);font-size:.68rem;text-transform:uppercase;}
.mu-detail-row .v{color:var(--fg);font-weight:600;}
.mu-badge-running{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;background:var(--accent-soft);color:var(--accent-deep);padding:2px 8px;border-radius:999px;}

/* ---------- enterprise CTA banner ---------- */
.enterprise-banner{
  position:relative;overflow:hidden;border-radius:22px;color:var(--dark-fg);
  padding:44px clamp(22px,4vw,52px);
  display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;
  background:
    radial-gradient(circle at 90% 15%, rgba(255,140,73,.4), transparent 50%),
    radial-gradient(circle at 6% 90%, rgba(122,92,200,.38), transparent 46%),
    linear-gradient(120deg,var(--dark-1),var(--dark-2) 55%,var(--dark-3));
}
.enterprise-banner::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:repeating-linear-gradient(0deg, rgba(255,255,255,.06) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 1px, transparent 1px 42px);
  mask-image:radial-gradient(circle at 60% 40%, #000 0%, transparent 78%);
}
.eb-text{max-width:600px;position:relative;z-index:1;}
.eb-text h2{color:var(--dark-fg);font-size:clamp(1.4rem,2.6vw,1.9rem);margin-top:8px;}
.eb-text p{color:var(--dark-fg-muted);margin-top:12px;font-size:.98rem;}
.eb-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px;}
.eb-chip{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--dark-fg-muted);border:1px solid var(--dark-border);background:rgba(255,255,255,.05);padding:6px 11px;border-radius:999px;}
.eb-cta{position:relative;z-index:1;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;}
.eb-price{font-family:var(--font-mono);font-size:2.1rem;font-weight:600;color:#fff;line-height:1;}
.eb-price span{font-size:.82rem;color:var(--dark-fg-muted);font-weight:400;}
.eb-price-note{font-size:.76rem;color:var(--dark-fg-muted);margin-bottom:8px;}
.eb-alt{margin-top:12px;font-size:.78rem;color:var(--dark-fg-muted);}
.eb-alt a{color:var(--accent-2);font-weight:600;}
@media (max-width:760px){
  .enterprise-banner{flex-direction:column;align-items:flex-start;text-align:left;}
  .eb-cta{align-items:flex-start;width:100%;}
}

/* full-bleed tonal bands — section carries the color edge-to-edge, inner .wrap keeps content at --container
   width. Ported verbatim from the approved Professional Services 6.5 reference so every Solutions page
   alternates sections the same way. */
.band{padding-block:0;}
.band>.wrap{padding-block:96px;}
@media (max-width:720px){ .band>.wrap{padding-block:60px;} }
.band-soft{
  background-color:var(--bg-soft);
  background-image:
    repeating-linear-gradient(0deg, rgba(37,25,15,.05) 0 1px, transparent 1px 36px),
    repeating-linear-gradient(90deg, rgba(37,25,15,.05) 0 1px, transparent 1px 36px);
}
/* hero band: a muted solid base with small brand-color glows — deliberately lighter than the dark-panel/
   footer gradient so the hero reads as its own, calmer moment rather than matching Home's full intensity. */
.band-hero{
  position:relative;overflow:hidden;color:var(--dark-fg);
  min-height:calc(100vh - 68px);min-height:calc(100svh - 68px);display:flex;align-items:center;
  background-color:#3B2956;
  background-image:
    radial-gradient(circle at 22% 18%, rgba(255,140,73,.14), transparent 48%),
    radial-gradient(circle at 78% 0%, rgba(255,87,51,.10), transparent 46%),
    radial-gradient(circle at 65% 100%, rgba(255,179,107,.09), transparent 52%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.055) 0 1px, transparent 1px 36px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 1px, transparent 1px 36px);
}
.hero.band>.wrap{padding-block:56px;width:100%;}
.band-hero .eyebrow{color:var(--accent-2);}
.band-hero .breadcrumb{color:var(--dark-fg-muted);}
.band-hero .breadcrumb a{color:var(--dark-fg-muted);}
.band-hero .breadcrumb a:hover{color:var(--accent-2);}
.band-hero .breadcrumb .current{color:var(--accent-2);}
.band-hero h1{color:var(--dark-fg);}
.hero.band-hero .sub{color:var(--dark-fg-muted);}
.band-hero .hero-note{color:var(--dark-fg-muted);}
.band-hero .hero-note svg{color:var(--accent-2);}
.band-hero .btn-ghost{color:var(--dark-fg);background:rgba(255,255,255,.07);border-color:var(--accent-2);}
.band-hero .btn-ghost:hover{background:rgba(255,179,107,.16);border-color:var(--accent-2);color:var(--accent-2);}
.band-hero .pw-stage-title{color:var(--dark-fg);}
.band-hero .pw-stage-caption{color:var(--dark-fg-muted);}
.band-hero .pw-connector .pw-track{background:repeating-linear-gradient(90deg,rgba(255,255,255,.22) 0 .55em,transparent .55em 1em);}
.band-hero .pw-connector .pw-chevron{color:var(--dark-fg-muted);}

/* ---------- closing cta ---------- */
.closing{
  border-radius:20px;border:1px solid var(--border-strong);
  background:radial-gradient(circle at 18% 20%,var(--accent-soft),transparent 55%),
    radial-gradient(circle at 85% 85%,var(--violet-soft),transparent 50%),var(--surface);
  padding:60px 48px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;
}
.closing h2{font-size:clamp(1.6rem,3.4vw,2.2rem);max-width:28ch;}
.closing p{color:var(--fg-muted);max-width:50ch;font-size:1.02rem;}

/* ---------- contact ---------- */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;}
@media (max-width:860px){ .contact-grid{grid-template-columns:1fr;} }
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;}
.field label{font-size:.85rem;color:var(--fg-muted);font-weight:600;}
.field input,.field select,.field textarea{background:var(--surface);border:1px solid var(--border-strong);color:var(--fg);border-radius:7px;padding:11px 13px;font-family:var(--font-body);font-size:.95rem;}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);}
.field input::placeholder,.field textarea::placeholder{color:var(--fg-faint);}
.contact-note{color:var(--fg-muted);font-size:.92rem;margin-top:10px;}
.success-msg{display:none;align-items:center;gap:10px;background:rgba(30,143,95,.1);border:1px solid rgba(30,143,95,.4);color:var(--good);padding:14px 16px;border-radius:8px;font-size:.92rem;margin-top:16px;}
.success-msg.is-shown{display:flex;}
form.is-success .field, form.is-success .btn-primary{display:none;}

/* ---------- footer (dark full-bleed band, matches Professional Services 6.5) ---------- */
footer{
  position:relative;overflow:hidden;color:var(--dark-fg);
  padding-block:64px 40px;
  background-color:var(--dark-2);
  background-image:
    radial-gradient(circle at 85% 10%, rgba(255,140,73,.30), transparent 45%),
    radial-gradient(circle at 10% 90%, rgba(122,92,200,.28), transparent 45%),
    linear-gradient(165deg,var(--dark-1),var(--dark-2) 55%,var(--dark-3)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.055) 0 1px, transparent 1px 36px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 1px, transparent 1px 36px);
}
footer>.wrap{position:relative;z-index:1;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;}
@media (max-width:760px){ .footer-grid{grid-template-columns:1fr 1fr;} }
.footer-grid h5{font-family:var(--font-mono);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--dark-fg-muted);margin-bottom:14px;}
.footer-grid li{margin-bottom:9px;}
.footer-grid a{color:var(--dark-fg-muted);font-size:.9rem;}
.footer-grid a:hover{color:var(--accent-2);}
.footer-grid .is-current{color:var(--accent-2);font-weight:600;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:44px;padding-top:24px;border-top:1px solid var(--dark-border);color:var(--dark-fg-muted);font-size:.82rem;flex-wrap:wrap;gap:10px;position:relative;z-index:1;}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.footer-brand img{height:20px;}
.footer-desc{color:var(--dark-fg-muted);font-size:.9rem;max-width:34ch;}

/* ---------- reveal (progressive enhancement only) ---------- */
@media (prefers-reduced-motion:reduce){ .pre-reveal{opacity:1!important;transform:none!important;transition:none!important;} }
