

/* Start:/local/templates/netadvice/template_styles.css?179027821280056*/
:root{
  --bg:#06111f;--bg2:#081727;--surface:#0b1a2c;--surface2:#102238;--surface3:#132a42;
  --text:#f5fbff;--muted:#94a8bc;--line:#203a55;--line2:#315675;
  --blue:#2875ff;--cyan:#22d3ee;--violet:#8b5cf6;--green:#25d695;--amber:#f2bd4a;--red:#ff687c;
  --shadow:0 20px 60px rgba(0,0,0,.27);--soft:0 11px 30px rgba(0,0,0,.15);--grid:rgba(55,137,207,.075);
}
html[data-theme="light"]{
  --bg:#edf3f9;--bg2:#e8f0f7;--surface:#fff;--surface2:#f7fbff;--surface3:#edf6fd;
  --text:#0b1930;--muted:#556b82;--line:#c6d8e8;--line2:#9fb9d0;
  --blue:#155ee7;--cyan:#009fb8;--violet:#7046d8;--green:#0aa675;--amber:#c98300;--red:#db3d56;
  --shadow:0 20px 55px rgba(31,74,117,.14);--soft:0 9px 25px rgba(31,74,117,.09);--grid:rgba(15,92,166,.07);
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{
  margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:radial-gradient(circle at 82% 0,color-mix(in srgb,var(--cyan) 9%,transparent),transparent 32rem),
             linear-gradient(180deg,var(--bg),var(--bg2) 55%,var(--bg));
  transition:.25s ease;
}
a{color:inherit;text-decoration:none} button{font:inherit;color:inherit}
svg{display:block}.container{width:min(1420px,calc(100% - 52px));margin:auto}
.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon.sm{width:16px;height:16px}.icon.lg{width:27px;height:27px}
header{position:sticky;top:0;z-index:50;border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(18px)}
.nav{height:76px;display:flex;align-items:center;gap:24px}
.logo{display:inline-flex;align-items:center;margin-right:auto;line-height:1}
.logo img{display:block;width:auto;image-rendering:auto}
.logo .logo-dark{height:40px}
.logo .logo-light{display:none;height:40px}
html[data-theme="light"] .logo .logo-dark{display:none}
html[data-theme="light"] .logo .logo-light{display:block}

.links{display:flex;gap:25px;color:var(--muted);font-size:14px}.links a:hover{color:var(--text)}
.theme-toggle{width:42px;height:42px;border-radius:13px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;cursor:pointer;box-shadow:var(--soft)}
.btn{border:1px solid transparent;border-radius:12px;padding:13px 18px;font-weight:780;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.18s ease}
.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--blue),var(--cyan));box-shadow:0 10px 28px color-mix(in srgb,var(--cyan) 20%,transparent)}
.btn-secondary{background:var(--surface);border-color:var(--line);color:var(--text)}.btn-cyan{background:var(--cyan);color:#04141d;box-shadow:0 10px 27px color-mix(in srgb,var(--cyan) 22%,transparent)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--muted)}

.hero{
  min-height:690px;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(620px,1.08fr);
  grid-template-areas:
    "intro board"
    "proof proof";
  gap:30px 40px;
  align-items:center;
  padding:34px 0 18px
}
.hero-copy{grid-area:intro}
.eyebrow{display:flex;align-items:center;gap:9px;color:var(--cyan);font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;margin-bottom:18px}
.eyebrow:before{content:"";width:42px;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan))}
h1{font-size:clamp(45px,5vw,72px);line-height:1.045;letter-spacing:-.046em;margin:0 0 22px;max-width:760px}
h1 .accent{color:var(--cyan)}
.lead{font-size:18px;line-height:1.68;color:var(--muted);max-width:690px;margin:0 0 30px}
.actions{display:flex;gap:13px;flex-wrap:wrap;margin-bottom:0}

