:root {
    --elg-cable-navy-950: #031326;
    --elg-cable-navy-900: #061b36;
    --elg-cable-navy-800: #0a2c55;
    --elg-cable-blue-700: #0755bb;
    --elg-cable-blue-600: #086bdc;
    --elg-cable-blue-500: #1986ff;
    --elg-cable-blue-100: #eaf4ff;
    --elg-cable-gold-500: #ffc400;
    --elg-cable-gold-400: #ffd449;
    --elg-cable-green-600: #23853a;
    --elg-cable-red-600: #c52b2b;
    --elg-cable-orange-600: #c56b00;
    --elg-cable-ink: #102541;
    --elg-cable-muted: #63768e;
    --elg-cable-line: #d9e5f0;
    --elg-cable-soft: #f4f8fc;
    --elg-cable-white: #fff;
    --elg-cable-radius-xl: 28px;
    --elg-cable-radius-lg: 20px;
    --elg-cable-radius-md: 13px;
    --elg-cable-shadow-lg: 0 26px 72px rgba(3, 26, 54, .15);
    --elg-cable-shadow-md: 0 15px 38px rgba(3, 26, 54, .10);
    --elg-cable-shadow-sm: 0 7px 20px rgba(3, 26, 54, .07);
}

body.elg-cable-calculator-page,
body.elg-cable-calculator-page #page,
body.elg-cable-calculator-page .site,
body.elg-cable-calculator-page .site-content,
body.elg-cable-calculator-page .content-area,
body.elg-cable-calculator-page .site-main,
body.elg-cable-calculator-page article,
body.elg-cable-calculator-page .entry-content,
.elg-cable-page-main {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.elg-cable-calculator-page .entry-header,
body.elg-cable-calculator-page .page-header,
body.elg-cable-calculator-page .entry-title,
body.elg-cable-calculator-page .page-title,
body.elg-cable-calculator-page .page-title-area,
body.elg-cable-calculator-page .page-title-wrapper,
body.elg-cable-calculator-page .page-title-wrap,
body.elg-cable-calculator-page .breadcrumb-area,
body.elg-cable-calculator-page .breadcrumbs-area {
    display: none !important;
}

.elg-cable,
.elg-cable *,
.elg-cable *::before,
.elg-cable *::after {
    box-sizing: border-box;
}

.elg-cable {
    position: relative;
    overflow: clip;
    width: 100%;
    color: var(--elg-cable-ink);
    background: var(--elg-cable-white);
    font-family: inherit;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.elg-cable [hidden] { display: none !important; }
.elg-cable button,
.elg-cable input,
.elg-cable select,
.elg-cable textarea { font: inherit; }
.elg-cable button { cursor: pointer; }
.elg-cable a,
.elg-cable button { -webkit-tap-highlight-color: transparent; }
.elg-cable svg {
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.elg-cable-shell {
    width: min(1500px, calc(100% - 44px));
    margin-inline: auto;
}

.elg-cable-kicker,
.elg-cable-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--elg-cable-blue-600);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.elg-cable-eyebrow {
    color: var(--elg-cable-gold-400);
}

.elg-cable-eyebrow svg { width: 20px; height: 20px; }

.elg-cable-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 50px;
    padding: 13px 21px;
    border: 1px solid transparent;
    border-radius: 12px;
    text-decoration: none !important;
    font-weight: 820;
    line-height: 1.1;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, opacity .2s ease;
}

.elg-cable-btn:hover { transform: translateY(-2px); }
.elg-cable-btn:focus-visible,
.elg-cable-preset:focus-visible,
.elg-cable-system button:focus-visible,
.elg-cable-modal__close:focus-visible {
    outline: 3px solid rgba(255, 196, 0, .5);
    outline-offset: 3px;
}
.elg-cable-btn svg { width: 21px; height: 21px; flex: 0 0 auto; }
.elg-cable-btn--gold {
    color: #071b35 !important;
    background: linear-gradient(135deg, var(--elg-cable-gold-400), var(--elg-cable-gold-500));
    box-shadow: 0 12px 30px rgba(255, 196, 0, .22);
}
.elg-cable-btn--gold:hover { box-shadow: 0 17px 38px rgba(255, 196, 0, .31); }
.elg-cable-btn--gold,
.elg-cable-btn--gold span,
.elg-cable-btn--gold svg { color: #071b35 !important; }
.elg-cable-btn--blue {
    color: #fff !important;
    background: linear-gradient(135deg, var(--elg-cable-blue-700), var(--elg-cable-blue-600));
    box-shadow: 0 10px 25px rgba(8, 107, 220, .2);
}
.elg-cable-btn--outline {
    color: #fff !important;
    border-color: rgba(255,255,255,.38);
    background: rgba(255,255,255,.07);
    backdrop-filter: blur(8px);
}
.elg-cable-btn--outline:hover { border-color: rgba(255,255,255,.7); background: rgba(255,255,255,.12); }
.elg-cable-btn--ghost {
    color: var(--elg-cable-blue-700) !important;
    border-color: #cbdceb;
    background: #fff;
}
.elg-cable-btn--full { width: 100%; }
.elg-cable-btn:disabled { cursor: not-allowed; opacity: .43; transform: none !important; box-shadow: none !important; }

/* Hero */
.elg-cable-hero {
    position: relative;
    min-height: 620px;
    color: #fff;
    background:
        radial-gradient(circle at 76% 18%, rgba(25, 134, 255, .34), transparent 31%),
        radial-gradient(circle at 94% 74%, rgba(255, 196, 0, .12), transparent 24%),
        linear-gradient(135deg, #021123 0%, #061c3a 52%, #0b3568 100%);
    isolation: isolate;
}
.elg-cable-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(to bottom, #000 0%, transparent 95%);
}
.elg-cable-hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    z-index: -1;
    height: 170px;
    background: linear-gradient(to bottom, transparent, rgba(1, 14, 30, .38));
}
.elg-cable-hero__grid {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}
.elg-cable-hero__grid::before,
.elg-cable-hero__grid::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
}
.elg-cable-hero__grid::before {
    width: 760px;
    height: 760px;
    right: -270px;
    top: -330px;
    box-shadow: 0 0 0 100px rgba(255,255,255,.018), 0 0 0 200px rgba(255,255,255,.012);
}
.elg-cable-hero__grid::after {
    width: 430px;
    height: 430px;
    left: -260px;
    bottom: -310px;
    box-shadow: 0 0 0 85px rgba(25,134,255,.04), 0 0 0 170px rgba(25,134,255,.025);
}
.elg-cable-hero__inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(520px, .95fr);
    align-items: center;
    gap: 55px;
    min-height: 620px;
    padding-block: 68px 108px;
}
.elg-cable-hero__content { max-width: 780px; }
.elg-cable-hero h1 {
    max-width: 800px;
    margin: 17px 0 22px;
    color: #fff;
    font-size: clamp(46px, 5.3vw, 78px);
    font-weight: 880;
    line-height: .99;
    letter-spacing: -.055em;
}
.elg-cable-hero h1 mark { color: var(--elg-cable-gold-400); background: transparent; }
.elg-cable-hero__content > p {
    max-width: 710px;
    margin: 0;
    color: rgba(255,255,255,.74);
    font-size: clamp(17px, 1.35vw, 21px);
    line-height: 1.65;
}
.elg-cable-hero__actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 31px; }
.elg-cable-trust { display: flex; flex-wrap: wrap; gap: 10px 23px; margin-top: 31px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 720; }
.elg-cable-trust span { display: inline-flex; align-items: center; gap: 8px; }
.elg-cable-trust span::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--elg-cable-gold-500); box-shadow: 0 0 0 4px rgba(255,196,0,.12); }

