/* Final layout pass. Original content and script-owned nodes remain intact. */
.j3-adaptive-art { display: contents; }
.j3-page .j3-symbol { display: inline-flex; align-items: center; justify-content: center; font-size: 0 !important; width: 24px; height: 24px; min-width: 24px; }
.j3-page .j3-symbol > svg { width: 24px; height: 24px; }
.j3-page .j3-hero-support .hero-visual { flex-wrap: wrap; }
.j3-page .uc-flip-front > .uc-card-problem-title, .j3-page .uc-flip-back > .uc-card-problem-label { display: none; }
.j3-about #about { overflow: clip; }
.j3-page:has(#jl-modal-overlay.jl-modal-open, #video-modal.open, #mob-menu.open, dialog[open]) :is(.jlw-teaser, .jotlink-call-button.jlw-idle) { visibility: hidden; pointer-events: none; }
.j3-page .j3-section-content > :is(.w, .container) > :last-child { margin-bottom: 0; }
.j3-page :is(.btn-main, .btn-primary, .btn-out, .btn-ghost, .btn-watch) { text-align: center; }
.j3-page :is(.btn-main, .btn-primary, .btn-out, .btn-ghost, .btn-watch) > svg { flex: 0 0 auto; }
.j3-page .faq-ico-wrap { flex: 0 0 auto; }
.j3-page .faq-item.open .faq-arrow { transform: rotate(180deg); }
.j3-page .faq-a p:last-child, .j3-page .faq-ans p:last-child { margin-bottom: 0; }
.j3-page .faq-item.open .faq-a .faq-ans { padding-bottom: 0; }
.j3-page .faq-body { max-height: 0; overflow: hidden; transition: max-height .25s; }
.j3-page .faq-body .faq-ans { max-height: none; padding-bottom: 24px; }
.j3-page .faq-item.open .faq-body { max-height: none; }
.j3-page .j3-mobile-groups .mob-menu-inner { display: contents; }

/* Coverage filtering: keep the no-results state tied to the original script. */
.j3-page[data-j3-page="esim-fmc"] .search-wrap { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; font-size: 13px; color: var(--j3-muted); }
.j3-page[data-j3-page="esim-fmc"] .search-input-wrap { position: relative; width: min(100%, 460px); }
.j3-page[data-j3-page="esim-fmc"] .search-input-wrap > svg { position: absolute; width: 20px; height: 20px; left: 17px; top: 17px; pointer-events: none; }
.j3-page[data-j3-page="esim-fmc"] .search-box { width: 100%; min-height: 54px; padding: 14px 18px 14px 48px; border: 1px solid var(--j3-line); border-radius: 10px; background: var(--j3-white); color: var(--j3-ink); font: inherit; outline-offset: 3px; }
.j3-page[data-j3-page="esim-fmc"] .search-box:focus-visible { outline: 2px solid var(--j3-accent); }
.j3-page .region-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 25px 0; }
.j3-page .region-btn { display: inline-flex; align-items: center; gap: 8px; padding: 12px 16px; border: 1px solid var(--j3-line); border-radius: 9px; background: var(--j3-white); color: var(--j3-muted); font-size: 13px; font-weight: 700; }
.j3-page .region-btn.active { background: var(--j3-ink); color: var(--j3-paper); border-color: var(--j3-ink); }
.j3-page .region-count { font-size: 10px; opacity: .75; }
.j3-page .countries-empty { display: none; text-align: center; padding: 35px 20px; color: var(--j3-muted); }
.j3-page .countries-empty.show { display: block; }

/* Results use two balanced columns without the original fixed image width. */
.j3-page .results-showcase { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 35px; }
.j3-page .results-media-col, .j3-page .results-stack { min-width: 0; width: 100%; }
.j3-page .results-media-card { width: 100%; }
.j3-page .results-media-img { width: 100%; height: auto; }
.j3-page .results-stack .benefits-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.j3-page .results-stack .benefit { display: flex; align-items: flex-start; gap: 16px; padding: 24px; }
.j3-page .results-stack .benefit-i { flex: 0 0 34px; color: var(--j3-accent); }
.j3-page .results-stack .benefit-i svg { width: 26px; height: 26px; }
.j3-page .results-stack .benefit h3 { margin: 0 0 8px; font-size: 19px; }
.j3-page .results-stack .benefit p { margin: 0; font-size: 14px; line-height: 1.75; }
.j3-page .metrics-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; margin-top: 32px; }
.j3-page .metrics-grid .metric { min-width: 0; padding: 26px; background: var(--j3-white); border: 1px solid var(--j3-line); border-radius: 14px; }
.j3-page .metric-n { font-size: 36px; font-weight: 800; letter-spacing: -.035em; line-height: 1.2; color: var(--j3-ink); }
.j3-page .metric-d { margin-top: 12px; font-size: 13px; line-height: 1.7; color: var(--j3-muted); }
.j3-page .metric-live { display: flex; align-items: flex-start; gap: 7px; margin-top: 18px; font-size: 10px; font-weight: 700; line-height: 1.6; color: var(--j3-muted); }
.j3-page .metric-live-dot { width: 5px; height: 5px; border-radius: 50%; flex: 0 0 5px; background: var(--j3-accent); margin-top: 5px; }