.microproof{
  grid-area:proof;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:0;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface2) 90%,transparent));
  box-shadow:var(--soft)
}
.proof-item{display:flex;align-items:center;gap:14px;padding:20px 18px;min-height:110px;position:relative}
.proof-item:not(:last-child):after{content:"";position:absolute;top:22px;right:0;bottom:22px;width:1px;background:var(--line)}
.proof-icon{
  width:56px;height:56px;min-width:56px;border:1px solid var(--line);border-radius:50%;
  display:grid;place-items:center;color:var(--blue);
  background:color-mix(in srgb,var(--surface2) 82%,transparent);
  box-shadow:0 0 18px color-mix(in srgb,var(--blue) 8%,transparent)
}
.proof-text b{display:block;font-size:13px;line-height:1.32}
.proof-text span{display:block;font-size:11px;color:var(--muted);line-height:1.35;margin-top:3px}
.proof-badge{font-size:19px;font-weight:900;letter-spacing:-.04em;color:#f0c541}

.system-board{
  grid-area:board;
  position:relative;
  min-height:590px;
  border:1px solid var(--line);
  border-radius:30px;
  overflow:hidden;
  box-shadow:var(--shadow);
  background:
    radial-gradient(circle at 50% 42%, rgba(34,211,238,.18), transparent 15rem),
    radial-gradient(circle at 50% 82%, rgba(40,117,255,.12), transparent 18rem),
    linear-gradient(rgba(58,117,207,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(58,117,207,.08) 1px,transparent 1px),
    #081425;
  background-size:auto,auto,32px 32px,32px 32px,auto;
}
.system-board:before{
  content:"";
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 75% 20%, rgba(47,205,255,.5) 0 1.7px, transparent 2.2px) 0 0/18px 18px,
    radial-gradient(circle at 23% 80%, rgba(76,136,255,.35) 0 1.4px, transparent 1.9px) 0 0/18px 18px;
  opacity:.18;
  mask-image:linear-gradient(180deg, transparent 0%, black 10%, black 90%, transparent 100%);
}
.board-top{position:absolute;top:18px;left:19px;right:19px;display:flex;justify-content:space-between;align-items:center;z-index:3}
.board-title{font-size:11px;color:#90a8c5;letter-spacing:.1em;text-transform:uppercase}
.live{display:flex;align-items:center;gap:7px;font-size:10px;color:#90a8c5;border:1px solid rgba(67,108,150,.7);background:rgba(10,22,39,.86);padding:7px 10px;border-radius:999px}
.live i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 9px var(--green)}

.hub{
  position:absolute;left:50%;top:50%;width:214px;height:214px;transform:translate(-50%,-50%);
  border-radius:50%;display:grid;place-items:center;z-index:2
}
.hub-ring,.hub-ring:before,.hub-ring:after{content:"";position:absolute;border-radius:50%;inset:0}
.hub-ring{
  background:radial-gradient(circle, rgba(34,211,238,.16), transparent 62%);
  box-shadow:inset 0 0 0 2px rgba(57,203,255,.85),0 0 36px rgba(34,211,238,.18)
}
.hub-ring:before{inset:13px;border:2px solid rgba(57,203,255,.82)}
.hub-ring:after{inset:-18px;border:1px solid rgba(57,203,255,.32);box-shadow:0 0 42px rgba(34,211,238,.13)}
.hub-core{
  position:relative;z-index:2;
  width:150px;height:150px;border-radius:50%;
  border:1px solid rgba(57,203,255,.45);
  background:radial-gradient(circle at 50% 35%, rgba(57,203,255,.16), #081425);
  display:grid;place-items:center;
  box-shadow:0 0 34px rgba(34,211,238,.17)
}
.hub-core img{width:98px;max-width:72%;height:auto;display:block;margin:auto;object-fit:contain}

.node{
  position:absolute;width:205px;min-height:98px;border:1px solid rgba(61,98,138,.7);border-radius:22px;
  background:linear-gradient(180deg, rgba(12,27,46,.96), rgba(8,20,37,.98));
  display:flex;gap:14px;align-items:center;padding:16px 16px;box-shadow:var(--soft);transition:.3s ease;z-index:2
}
.node-icon{
  width:56px;height:56px;min-width:56px;
  border:1px solid rgba(70,105,142,.7);
  border-radius:16px;background:#091a2d;
  display:grid;place-items:center;font-size:26px;font-weight:900
}
.node-icon img{max-width:38px;max-height:38px;display:block;margin:auto;object-fit:contain}
.node-icon svg{width:27px;height:27px}
.node.site .node-icon{box-shadow:0 0 18px rgba(240,79,84,.18)}
.node.market .node-icon{color:#9b7cff;box-shadow:0 0 18px rgba(155,124,255,.18)}
.node.onec .node-icon{box-shadow:0 0 18px rgba(240,197,65,.18)}
.node.pay .node-icon{color:#1fda8b;box-shadow:0 0 18px rgba(31,218,139,.18)}
.node.delivery .node-icon{color:#58c9ff;box-shadow:0 0 18px rgba(88,201,255,.18)}
.node.stock .node-icon{color:#61a5ff;box-shadow:0 0 18px rgba(97,165,255,.18)}
.node b{display:block;font-size:15px;line-height:1.12;margin-bottom:4px;color:#f1f7ff;word-break:break-word;hyphens:auto}
.node small{font-size:11px;color:#9bb0c8;line-height:1.3;display:block}
.node .status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--green);margin-right:6px;box-shadow:0 0 10px var(--green);vertical-align:middle}
.node.active{border-color:var(--cyan);box-shadow:0 0 0 1px rgba(34,211,238,.35),0 0 32px rgba(34,211,238,.18),var(--soft);transform:translateY(-2px)}
.node.success small{color:#7be6bf}

#site{left:4%;top:11%}
#market{left:4%;top:40%}
#oneC{left:4%;top:69%}
#pay{right:4%;top:11%}
#delivery{right:4%;top:40%}
#stock{right:4%;top:69%}

.connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.edge{fill:none;stroke:rgba(62,102,145,.92);stroke-width:4;opacity:.98}
.edge.active{
  stroke:var(--cyan);stroke-width:4.6;stroke-dasharray:14 9;animation:flow .82s linear infinite;
  filter:drop-shadow(0 0 6px rgba(34,211,238,.55))
}
@keyframes flow{to{stroke-dashoffset:-22}}

.packet{
  position:absolute;z-index:6;min-width:184px;padding:9px 12px;border-radius:13px;display:flex;align-items:center;gap:8px;
  background:linear-gradient(180deg,rgba(9,22,38,.98),rgba(13,27,47,.95));
  border:1px solid var(--cyan);font-size:11px;font-weight:800;color:#eef7ff;opacity:0;transform:translate(-50%,-50%) scale(.94);
  box-shadow:0 10px 26px rgba(34,211,238,.20)
}
.packet.show{opacity:1;transform:translate(-50%,-50%) scale(1)}
.packet-dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
.packet-time{margin-left:auto;color:#9bb0c8;font-weight:500}

.board-statusbar{
  position:absolute;left:18px;right:18px;bottom:18px;
  display:flex;align-items:center;gap:10px;
  border:1px solid rgba(67,108,150,.74);border-radius:14px;padding:12px 14px;
  background:rgba(8,20,37,.94);
  color:#9bb0c8;font-size:12px;z-index:3
}
.board-statusbar i{width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);flex:0 0 auto}

.section{padding:60px 0}.section.alt{background:color-mix(in srgb,var(--surface) 42%,transparent);border-block:1px solid var(--line)}
.kicker{font-size:12px;color:var(--cyan);font-weight:850;letter-spacing:.13em;text-transform:uppercase}
h2{font-size:clamp(31px,3vw,45px);letter-spacing:-.036em;margin:8px 0 17px} .intro{max-width:830px;color:var(--muted);font-size:17px;line-height:1.62;margin:0 0 34px}
.route-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.route-card{border:1px solid var(--line);border-radius:21px;background:var(--surface);padding:23px;box-shadow:var(--soft);min-height:310px;display:flex;flex-direction:column}
.route-card.primary{border-color:color-mix(in srgb,var(--cyan) 55%,var(--line));background:radial-gradient(circle at 90% 8%,color-mix(in srgb,var(--cyan) 12%,transparent),transparent 12rem),var(--surface)}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:28px}.card-icon{width:45px;height:45px;border:1px solid var(--line);border-radius:13px;display:grid;place-items:center;color:var(--cyan);background:var(--surface2)}
.badge{padding:6px 9px;border-radius:999px;border:1px solid var(--line);font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.badge.free{color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 38%,var(--line))}
.route-card h3{font-size:22px;margin:0 0 10px}.route-card p{color:var(--muted);line-height:1.55;margin:0 0 18px;font-size:14px}.route-card .btn{margin-top:auto}
.price{font-size:24px;font-weight:900;letter-spacing:-.03em;margin:0 0 4px}.price-sub{font-size:11px;color:var(--muted);margin-bottom:18px}
.report-shell{border:1px solid var(--line);border-radius:24px;background:var(--surface);padding:26px;box-shadow:var(--soft)}
.report-head{display:flex;gap:16px;align-items:center;padding-bottom:22px;border-bottom:1px solid var(--line)}.report-head .card-icon{width:52px;height:52px}.report-head h3{margin:4px 0 0;font-size:24px}.smallcaps{font-size:10px;color:var(--cyan);font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.result-card{border:1px solid var(--line);border-radius:17px;padding:19px;background:var(--surface2);min-height:225px}.result-card h4{font-size:17px;margin:16px 0 8px}.result-card p{color:var(--muted);font-size:13px;line-height:1.5}.result-no{font-size:10px;color:var(--muted);letter-spacing:.09em}.result-card.highlight{border-color:color-mix(in srgb,var(--cyan) 48%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--cyan) 7%,var(--surface2)),var(--surface2))}
.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.tech-card{border:1px solid var(--line);border-radius:21px;padding:24px;background:var(--surface);box-shadow:var(--soft);min-height:330px}.tech-card h3{font-size:23px;margin:23px 0 10px}.tech-card p{font-size:14px;color:var(--muted);line-height:1.55}.tech-card .facts{margin-top:18px;margin-bottom:22px}.facts{display:grid;gap:9px;margin:18px 0 23px}.fact{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:9px;font-size:12px;color:var(--muted)}.fact b{color:var(--text);text-align:right}
.start-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.start-card{border:1px solid var(--line);border-radius:22px;background:var(--surface);padding:25px;box-shadow:var(--soft);position:relative;overflow:hidden}.start-card:nth-child(2){border-color:color-mix(in srgb,var(--cyan) 50%,var(--line))}.start-name{font-size:11px;color:var(--cyan);font-weight:850;letter-spacing:.11em;text-transform:uppercase}.start-price{font-size:32px;font-weight:900;letter-spacing:-.035em;margin:8px 0 3px}.start-time{font-size:12px;color:var(--muted);margin-bottom:20px}.start-card h3{font-size:22px;margin:0 0 13px}.checklist{list-style:none;margin:0 0 23px;padding:0;display:grid;gap:9px;color:var(--muted);font-size:13px}.checklist li{display:flex;gap:8px}.checklist li:before{content:"✓";color:var(--green);font-weight:900}.exclusion{border-top:1px solid var(--line);padding-top:13px;color:var(--muted);font-size:11px;line-height:1.45}
.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.support-card{border:1px solid var(--line);border-radius:22px;background:var(--surface);padding:24px;box-shadow:var(--soft)}.support-card.recommended{border-color:color-mix(in srgb,var(--cyan) 55%,var(--line));background:radial-gradient(circle at 88% 9%,color-mix(in srgb,var(--cyan) 10%,transparent),transparent 11rem),var(--surface)}
.support-tier{font-size:11px;color:var(--cyan);font-weight:850;text-transform:uppercase;letter-spacing:.1em}.support-price{font-size:30px;font-weight:900;letter-spacing:-.035em;margin:7px 0 20px}.support-price small{font-size:12px;color:var(--muted);font-weight:500}.support-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px}.metric{border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface2);text-align:center}.metric b{display:block;font-size:18px}.metric span{display:block;font-size:9px;color:var(--muted);margin-top:3px;line-height:1.2}
.diagnostic-box{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch}.diagnostic-main,.diagnostic-side{border:1px solid var(--line);border-radius:23px;background:var(--surface);padding:26px;box-shadow:var(--soft)}.diagnostic-main{border-color:color-mix(in srgb,var(--cyan) 48%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--cyan) 6%,var(--surface)),var(--surface))}
.diag-price{font-size:36px;font-weight:900;letter-spacing:-.04em;margin:12px 0 4px}.diag-timeline{font-size:12px;color:var(--muted);margin-bottom:21px}.diag-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.diag-item{border:1px solid var(--line);border-radius:13px;background:var(--surface2);padding:12px}.diag-item b{display:block;font-size:12px}.diag-item span{display:block;font-size:10px;color:var(--muted);margin-top:4px}
.formula{display:grid;gap:9px}.formula-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:8px 0;font-size:12px;color:var(--muted)}.formula-row b{color:var(--text)}.formula-note{font-size:11px;color:var(--muted);line-height:1.45;margin-top:12px}
.process{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.process-step{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:16px;min-height:130px}.process-step span{font-size:10px;color:var(--cyan);font-weight:850}.process-step b{display:block;font-size:13px;margin-top:22px}.process-step small{display:block;font-size:10px;color:var(--muted);margin-top:7px;line-height:1.35}
.rules{margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.rule{border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--surface2);display:flex;gap:11px;align-items:flex-start}.rule .card-icon{width:36px;height:36px;min-width:36px}.rule b{font-size:12px;display:block}.rule p{font-size:10px;color:var(--muted);line-height:1.4;margin:4px 0 0}
.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.case-card{border:1px dashed var(--line2);border-radius:21px;padding:24px;background:var(--surface)}.case-tag{font-size:10px;color:var(--amber);font-weight:850;letter-spacing:.09em;text-transform:uppercase}.case-card h3{font-size:21px;margin:19px 0 8px}.case-card p{color:var(--muted);font-size:13px;line-height:1.5}.case-flow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:20px}.case-node{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--surface2);font-size:11px}.case-arrow{color:var(--cyan)}
.contact{display:grid;grid-template-columns:1fr .8fr;gap:38px;align-items:center}.contact-panel{border:1px solid var(--line);border-radius:22px;background:var(--surface);padding:24px;box-shadow:var(--soft)}.contact-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.contact-row b{color:var(--text);text-align:right}.contact-panel .btn{width:100%;margin-top:20px}.contact-note{font-size:10px;color:var(--muted);line-height:1.4;margin-top:9px}
.footer{padding:35px 0 55px;color:var(--muted);font-size:12px}.footer-row{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}


/* v0.8: спокойные фоновые акценты + меньше ощущения пустоты */
section[id]{scroll-margin-top:76px}
.focus-screen{
  position:relative;
  min-height:calc(var(--viewport-height, 100dvh) - var(--header-height, 76px));
  display:flex;
  align-items:center;
  padding-top:44px;
  padding-bottom:44px;
  overflow:hidden;
  isolation:isolate;
}
.focus-screen:before,
.focus-screen:after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
}
.focus-screen:before{
  inset:0;
  background:
    radial-gradient(circle at 14% 18%, color-mix(in srgb,var(--cyan) 10%,transparent) 0 2px, transparent 2.4px) 0 0/22px 22px,
    radial-gradient(circle at 84% 80%, color-mix(in srgb,var(--blue) 9%,transparent) 0 1.6px, transparent 2px) 0 0/20px 20px;
  opacity:.23;
  mask-image:linear-gradient(180deg, transparent 0%, black 18%, black 82%, transparent 100%);
}
.focus-screen:after{
  left:-60px;right:-60px;top:-60px;bottom:-60px;
  background:
    radial-gradient(circle at 12% 16%, color-mix(in srgb,var(--cyan) 11%,transparent), transparent 16rem),
    radial-gradient(circle at 88% 78%, color-mix(in srgb,var(--blue) 9%,transparent), transparent 14rem),
    radial-gradient(circle at 78% 14%, color-mix(in srgb,var(--violet) 6%,transparent), transparent 12rem);
  opacity:.95;
}
.focus-screen>.container{
  position:relative;
  z-index:1;
  width:min(1420px,calc(100% - 52px));
}
.screen-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:26px;
}
.start-card .package-cta{
  width:100%;
  margin-top:20px;
}
.start-card,
.tech-card{
  display:flex;
  flex-direction:column;
}
.start-card .exclusion{margin-top:auto}
.tech-card .btn{margin-top:auto;width:100%}
.screen-footer-note{
  margin-top:18px;
  text-align:center;
  color:var(--muted);
  font-size:11px;
  line-height:1.45;
}
@media(max-width:820px){
  .focus-screen{
    min-height:auto;
    display:block;
    padding-top:44px;
    padding-bottom:44px;
  }
  .focus-screen>.container{width:min(100% - 28px,1420px)}
  .focus-screen:before{
    background:
      radial-gradient(circle at 14% 18%, color-mix(in srgb,var(--cyan) 10%,transparent) 0 1.8px, transparent 2.2px) 0 0/18px 18px,
      radial-gradient(circle at 84% 80%, color-mix(in srgb,var(--blue) 8%,transparent) 0 1.4px, transparent 1.8px) 0 0/18px 18px;
    opacity:.18;
  }
}