.elg-cable-hero__visual { position: relative; min-height: 470px; perspective: 1200px; }
.elg-cable-hero__visual::before {
    content: "";
    position: absolute;
    inset: 10% 0 6% 2%;
    background: radial-gradient(circle at 56% 48%, rgba(25,134,255,.18), transparent 33%), radial-gradient(circle at 28% 58%, rgba(255,196,0,.10), transparent 26%);
    filter: blur(6px);
}
.elg-cable-core {
    position: absolute;
    left: 4%;
    top: 22%;
    width: 98%;
    height: 184px;
    transform: rotate(-8deg) rotateY(-8deg);
    filter: drop-shadow(0 34px 46px rgba(0,0,0,.24));
}
.elg-cable-core__body {
    position: absolute;
    left: 73px;
    border-radius: 999px;
}
.elg-cable-core__body--jacket {
    top: 6px;
    right: 2px;
    height: 172px;
    background: linear-gradient(180deg, #173a5d 0%, #0a2340 38%, #06172b 66%, #03101d 100%);
    border: 1px solid rgba(255,255,255,.11);
    box-shadow: inset 0 12px 22px rgba(255,255,255,.05), inset 0 -20px 28px rgba(0,0,0,.42), 0 18px 32px rgba(0,0,0,.16);
}
.elg-cable-core__body--jacket::before {
    content: "";
    position: absolute;
    inset: 9px 18px auto 18px;
    height: 22px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255,255,255,.16), rgba(255,255,255,0));
}
.elg-cable-core__body--jacket::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 138px;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(270deg, rgba(255,255,255,.06), rgba(255,255,255,0));
}
.elg-cable-core__body--insulation {
    top: 30px;
    right: 54px;
    height: 122px;
    background: linear-gradient(180deg, #59b4ff 0%, #1b86f3 32%, #0b59c2 62%, #07397d 100%);
    border: 1px solid rgba(255,255,255,.09);
    box-shadow: inset 0 12px 16px rgba(255,255,255,.12), inset 0 -12px 20px rgba(0,0,0,.24), 0 0 18px rgba(25,134,255,.18);
}
.elg-cable-core__body--metal {
    top: 49px;
    right: 118px;
    height: 86px;
    background: linear-gradient(180deg, #ffd88f 0%, #ffbb48 28%, #d4831d 58%, #8a460d 100%);
    box-shadow: inset 0 10px 12px rgba(255,255,255,.24), inset 0 -8px 14px rgba(82,28,0,.34), 0 0 24px rgba(255,164,53,.2);
}
.elg-cable-core__jacket,
.elg-cable-core__insulation,
.elg-cable-core__metal {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50%;
}
.elg-cable-core__jacket {
    width: 172px;
    height: 172px;
    background: radial-gradient(circle at 36% 34%, #233f60, #07182c 66%);
    border: 3px solid rgba(255,255,255,.16);
    box-shadow: inset -18px -12px 28px rgba(0,0,0,.4), inset 10px 10px 18px rgba(255,255,255,.08), 0 0 0 6px rgba(255,255,255,.025);
}
.elg-cable-core__insulation {
    left: 24px;
    width: 122px;
    height: 122px;
    background: radial-gradient(circle at 35% 32%, #40a5ff, #0a61c6 70%);
    box-shadow: inset -13px -9px 20px rgba(0,0,0,.34), 0 0 0 7px rgba(25,134,255,.06);
}
.elg-cable-core__metal {
    left: 49px;
    width: 80px;
    height: 80px;
    background: radial-gradient(circle at 32% 28%, #ffe7ae, #e29a2d 37%, #9b5310 77%);
    box-shadow: inset -8px -6px 13px rgba(73,27,0,.42), 0 0 26px rgba(255,164,53,.25);
}
.elg-cable-core::after { content: none; }
.elg-cable-core i {
    position: absolute;
    z-index: 3;
    left: 61px;
    top: 50%;
    width: 50px;
    height: 6px;
    transform-origin: 23px 50%;
    border-radius: 999px;
    background: linear-gradient(90deg, #ffd27a, #b36519);
    box-shadow: 0 0 10px rgba(255,184,73,.18);
}
.elg-cable-core i:nth-of-type(1) { transform: translateY(-50%) rotate(0deg); }
.elg-cable-core i:nth-of-type(2) { transform: translateY(-50%) rotate(72deg); }
.elg-cable-core i:nth-of-type(3) { transform: translateY(-50%) rotate(144deg); }
.elg-cable-core i:nth-of-type(4) { transform: translateY(-50%) rotate(216deg); }
.elg-cable-core i:nth-of-type(5) { transform: translateY(-50%) rotate(288deg); }
.elg-cable-current-line {
    position: absolute;
    left: 27%;
    right: 10%;
    top: 53%;
    height: 3px;
    transform: rotate(-9deg);
    background: linear-gradient(90deg, rgba(255,196,0,.92), rgba(255,212,73,.88) 18%, rgba(25,134,255,.78) 55%, transparent 100%);
    box-shadow: 0 0 20px rgba(25,134,255,.72), 0 0 10px rgba(255,196,0,.25);
}
.elg-cable-current-line i { position: absolute; top: -5px; width: 13px; height: 13px; border-radius: 50%; background: #fff; box-shadow: 0 0 20px #1a8cff, 0 0 36px #1a8cff; animation: elg-cable-flow 3.3s linear infinite; }
.elg-cable-current-line i:nth-child(2) { animation-delay: -.82s; }
.elg-cable-current-line i:nth-child(3) { animation-delay: -1.64s; }
.elg-cable-current-line i:nth-child(4) { animation-delay: -2.46s; }
@keyframes elg-cable-flow { from { left: 0; opacity: 0; transform: scale(.72); } 12% { opacity: 1; transform: scale(1); } 88% { opacity: 1; transform: scale(1); } to { left: 100%; opacity: 0; transform: scale(.78); } }
.elg-cable-floating {
    position: absolute;
    z-index: 4;
    display: grid;
    min-width: 168px;
    padding: 14px 17px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 14px;
    background: rgba(4, 23, 47, .73);
    box-shadow: 0 16px 38px rgba(0,0,0,.25);
    backdrop-filter: blur(14px);
}
.elg-cable-floating span { color: rgba(255,255,255,.58); font-size: 10px; font-weight: 750; }
.elg-cable-floating strong { color: #fff; font-size: 22px; letter-spacing: -.03em; }
.elg-cable-floating--section { left: 1%; top: 4%; }
.elg-cable-floating--current { right: 0; top: 18%; }
.elg-cable-floating--drop { right: 9%; bottom: 8%; }
.elg-cable-equation { position: absolute; left: 12%; bottom: 3%; color: rgba(255,255,255,.28); font-family: Georgia, serif; font-size: 32px; letter-spacing: .04em; }

/* Presets */
.elg-cable-presets { position: relative; z-index: 8; margin-top: -53px; }
.elg-cable-presets__track {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    padding: 12px;
    border: 1px solid rgba(255,255,255,.75);
    border-radius: 22px;
    background: rgba(255,255,255,.94);
    box-shadow: var(--elg-cable-shadow-lg);
    backdrop-filter: blur(18px);
}
.elg-cable-preset {
    position: relative;
    display: grid;
    grid-template-columns: 45px minmax(0,1fr);
    grid-template-rows: auto auto;
    align-items: center;
    gap: 1px 11px;
    min-width: 0;
    min-height: 83px;
    padding: 12px;
    border: 1px solid transparent;
    border-radius: 14px;
    color: var(--elg-cable-ink);
    text-align: left;
    background: transparent;
    transition: .2s ease;
}
.elg-cable-preset:hover { border-color: #cfe0ef; background: #f7fbff; }
.elg-cable-preset.is-active { border-color: rgba(8,107,220,.42); background: linear-gradient(135deg,#eef7ff,#fff); box-shadow: inset 0 0 0 1px rgba(8,107,220,.07), var(--elg-cable-shadow-sm); }
.elg-cable-preset.is-active::after { content:""; position:absolute; right:10px; top:10px; width:7px; height:7px; border-radius:50%; background:var(--elg-cable-blue-600); box-shadow:0 0 0 4px rgba(8,107,220,.1); }
.elg-cable-preset > span { grid-row:1/3; display:grid; place-items:center; width:45px; height:45px; border-radius:12px; color:var(--elg-cable-blue-700); background:var(--elg-cable-blue-100); }
.elg-cable-preset svg { width:25px; height:25px; }
.elg-cable-preset strong { align-self:end; overflow:hidden; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.elg-cable-preset small { align-self:start; overflow:hidden; color:var(--elg-cable-muted); font-size:9px; text-overflow:ellipsis; white-space:nowrap; }

/* Calculator */
.elg-cable-calculator-section { padding: 72px 0 84px; background: radial-gradient(circle at 8% 8%, rgba(8,107,220,.05), transparent 24%), linear-gradient(180deg,#fff,#f5f9fd); }
.elg-cable-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(410px,.78fr); align-items:start; gap:22px; }
.elg-cable-form,
.elg-cable-results { border:1px solid var(--elg-cable-line); border-radius:var(--elg-cable-radius-xl); background:#fff; box-shadow:var(--elg-cable-shadow-md); }
.elg-cable-form { overflow:hidden; }
.elg-cable-form__header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:27px 31px; border-bottom:1px solid var(--elg-cable-line); background:linear-gradient(135deg,#fff,#f3f8fd); }
.elg-cable-form__header h2,
.elg-cable-results__header h2,
.elg-cable-section-heading h2,
.elg-cable-final-cta h2,
.elg-cable-modal h2 { margin:4px 0 0; color:var(--elg-cable-ink); font-size:clamp(26px,2.3vw,37px); line-height:1.1; letter-spacing:-.035em; }
.elg-cable-form__badge { display:inline-flex; align-items:center; gap:8px; padding:7px 11px; border-radius:999px; color:var(--elg-cable-muted); background:#eaf1f8; font-size:11px; font-weight:750; }
.elg-cable-form__badge b { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; color:#fff; background:var(--elg-cable-blue-600); }
.elg-cable-step { position:relative; display:grid; grid-template-columns:61px minmax(0,1fr); }
.elg-cable-step:not(:last-child) { border-bottom:1px solid var(--elg-cable-line); }
.elg-cable-step__rail { position:relative; display:flex; justify-content:center; padding-top:30px; }
.elg-cable-step__rail::after { content:""; position:absolute; top:65px; bottom:-1px; width:2px; background:linear-gradient(var(--elg-cable-blue-600),rgba(8,107,220,.08)); }
.elg-cable-step:last-child .elg-cable-step__rail::after { display:none; }
.elg-cable-step__rail span { position:relative; z-index:1; display:grid; place-items:center; width:34px; height:34px; border:4px solid #eaf4ff; border-radius:50%; color:#fff; background:var(--elg-cable-blue-700); font-size:14px; font-weight:900; box-shadow:0 0 0 1px rgba(8,107,220,.16); }
.elg-cable-step__body { min-width:0; padding:29px 31px 32px 0; }
.elg-cable-step__heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:22px; }
.elg-cable-step__heading h3 { margin:0 0 5px; color:var(--elg-cable-navy-800); font-size:19px; line-height:1.25; }
.elg-cable-step__heading p,
.elg-cable-section-heading p,
.elg-cable-final-cta p,
.elg-cable-modal__dialog > p { margin:0; color:var(--elg-cable-muted); font-size:13px; }
.elg-cable-live-pill,
.elg-cable-quality { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; padding:7px 10px; border-radius:999px; color:#52677f; background:#edf2f7; font-size:10px; font-weight:820; }
.elg-cable-live-pill::before,
.elg-cable-quality::before { content:""; width:7px; height:7px; border-radius:50%; background:#8798aa; }
.elg-cable-live-pill.is-valid { color:#176c2e; background:#e8f8ec; }
.elg-cable-live-pill.is-valid::before { background:var(--elg-cable-green-600); }
.elg-cable-live-pill.is-error { color:#a51d1d; background:#fff0f0; }
.elg-cable-live-pill.is-error::before { background:var(--elg-cable-red-600); }

.elg-cable-system { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-bottom:20px; }
.elg-cable-system button { display:grid; grid-template-columns:44px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; gap:1px 10px; min-height:75px; padding:11px; border:1px solid #dce6ef; border-radius:12px; color:#60748b; text-align:left; background:#fff; transition:.2s ease; }
.elg-cable-system button > svg { grid-row:1/3; width:44px; height:44px; padding:10px; border-radius:11px; color:var(--elg-cable-blue-700); background:#eef6ff; }
.elg-cable-system button strong { align-self:end; color:var(--elg-cable-ink); font-size:12px; }
.elg-cable-system button small { align-self:start; font-size:9px; }
.elg-cable-system button:hover,
.elg-cable-system button.is-active { border-color:rgba(8,107,220,.48); color:var(--elg-cable-blue-700); background:var(--elg-cable-blue-100); box-shadow:inset 0 0 0 1px rgba(8,107,220,.06); }

.elg-cable-grid { display:grid; gap:14px; }
.elg-cable-grid--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.elg-cable-grid--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.elg-cable-grid--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.elg-cable-field { display:grid; gap:7px; min-width:0; margin:0; }
.elg-cable-field > span:first-child,
.elg-cable-toggle-card strong { color:#334a66; font-size:11px; font-weight:820; }
.elg-cable-field > span:first-child em { color:#8798aa; font-style:normal; font-weight:500; }
.elg-cable-field input,
.elg-cable-field select,
.elg-cable-field textarea,
.elg-cable-unit { width:100%; min-height:46px; border:1px solid #d4e1ed; border-radius:10px; color:var(--elg-cable-ink); background:#fff; box-shadow:inset 0 1px 2px rgba(3,26,54,.025); transition:border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.elg-cable-field input,
.elg-cable-field select,
.elg-cable-field textarea { padding:10px 12px; outline:none; }
.elg-cable-field textarea { resize:vertical; }
.elg-cable-field input:focus,
.elg-cable-field select:focus,
.elg-cable-field textarea:focus,
.elg-cable-unit:focus-within { border-color:var(--elg-cable-blue-500); box-shadow:0 0 0 4px rgba(8,107,220,.09); }
.elg-cable-unit { display:flex; align-items:center; overflow:hidden; }
.elg-cable-unit input { min-width:0; min-height:44px; border:0 !important; border-radius:0; box-shadow:none !important; }
.elg-cable-unit b { flex:0 0 auto; padding:0 12px; color:#687c92; font-size:10px; font-weight:820; white-space:nowrap; }
.elg-cable-field.is-disabled,
.elg-cable-motor-fields.is-disabled { opacity:.46; }
.elg-cable-field-note { margin:12px 0 0; color:#7c8da0; font-size:10px; }

.elg-cable-advanced { margin-top:18px; border:1px solid #dde7f0; border-radius:12px; background:#f8fbfe; }
.elg-cable-advanced summary { position:relative; padding:14px 44px 14px 16px; color:#35516e; font-size:11px; font-weight:820; cursor:pointer; list-style:none; }
.elg-cable-advanced summary::-webkit-details-marker { display:none; }
.elg-cable-advanced summary::after { content:"+"; position:absolute; right:15px; top:50%; transform:translateY(-50%); color:var(--elg-cable-blue-700); font-size:22px; font-weight:400; }
.elg-cable-advanced[open] summary::after { content:"−"; }
.elg-cable-advanced__content { padding:0 16px 17px; }

.elg-cable-method-card { display:grid; grid-template-columns:54px minmax(0,1fr) auto; align-items:center; gap:13px; margin-top:18px; padding:14px; border:1px solid #d8e6f3; border-radius:13px; background:linear-gradient(135deg,#f5faff,#fff); }
.elg-cable-method-card__code { display:grid; place-items:center; width:54px; height:54px; border-radius:14px; color:#fff; background:linear-gradient(135deg,var(--elg-cable-blue-700),var(--elg-cable-blue-500)); font-size:17px; font-weight:900; box-shadow:0 8px 20px rgba(8,107,220,.18); }
.elg-cable-method-card strong { display:block; color:var(--elg-cable-navy-800); font-size:12px; }
.elg-cable-method-card p { margin:3px 0 0; color:var(--elg-cable-muted); font-size:9px; }
.elg-cable-method-card__source { padding:6px 9px; border-radius:999px; color:#5c7086; background:#eaf1f7; font-size:8px; font-weight:820; white-space:nowrap; }

.elg-cable-criteria { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr); gap:18px; margin-bottom:18px; }
.elg-cable-range { padding:15px; border:1px solid #dfe8f1; border-radius:13px; background:#f8fbfe; }
.elg-cable-range > div:first-child { display:flex; justify-content:space-between; gap:12px; margin-bottom:10px; color:#334a66; font-size:11px; font-weight:820; }
.elg-cable-range output { color:var(--elg-cable-blue-700); font-size:14px; }
.elg-cable-range input[type="range"] { width:100%; height:6px; margin:0; appearance:none; border-radius:999px; background:linear-gradient(90deg,var(--elg-cable-blue-600) 0 26%,#d8e5f1 26% 100%); outline:none; }
.elg-cable-range input[type="range"]::-webkit-slider-thumb { width:20px; height:20px; appearance:none; border:3px solid #fff; border-radius:50%; background:var(--elg-cable-blue-600); box-shadow:0 2px 8px rgba(0,74,160,.38); }
.elg-cable-range input[type="range"]::-moz-range-thumb { width:15px; height:15px; border:3px solid #fff; border-radius:50%; background:var(--elg-cable-blue-600); box-shadow:0 2px 8px rgba(0,74,160,.38); }
.elg-cable-range__labels { display:flex; justify-content:space-between; gap:8px; margin-top:7px; color:#8a9bad; font-size:8px; }
.elg-cable-criterion-note { display:grid; grid-template-columns:35px minmax(0,1fr); align-items:center; gap:11px; padding:15px; border:1px solid #f0d27d; border-radius:13px; background:#fff9df; }
.elg-cable-criterion-note svg { width:33px; height:33px; color:#a66a00; }
.elg-cable-criterion-note strong { color:#664500; font-size:11px; }
.elg-cable-criterion-note p { margin:3px 0 0; color:#896d35; font-size:9px; }

.elg-cable-toggle-card { position:relative; display:flex; align-items:center; gap:11px; min-height:69px; padding:12px; border:1px solid #dce6ef; border-radius:11px; background:#fff; cursor:pointer; }
.elg-cable-toggle-card input { position:absolute; width:1px; height:1px; opacity:0; }
.elg-cable-toggle-card > span { position:relative; flex:0 0 auto; width:40px; height:23px; border-radius:999px; background:#ccd8e3; transition:.2s ease; }
.elg-cable-toggle-card > span::after { content:""; position:absolute; left:3px; top:3px; width:17px; height:17px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.18); transition:.2s ease; }
.elg-cable-toggle-card input:checked + span { background:var(--elg-cable-blue-600); }
.elg-cable-toggle-card input:checked + span::after { transform:translateX(17px); }
.elg-cable-toggle-card div { display:grid; gap:2px; }
.elg-cable-toggle-card small { color:var(--elg-cable-muted); font-size:8px; }
.elg-cable-toggle-card--wide { min-width:260px; }

.elg-cable-motor-row { display:grid; grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr); gap:18px; align-items:start; }
.elg-cable-motor-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; transition:opacity .2s ease; }
.elg-cable-calculate-bar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:22px; padding:17px; border-radius:14px; color:#fff; background:linear-gradient(135deg,var(--elg-cable-navy-900),var(--elg-cable-navy-800)); box-shadow:0 14px 30px rgba(3,26,54,.16); }
.elg-cable-calculate-bar > div { display:grid; gap:2px; }
.elg-cable-calculate-bar strong { font-size:13px; }
.elg-cable-calculate-bar span { color:rgba(255,255,255,.62); font-size:9px; }
.elg-cable-btn--calculate { min-width:255px; min-height:56px; padding:15px 24px; border-color: rgba(7,27,53,.08); box-shadow: 0 14px 28px rgba(255,196,0,.28); font-size:14px; font-weight:880; letter-spacing:-.01em; }
.elg-cable-btn--calculate span,
.elg-cable-btn--calculate svg { color:#071b35 !important; opacity:1 !important; }
.elg-cable.is-calculating .elg-cable-btn--calculate svg { animation:elg-cable-spin .9s linear infinite; }
@keyframes elg-cable-spin { to { transform:rotate(360deg); } }

/* Results */
.elg-cable-results { position:sticky; top:18px; overflow:hidden; }
.elg-cable-results__header { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:25px 26px; color:#fff; background:radial-gradient(circle at 92% 12%,rgba(255,196,0,.18),transparent 30%),linear-gradient(135deg,var(--elg-cable-navy-900),var(--elg-cable-blue-700)); }
.elg-cable-results__header > div > span { color:rgba(255,255,255,.64); font-size:9px; font-weight:820; letter-spacing:.09em; text-transform:uppercase; }
.elg-cable-results__header h2 { color:#fff; font-size:28px; }
.elg-cable-quality { color:rgba(255,255,255,.72); background:rgba(255,255,255,.1); }
.elg-cable-quality[data-state="success"] { color:#c9ffd5; background:rgba(29,137,55,.26); }
.elg-cable-quality[data-state="success"]::before { background:#58dc72; }
.elg-cable-quality[data-state="warning"] { color:#ffe8a2; background:rgba(255,196,0,.18); }
.elg-cable-quality[data-state="warning"]::before { background:var(--elg-cable-gold-500); }
.elg-cable-quality[data-state="error"] { color:#ffd0d0; background:rgba(197,43,43,.24); }
.elg-cable-quality[data-state="error"]::before { background:#ff6b6b; }
.elg-cable-result-main { display:grid; grid-template-columns:125px minmax(0,1fr); align-items:center; gap:19px; padding:23px 24px 20px; border-bottom:1px solid var(--elg-cable-line); background:linear-gradient(135deg,#fff,#f4f9ff); }
.elg-cable-section-disc { display:grid; place-items:center; width:116px; height:116px; border-radius:50%; background:conic-gradient(var(--elg-cable-blue-600) 0 0%,#dfeaf4 0); box-shadow:inset 0 0 0 1px rgba(8,107,220,.08),0 10px 25px rgba(8,107,220,.12); transition:background .4s ease; }
.elg-cable-section-disc::before { content:""; grid-area:1/1; width:87px; height:87px; border-radius:50%; background:#fff; box-shadow:inset 0 0 13px rgba(5,48,93,.05); }
.elg-cable-section-disc > span { position:relative; grid-area:1/1; display:grid; text-align:center; }
.elg-cable-section-disc b { color:var(--elg-cable-navy-800); font-size:28px; line-height:1; }
.elg-cable-section-disc small { color:var(--elg-cable-blue-700); font-size:9px; font-weight:900; }
.elg-cable-result-main > div:last-child > span { color:var(--elg-cable-blue-700); font-size:9px; font-weight:850; text-transform:uppercase; }
.elg-cable-result-main h3 { margin:5px 0 7px; color:var(--elg-cable-navy-800); font-size:19px; line-height:1.2; }
.elg-cable-result-main p { margin:0; color:var(--elg-cable-muted); font-size:10px; }
.elg-cable-compliance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; padding:13px 19px 0; }
.elg-cable-compliance span { display:flex; align-items:center; justify-content:center; gap:6px; min-height:34px; padding:7px; border:1px solid #dce6ef; border-radius:9px; color:#73869a; background:#f8fbfe; font-size:9px; font-weight:800; }
.elg-cable-compliance i { display:grid; place-items:center; width:17px; height:17px; border-radius:50%; background:#dce5ed; font-style:normal; font-size:9px; }
.elg-cable-compliance span.is-ok { color:#176c2e; border-color:#bfe4c7; background:#f0fbf2; }
.elg-cable-compliance span.is-ok i { color:#fff; background:var(--elg-cable-green-600); }
.elg-cable-compliance span.is-warning { color:#835500; border-color:#efd58b; background:#fff9e8; }
.elg-cable-compliance span.is-warning i { color:#fff; background:var(--elg-cable-orange-600); }
.elg-cable-compliance span.is-na { opacity:.55; }
.elg-cable-kpis { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:18px 22px; }
.elg-cable-kpis article { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:14px; min-width:0; min-height:104px; padding:18px 19px; border:1px solid #e0e9f2; border-radius:16px; background:#fff; box-shadow:0 8px 20px rgba(3,26,54,.045); }
.elg-cable-kpi-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:11px; color:var(--elg-cable-blue-700); background:var(--elg-cable-blue-100); }
.elg-cable-kpi-icon svg { width:22px; height:22px; }
.elg-cable-kpis article > div { display:grid; gap:5px; min-width:0; padding:2px 2px 2px 1px; }
.elg-cable-kpis small { overflow:visible; color:#6c7f94; font-size:9px; font-weight:780; line-height:1.5; text-overflow:initial; white-space:normal; }
.elg-cable-kpis strong { display:block; color:var(--elg-cable-navy-800); font-size:19px; line-height:1.16; letter-spacing:-.025em; padding-right:4px; }
.elg-cable-kpis em { display:block; overflow:visible; color:var(--elg-cable-blue-700); font-size:9px; font-style:normal; font-weight:790; line-height:1.52; text-overflow:initial; white-space:normal; padding-right:6px; }
.elg-cable-coordination { margin:0 19px 14px; padding:14px; border:1px solid #dce7f1; border-radius:12px; background:#f8fbfe; }
.elg-cable-coordination__title { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:11px; }
.elg-cable-coordination__title strong { color:var(--elg-cable-navy-800); font-size:10px; }
.elg-cable-coordination__title span { color:var(--elg-cable-blue-700); font-family:Georgia,serif; font-size:13px; font-weight:700; }
.elg-cable-coordination__values { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; gap:6px; }
.elg-cable-coordination__values > div { display:grid; grid-template-columns:auto auto; grid-template-rows:auto auto; align-items:end; justify-content:center; column-gap:4px; padding:8px 5px; border-radius:9px; background:#fff; }
.elg-cable-coordination__values span { grid-row:1/3; color:var(--elg-cable-blue-700); font-family:Georgia,serif; font-size:12px; }
.elg-cable-coordination__values b { color:var(--elg-cable-navy-800); font-size:16px; line-height:1; }
.elg-cable-coordination__values small { color:#8293a5; font-size:7px; }
.elg-cable-coordination__values > i { color:#8192a4; font-style:normal; font-weight:900; }
.elg-cable-drop-meter { margin:0 22px 16px; padding:16px; border:1px solid #dce7f1; border-radius:13px; background:#fff; }
.elg-cable-drop-meter > div:first-child { display:flex; justify-content:space-between; gap:12px; margin-bottom:9px; color:#536a82; font-size:9px; }
.elg-cable-drop-meter strong { color:var(--elg-cable-navy-800); }
.elg-cable-drop-meter__track { position:relative; overflow:hidden; height:11px; border-radius:999px; background:#e1eaf2; }
.elg-cable-drop-meter__track span { display:block; width:0; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--elg-cable-blue-600),var(--elg-cable-gold-500)); transition:width .5s ease; }
.elg-cable-drop-meter__track i { position:absolute; top:-3px; bottom:-3px; right:0; width:2px; background:var(--elg-cable-red-600); }
.elg-cable-drop-meter p { margin:8px 0 0; color:#78899c; font-size:8px; }
.elg-cable-diagnostics { display:grid; gap:8px; margin:0 22px 18px; }
.elg-cable-empty { display:flex; align-items:center; gap:10px; min-height:62px; padding:11px; border:1px dashed #cddae6; border-radius:10px; color:#73869a; background:#fbfdff; }
.elg-cable-empty svg { width:28px; height:28px; flex:0 0 auto; }
.elg-cable-empty p { margin:0; font-size:8px; }
.elg-cable-diagnostic { display:grid; grid-template-columns:25px minmax(0,1fr); gap:9px; padding:10px 11px; border:1px solid #dce7f1; border-radius:10px; background:#f8fbfe; }
.elg-cable-diagnostic__icon { display:grid; place-items:center; width:25px; height:25px; border-radius:7px; color:var(--elg-cable-blue-700); background:#e7f3ff; font-size:12px; font-weight:900; }
.elg-cable-diagnostic.is-warning { border-color:#f0d48a; background:#fffaf0; }
.elg-cable-diagnostic.is-warning .elg-cable-diagnostic__icon { color:#875900; background:#ffedb2; }
.elg-cable-diagnostic.is-danger { border-color:#efb4b4; background:#fff5f5; }
.elg-cable-diagnostic.is-danger .elg-cable-diagnostic__icon { color:#a61e1e; background:#ffe0e0; }
.elg-cable-diagnostic strong { display:block; color:var(--elg-cable-navy-800); font-size:9px; }
.elg-cable-diagnostic p { margin:2px 0 0; color:#6a7d92; font-size:8px; }
.elg-cable-result-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:0 19px 17px; }
.elg-cable-result-actions .elg-cable-btn { min-height:44px; padding:9px 10px; font-size:9px; }
.elg-cable-result-actions [data-open-lead] { grid-column:1/-1; }
.elg-cable-disclaimer { margin:0; padding:13px 19px 17px; border-top:1px solid #e3ebf2; color:#7a8da1; background:#f9fbfd; font-size:7.5px; line-height:1.6; }

/* Analysis */
.elg-cable-analysis { padding:82px 0; background:#fff; }
.elg-cable-section-heading { max-width:850px; margin-bottom:27px; }
.elg-cable-section-heading h2 { margin:7px 0 10px; }
.elg-cable-section-heading p { font-size:15px; line-height:1.65; }
.elg-cable-decision-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-bottom:18px; }
.elg-cable-decision-card { display:grid; grid-template-columns:54px minmax(0,1fr); gap:16px; align-items:center; min-height:96px; padding:20px 20px; border:1px solid #dfe8f1; border-radius:16px; background:linear-gradient(145deg,#f8fbfe,#fff); }
.elg-cable-decision-card > span { display:grid; place-items:center; width:52px; height:52px; border-radius:14px; color:var(--elg-cable-blue-700); background:var(--elg-cable-blue-100); font-size:11px; font-weight:900; }
.elg-cable-decision-card small { color:#72859a; font-size:9px; font-weight:760; line-height:1.45; }
.elg-cable-decision-card strong { display:block; color:var(--elg-cable-navy-800); font-size:20px; line-height:1.15; }
.elg-cable-decision-card p { margin:6px 0 0; color:var(--elg-cable-muted); font-size:9px; line-height:1.5; }
.elg-cable-analysis-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr); gap:18px; }
.elg-cable-table-card,
.elg-cable-chart-card { min-width:0; padding:26px; border:1px solid var(--elg-cable-line); border-radius:19px; background:#fff; box-shadow:var(--elg-cable-shadow-sm); }
.elg-cable-card-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
.elg-cable-card-heading span { color:var(--elg-cable-blue-700); font-size:8px; font-weight:880; letter-spacing:.08em; text-transform:uppercase; }
.elg-cable-card-heading h3 { margin:3px 0 0; color:var(--elg-cable-navy-800); font-size:18px; }
.elg-cable-card-heading > strong { color:var(--elg-cable-navy-800); font-size:12px; }
.elg-cable-chip { padding:6px 9px; border-radius:999px; background:#edf4fa; }
.elg-cable-table-wrap { overflow-x:auto; }
.elg-cable-table-card table { width:100%; border-collapse:collapse; font-size:9px; }
.elg-cable-table-card th,
.elg-cable-table-card td { padding:10px 8px; border-bottom:1px solid #e6edf4; text-align:right; white-space:nowrap; }
.elg-cable-table-card th:first-child,
.elg-cable-table-card td:first-child { text-align:left; }
.elg-cable-table-card th { color:#63788f; font-size:8px; text-transform:uppercase; }
.elg-cable-table-card tbody tr.is-recommended { background:#edf7ff; }
.elg-cable-table-card tbody tr.is-fail { color:#9b4545; }
.elg-cable-table-card .elg-cable-table-status { display:inline-flex; padding:4px 7px; border-radius:999px; color:#176c2e; background:#e8f8ec; font-weight:800; }
.elg-cable-table-card .elg-cable-table-status.is-fail { color:#a51d1d; background:#fff0f0; }
.elg-cable-chart-card canvas { display:block; width:100%; height:285px; }
.elg-cable-factor-strip { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; overflow:hidden; margin-top:18px; border:1px solid #d9e6f2; border-radius:14px; background:#d9e6f2; }
.elg-cable-factor-strip > div { display:grid; gap:3px; padding:14px; background:linear-gradient(135deg,#f7fbff,#fff); }
.elg-cable-factor-strip span { color:#72859a; font-size:8px; font-weight:720; }
.elg-cable-factor-strip strong { color:var(--elg-cable-navy-800); font-size:12px; }

/* Technical section */
.elg-cable-method { padding:82px 0; background:linear-gradient(180deg,#f4f8fc,#fff); }
.elg-cable-transparency { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.elg-cable-transparency article { position:relative; display:grid; grid-template-rows:auto minmax(0,1fr); align-content:start; min-width:0; min-height:308px; padding:38px 36px 34px; border:1px solid #d7e4ef; border-radius:20px; background:#fff; box-shadow:0 10px 28px rgba(3,26,54,.05); }
.elg-cable-transparency article > span { position:absolute; left:20px; top:20px; display:grid; place-items:center; width:42px; height:42px; border-radius:12px; color:#071b35; background:linear-gradient(135deg,var(--elg-cable-gold-400),var(--elg-cable-gold-500)); font-size:11px; font-weight:900; }
.elg-cable-transparency svg { width:38px; height:38px; margin:0 2px 24px auto; color:var(--elg-cable-blue-600); }
.elg-cable-transparency__body { display:grid; gap:15px; padding:18px 18px 8px 14px; }
.elg-cable-transparency h3 { margin:0; padding-left:4px; color:var(--elg-cable-navy-900); font-size:17px; line-height:1.26; }
.elg-cable-transparency p { margin:0; padding-left:4px; color:#61758b; font-size:11px; line-height:1.84; }
.elg-cable-faq { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; margin-top:18px; }
.elg-cable-faq details { border:1px solid #d7e4ef; border-radius:13px; background:#fff; }
.elg-cable-faq summary { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:16px 18px; color:var(--elg-cable-navy-800); font-size:11px; font-weight:820; cursor:pointer; list-style:none; }
.elg-cable-faq summary::-webkit-details-marker { display:none; }
.elg-cable-faq summary span { color:var(--elg-cable-blue-600); font-size:20px; font-weight:400; transition:transform .2s ease; }
.elg-cable-faq details[open] summary span { transform:rotate(45deg); }
.elg-cable-faq p { margin:0; padding:0 18px 17px; color:var(--elg-cable-muted); font-size:10px; line-height:1.7; }
.elg-cable-sources { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:20px; margin-top:18px; padding:17px 20px; border:1px solid #d5e3f1; border-radius:14px; background:#f2f8fd; }
.elg-cable-sources > div { display:grid; grid-template-columns:30px minmax(0,1fr); gap:12px; align-items:center; }
.elg-cable-sources svg { width:29px; height:29px; color:var(--elg-cable-blue-700); }
.elg-cable-sources p { margin:0; color:#5b7188; font-size:9px; line-height:1.65; }
.elg-cable-sources strong { color:var(--elg-cable-navy-800); }
.elg-cable-sources nav { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.elg-cable-sources a { padding:8px 11px; border:1px solid #cddfeb; border-radius:9px; color:var(--elg-cable-blue-700); background:#fff; font-size:9px; font-weight:800; text-decoration:none; }

.elg-cable-final-cta { position:relative; overflow:hidden; padding:72px 0; color:#fff; background:radial-gradient(circle at 90% 20%,rgba(8,107,220,.3),transparent 27%),linear-gradient(135deg,var(--elg-cable-navy-950),var(--elg-cable-navy-800)); }
.elg-cable-final-cta::before { content:""; position:absolute; right:-150px; top:-250px; width:550px; height:550px; border:1px solid rgba(255,255,255,.08); border-radius:50%; box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.015); }
.elg-cable-final-cta__inner { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:45px; }
.elg-cable-final-cta .elg-cable-kicker { color:var(--elg-cable-gold-400); }
.elg-cable-final-cta h2 { max-width:800px; margin:9px 0 12px; color:#fff; font-size:clamp(32px,4vw,52px); }
.elg-cable-final-cta p { max-width:760px; color:rgba(255,255,255,.68); font-size:15px; }
.elg-cable-final-cta__inner > div:last-child { display:grid; gap:10px; min-width:230px; }

/* Modal */
.elg-cable-modal { position:fixed; z-index:999999; inset:0; display:grid; place-items:center; padding:24px; }
.elg-cable-modal__backdrop { position:absolute; inset:0; background:rgba(1,13,28,.76); backdrop-filter:blur(10px); }
.elg-cable-modal__dialog { position:relative; z-index:1; overflow:auto; width:min(720px,100%); max-height:calc(100vh - 48px); padding:31px; border:1px solid rgba(255,255,255,.8); border-radius:24px; background:#fff; box-shadow:0 35px 100px rgba(0,0,0,.33); }
.elg-cable-modal__dialog h2 { margin:8px 0 10px; }
.elg-cable-modal__dialog > p { margin-bottom:20px; font-size:13px; }
.elg-cable-modal__dialog form { display:grid; gap:15px; }
.elg-cable-modal__close { position:absolute; right:17px; top:15px; display:grid; place-items:center; width:38px; height:38px; padding:0; border:0; border-radius:50%; color:#597088; background:#eef4f9; font-size:25px; line-height:1; }
.elg-cable-honeypot { display:none !important; position:absolute !important; left:-10000px !important; opacity:0 !important; pointer-events:none !important; }
.elg-cable-check { display:flex; align-items:center; gap:9px; margin:0; color:#52677f; font-size:10px; font-weight:700; cursor:pointer; }
.elg-cable-check input { position:absolute; width:1px; height:1px; opacity:0; }
.elg-cable-check > span { position:relative; flex:0 0 auto; width:18px; height:18px; border:1px solid #b8c8d7; border-radius:5px; background:#fff; }
.elg-cable-check input:checked + span { border-color:var(--elg-cable-blue-600); background:var(--elg-cable-blue-600); }
.elg-cable-check input:checked + span::after { content:""; position:absolute; left:5px; top:2px; width:5px; height:9px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
.elg-cable-check em { font-style:normal; }
.elg-cable-check a { color:var(--elg-cable-blue-700); font-weight:800; text-decoration:underline; text-underline-offset:2px; }
.elg-cable-modal__status { padding:11px 13px; border-radius:10px; color:#425a73; background:#edf4fa; font-size:11px; }
.elg-cable-modal__status.is-success { color:#176c2e; background:#e8f8ec; }
.elg-cable-modal__status.is-error { color:#a51d1d; background:#fff0f0; }
.elg-cable-toast { position:fixed; z-index:1000000; right:22px; bottom:22px; max-width:min(430px,calc(100% - 44px)); padding:14px 18px; border:1px solid rgba(255,255,255,.17); border-radius:12px; color:#fff; background:var(--elg-cable-navy-900); box-shadow:0 18px 45px rgba(0,0,0,.25); font-size:11px; font-weight:750; }
.elg-cable-toast.is-error { background:#8d1d1d; }
.elg-cable-toast.is-success { background:#176c2e; }

.elg-cable-print { display:none; }

@media (max-width: 1280px) {
    .elg-cable-hero__inner { grid-template-columns:minmax(0,1fr) minmax(440px,.82fr); }
    .elg-cable-layout { grid-template-columns:minmax(0,1.25fr) minmax(380px,.75fr); }
    .elg-cable-step__body { padding-right:24px; }
    .elg-cable-grid--4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .elg-cable-presets__track { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 1060px) {
    .elg-cable-hero { min-height:auto; }
    .elg-cable-hero__inner { grid-template-columns:1fr; min-height:auto; padding-block:66px 103px; }
    .elg-cable-hero__visual { display:none; }
    .elg-cable-layout { grid-template-columns:1fr; }
    .elg-cable-results { position:relative; top:auto; }
    .elg-cable-kpis { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .elg-cable-analysis-grid { grid-template-columns:1fr; }
    .elg-cable-transparency { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 800px) {
    .elg-cable-shell { width:min(100% - 24px,1500px); }
    .elg-cable-hero__inner { padding-block:51px 92px; }
    .elg-cable-hero h1 { font-size:clamp(40px,12.7vw,60px); }
    .elg-cable-hero__content > p { font-size:16px; }
    .elg-cable-hero__actions { display:grid; }
    .elg-cable-hero__actions .elg-cable-btn { width:100%; }
    .elg-cable-trust { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .elg-cable-presets { margin-top:-56px; }
    .elg-cable-presets__track { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
    .elg-cable-presets__track::-webkit-scrollbar { display:none; }
    .elg-cable-preset { flex:0 0 225px; scroll-snap-align:start; }
    .elg-cable-calculator-section { padding:48px 0 61px; }
    .elg-cable-form,
    .elg-cable-results { border-radius:19px; }
    .elg-cable-form__header { padding:22px 19px; }
    .elg-cable-step { grid-template-columns:43px minmax(0,1fr); }
    .elg-cable-step__rail { padding-top:27px; }
    .elg-cable-step__rail span { width:30px; height:30px; border-width:3px; }
    .elg-cable-step__rail::after { top:58px; }
    .elg-cable-step__body { padding:25px 17px 27px 0; }
    .elg-cable-step__heading { display:grid; gap:10px; }
    .elg-cable-live-pill { justify-self:start; }
    .elg-cable-system { grid-template-columns:1fr; }
    .elg-cable-grid--2,
    .elg-cable-grid--3,
    .elg-cable-grid--4 { grid-template-columns:1fr; }
    .elg-cable-method-card { grid-template-columns:50px minmax(0,1fr); }
    .elg-cable-method-card__source { grid-column:1/-1; justify-self:start; }
    .elg-cable-criteria { grid-template-columns:1fr; }
    .elg-cable-motor-row { grid-template-columns:1fr; }
    .elg-cable-motor-fields { grid-template-columns:1fr; }
    .elg-cable-calculate-bar { display:grid; }
    .elg-cable-btn--calculate { width:100%; min-width:0; }
    .elg-cable-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .elg-cable-decision-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .elg-cable-factor-strip { grid-template-columns:1fr; }
    .elg-cable-transparency { grid-template-columns:1fr; }
    .elg-cable-transparency article { min-height:0; padding:28px 24px 24px; }
    .elg-cable-faq { grid-template-columns:1fr; }
    .elg-cable-sources { grid-template-columns:1fr; }
    .elg-cable-sources nav { justify-content:flex-start; }
    .elg-cable-final-cta__inner { grid-template-columns:1fr; }
    .elg-cable-final-cta__inner > div:last-child { min-width:0; }
    .elg-cable-modal { padding:12px; }
    .elg-cable-modal__dialog { padding:25px 18px 20px; border-radius:18px; max-height:calc(100vh - 24px); }
}

@media (max-width: 500px) {
    .elg-cable-trust { grid-template-columns:1fr; }
    .elg-cable-form__badge { display:none; }
    .elg-cable-result-main { grid-template-columns:85px minmax(0,1fr); padding-inline:15px; }
    .elg-cable-section-disc { width:80px; height:80px; }
    .elg-cable-section-disc::before { width:59px; height:59px; }
    .elg-cable-section-disc b { font-size:20px; }
    .elg-cable-result-main h3 { font-size:15px; }
    .elg-cable-kpis { gap:10px; padding:16px; }
    .elg-cable-kpis article { grid-template-columns:38px minmax(0,1fr); gap:11px; padding:14px; min-height:92px; }
    .elg-cable-kpi-icon { width:38px; height:38px; }
    .elg-cable-kpis small { font-size:8px; line-height:1.45; }
    .elg-cable-kpis strong { font-size:16px; line-height:1.14; }
    .elg-cable-kpis em { font-size:8px; line-height:1.42; }
    .elg-cable-result-actions { grid-template-columns:1fr; padding-inline:13px; }
    .elg-cable-result-actions [data-open-lead] { grid-column:auto; }
    .elg-cable-decision-grid { grid-template-columns:1fr; }
    .elg-cable-table-card,
    .elg-cable-chart-card { padding:15px; }
    .elg-cable-chart-card canvas { height:235px; }
}

@media (prefers-reduced-motion: reduce) {
    .elg-cable *,
    .elg-cable *::before,
    .elg-cable *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

@media print {
    body * { visibility:hidden !important; }
    body .elg-cable-print,
    body .elg-cable-print * { visibility:visible !important; }
    body .elg-cable-print { position:absolute; inset:0; display:block !important; width:100%; padding:24px; color:#15283e; background:#fff; font-family:Arial,Helvetica,sans-serif; }
    .elg-cable-print header { display:grid; grid-template-columns:150px 1fr; gap:24px; align-items:center; padding-bottom:18px; border-bottom:4px solid #ffc400; }
    .elg-cable-print header > strong { color:#072447; font-size:28px; letter-spacing:.04em; }
    .elg-cable-print h2 { margin:0; color:#072447; font-size:25px; }
    .elg-cable-print header p,
    .elg-cable-print footer { margin:3px 0 0; color:#67788b; font-size:10px; }
    .elg-cable-print__summary { margin:18px 0; padding:12px; border:1px solid #dce6ef; background:#f6f9fc; font-size:11px; }
    .elg-cable-print__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }
    .elg-cable-print__kpi { padding:11px; border:1px solid #dce6ef; border-radius:7px; }
    .elg-cable-print__kpi span { display:block; color:#64768a; font-size:8px; }
    .elg-cable-print__kpi strong { display:block; margin-top:3px; color:#073369; font-size:17px; }
    .elg-cable-print section { margin-top:20px; page-break-inside:avoid; }
    .elg-cable-print section h2 { margin:0 0 8px; color:#073369; font-size:16px; }
    .elg-cable-print section p,
    .elg-cable-print section li,
    .elg-cable-print section div { font-size:10px; line-height:1.55; }
    .elg-cable-print footer { margin-top:25px; padding-top:10px; border-top:1px solid #dce6ef; text-align:center; }
    @page { margin:12mm; size:A4 portrait; }
}
