:root { --v2-navy:#0b1f33; --v2-technical:#101f2d; --v2-blue:#245aa8; --v2-electric:#3d8dde; --v2-steel:#b8c4d0; --v2-white:#f5f7fa; }
body { color:#12202b; background:#fff; font-family:Inter,"Segoe UI",Arial,sans-serif; }
.phase-two-header { background:#0b1f33ee; }
.phase-two-header .brand-mark { background:var(--v2-blue); }
.phase-two-header .nav-cta,.phase-two-hero .button.primary,.button.primary { background:var(--v2-blue); }
.phase-two-header .nav-cta:hover,.button.primary:hover { background:#174783; }
.phase-two-header .menu-toggle { width:48px; height:48px; }
.phase-two-hero .slide-controls button { width:48px; height:48px; }
.phase-two-hero .slide-controls button[aria-pressed="true"] { background:var(--v2-blue); border-color:var(--v2-blue); }
.phase-two-header .nav-links a:not(.nav-cta):hover { color:#8cc7ff; }
.phase-two-hero { min-height:780px; height:min(900px,calc(100svh - 42px)); background:var(--v2-navy); }
.phase-two-hero .hero-scenes::after { background:linear-gradient(90deg,rgba(6,20,34,.93) 0%,rgba(6,20,34,.68) 45%,rgba(6,20,34,.08) 86%); }
.phase-two-hero .hero-content { padding-top:170px; padding-bottom:105px; }
.phase-two-hero h1 { max-width:900px; font-size:76px; line-height:1; text-transform:uppercase; font-weight:800; }
.phase-two-hero .hero-slogan { margin:0 0 18px; color:#d5e8f8; font-size:27px; font-weight:700; }
.phase-two-hero .hero-copy { max-width:580px; }
.phase-two-hero .button.ghost { background:#0b1f3366; }
.hero::after { background:var(--v2-blue); }
.eyebrow { color:var(--v2-blue); }
.v2-container { width:min(1320px,calc(100% - 64px)); margin:auto; }
.v2-statement { padding:110px 0 115px; background:var(--v2-white); }
.v2-statement h2 { max-width:980px; margin:0 0 58px; font-size:56px; line-height:1.08; }
.v2-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-bottom:44px; }
.v2-facts p { margin:0; padding-top:24px; border-top:2px solid var(--v2-blue); }
.v2-facts strong,.v2-facts span { display:block; }
.v2-facts strong { margin-bottom:10px; color:#183b60; font-size:15px; }
.v2-facts span { max-width:310px; color:#4b5d6b; font-size:16px; }
.v2-inline-link { display:inline-flex; gap:12px; align-items:center; color:var(--v2-blue); font-weight:800; border-bottom:2px solid currentColor; padding-bottom:5px; }
.v2-inline-link:hover span { transform:translateX(5px); }
.v2-inline-link span { transition:transform .25s ease; }
.v2-story { --story-accent:var(--v2-blue); display:grid; grid-template-columns:1.05fr .95fr; min-height:670px; background:#fff; }
.v2-story-reverse { grid-template-columns:.95fr 1.05fr; background:var(--v2-white); }
.v2-story-reverse .v2-story-media { order:2; }
.v2-story-deep { color:#fff; background:var(--v2-technical); }
.v2-story-media { position:relative; overflow:hidden; min-height:670px; }
.v2-story-media img { width:100%; height:100%; object-fit:cover; object-position:center 50%; transition:transform .55s ease; }
.v2-story:hover .v2-story-media img { transform:scale(1.025); }
.v2-story-media small { position:absolute; left:24px; bottom:22px; padding:6px 9px; background:#0b1f33ca; color:#fff; font-size:10px; }
.v2-story-copy { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:90px clamp(32px,7vw,120px); }
.v2-story-copy .eyebrow { color:var(--story-ink,var(--story-accent)); }
.v2-story-deep .v2-story-copy .eyebrow { color:var(--story-accent); }
.v2-story-copy h2 { max-width:580px; margin:0 0 24px; font-size:clamp(42px,4.2vw,66px); line-height:1.05; }
.v2-story-copy p:not(.eyebrow) { max-width:550px; color:#4b5d6b; font-size:17px; line-height:1.65; }
.v2-story-deep .v2-story-copy p:not(.eyebrow) { color:#ced8e2; }
.v2-story-copy ul { width:100%; max-width:500px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:28px 0 34px; padding:0; list-style:none; }
.v2-story-copy li { padding-top:12px; border-top:2px solid var(--story-accent); font-size:13px; line-height:1.35; }
.v2-story-copy .button.primary { background:var(--v2-blue); }
.v2-range { padding:110px 0; background:#e9eef3; clip-path:polygon(0 24px,100% 0,100% 100%,0 100%); }
.v2-heading { display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:end; margin-bottom:38px; }
.v2-heading h2 { max-width:850px; margin:0; font-size:48px; line-height:1.08; }
.v2-heading>p { max-width:450px; margin:0; color:#4b5d6b; font-size:16px; }
.v2-range-layout { display:grid; grid-template-columns:340px minmax(0,1fr); background:#fff; }
.v2-tabs { display:flex; flex-direction:column; background:var(--v2-navy); }
.v2-tabs button { min-height:86px; padding:20px 24px; text-align:left; border:0; border-bottom:1px solid #ffffff26; color:#c7d5e1; background:transparent; font-weight:700; cursor:pointer; }
.v2-tabs button[aria-selected="true"] { color:#fff; background:var(--v2-blue); box-shadow:inset 4px 0 #8dc8ff; }
.v2-tabs button:hover { color:#fff; }
.v2-range-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.75fr); min-height:430px; }
.v2-range-panel img { width:100%; height:100%; max-height:490px; object-fit:cover; object-position:center 43%; }
.v2-range-panel>div { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:48px; }
.v2-range-panel h3 { margin:0 0 18px; font-size:34px; line-height:1.1; }
.v2-range-panel p:not(.eyebrow) { color:#4b5d6b; line-height:1.6; }
.v2-range .outline-dark { margin-top:28px; color:var(--v2-navy); border-color:var(--v2-navy); }
.v2-range .outline-dark:hover { color:#fff; background:var(--v2-navy); }
.p3-section,.p3-inner { max-width:1320px; padding-top:95px; padding-bottom:95px; }
.p3-soft { background:var(--v2-white); }
.p3-dark { background:#122a40; }
.p3-section h2,.p3-inner h2 { max-width:950px; font-size:44px; }
.v2-why .p3-inner { padding-top:110px; padding-bottom:110px; }
.v2-why h2 { max-width:930px; margin-bottom:44px; font-size:52px; }
.v2-four { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #b8c4d0; border-left:1px solid #b8c4d0; }
.v2-four article { min-height:230px; padding:28px; border-right:1px solid #b8c4d0; border-bottom:1px solid #b8c4d0; }
.v2-four span { display:block; margin-bottom:34px; color:var(--v2-blue); font-size:14px; font-weight:800; }
.v2-four h3 { margin:0 0 10px; font-size:24px; }
.v2-four p { margin:0; color:#4b5d6b; font-size:15px; }
.p3-process { grid-template-columns:repeat(6,minmax(0,1fr)); gap:15px; }
.p3-process li { border-top:1px solid var(--v2-steel); padding-top:14px; }
.p3-process h3 { font-size:18px; }
.p3-feature-media img { height:520px; }
.p3-oem { max-width:none; width:100%; padding:110px max(32px,calc((100% - 1320px)/2)); grid-template-columns:.8fr 1.2fr; color:#fff; background:var(--v2-navy); }
.p3-oem .eyebrow { color:#8dc8ff; }
.p3-oem p { color:#ced8e2; max-width:550px; }
.p3-oem h2 { max-width:650px; font-size:54px; }
.p3-oem .p3-options { border-color:#ffffff3c; }
.p3-oem .p3-options dd { color:#d1dce5; }
.p3-oem .p3-options dl { display:grid; grid-template-columns:1fr 1fr; gap:12px 22px; }
.p3-oem .p3-options dt { margin:0; padding-top:14px; border-top:1px solid #ffffff40; }
.p3-oem .p3-options dd { margin:0 0 8px; }
.p3-oem .p3-oem-visual img { height:300px; aspect-ratio:auto; }
.p3-section a:not(.button),.p3-inner a:not(.button) { color:var(--v2-blue); }
.p3-oem .p3-options a:not(.button) { color:#fff; }
.p3-oem .button.primary { background:#3d8dde; }
.p3-quality li::before,.p3-dark .eyebrow { color:#9fcaf2; }
.p3-three article { border-top-color:var(--v2-blue); }
.v2-final { position:relative; padding:130px 0 120px; color:#fff; background:var(--v2-technical); overflow:hidden; clip-path:polygon(0 0,100% 24px,100% 100%,0 100%); }
.v2-final::after { content:""; position:absolute; width:40%; height:100%; top:0; right:0; background:url('/assets/rokia-hero-960.webp') center / cover no-repeat; opacity:.13; }
.v2-final .v2-container { position:relative; z-index:1; }
.v2-final .eyebrow { color:#8dc8ff; }
.v2-final h2 { max-width:900px; margin:0 0 24px; font-size:58px; line-height:1.05; }
.v2-final p:not(.eyebrow) { max-width:620px; color:#d2dce5; font-size:18px; }
.v2-final small { display:block; margin-top:28px; color:#a8b8c6; }
.footer { background:#152535; }
.footer-bottom { background:#0b1f33; }
.footer-actions a:hover { color:#8dc8ff; }
.trust-hero::after { background:linear-gradient(90deg,rgba(8,25,42,.85) 0%,rgba(8,25,42,.55) 48%,rgba(8,25,42,.05) 82%); }
.trust-callout,.contact-mast { background:var(--v2-navy); }
.catalog-mast { color:#fff; background:var(--v2-navy); }
.catalog-mast p,.catalog-main .catalog-mast p { color:#d6e0e9; }
.catalog-mast .eyebrow { color:#8cc7ff; }
.catalog-mast nav { color:#c5d3e0; }
.catalog-card { border-radius:4px; }
.catalog-card .eyebrow,.trust-grid .step,.trust-steps li::before { color:var(--v2-blue); }
.catalog-card.v2-catalog-featured { padding:0; overflow:hidden; }
.v2-catalog-featured>img { width:100%; height:270px; object-fit:cover; object-position:center 42%; }
.v2-catalog-card-copy { display:flex; flex:1; flex-direction:column; padding:28px; }
.v2-catalog-card-copy .text-link { margin-top:auto; }
.catalog-main .catalog-card .text-link { color:var(--v2-blue); border-bottom-color:var(--v2-blue); }
.catalog-mast h1 { max-width:680px; font-size:clamp(42px,4.3vw,65px); line-height:1.05; }
.catalog-main .document-links a { color:var(--v2-blue); }
.catalog-main .v2-product-fiberglass-putty { --product-accent:#2fa36b; --product-ink:#146c46; }
.catalog-main .v2-product-polyester-putty { --product-accent:#7b61ff; --product-ink:#6045d9; }
.catalog-main .v2-product-nc-putty { --product-accent:#d94242; --product-ink:#a42323; }
.catalog-main .v2-product-lightweight-body-filler { --product-accent:#2f80ed; --product-ink:#174c91; }
.catalog-main .v2-product-overview .eyebrow { color:var(--product-ink,var(--v2-blue)); }
.v2-product-overview .v2-product-visual { border-bottom:5px solid var(--product-accent,var(--v2-blue)); }
.v2-application { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; margin-top:72px; padding:62px 0; border-top:1px solid #cbd5dd; border-bottom:1px solid #cbd5dd; }
.v2-application h2 { max-width:420px; margin:0 0 22px; font-size:36px; line-height:1.12; }
.v2-application>div>p:last-child { max-width:440px; color:#566775; }
.v2-application dl { display:grid; grid-template-columns:1fr 1fr; gap:0 28px; margin:0; }
.v2-application dl>div { padding:18px 0 22px; border-top:2px solid var(--product-accent,var(--v2-blue)); }
.v2-application dt { color:var(--product-ink,var(--v2-blue)); font-size:14px; font-weight:800; }
.v2-application dd { margin:10px 0 0; color:#4b5d6b; font-size:15px; }
.v2-related-note { max-width:700px; color:#566775; font-size:14px; }
.v2-faq { border-top:1px solid #b8c4d0; }
.v2-faq details { padding:22px 0; border-bottom:1px solid #b8c4d0; }
.v2-faq summary { cursor:pointer; color:#12304c; font-size:20px; font-weight:700; }
.v2-faq details p { max-width:800px; margin:16px 0 0; color:#4b5d6b; }
.v2-faq summary::marker { color:var(--v2-blue); }
.trust-hero .eyebrow { color:#9fcaf2; }
.trust-steps.v2-six-steps { grid-template-columns:repeat(6,minmax(0,1fr)); }
.trust-steps.v2-six-steps li { padding:23px 17px; }
.v2-check { display:flex!important; align-items:center; gap:12px; }
.v2-check input { width:18px!important; height:18px; min-height:18px; flex:none; accent-color:var(--v2-blue); }
.v2-check span { font-size:14px; font-weight:500; }
.contact-page .inquiry-form label { color:#203a52; }
.contact-page .inquiry-form input,.contact-page .inquiry-form select,.contact-page .inquiry-form textarea { color:#14283a; background:#fff; border:1px solid #8ea2b4; }
.contact-page .inquiry-form input::placeholder,.contact-page .inquiry-form textarea::placeholder { color:#5c6c79; }
.contact-page .inquiry-form input:focus-visible,.contact-page .inquiry-form select:focus-visible,.contact-page .inquiry-form textarea:focus-visible { border-color:var(--v2-blue); outline:3px solid var(--v2-electric); outline-offset:2px; }
.contact-page .inquiry-form .v2-check { color:#203a52; }
.contact-page .inquiry-form .v2-check input { accent-color:var(--v2-blue); }
.contact-page .form-status { color:#8b2530; }
.product-overview.v2-product-overview { grid-template-columns:1.05fr .95fr; gap:42px; }
.v2-product-visual { position:relative; min-height:500px; overflow:hidden; background:#e9eef3; }
.v2-product-visual img { width:100%; height:100%; max-height:620px; object-fit:cover; }
.v2-product-visual small { position:absolute; left:16px; bottom:14px; padding:6px 8px; color:#fff; background:#0b1f33ca; font-size:10px; }
.product-overview.v2-product-overview>aside { grid-column:1/-1; padding:26px 32px; }
.product-overview.v2-product-overview>aside ul { display:flex; flex-wrap:wrap; gap:20px 35px; margin:0; }
.product-overview.v2-product-overview>aside li { margin:0; }
.product-overview.v2-product-overview .eyebrow { color:var(--v2-blue); }
.product-overview.v2-product-overview .button.primary { margin-top:18px; }
.catalog-main .product-paths a:hover { background:var(--v2-blue); }
@media(max-width:1199px) { .phase-two-hero h1 { font-size:62px; } .v2-story-copy { padding:65px 48px; } .v2-range-layout { grid-template-columns:270px minmax(0,1fr); } .p3-process { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:1199px) { .trust-steps.v2-six-steps { grid-template-columns:repeat(3,minmax(0,1fr)); } .trust-steps.v2-six-steps li:nth-child(3n) { border-right:1px solid #ccd1d6; } .trust-steps.v2-six-steps li:nth-child(n+4) { border-top:0; } }
@media(max-width:900px) { .v2-story,.v2-story-reverse { grid-template-columns:1fr 1fr; } .v2-story-media { min-height:550px; } .v2-story-copy h2 { font-size:40px; } .v2-story-copy ul { grid-template-columns:1fr; } .v2-heading { gap:28px; } .v2-range-panel { grid-template-columns:1fr; } .v2-range-panel img { height:270px; } .v2-range-panel>div { padding:26px; } .v2-four { grid-template-columns:repeat(2,minmax(0,1fr)); } .p3-oem { padding:80px 32px; gap:36px; } .p3-oem h2 { font-size:42px; } }
@media(max-width:900px) { .v2-application { grid-template-columns:1fr; gap:30px; } }
@media(max-width:767px) {
 .v2-container { width:calc(100% - 40px); }
 .phase-two-hero { height:84svh; min-height:630px; max-height:none; }
 .phase-two-hero .hero-content { padding:120px 0 100px; }
 .phase-two-hero h1 { font-size:40px; }
 .phase-two-hero .hero-slogan { font-size:22px; }
 .phase-two-hero .hero-scenes::after { background:linear-gradient(90deg,rgba(6,20,34,.87),rgba(6,20,34,.35)); }
 .phase-two-hero .hero-scene { object-position:64% center; }
 .v2-statement,.v2-range { padding:65px 0; }
 .v2-statement h2 { margin-bottom:36px; font-size:36px; }
 .v2-facts { grid-template-columns:1fr; gap:20px; }
 .v2-story,.v2-story-reverse { display:flex; flex-direction:column; }
 .v2-story-reverse .v2-story-media { order:0; }
 .v2-story-media { min-height:0; height:430px; }
 .v2-story-media img { object-position:center 42%; }
 .v2-story-copy { padding:52px 20px 60px; }
 .v2-story-copy h2 { font-size:36px; }
 .v2-story-copy p:not(.eyebrow) { font-size:16px; }
 .v2-story-copy ul { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
 .v2-heading { grid-template-columns:1fr; gap:15px; }
 .v2-heading h2 { font-size:35px; }
 .v2-range-layout { grid-template-columns:1fr; }
 .v2-tabs { flex-direction:row; overflow-x:auto; scroll-snap-type:x mandatory; }
 .v2-tabs button { min-width:170px; min-height:70px; scroll-snap-align:start; border-bottom:0; border-right:1px solid #ffffff26; font-size:13px; }
 .v2-tabs button[aria-selected="true"] { box-shadow:inset 0 -4px #8dc8ff; }
 .v2-range-panel { grid-template-columns:1fr; }
 .v2-range-panel img { height:280px; object-position:center 38%; }
 .v2-range-panel h3 { font-size:29px; }
 .p3-section,.p3-inner { padding-top:65px; padding-bottom:65px; }
 .p3-section h2,.p3-inner h2 { font-size:34px; }
 .v2-why .p3-inner { padding-top:65px; padding-bottom:65px; }
 .v2-why h2 { font-size:36px; }
 .v2-four { grid-template-columns:1fr 1fr; }
 .v2-four article { min-height:220px; padding:20px; }
 .v2-four h3 { font-size:20px; }
 .p3-process { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .p3-feature-media img { height:310px; }
 .p3-oem { padding:65px 20px; grid-template-columns:1fr; }
 .p3-oem .p3-options { border-top-color:#ffffff3c; }
 .p3-oem .p3-options dl { grid-template-columns:1fr 1fr; }
 .v2-final { padding:80px 0; }
 .v2-final h2 { font-size:40px; }
 .product-overview.v2-product-overview { display:flex; flex-direction:column; gap:24px; }
 .v2-product-visual { min-height:0; height:350px; }
 .product-overview.v2-product-overview>aside ul { display:block; }
 .v2-application { margin-top:46px; padding:42px 0; }
 .v2-application h2 { font-size:31px; }
 .v2-application dl { grid-template-columns:1fr; }
 .trust-steps.v2-six-steps { grid-template-columns:1fr; }
 .trust-steps.v2-six-steps li { border-right:1px solid #ccd1d6; border-top:0; }
 .trust-steps.v2-six-steps li:first-child { border-top:1px solid #ccd1d6; }
}
@media(max-width:420px) { .phase-two-hero h1 { font-size:36px; } .phase-two-hero .hero-copy { font-size:15px; } .v2-story-copy ul { grid-template-columns:1fr; } .v2-four { grid-template-columns:1fr; } .v2-four article { min-height:0; } .p3-oem .p3-options dl { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .v2-story-media img,.v2-inline-link span { transition:none; } .v2-story:hover .v2-story-media img { transform:none; } }
.v2-resource-hero { padding:180px 0 90px; color:#fff; background:var(--v2-navy); }
.v2-resource-hero nav { margin-bottom:50px; color:#c5d3e0; font-size:13px; }
.v2-resource-hero nav a { text-decoration:underline; }
.v2-resource-hero .eyebrow { color:#8dc8ff; }
.v2-resource-hero h1 { max-width:900px; margin:0 0 24px; font-size:64px; line-height:1.02; }
.v2-resource-hero p:last-child { max-width:700px; color:#d5e0e9; font-size:18px; }
.v2-resource-main { padding:85px 0 110px; background:#f5f7fa; }
.v2-resource-filters { display:grid; grid-template-columns:1fr 1fr 1fr auto; gap:18px; align-items:end; }
.v2-resource-filters label { display:grid; gap:8px; color:#203a52; font-size:13px; font-weight:700; }
.v2-resource-filters input,.v2-resource-filters select { min-height:50px; padding:10px 13px; border:1px solid #9baebf; background:#fff; color:#14283a; font-size:16px; }
.v2-resource-filters button { min-height:50px; padding:0 22px; border:1px solid #1c344a; color:#1c344a; background:transparent; cursor:pointer; }
.v2-resource-count { margin:25px 0; color:#516271; font-size:13px; }
.v2-resource-list { border-top:1px solid #cbd5dd; }
.v2-resource-item { display:grid; grid-template-columns:88px minmax(0,1fr) auto; gap:26px; align-items:center; padding:24px 0; border-bottom:1px solid #cbd5dd; }
.v2-resource-item[hidden] { display:none; }
.v2-resource-item>span { padding:7px; color:var(--v2-blue); border:1px solid #8ea7bf; text-align:center; font-size:12px; font-weight:800; }
.v2-resource-item h2 { margin:0 0 5px; font-size:21px; }
.v2-resource-item p { max-width:720px; margin:0; color:#566775; font-size:14px; }
.v2-resource-item a { padding:12px 0; color:var(--v2-blue); font-size:13px; font-weight:800; white-space:nowrap; }
@media(max-width:1023px) { .v2-resource-filters { grid-template-columns:1fr 1fr; } }
@media(max-width:767px) { .v2-resource-hero { padding:130px 0 65px; } .v2-resource-hero h1 { font-size:39px; } .v2-resource-main { padding:55px 0 70px; } .v2-resource-filters { grid-template-columns:1fr; } .v2-resource-item { grid-template-columns:1fr; gap:10px; } .v2-resource-item>span { width:max-content; } .v2-resource-item a { justify-self:start; } }
:focus-visible { outline-color:var(--v2-electric); }