.process-visual{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:18px;
  margin-top:10px;
  align-items:stretch;
}
.process-line{
  position:absolute;
  left:8%;
  right:8%;
  top:62px;
  height:2px;
  background:linear-gradient(90deg,
    color-mix(in srgb,var(--cyan) 35%,transparent),
    color-mix(in srgb,var(--blue) 35%,transparent));
  z-index:0;
}
.flow-step{
  position:relative;
  z-index:1;
  border:1px solid var(--line);
  border-radius:22px;
  background:var(--surface);
  padding:24px 20px 22px;
  box-shadow:var(--soft);
  min-height:285px;
}
.flow-step.emphasized{
  border-color:color-mix(in srgb,var(--cyan) 50%,var(--line));
  background:radial-gradient(circle at 88% 10%, color-mix(in srgb,var(--cyan) 9%,transparent), transparent 10rem), var(--surface);
}
.flow-no{
  font-size:11px;
  font-weight:850;
  letter-spacing:.11em;
  color:var(--cyan);
  text-transform:uppercase;
}
.flow-icon{
  width:54px;height:54px;
  border:1px solid var(--line);
  border-radius:16px;
  display:grid;place-items:center;
  color:var(--cyan);
  background:var(--surface2);
  margin:22px 0 18px;
}
.flow-step h3{
  font-size:20px;
  line-height:1.2;
  margin:0 0 10px;
}
.flow-step p{
  font-size:13px;
  line-height:1.58;
  color:var(--muted);
  margin:0;
}
.process-principles{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:24px;
}
.principle{
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--surface2);
  padding:16px;
  display:flex;
  gap:12px;
  align-items:flex-start;
}
.principle b{display:block;font-size:13px}
.principle p{margin:4px 0 0;font-size:11px;color:var(--muted);line-height:1.45}


.footer-extended{
  border-top:1px solid var(--line);
  background:
    radial-gradient(circle at 10% 20%, color-mix(in srgb,var(--cyan) 7%,transparent), transparent 18rem),
    linear-gradient(180deg, color-mix(in srgb,var(--surface) 84%,transparent), color-mix(in srgb,var(--bg) 50%,transparent));
  padding:42px 0 36px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.35fr .75fr .75fr .9fr;
  gap:24px;
  align-items:start;
}
.footer-brand p{
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
  max-width:420px;
  margin:14px 0 18px;
}
.footer-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.footer-col h4{
  margin:2px 0 14px;
  font-size:14px;
}
.footer-col a,
.footer-note{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
  margin-bottom:8px;
}
.footer-col a:hover{color:var(--text)}
.footer-legal{display:flex;flex-wrap:wrap;gap:8px 20px;flex-basis:100%;line-height:1.6}
.footer-legal a,.task-consent-links a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.task-consent-links{display:grid;gap:6px;padding-left:24px;margin-top:6px;font-size:12px;line-height:1.5}
.legal-document{max-width:900px;padding-top:40px;padding-bottom:56px;line-height:1.75;overflow-wrap:anywhere}
.legal-document h1{font-size:32px;line-height:1.25;letter-spacing:0;margin:0 0 24px}
.legal-document h2{font-size:24px;line-height:1.35;letter-spacing:0;margin:32px 0 16px}
.legal-document h3{font-size:20px;line-height:1.4;letter-spacing:0;margin:24px 0 12px}
.legal-document p,.legal-document ul,.legal-document ol{margin:0 0 16px}
.legal-document li{margin-bottom:6px}
.legal-document a{text-decoration:underline;text-underline-offset:3px}
.legal-document code{font-size:14px;white-space:normal}
@media(max-width:600px){.legal-document h1{font-size:26px}.legal-document h2{font-size:22px}}
.footer-bottom{
  margin-top:28px;
  padding-top:16px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  color:var(--muted);
  font-size:12px;
}

@media(max-width:1150px){
  .links{display:none}.hero{grid-template-columns:1fr;grid-template-areas:"intro" "board" "proof";gap:24px}.route-grid,.result-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.microproof{grid-template-columns:repeat(2,1fr)}.logo .logo-dark,.logo .logo-light{height:34px}
  .process{grid-template-columns:repeat(3,1fr)}.diagnostic-box,.contact{grid-template-columns:1fr}.process-visual{grid-template-columns:repeat(2,1fr)}.process-principles{grid-template-columns:1fr}
}
@media(max-width:820px){
  .container{width:min(100% - 28px,1420px)}.nav>.btn{display:none}.hero{padding-top:36px}.system-board{min-height:780px}.microproof{grid-template-columns:1fr}.logo .logo-dark,.logo .logo-light{height:30px}.node b{font-size:13px}.node small{font-size:10px}.node.market b{font-size:12px}
  .tech-grid,.start-grid,.support-grid,.rules,.case-grid,.footer-grid{grid-template-columns:1fr}.diag-list{grid-template-columns:1fr}
  .route-grid,.result-grid{grid-template-columns:1fr}.process{grid-template-columns:repeat(2,1fr)}.process-visual{grid-template-columns:1fr}.process-line{display:none}
  h1{font-size:44px}.support-metrics{grid-template-columns:repeat(3,1fr)}
  #site{left:5%;top:10%}#market{left:5%;top:34%}#oneC{left:5%;top:58%}#pay{right:5%;top:10%}#delivery{right:5%;top:34%}#stock{right:5%;top:58%}
  .hub{width:162px;height:162px}.hub-core{width:114px;height:114px}.hub-core img{width:76px}.node{width:140px;min-height:80px;padding:9px 10px}.node-icon{width:40px;height:40px;min-width:40px}.node-icon img{max-width:26px;max-height:26px}.node-icon svg{width:18px;height:18px}.board-statusbar{left:12px;right:12px;bottom:12px}
}

/* v0.16 — responsive hero/animation corrections */

/* Logos: their transparent canvas is now tightly cropped; center explicitly. */
.node-icon{
  overflow:visible;
  justify-content:center;
  align-items:center;
}
.node-icon img{
  width:auto;
  height:auto;
  max-width:42px;
  max-height:42px;
  object-position:center;
  object-fit:contain;
  transform:none;
}
.hub-core{
  overflow:visible;
}
.hub-core img{
  display:block;
  width:auto;
  height:auto;
  max-width:104px;
  max-height:42px;
  margin:0 auto;
  object-fit:contain;
  object-position:center;
}

