:root {
    --dux-ink: #071426;
    --dux-navy: #0b315a;
    --dux-blue: #0763e7;
    --dux-cyan: #38bdf8;
    --dux-pale: #edf6ff;
    --dux-line: #cfe0f4;
    --dux-muted: #4d6075;
    --dux-green: #1f7058;
}

.dux-page { background: #fff; color: var(--dux-ink); }
.dux-page .tn-header { border-top: 5px solid var(--dux-blue); }
.dux-page main { overflow: hidden; }

.dux-hero {
    position: relative;
    min-height: 760px;
    padding: 138px 0 78px;
    background:
        radial-gradient(circle at 78% 18%, rgba(56, 189, 248, .18), transparent 27%),
        linear-gradient(135deg, #f8fbff 0%, #eef6ff 52%, #fff 100%);
}

.dux-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .22;
    pointer-events: none;
    background-image: linear-gradient(var(--dux-line) 1px, transparent 1px), linear-gradient(90deg, var(--dux-line) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, #000, transparent 82%);
}

.dux-hero__grid { position: relative; display: grid; grid-template-columns: minmax(0, .95fr) minmax(440px, 1.05fr); gap: 56px; align-items: center; }
.dux-hero__copy { position: relative; z-index: 2; display: grid; gap: 22px; }
.dux-network-badge { display: inline-flex; width: fit-content; align-items: center; gap: 10px; padding: 7px 13px 7px 8px; border: 1px solid #b8d3ef; border-radius: 999px; background: rgba(255,255,255,.88); color: var(--dux-navy); font-size: .86rem; font-weight: 800; box-shadow: 0 10px 30px rgba(7,49,90,.08); }
.dux-network-badge img { width: 88px; height: auto; object-fit: contain; }
.dux-hero h1 { max-width: 690px; font-size: clamp(2.45rem, 5vw, 4.75rem); letter-spacing: -.045em; line-height: .98; }
.dux-hero__lead { max-width: 640px; color: var(--dux-muted); font-size: clamp(1.05rem, 1.8vw, 1.24rem); line-height: 1.62; }
.dux-hero__checks { display: grid; gap: 9px; list-style: none; }
.dux-hero__checks li { position: relative; padding-left: 26px; color: #203951; font-weight: 700; }
.dux-hero__checks li::before { content: ""; position: absolute; left: 0; top: .55em; width: 11px; height: 11px; border: 3px solid var(--dux-cyan); border-radius: 50%; }
.dux-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.dux-hero__note { color: #68798c; font-size: .82rem; }

.dux-control-map { position: relative; min-height: 570px; border: 1px solid rgba(126,164,204,.6); border-radius: 34px; background: rgba(255,255,255,.68); box-shadow: 0 35px 90px rgba(11,49,90,.14); overflow: hidden; backdrop-filter: blur(14px); }
.dux-control-map__grid { position: absolute; inset: 0; opacity: .32; background-image: linear-gradient(#bcd5ee 1px, transparent 1px), linear-gradient(90deg, #bcd5ee 1px, transparent 1px); background-size: 34px 34px; }
.dux-control-map__eyebrow { position: absolute; top: 25px; left: 28px; color: #6d8096; font: 700 .68rem Poppins, sans-serif; letter-spacing: .18em; }
.dux-control-map__center { position: absolute; z-index: 3; top: 50%; left: 50%; display: grid; width: 174px; height: 174px; place-content: center; gap: 8px; text-align: center; transform: translate(-50%,-50%); border: 1px solid rgba(56,189,248,.8); border-radius: 50%; background: #fff; color: var(--dux-navy); box-shadow: 0 0 0 18px rgba(7,99,231,.08), 0 25px 55px rgba(7,49,90,.24); }
.dux-control-map__center img { width: 122px; height: auto; margin-inline: auto; object-fit: contain; }
.dux-control-map__center small { color: var(--dux-blue); font-size: .65rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.dux-control-map__signal { position: absolute; inset: -1px; border: 1px solid rgba(56,189,248,.6); border-radius: 50%; animation: dux-signal 2.8s ease-out infinite; }
.dux-control-map__node { position: absolute; z-index: 4; display: grid; width: 158px; gap: 2px; padding: 13px 15px; border: 1px solid #c7ddf2; border-radius: 14px; background: rgba(255,255,255,.93); box-shadow: 0 14px 35px rgba(7,49,90,.12); }
.dux-control-map__node span { color: var(--dux-blue); font: 700 .65rem Poppins, sans-serif; letter-spacing: .12em; }
.dux-control-map__node strong { font: 700 1rem Poppins, sans-serif; }
.dux-control-map__node small { color: var(--dux-muted); font-size: .72rem; }
.dux-control-map__node--sales { top: 72px; left: 34px; }
.dux-control-map__node--stock { top: 72px; right: 34px; }
.dux-control-map__node--arca { top: 330px; left: 28px; }
.dux-control-map__node--cash { top: 330px; right: 28px; }
.dux-control-map__node--channels { bottom: 28px; left: 50%; transform: translateX(-50%); }
.dux-control-map__lines { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; }
.dux-control-map__lines path { fill: none; stroke: var(--dux-blue); stroke-width: 1.2; stroke-dasharray: 6 7; opacity: .55; animation: dux-flow 9s linear infinite; }

.dux-strip { position: relative; z-index: 3; margin-top: -30px; }
.dux-strip__grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--dux-line); border-radius: 18px; background: var(--dux-ink); color: #fff; box-shadow: 0 22px 55px rgba(7,20,38,.2); }
.dux-strip__grid div { display: grid; gap: 4px; padding: 24px; border-right: 1px solid rgba(255,255,255,.13); }
.dux-strip__grid div:last-child { border-right: 0; }
.dux-strip__grid strong { color: var(--dux-cyan); font-family: Poppins, sans-serif; }
.dux-strip__grid span { color: #c4d3e2; font-size: .82rem; line-height: 1.4; }

.dux-section { padding: 88px 0; scroll-margin-top: 88px; }
.dux-section--intro { padding-top: 118px; }
.dux-section--plans { background: var(--dux-pale); }
.dux-section__head { display: grid; max-width: 850px; gap: 12px; margin-bottom: 38px; }
.dux-section__head--center { margin-inline: auto; text-align: center; }
.dux-section__head h2, .dux-form-aside h2, .dux-scope h2, .dux-authority h2 { color: var(--dux-ink); font-size: clamp(2rem, 4vw, 3.35rem); letter-spacing: -.035em; }
.dux-section__head p { color: var(--dux-muted); font-size: 1.04rem; }
.dux-intro { display: grid; grid-template-columns: .95fr 1.05fr; gap: 72px; align-items: end; }
.dux-intro__copy { display: grid; gap: 18px; color: var(--dux-muted); font-size: 1.12rem; }
.dux-intro__copy p:first-child { color: var(--dux-navy); font-weight: 700; }

.dux-plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.dux-plan { position: relative; display: flex; flex-direction: column; gap: 22px; padding: 30px; border: 1px solid #c9dcef; border-radius: 18px; background: #fff; box-shadow: 0 16px 40px rgba(7,49,90,.07); }
.dux-plan--featured { border: 2px solid var(--dux-blue); transform: translateY(-10px); box-shadow: 0 26px 65px rgba(7,99,231,.18); }
.dux-plan__flag { position: absolute; top: -14px; right: 22px; padding: 7px 13px; border-radius: 999px; background: var(--dux-blue); color: #fff; font: 700 .72rem Poppins, sans-serif; text-transform: uppercase; }
.dux-plan__top { display: grid; gap: 9px; min-height: 150px; }
.dux-plan__code { color: var(--dux-blue); font: 700 .7rem Poppins, sans-serif; letter-spacing: .16em; }
.dux-plan h3 { font-size: 1.55rem; }
.dux-plan__top p, .dux-plan__boundary { color: var(--dux-muted); font-size: .9rem; }
.dux-plan__price { display: grid; gap: 3px; padding: 18px 0; border-block: 1px solid var(--dux-line); }
.dux-plan__price span { color: var(--dux-muted); font-size: .75rem; }
.dux-plan__price strong { color: var(--dux-navy); font: 700 clamp(2rem, 3vw, 2.65rem) Poppins, sans-serif; letter-spacing: -.04em; }
.dux-plan__price small { color: var(--dux-green); font-weight: 800; }
.dux-plan ul { display: grid; flex: 1; gap: 10px; list-style: none; }
.dux-plan li { position: relative; padding-left: 22px; color: #2b435a; font-size: .86rem; }
.dux-plan li::before { content: "✓"; position: absolute; left: 0; color: var(--dux-green); font-weight: 900; }
.dux-plan__boundary { padding: 10px 12px; border-left: 3px solid var(--dux-cyan); background: #f3f9ff; font-weight: 700; }
.dux-plans__footnote { max-width: 880px; margin: 26px auto 0; color: var(--dux-muted); font-size: .8rem; text-align: center; }

.dux-process { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; list-style: none; border-block: 1px solid var(--dux-line); }
.dux-process li { position: relative; display: grid; gap: 28px; padding: 28px 22px 34px; border-right: 1px solid var(--dux-line); }
.dux-process li:last-child { border-right: 0; }
.dux-process li > span { color: var(--dux-blue); font: 700 .72rem Poppins, sans-serif; letter-spacing: .14em; }
.dux-process h3 { margin-bottom: 9px; font-size: 1.05rem; }
.dux-process p { color: var(--dux-muted); font-size: .84rem; }

.dux-section--scope { background: var(--dux-ink); color: #fff; }
.dux-scope { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: start; }
.dux-scope h2 { color: #fff; }
.dux-scope p { margin-top: 16px; color: #bdd0e2; }
.dux-scope__list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; list-style: none; }
.dux-scope__list li { padding: 16px; border: 1px solid rgba(255,255,255,.14); border-radius: 10px; background: rgba(255,255,255,.04); color: #d9e6f2; font-size: .87rem; }

.dux-section--authority { background: linear-gradient(135deg, #fff, #edf6ff); }
.dux-authority { display: grid; grid-template-columns: 250px 1fr; gap: 58px; align-items: center; }
.dux-authority__seal { display: grid; width: 220px; min-height: 190px; place-content: center; gap: 18px; padding: 28px; border: 1px solid var(--dux-blue); border-radius: 28px; background: #fff; color: var(--dux-navy); text-align: center; box-shadow: inset 0 0 0 10px #f3f8fd, 0 24px 50px rgba(7,49,90,.12); }
.dux-authority__seal img { width: 166px; height: auto; object-fit: contain; }
.dux-authority__seal small { font: 700 .64rem Poppins, sans-serif; letter-spacing: .16em; }
.dux-authority p { max-width: 760px; margin: 18px 0; color: var(--dux-muted); font-size: 1.02rem; }
.dux-authority a { color: var(--dux-blue); font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }

.dux-faq { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.dux-faq details { border: 1px solid var(--dux-line); border-radius: 12px; background: #fff; }
.dux-faq summary { padding: 20px; color: var(--dux-navy); font-weight: 800; cursor: pointer; }
.dux-faq p { padding: 0 20px 22px; color: var(--dux-muted); font-size: .92rem; }

.dux-form-section { background: var(--dux-pale); }
.dux-form-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 54px; align-items: start; }
.dux-form-aside { position: sticky; top: 110px; display: grid; gap: 15px; }
.dux-form-aside > p { color: var(--dux-muted); }
.dux-form-aside__box { margin-top: 10px; padding: 22px; border-radius: 14px; background: var(--dux-ink); color: #fff; }
.dux-form-aside__box ul { display: grid; gap: 8px; margin-top: 12px; padding-left: 18px; color: #c7d8e8; font-size: .86rem; }
.dux-form { padding: 30px; border: 1px solid var(--dux-line); border-radius: 18px; background: #fff; box-shadow: 0 24px 60px rgba(7,49,90,.1); }
.dux-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.dux-form__recommendation { min-height: 24px; margin: 5px 0 15px; padding: 10px 12px; border-left: 3px solid var(--dux-blue); background: #eef7ff; color: var(--dux-navy); font-size: .84rem; font-weight: 700; }
.dux-sticky { display: none; }

@keyframes dux-signal { 0% { transform: scale(1); opacity: .65; } 100% { transform: scale(1.45); opacity: 0; } }
@keyframes dux-flow { to { stroke-dashoffset: -130; } }

@media (max-width: 1020px) {
    .dux-hero__grid { grid-template-columns: 1fr; }
    .dux-control-map { min-height: 540px; }
    .dux-plans { grid-template-columns: 1fr; max-width: 720px; margin-inline: auto; }
    .dux-plan--featured { transform: none; order: -1; }
    .dux-process { grid-template-columns: 1fr 1fr; }
    .dux-process li { border-bottom: 1px solid var(--dux-line); }
    .dux-form-layout { grid-template-columns: 1fr; }
    .dux-form-aside { position: static; }
}

@media (max-width: 760px) {
    .dux-hero { min-height: 0; padding: 112px 0 62px; }
    .dux-hero h1 { font-size: 2.55rem; }
    .dux-hero__actions { display: grid; }
    .dux-control-map { min-height: 500px; margin-top: 12px; border-radius: 22px; }
    .dux-control-map__center { width: 126px; height: 126px; }
    .dux-control-map__center strong { font-size: 1.75rem; }
    .dux-control-map__node { width: 132px; padding: 10px; }
    .dux-control-map__node--sales { top: 68px; left: 14px; }
    .dux-control-map__node--stock { top: 68px; right: 14px; }
    .dux-control-map__node--arca { top: 312px; left: 12px; }
    .dux-control-map__node--cash { top: 312px; right: 12px; }
    .dux-strip { margin-top: 0; background: var(--dux-ink); }
    .dux-strip .tn-container { width: 100%; }
    .dux-strip__grid { grid-template-columns: 1fr 1fr; border: 0; border-radius: 0; box-shadow: none; }
    .dux-strip__grid div { padding: 18px; border-bottom: 1px solid rgba(255,255,255,.12); }
    .dux-section { padding: 64px 0; }
    .dux-section--intro { padding-top: 70px; }
    .dux-intro, .dux-scope, .dux-authority { grid-template-columns: 1fr; gap: 34px; }
    .dux-authority__seal { width: 180px; height: 180px; }
    .dux-process { grid-template-columns: 1fr; }
    .dux-process li { grid-template-columns: 42px 1fr; gap: 10px; border-right: 0; }
    .dux-scope__list, .dux-faq, .dux-form__row { grid-template-columns: 1fr; }
    .dux-form { padding: 20px; }
    .dux-sticky { position: fixed; z-index: 30; right: 12px; bottom: 12px; left: 12px; display: block; }
    body { padding-bottom: 72px; }
}

@media (max-width: 430px) {
    .dux-hero h1 { font-size: 2.2rem; }
    .dux-network-badge { font-size: .72rem; }
    .dux-control-map { min-height: 470px; }
    .dux-control-map__node { width: 118px; }
    .dux-control-map__node small { display: none; }
    .dux-control-map__node--channels { bottom: 36px; }
    .dux-plan { padding: 23px; }
}

@media (prefers-reduced-motion: reduce) {
    .dux-control-map__signal, .dux-control-map__lines path { animation: none; }
}
