/*
 * Home portal block styles.
 * Every selector is scoped under .ntn-home-portal so this component cannot
 * change header, catalog, detail or admin layouts.
 */

/* Home product stage: a light editorial surface between the dark header and content. */
.ntn-service-hero {
    background: linear-gradient(145deg, #e8edf3 0%, #f8fafc 48%, #edf1f5 100%);
    color: #111c2e;
}

.ntn-service-backdrop-slider {
    opacity: .18;
    filter: grayscale(.12) saturate(.82) contrast(.96);
}

.ntn-service-hero:has(.ntn-service-backdrop-slider) .ntn-service-hero__shade,
.ntn-service-hero .ntn-service-hero__shade {
    background: linear-gradient(180deg, rgba(242,246,250,.72), rgba(231,237,244,.86));
    backdrop-filter: blur(9px);
}

.ntn-service-tile {
    border-color: rgba(107,123,145,.28);
    background: rgba(255,255,255,.78);
    color: #111c2e;
    box-shadow: 0 13px 34px rgba(23,38,59,.10), inset 0 1px 0 rgba(255,255,255,.9);
}

.ntn-service-tile:before {
    opacity: .28;
    filter: grayscale(.08) saturate(.92) contrast(1.02);
}

.ntn-service-tile:after {
    background: linear-gradient(145deg, rgba(255,255,255,.80), rgba(242,246,250,.64));
}

.ntn-service-tile:hover {
    border-color: #ef3947;
    box-shadow: 0 24px 52px rgba(23,38,59,.17), 0 0 0 1px rgba(239,57,71,.1);
}

.ntn-service-tile:hover:before {
    opacity: .38;
    filter: grayscale(0) saturate(1.02) contrast(1.04);
}

.ntn-service-tile:hover:after {
    background: linear-gradient(145deg, rgba(255,255,255,.72), rgba(242,246,250,.56));
}

.ntn-service-tile h2 { color: #101a2b; text-shadow: none; }
.ntn-service-tile p { color: #526176; text-shadow: none; }
.ntn-service-tile b { color: #152136; }
.ntn-service-tile:hover b i { color: #ef3947; }
.ntn-home-portal .legacy-statement {
    min-height: 0;
    padding: 52px 0 44px;
    display: block;
    background: #fff;
}

.ntn-home-portal .ntn-capability-band {
    position: relative;
    z-index: 2;
    background: #111b2b;
    color: #fff;
    border-top: 1px solid rgba(255,255,255,.08);
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.ntn-home-portal .ntn-capability-band .container {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
}

.ntn-home-portal .ntn-capability-band .container > div {
    position: relative;
    min-height: 132px;
    padding: 25px 24px;
    display: grid;
    grid-template-columns: 28px 1fr;
    align-content: center;
    gap: 7px 10px;
    border-right: 1px solid rgba(255,255,255,.1);
    transition: background .28s ease;
}

.ntn-home-portal .ntn-capability-band .container > div:last-child { border-right:0; }
.ntn-home-portal .ntn-capability-band .container > div:hover { background:rgba(239,57,71,.08); }
.ntn-home-portal .ntn-capability-band small { grid-row:1 / span 2; color:#ef3947; font-size:9px; font-weight:850; }
.ntn-home-portal .ntn-capability-band span { color:#77859a; font-size:8px; font-weight:850; letter-spacing:1.25px; }
.ntn-home-portal .ntn-capability-band b { color:#fff; font-size:14px; line-height:1.25; }

@media(max-width:780px) {
    .ntn-home-portal .ntn-capability-band .container { display:flex; overflow-x:auto; padding-inline:20px; scroll-snap-type:x mandatory; scrollbar-width:none; }
    .ntn-home-portal .ntn-capability-band .container::-webkit-scrollbar { display:none; }
    .ntn-home-portal .ntn-capability-band .container > div { flex:0 0 70vw; min-height:112px; scroll-snap-align:start; }
}

.ntn-home-portal .legacy-statement .container {
    display: grid;
    grid-template-columns: .32fr 1fr;
    column-gap: 70px;
    row-gap: 22px;
    align-items: start;
}

.ntn-home-portal .legacy-statement h2 {
    max-width: 820px;
    margin: 0;
    font-size: clamp(44px, 4.35vw, 66px);
    line-height: 1;
    letter-spacing: -4px;
}

.ntn-home-portal .legacy-statement p {
    grid-column: 2;
    max-width: 760px;
    margin: 0;
    font-size: 17px;
    line-height: 1.65;
}

.ntn-home-portal .statement-module-rail {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(var(--scope-count, 5), minmax(0, 1fr));
    margin-top: 8px;
    border-top: 1px solid #dfe4eb;
    border-bottom: 1px solid #dfe4eb;
}

.ntn-home-portal .statement-module-rail > a {
    min-height: 106px;
    padding: 19px 18px;
}

.ntn-home-portal .pride-products {
    background: #eef1f5;
    padding-top: 68px;
    padding-bottom: 76px;
}

.ntn-home-portal .pride-section-head {
    grid-template-columns: 1.25fr .75fr;
    align-items: end;
    margin-bottom: 34px;
}

.ntn-home-portal .pride-section-head h2 {
    max-width: 720px;
    font-size: clamp(42px, 4.4vw, 64px);
    letter-spacing: -3.5px;
}

.ntn-home-portal .pride-section-head p {
    max-width: 430px;
    margin: 0 0 4px;
}

.ntn-home-portal .pride-category-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
}

.ntn-home-portal .pride-category-grid > a:not(.mobile-scope-card) {
    min-height: 400px;
    border-radius: 15px;
}

.ntn-home-portal .pride-category-grid > a:not(.mobile-scope-card) .pride-category-image {
    height: 225px;
}

.ntn-home-portal .pride-category-grid > a {
    position: relative;
}

.ntn-home-portal .pride-category-grid > a:after {
    content: "";
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 0;
    height: 3px;
    border-radius: 99px 99px 0 0;
    background: #ef3947;
    transform: scaleX(.18);
    transform-origin: left;
    opacity: .45;
    transition: transform .35s ease, opacity .35s ease;
}

.ntn-home-portal .pride-category-grid > a:hover:after {
    transform: scaleX(1);
    opacity: 1;
}

.ntn-home-portal .pride-category-grid > a.mobile-scope-card {
    grid-column: span 2;
    min-height: 420px;
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    background: #0c1728;
    border-color: #25344a;
}

.ntn-home-portal .mobile-scope-card .pride-category-image {
    height: 100%;
    min-height: 420px;
}

.ntn-home-portal .pride-category-image.split-visual {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px;
    background: #06101e;
    padding: 12px;
}

.ntn-home-portal .pride-category-image.split-visual img {
    position: relative;
    width: 100%;
    height: 100%;
    min-width: 0;
    object-fit: contain;
    object-position: center;
    background: #071321;
    border-radius: 10px;
}

.ntn-home-portal .pride-category-image.split-visual img:only-of-type {
    grid-column: 1 / -1;
}

.ntn-home-portal .mobile-scope-card:hover .pride-category-image.split-visual img {
    transform: none;
}

.ntn-home-portal .mobile-scope-card .pride-category-body {
    padding: 42px;
    align-content: center;
}

.ntn-home-portal .mobile-scope-card .pride-category-body small { color: #ff5b69; }
.ntn-home-portal .mobile-scope-card .pride-category-body h3 {
    margin: 14px 0 20px;
    color: #fff;
    font-size: 34px;
    line-height: 1.05;
}
.ntn-home-portal .mobile-scope-card .pride-category-body p {
    color: #aeb9c9;
    white-space: normal;
    line-height: 1.7;
}
.ntn-home-portal .mobile-scope-card .pride-category-body b {
    margin-top: 32px;
    color: #fff;
}

@media (max-width: 980px) {
    .ntn-home-portal .legacy-statement { padding: 52px 0 42px; }
    .ntn-home-portal .legacy-statement .container {
        grid-template-columns: 1fr;
        column-gap: 0;
        row-gap: 22px;
    }
    .ntn-home-portal .legacy-statement p { grid-column: auto; }
    .ntn-home-portal .statement-module-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ntn-home-portal .pride-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ntn-home-portal .pride-category-grid > a.mobile-scope-card { grid-column: 1 / -1; }
}

@media (max-width: 700px) {
    .ntn-home-portal .legacy-statement { padding: 42px 0 34px; }
    .ntn-home-portal .legacy-statement .container { gap: 18px; }
    .ntn-home-portal .legacy-statement h2 {
        font-size: 42px;
        letter-spacing: -2px;
    }
    .ntn-home-portal .legacy-statement p { font-size: 15px; }
    .ntn-home-portal .statement-module-rail {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }
    .ntn-home-portal .statement-module-rail::-webkit-scrollbar { display: none; }
    .ntn-home-portal .statement-module-rail > a {
        flex: 0 0 72vw;
        scroll-snap-align: start;
    }
    .ntn-home-portal .pride-category-grid { grid-template-columns: 1fr; }
    .ntn-home-portal .pride-category-grid > a.mobile-scope-card {
        grid-column: auto;
        display: block;
        min-height: auto;
    }
    .ntn-home-portal .mobile-scope-card .pride-category-image {
        height: 250px;
        min-height: 250px;
    }
    .ntn-home-portal .pride-category-image.split-visual {
        padding: 7px;
        gap: 7px;
    }
    .ntn-home-portal .mobile-scope-card .pride-category-body { padding: 28px; }
    .ntn-home-portal .mobile-scope-card .pride-category-body h3 { font-size: 27px; }
}

/* 2026 home stage: editorial hierarchy, flagship systems and compact archive. */
.ntn-service-hero {
    min-height: auto;
    padding: 132px 0 48px;
    display: block;
    overflow: hidden;
    background: #e9eef4;
    color: #111b2d;
}

.ntn-service-backdrop-slider {
    opacity: .2;
    filter: saturate(.72) contrast(.92);
    mix-blend-mode: multiply;
}

.ntn-service-hero:has(.ntn-service-backdrop-slider) .ntn-service-hero__shade,
.ntn-service-hero .ntn-service-hero__shade {
    background:
        linear-gradient(90deg, rgba(238,243,248,.97) 0%, rgba(238,243,248,.91) 46%, rgba(238,243,248,.82) 100%),
        linear-gradient(180deg, rgba(255,255,255,.62), rgba(222,229,238,.78));
    backdrop-filter: blur(12px);
}

.ntn-service-hero:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(17,27,45,.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(17,27,45,.045) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: linear-gradient(180deg, #000, transparent 82%);
}

.ntn-home-stage { position: relative; }

.ntn-service-hero { background:linear-gradient(145deg,#e7ecf2 0%,#f4f6f9 48%,#e9eef4 100%); }
.ntn-service-hero:has(.ntn-service-backdrop-slider) .ntn-service-hero__shade,
.ntn-service-hero .ntn-service-hero__shade { background:rgba(238,243,248,.86); backdrop-filter:blur(10px); }
.ntn-service-hero:after { opacity:.32; }

.ntn-home-product-grid {
    width:100%;
    display:grid;
    grid-template-columns:repeat(8,calc((100% - 4.9%) / 8));
    grid-template-rows:repeat(2,calc((100% - 1.4%) / 2));
    column-gap:.7%;
    row-gap:1.4%;
}

.ntn-home-product-card {
    position:relative;
    isolation:isolate;
    min-width:0;
    min-height:0;
    height:100%;
    padding:10%;
    border:1px solid rgba(85,105,132,.38);
    border-radius:7px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    color:#fff;
    background:#142237;
    box-shadow:0 12px 30px rgba(28,43,63,.15);
    transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease;
}

.ntn-home-product-card:before {
    content:"";
    position:absolute;
    inset:-3%;
    z-index:-2;
    background-image:var(--tile-bg);
    background-size:cover;
    background-position:center;
    filter:saturate(.92) contrast(1.02);
    transform:scale(1.03);
    transition:transform .55s ease,filter .35s ease;
}

.ntn-home-product-card:after {
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:linear-gradient(180deg,rgba(6,16,29,.13) 0%,rgba(6,16,29,.22) 31%,rgba(6,16,29,.72) 62%,rgba(6,16,29,.97) 100%);
}

.ntn-home-product-card:hover { z-index:3; transform:translateY(-5px); border-color:#ef3947; box-shadow:0 22px 45px rgba(0,0,0,.42); }
.ntn-home-product-card:hover:before { transform:scale(1.09); filter:saturate(1.08); }
.ntn-home-product-card > span { color:#ff6570; font-size:clamp(7px,.47vw,9px); line-height:1.2; font-weight:850; letter-spacing:.9px; text-transform:uppercase; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-shadow:0 1px 7px rgba(0,0,0,.7); }
.ntn-home-product-card h2 { margin:auto 0 7%; color:#fff; font-size:clamp(14px,1vw,19px); line-height:1.03; letter-spacing:-.5px; text-shadow:0 2px 12px rgba(0,0,0,.72); }
.ntn-home-product-card p { margin:0; color:#e1e6ed; font-size:clamp(8px,.55vw,10px); line-height:1.5; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; text-shadow:0 1px 8px rgba(0,0,0,.7); }
.ntn-home-product-card b { margin-top:8%; padding-top:0; color:#fff; font-size:clamp(8px,.5vw,9px); }
.ntn-home-product-card b i { margin-left:8px; color:#ef3947; font-style:normal; }

.ntn-home-stage__lead {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr);
    column-gap: clamp(50px, 7vw, 112px);
    align-items: end;
    padding: 34px 0 48px;
    border-bottom: 1px solid rgba(67,84,108,.22);
}

.ntn-home-stage__eyebrow {
    grid-column: 1;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    color: #ef3947;
    font-size: 10px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: 1.8px;
}

.ntn-home-stage__eyebrow:before {
    content: "";
    width: 30px;
    height: 2px;
    background: #ef3947;
}

.ntn-home-stage__lead h1 {
    grid-column: 1;
    margin: 0;
    max-width: 800px;
    color: #0d1728;
    font-size: clamp(56px, 6vw, 92px);
    line-height: .88;
    letter-spacing: -.072em;
    font-weight: 850;
}

.ntn-home-stage__lead > p {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: end;
    margin: 0 0 6px;
    max-width: 520px;
    color: #536176;
    font-size: 17px;
    line-height: 1.72;
}

.ntn-home-stage__actions {
    grid-column: 1;
    display: flex;
    align-items: center;
    gap: 26px;
    margin-top: 34px;
}

.ntn-home-stage__actions .btn { min-height: 52px; padding-inline: 24px; }
.ntn-home-stage__actions i,
.ntn-home-stage__link i { font-style: normal; }
.ntn-home-stage__link { color: #111b2d; font-size: 12px; font-weight: 800; }
.ntn-home-stage__link i { margin-left: 8px; color: #ef3947; transition: transform .25s ease; }
.ntn-home-stage__link:hover i { display: inline-block; transform: translate(3px,-3px); }

.ntn-home-stage__facts {
    grid-column: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    align-self: end;
    border-top: 1px solid rgba(67,84,108,.22);
    margin-top: 32px;
}

.ntn-home-stage__facts span { padding: 18px 14px 0 0; display: grid; gap: 4px; }
.ntn-home-stage__facts b { color: #111b2d; font-size: 20px; line-height: 1; }
.ntn-home-stage__facts small { color: #748196; font-size: 9px; text-transform: uppercase; letter-spacing: .65px; }

.ntn-home-stage__flagships {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 12px;
    padding: 14px 0 10px;
}

.ntn-flagship-card {
    --card-overlay: rgba(7,18,33,.74);
    position: relative;
    isolation: isolate;
    min-height: 330px;
    padding: 24px;
    border: 1px solid rgba(77,96,123,.45);
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    color: #fff;
    background: #0b192b;
    box-shadow: 0 16px 35px rgba(32,48,69,.13);
    transition: transform .38s cubic-bezier(.2,.75,.25,1), box-shadow .38s ease, border-color .38s ease;
}

.ntn-flagship-card:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: var(--tile-bg);
    background-size: cover;
    background-position: center;
    transition: transform .65s cubic-bezier(.2,.75,.25,1);
}

.ntn-flagship-card:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgba(7,18,33,.28), var(--card-overlay) 58%, rgba(7,18,33,.97));
}

.ntn-flagship-card:hover { transform: translateY(-7px); border-color:#ef3947; box-shadow: 0 24px 55px rgba(25,39,60,.24); }
.ntn-flagship-card:hover:before { transform: scale(1.055); }
.ntn-flagship-card > span { display:flex; justify-content:space-between; gap:12px; color:#ff6571; font-size:8px; font-weight:850; letter-spacing:1px; text-transform:uppercase; }
.ntn-flagship-card > span i { color:rgba(255,255,255,.56); font-style:normal; }
.ntn-flagship-card h2 { max-width: 280px; margin: auto 0 12px; color:#fff; font-size:24px; line-height:1.02; letter-spacing:-1px; }
.ntn-flagship-card p { margin:0; color:#d4dbe5; font-size:11px; line-height:1.55; }
.ntn-flagship-card b { margin-top:24px; color:#fff; font-size:9px; }
.ntn-flagship-card b i { margin-left:8px; color:#ff5865; font-style:normal; }

.ntn-home-card-light {
    --beam-angle: 0deg;
    position: absolute !important;
    inset: 0 !important;
    z-index: 5 !important;
    margin: 0 !important;
    padding: 1px !important;
    border-radius: inherit !important;
    pointer-events: none;
    background: conic-gradient(
        from var(--beam-angle),
        transparent 0 67%,
        rgba(239,57,71,.04) 73%,
        #b81e32 80%,
        #ef3947 86%,
        #ff8a93 89%,
        rgba(239,57,71,.06) 94%,
        transparent 100%
    );
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: ntnHomeCardBeam 5.8s linear infinite;
    filter: drop-shadow(0 0 3px rgba(239,57,71,.28));
}

.ntn-archive-card:nth-child(2n) .ntn-home-card-light { animation-delay: -1.15s; }
.ntn-archive-card:nth-child(3n) .ntn-home-card-light { animation-delay: -2.3s; }
.ntn-flagship-card:nth-child(2n) .ntn-home-card-light { animation-delay: -2.3s; }

@property --beam-angle {
    syntax: "<angle>";
    initial-value: 0deg;
    inherits: false;
}

@keyframes ntnHomeCardBeam {
    to { --beam-angle: 360deg; }
}

.ntn-home-stage__archive-head {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: end;
    gap: 30px;
    padding: 20px 0 14px;
}
.ntn-home-stage__archive-head span { color:#ef3947; font-size:9px; font-weight:850; letter-spacing:1.5px; }
.ntn-home-stage__archive-head p { margin:0; color:#6b7789; font-size:11px; text-align:right; }

.ntn-home-stage__archive {
    display: grid;
    grid-template-columns: repeat(6, minmax(0,1fr));
    gap: 8px;
    padding-top: 0;
}

.ntn-home-product-marquee {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border-top: 1px solid rgba(80,98,122,.24);
    border-bottom: 1px solid rgba(80,98,122,.24);
    background: rgba(255,255,255,.48);
    mask-image: linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
}

.ntn-home-product-marquee__track {
    width: max-content;
    height: 100%;
    display: flex;
    align-items: center;
    animation: ntnHomeProductFlow 42s linear infinite;
    will-change: transform;
}

.ntn-home-product-marquee:hover .ntn-home-product-marquee__track { animation-play-state: paused; }
.ntn-home-product-marquee a { height:100%; padding:0 22px; display:flex; align-items:center; gap:10px; border-right:1px solid rgba(80,98,122,.16); white-space:nowrap; color:#111b2d; }
.ntn-home-product-marquee a i { width:5px; height:5px; border-radius:50%; background:#ef3947; box-shadow:0 0 0 4px rgba(239,57,71,.1); }
.ntn-home-product-marquee a span { font-size:10px; font-weight:800; }
.ntn-home-product-marquee a small { color:#8591a2; font-size:7px; font-weight:750; text-transform:uppercase; letter-spacing:.7px; }

@keyframes ntnHomeProductFlow { to { transform:translateX(-50%); } }

@media (min-width: 1181px) and (min-height: 760px) {
    .ntn-service-hero {
        height: 100svh;
        min-height: 760px;
        padding: 132px 0 1.2%;
        background:linear-gradient(145deg,#e7ecf2 0%,#f5f7fa 50%,#e8edf3 100%);
    }
    .ntn-service-hero:has(.ntn-service-backdrop-slider) .ntn-service-hero__shade,
    .ntn-service-hero .ntn-service-hero__shade { background:rgba(238,243,248,.86); backdrop-filter:blur(10px); }
    .ntn-service-hero:after { opacity:.32; }
    .ntn-home-stage {
        height: 100%;
        display: grid;
        grid-template-rows: 91% 9%;
        row-gap: 0;
    }
    .ntn-home-product-grid { height:100%; padding-bottom:.7%; }
    .ntn-home-stage__flagships {
        height:100%;
        padding:0 0 .7%;
        gap:.8%;
    }
    .ntn-flagship-card {
        min-height:0;
        height:100%;
        padding:6.2%;
    }
    .ntn-flagship-card h2 { font-size:clamp(18px,1.28vw,25px); }
    .ntn-flagship-card p { font-size:clamp(9px,.61vw,11px); }
    .ntn-home-stage__archive {
        height:100%;
        grid-template-columns:repeat(6,minmax(0,1fr));
        grid-template-rows:repeat(2,minmax(0,1fr));
        gap:2.2% .65%;
        padding:0 0 .7%;
    }
    .ntn-archive-card {
        min-height:0;
        height:100%;
        padding:8%;
    }
    .ntn-archive-card h2 { margin:12% 0 5%; font-size:clamp(11px,.76vw,14px); }
    .ntn-home-product-marquee { height:100%; }
}

.ntn-archive-card {
    position: relative;
    isolation: isolate;
    min-height: 145px;
    padding: 16px;
    border: 1px solid rgba(80,98,122,.25);
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    color:#101b2d;
    background:rgba(255,255,255,.72);
    box-shadow:0 8px 22px rgba(33,48,67,.07);
    transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.ntn-archive-card:before { content:""; position:absolute; inset:0; z-index:-2; background-image:var(--tile-bg); background-size:cover; background-position:center; opacity:.14; filter:grayscale(.25); transition:opacity .3s,transform .5s; }
.ntn-archive-card:after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(239,243,248,.78)); }
.ntn-archive-card:hover { transform:translateY(-4px); border-color:rgba(239,57,71,.7); box-shadow:0 15px 34px rgba(33,48,67,.14); }
.ntn-archive-card:hover:before { opacity:.23; transform:scale(1.05); }
.ntn-archive-card span { color:#ef3947; font-size:7px; line-height:1.2; font-weight:850; letter-spacing:.75px; text-transform:uppercase; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ntn-archive-card h2 { margin:18px 0 8px; color:#111b2d; font-size:14px; line-height:1.08; letter-spacing:-.25px; }
.ntn-archive-card b { margin-top:auto; color:#ef3947; font-size:13px; }
.ntn-archive-card b i { font-style:normal; }

@media (max-width: 1180px) {
    .ntn-home-product-grid { grid-template-columns:repeat(4,calc((100% - 2.1%) / 4)); grid-template-rows:auto; }
    .ntn-home-product-card { min-height:250px; padding:8%; }
    .ntn-home-stage__lead { grid-template-columns:1fr .75fr; }
    .ntn-home-stage__flagships { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ntn-flagship-card { min-height:285px; }
    .ntn-home-stage__archive { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

@media (max-width: 780px) {
    .ntn-service-hero { padding:82px 0 32px; }
    .ntn-service-hero:after { background-size:40px 40px; }
    .ntn-home-stage__lead { grid-template-columns:1fr; padding:24px 0 34px; }
    .ntn-home-stage__eyebrow,.ntn-home-stage__lead h1,.ntn-home-stage__lead>p,.ntn-home-stage__actions,.ntn-home-stage__facts { grid-column:1; grid-row:auto; }
    .ntn-home-stage__lead h1 { font-size:clamp(48px,15vw,68px); }
    .ntn-home-stage__lead>p { margin-top:24px; font-size:15px; }
    .ntn-home-stage__actions { align-items:flex-start; flex-direction:column; gap:18px; }
    .ntn-home-stage__facts { width:100%; }
    .ntn-home-stage__flagships { display:flex; overflow-x:auto; margin-right:calc((100vw - 100%)/-2); padding-right:20px; scroll-snap-type:x mandatory; scrollbar-width:none; }
    .ntn-home-stage__flagships::-webkit-scrollbar { display:none; }
    .ntn-flagship-card { flex:0 0 78vw; min-height:340px; scroll-snap-align:start; }
    .ntn-home-stage__archive-head { grid-template-columns:1fr; gap:8px; }
    .ntn-home-stage__archive-head p { text-align:left; }
    .ntn-home-stage__archive { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ntn-archive-card { min-height:140px; }
    .ntn-home-product-grid { grid-template-columns:repeat(2,calc((100% - 2.2%) / 2)); column-gap:2.2%; row-gap:8px; }
    .ntn-home-product-card { min-height:250px; padding:9%; }
    .ntn-home-product-card h2 { font-size:17px; margin-top:18%; }
    .ntn-home-product-card p { font-size:9px; }
    .ntn-home-product-marquee { height:58px; margin-top:14px; margin-right:calc((100vw - 100%)/-2); }
    .ntn-home-product-marquee a { padding-inline:16px; }
}

@media (max-width: 430px) {
    .ntn-home-stage__lead h1 { font-size:47px; }
    .ntn-home-stage__facts b { font-size:16px; }
    .ntn-home-stage__facts small { font-size:7px; }
    .ntn-home-stage__archive { grid-template-columns:1fr 1fr; gap:7px; }
    .ntn-archive-card { padding:14px; min-height:134px; }
    .ntn-archive-card h2 { font-size:13px; }
}

@media (prefers-reduced-motion: reduce) {
    .ntn-flagship-card,.ntn-flagship-card:before,.ntn-archive-card,.ntn-archive-card:before { transition:none; }
    .ntn-home-card-light { animation:none; --beam-angle:225deg; }
    .ntn-home-product-marquee__track { animation:none; }
}