/* Scenarios retain the existing comparison engine and selected states. */
.j3-page[data-j3-page="ai-receptionist-comparison"] .tbl-wrap { display: none; }
.j3-page[data-j3-page="ai-receptionist-comparison"] .j3-functional { --grad-dark: #0d0d1a; --grad-light: #50497e; --accent-rgb: 207, 130, 84; }
.j3-page .scen-wrap { margin: 30px 0 18px; }
.j3-page .scen-cap { color: var(--j3-muted); }
.j3-page .scen-tabs { background: var(--j3-sage); border: 1px solid var(--j3-line); box-shadow: none; }
.j3-page .scen-tab { color: var(--j3-ink); }
.j3-page .scen-tab.is-on { background: var(--j3-ink); color: var(--j3-paper); box-shadow: none; }
.j3-page .duel-card { background: var(--j3-white); border: 1px solid var(--j3-line); box-shadow: none; }
.j3-page .duel-card::before, .j3-page .duel-card::after { display: none; }
.j3-page .duel-vs { background: var(--j3-ink); box-shadow: none; color: var(--j3-paper); }
.j3-page .duel :is(.dtab, .dv) { box-shadow: none; }
.j3-page .duel .dtab.is-on { background: var(--j3-sage); border-color: var(--j3-accent); }
.j3-page .duel .dsave { background: var(--j3-ink); color: var(--j3-paper); box-shadow: none; white-space: normal; }
.j3-page .duel .dmult { background: var(--j3-peach); color: #794631; border-color: var(--j3-line); }
.j3-page .duel .drow--hero .dv--op .dbig { color: var(--j3-accent); }
.j3-page .duel .drow--hero .dv--op .mbar { background: var(--j3-accent); box-shadow: none; }
.j3-page .duel :is(.drow > *, .dh) { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }

/* Calculator surfaces and visible, keyboard-accessible slider tracks. */
.j3-page .jl-cc-root { --cyan: var(--j3-accent); }
.j3-page .jl-cc-header-text h2 { font-size: clamp(30px, 3vw, 44px); line-height: 1.16; letter-spacing: -.035em; }
.j3-page :is(.jl-cc-controls, .jl-cc-research, .jl-cc-prod-card, .jl-cc-data-card, .jl-cc-roi-banner) { box-shadow: none; border-radius: 14px; }
.j3-page .jl-cc-root input[type="range"] { background: var(--j3-line); cursor: pointer; margin-block: 12px; }
.j3-page .jl-cc-root input[type="range"]:focus-visible { outline: 2px solid var(--j3-accent); outline-offset: 6px; }
.j3-page .jl-cc-root input[type="range"]::-webkit-slider-thumb { background: var(--j3-ink); border: 3px solid var(--j3-paper); box-shadow: 0 0 0 1px var(--j3-ink); width: 20px; height: 20px; }
.j3-page .jl-cc-root input[type="range"]::-moz-range-thumb { background: var(--j3-ink); border: 3px solid var(--j3-paper); box-shadow: 0 0 0 1px var(--j3-ink); width: 14px; height: 14px; }
.j3-page .jl-cc-research { background: var(--j3-sage); border-color: var(--j3-line); border-left-color: var(--j3-accent); }
.j3-page .jl-cc-roi-banner { background: var(--j3-sage); border-color: var(--j3-line); }
.j3-page .jl-cc-roi-amount { color: var(--j3-ink); text-shadow: none; }
.j3-page .jl-cc-roi-ratio strong { color: var(--j3-ink); }

.j3-developer .toc-mobile { display: none; }
.j3-developer .soon-down { display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 12px 18px; margin-top: 16px; border: 1px solid var(--j3-line); border-radius: 9px; background: var(--j3-white); color: var(--j3-ink); font: inherit; font-size: 13px; font-weight: 700; text-align: center; line-height: 1.6; }
@media (min-width: 601px) and (max-width: 1000px) {
  .j3-page .price-tooltip-body { left: auto; right: -8px; transform: none; }
}

/* Home: eSIM duration switch and package cards. */
.j3-page .esim-inline { margin-bottom: 28px; }
.j3-page .ei-tgl { display: inline-flex; flex-wrap: wrap; gap: 6px; padding: 5px; border: 1px solid var(--j3-line); border-radius: 12px; background: var(--j3-sage); margin-bottom: 22px; }
.j3-page .ei-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 17px; border: 0; border-radius: 8px; background: transparent; color: var(--j3-muted); font-size: 13px; font-weight: 700; }
.j3-page .ei-btn.on { background: var(--j3-ink); color: var(--j3-paper); }
.j3-page .ei-save { font-size: 10px; padding: 3px 6px; background: var(--j3-peach); color: #0d0d1a; border-radius: 4px; }
.j3-page .ei-packs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.j3-page .ei-pack { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; position: relative; padding: 24px; min-height: 122px; border: 1px solid var(--j3-line); border-radius: 14px; background: var(--j3-white); }
.j3-page .ei-pack.hot { border-color: var(--j3-accent); background: var(--j3-sage); }
.j3-page .ei-gb { color: var(--j3-ink); font-weight: 800; font-size: 30px; letter-spacing: -.035em; line-height: 1.2; }
.j3-page .ei-days { color: var(--j3-muted); font-size: 12px; margin-top: 8px; }
.j3-page .ei-pop { position: absolute; top: 12px; right: 12px; padding: 3px 6px; border-radius: 5px; background: var(--j3-peach); color: #0d0d1a; font-size: 9px; font-weight: 800; }
.j3-page .ei-note { font-size: 12px; line-height: 1.6; margin: 16px 0 0; }

/* Home: app availability and closing statistics. */
.j3-page[data-j3-page="home-page"] .j3-section-cta .cta-left { max-width: 850px; margin: 0 auto; text-align: center; }
.j3-page[data-j3-page="home-page"] .j3-section-cta .cta-left > p { margin: 18px auto 28px; max-width: 720px; font-size: 17px; line-height: 1.8; }
.j3-page[data-j3-page="home-page"] .j3-section-cta .cta-left > div:has(> .btn-main) { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 12px; }
.j3-page .cta-dl-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.j3-page .cta-dl-row .cta-store { display: flex; align-items: center; gap: 10px; padding: 10px 15px; border: 1px solid var(--j3-line); border-radius: 9px; text-align: left; }
.j3-page .cta-store > svg { width: 19px; height: 22px; flex-shrink: 0; }
.j3-page .cta-store span, .j3-page .cta-store strong { display: block; line-height: 1.4; }
.j3-page .cta-store span { font-size: 9px; color: var(--j3-muted); }
.j3-page .cta-store strong { font-size: 12px; }
.j3-page .cta-stat-icon { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid var(--j3-line); border-radius: 9px; margin-bottom: 18px; color: var(--j3-accent); }
.j3-page .cta-stat :is(.cta-stat-n, .cta-stat-l, .cta-stat-d) { display: block; }
.j3-page .cta-stat .cta-stat-n { line-height: 1.2; margin-bottom: 8px; }
.j3-page .cta-stat .cta-stat-l { font-weight: 800; font-size: 13px; }
.j3-page .cta-stat .cta-stat-d { font-size: 11px; line-height: 1.65; color: var(--j3-muted); margin-top: 8px; }
.j3-page .j3-hero-support .j3-product-note { min-height: 70px; gap: 12px; }
.j3-page .pb-txt { line-height: 1.4; }
.j3-page .pb-txt > :is(span, strong) { white-space: normal; }

@media (min-width: 1000px) {
  .j3-page[data-j3-page="home-page"] :is(#messenger, #crm) .prd-img { position: sticky; top: 112px; align-self: start; }
}
@media (max-width: 760px) {
  .j3-page .results-showcase { grid-template-columns: 1fr; gap: 20px; }
  .j3-page .results-stack .benefit { padding: 20px; }
  .j3-page .region-tabs { gap: 7px; }
  .j3-page .region-btn { padding: 10px 12px; font-size: 12px; }
  .j3-page .ei-pack { padding: 20px; min-height: 126px; }
  .j3-page .ei-gb { font-size: 27px; }
  .j3-page .ei-tgl { width: 100%; }
  .j3-page .ei-btn { flex: 1; padding: 11px 10px; font-size: 12px; }
  .j3-page .ei-save { font-size: 9px; }
  .j3-page .cta-dl-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .j3-page .cta-dl-row .cta-store { justify-content: center; padding: 11px; }
  .j3-page .j3-hero-support .j3-product-note { margin: 5px; min-height: 60px; }
}

/* Long dialogs must reveal that more content is available below the fold. */
.j3-page .j3-functional #jl-modal-box {
  scrollbar-width:thin;
  scrollbar-color:var(--j3-muted) var(--j3-paper);
  scrollbar-gutter:stable;
}
.j3-page .j3-functional #jl-modal-box::-webkit-scrollbar {display:block;width:7px;}
.j3-page .j3-functional #jl-modal-box::-webkit-scrollbar-track {background:var(--j3-paper);border-radius:8px;}
.j3-page .j3-functional #jl-modal-box::-webkit-scrollbar-thumb {background:var(--j3-muted);border:2px solid var(--j3-paper);border-radius:8px;}

/* Demo forms share the same compact introduction on every page. */
.j3-page #jl-modal-box .jl-demo-note {display:none;}