/* Light theme gets a genuinely light integration diagram. */
html[data-theme="light"] .system-board{
  border-color:#c8d9e9;
  background:
    radial-gradient(circle at 50% 42%, rgba(0,167,190,.10), transparent 15rem),
    radial-gradient(circle at 50% 82%, rgba(21,94,231,.06), transparent 18rem),
    linear-gradient(rgba(29,112,190,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(29,112,190,.065) 1px,transparent 1px),
    #f8fbff;
  box-shadow:0 20px 52px rgba(32,75,116,.13);
}
html[data-theme="light"] .system-board:before{
  background:
    radial-gradient(circle at 75% 20%, rgba(0,167,190,.35) 0 1.7px, transparent 2.2px) 0 0/18px 18px,
    radial-gradient(circle at 23% 80%, rgba(21,94,231,.22) 0 1.4px, transparent 1.9px) 0 0/18px 18px;
  opacity:.15;
}
html[data-theme="light"] .board-title{color:#5e7690}
html[data-theme="light"] .live{
  color:#5e7690;
  border-color:#c4d8e9;
  background:rgba(255,255,255,.88);
}
html[data-theme="light"] .hub-ring{
  background:radial-gradient(circle,rgba(0,167,190,.10),transparent 62%);
  box-shadow:inset 0 0 0 2px rgba(0,167,190,.65),0 0 30px rgba(0,167,190,.10);
}
html[data-theme="light"] .hub-ring:before{border-color:rgba(21,94,231,.42)}
html[data-theme="light"] .hub-ring:after{
  border-color:rgba(21,94,231,.16);
  box-shadow:0 0 40px rgba(21,94,231,.07);
}
html[data-theme="light"] .hub-core{
  border-color:#9dcfe2;
  background:radial-gradient(circle at 50% 35%,rgba(0,167,190,.09),#ffffff 68%);
  box-shadow:0 10px 28px rgba(29,98,151,.10);
}
html[data-theme="light"] .node{
  border-color:#c5d8e8;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,251,255,.98));
  box-shadow:0 10px 26px rgba(31,74,117,.09);
}
html[data-theme="light"] .node-icon{
  border-color:#c7dbea;
  background:#fff;
}
html[data-theme="light"] .node b{color:#0b1930}
html[data-theme="light"] .node small{color:#5e7389}
html[data-theme="light"] .node.success small{color:#0a9c70}
html[data-theme="light"] .edge{
  stroke:rgba(75,125,171,.52);
}
html[data-theme="light"] .edge.active{
  stroke:#009fb8;
  filter:drop-shadow(0 0 5px rgba(0,159,184,.30));
}
html[data-theme="light"] .packet{
  color:#0b1930;
  background:rgba(255,255,255,.98);
  border-color:#009fb8;
  box-shadow:0 10px 24px rgba(0,159,184,.13);
}
html[data-theme="light"] .packet-time{color:#60778f}
html[data-theme="light"] .board-statusbar{
  color:#5e7389;
  border-color:#bfd5e6;
  background:rgba(255,255,255,.94);
}

/* Tablet: do not squeeze a six-node diagram beside the headline. */
@media(max-width:1280px){
  .hero{
    grid-template-columns:1fr;
    grid-template-areas:
      "intro"
      "board"
      "proof";
    gap:26px;
  }
  .hero-copy{max-width:900px}
  .system-board{
    width:100%;
    min-height:620px;
  }
  .microproof{grid-template-columns:repeat(5,1fr)}
  #site{left:5%;top:11%}
  #market{left:5%;top:40%}
  #oneC{left:5%;top:69%}
  #pay{right:5%;top:11%}
  #delivery{right:5%;top:40%}
  #stock{right:5%;top:69%}
}

/* Narrow tablet: keep a healthy moat around the center. */
@media(max-width:980px){
  .system-board{min-height:690px}
  .hub{width:184px;height:184px}
  .hub-core{width:128px;height:128px}
  .hub-core img{max-width:90px}
  .node{width:180px;min-height:92px}
  #site{left:4%;top:10%}
  #market{left:4%;top:38%}
  #oneC{left:4%;top:66%}
  #pay{right:4%;top:10%}
  #delivery{right:4%;top:38%}
  #stock{right:4%;top:66%}
  .microproof{grid-template-columns:repeat(2,1fr)}
}

/* Mobile: place nodes above and below the center, not alongside it. */
@media(max-width:820px){
  .system-board{min-height:790px}
  .hub{
    top:50%;
    width:154px;
    height:154px;
  }
  .hub-core{
    width:108px;
    height:108px;
  }
  .hub-core img{
    max-width:76px;
    max-height:34px;
  }
  .node{
    width:138px;
    min-height:78px;
    padding:9px 9px;
    gap:8px;
  }
  .node-icon{
    width:38px;
    height:38px;
    min-width:38px;
    border-radius:12px;
  }
  .node-icon img{max-width:29px;max-height:29px}
  .node-icon svg{width:18px;height:18px}
  .node b{font-size:12px;line-height:1.08}
  .node small{font-size:9px;line-height:1.2}
  .node.market b{
    font-size:11px;
    overflow-wrap:anywhere;
  }

  #site{left:4%;top:8%}
  #pay{right:4%;top:8%}
  #market{left:4%;top:28%}
  #delivery{right:4%;top:28%}
  #oneC{left:4%;top:68%}
  #stock{right:4%;top:68%}

  .board-statusbar{
    left:10px;
    right:10px;
    bottom:10px;
    font-size:10px;
  }
}

@media(max-width:420px){
  .system-board{min-height:760px}
  .node{width:128px}
  #site,#market,#oneC{left:3%}
  #pay,#delivery,#stock{right:3%}
  .hub{width:144px;height:144px}
  .hub-core{width:100px;height:100px}
}


/* v0.16 — clean brand assets + balanced responsive integration diagram */
.logo img{object-fit:contain;object-position:left center;image-rendering:auto}
.logo .logo-dark,.logo .logo-light{height:40px}

.node-icon{background:transparent!important;border-color:transparent!important;box-shadow:none!important;overflow:visible}
.node-icon img{display:block;margin:auto;object-fit:contain;object-position:center;width:auto;height:auto;max-width:48px;max-height:48px}
.hub-core img{display:block;margin:auto;object-fit:contain;object-position:center;width:auto;height:auto;max-width:108px;max-height:44px}

/* Light diagram is natively light, not a dark widget pasted into the page. */
html[data-theme="light"] .system-board{border-color:#c7d9e9;background:radial-gradient(circle at 50% 50%,rgba(0,167,190,.08),transparent 15rem),linear-gradient(rgba(35,120,195,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(35,120,195,.055) 1px,transparent 1px),#f8fbff;box-shadow:0 18px 46px rgba(31,74,117,.12)}
html[data-theme="light"] .board-title{color:#60778e}
html[data-theme="light"] .live{color:#60778e;border-color:#c8d9e8;background:#fff}
html[data-theme="light"] .node{border-color:#c5d8e8;background:rgba(255,255,255,.96);box-shadow:0 10px 25px rgba(31,74,117,.08)}
html[data-theme="light"] .node b{color:#0b1930}
html[data-theme="light"] .node small{color:#587088}
html[data-theme="light"] .hub-ring{background:radial-gradient(circle,rgba(0,167,190,.08),transparent 62%);box-shadow:inset 0 0 0 2px rgba(0,167,190,.62),0 0 28px rgba(0,167,190,.08)}
html[data-theme="light"] .hub-ring:before{border-color:rgba(21,94,231,.34)}
html[data-theme="light"] .hub-ring:after{border-color:rgba(21,94,231,.14);box-shadow:none}
html[data-theme="light"] .hub-core{border-color:#a5ccdf;background:radial-gradient(circle at 50% 38%,rgba(0,167,190,.07),#fff 72%);box-shadow:0 10px 28px rgba(31,74,117,.10)}
html[data-theme="light"] .edge{stroke:rgba(69,122,169,.52)}
html[data-theme="light"] .edge.active{stroke:#00a7be;filter:drop-shadow(0 0 5px rgba(0,167,190,.25))}
html[data-theme="light"] .packet{color:#0b1930;background:#fff;border-color:#00a7be;box-shadow:0 8px 22px rgba(0,167,190,.13)}
html[data-theme="light"] .packet-time{color:#60778e}
html[data-theme="light"] .board-statusbar{color:#5b7289;border-color:#c6d8e8;background:rgba(255,255,255,.95)}

/* Desktop/tablet: symmetrical 3 left / 3 right. */
#site{left:4%;top:13%;bottom:auto}
#market{left:4%;top:50%;bottom:auto;transform:translateY(-50%)}
#oneC{left:4%;top:auto;bottom:13%}
#pay{right:4%;top:13%;bottom:auto}
#delivery{right:4%;top:50%;bottom:auto;transform:translateY(-50%)}
#stock{right:4%;top:auto;bottom:13%}
#market.active,#delivery.active{transform:translateY(calc(-50% - 2px))}

@media(max-width:1280px){
  .hero{grid-template-columns:1fr;grid-template-areas:"intro" "board" "proof";gap:26px}
  .system-board{width:100%;min-height:620px}
  .microproof{grid-template-columns:repeat(5,1fr)}
}

@media(max-width:980px){
  .system-board{min-height:670px}
  .node{width:174px;min-height:88px}
  .hub{width:180px;height:180px}.hub-core{width:126px;height:126px}
  #site{left:3%;top:12%;bottom:auto}#market{left:3%;top:50%;bottom:auto}#oneC{left:3%;top:auto;bottom:12%}
  #pay{right:3%;top:12%;bottom:auto}#delivery{right:3%;top:50%;bottom:auto}#stock{right:3%;top:auto;bottom:12%}
  .microproof{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:820px){
  .system-board{min-height:760px}
  .node{width:138px;min-height:78px;padding:9px 9px;gap:7px}
  .node-icon{width:38px;height:38px;min-width:38px}
  .node-icon img{max-width:34px;max-height:34px}
  .node-icon svg{width:19px;height:19px}
  .node b{font-size:12px;line-height:1.08}.node small{font-size:9px;line-height:1.18}
  .node.market b{font-size:10.5px;overflow-wrap:anywhere}
  .hub{width:150px;height:150px}.hub-core{width:104px;height:104px}.hub-core img{max-width:76px;max-height:34px}
  #site{left:4%;top:9%;bottom:auto}#pay{right:4%;top:9%;bottom:auto}
  #market{left:4%;top:50%;bottom:auto;transform:translateY(-50%)}#delivery{right:4%;top:50%;bottom:auto;transform:translateY(-50%)}
  #oneC{left:4%;top:auto;bottom:11%}#stock{right:4%;top:auto;bottom:11%}
  #market.active,#delivery.active{transform:translateY(calc(-50% - 2px))}
  .board-statusbar{left:10px;right:10px;bottom:9px;font-size:10px}
  .logo .logo-dark,.logo .logo-light{height:31px}
}

@media(max-width:560px){
  .system-board{min-height:720px}
  .node{width:118px;min-height:72px;padding:8px 7px;gap:5px}
  .node-icon{width:32px;height:32px;min-width:32px}.node-icon img{max-width:29px;max-height:29px}
  .node b{font-size:10.5px}.node small{font-size:8.3px}.node.market b{font-size:9px;white-space:nowrap;letter-spacing:-.03em}
  .hub{width:126px;height:126px}.hub-core{width:88px;height:88px}.hub-core img{max-width:78px;max-height:32px}
  #site{left:2.5%;top:9%;bottom:auto}#pay{right:2.5%;top:9%;bottom:auto}
  #market{left:2.5%;top:50%;bottom:auto}#delivery{right:2.5%;top:50%;bottom:auto}
  #oneC{left:2.5%;top:auto;bottom:12%}#stock{right:2.5%;top:auto;bottom:12%}
}


/* Clean Bitrix24 center mark: no raster halo / no shifted crop. */
.b24-logo{
  display:inline-flex;
  align-items:flex-start;
  justify-content:center;
  gap:3px;
  color:#2FC7F7;
  line-height:1;
  white-space:nowrap;
}
.b24-word{
  font-weight:700;
  font-size:24px;
  letter-spacing:-.045em;
}
.b24-num{font-weight:700}
.b24-clock{
  position:relative;
  width:13px;
  height:13px;
  margin-top:-1px;
  border:2px solid currentColor;
  border-radius:50%;
  box-sizing:border-box;
}
.b24-clock:before{
  content:"";
  position:absolute;
  left:5px;
  top:2px;
  width:2px;
  height:5px;
  background:currentColor;
  border-radius:2px;
}
.b24-clock:after{
  content:"";
  position:absolute;
  left:5px;
  top:6px;
  width:4px;
  height:2px;
  background:currentColor;
  border-radius:2px;
}
html[data-theme="light"] .b24-logo{color:#168FD0}

@media(max-width:980px){
  .b24-word{font-size:22px}
  .b24-clock{width:12px;height:12px}
}
@media(max-width:560px){
  .b24-word{font-size:18px}
  .b24-clock{width:10px;height:10px;border-width:1.5px}
  .b24-clock:before{left:4px;top:2px;height:4px;width:1.5px}
  .b24-clock:after{left:4px;top:5px;width:3px;height:1.5px}
}


/* v0.17 — NetAdvice wordmark fixed as vector. */
.logo .netadvice-wordmark{
  display:block;
  width:auto;
  height:40px;
  color:#F3F8FF;
}
html[data-theme="light"] .logo .netadvice-wordmark{
  color:#0B1930;
}
.logo .logo-dark,
.logo .logo-light{display:none!important}

.node.site .node-icon{
  display:flex;
  align-items:center;
  justify-content:center;
}
.node.site .bitrix-site-mark{
  display:block;
  width:auto!important;
  height:auto!important;
  max-width:42px!important;
  max-height:42px!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}

.node.market b{
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

@media(max-width:1150px){
  .logo .netadvice-wordmark{height:34px}
}
@media(max-width:820px){
  .logo .netadvice-wordmark{height:31px}
  .node.market b{
    font-size:10px!important;
    letter-spacing:-.035em;
  }
}
@media(max-width:420px){
  .node.market b{
    font-size:9.5px!important;
    letter-spacing:-.045em;
  }
}


/* v0.18 — final wordmark vectorization and tablet geometry */
.logo .netadvice-wordmark .wordmark-main{fill:#F3F8FF}
.logo .netadvice-wordmark .wordmark-accent{fill:#22CFF3}
html[data-theme="light"] .logo .netadvice-wordmark .wordmark-main{fill:#0B1930}
html[data-theme="light"] .logo .netadvice-wordmark .wordmark-accent{fill:#0097B3}

/* Intermediate tablet / small laptop:
   preserve two-column hero, but shrink the diagram internals enough
   that service cards keep a visible moat around the Bitrix24 hub. */
@media(min-width:1281px) and (max-width:1450px){
  .hero{
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    gap:28px;
  }
  .system-board{
    min-height:570px;
  }
  .node{
    width:178px;
    min-height:90px;
    padding:13px 13px;
    gap:11px;
  }
  .node-icon{
    width:48px;
    height:48px;
    min-width:48px;
  }
  .node-icon img{
    max-width:36px!important;
    max-height:36px!important;
  }
  .hub{
    width:184px;
    height:184px;
  }
  .hub-core{
    width:126px;
    height:126px;
  }
  #site,#market,#oneC{left:3%}
  #pay,#delivery,#stock{right:3%}
  .node.market b{
    font-size:11px!important;
    letter-spacing:-.025em;
  }
}


/* v0.20 — second screen content update without changing the established layout system */
.route-context-note{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:16px;
  padding:12px 15px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--surface);
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}
.route-context-note span{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 12px color-mix(in srgb,var(--cyan) 70%,transparent);
}
#routes .route-card h3{
  min-height:52px;
}
#routes .route-card p{
  min-height:88px;
}
#routes .price-sub{
  min-height:34px;
}
@media(max-width:1180px){
  #routes .route-card h3,
  #routes .route-card p,
  #routes .price-sub{min-height:0}
}


/* v0.21 — approved trust-strip copy */
@media(min-width:1151px){
  .microproof .proof-item{min-height:122px}
  .microproof .proof-text{min-width:0}
  .microproof .proof-text span{max-width:190px}
}


/* v0.22 — tablet hero width + Marketplace label fix */

/* When hero is already stacked into one column, remove desktop text-column limits.
   This uses the available tablet width instead of leaving an artificial empty area. */
@media (min-width:821px) and (max-width:1280px){
  .hero-copy{
    width:100%;
    max-width:none!important;
  }
  .hero-copy h1{
    width:100%;
    max-width:none!important;
  }
  .hero-copy .lead,
  .hero-copy > p{
    width:100%;
    max-width:none!important;
  }

  /* Marketplace: tablet cards have less text width than desktop.
     Keep the title on one line and scale only this label. */
  .node.market .node-copy,
  .node.market > div:last-child{
    min-width:0;
  }
  .node.market b{
    display:block;
    max-width:100%;
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
    font-size:10px!important;
    letter-spacing:-.045em!important;
    line-height:1.1!important;
  }
}

/* Narrow tablet gets a little more breathing room inside the Marketplace card,
   while the already accepted mobile composition below 820px remains untouched. */
@media (min-width:821px) and (max-width:1024px){
  .node.market{
    padding-left:10px!important;
    padding-right:10px!important;
    gap:8px!important;
  }
  .node.market .node-icon{
    flex:0 0 auto;
  }
  .node.market b{
    font-size:9.5px!important;
    letter-spacing:-.055em!important;
  }
}


/* v0.23 — third screen: free diagnostic report and routing */
.report-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:42px;
  align-items:start;
}
.report-intro{
  position:sticky;
  top:110px;
}
.report-intro h2{
  max-width:720px;
}
.report-intro .intro{
  max-width:700px;
}
.report-highlight{
  display:flex;
  align-items:center;
  gap:15px;
  margin-top:28px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(180deg,var(--card),var(--card2));
}
.report-highlight-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:15px;
  background:var(--panel);
  color:var(--cyan);
}
.report-highlight strong{
  display:block;
  margin-bottom:5px;
  font-size:18px;
  color:var(--text);
}
.report-highlight span{
  display:block;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}
.report-main-cta{
  margin-top:22px;
}
.report-routes{
  display:grid;
  gap:14px;
}
.report-route{
  position:relative;
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  gap:15px;
  align-items:start;
  padding:20px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(180deg,var(--card),var(--card2));
  overflow:hidden;
}
.report-route:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 92% 8%,rgba(47,199,247,.09),transparent 32%);
  pointer-events:none;
}
.report-route-num{
  position:relative;
  z-index:1;
  min-width:28px;
  padding-top:8px;
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
}
.report-route-icon{
  position:relative;
  z-index:1;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:13px;
  color:var(--cyan);
  background:var(--panel);
}
.report-route-copy{
  position:relative;
  z-index:1;
}
.report-route-copy h3{
  margin:0 0 8px;
  font-size:20px;
  line-height:1.2;
}
.report-route-copy p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.55;
}
.report-route-meta{
  display:block;
  margin-top:12px;
  color:var(--cyan);
  font-size:11px;
  font-weight:700;
  line-height:1.35;
}

html[data-theme="light"] .report-route,
html[data-theme="light"] .report-highlight{
  box-shadow:0 16px 40px rgba(31,74,117,.06);
}

@media(max-width:1100px){
  .report-layout{
    grid-template-columns:1fr;
    gap:28px;
  }
  .report-intro{
    position:static;
  }
}
@media(max-width:620px){
  .report-route{
    grid-template-columns:auto minmax(0,1fr);
  }
  .report-route-num{
    grid-column:1;
    grid-row:1;
  }
  .report-route-icon{
    grid-column:1;
    grid-row:2;
  }
  .report-route-copy{
    grid-column:2;
    grid-row:1 / span 2;
  }
}


/* v0.24 — tablet report width + PDF mark */

/* Tablet: third screen becomes a true full-width single-column block.
   Remove desktop text-width limits to avoid unnecessary line wrapping. */
@media (min-width:821px) and (max-width:1280px){
  .report-layout{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .report-intro{
    position:static!important;
    width:100%;
    max-width:none!important;
  }
  .report-intro h2,
  .report-intro .intro{
    width:100%;
    max-width:none!important;
  }
  .report-highlight{
    max-width:none!important;
  }
}

/* Recognizable PDF document mark for the personalized report. */
.pdf-highlight-icon{
  color:#fff!important;
  background:transparent!important;
  border:0!important;
}
.pdf-mark{
  position:relative;
  display:grid;
  place-items:center;
  width:42px;
  height:50px;
  padding-top:7px;
  box-sizing:border-box;
  border-radius:5px 5px 7px 7px;
  background:#D83B35;
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.02em;
  line-height:1;
  box-shadow:0 8px 20px rgba(216,59,53,.18);
}
.pdf-mark:before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:13px;
  height:13px;
  background:linear-gradient(225deg,var(--panel) 49%,rgba(255,255,255,.72) 50%,rgba(255,255,255,.72) 100%);
  border-radius:0 4px 0 3px;
}
.pdf-mark:after{
  content:"";
  position:absolute;
  left:7px;
  right:7px;
  bottom:8px;
  height:2px;
  border-radius:2px;
  background:rgba(255,255,255,.82);
  box-shadow:0 -5px 0 rgba(255,255,255,.62);
}


/* v0.27 — cleaned contour PDF icon + correct report block order */
.pdf-highlight-icon{
  width:auto!important;
  height:auto!important;
  flex:0 0 auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.pdf-user-icon{
  display:block;
  width:auto;
  height:56px;
  max-width:none;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(16,45,78,.12));
}

/* Base (desktop) order must remain exactly logical as in v0.24 */
.report-intro{
  display:flex;
  flex-direction:column;
}
.report-intro .kicker{order:1}
.report-intro h2{order:2}
.report-intro .report-subtitle{order:3}
.report-intro .report-highlight{order:4}
.report-intro .report-main-cta{order:5}

/* Preserve good tablet full-width layout from v0.24. */
@media (min-width:821px) and (max-width:1280px){
  .report-layout{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .report-intro{
    position:static!important;
    width:100%;
    max-width:none!important;
  }
  .report-intro h2,
  .report-intro .report-subtitle,
  .report-highlight{
    width:100%;
    max-width:none!important;
  }
}

/* Tablet and mobile only: title -> PDF block -> CTA -> subtitle */
@media (max-width:1280px){
  .report-intro .report-highlight{order:3}
  .report-intro .report-main-cta{order:4}
  .report-intro .report-subtitle{order:5; margin-top:18px}
}

@media (max-width:620px){
  .pdf-user-icon{height:50px}
}


/* v0.29 — cleaner user PDF icon */
.pdf-user-icon{
  image-rendering:auto;
}


/* v0.30 — replace broken raster PDF icon with a clean vector icon */
.pdf-clean-icon{
  display:block;
  width:auto;
  height:56px;
  max-width:none;
  overflow:visible;
  filter:drop-shadow(0 8px 18px rgba(16,45,78,.12));
}
@media (max-width:620px){
  .pdf-clean-icon{height:50px}
}


/* v0.31 — user-provided PDF icon cut only by outer contour */
.pdf-user-icon{
  display:block;
  width:auto;
  height:56px;
  max-width:none;
  object-fit:contain;
  image-rendering:auto;
  filter:drop-shadow(0 8px 18px rgba(16,45,78,.10));
}
@media (max-width:620px){
  .pdf-user-icon{height:50px}
}


/* v0.32 — fourth screen: three implementation formats */
#technical .tech-card{
  display:flex;
  flex-direction:column;
}
#technical .tech-card h3{
  margin-bottom:10px;
}
#technical .tech-thesis{
  margin:0 0 10px;
  color:var(--text);
  font-weight:700;
  line-height:1.45;
}
#technical .tech-card > p:not(.tech-thesis){
  margin-top:0;
}
#technical .facts{
  margin-top:auto;
}
#technical .tech-card .btn{
  margin-top:18px;
}
.technical-note{
  margin-top:18px;
  padding:13px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel);
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}
.technical-note a{
  color:var(--cyan);
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid color-mix(in srgb,var(--cyan) 45%,transparent);
}
.technical-note a:hover{
  border-bottom-color:var(--cyan);
}
@media(max-width:1100px){
  #technical .tech-card{
    min-height:0;
  }
}


/* v0.33 — viewport-aware semantic screens */
:root{
  --header-height:76px;
  --viewport-height:100dvh;
}

/* First screen follows the same viewport rule as the semantic sections.
   min-height, not height: content is never clipped if it needs more room. */
.hero{
  min-height:calc(var(--viewport-height, 100dvh) - var(--header-height, 76px));
}

/* Keep anchors clear of the sticky header using its real measured height. */
section[id]{
  scroll-margin-top:var(--header-height, 76px);
}

/* On large screens, a semantic section visually occupies one available viewport.
   If content is taller, min-height allows natural page growth. */
@media (min-width:821px){
  .focus-screen{
    min-height:calc(var(--viewport-height, 100dvh) - var(--header-height, 76px));
  }
}

/* Soft snapping only on genuinely large viewports.
   "proximity" avoids trapping the user inside sections taller than the screen. */
@media (min-width:1281px) and (min-height:720px){
  html{
    scroll-snap-type:y proximity;
    scroll-padding-top:var(--header-height, 76px);
  }
  .hero,
  .focus-screen{
    scroll-snap-align:start;
    scroll-snap-stop:normal;
  }
}

/* Phones keep the natural document flow. */
@media (max-width:820px){
  .hero{
    min-height:auto;
  }
  html{
    scroll-snap-type:none;
  }
}


/* v0.34 — exact anchor alignment under sticky header */

/* One offset source only:
   the scrollport accounts for the sticky header,
   targets themselves add no extra margin. */
html{
  scroll-padding-top:var(--header-height, 76px);
}
section[id]{
  scroll-margin-top:0!important;
}

/* Keep soft snap using the same single offset. */
@media (min-width:1281px) and (min-height:720px){
  html{
    scroll-padding-top:var(--header-height, 76px);
  }
}


/* v0.35 — sites screen: ready-made solution + three Start packages */

.sites-screen .intro{
  max-width:1120px;
}

.ready-site-card{
  margin-top:20px;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr) minmax(280px,.8fr);
  gap:22px 30px;
  align-items:center;
  padding:20px 24px;
  border:1px solid color-mix(in srgb,var(--cyan) 40%,var(--line));
  border-radius:22px;
  background:
    radial-gradient(circle at 89% 14%,color-mix(in srgb,var(--cyan) 10%,transparent),transparent 13rem),
    var(--surface);
  box-shadow:var(--soft);
}
.ready-site-main h3{
  margin:5px 0 7px;
  font-size:22px;
}
.ready-site-main p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}
.site-option-label{
  color:var(--cyan);
  font-size:10px;
  line-height:1.25;
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.ready-site-price{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.site-price{
  font-size:30px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.035em;
}
.site-price-caption{
  margin-top:5px;
  color:var(--muted);
  font-size:11px;
}
.site-price-secondary{
  margin-top:11px;
  padding-top:10px;
  border-top:1px solid var(--line);
  color:var(--text);
  font-size:11px;
  line-height:1.35;
  font-weight:750;
}
.ready-site-actions{
  display:flex;
  flex-direction:column;
  gap:13px;
}
.ready-site-actions .btn{
  width:100%;
}
.site-mini-list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:6px;
  color:var(--muted);
  font-size:11px;
  line-height:1.35;
}
.site-mini-list li{
  display:flex;
  gap:7px;
  align-items:flex-start;
}
.site-mini-list li:before{
  content:"✓";
  flex:0 0 auto;
  color:var(--green);
  font-weight:900;
}
.ready-site-note{
  grid-column:1/-1;
  margin-top:-8px;
  padding-top:11px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:10px;
  line-height:1.4;
}

.sites-start-grid{
  margin-top:17px;
}
.site-start-card{
  padding:20px 22px;
}
.site-start-card .start-name{
  margin-top:5px;
}
.site-start-card .site-card-purpose{
  min-height:42px;
  margin:9px 0 9px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}
.site-start-card .start-price{
  margin:2px 0 1px;
  font-size:29px;
}
.site-start-card .start-time{
  margin-bottom:12px;
}
.site-start-card .site-mini-list{
  margin:0 0 2px;
}
.site-start-card .package-cta{
  margin-top:auto;
  padding-top:11px;
  padding-bottom:11px;
}

.sites-common-note{
  margin-top:14px;
  padding:11px 15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel);
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
  text-align:center;
}
.sites-common-note strong{
  color:var(--text);
}
.sites-common-note span{
  display:block;
  margin-top:3px;
}

/* Medium widths: keep the ready solution visually separate,
   but allow its CTA to breathe. */
@media (min-width:821px) and (max-width:1180px){
  .ready-site-card{
    grid-template-columns:minmax(0,1.2fr) minmax(210px,.7fr);
  }
  .ready-site-actions{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
  }
  .ready-site-actions .btn{
    width:auto;
  }
  .ready-site-note{
    margin-top:-2px;
  }
}

/* Tablet: packages may stack naturally; viewport min-height remains handled globally. */
@media (max-width:820px){
  .ready-site-card{
    grid-template-columns:1fr;
    gap:16px;
    padding:20px;
  }
  .ready-site-actions{
    display:flex;
  }
  .ready-site-note{
    grid-column:auto;
    margin-top:0;
  }
  .sites-start-grid{
    grid-template-columns:1fr;
  }
  .site-start-card .site-card-purpose{
    min-height:auto;
  }
}



/* v0.38 — unified typography system
   Change the variables below to update the same text role across the whole site. */
:root{
  --type-section-label:12px;
  --type-subtitle:19px;
  --type-card-title:22px;
  --type-card-body:15px;
  --type-meta:13px;
  --type-note:13px;
  --type-button:15px;

  --line-subtitle:1.66;
  --line-card-body:1.58;
  --line-meta:1.45;
  --line-note:1.5;
}

/* ===== 1. Section labels / eyebrows ===== */
.eyebrow,
.kicker,
.smallcaps,
.site-option-label,
.support-tier,
.case-tag,
.flow-no{
  font-size:var(--type-section-label)!important;
}

/* ===== 2. Main subtitles / section introductions ===== */
.lead,
.intro{
  font-size:var(--type-subtitle)!important;
  line-height:var(--line-subtitle)!important;
}

/* ===== 3. Card titles ===== */
.route-card h3,
.report-route-copy h3,
.tech-card h3,
.ready-site-main h3,
.site-start-card .start-name,
.case-card h3,
.flow-step h3{
  font-size:var(--type-card-title)!important;
  line-height:1.24!important;
}

/* ===== 4. Main descriptive text inside cards ===== */
.route-card p,
.report-route-copy p,
.result-card p,
.tech-card p,
.ready-site-main p,
.site-start-card .site-card-purpose,
.case-card p,
.flow-step p,
.principle p,
.rule p,
.footer-brand p{
  font-size:var(--type-card-body)!important;
  line-height:var(--line-card-body)!important;
}

/* ===== 5. Meta / secondary information ===== */
.price-sub,
.report-highlight span,
.report-route-meta,
.fact,
.start-time,
.site-price-caption,
.site-price-secondary,
.site-mini-list,
.checklist,
.metric span,
.diag-timeline,
.diag-item span,
.formula-row,
.process-step small,
.case-node,
.contact-row,
.footer,
.footer-col a,
.footer-note,
.proof-text span{
  font-size:var(--type-meta)!important;
  line-height:var(--line-meta)!important;
}

/* ===== 6. Footnotes / explanatory strips ===== */
.route-context-note,
.screen-footer-note,
.technical-note,
.ready-site-note,
.sites-common-note,
.formula-note,
.contact-note,
.support-footnote,
.exclusion{
  font-size:var(--type-note)!important;
  line-height:var(--line-note)!important;
}

/* ===== 7. Buttons ===== */
.btn{
  font-size:var(--type-button)!important;
}

/* ===== 8. Small but meaningful labels ===== */
.proof-text b,
.diag-item b,
.process-step b,
.rule b,
.principle b{
  font-size:var(--type-meta)!important;
  line-height:1.4!important;
}

/* ===== Sites screen spacing ===== */
.sites-start-grid{
  margin-top:28px!important;
}
.site-start-card .site-mini-list{
  margin-bottom:20px!important;
}
.site-start-card .package-cta{
  margin-top:auto!important;
}

/* Tablet/mobile: same roles, only the variables change. */
@media(max-width:820px){
  :root{
    --type-section-label:11px;
    --type-subtitle:18px;
    --type-card-title:21px;
    --type-card-body:14px;
    --type-meta:12px;
    --type-note:12px;
    --type-button:15px;
  }
}


/* v0.39 — definitive responsive layout for hero trust strip
   This intentionally comes last to override older duplicated media rules. */

/* Medium tablet / narrow desktop: 3 items + 2 balanced items */
@media (min-width:981px) and (max-width:1150px){
  .microproof{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:1px!important;
    background:var(--line)!important;
  }
  .microproof .proof-item{
    grid-column:span 2;
    min-width:0;
    background:var(--surface);
  }
  .microproof .proof-item:nth-child(4),
  .microproof .proof-item:nth-child(5){
    grid-column:span 3;
  }
  .microproof .proof-item:after{
    display:none!important;
  }
}

/* Narrow tablet: 2 + 2 + final full-width benefit */
@media (min-width:821px) and (max-width:980px){
  .microproof{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:1px!important;
    background:var(--line)!important;
  }
  .microproof .proof-item{
    min-width:0;
    background:var(--surface);
  }
  .microproof .proof-item:last-child{
    grid-column:1 / -1;
  }
  .microproof .proof-item:after{
    display:none!important;
  }
}

/* Mobile: keep the accepted single-column layout, but neutralize old dividers. */
@media (max-width:820px){
  .microproof{
    grid-template-columns:1fr!important;
  }
  .microproof .proof-item:after{
    display:none!important;
  }
}


/* v0.40 — semantic Start headings + accepted Support screen */

/* Start package names are real H3 and use the same card-title hierarchy */
.site-start-card h3.start-name{
  margin:6px 0 10px!important;
  color:var(--text)!important;
  font-size:var(--type-card-title)!important;
  line-height:1.24!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}

/* Support cards */
.support-card-v2{
  display:flex;
  flex-direction:column;
}
.support-name{
  margin:0 0 7px;
  color:var(--text);
  font-size:var(--type-card-title);
  line-height:1.24;
  font-weight:800;
  letter-spacing:-.02em;
}
.support-purpose{
  min-height:44px;
  margin:0 0 10px;
  color:var(--muted);
  font-size:var(--type-card-body);
  line-height:var(--line-card-body);
}
.support-card-v2 .support-price{
  margin:4px 0 16px;
}
.support-metrics-v2{
  margin-bottom:20px;
}
.support-metrics-v2 .metric{
  min-width:0;
}
.support-metrics-v2 .metric b{
  font-size:17px;
  white-space:nowrap;
}
.support-metrics-v2 .metric span{
  font-size:var(--type-meta)!important;
  line-height:1.35!important;
}
.support-card-v2 .btn{
  margin-top:auto;
}

/* Compact conditions strip */
.support-conditions{
  margin-top:18px;
  display:grid;
  grid-template-columns:.8fr 1.6fr 1fr 1.05fr;
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:var(--surface);
}
.support-condition{
  min-width:0;
  padding:13px 15px;
}
.support-condition + .support-condition{
  border-left:1px solid var(--line);
}
.support-condition b{
  display:block;
  margin-bottom:4px;
  color:var(--text);
  font-size:var(--type-meta);
  line-height:1.35;
}
.support-condition span{
  display:block;
  color:var(--muted);
  font-size:var(--type-note);
  line-height:var(--line-note);
}
.support-footnote{
  margin-top:10px;
  text-align:center;
}
.support-footnote strong{
  color:var(--text);
}

@media (min-width:821px) and (max-width:1180px){
  .support-conditions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .support-condition + .support-condition{
    border-left:0;
  }
  .support-condition:nth-child(even){
    border-left:1px solid var(--line);
  }
  .support-condition:nth-child(n+3){
    border-top:1px solid var(--line);
  }
}

@media (max-width:820px){
  .support-purpose{
    min-height:auto;
  }
  .support-conditions{
    grid-template-columns:1fr;
  }
  .support-condition + .support-condition,
  .support-condition:nth-child(even),
  .support-condition:nth-child(n+3){
    border-left:0;
    border-top:1px solid var(--line);
  }
}


/* v0.41 — tablet-safe support metrics */

/* Narrow desktop / tablet: don't squeeze 3 metric boxes into one row */
@media (min-width:821px) and (max-width:1100px){
  .support-card-v2{
    padding-left:20px;
    padding-right:20px;
  }

  .support-metrics-v2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .support-metrics-v2 .metric{
    min-width:0!important;
    padding:10px 8px!important;
    overflow:hidden;
  }

  .support-metrics-v2 .metric:nth-child(3){
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:12px;
    text-align:left;
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .support-metrics-v2 .metric b{
    white-space:normal!important;
  }

  .support-metrics-v2 .metric:nth-child(3) span{
    margin-top:0!important;
    text-align:right;
  }
}


/* v0.42 — support metrics breakpoint corrected for the full tablet/narrow-desktop range */

/* Up to 1280px the three tariff cards are still too narrow
   for three metric cells with readable typography. */
@media (min-width:821px) and (max-width:1280px){
  .support-card-v2{
    padding-left:20px!important;
    padding-right:20px!important;
  }

  .support-metrics-v2{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .support-metrics-v2 .metric{
    min-width:0!important;
    width:auto!important;
    padding:10px 9px!important;
    overflow:hidden!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }

  .support-metrics-v2 .metric:nth-child(3){
    grid-column:1 / -1!important;
    display:grid!important;
    grid-template-columns:minmax(90px,auto) minmax(0,1fr)!important;
    align-items:center!important;
    gap:12px!important;
    text-align:left!important;
    padding:10px 14px!important;
  }

  .support-metrics-v2 .metric b{
    white-space:normal!important;
    min-width:0!important;
  }

  .support-metrics-v2 .metric span{
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }

  .support-metrics-v2 .metric:nth-child(3) span{
    margin-top:0!important;
    text-align:right!important;
  }
}

/* Wide desktop: return to the compact 3-column metrics layout. */
@media (min-width:1281px){
  .support-metrics-v2{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .support-metrics-v2 .metric:nth-child(3){
    grid-column:auto!important;
    display:block!important;
    text-align:center!important;
  }
  .support-metrics-v2 .metric:nth-child(3) span{
    text-align:center!important;
  }
}


/* v0.43 — Engineering Diagnostic screen v2 */

.diagnostic-intro{
  max-width:1120px!important;
}
.diagnostic-intro strong{
  color:var(--text);
  font-weight:800;
}

.diagnostic-layout-v2{
  display:grid;
  grid-template-columns:minmax(280px,.78fr) minmax(0,1.62fr);
  gap:18px;
  align-items:stretch;
  margin-top:2px;
}

.diagnostic-commercial,
.diagnostic-result{
  border:1px solid var(--line);
  border-radius:22px;
  background:var(--surface);
  box-shadow:var(--soft);
}

.diagnostic-commercial{
  display:flex;
  flex-direction:column;
  padding:24px;
  border-color:color-mix(in srgb,var(--cyan) 42%,var(--line));
  background:
    radial-gradient(circle at 84% 8%,color-mix(in srgb,var(--cyan) 10%,transparent),transparent 13rem),
    var(--surface);
}

.diagnostic-price-v2{
  color:var(--text);
  font-size:38px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.04em;
}
.diagnostic-price-caption{
  margin-top:7px;
  color:var(--muted);
  font-size:var(--type-meta);
  line-height:var(--line-meta);
}

.diagnostic-commercial-block{
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid var(--line);
}
.diagnostic-commercial-label{
  display:block;
  margin-bottom:5px;
  color:var(--cyan);
  font-size:var(--type-section-label);
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.diagnostic-commercial-block strong{
  display:block;
  color:var(--text);
  font-size:17px;
  line-height:1.35;
}
.diagnostic-commercial-block > span:last-child{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:var(--type-meta);
  line-height:var(--line-meta);
}
.diagnostic-cta{
  width:100%;
  margin-top:auto;
}

.diagnostic-result{
  padding:20px 22px;
}
.diagnostic-result-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding-bottom:13px;
  border-bottom:1px solid var(--line);
}
.diagnostic-result-head p{
  max-width:540px;
  margin:0;
  color:var(--muted);
  text-align:right;
  font-size:var(--type-meta);
  line-height:var(--line-meta);
}

.diagnostic-result-list{
  display:grid;
}
.diagnostic-result-item{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:11px 0;
}
.diagnostic-result-item + .diagnostic-result-item{
  border-top:1px solid var(--line);
}
.diagnostic-result-num{
  color:var(--cyan);
  font-size:var(--type-section-label);
  font-weight:900;
  letter-spacing:.08em;
}
.diagnostic-result-item h3{
  margin:0 0 3px;
  color:var(--text);
  font-size:17px;
  line-height:1.3;
}
.diagnostic-result-item p{
  margin:0;
  color:var(--muted);
  font-size:var(--type-card-body);
  line-height:1.48;
}

.diagnostic-notes-v2{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:16px;
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:var(--panel);
}
.diagnostic-note-v2{
  min-width:0;
  padding:13px 16px;
}
.diagnostic-note-v2 + .diagnostic-note-v2{
  border-left:1px solid var(--line);
}
.diagnostic-note-v2 b{
  display:block;
  margin-bottom:4px;
  color:var(--text);
  font-size:var(--type-meta);
  line-height:1.35;
}
.diagnostic-note-v2 span{
  display:block;
  color:var(--muted);
  font-size:var(--type-note);
  line-height:var(--line-note);
}

/* Tablet: preserve the hierarchy, but avoid squeezing the results column. */
@media (min-width:821px) and (max-width:1180px){
  .diagnostic-layout-v2{
    grid-template-columns:1fr;
  }
  .diagnostic-commercial{
    display:grid;
    grid-template-columns:1.05fr 1fr 1fr;
    gap:18px;
    align-items:end;
  }
  .diagnostic-commercial-block{
    margin-top:0;
    padding-top:0;
    padding-left:18px;
    border-top:0;
    border-left:1px solid var(--line);
  }
  .diagnostic-cta{
    grid-column:1/-1;
    margin-top:0;
  }
  .diagnostic-result-item{
    grid-template-columns:38px minmax(0,1fr);
  }
  .diagnostic-notes-v2{
    grid-template-columns:1fr;
  }
  .diagnostic-note-v2 + .diagnostic-note-v2{
    border-left:0;
    border-top:1px solid var(--line);
  }
}

/* Mobile: natural stacked flow */
@media (max-width:820px){
  .diagnostic-layout-v2{
    grid-template-columns:1fr;
  }
  .diagnostic-commercial{
    padding:20px;
  }
  .diagnostic-price-v2{
    font-size:34px;
  }
  .diagnostic-result{
    padding:18px;
  }
  .diagnostic-result-head{
    display:block;
  }
  .diagnostic-result-head p{
    margin-top:7px;
    text-align:left;
  }
  .diagnostic-result-item{
    grid-template-columns:34px minmax(0,1fr);
    padding:12px 0;
  }
  .diagnostic-result-item h3{
    font-size:16px;
  }
  .diagnostic-notes-v2{
    grid-template-columns:1fr;
  }
  .diagnostic-note-v2 + .diagnostic-note-v2{
    border-left:0;
    border-top:1px solid var(--line);
  }
}


/* v0.44 — diagnostic screen text/cross-device fixes */

.diagnostic-intro-emphasis{
  display:block;
  margin-top:12px;
  color:var(--text);
  font-weight:800;
}

.diagnostic-price-group{
  display:block;
}

/* Tablet: rebuild the commercial card into a stable 2-column layout */
@media (min-width:821px) and (max-width:1180px){
  .diagnostic-commercial{
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(250px,.9fr)!important;
    gap:18px 22px!important;
    align-items:start!important;
  }

  .diagnostic-price-group{
    grid-column:1;
    grid-row:1;
  }

  .diagnostic-commercial > .diagnostic-commercial-block:nth-child(2){
    grid-column:2;
    grid-row:1;
    margin-top:0!important;
    padding-top:0!important;
    padding-left:18px!important;
    border-top:0!important;
    border-left:1px solid var(--line)!important;
  }

  .diagnostic-commercial > .diagnostic-commercial-block:nth-child(3){
    grid-column:1 / -1;
    grid-row:2;
    margin-top:0!important;
  }

  .diagnostic-cta{
    grid-column:1 / -1;
    grid-row:3;
    margin-top:2px!important;
  }
}

/* Mobile: separate CTA more clearly from the preceding text */
@media (max-width:820px){
  .diagnostic-cta{
    margin-top:18px!important;
  }
}


/* v0.45 — balanced diagnostic commercial summary */

.diagnostic-commercial-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  flex:1 1 auto;
}

.diagnostic-summary-item{
  min-width:0;
  padding:0 0 16px;
}

.diagnostic-summary-item + .diagnostic-summary-item{
  padding-top:16px;
  border-top:1px solid var(--line);
}

.diagnostic-price-group .diagnostic-commercial-label{
  margin-bottom:7px;
}

.diagnostic-price-group .diagnostic-price-caption{
  margin-top:7px;
}

.diagnostic-commercial .diagnostic-cta{
  margin-top:20px!important;
}

/* Tablet + normal mobile: balanced 2 × 2 summary */
@media (min-width:521px) and (max-width:1180px){
  .diagnostic-commercial{
    display:block!important;
  }

  .diagnostic-commercial-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
    border:1px solid var(--line);
    border-radius:16px;
    overflow:hidden;
  }

  .diagnostic-summary-item{
    min-height:138px;
    padding:16px 18px!important;
    border:0!important;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
  }

  .diagnostic-summary-item:nth-child(even){
    border-left:1px solid var(--line)!important;
  }

  .diagnostic-summary-item:nth-child(n+3){
    border-top:1px solid var(--line)!important;
  }

  .diagnostic-commercial .diagnostic-cta{
    margin-top:20px!important;
    width:100%;
  }
}

/* Very narrow phones: one clean vertical stack */
@media (max-width:520px){
  .diagnostic-commercial-grid{
    grid-template-columns:1fr!important;
  }

  .diagnostic-summary-item{
    min-height:auto;
    padding:0 0 16px!important;
  }

  .diagnostic-summary-item + .diagnostic-summary-item{
    padding-top:16px!important;
    border-top:1px solid var(--line)!important;
  }

  .diagnostic-commercial .diagnostic-cta{
    margin-top:22px!important;
  }
}


/* v0.46 — remove duplicated result explanation */
.diagnostic-result-head{
  display:block!important;
}


/* v0.47 — accepted process screen */
@media (min-width:1151px){
  .process-line::after{
    content:"";
    position:absolute;
    right:-1px;
    top:50%;
    width:9px;
    height:9px;
    border-top:2px solid color-mix(in srgb,var(--cyan) 65%,transparent);
    border-right:2px solid color-mix(in srgb,var(--cyan) 65%,transparent);
    transform:translateY(-50%) rotate(45deg);
  }
}


/* v0.48 — final CTA + task modal */

.final-contact-v2{
  max-width:1180px;
}
.final-contact-intro{
  max-width:1060px;
}

.contact-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:8px;
}

.contact-choice-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:24px;
  border:1px solid var(--line);
  border-radius:22px;
  background:var(--surface);
  box-shadow:var(--soft);
}

.contact-choice-primary{
  border-color:color-mix(in srgb,var(--cyan) 42%,var(--line));
  background:
    radial-gradient(circle at 88% 10%,color-mix(in srgb,var(--cyan) 11%,transparent),transparent 14rem),
    var(--surface);
}

.contact-choice-label{
  margin-bottom:10px;
  color:var(--cyan);
  font-size:var(--type-section-label);
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.contact-choice-card h3{
  margin:0 0 10px;
  color:var(--text);
  font-size:var(--type-card-title);
  line-height:1.24;
}

.contact-choice-card > p{
  margin:0;
  color:var(--muted);
  font-size:var(--type-card-body);
  line-height:var(--line-card-body);
}

.contact-choice-accent{
  margin:20px 0;
  padding:15px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface2);
}

.contact-choice-accent strong{
  display:block;
  color:var(--text);
  font-size:17px;
  line-height:1.35;
}

.contact-choice-accent span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:var(--type-meta);
  line-height:var(--line-meta);
}

.contact-choice-card .btn{
  width:100%;
  margin-top:auto;
}

.final-contact-note{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  flex-wrap:wrap;
  margin-top:18px;
  padding:13px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  color:var(--muted);
  background:var(--panel);
  text-align:center;
  font-size:var(--type-note);
  line-height:var(--line-note);
}

.final-contact-note b{
  color:var(--text);
}

/* Modal */
.task-modal{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  transition:opacity .18s ease,visibility .18s ease;
}

.task-modal.is-open{
  opacity:1;
  visibility:visible;
}

.task-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,9,18,.78);
  backdrop-filter:blur(8px);
}

.task-modal-dialog{
  position:relative;
  z-index:1;
  width:min(720px,100%);
  max-height:min(860px,calc(100dvh - 40px));
  overflow:auto;
  padding:28px;
  border:1px solid color-mix(in srgb,var(--cyan) 28%,var(--line));
  border-radius:24px;
  background:var(--surface);
  box-shadow:0 28px 80px rgba(0,0,0,.35);
}

.task-modal-dialog h2{
  margin-bottom:10px;
  font-size:clamp(30px,4vw,46px);
}

.task-modal-intro{
  margin:0 46px 22px 0;
  color:var(--muted);
  font-size:var(--type-card-body);
  line-height:var(--line-card-body);
}

.task-modal-close{
  position:absolute;
  top:16px;
  right:16px;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid var(--line);
  border-radius:11px;
  color:var(--text);
  background:var(--surface2);
  font:inherit;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}

.task-modal-close:hover{
  border-color:color-mix(in srgb,var(--cyan) 50%,var(--line));
}

.task-form{
  display:grid;
  gap:15px;
}

.task-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.task-field{
  display:grid;
  gap:7px;
}

.task-field > span{
  color:var(--text);
  font-size:var(--type-meta);
  font-weight:750;
}

.task-field > span b{
  color:var(--cyan);
}

.task-field input,
.task-field textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:12px;
  outline:0;
  padding:12px 13px;
  color:var(--text);
  background:var(--surface2);
  font:inherit;
  font-size:var(--type-card-body);
  line-height:1.45;
  resize:vertical;
}

.task-field input:focus,
.task-field textarea:focus{
  border-color:color-mix(in srgb,var(--cyan) 66%,var(--line));
  box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 12%,transparent);
}

.task-field input::placeholder,
.task-field textarea::placeholder{
  color:color-mix(in srgb,var(--muted) 72%,transparent);
}

.task-form-security{
  padding:11px 13px;
  border:1px solid var(--line);
  border-radius:11px;
  color:var(--muted);
  background:var(--panel);
  font-size:var(--type-note);
  line-height:var(--line-note);
}

.task-form-actions{
  display:flex;
  align-items:center;
  gap:13px;
  flex-wrap:wrap;
}

.task-form-hint{
  color:var(--muted);
  font-size:var(--type-note);
  line-height:var(--line-note);
}

.task-form-status{
  display:none;
  padding:11px 13px;
  border:1px solid color-mix(in srgb,var(--cyan) 36%,var(--line));
  border-radius:11px;
  color:var(--text);
  background:color-mix(in srgb,var(--cyan) 7%,var(--surface2));
  font-size:var(--type-note);
  line-height:var(--line-note);
}

.task-form-status.is-visible{
  display:block;
}

body.modal-open{
  overflow:hidden;
}

@media (max-width:820px){
  .contact-choice-grid{
    grid-template-columns:1fr;
  }

  .contact-choice-card{
    padding:20px;
  }

  .final-contact-note{
    display:block;
    text-align:left;
  }

  .final-contact-note span{
    display:block;
    margin-top:3px;
  }

  .task-modal{
    align-items:end;
    padding:10px;
  }

  .task-modal-dialog{
    width:100%;
    max-height:calc(100dvh - 20px);
    padding:22px 18px;
    border-radius:20px;
  }

  .task-modal-dialog h2{
    padding-right:34px;
  }

  .task-modal-intro{
    margin-right:0;
  }

  .task-form-grid{
    grid-template-columns:1fr;
  }

  .task-form-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .task-form-actions .btn{
    width:100%;
  }
}


/* v0.50 — simplified production-oriented footer */
.footer-link-button{
  display:block;
  width:max-content;
  max-width:100%;
  padding:0;
  border:0;
  color:var(--muted);
  background:none;
  font:inherit;
  font-size:var(--type-meta);
  line-height:var(--line-meta);
  text-align:left;
  cursor:pointer;
}
.footer-link-button:hover{
  color:var(--text);
}

/* End */


/* Start:/local/templates/netadvice/assets/css/main.css?1790278212890*/
/* Homepage v0.52 CSS is carried in template_styles.css to preserve approved cascade order. */
/* Form controls extend the accepted modal pattern. */
.task-form-fields { border: 0; padding: 0; margin: 0; min-width: 0; display: grid; gap: 16px; }
.task-form-fields .task-field { align-content: start; }
.task-field select { width: 100%; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); color: var(--text); font: inherit; }
.task-field select option { background: var(--bg); color: var(--text); }
.task-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; }
.task-consent input { flex: 0 0 auto; margin-top: 3px; }
.task-bot-field { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.task-form [hidden] { display: none !important; }
.task-form-fields:disabled { opacity: .75; }

/* End */
/* /local/templates/netadvice/template_styles.css?179027821280056 */
/* /local/templates/netadvice/assets/css/main.css?1790278212890 */
