:root{--ink:#1a1a1a;--red:#8b1a1a;--muted:#545454;--line:#d6d6d6;--soft:#f4f4f4;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;background:#fff}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.25em}a:hover{color:var(--red)}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #8b1a1a;outline-offset:5px}.site-footer a:focus-visible,.button:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px #8b1a1a}p{margin:0 0 1.25rem}h1,h2,h3{margin:0;line-height:1.12;font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em}h1{font-size:clamp(2.9rem,6.1vw,6.3rem)}h2{font-size:clamp(2.1rem,3.6vw,3.6rem)}h3{font-size:1.35rem;font-weight:600;line-height:1.3}em{color:var(--red);font-weight:400}figure{margin:0}address{font-style:normal;margin:1.5rem 0}small{font-size:.875rem}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;margin-bottom:1.3rem;color:var(--red)}.review-bar{background:var(--ink);color:#fff;font-size:.75rem;letter-spacing:.08em}.review-bar .wrap{display:flex;justify-content:space-between;padding-block:8px}.review-bar span:first-child{font-weight:700}.site-header{border-bottom:1px solid var(--line);background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:110px}.brand{width:310px;flex-shrink:0}.brand img{width:100%;height:auto}nav{display:flex;gap:27px;align-items:center}nav a{font-size:.9rem;text-decoration:none;white-space:nowrap;padding:12px 0}nav a[aria-current]{color:var(--red);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}.nav-contact{border:1px solid var(--ink);padding:11px 16px;display:flex;gap:20px}.menu-toggle{display:none}.skip-link{position:absolute;top:-150px;left:20px;background:#fff;color:#1a1a1a;padding:15px;z-index:100}.skip-link:focus{top:45px}.home-hero{display:grid;grid-template-columns:.9fr 1.15fr;gap:54px;padding-block:70px 60px;align-items:center}.hero-copy h1{font-size:clamp(3rem,5.5vw,5.5rem);margin-bottom:24px}.hero-copy .eyebrow{font-size:.73rem;letter-spacing:.09em}.lede{font-size:1.125rem;line-height:1.7;color:var(--muted);max-width:48ch;margin-top:24px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:32px}.button{background:var(--red);border:1px solid var(--red);color:#fff;display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:15px 22px;text-decoration:none;font-weight:600;font-size:.9375rem;min-height:54px}.button:hover{background:var(--ink);border-color:var(--ink);color:#fff}.text-link{display:inline-block;font-size:.9375rem;font-weight:600;line-height:1.6}.hero-image{background:#fff;align-self:center;position:relative;padding-top:22px}.hero-image:before{content:'';width:42%;height:5px;background:var(--red);position:absolute;top:0;left:0}.hero-image img{width:100%;height:auto}.hero-image figcaption,figure figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:15px;font-size:.8rem;color:var(--muted)}figcaption a{color:var(--ink)}.industry-strip{background:var(--ink);color:#fff}.industry-strip .wrap{display:flex;justify-content:space-between;gap:24px;padding-block:22px;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.industry-strip span+span{border-left:1px solid #555;padding-left:7%}.section{padding-block:85px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:40px}.section-heading p:last-child{margin-bottom:0;color:var(--muted)}.product-family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.family-card{display:block;border:1px solid var(--line);text-decoration:none;padding:25px;background:#fff}.number{font-size:.875rem;color:var(--muted);font-weight:500;letter-spacing:.08em}.family-card img{height:170px;width:100%;object-fit:contain;margin:10px auto 30px;background:#000}.family-card h3{display:flex;justify-content:space-between;font-size:1.3rem}.family-card p{font-size:.83rem;margin:13px 0 0;color:var(--muted)}.family-card:hover{border-color:var(--red);box-shadow:inset 0 -4px var(--red)}.about-section{background:var(--soft);padding-block:85px}.about-grid{display:grid;grid-template-columns:1fr 2fr;gap:70px}.about-grid>div:first-child .text-link{margin-top:32px}.about-grid h3{margin-bottom:22px}.rich{color:var(--muted)}.rich p{margin:0 0 1.15rem}.rich ul,.rich ol{padding-left:1.35rem;margin-block:1rem}.rich li{margin-bottom:.45rem}.rich strong,.rich b{color:var(--ink)}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;border-top:1px solid var(--line);padding-top:28px;margin-top:30px}.mission-grid .rich{font-size:.9375rem}.resources-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:55px}.resource-card{display:grid;grid-template-columns:28px 1fr 20px;gap:22px;align-items:center;text-decoration:none;border-top:1px solid var(--line);padding-block:25px}.resource-card strong{display:block;font-size:1.15rem;font-weight:600}.resource-card>span:nth-child(2)>span{display:block;font-size:.875rem;color:var(--muted);margin-top:5px}.resource-card:last-child,.resource-card:nth-last-child(2){border-bottom:1px solid var(--line)}.contact-section{padding-block:85px;background:var(--soft);border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:100px}.contact-grid h2{margin-bottom:30px}.contact-grid h3{font-family:var(--serif);font-size:2.3rem;letter-spacing:-.03em;margin-bottom:20px}.contact-details{margin-block:25px}.contact-details>div{display:flex;gap:24px}.contact-details dt{width:74px;font-size:.875rem;color:var(--muted)}.contact-details dd{margin:0}.contact-form .form-note{font-size:.875rem;color:var(--muted);border-left:3px solid var(--red);padding-left:14px;margin-bottom:28px}.contact-form label{display:block;margin:0 0 8px;font-size:.875rem;font-weight:600}.contact-form label span{font-weight:400}.contact-form input,.contact-form textarea,.search-field input{width:100%;background:#fff;border:1px solid #8d8d8d;border-radius:0;padding:12px;color:var(--ink);min-height:48px}.contact-form input{margin-bottom:20px}.contact-form textarea{resize:vertical;margin-bottom:24px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.site-footer{background:var(--ink);color:#fff;padding:65px 0 22px}.footer-grid{display:grid;grid-template-columns:1.6fr .8fr 1fr;gap:65px}.footer-brand{display:block;background:#fff;padding:16px;width:340px;max-width:100%;margin-bottom:26px}.footer-grid h2{font-family:var(--sans);font-size:.83rem;text-transform:uppercase;letter-spacing:.12em;margin:0 0 25px}.footer-grid p{font-size:.875rem;color:#d0d0d0;line-height:1.8}.footer-grid>div>a:not(.footer-brand){display:block;font-size:.9375rem;margin-bottom:8px;text-decoration:none}.footer-grid a:hover{color:#fff;text-decoration:underline}.footer-grid .footer-tagline{font-family:var(--serif);font-size:1.4rem;color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #555;margin-top:50px;padding-top:23px;color:#ccc}.footer-bottom small{font-size:.75rem}.page-intro{padding-block:30px 60px}.breadcrumb{display:flex;gap:14px;font-size:.8rem;color:var(--muted);margin-bottom:48px}.page-intro .eyebrow{margin-bottom:18px}.page-intro h1{max-width:1000px}.page-intro .lede{max-width:60ch}.section-start{padding-bottom:85px}.product-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;border-top:1px solid var(--line);padding-block:42px 0}.product-intro h2{font-size:2rem;margin-bottom:25px}.review-note{font-size:.875rem;line-height:1.65;padding:16px 20px;background:#f4f4f4;border-left:3px solid var(--red);margin-bottom:26px}.review-note .eyebrow{font-size:.75rem;margin:0}.review-note p{margin:5px 0 0}.download-row{display:grid;grid-template-columns:50px 1fr 24px;gap:22px;align-items:center;border-top:1px solid var(--line);padding:25px 0;text-decoration:none}.download-row strong{display:block;font-size:1.08rem;font-weight:600}.download-row small{display:block;color:var(--muted);margin-top:5px}.download-row:last-child{border-bottom:1px solid var(--line)}.download-row:hover strong{text-decoration:underline}.search-field{max-width:300px;width:100%}.search-field label{display:block;font-size:.8rem;margin-bottom:8px}.search-field input{min-height:48px}.panel-index{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:45px}.panel-index a{border:1px solid var(--line);padding:10px 14px;text-decoration:none;font-size:.875rem}.panel-index a:hover{background:var(--ink);color:#fff}.product-detail{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px;border-top:1px solid var(--line);padding-block:55px}.product-detail h2{font-size:2.9rem}.product-visual>img:first-of-type{background:#000;width:100%;max-height:250px;object-fit:contain}.product-visual .text-link{margin-top:20px}.technical-drawing{max-height:160px;object-fit:contain;margin-top:25px}.panel-subtitle{color:var(--muted);font-size:1.1rem;margin:16px 0 25px}.product-detail details{margin-top:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:18px 4px;font-weight:600;line-height:1.5;min-height:56px}details[open]>summary{color:var(--red)}.product-detail details .rich{padding:15px 5px 25px}.product-links{display:flex;flex-wrap:wrap;gap:35px;margin-top:25px;margin-bottom:0}.gallery-section{padding-bottom:85px}.gallery-note{margin-bottom:35px;border-block:1px solid var(--line);padding:20px 0;display:flex;gap:45px;align-items:center}.gallery-note h2{font-size:1.6rem}.gallery-note .rich{font-size:.875rem}.gallery-note p{margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px;align-items:start}.gallery-grid img{width:100%;height:auto}.gallery-grid figcaption{font-size:.75rem}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.portrait{height:370px;width:100%;object-fit:contain;object-position:center;background:var(--soft)}.team-grid h2{font-size:1.9rem;margin:23px 0 12px}.team-grid p{margin-bottom:12px;overflow-wrap:anywhere}.small-review{font-size:.8rem;color:var(--red)}.team-contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.team-contact h2{margin-bottom:25px}.team-contact figure{margin-top:30px}.team-contact img{width:100%}.resource-content{padding-bottom:85px}.resource-content>.rich{max-width:85ch;margin-bottom:35px}.resource-content>.review-note{max-width:85ch}.color-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin:45px 0}.color-grid img{height:auto;width:auto;margin:auto;max-height:850px}.color-grid figure{padding:25px;border:1px solid var(--line)}.color-grid figcaption{justify-content:center}.detail-pages{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:35px}.detail-pages a{white-space:normal;border:1px solid var(--line);padding:13px 20px}.detail-pages a[aria-current]{background:var(--ink);color:#fff;text-decoration:none}.download-list{max-width:1000px}.resource-help{margin-top:30px}.narrow{max-width:920px}.faq-list{margin-top:30px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{padding:24px 5px;font-size:1.08rem}.faq-list .number{margin-right:15px}.faq-answer{padding:10px 30px 15px 42px;color:var(--muted)}.article-block{border-top:1px solid var(--line);padding:40px 0}.article-block h2{font-size:2.4rem;margin-bottom:25px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(min-width:1700px){.wrap{width:min(1500px,calc(100% - 120px))}.home-hero{padding-block:90px}.hero-copy h1{font-size:6.2rem}}
@media(max-width:1150px){.wrap{width:calc(100% - 60px)}.header-inner{gap:20px}.brand{width:260px}nav{gap:17px}nav a{font-size:.83rem}.nav-contact{padding:10px}.home-hero{gap:32px}.hero-copy h1{font-size:4rem}.contact-grid{gap:60px}.industry-strip span+span{padding-left:4%}}
@media(max-width:950px){.header-inner{flex-wrap:wrap;min-height:95px;padding-block:20px}.brand{width:285px}.menu-toggle{display:flex;align-items:center;gap:20px;border:1px solid var(--ink);padding:10px 15px;background:#fff;min-height:44px}.site-header nav{display:flex;flex-basis:100%;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--line);gap:10px 24px}.js .site-header nav{display:none}.js .site-header nav.is-open{display:flex}.site-header nav a{padding:12px;font-size:1rem}.home-hero{grid-template-columns:1fr 1fr;gap:30px;padding-block:45px}.hero-copy h1{font-size:3.5rem}.hero-copy .eyebrow{font-size:.7rem}.hero-copy .lede{font-size:1rem}.actions{gap:18px}.button{gap:20px}.industry-strip .wrap{font-size:.75rem}.product-family-grid{gap:16px}.family-card{padding:18px}.family-card h3{font-size:1.1rem}.family-card img{height:120px}.about-grid{grid-template-columns:1fr;gap:40px}.resources-grid{column-gap:30px}.contact-grid{gap:40px}.form-pair{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1.25fr .75fr;gap:45px}.footer-grid>div:last-child{grid-column:1/-1}.product-intro,.product-detail{gap:35px}.product-detail h2{font-size:2.4rem}.gallery-grid{grid-template-columns:1fr 1fr}.team-grid{gap:25px}.portrait{height:280px}.team-contact{gap:35px}.team-grid h2{font-size:1.6rem}.color-grid{gap:25px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.review-bar .wrap{font-size:.65rem;letter-spacing:.04em;gap:12px}.review-bar span:last-child{max-width:160px;text-align:right}.brand{width:225px}.header-inner{gap:15px;min-height:85px;padding-block:18px}.menu-toggle{font-size:.875rem;gap:9px;padding:8px 11px}.home-hero{display:flex;flex-direction:column;gap:36px;padding-block:38px 30px;align-items:stretch}.hero-copy h1{font-size:clamp(3.15rem,12vw,4.75rem);margin-bottom:20px}.hero-copy .eyebrow{font-size:.7rem}.hero-copy .lede{font-size:1.0625rem;margin-top:0}.hero-copy .actions{margin-top:25px;gap:18px}.hero-image{padding-top:16px}.hero-image figcaption{font-size:.75rem}.industry-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;padding-block:23px;font-size:.72rem}.industry-strip span+span{border:0;padding:0}.industry-strip span:nth-child(even){text-align:right}.section,.about-section,.contact-section{padding-block:52px}.section-heading{display:block;margin-bottom:28px}.section-heading>.text-link,.section-heading>p{margin-top:24px}.section-heading h2{font-size:2.3rem}.eyebrow{font-size:.75rem;margin-bottom:14px}.product-family-grid{grid-template-columns:1fr;gap:20px}.family-card{padding:24px}.family-card img{height:170px;max-width:340px;margin-block:0 20px}.family-card h3{font-size:1.4rem}.family-card p{font-size:.875rem}.mission-grid{grid-template-columns:1fr;gap:25px}.resources-grid{grid-template-columns:1fr}.resource-card{gap:15px;padding-block:24px}.resource-card strong{font-size:1.07rem}.resource-card:nth-last-child(2){border-bottom:0}.contact-grid{grid-template-columns:1fr;gap:50px}.contact-grid h2{font-size:2.8rem}.contact-grid h3{font-size:2rem}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-grid>div:last-child{grid-column:auto}.site-footer{padding-top:45px}.footer-grid h2{margin-bottom:16px}.footer-bottom{display:block;margin-top:35px}.footer-bottom small{display:block;margin-top:12px}.page-intro{padding-block:22px 40px}.breadcrumb{margin-bottom:34px}.page-intro h1{font-size:3.25rem}.page-intro .lede{font-size:1.0625rem;margin-top:22px}.product-intro{grid-template-columns:1fr;gap:35px;padding-top:30px}.product-intro h2{font-size:2rem}.product-directory{padding-top:45px}.search-field{max-width:none;margin-top:25px}.panel-index{gap:8px}.panel-index a{font-size:.8rem;padding:10px}.product-detail{grid-template-columns:1fr;gap:28px;padding-block:38px}.product-visual>img:first-of-type{max-height:200px}.technical-drawing{max-height:160px;max-width:70%;margin-inline:auto}.product-detail h2{font-size:2.7rem}.product-links{gap:20px}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-note{display:block}.gallery-note h2{margin-bottom:15px}.team-grid{grid-template-columns:1fr;gap:42px}.portrait{height:auto;max-height:450px}.team-grid h2{font-size:2rem}.team-contact{grid-template-columns:1fr;gap:35px}.team-contact figure{margin:0}.color-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.color-grid figure{padding:15px}.detail-pages{display:grid;gap:12px}.detail-pages a{font-size:.875rem}.download-row{grid-template-columns:40px 1fr 18px;gap:15px;padding-block:20px}.download-row strong{font-size:1rem;overflow-wrap:anywhere}.download-row small{font-size:.8rem}.faq-list summary{font-size:1rem;padding-block:20px}.faq-answer{padding-left:20px;padding-right:5px}.section-start,.resource-content,.gallery-section{padding-bottom:55px}.article-block h2{font-size:2.1rem}}
@media(max-width:360px){.brand{width:195px}.menu-toggle{padding:8px}.hero-copy h1{font-size:3rem}.review-bar span:last-child{max-width:140px}.page-intro h1{font-size:2.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.review-bar,.site-header,.site-footer,.menu-toggle,.contact-form,.actions{display:none}.wrap{width:100%}body{font-size:11pt}.product-detail,.gallery-grid figure{break-inside:avoid}.home-hero{display:block}details>*{display:block!important}.review-note{border:1px solid #111}}
/* Independent review fixes: preserve photo, associate caption, and allow grid shrinkage. */
.footer-grid>*{min-width:0}.footer-brand{width:min(340px,100%)}.product-context-photo{margin:24px 0}.product-context-photo img{width:100%;height:auto}.gallery-grid figcaption{display:block}.gallery-meta{display:flex;justify-content:space-between;gap:16px}.project-caption{margin-top:16px;border-top:1px solid var(--line);padding-top:14px;font-size:.875rem}.project-caption p{margin-bottom:5px}.project-caption strong{display:block;font-size:1.1rem}
@media(max-width:650px){.footer-grid,.resources-grid,.product-family-grid,.team-grid,.gallery-grid{grid-template-columns:minmax(0,1fr)}}
/* Text enlargement must not force intrinsic grid tracks wider than the viewport. */
.product-intro{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.product-intro>*{min-width:0}.download-row strong{overflow-wrap:anywhere}
@media(max-width:950px){.industry-strip .wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.industry-strip span+span{border:0;padding:0}.industry-strip span:nth-child(even){text-align:right}}
@media(max-width:650px){.product-intro{grid-template-columns:minmax(0,1fr)}}

/* Gary-approved audience update: two sectors, followed by the service region. */
@media(max-width:950px){.industry-strip span:last-child{grid-column:1 / -1;text-align:center}}

/* Panel finder and architect resources — September 2026 */
.product-detail h2,.panel-index a,.panel-subtitle,.architect-grid h3{font-family:var(--sans);font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;letter-spacing:normal}
.product-detail h2{font-size:clamp(1.8rem,3vw,2.65rem);font-weight:650;color:var(--red)}
.product-directory{border-top:5px solid var(--red)}
.panel-controls{display:none}.js .panel-controls{display:block}
.application-filter{border:0;padding:0;margin:0 0 24px}.application-filter legend{font-weight:650;margin-bottom:12px}
.filter-buttons{display:flex;flex-wrap:wrap;gap:10px}.filter-buttons button{border:1px solid var(--red);background:white;color:var(--red);padding:12px 24px;min-height:48px;border-radius:3px}.filter-buttons button[aria-pressed="true"],.filter-buttons button:hover{background:var(--red);color:white}
.panel-index{margin-bottom:20px}.panel-index a{background:#fbf4f4;border-color:#d8baba}.panel-index a:hover{background:var(--red);color:white}
#filter-status{color:var(--muted);margin-bottom:28px}
.architect-section{background:var(--red);color:white;padding:70px 0}.architect-section h2{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.15}.architect-section .eyebrow{color:white}.architect-section>.wrap>p{max-width:760px}.architect-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.architect-grid article{padding:30px;background:white;color:var(--ink)}.architect-grid h3{font-size:1.8rem;margin:0;color:var(--red)}.architect-grid a{color:var(--red);font-weight:650}.architect-links{display:flex;flex-wrap:wrap;gap:20px 32px}.architect-links a:hover{color:white;text-decoration-thickness:3px}.architect-section a:focus-visible{outline-color:#fff}.architect-grid a:focus-visible{outline-color:var(--red)}
.gallery-meta strong{font-size:1.1rem;color:var(--red);line-height:1.4}.gallery-meta>a{flex-shrink:0}.project-caption p{margin:0 0 8px}.project-caption p:first-child{font-weight:600}
@media(max-width:650px){.architect-grid{grid-template-columns:1fr}.architect-grid article{padding:24px}.architect-section{padding:48px 0}.gallery-meta{flex-wrap:wrap}}

.ultra-title{font-size:1.6rem;margin-top:44px}.ultra-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0 36px}.ultra-grid article{border:1px solid #c88c8c;padding:20px}.ultra-grid h4{font:650 1.1rem var(--sans);font-variant-numeric:lining-nums;margin:0}.ultra-grid p{font-size:.9rem;margin:8px 0 16px}.ultra-grid a{font-size:.9rem}.ultra-grid a:hover{color:#fff;text-decoration-thickness:3px}@media(max-width:1000px){.ultra-grid{grid-template-columns:1fr 1fr}}@media(max-width:550px){.ultra-grid{grid-template-columns:1fr}}

/* Larger logo and lettering preview requested by Gary. */
html{font-size:125%}
body{font-size:1rem}
.brand{width:380px}
.header-inner{min-height:134px}
.footer-brand{width:min(420px,100%)}
.home-hero>*{min-width:0}
.product-family-grid,.resources-grid,.gallery-grid,.team-grid{min-width:0}
@media(max-width:1200px){
 .header-inner{flex-wrap:wrap;min-height:112px;padding-block:20px}
 .brand{width:340px}
 .menu-toggle{display:flex;align-items:center;gap:12px;border:1px solid var(--ink);padding:10px 15px;background:white;min-height:48px}
 .site-header nav{display:flex;flex-basis:100%;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--line);gap:10px 24px}
 .js .site-header nav{display:none}.js .site-header nav.is-open{display:flex}
 .site-header nav a{padding:12px;font-size:1rem}
}
@media(max-width:950px){.home-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero-copy h1{font-size:clamp(2.6rem,6vw,3.5rem)}}
@media(max-width:650px){
 .brand{width:clamp(235px,62vw,300px);max-width:100%}
 .header-inner{gap:16px;min-height:105px;padding-block:20px}
 .menu-toggle{margin-left:auto;font-size:.8rem;padding:9px 10px;gap:8px}
 .hero-copy h1{font-size:clamp(2.85rem,12vw,4.75rem)}
 .footer-brand{width:min(420px,100%)}
 .hero-copy .eyebrow{font-size:.75rem}
 .gallery-meta{gap:10px}
}
@media(max-width:380px){.brand{width:100%;max-width:284px}.hero-copy h1{font-size:2.8rem}.page-intro h1{font-size:2.65rem}}

/* Stronger masthead, direct product browsing and an ASP project hero gallery. */
.site-header{border-bottom:0}
.site-header::after{content:"";display:block;height:15px;background:linear-gradient(to bottom,var(--ink) 0 6px,#fff 6px 10px,var(--red) 10px 15px)}
.button{justify-content:center;gap:0}.nav-contact{gap:0}.resource-card{grid-template-columns:28px minmax(0,1fr)}.download-row{grid-template-columns:50px minmax(0,1fr)}
.product-directory{border-top:0;padding-top:36px}
.product-directory h1{font-size:clamp(2.5rem,4vw,3.6rem)}
.product-directory>.section-heading{align-items:center;margin-bottom:26px}
.architect-button{text-align:center;flex-shrink:0}
.finder-controls{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}
.finder-controls .application-filter{margin:0}.finder-controls .search-field{margin:0}
.product-intro{padding-block:60px 10px;border-top:0}
.home-gallery{min-width:0;padding-top:0;width:100%}.home-gallery::before{display:none}
.home-gallery-stage{display:grid;isolation:isolate;background:var(--soft)}
.home-gallery-slide{grid-area:1/1;display:flex;flex-direction:column;min-width:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s;pointer-events:none}
.home-gallery-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.home-gallery-slide img{width:100%;aspect-ratio:3/2;height:auto;object-fit:contain;background:#f4f4f4}


.home-gallery-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 0}
.home-gallery-controls button{min-height:44px;padding:8px 12px;border:1px solid #999;background:#fff;color:var(--ink);font-size:.8rem}
.home-gallery-controls button:hover{border-color:var(--red);color:var(--red)}
.home-gallery-controls [data-gallery-count]{font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}
.home-gallery-link{margin:8px 0 0;font-size:.875rem}.home-gallery-link a{color:var(--red);font-weight:600}
@media(max-width:950px){.finder-controls{align-items:stretch}.architect-button{flex-shrink:1}.home-gallery-controls{gap:8px}.home-gallery-controls button{padding:8px;font-size:.75rem}}
@media(max-width:650px){.finder-controls{flex-direction:column;gap:24px}.product-directory>.section-heading{display:flex;align-items:flex-start;flex-direction:column;gap:20px}.product-directory{padding-top:28px}.product-directory h1{font-size:2.5rem}.architect-button{width:100%;font-size:.9rem}.product-intro{padding-top:42px}.download-row{grid-template-columns:40px minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.home-gallery-slide{transition:none}}

@media(max-width:650px){.filter-buttons button{padding:12px 18px}}

/* Real document previews, with full page proportions preserved. */
.download-row{grid-template-columns:104px minmax(0,1fr);gap:26px;padding-block:24px}
.document-preview{display:flex;align-items:center;justify-content:center;width:104px;height:134px;padding:4px;background:#fff;border:1px solid #d8d8d8;box-shadow:0 2px 6px #0000000d}
.document-preview img{display:block;width:100%;height:100%;object-fit:contain}
.download-row:hover .document-preview,.download-row:focus-visible .document-preview{border-color:var(--red)}
@media(max-width:650px){.download-row{grid-template-columns:74px minmax(0,1fr);gap:18px;padding-block:20px}.document-preview{width:74px;height:96px;padding:3px}}
/* Shared catalog, project and reference templates. */
[hidden]{display:none!important}
.enhanced-only{display:none}.js .enhanced-only{display:block}
select,input[type="search"]{font:inherit;border:1px solid #888;border-radius:0;background:#fff;color:var(--ink);padding:12px;min-height:48px;max-width:100%;width:100%}
label{display:block;font-weight:600;margin-bottom:8px}
.finder-secondary{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:0 0 30px}.finder-secondary>div{width:min(100%,360px)}
.panel-index{gap:8px}.panel-index a{padding:10px 12px;font-size:.8rem}
.panel-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.panel-card{border:1px solid var(--line);display:flex;flex-direction:column;scroll-margin-top:24px}
.panel-profile{display:flex;align-items:center;justify-content:center;min-height:210px;padding:24px;background:#f7f7f6;border-bottom:1px solid var(--line)}
.panel-profile img{width:100%;height:180px;object-fit:contain}
.panel-card-copy{padding:26px;display:flex;flex-direction:column;flex:1}.panel-card .eyebrow{font-size:.67rem;letter-spacing:.09em}.panel-card h2{font:650 clamp(1.3rem,2vw,1.65rem) var(--sans);font-variant-numeric:lining-nums;letter-spacing:normal;color:var(--red);margin:0 0 12px}.panel-card h2 a{text-decoration:none}.panel-card-copy>p:not(.eyebrow){font-size:.9rem}.panel-card-copy>.text-link{margin-top:auto;font-size:.85rem}
.panel-card:hover{border-color:var(--red)}
.architect-teaser{background:#f8f0f0;padding:54px 0;border-top:1px solid #dac4c4;border-bottom:1px solid #dac4c4}.architect-teaser p{max-width:780px}.architect-teaser h2{margin-top:8px}.architect-teaser .button{margin-top:12px}
.call-band{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:48px;border-top:2px solid var(--red);margin-top:60px;margin-bottom:60px}.call-band h2{font-size:clamp(1.65rem,3vw,2.3rem);line-height:1.15;margin:0 0 12px}.call-band p{margin:0;max-width:760px}.call-band .button{flex-shrink:0}
.panel-page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;margin-top:24px}.panel-page-visual>img{width:100%;height:320px;object-fit:contain;background:var(--soft);padding:32px}.panel-page-visual details{margin-top:24px}.panel-page-visual details img{height:auto;width:100%;object-fit:contain}.panel-facts{margin:20px 0}.panel-facts>div{padding:15px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:16px}.panel-facts dt{font-weight:650}.panel-facts dd{margin:0}.small-text{font-size:.85rem;color:var(--muted);line-height:1.65}.inline-links{display:flex;flex-wrap:wrap;gap:16px 28px;margin-top:30px}.inline-links a{font-size:.85rem;color:var(--red)}
.library-controls,.compare-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;background:var(--soft);padding:24px;margin:26px 0 20px}.js .library-controls,.js .compare-controls{display:grid}.compare-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.library-controls>div,.compare-controls>div{min-width:0}.library-controls label,.compare-controls label{font-size:.85rem}
.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}.download-row strong{font-size:1rem;line-height:1.35}.download-row small{display:block;margin-top:7px;line-height:1.4}.download-row{min-width:0}.download-row>span{min-width:0}
.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.path-grid article{border-top:4px solid var(--red);background:var(--soft);padding:28px}.path-grid h2{font-size:1.8rem;margin:0 0 18px}.path-grid p{font-size:.9rem}.path-grid a{display:block;margin:16px 0 0;font-size:.9rem;color:var(--red)}.two-paths{grid-template-columns:1fr 1fr}
.architect-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.architect-paths .resource-card{align-content:start}.editorial-note{max-width:960px;margin:0 0 50px;padding:30px 0;border-bottom:1px solid var(--line)}.architect-paths+.editorial-note{margin-top:42px}.editorial-note h2{font-size:2rem}.editorial-note p{max-width:860px}.ultra-grid h3{font:650 1.1rem var(--sans);font-variant-numeric:lining-nums;margin:0}
.project-panel-links{display:flex;flex-direction:column;gap:8px;padding-top:16px}.project-panel-links a{color:var(--red);font-size:.85rem}.gallery-grid figure{min-width:0}.gallery-grid img{width:100%;height:auto;object-fit:contain}.gallery-meta{align-items:start}.project-caption{font-size:.85rem}
.color-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.color-project-grid img{width:100%;height:auto;object-fit:contain}.color-project-grid h2{font:650 1.3rem var(--sans);color:var(--red);margin:20px 0 8px}.color-project-grid p,.color-project-grid a{font-size:.85rem}.color-project-grid p{margin:0 0 12px}
.comparison-scroll{width:100%;overflow:auto;border:1px solid var(--line)}.comparison-table{border-collapse:collapse;text-align:left;width:100%;min-width:640px}.comparison-table caption{text-align:left;padding:20px;font-weight:650}.comparison-table th,.comparison-table td{padding:20px;border-top:1px solid var(--line);border-right:1px solid var(--line);min-width:210px;vertical-align:top;font-size:.9rem}.comparison-table th{background:var(--soft);font-weight:650}.comparison-table th:first-child{min-width:170px}.comparison-table img{width:180px;height:130px;object-fit:contain}.comparison-table a{color:var(--red);font-variant-numeric:lining-nums}
.planning-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:70px}.planning-list{padding-left:1.5rem}.planning-list li{padding:0 0 22px 12px}.planning-list li::marker{color:var(--red);font-weight:700}.planning-list h3{margin:0;font-size:1.25rem}.planning-list p{margin-top:8px}.planning-aside{background:var(--soft);padding:32px;align-self:start;border-top:4px solid var(--red)}.planning-aside h2{font-size:2rem}.planning-aside>a:not(.button){display:block;margin-top:20px}
@media(max-width:1100px){.panel-card-grid,.color-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-page-grid{gap:32px}.path-grid,.architect-paths{grid-template-columns:1fr}.path-grid article{padding:26px}.path-grid h2{font-size:1.7rem}.call-band{align-items:start;flex-direction:column}.planning-grid{gap:30px}}
@media(max-width:760px){.panel-page-grid,.planning-grid{grid-template-columns:1fr}.document-grid{grid-template-columns:1fr}.compare-controls{grid-template-columns:1fr}.color-project-grid{grid-template-columns:1fr 1fr}.panel-card-copy{padding:20px}.panel-card .eyebrow{letter-spacing:.04em}.panel-page-visual>img{height:260px}.architect-paths{gap:12px}.call-band{margin-top:40px;margin-bottom:40px}.library-controls{padding:20px}.finder-secondary{align-items:start;flex-direction:column}}
@media(max-width:550px){.panel-card-grid,.color-project-grid,.library-controls{grid-template-columns:1fr}.panel-profile{min-height:170px}.panel-profile img{height:160px}.panel-facts>div{grid-template-columns:1fr;gap:4px}.panel-facts dd{font-size:.95rem}.planning-aside{padding:24px}.comparison-table th,.comparison-table td{padding:15px;min-width:180px}.comparison-table th:first-child{min-width:140px}.editorial-note h2{font-size:1.6rem}.panel-index{display:none}.panel-card h2{font-size:1.6rem}}
@media print{.site-header,.site-footer,.enhanced-only,.call-band,.home-gallery-controls{display:none!important}.wrap{width:100%}.comparison-scroll{overflow:visible}.comparison-table{min-width:0}.comparison-table td,.comparison-table th{min-width:0;font-size:10pt;padding:10px}.panel-page-grid{grid-template-columns:1fr 1fr}a{color:#000}}

html:not(.js) .enhanced-only{display:none}

.panel-page-heading h1{font-family:var(--sans);font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;font-weight:650;letter-spacing:-.025em;font-size:clamp(2.2rem,4.5vw,3.7rem)}
/* Text-only enlargement: allow long labels and grid children to reflow. */
body{overflow-wrap:anywhere}
main :where(div,article,section,aside,figure){min-width:0}
nav a{white-space:normal}
.button{max-width:100%;text-align:center}
.gallery-meta>a{flex-shrink:1}
.contact-details>div{flex-wrap:wrap}
select:focus-visible,.comparison-scroll:focus-visible{outline:3px solid var(--red);outline-offset:5px}

/* Project lightbox: quiet metadata beneath an uncropped photograph. */
.has-photo-viewer{cursor:zoom-in}.has-photo-viewer [data-project-open]{cursor:zoom-in}.has-photo-viewer .project-panel-links a{cursor:pointer}
.photo-viewer-open{overflow:hidden}
.photo-viewer{width:min(1200px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:0;background:#fff;color:var(--ink);box-shadow:0 18px 70px #0006;overflow:auto}
.photo-viewer::backdrop{background:rgb(0 0 0 / 78%)}
.photo-viewer-layout{min-width:0}.photo-viewer-toolbar{display:flex;justify-content:flex-end;padding:10px 18px;background:#fff}
.photo-viewer-close{background:white;color:var(--ink);border:1px solid #888;min-height:44px;padding:7px 17px;font-size:.85rem}
.photo-viewer-close:hover{color:var(--red);border-color:var(--red)}
.photo-viewer-image{background:#f4f4f4}.photo-viewer-image img{display:block;width:100%;height:min(65dvh,800px);object-fit:contain}
.photo-viewer-caption{padding:20px 28px 24px;line-height:1.5;font-size:.8rem}
.photo-viewer-caption h2{font:650 1rem/1.4 var(--sans);letter-spacing:normal;margin:0 0 8px}
.photo-viewer-caption .project-caption{border:0;margin:0;padding:0;font-size:.8rem;color:var(--muted)}
.photo-viewer-caption .project-caption p{margin:0 0 4px}.photo-viewer-caption .project-caption p:first-child{font-weight:400}
.photo-viewer-caption .project-panel-links{padding-top:8px;gap:5px}.photo-viewer-caption .project-panel-links a{font-size:.8rem;width:fit-content}
@media(max-width:650px){.photo-viewer{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.photo-viewer-toolbar{padding:8px 12px}.photo-viewer-caption{padding:16px 18px 20px}.photo-viewer-image img{height:min(52dvh,600px)}}

.about-company{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:64px;align-items:start}
.about-company h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:26px}
.about-company-copy>p:not(.eyebrow){color:var(--muted)}
.about-company figure{padding-top:4px}.about-company img{width:100%;height:auto;object-fit:contain}
@media(max-width:950px){.about-company{grid-template-columns:1fr;gap:36px}.about-company figure{max-width:800px}}

/* Unnumbered homepage photographs, with small corner arrows. */
.home-gallery-stage{position:relative}
.home-gallery-controls{position:absolute;inset:auto 12px 12px;display:flex;justify-content:space-between;align-items:center;padding:0;z-index:2;pointer-events:none}
.home-gallery-controls button{display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;pointer-events:auto;font-size:1.4rem;line-height:1}
.home-gallery-controls svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.home-gallery-controls .arrow-outline{stroke:#1a1a1a;stroke-width:4;stroke-opacity:.75}
.home-gallery-controls button:hover{background:rgb(0 0 0 / 22%);color:#fff}
.home-gallery-controls button:focus-visible{outline-color:#fff;outline-offset:3px;box-shadow:0 0 0 6px #1a1a1a}
.home-gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px}
.home-gallery-bottom .home-gallery-link{margin:0}
.home-gallery-pause{min-height:44px;padding:6px 4px;border:0;background:transparent;color:var(--muted);font-size:.8rem;text-decoration:underline;text-underline-offset:.2em}
.home-gallery-pause:hover{color:var(--red)}
/* Only the active slide participates in layout; hidden lazy photos stay off the initial download. */
.home-gallery-slide{display:none;opacity:1;visibility:visible;transition:none}
.home-gallery-slide.is-active{display:flex}

/* Content-first pages follow the compact product directory. */
.content-first{padding-top:36px}
.content-first .content-title{font-size:clamp(2.5rem,4vw,3.6rem);margin-bottom:26px}
@media(max-width:650px){.content-first{padding-top:28px}.content-first .content-title{font-size:2.5rem}}

/* Persistent ASP masthead with all navigation links visible at every screen size. */
.site-header{position:sticky;top:0;z-index:40}
html{scroll-padding-top:var(--header-offset,220px)}
.skip-link{position:fixed;z-index:60}
.header-inner{display:grid;grid-template-columns:380px minmax(0,1fr) auto;grid-template-areas:"brand navigation tools";gap:20px;min-height:134px;padding-block:16px}
.brand{grid-area:brand;width:380px;max-width:100%}
.header-tools{grid-area:tools;display:flex;align-items:center;justify-content:flex-end;gap:0;order:0;width:auto;margin:0;min-width:0}
.language-switch{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 13px;border:1px solid var(--red);color:var(--red);font-size:.8rem;line-height:1.4;font-weight:650;text-decoration:none;max-width:100%}
.language-switch:hover{background:var(--red);color:#fff}
.site-header #primary-navigation,.js .site-header #primary-navigation{grid-area:navigation;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 20px;min-width:0;max-height:none;overflow:visible;border:0;padding:0}
.site-header #primary-navigation a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 0;font-size:.9rem;line-height:1.35;text-align:center}
.site-header #primary-navigation .nav-contact{padding:10px 14px}
@media(max-width:1400px){.header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand tools" "navigation navigation";gap:14px 20px;min-height:0;padding-block:18px}.brand{width:340px}.site-header #primary-navigation,.js .site-header #primary-navigation{justify-content:flex-start;gap:4px 26px;border-top:1px solid var(--line);padding-top:10px}.site-header #primary-navigation a{font-size:.9rem}}
@media(max-width:650px){.header-inner{gap:12px 14px;padding-block:14px}.brand{width:300px}.language-switch{font-size:.8rem;padding:8px 10px}.site-header #primary-navigation,.js .site-header #primary-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 6px;padding-top:10px}.site-header #primary-navigation a{font-size:.78rem;line-height:1.25;padding:6px 4px;min-height:44px}.site-header #primary-navigation .nav-contact{padding:6px 4px}.site-header #primary-navigation a[aria-current]{text-underline-offset:4px}}

/* Local distributor search and a privacy-preserving Northeast map. */
.locator-page{padding-bottom:60px}.locator-intro{max-width:760px;color:var(--muted);margin-bottom:26px}
.js .locator-search{display:flex;gap:14px;flex-wrap:wrap;align-items:end;padding:24px;background:#f7f3f1;border-top:3px solid var(--red)}
.locator-zip{flex:0 1 240px;min-width:0}.locator-zip label{display:block;font-weight:650;font-size:.85rem;margin-bottom:7px}
.locator-zip input{width:100%;min-width:0;min-height:52px;padding:10px 14px;border:1px solid #767676;background:#fff;font-variant-numeric:lining-nums}
.locator-search .button{min-height:52px}.locator-reset{border:0;background:transparent;color:var(--red);text-decoration:underline;padding:12px 8px;min-height:48px;max-width:100%}
.locator-note,.locator-privacy{font-size:.78rem;color:var(--muted);line-height:1.65}.locator-note{margin:14px 0}.locator-privacy{margin-top:0}
#locator-status{font-size:.85rem;font-weight:550;margin:12px 0 24px;min-height:1.5em;color:var(--red)}
.locator-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:44px;align-items:start}
.locator-grid h2{font:650 1.3rem/1.35 var(--sans);letter-spacing:-.015em;margin-bottom:14px}
.locator-results{border-top:1px solid var(--line)}.js .locator-results{max-height:650px;overflow:auto;overscroll-behavior-y:contain;padding-right:10px;scrollbar-color:var(--red) #eee}
.locator-results:focus-visible{outline:3px solid var(--red);outline-offset:5px}
.branch-card{padding:20px 4px;border-bottom:1px solid var(--line)}.branch-card h3{font:700 1rem/1.4 var(--sans);margin-bottom:3px;color:var(--ink)}
.branch-name{font-size:.88rem;font-weight:550;margin:0 0 8px;color:var(--muted)}.branch-card address{margin:8px 0 4px;font-size:.8rem;font-style:normal;line-height:1.55;color:var(--muted)}
.branch-phone{display:inline-flex;align-items:center;min-height:44px;font-size:.85rem;font-weight:650;color:var(--red);margin-top:5px}.branch-distance{font-size:.8rem;font-weight:700;color:var(--red);margin:0 0 8px}
.locator-message{font-size:.8rem;border-left:3px solid var(--red);padding-left:14px}
.locator-map{position:relative;background:#eef3f4;aspect-ratio:900/760;overflow:hidden;border:1px solid #d6e0e2}
.locator-map svg{display:block;width:100%;height:100%}.map-state{fill:#fff;stroke:#b5bcbf;stroke-width:1.5}.map-state-label{fill:#545454;font:550 18px var(--sans);text-anchor:middle;pointer-events:none}
.locator-pins{position:absolute;inset:0;pointer-events:none}.locator-pin{position:absolute;transform:translate(-50%,-50%);width:40px;height:40px;min-height:40px;padding:0;border:3px solid #fff;border-radius:50%;background:var(--red);color:#fff;font:700 .7rem/1 var(--sans);box-shadow:0 2px 7px #0003;pointer-events:auto;cursor:pointer;display:flex;align-items:center;justify-content:center}
.locator-pin:empty::after{content:'';width:7px;height:7px;background:white;border-radius:50%}.locator-pin:hover,.locator-pin:focus-visible{background:#171717;z-index:2}.locator-pin:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.locator-pin:not(.is-result){background:#626262}.locator-attribution{font-size:.65rem;color:var(--muted);margin-top:9px}
.locator-help{margin-top:40px;padding-top:28px;border-top:2px solid var(--red);display:flex;align-items:center;gap:30px;justify-content:space-between}.locator-help h2{font:650 1.3rem/1.4 var(--sans);margin-bottom:10px}.locator-help p{font-size:.85rem;max-width:620px}.locator-help .button{flex-shrink:0}
@media(max-width:950px){.locator-grid{gap:26px}}
@media(max-width:750px){.locator-grid{grid-template-columns:1fr}.locator-map-panel{grid-row:1}.locator-map{max-width:620px;margin-inline:auto}.js .locator-results{max-height:none;overflow:visible;padding-right:0}.locator-search{padding:18px;gap:12px}.locator-zip{flex-basis:100%}.locator-search .button{width:100%}.locator-reset{padding-left:0}.locator-help{display:block}.locator-help .button{margin-top:15px}.map-state-label{font-size:24px}}
@media(max-width:650px){.site-header #primary-navigation .nav-contact{grid-column:3;grid-row:2 / span 2}.site-header #primary-navigation a[href$="/find-a-distributor"]{grid-column:1 / span 2}.site-header #primary-navigation{grid-auto-flow:dense}}
@media print{.locator-search,.locator-pins,.locator-map-panel{display:none}.locator-grid{display:block}.js .locator-results{max-height:none;overflow:visible}.branch-card[hidden]{display:block!important}}

.js .locator-page[data-mode="nearby"] .locator-results{max-height:none;overflow:visible}
@media(max-width:750px){.locator-page[data-mode="nearby"] .locator-list-panel{grid-row:1}.locator-page[data-mode="nearby"] .locator-map-panel{grid-row:2}}

/* Even navigation spacing, without hiding the menu behind a toggle. */
@media(min-width:651px){.site-header #primary-navigation,.js .site-header #primary-navigation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 12px;width:100%;justify-content:stretch}.site-header #primary-navigation a{width:100%;padding-inline:4px}.site-header #primary-navigation .nav-contact{padding-inline:8px;grid-column:span 2}}
@media(min-width:1100px){.site-header #primary-navigation,.js .site-header #primary-navigation{grid-template-columns:repeat(7,minmax(0,1fr))}.site-header #primary-navigation .nav-contact{grid-column:auto}}
@media(min-width:1401px){.header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand tools" "navigation navigation";gap:14px 20px;padding-block:18px}.site-header #primary-navigation,.js .site-header #primary-navigation{border-top:1px solid var(--line);padding-top:10px}}
.locator-inquiry-link{font-size:.85rem;margin:-12px 0 26px;color:var(--red)}
.distributor-inquiry{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:42px;padding:26px;background:#f7f3f1;border-top:3px solid var(--red)}
.distributor-inquiry h2{font:650 1.3rem/1.4 var(--sans);letter-spacing:normal;margin-bottom:12px}.distributor-inquiry p{font-size:.85rem}.distributor-inquiry .locator-note{font-size:.78rem;margin-bottom:0}.distributor-inquiry .button{justify-content:center}
.locator-map{touch-action:pan-y pinch-zoom;cursor:grab;user-select:none}.locator-map.is-dragging{cursor:grabbing}
.locator-map:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.js .map-zoom-controls{display:flex;position:absolute;top:12px;right:12px;gap:5px;z-index:4}
.map-zoom-controls button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #767676;background:#fff;color:#1a1a1a;font-size:1rem;font-weight:650;padding:6px 10px;box-shadow:0 2px 5px #0001}
.map-zoom-controls button:last-child{font-size:.7rem;max-width:150px}.map-zoom-controls button:disabled{color:#6b6b6b;background:#eee;cursor:default}
.locator-map .map-state{vector-effect:non-scaling-stroke;stroke-width:1px}
.js .locator-page[data-mode="map"] .locator-results{max-height:none;overflow:visible}
@media(max-width:750px){.distributor-inquiry{grid-template-columns:1fr;gap:12px;padding:20px}.locator-page[data-mode="map"] .locator-map-panel{grid-row:1}.locator-page[data-mode="map"] .locator-list-panel{grid-row:2}.map-zoom-controls{top:8px;right:8px}.map-zoom-controls button:last-child{max-width:130px}.map-zoom-controls button{padding-inline:8px}}

.locator-map.is-zoomed{touch-action:none}
/* Road context and compact distributor logos. */
.map-highway{pointer-events:none}.map-highway path{fill:none;stroke:#c5ae7c;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;opacity:.78}
.map-city,.map-road-label{pointer-events:none}.map-city circle{fill:#3d4c58}.map-city text{fill:#273944;font-weight:600;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.map-road-label text{fill:#5f512f;font-weight:650;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.map-leaders{pointer-events:none}.map-leaders line{stroke:#68777f;stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:3 2;opacity:.6}
.locator-pin.locator-logo{background:#fff;border:1px solid #a8b0b3;border-radius:5px;min-height:44px;padding:5px 6px;box-shadow:0 2px 5px #0002;overflow:visible}
.locator-logo img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.locator-pin.locator-logo:not(.is-result){background:#fff;opacity:.78}.locator-pin.locator-logo:hover,.locator-pin.locator-logo:focus-visible{background:#fff;border-color:var(--ink);opacity:1;z-index:6!important}
.locator-pin.locator-logo.is-selected{border:2px solid var(--red);opacity:1}.map-cluster-count{position:absolute;right:-8px;top:-8px;min-width:24px;height:24px;padding:0 5px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--red);color:#fff;border:2px solid white;font-size:12px;line-height:1}
.map-branch-detail:not([hidden]){position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;padding:20px 44px 16px 18px;border:1px solid var(--line);border-top:0;background:#fff}
.map-branch-detail>img{width:96px;height:56px;object-fit:contain}.map-branch-detail h3{font-size:1rem;font-weight:700;line-height:1.35}.map-branch-detail address{font-size:.8rem;margin:8px 0}.map-branch-detail .branch-name{margin:5px 0}.map-detail-close{position:absolute;right:2px;top:2px;border:0;background:#fff;color:var(--ink);width:44px;height:44px;min-height:44px;font-size:1.4rem}
@media(max-width:500px){.map-branch-detail:not([hidden]){grid-template-columns:70px minmax(0,1fr);gap:12px;padding-left:12px}.map-branch-detail>img{width:70px;height:48px}}

/* Approved ASP cut sheets and original transparent profile artwork. */
.panel-profile,.panel-page-visual{background:#fff}.panel-profile img{object-fit:contain;max-height:260px}.panel-page-visual>img{object-fit:contain;width:100%;height:auto;max-height:420px}.panel-card-actions{display:flex;flex-wrap:wrap;gap:10px 20px}.panel-value{color:#8B1A1A;font-weight:700;line-height:1.5}.spec-confirmation{font-size:.9rem;line-height:1.5;color:#6f2424}.panel-facts dd{white-space:pre-line;overflow-wrap:anywhere}.lineup-download{margin:22px 0 30px}.lineup-download .small-text{margin:8px 0;max-width:75ch}.legacy-panel-anchor{scroll-margin-top:var(--header-offset,220px)}.panel-page-visual .document-grid{display:block}.panel-page-visual .download-row{margin-top:24px}.panel-page-visual .document-preview img{object-fit:contain}.comparison-table td{overflow-wrap:anywhere}

/* Shadow update: compact mobile navigation; menu opens only on request. */
.mobile-menu-toggle{display:none}
@media(max-width:900px){
 .site-header{position:sticky;top:0}
 html{scroll-padding-top:var(--header-offset,100px)}
 .header-inner{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"menu brand tools" "navigation navigation navigation";gap:10px 12px;min-height:0;padding-block:12px}
 .brand{width:260px;min-width:0}
 .header-tools{gap:8px}
 .language-switch{font-size:.75rem;padding:8px;min-height:44px}
 .js .mobile-menu-toggle{grid-area:menu;display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);margin:0}
 .mobile-menu-toggle svg{fill:currentColor}
 .mobile-menu-toggle[aria-expanded="true"]{background:var(--soft);border-color:var(--red);color:var(--red)}
 .js .header-inner{grid-template-areas:"menu brand tools"}
 .site-header #primary-navigation{display:grid;grid-template-columns:1fr;gap:0;width:100%}
 .js .site-header #primary-navigation{display:none}
 .js .site-header #primary-navigation.is-open{display:grid;grid-template-columns:1fr;grid-auto-flow:row;gap:0;position:absolute;top:100%;left:20px;width:min(320px,calc(100% - 40px));max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;padding:8px 16px;border:1px solid var(--line);border-top:3px solid var(--red);background:#fff;box-shadow:0 10px 24px #0002}
 .site-header #primary-navigation a,.site-header #primary-navigation .nav-contact,.site-header #primary-navigation a[href$="/find-a-distributor"]{grid-column:auto;grid-row:auto;min-height:44px;padding:10px 8px;font-size:1rem;line-height:1.35;justify-content:flex-start;text-align:left}
 .site-header #primary-navigation .nav-contact{margin-block:6px}
 .site-header #primary-navigation a[aria-current]{text-underline-offset:4px}
}

/* Mobile color experiment: crimson canvas, readable light copy, original white logo bar. */
.language-short{display:none}
@media(max-width:900px){
 body{background:#8b1a1a;color:#fff;--muted:#f2dddd;--line:#c58e8e;--soft:#741616}
 a:hover{color:#ffe3d8}
 .site-header{background:#fff;color:#1a1a1a;--muted:#545454;--line:#d6d6d6;--soft:#f4f4f4}
 .site-header a:hover{color:#8b1a1a}
 .site-header::after{height:15px;background:linear-gradient(to bottom,#1a1a1a 0 6px,#fff 6px 10px,#8b1a1a 10px 15px)}
 .header-inner{padding-block:10px}
 .language-full{display:none}.language-short{display:inline}
 .language-switch{font-size:.65rem;letter-spacing:.06em;min-width:44px;padding:8px 6px}
 .hero-copy em,main .eyebrow,.panel-value,.spec-confirmation,.locator-inquiry-link,.locator-reset{color:#fff}
 .family-card,.architect-teaser,.distributor-inquiry,.js .locator-search{background:#741616}
 .button{background:#fff;border-color:#fff;color:#8b1a1a}
 .button:hover{background:#f6e7e3;border-color:#f6e7e3;color:#681111}
 .panel-index a,.filter-buttons button{background:#fff;color:#8b1a1a;border-color:#fff}
 .panel-index a:hover,.filter-buttons button[aria-pressed="true"],.filter-buttons button:hover{background:#501010;color:#fff;border-color:#fff}
 .architect-grid article,.map-branch-detail,.photo-viewer,.review-note{color:#1a1a1a;--muted:#545454;--line:#d6d6d6;--soft:#f4f4f4}
 .architect-grid article a:hover,.map-branch-detail a:hover{color:#8b1a1a}
 .panel-profile,.panel-page-visual,.document-preview{background:#fff;color:#1a1a1a;--muted:#545454;--line:#d6d6d6;--soft:#f4f4f4}
 .panel-page-visual .eyebrow{color:#8b1a1a}
 .panel-page-visual .button{background:#8b1a1a;color:#fff}
 main :is(a,button,input,select,summary):focus-visible{outline-color:#fff}
 .button:focus-visible{box-shadow:0 0 0 7px #501010}
 .photo-viewer :focus-visible,.map-branch-detail :focus-visible,.panel-page-visual :focus-visible{outline-color:#8b1a1a}
}

@media(max-width:900px){html:not(.js) .header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand tools" "navigation navigation"}}

@media(max-width:900px){
 .product-detail h2,.panel-card h2,.gallery-meta strong,.inline-links a,.path-grid a,.project-panel-links a,.color-project-grid h2,.comparison-table a,details[open]>summary,.small-review,.branch-card h3,.branch-card .branch-phone,.branch-distance,.distributor-inquiry .branch-phone,#locator-status,.rich strong,.rich b,.planning-list li::marker{color:#fff}
 .panel-page-visual .panel-value{color:#8b1a1a}
 .home-gallery-pause{color:#545454}
 .home-gallery-bottom{color:#fff;background:#8b1a1a}
 .home-gallery-bottom .home-gallery-pause,.home-gallery-bottom .home-gallery-link a{color:#fff}
}

/* Next-update spacing pass: bring the logo, links and double line closer together. */
@media(min-width:901px){
 .header-inner{min-height:0;padding-block:8px;gap:6px 20px}
 .brand{width:320px}
 .site-header #primary-navigation,.js .site-header #primary-navigation{grid-template-columns:repeat(7,minmax(0,1fr));gap:0 8px;padding-top:4px}
 .site-header #primary-navigation a{min-height:44px;padding:6px 4px;font-size:.85rem}
 .site-header #primary-navigation .nav-contact{grid-column:auto;padding:6px 8px}
}
@media(max-width:900px){.header-inner{padding-block:8px}}
/* Approved gallery landing, retained in the next-update shadow build. */
.landing-home .site-header{z-index:60;background:#fff;color:#191919;--line:#ddd;--soft:#f4f4f4}
.landing-home .site-header::after{height:11px;background:linear-gradient(#191919 0 4px,#fff 4px 7px,#8b1a1a 7px 11px)}
.landing-home .header-inner{height:64px;min-height:64px;width:min(1320px,100%);padding:8px 18px;gap:14px;grid-template-columns:44px minmax(0,1fr) 44px;grid-template-areas:"menu brand tools"}
.landing-home .brand{width:min(100%,240px);justify-self:center}
.js .landing-home .brand{opacity:var(--landing-header-brand,0)}
.js .landing-home .brand:focus-visible{opacity:1}
.landing-home .language-full{display:none}.landing-home .language-short{display:inline}
.landing-home .language-switch{width:44px;min-width:44px;min-height:44px;padding:8px 0;border:0;font-size:.65rem;letter-spacing:.06em}
.js .landing-home .mobile-menu-toggle{display:inline-flex;grid-area:menu;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:#fff;color:#8b1a1a}
.landing-home .mobile-menu-toggle svg{fill:currentColor}
.js .landing-home .site-header #primary-navigation{display:none}
.js .landing-home .site-header #primary-navigation.is-open{display:grid;grid-template-columns:1fr;grid-auto-flow:row;gap:0;position:absolute;top:100%;left:18px;width:min(320px,calc(100% - 36px));max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain;padding:8px 16px;border:1px solid #ddd;border-top:3px solid #8b1a1a;background:#fff;box-shadow:0 10px 24px #0002}
.landing-home .site-header #primary-navigation a,.landing-home .site-header #primary-navigation .nav-contact,.landing-home .site-header #primary-navigation a[href$="/find-a-distributor"]{grid-column:auto;grid-row:auto;min-height:44px;padding:10px 8px;font-size:.85rem;line-height:1.35;justify-content:flex-start;text-align:left}
.landing-home .site-header #primary-navigation .nav-contact{margin-block:6px}
.landing-opening{position:relative;height:calc(100svh - 75px);min-height:480px;overflow:hidden;background:#393933}
.landing-opening .home-gallery-stage,.landing-shade{position:absolute;inset:0}
.landing-opening .home-gallery-stage{display:block;background:#393933;isolation:auto}
.landing-opening .home-gallery-slide{display:block;position:absolute;inset:0;width:100%;height:100%;opacity:0;visibility:visible;transition:opacity 1.8s ease;pointer-events:none;margin:0}
.landing-opening .home-gallery-slide.is-active{opacity:1;z-index:1}
.landing-opening .home-gallery-slide img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;filter:blur(1px);transform:scale(1.035)}
.landing-shade{z-index:2;background:linear-gradient(180deg,#0e192218 0%,#10171c30 45%,#100b0cb8 100%);pointer-events:none}
.landing-mark{position:absolute;z-index:3;top:40%;left:50%;transform:translate(-50%,-50%);pointer-events:none;width:170px;height:170px}
.js .landing-mark{position:fixed;z-index:50;top:var(--landing-mark-y,42vh);transform:translate(-50%,-50%) scale(var(--landing-mark-scale,1));opacity:var(--landing-mark-opacity,1)}
.landing-mark img{display:block;width:100%;height:100%;border:0;background:none;box-shadow:none;object-fit:contain}
.landing-introduction{padding:82px 0 90px;background:#8b1a1a;color:#fff}
.landing-introduction .hero-copy{max-width:1100px}
.landing-introduction .eyebrow,.landing-introduction .hero-copy em,.landing-introduction .lede,.landing-introduction .text-link{color:#fff}
.landing-introduction h1{font-size:clamp(2.2rem,8vw,4.4rem);max-width:850px}
.landing-introduction .lede{max-width:560px;font-size:.9rem;line-height:1.8}
.landing-introduction .actions{justify-content:flex-start;gap:20px 28px;flex-wrap:wrap}
.landing-introduction .product-explore{display:inline-flex;align-items:center;justify-content:center;min-height:54px;max-width:100%;padding:15px 26px;border:1px solid #fff4eb;border-radius:999px;background:#fff4eb;color:#761919;font-size:.8rem;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;box-shadow:0 4px 14px #35090920;transition:background .18s,box-shadow .18s}
.landing-introduction .product-explore:hover{background:#fff;color:#641313;box-shadow:0 6px 20px #35090930}
.landing-introduction .product-explore:focus-visible{outline:3px solid #fff;outline-offset:5px;box-shadow:0 0 0 3px #501010}
@media(min-width:800px){.landing-mark{width:220px;height:220px}.landing-home .header-inner{padding-inline:32px}.landing-opening{min-height:580px}}
html:not(.js) .landing-home .header-inner{height:auto;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand tools" "navigation navigation"}
html:not(.js) .landing-home .site-header #primary-navigation{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
@media(prefers-reduced-motion:reduce){.landing-opening .home-gallery-slide,.landing-introduction .product-explore{transition:none}}
@media print{.landing-opening{display:none}.landing-introduction{background:#fff;color:#111;padding:20px 0}.landing-introduction .hero-copy :is(h1,em,p){color:#111}}
/* The theme selector activates dark colors at every viewport size. */
@media screen{:where(html[data-theme="dark"]) body{background:#191919;color:#f5f2ef;--muted:#d2ceca;--line:#626262;--soft:#262626;color-scheme:dark}:where(html[data-theme="dark"]) .site-header{background:#fff;color:#1a1a1a;--muted:#545454;--line:#d6d6d6;--soft:#f4f4f4;color-scheme:light}:where(html[data-theme="dark"]) .site-header a:hover{color:#8b1a1a}:where(html[data-theme="dark"]) main a:hover{color:#ffd9d2}:where(html[data-theme="dark"]) main :is(.eyebrow,.panel-value,.spec-confirmation,.locator-inquiry-link,.locator-reset,.product-detail h2,.panel-card h2,.gallery-meta strong,.inline-links a,.path-grid a,.project-panel-links a,.color-project-grid h2,.comparison-table a,.small-review,.branch-card h3,.branch-phone,.branch-distance,.rich strong,.rich b),:where(html[data-theme="dark"]) main details[open]>summary{color:#ffc0b8}:where(html[data-theme="dark"]) .planning-list li::marker{color:#ffc0b8}:where(html[data-theme="dark"]) .family-card,:where(html[data-theme="dark"]) .architect-teaser,:where(html[data-theme="dark"]) .distributor-inquiry,:where(html.js[data-theme="dark"]) .locator-search{background:#262626}:where(html[data-theme="dark"]) .button{background:#fff4eb;border-color:#fff4eb;color:#761919}:where(html[data-theme="dark"]) .button:hover{background:#fff;border-color:#fff;color:#641313}:where(html[data-theme="dark"]) .panel-index a,:where(html[data-theme="dark"]) .filter-buttons button{background:#262626;color:#ffc0b8;border-color:#8d6966}:where(html[data-theme="dark"]) .panel-index a:hover,:where(html[data-theme="dark"]) .filter-buttons button[aria-pressed="true"],:where(html[data-theme="dark"]) .filter-buttons button:hover{background:#8b1a1a;color:#fff;border-color:#ffc0b8}:where(html[data-theme="dark"]) .architect-grid article,:where(html[data-theme="dark"]) .map-branch-detail,:where(html[data-theme="dark"]) .photo-viewer,:where(html[data-theme="dark"]) .review-note,:where(html[data-theme="dark"]) .panel-profile,:where(html[data-theme="dark"]) .panel-page-visual,:where(html[data-theme="dark"]) .document-preview{color:#1a1a1a;--muted:#545454;--line:#d6d6d6;--soft:#f4f4f4;color-scheme:light}:where(html[data-theme="dark"]) main :is(.architect-grid article,.map-branch-detail,.photo-viewer,.review-note,.panel-page-visual) :is(a,h2,h3,.eyebrow,.panel-value,.rich strong,.rich b){color:#8b1a1a}:where(html[data-theme="dark"]) .panel-page-visual .button{background:#8b1a1a;color:#fff}:where(html[data-theme="dark"]) main :is(input,select,textarea){background:#fff;color:#1a1a1a;color-scheme:light}:where(html[data-theme="dark"]) main :is(a,button,input,select,summary):focus-visible{outline-color:#fff}:where(html[data-theme="dark"]) .photo-viewer :focus-visible,:where(html[data-theme="dark"]) .map-branch-detail :focus-visible,:where(html[data-theme="dark"]) .panel-page-visual :focus-visible{outline-color:#8b1a1a}:where(html[data-theme="dark"]) .architect-section .eyebrow{color:#fff}:where(html[data-theme="dark"]) .landing-introduction .eyebrow{color:#fff}
}

@media screen{:where(html[data-theme="dark"]) main .panel-page-visual .panel-value,:where(html[data-theme="dark"]) main .panel-page-visual .spec-confirmation,:where(html[data-theme="dark"]) main .panel-profile .panel-value{color:#8b1a1a}}

@media screen{:where(html[data-theme="dark"]) main #locator-status{color:#ffc0b8}}

/* Open navigation stays in front of the landing mark and page content. */
.js .site-header #primary-navigation.is-open{z-index:80;isolation:isolate}
.js .landing-home .site-header{z-index:100}
.locator-brand-label{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:3px;font-size:10px;font-weight:700;line-height:1.1;color:#1a1a1a;text-align:center;overflow-wrap:anywhere}
.map-branch-detail.no-brand-logo{grid-template-columns:minmax(0,1fr) auto}
.resource-progress{margin-block:24px 32px;padding:24px;border:1px solid var(--line);border-left:4px solid currentColor}
.resource-progress h2{font-size:clamp(1.6rem,3vw,2.3rem);margin-bottom:16px}
.resource-progress p:last-child{margin-bottom:0}

/* Light-gray surfaces separate panel artwork and selection tiles from the page. */
.panel-profile,.panel-page-visual>img,.comparison-table img{background:#ededed}
main .panel-index a{background:#ededed;color:#8b1a1a;border-color:#ccc}
main .panel-index a:hover{background:#8b1a1a;color:#fff;border-color:#8b1a1a}

/* The light view retains the approved crimson introduction; dark uses charcoal. */
:where(html[data-theme="dark"]) .landing-introduction{background:#191919}

/* Full desktop masthead matches the inner pages; phone navigation stays compact. */
@media(min-width:901px){
 .landing-home .header-inner{height:auto;min-height:0;width:min(1320px,calc(100% - 96px));padding:8px 0;gap:6px 20px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand tools" "navigation navigation"}
 .js .landing-home .brand,.landing-home .brand{opacity:1;width:320px;justify-self:start}
 .js .landing-home .mobile-menu-toggle{display:none}
 .landing-home .language-full{display:inline}.landing-home .language-short{display:none}
 .landing-home .language-switch{width:auto;min-width:0;padding:8px 13px;border:1px solid #8b1a1a;font-size:.8rem;letter-spacing:normal}
 .js .landing-home .site-header #primary-navigation,.landing-home .site-header #primary-navigation{display:grid;position:static;grid-template-columns:repeat(7,minmax(0,1fr));gap:0 8px;width:100%;padding-top:4px}
 .landing-home .site-header #primary-navigation a,.landing-home .site-header #primary-navigation a[href$="/find-a-distributor"]{min-height:44px;padding:6px 4px;font-size:.85rem;text-align:center;justify-content:center}
 .landing-home .site-header #primary-navigation .nav-contact{padding:6px 8px;margin:0}
 .landing-home .site-header::after{height:15px;background:linear-gradient(to bottom,#1a1a1a 0 6px,#fff 6px 10px,#8b1a1a 10px 15px)}
 .landing-opening{height:calc(100svh - var(--header-offset,168px) + 18px)}
}

/* Desktop starts with the headline; the gallery/logo opening is phone/tablet only. */
@media(min-width:901px){.landing-opening,.landing-mark{display:none}}

/* Homepage panel families keep a light-gray surface in every theme. */
main .family-card{display:flex;flex-direction:column;gap:16px;background:#ededed;color:#8b1a1a;border-color:#ccc}
main .family-card .number{color:#545454}
main .family-card h3{display:block;color:#8b1a1a;margin:0}
main .family-card img{background:#ededed;margin: auto auto 0}
main .family-card:hover{color:#8b1a1a;border-color:#8b1a1a}
main .family-card:focus-visible{outline:3px solid #8b1a1a;outline-offset:4px}

/* Theme selector, paired with the language button. */
.site-header .header-tools{gap:8px}
.site-header .theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:2px;border:1px solid #8b1a1a;border-radius:0;background:#fff;color:#8b1a1a;font-family:var(--sans);font-size:.65rem;font-weight:650;line-height:1.2;cursor:pointer}
.site-header .theme-toggle:hover{background:#8b1a1a;color:#fff}
.site-header .theme-toggle:focus-visible{outline:2px solid #8b1a1a;outline-offset:3px}
@media(max-width:900px){.landing-home .header-inner{grid-template-columns:44px minmax(0,1fr) auto;gap:8px;padding-inline:12px}.site-header .header-inner{column-gap:8px}.site-header .header-tools{gap:6px}}

.site-header .language-switch:hover{background:#8b1a1a;color:#fff}

/* Crimson industry strip in dark mode only; light mode is unchanged. */
html[data-theme="dark"] .industry-strip{background:#8b1a1a;color:#fff}
html[data-theme="dark"] .industry-strip span+span{border-color:#c58e8e}

/* Dark interior-page titles form a crimson band beneath the white masthead. */
html[data-theme="dark"] body:not(.landing-home) :is(.page-intro,.product-directory>.section-heading,.content-title){background:#8b1a1a;color:#fff;box-shadow:0 0 0 100vmax #8b1a1a;clip-path:inset(0 -100vmax)}
html[data-theme="dark"] body:not(.landing-home) :is(.product-directory>.section-heading,.content-title){padding-block:28px}
html[data-theme="dark"] body:not(.landing-home) :is(.content-first,.product-directory){padding-top:0}
html[data-theme="dark"] .page-intro :is(.eyebrow,.breadcrumb,.lede,a){color:#fff}
html[data-theme="dark"] .page-intro a:hover{color:#fff;text-decoration-thickness:2px}
.about-company-text>p:not(.eyebrow){color:var(--muted)}
html[data-theme="dark"] .about-company-copy{display:contents}
html[data-theme="dark"] .about-company>.about-company-copy>.content-title{grid-column:1/-1;margin-bottom:0}
html[data-theme="dark"] .about-company{row-gap:32px}
.family-section-heading{align-items:center;margin-bottom:28px}
.family-section-heading>.eyebrow{margin:0;color:var(--red)}
html[data-theme="dark"] .family-section-heading>.eyebrow{color:#ffc0b8}
@media(max-width:900px){html:not([data-theme="dark"]) .family-section-heading>.eyebrow{color:#fff}}
@media(max-width:650px){.family-section-heading>.text-link{margin-top:16px}html[data-theme="dark"] body:not(.landing-home) :is(.product-directory>.section-heading,.content-title){padding-block:24px}}

/* Original SpectraLume chart with a readable full-size PDF download. */
.spectralume-chart{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;padding-block:40px 60px}
.spectralume-preview{display:block;max-width:540px;background:#fff;border:1px solid #ccc}
.spectralume-preview img{display:block;width:100%;height:auto}
.spectralume-chart h2{font-size:clamp(1.8rem,3vw,2.7rem);margin-bottom:24px}
.spectralume-chart p{max-width:55ch}.spectralume-contact{margin-top:24px}
.spectralume-link{margin:16px 0 0 24px}
@media(max-width:700px){.spectralume-chart{grid-template-columns:1fr;gap:28px;padding-block:28px 40px}.spectralume-chart>div{grid-row:1}.spectralume-link{display:block;margin:18px 0}}

/* Compact mobile header: the appearance preference lives in the menu. */
@media(max-width:900px){.site-header .header-tools{gap:0}.site-header #primary-navigation .theme-toggle{width:100%;height:auto;min-height:44px;flex:none;justify-content:flex-start;padding:12px 18px;border:0;border-top:1px solid #d6d6d6;font-size:.95rem;text-align:left}.site-header .header-inner{grid-template-columns:44px minmax(0,1fr) 44px}}

/* The crimson strip holds the two friendly homepage actions. */
.industry-strip{background:#8b1a1a;color:#fff}
.industry-strip .wrap.actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px 20px;padding-block:22px;margin-block:0;text-transform:none;letter-spacing:normal}
.industry-strip .button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;max-width:100%;padding:12px 24px;border:1px solid #fff4eb;border-radius:999px;background:#fff4eb;color:#761919;font-size:.9rem;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;box-shadow:0 3px 12px #35090920}
.industry-strip .resources-explore{background:transparent;color:#fff;border-color:#ffffffb3}
.industry-strip .button:hover{background:#fff;color:#641313;border-color:#fff}
.industry-strip .button:focus-visible{outline:3px solid #fff;outline-offset:4px;box-shadow:0 0 0 2px #641313}

/* Balance mobile controls so the masthead logo is centered on every page. */
@media(max-width:900px){.site-header .header-inner{grid-template-columns:44px minmax(0,1fr) 44px}.site-header .brand{width:min(100%,240px);justify-self:center}.site-header .header-tools{width:44px;justify-self:end}.site-header .language-switch{width:44px;padding-inline:0;justify-content:center}}
