@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--navy:#102f4d;--ink:#162d40;--red:#df3237;--red-dark:#bf2028;--muted:#61717e;--line:#dae0e5;--pale:#f3f5f6;--white:#fff;--font:'Manrope','Noto Sans KR',Arial,sans-serif;--heading:'Barlow','Noto Sans KR',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #348ad0;outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);line-height:1.1}h1{font-size:clamp(3rem,5.3vw,5.2rem);font-weight:600;letter-spacing:-.035em}h2{font-size:clamp(2.35rem,3.6vw,3.6rem);font-weight:600;letter-spacing:-.025em}h3{font-size:1.3rem;font-weight:600}button{color:inherit}button:disabled{cursor:default}.wrap{width:min(1248px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{font-family:var(--font);font-size:.75rem;letter-spacing:.17em;font-weight:800;color:var(--red);margin-bottom:23px}.eyebrow.light{color:#e9b3b6}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--red);color:white;padding:16px 23px;border:1px solid var(--red);font-size:.875rem;font-weight:700;transition:background .2s,transform .2s;line-height:1.4;min-height:54px}.button:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-1px)}.button>span:last-child:not(:first-child){font-size:1.2rem}.button.small{padding:12px 17px;min-height:44px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:.875rem;font-weight:700}.text-link:hover{color:var(--red)}.text-link.white{color:white}.text-link.white:hover{color:#ffb9bb}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;left:20px;top:-70px;padding:12px 20px;background:#fff;z-index:100}.skip:focus{top:10px}.utility{background:var(--navy);color:#d8e3eb;font-size:.75rem}.utility-inner{min-height:35px;display:flex;justify-content:space-between;align-items:center}.utility a{display:flex;gap:13px}.header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #ebedef}.nav-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:19px;flex-shrink:0}.brand img{width:104px;height:56px;object-fit:contain}.brand>span{font-family:var(--heading);font-size:.66rem;font-weight:600;line-height:1.45;letter-spacing:.12em;max-width:78px;border-left:1px solid #cbd2d7;padding-left:18px;box-sizing:content-box}.nav-inner nav{display:flex;gap:32px;align-items:center;margin-left:auto}.nav-inner nav a{font-size:.875rem;font-weight:600}.nav-inner nav a:hover{color:var(--red)}.nav-actions{display:flex;align-items:center;gap:24px}.language{display:flex;align-items:center;gap:5px}.language>span:first-child{font-size:1.3rem}.language select{appearance:none;border:0;background:transparent;font-size:.8rem;font-weight:700;padding:9px 4px;cursor:pointer}.mobile-contact,.menu-toggle{display:none!important}.hero{position:relative;isolation:isolate;background:var(--navy);color:#fff;min-height:630px;overflow:hidden}.hero-image{position:absolute;inset:0;z-index:-1}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:68% 55%}.hero-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,36,60,.98) 0%,rgba(11,36,60,.93) 27%,rgba(11,36,60,.54) 55%,rgba(11,36,60,.12) 100%)}.hero-inner{min-height:630px;display:flex;align-items:center;padding-block:65px}.hero-copy{width:660px;max-width:65%}.hero .eyebrow{margin-bottom:25px;font-size:.75rem}.hero-description{font-size:1rem;line-height:1.85;max-width:480px;color:#d4dee8;margin-top:25px}.hero-buttons{display:flex;gap:30px;align-items:center;margin-top:35px}.hero-bottom{display:flex;align-items:center;gap:24px;margin-top:56px}.hero-year{font-family:var(--heading);font-size:2.1rem;font-weight:500;display:flex;align-items:baseline;gap:9px;line-height:1}.hero-year span{font-family:var(--font);font-size:.625rem;letter-spacing:.15em}.hero-bottom p{border-left:1px solid #718698;padding-left:24px;font-size:.8rem;line-height:1.6;color:#d4dee8}.photo-credit{position:absolute;bottom:30px;right:3.5%;z-index:1;color:#fff;font-size:.7rem;letter-spacing:.02em;max-width:230px;text-align:right;text-shadow:0 1px 7px #000}.value-strip{border-bottom:1px solid var(--line);background:#f6f7f8}.value-inner{display:grid;grid-template-columns:repeat(3,1fr)}.value-inner>div{display:flex;gap:22px;align-items:center;padding:28px 26px;border-right:1px solid var(--line);font-size:.875rem;font-weight:600}.value-inner>div:first-child{padding-left:0}.value-inner>div:last-child{border:0}.small-number{color:var(--red);font-family:var(--heading);font-weight:500;font-size:.875rem}.section-top{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}.section-intro{max-width:390px;color:var(--muted);line-height:1.8;font-size:.9375rem;margin-bottom:5px}.catalog-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);margin-bottom:30px}.filters{display:flex;gap:26px}.filter{border:0;background:transparent;position:relative;white-space:nowrap;padding:18px 0;color:var(--muted);font-size:.875rem;font-weight:600}.filter.active{color:var(--navy)}.filter.active:after{content:'';position:absolute;height:3px;background:var(--red);bottom:-1px;left:0;right:0}.filter:hover{color:var(--red)}.manufacturer{font-family:var(--heading);font-weight:700;font-size:1rem;white-space:nowrap}.manufacturer span{font-family:var(--font);font-size:.7rem;font-weight:500;color:var(--muted);margin-left:5px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.product-card{border:1px solid var(--line);min-width:0;transition:border-color .2s,box-shadow .2s;display:flex;flex-direction:column}.product-card:hover{border-color:#a4b2be;box-shadow:0 9px 28px #1831480c}.product-visual{height:226px;background:#f4f5f5;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.product-visual img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:15px}.product-visual.dark img{mix-blend-mode:normal;object-fit:cover;padding:0}.product-type{position:absolute;left:18px;top:15px;font-size:.65rem;font-weight:700;letter-spacing:.08em;background:#fff;padding:3px 8px;z-index:1;color:var(--navy)}.product-content{padding:24px;display:flex;flex-direction:column;flex:1}.product-content .mini-label{color:var(--muted);font-size:.6875rem;letter-spacing:.09em;font-weight:600;margin-bottom:8px}.product-content h3{font-size:1.55rem;margin-bottom:13px}.product-content p{color:var(--muted);font-size:.875rem;line-height:1.7;min-height:48px}.card-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;margin-top:23px;padding-top:17px;gap:8px}.core-tag{font-size:.75rem;font-weight:600}.detail-button{border:0;padding:0;background:transparent;color:var(--navy);font-size:.8rem;font-weight:700;display:flex;align-items:center;gap:12px}.detail-button:hover{color:var(--red)}.catalog-note{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:25px;font-size:.75rem;color:var(--muted)}.catalog-note>span{max-width:650px}.catalog-note a{white-space:nowrap;color:var(--navy);font-size:.8rem}.technical{background:var(--navy);color:white;position:relative}.technical-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.technical-copy>p:not(.eyebrow){color:#c2d0db;font-size:.9375rem;max-width:395px;line-height:1.8;margin-top:26px}.tech-rule{width:42px;height:3px;background:var(--red);margin-top:27px}.technical-copy p.technical-small{font-size:.8125rem;color:#9eb4c6;margin-top:18px}.resource-list{display:flex;flex-direction:column;justify-content:center}.resource{display:flex;align-items:center;gap:24px;border-bottom:1px solid #426079;padding:28px 0}.resource:first-child{border-top:1px solid #426079}.resource-icon{font-family:var(--heading);font-size:.875rem;color:#8aa1b4;align-self:flex-start;margin-top:6px}.resource-tag{color:#9bb3c7;font-size:.625rem;font-weight:700;letter-spacing:.14em;display:block;margin-bottom:9px}.resource h3{font-size:1.5rem;line-height:1.2;margin-bottom:9px}.resource p{font-size:.8125rem;color:#b5c6d3}.resource-arrow{margin-left:auto;flex-shrink:0;font-size:1.8rem;color:#dce8f1}.resource:hover h3,.resource:hover .resource-arrow{color:#ffa8ad}.about{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-picture{height:590px;position:relative;overflow:hidden;background:#e9edef}.about-picture>img{width:100%;height:100%;object-fit:cover}.about-picture-label{position:absolute;left:0;bottom:0;width:87%;background:var(--navy);color:#fff;padding:26px 31px;display:flex;flex-direction:column;border-left:5px solid var(--red)}.about-picture-label strong{font-family:var(--heading);font-size:1.7rem;font-weight:600}.about-picture-label span{font-size:.75rem;color:#c4d1dc;margin-top:3px}.about-copy h2{font-size:clamp(2.1rem,3vw,3.1rem)}.about-copy>p:not(.eyebrow){color:var(--muted);font-size:.9375rem;margin-top:25px;line-height:1.85}.service-row{display:flex;align-items:flex-start;gap:23px;border-bottom:1px solid var(--line);padding:22px 0}.service-row>span{font-size:.75rem;color:var(--red);line-height:1.6}.service-row h3{font-size:1.2rem;margin-bottom:7px}.service-row p{font-size:.8rem;color:var(--muted)}.brochure-link{margin-top:27px;display:flex;justify-content:space-between}.brochure-link small{font-size:.65rem;color:var(--muted);margin-left:8px}.contact{background:var(--pale);border-top:1px solid #e5e9ec}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:95px;align-items:start}.contact-copy h2{font-size:clamp(2.1rem,3.6vw,3.35rem)}.contact-copy>p:not(.eyebrow){font-size:.9375rem;line-height:1.85;color:var(--muted);margin-top:25px;max-width:405px}.pricing-note{margin-block:30px;border-left:3px solid var(--red);padding:2px 0 2px 20px;max-width:400px}.pricing-note h3{font-size:1.15rem;line-height:1.2;margin-bottom:8px}.pricing-note p{color:var(--muted);font-size:.8rem;line-height:1.7}.contact-email{font-family:var(--heading);font-size:1.8rem;font-weight:600;display:flex;align-items:center;gap:25px}.contact-email:hover{color:var(--red)}.contact-phone{display:block;font-size:1rem;margin-top:8px}.contact-copy p.address{font-size:.8125rem;margin-top:28px}.address>span{color:var(--navy);font-weight:700}.quote-form{background:#fff;border:1px solid var(--line);padding:33px}.form-top{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:21px;margin-bottom:25px}.form-top h3{font-size:1.6rem}.form-top>span{font-size:.625rem;letter-spacing:.1em;font-weight:700;color:var(--muted)}.quote-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:19px;min-width:0}.quote-form label>span{font-size:.75rem;font-weight:700}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.quote-form input,.quote-form select,.quote-form textarea{border:1px solid #cbd3da;border-radius:0;background:#fff;min-height:47px;width:100%;padding:11px 12px;color:var(--ink);font-size:.875rem;outline-offset:1px}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#7f8c98;opacity:1}.quote-form textarea{resize:vertical;line-height:1.65}.form-note{font-size:.75rem;color:var(--muted);line-height:1.7;margin:3px 0 21px}.send-button{width:100%;justify-content:space-between}.copy-button{display:block;margin:17px auto 0;border:0;background:transparent;font-size:.75rem;text-decoration:underline;text-underline-offset:4px;color:var(--muted)}.copy-button:hover{color:var(--red)}.form-status{font-size:.75rem;color:var(--navy);margin-top:12px;line-height:1.6}.form-status:empty{display:none}footer{background:#0b2135;color:#fff;padding-top:55px}.footer-top{display:grid;grid-template-columns:150px 1.1fr 1.1fr 1fr;gap:40px;align-items:start;padding-bottom:45px}.footer-brand{font-family:var(--heading);font-weight:800;font-size:2.5rem;line-height:1}.footer-brand span{font-family:var(--font);font-size:.75rem;font-weight:500;display:block;letter-spacing:.2em;margin-top:8px;color:#a9bece}.footer-top p{font-size:.8125rem;line-height:1.8;color:#9fb3c3}.footer-top>div{display:flex;flex-direction:column;gap:7px}.footer-top a:not(.footer-brand){font-size:.8125rem}.footer-top a:hover{color:#ffa8ad}.footer-bottom{border-top:1px solid #304457;padding-block:23px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:.6875rem;color:#9fb3c3}.footer-bottom button{background:transparent;border:0;padding:0;color:#9fb3c3;font-size:inherit}.footer-bottom button:hover{color:white}dialog{border:0;padding:0;color:var(--ink);width:calc(100% - 40px);max-height:90vh;overflow-y:auto}dialog::backdrop{background:#071b2ccd;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:16px;top:14px;z-index:2;width:40px;height:40px;border:1px solid #d3dce3;background:#fff;font-size:1.6rem;line-height:1;display:grid;place-items:center}.dialog-close:hover{color:var(--red)}.product-dialog{max-width:900px}.detail-layout{display:grid;grid-template-columns:1fr 1fr}.detail-visual{background:#eef1f3;padding:28px;display:flex;align-items:center;justify-content:center;min-height:400px}.detail-visual img{width:100%;object-fit:contain}.detail-copy{padding:60px 35px 38px}.detail-copy h2{font-size:2.2rem;margin-bottom:19px}.detail-copy>p{font-size:.875rem;color:var(--muted);line-height:1.8}.detail-copy dl{font-size:.8125rem;margin:23px 0}.detail-copy dl>div{display:flex;gap:20px;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.detail-copy dt{color:var(--muted)}.detail-copy dd{margin:0;font-weight:700;text-align:right}.detail-copy .button{width:100%;margin-top:23px}.detail-copy .source-link{display:inline-block;font-size:.75rem;text-decoration:underline;text-underline-offset:3px;margin-top:17px}.detail-copy .eyebrow{font-size:.6875rem;color:var(--red);margin-bottom:10px}.legal-dialog{max-width:640px;padding:55px 40px 40px}.legal-dialog h2{font-size:2rem;margin-bottom:25px}.legal-dialog p{font-size:.9rem;margin-bottom:22px}.legal-dialog .legal-source{font-size:.75rem;color:var(--muted)}html[lang=ko] h1{font-size:clamp(2.6rem,4.5vw,4.4rem);line-height:1.2;letter-spacing:-.035em}html[lang=ko] h2{line-height:1.25;word-break:keep-all}html[lang=ko] h3{line-height:1.35}html[lang=ko] p{word-break:keep-all}
@media(min-width:1600px){.hero-image>img{object-position:68% 60%}.hero-inner,.hero{min-height:690px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.brand>span{display:none}.nav-inner nav{gap:25px}.hero-copy{max-width:70%}.hero-buttons{gap:22px}.hero-buttons .text-link{font-size:.8rem}.technical-grid,.about,.contact-grid{gap:50px}.manufacturer{display:none}.product-visual{height:195px}.product-content{padding:20px}.product-content h3{font-size:1.4rem}.about-picture{height:550px}.footer-top{gap:25px;grid-template-columns:120px 1fr 1fr 1fr}}
@media(max-width:850px){.wrap{width:calc(100% - 44px)}.nav-inner{height:80px;gap:20px}.nav-inner nav{gap:18px}.nav-inner nav a{font-size:.8rem}.nav-actions{gap:15px}.nav-quote{display:none}.hero-copy{max-width:85%;width:620px}.hero-inner,.hero{min-height:590px}.hero-image::after{background:linear-gradient(90deg,rgba(11,36,60,.94),rgba(11,36,60,.7) 65%,rgba(11,36,60,.32))}.hero-description{max-width:440px}.value-inner>div{padding:22px 16px;gap:12px;font-size:.75rem}.section{padding-block:70px}.section-top{align-items:start;gap:30px}.section-intro{max-width:300px;font-size:.875rem}.filters{gap:22px}.filter{font-size:.8rem}.product-grid{gap:16px}.product-visual{height:160px}.product-content{padding:18px}.product-content h3{font-size:1.25rem}.product-content p{font-size:.8125rem;min-height:60px}.card-bottom{align-items:start;flex-direction:column;gap:11px}.catalog-note{align-items:start}.catalog-note>span{max-width:65%}.technical-grid{gap:40px;grid-template-columns:.9fr 1.1fr}.resource{gap:15px}.resource h3{font-size:1.25rem}.resource p{font-size:.75rem}.about{gap:35px}.about-picture{height:570px}.about-copy h2{font-size:2.2rem}.about-copy>p:not(.eyebrow){font-size:.875rem}.contact-grid{gap:35px;grid-template-columns:.9fr 1.1fr}.quote-form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}.contact-copy h2{font-size:2.25rem}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-bottom{flex-wrap:wrap;font-size:.6875rem}.footer-bottom>span:nth-child(2){order:3;width:100%}}
@media(max-width:600px){html{scroll-padding-top:88px}.wrap{width:calc(100% - 40px)}.utility-inner{min-height:29px}.utility-inner>span{font-size:.625rem}.utility a{display:none}.nav-inner{height:74px}.brand img{width:88px;height:50px}.nav-actions{gap:22px}.menu-toggle{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:32px;height:36px;background:transparent;border:0;padding:0}.menu-toggle>span{width:24px;height:2px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav-inner nav{display:none;position:absolute;left:0;right:0;top:74px;background:white;padding:20px;border-bottom:1px solid var(--line);box-shadow:0 14px 24px #0001;flex-direction:column;align-items:stretch;gap:0}.nav-inner nav.open{display:flex}.nav-inner nav a{font-size:1rem;padding:11px 0}.mobile-contact{display:block!important;color:var(--red)}.hero-inner,.hero{min-height:610px}.hero-inner{padding-block:47px}.hero-copy{max-width:100%}.hero .eyebrow{font-size:.625rem;letter-spacing:.12em;margin-bottom:22px}.hero h1{font-size:3.4rem;line-height:1.02;max-width:380px}.hero-description{font-size:.875rem;line-height:1.8;max-width:330px;margin-top:23px}.hero-buttons{align-items:start;flex-direction:column;gap:24px;margin-top:28px}.hero-buttons .button{font-size:.8125rem;padding:15px 20px}.hero-buttons .text-link{font-size:.8125rem}.hero-bottom{margin-top:40px}.hero-year{font-size:1.8rem}.hero-bottom p{font-size:.75rem}.hero-image>img{object-position:64%}.hero-image::after{background:linear-gradient(90deg,rgba(11,36,60,.95),rgba(11,36,60,.64))}.photo-credit{font-size:.625rem;bottom:12px;right:20px;max-width:190px}.value-inner{grid-template-columns:1fr}.value-inner>div,.value-inner>div:first-child{padding:15px 0;font-size:.8rem;border-right:0;border-bottom:1px solid var(--line);gap:20px}.value-inner>div:last-child{border-bottom:0}.small-number{font-size:.8rem}.section{padding-block:58px}.section-top{flex-direction:column;gap:21px;margin-bottom:25px}.eyebrow{font-size:.65rem;letter-spacing:.14em;margin-bottom:17px}h2{font-size:2.5rem}.section-intro{max-width:100%;font-size:.875rem}.catalog-bar{margin-bottom:24px;overflow-x:auto;scrollbar-width:thin}.filters{gap:24px;min-width:max-content}.filter{font-size:.8rem;padding:15px 0}.product-grid{grid-template-columns:1fr;gap:23px}.product-visual{height:220px}.product-content{padding:24px}.product-content h3{font-size:1.65rem}.product-content p{min-height:0;font-size:.875rem}.card-bottom{flex-direction:row;align-items:center}.core-tag,.detail-button{font-size:.8rem}.catalog-note{flex-direction:column;gap:16px;font-size:.75rem}.catalog-note>span{max-width:100%}.technical-grid{grid-template-columns:1fr;gap:34px}.technical-copy>p:not(.eyebrow){max-width:100%;font-size:.875rem}.resource{padding:25px 0;gap:18px}.resource h3{font-size:1.4rem}.resource p{font-size:.8rem}.resource-tag{font-size:.625rem}.technical-copy p.technical-small{font-size:.75rem}.about{grid-template-columns:1fr;gap:36px}.about-picture{height:340px}.about-picture-label{padding:19px 24px;width:90%}.about-picture-label strong{font-size:1.5rem}.about-copy h2{font-size:2.45rem}.service-row{padding:20px 0}.service-row h3{font-size:1.2rem}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-copy h2{font-size:2.45rem}.contact-copy>p:not(.eyebrow){max-width:100%;font-size:.875rem}.pricing-note{max-width:100%;margin:25px 0}.contact-email{font-size:1.75rem}.quote-form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.quote-form label>span{font-size:.8125rem}.quote-form input,.quote-form select,.quote-form textarea{font-size:1rem}.form-top{gap:10px}.form-top h3{font-size:1.5rem}.form-top>span{font-size:.6rem}.form-note{font-size:.75rem}.copy-button{font-size:.75rem}.footer-top{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:34px}.footer-top p{font-size:.75rem}.footer-top a:not(.footer-brand){font-size:.75rem}.footer-bottom{gap:15px;font-size:.625rem;padding-block:20px}.footer-bottom>span:nth-child(2){font-size:.625rem}.detail-layout{grid-template-columns:1fr}.detail-visual{min-height:230px;max-height:260px;padding:20px}.detail-visual img{max-height:225px}.detail-copy{padding:30px 25px}.detail-copy h2{font-size:2rem}.legal-dialog{padding:65px 25px 30px}.legal-dialog h2{font-size:1.7rem}.legal-dialog p{font-size:.8125rem}html[lang=ko] h1{font-size:3rem}html[lang=ko] h2{font-size:2.15rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Readable type across languages and compact viewports. */
.section-intro,.product-content p,.technical-copy>p:not(.eyebrow),.about-copy>p:not(.eyebrow),.contact-copy>p:not(.eyebrow),.hero-description{font-size:1rem}
.nav-inner nav a,.filter,.resource p,.service-row p,.pricing-note p,.quote-form label>span,.core-tag,.detail-button,.catalog-note,.form-note,.copy-button,.form-status,.contact-copy p.address{font-size:.875rem}
.resource-tag,.product-type,.mini-label,.eyebrow,.hero .eyebrow,.form-top>span,.manufacturer span,.photo-credit,.utility-inner>span,.hero-year span,.footer-bottom,.footer-bottom>span:nth-child(2),.brochure-link small,.brand>span{font-size:.75rem}
.footer-top p,.footer-top a:not(.footer-brand),.about-picture-label span,.technical-copy p.technical-small{font-size:.875rem}
.brand>span{max-width:98px}
@media(max-width:600px){.hero h1{font-size:clamp(2.5rem,10.5vw,3.4rem)}.hero-inner,.hero{min-height:640px}.hero-copy{padding-bottom:10px}.utility-inner>span{font-size:.75rem}.hero .eyebrow{max-width:330px;line-height:1.8}.form-top{flex-wrap:wrap}.photo-credit{max-width:270px}.footer-top{column-gap:16px}.value-inner>div{font-size:.875rem}}

/* Project photography and sandwich-panel supply references. */
.hero-image.hero-projects{display:grid;grid-template-columns:42% 58%;overflow:hidden}
.hero-project{position:relative;min-width:0;height:100%;margin:0;overflow:hidden}
.hero-project>img{width:100%;height:100%;object-fit:cover}
.hero-project-catl>img{object-position:54% center}
.hero-project-sk>img{object-position:50% center}
.hero-image.hero-projects::after{background:linear-gradient(90deg,rgba(11,36,60,.9) 0%,rgba(11,36,60,.74) 33%,rgba(11,36,60,.34) 63%,rgba(11,36,60,.17) 100%),linear-gradient(0deg,rgba(5,20,33,.74),transparent 30%);pointer-events:none}
.hero-project-sk{border-left:2px solid #ffffff60}
.hero-project figcaption{position:absolute;bottom:27px;left:30px;right:25px;z-index:2;display:flex;gap:14px;align-items:baseline;color:#fff}
.hero-project-catl figcaption{left:max(48px,calc((100vw - 1248px)/2))}
.hero-project figcaption strong{font-family:var(--heading);font-size:1.8rem;line-height:1.2;letter-spacing:.015em;font-weight:600}
.hero-project figcaption span{font-size:.8125rem;color:#edf3f7}
.hero-inner{padding-bottom:115px;min-height:680px}
.hero-bottom{margin-top:35px}
.hero-copy{max-width:64%}
.references-section{background:#f3f5f6;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.references-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.reference-card{padding:30px 32px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy)}
.reference-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;font-size:.75rem;letter-spacing:.11em;font-weight:600;color:var(--muted)}
.reference-number{color:var(--red);font-size:.875rem}
.reference-card h3{font-family:var(--heading);font-weight:600;font-size:2.4rem;letter-spacing:-.015em}
.reference-location{color:var(--muted);font-size:.875rem;margin:7px 0 24px}
.reference-spec{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding:18px 0 7px;margin-top:12px}
.reference-spec>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.reference-spec>div>span{font-size:.875rem;color:var(--muted);line-height:1.5}
.reference-spec strong{font-size:.875rem;font-weight:700}
.reference-spec>p{font-family:var(--heading);font-size:2rem;font-weight:500;line-height:1.3;white-space:nowrap}
.reference-spec>p>span{font-family:var(--font);font-size:.8125rem;font-weight:500;color:var(--muted);margin-left:3px}
.references-note{display:flex;justify-content:space-between;gap:30px;align-items:center;font-size:.8125rem;color:var(--muted);margin-top:25px}
.references-note .text-link{color:var(--navy);white-space:nowrap}
.gmail-button{width:100%;min-height:49px;display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid var(--line);background:white;margin-top:12px;padding:12px 16px;font-size:.875rem;font-weight:700;color:var(--navy)}
.gmail-button:hover{border-color:var(--navy);background:var(--pale)}
.contact-email{font-size:clamp(1.1rem,2.1vw,1.65rem);overflow-wrap:anywhere;line-height:1.4;gap:12px}
.contact-email>span{flex-shrink:0}
.footer-top>a:last-child{overflow-wrap:anywhere;min-width:0}
@media(max-width:1150px){.nav-inner nav{gap:20px}.nav-actions{gap:16px}.nav-inner{gap:22px}.hero-project-catl figcaption{left:32px}}
@media(max-width:900px) and (min-width:601px){.nav-inner nav{gap:14px}.nav-inner nav a{font-size:.8125rem}.nav-quote{display:none}.hero-copy{max-width:78%}.reference-card{padding:25px}.reference-spec{gap:15px}.reference-spec>p{font-size:1.65rem}.references-note{align-items:start}.references-note>span{max-width:60%}.hero-project-catl figcaption{left:22px}}
@media(max-width:600px){
 .hero-image.hero-projects{grid-template-columns:40% 60%}
 .hero-copy{max-width:100%}
 .hero-inner{padding-top:45px;padding-bottom:119px;min-height:690px}
 .hero-image.hero-projects::after{background:linear-gradient(90deg,rgba(11,36,60,.89),rgba(11,36,60,.69)),linear-gradient(0deg,rgba(5,20,33,.7),transparent 30%)}
 .hero-project-catl>img{object-position:42% center}
 .hero-project-sk>img{object-position:57% center}
 .hero-project figcaption,.hero-project-catl figcaption{left:20px;right:12px;bottom:22px;flex-direction:column;gap:5px}
 .hero-project figcaption strong{font-size:1.6rem}
 .hero-project figcaption span{font-size:.75rem;line-height:1.5}
 .references-grid{grid-template-columns:1fr;gap:20px}
 .reference-card{padding:25px 23px}
 .reference-card h3{font-size:2.25rem}
 .reference-top{font-size:.75rem;margin-bottom:20px}
 .reference-spec{gap:15px}
 .reference-spec>p{font-size:1.7rem}
 .reference-spec>div>span,.reference-spec strong{font-size:.875rem}
 .references-note{flex-direction:column;align-items:start;gap:17px;font-size:.8125rem}
 .contact-email{font-size:clamp(1.05rem,5.2vw,1.4rem)}
}

.image-credits{border-top:1px solid var(--line);padding-top:22px}.image-credits h3{font-size:1rem;margin-bottom:12px}.image-credits a{text-decoration:underline;text-underline-offset:3px}.hero-project figcaption a:hover{text-decoration:underline;text-underline-offset:5px}

.references-grid-additional{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}
.reference-card-compact{padding:27px 28px}
.reference-card-compact h3{font-size:2.1rem}
.reference-supply{padding-top:18px;border-top:1px solid var(--line);font-size:.875rem;font-weight:600;color:var(--navy)}
@media(max-width:900px){.reference-card-compact{padding:25px 22px}.reference-card-compact h3{font-size:1.9rem}.reference-card-compact .reference-top{font-size:.75rem;letter-spacing:.04em}}
@media(max-width:600px){.references-grid-additional{grid-template-columns:1fr;margin-top:20px}.reference-card-compact h3{font-size:2.25rem}}

/* Company navigation follows the supplied red-rule dropdown reference. */
.company-menu{position:relative}
.company-menu summary{display:flex;align-items:center;gap:8px;list-style:none;font-size:.875rem;font-weight:600;line-height:1.4;padding:18px 0;cursor:pointer}
.company-menu summary::-webkit-details-marker{display:none}
.company-menu summary::marker{content:''}
.company-menu summary:focus-visible{outline:3px solid #348ad0;outline-offset:4px}
.nav-chevron{font-size:1.1rem;line-height:1;transition:transform .15s}
.company-menu[open] summary{color:var(--red)}
.company-menu[open] .nav-chevron{transform:rotate(180deg)}
.company-dropdown{position:absolute;top:100%;left:-22px;min-width:250px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--red);box-shadow:0 12px 28px #142c4024;padding:0;z-index:30}
.nav-inner nav .company-dropdown a{display:block;padding:20px 24px;border-bottom:1px solid var(--line);font-size:1rem;font-weight:500;color:var(--ink);white-space:nowrap}
.nav-inner nav .company-dropdown a:last-child{border-bottom:0}
.nav-inner nav .company-dropdown a:hover,.nav-inner nav .company-dropdown a:focus-visible{background:var(--pale);color:var(--red)}
.office-section{background:#f3f5f6;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.office-country-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:28px}
.country-offices,.country-enquiries{background:white;border:1px solid var(--line);padding:30px}
.country-heading{display:flex;align-items:center;gap:18px;padding-bottom:25px;border-bottom:1px solid var(--line)}
.country-code{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;background:var(--navy);color:white;font-family:var(--heading);font-size:1.15rem;font-weight:600}
.country-heading h3{font-size:1.8rem;margin-bottom:7px}
.country-heading p{font-size:.875rem;line-height:1.5;color:var(--muted)}
.office-list{margin:0}
.office-list>div{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}
.office-list>div:last-child{padding-bottom:0;border-bottom:0}
.office-list dt{display:flex;flex-direction:column;gap:4px}
.office-list dt strong{font-size:1rem;font-weight:700}
.office-list dt span{font-size:.875rem;color:var(--muted)}
.office-list dd{margin:0;font-size:.9375rem;line-height:1.6;text-align:right}
.country-enquiries{border-top:3px solid var(--red);display:flex;flex-direction:column}
.country-enquiries h4{font-family:var(--heading);font-size:1.55rem;font-weight:600;line-height:1.25;margin:26px 0 12px}
.country-enquiries>p{font-size:1rem;color:var(--muted);line-height:1.8}
.office-email{display:flex;justify-content:space-between;gap:14px;font-size:1rem;font-weight:700;overflow-wrap:anywhere;padding-block:22px;border-bottom:1px solid var(--line)}
.office-email:hover,.office-main-contact>a:hover,.person-card>a:hover{color:var(--red)}
.office-main-contact{display:flex;flex-direction:column;gap:7px;margin-block:22px}
.office-main-contact>span{font-size:.8125rem;color:var(--muted)}
.office-main-contact>strong{font-size:1rem;font-weight:700}
.office-main-contact>a{font-size:1rem}
.country-enquiries>.text-link{margin-top:auto;padding-top:8px}
.team-heading{display:flex;justify-content:space-between;align-items:baseline;gap:35px;margin:48px 0 25px}
.team-heading h3{font-size:2rem}
.team-heading p{font-size:.875rem;color:var(--muted)}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.person-card{background:white;padding:27px 24px;border:1px solid var(--line);border-top:3px solid var(--navy);min-width:0}
.person-primary{border-top-color:var(--red)}
.person-initials{font-family:var(--heading);font-size:.9375rem;color:var(--muted);letter-spacing:.08em;margin-bottom:24px}
.person-card h4{font-family:var(--heading);font-size:1.45rem;font-weight:600;line-height:1.25;margin:0 0 7px}
.person-role{font-size:.875rem;color:var(--muted);margin-bottom:23px}
.person-card>a{display:block;font-size:.875rem;line-height:1.7;margin-top:6px;overflow-wrap:anywhere}
.person-languages{border-top:1px solid var(--line);padding-top:17px;margin-top:22px;display:flex;flex-direction:column;gap:5px;font-size:.8125rem;line-height:1.65}
.person-languages>span{color:var(--muted)}
.person-languages>strong{font-size:.875rem;font-weight:500}
.reference-spec{display:block}
.reference-spec>div{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:25px}
.reference-spec strong{white-space:nowrap}
@media(max-width:1100px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-country-grid{grid-template-columns:1.15fr 1fr;gap:24px}.country-offices,.country-enquiries{padding:26px}.office-list>div{gap:17px}.office-list dd{font-size:.875rem}.office-email{font-size:.9375rem}}
@media(max-width:850px){.company-menu summary{font-size:.8125rem}.office-country-grid{grid-template-columns:1fr}.country-enquiries{display:block}.office-main-contact{margin-bottom:18px}.office-email{max-width:420px}.team-heading{align-items:start;gap:25px}.team-heading h3{font-size:1.8rem}.team-heading p{max-width:300px}.reference-spec>div{flex-direction:column;gap:5px}}
@media(max-width:600px){
 .company-menu{width:100%}
 .company-menu summary{width:100%;justify-content:space-between;font-size:1rem;padding:11px 0}
 .company-dropdown{position:static;min-width:0;width:100%;box-shadow:none;border-top-width:3px;margin:9px 0 13px}
 .nav-inner nav .company-dropdown a{font-size:.9375rem;padding:14px 18px}
 .country-offices,.country-enquiries{padding:24px 21px}
 .country-heading{gap:15px;padding-bottom:23px}
 .country-heading h3{font-size:1.7rem}
 .country-code{width:42px;height:42px}
 .office-list>div{align-items:start;padding-block:18px;gap:16px}
 .office-list dd{max-width:48%;font-size:.875rem}
 .office-list dt span{font-size:.8125rem}
 .office-email{font-size:.875rem}
 .team-heading{display:block;margin-top:38px}
 .team-heading p{margin-top:12px;max-width:none;line-height:1.7}
 .team-grid{grid-template-columns:1fr;gap:17px}
 .person-card{padding:24px}
 .person-initials{margin-bottom:15px}
 .person-card h4{font-size:1.6rem}
 .person-card>a{font-size:.9375rem}
 .person-role{margin-bottom:17px}
}

/* Final brochure: Spain office and item-only project references. */
.office-contact-label{margin-top:26px;font-size:.8125rem!important;font-weight:700;color:var(--ink)!important}
.country-enquiries .office-email{padding-top:9px;margin-bottom:22px}
.reference-phase{font-size:.6em;white-space:nowrap;color:var(--muted)}
.reference-card-compact .reference-spec>div{flex-direction:column;gap:6px}

/* Core panel and roofing ranges lead the wider materials catalogue. */
.primary-ranges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.range-card{border:1px solid var(--line);border-top:4px solid var(--red);background:var(--navy);color:white;display:flex;flex-direction:column;min-width:0;transition:transform .2s}
.range-card:hover{transform:translateY(-3px)}
.range-visual{height:245px;background:#edf0f2;overflow:hidden}
.range-visual img{height:100%;width:100%;object-fit:cover}
.range-card:first-child .range-visual img{object-fit:contain;padding:25px;mix-blend-mode:multiply}
.range-copy{padding:30px 32px;flex:1;display:flex;flex-direction:column}
.range-copy .eyebrow{color:#f1a7aa;margin-bottom:15px;letter-spacing:.12em}
.range-copy h3{font-size:2.2rem;line-height:1.15;margin-bottom:15px}
.range-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:#d4e0e8;margin-bottom:28px}
.range-copy>.text-link{margin-top:auto;justify-content:space-between;color:white}
.materials-jump{display:flex;justify-content:space-between;gap:25px;padding:24px 0;border-bottom:1px solid var(--line);font-size:.9375rem;font-weight:600}
.materials-jump:hover{color:var(--red)}
.product-subsection{padding-top:65px;scroll-margin-top:15px}
.subsection-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:27px}
.subsection-heading .eyebrow{font-size:.75rem;margin-bottom:14px}
.subsection-heading h3{font-size:2.35rem;line-height:1.2;letter-spacing:-.015em}
.subsection-heading>p{max-width:450px;color:var(--muted);font-size:1rem;line-height:1.8}
.roofing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.roofing-card{padding:27px;border:1px solid var(--line);border-top:3px solid var(--navy);display:flex;flex-direction:column;min-width:0}
.roofing-card>.mini-label{font-size:.75rem;font-weight:700;color:var(--muted);letter-spacing:.1em}
.roofing-card h4{font-family:var(--heading);font-size:2rem;line-height:1.15;margin:13px 0 17px;font-weight:600}
.roofing-card>p{font-size:1rem;line-height:1.75;color:var(--muted);margin-bottom:23px}
.roofing-actions{margin-top:auto;border-top:1px solid var(--line);padding-top:17px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:.875rem}
.roofing-actions a{text-decoration:underline;text-underline-offset:3px;color:var(--muted)}
.roofing-actions button,.material-body button{background:none;border:0;padding:0;font-size:.875rem;font-weight:700;text-align:left}
.roofing-actions button:hover,.roofing-actions a:hover{color:var(--red)}
.range-note{font-size:.875rem;color:var(--muted);line-height:1.8;margin-top:23px}
.materials-subsection{margin-top:15px}
.materials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.material-family{border:1px solid var(--line);background:#f5f7f8;min-width:0}
.material-family summary{list-style:none;cursor:pointer;display:flex;align-items:start;gap:18px;padding:25px}
.material-family summary::-webkit-details-marker{display:none}
.material-family summary::marker{content:''}
.material-family summary:focus-visible,.reference-more summary:focus-visible{outline:3px solid #348ad0;outline-offset:3px}
.material-index{color:var(--red);font-family:var(--heading);font-size:.875rem;line-height:1.7}
.material-heading{flex:1;min-width:0}
.material-heading strong{display:block;font-family:var(--heading);font-size:1.5rem;font-weight:600;line-height:1.3;margin-bottom:10px}
.material-heading>span{display:block;font-size:.9375rem;line-height:1.65;color:var(--muted)}
.material-toggle{font-size:1.35rem;line-height:1.1;transition:transform .15s}
.material-family[open]{background:white;border-top:3px solid var(--navy)}
.material-family[open] .material-toggle{transform:rotate(45deg)}
.material-body{margin:0 25px 25px 57px;border-top:1px solid var(--line);padding-top:18px}
.material-body ul,.reference-more ul{padding-left:19px;margin:0 0 22px}
.material-body li{font-size:1rem;line-height:1.75;margin-bottom:9px}
.material-body>p{font-size:.875rem;line-height:1.7;color:var(--muted);margin-bottom:20px}
.reference-more{margin-top:24px;border-top:1px solid var(--line)}
.reference-more summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding-top:18px;font-size:.875rem;font-weight:700}
.reference-more summary::-webkit-details-marker{display:none}
.reference-more summary::marker{content:''}
.reference-more summary>span{font-size:1.2rem;transition:transform .15s}
.reference-more[open] summary>span{transform:rotate(45deg)}
.reference-more ul{padding-top:19px;margin-bottom:0}
.reference-more li{font-size:.9375rem;line-height:1.75;color:var(--muted);margin-bottom:9px}
.quantity-input{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:8px}
.quantity-input select{padding-inline:8px}
@media(max-width:1100px){.range-copy{padding:27px}.range-copy h3{font-size:1.9rem}.roofing-card{padding:22px}.subsection-heading>p{max-width:380px}.material-family summary{padding:22px;gap:14px}.material-body{margin-left:50px;margin-right:22px}}
@media(max-width:850px){.primary-ranges{gap:20px}.range-visual{height:190px}.range-copy{padding:24px}.range-copy h3{font-size:1.85rem}.subsection-heading{align-items:start;gap:25px}.subsection-heading>p{max-width:320px}.subsection-heading h3{font-size:2rem}.roofing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.materials-grid{grid-template-columns:1fr}.material-heading strong{font-size:1.65rem}.product-subsection{padding-top:50px}}
@media(max-width:600px){.primary-ranges{grid-template-columns:1fr}.range-visual{height:210px}.range-copy h3{font-size:2rem}.range-copy>.text-link{font-size:.875rem}.materials-jump{font-size:.875rem;line-height:1.8;padding-block:22px}.subsection-heading{flex-direction:column;gap:18px}.subsection-heading>p{max-width:none}.roofing-grid{grid-template-columns:1fr;gap:16px}.roofing-card{padding:24px}.roofing-card h4{font-size:2rem}.roofing-actions{flex-direction:row;justify-content:space-between;align-items:start;gap:20px}.material-family summary{padding:22px 18px;gap:13px}.material-heading strong{font-size:1.45rem}.material-body{margin-left:43px;margin-right:18px}.quantity-input{grid-template-columns:minmax(0,1fr) 92px}}
.quantity-field{margin-bottom:19px;min-width:0}
.quote-form .quantity-field>label{font-size:.875rem;font-weight:700;margin-bottom:8px;display:block}
.reference-spec>div{flex-wrap:wrap;column-gap:18px;row-gap:7px}
.about-picture{height:100%;min-height:650px}
.about-copy>p:not(.eyebrow){margin-top:18px}
.person-alias{font-size:.8em;font-weight:500;white-space:nowrap}
@media(max-width:850px) and (min-width:601px){.about{grid-template-columns:1fr}.about-picture{height:380px;min-height:0}}
@media(max-width:600px){.about-picture{height:340px;min-height:0}.reference-card h3{font-size:clamp(1.9rem,8vw,2.4rem)}}

/* Representative product photography remains visible when a family is collapsed. */
.materials-grid .material-family summary{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:stretch;gap:0;padding:0;min-height:210px}
.material-photo{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;border-right:1px solid var(--line);min-width:0;min-height:210px}
.material-photo img{width:100%;height:210px;object-fit:contain;display:block}
.material-summary-copy{display:grid;grid-template-columns:22px minmax(0,1fr) 15px;align-content:center;align-items:start;gap:12px;padding:24px 20px}
.material-summary-copy .material-heading strong{font-size:1.35rem;line-height:1.35}
.material-summary-copy .material-heading>span{font-size:.9375rem;line-height:1.7}
.materials-grid .material-body{margin:0 24px 24px;padding-top:22px}
@media(max-width:1150px) and (min-width:851px){.materials-grid .material-family summary{grid-template-columns:140px minmax(0,1fr);min-height:225px}.material-photo{min-height:225px}.material-photo img{height:225px}.material-summary-copy{grid-template-columns:minmax(0,1fr) 15px;gap:8px;padding:21px 18px}.material-summary-copy .material-index{grid-column:1}.material-summary-copy .material-heading{grid-column:1;grid-row:2}.material-summary-copy .material-toggle{grid-column:2;grid-row:1}.material-summary-copy .material-heading strong{font-size:1.25rem}}
@media(max-width:850px){.materials-grid .material-family summary{grid-template-columns:190px minmax(0,1fr);min-height:200px}.material-photo{min-height:200px}.material-photo img{height:200px}.material-summary-copy{padding:25px}.material-summary-copy .material-heading strong{font-size:1.5rem}}
@media(max-width:600px){.materials-grid .material-family summary{grid-template-columns:1fr;min-height:0}.material-photo{height:180px;min-height:0;border-right:0;border-bottom:1px solid var(--line)}.material-photo img{height:180px;max-width:100%;object-position:center}.material-summary-copy{grid-template-columns:22px minmax(0,1fr) 15px;gap:12px;padding:23px 20px}.material-summary-copy .material-heading strong{font-size:1.4rem}.materials-grid .material-body{margin-inline:20px}}

/* Panel fixing is visible without opening product details. */
.panel-card-spec{margin:18px 0 22px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:10px}
.panel-card-spec>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;font-size:.875rem;line-height:1.6}
.panel-card-spec dt{color:var(--muted)}
.panel-card-spec dd{margin:0;font-weight:600}
.product-content .card-bottom{justify-content:flex-end}
.product-content .mini-label{display:block;line-height:1.6;min-height:2.6em}

/* Each roofing model carries its original catalogue shape and profile code. */
.roofing-grid .roofing-card{padding:0;overflow:hidden}
.roofing-visual{height:215px;display:flex;align-items:center;justify-content:center;padding:18px;background:#fff;border-bottom:1px solid var(--line)}
.roofing-visual img{width:100%;height:100%;object-fit:contain}
.roofing-copy{padding:25px;display:flex;flex-direction:column;flex:1;min-width:0}
.roofing-copy .mini-label{font-size:.75rem;color:var(--muted);letter-spacing:.1em}
.roofing-copy h4{font-size:1.9rem;margin:12px 0 8px}
.roofing-copy h4 span{display:block;font-size:1.4rem;font-weight:500;letter-spacing:.02em;line-height:1.5;margin-top:8px}
.roofing-copy .profile-label{font-size:.8125rem;color:var(--muted);margin-bottom:20px;line-height:1.6}
.roofing-description{font-size:1rem;line-height:1.75;color:var(--muted);margin-bottom:24px}
.roofing-copy .roofing-actions{align-items:flex-start;flex-direction:column}
.roofing-catalogue-note{margin-top:25px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}
.roofing-catalogue-note p{font-size:.875rem;line-height:1.8;color:var(--muted);max-width:760px}
.roofing-catalogue-note .text-link{font-size:.875rem;max-width:280px}
@media(max-width:850px){.roofing-catalogue-note{grid-template-columns:1fr;gap:18px}.roofing-copy{padding:22px}}
@media(max-width:600px){.roofing-visual{height:235px}.roofing-copy{padding:24px}.panel-card-spec>div{grid-template-columns:85px minmax(0,1fr)}}

/* Project imagery sits above the existing quantity-free supply scope. */
.references-grid .reference-card{padding:0;overflow:hidden;min-width:0}
.reference-photo{position:relative;margin:0;aspect-ratio:16/7;overflow:hidden;background:#e8edf0;border-bottom:1px solid var(--line)}
.reference-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.reference-photo figcaption{position:absolute;right:12px;bottom:12px;padding:5px 10px;color:#fff;background:rgba(13,38,60,.9);font-size:.75rem;line-height:1.6;letter-spacing:.02em}
.reference-copy{padding:28px 30px 32px}
@media(max-width:900px){.reference-copy{padding:25px}}
@media(max-width:600px){.reference-photo{aspect-ratio:2/1}.reference-copy{padding:25px 23px 28px}.reference-top{font-size:.75rem}}

/* Separate pages share the original KILC palette and navigation. */
.nav-inner nav .nav-group{display:flex;align-items:center;gap:2px;position:relative}
.nav-group .company-menu{position:static}
.nav-group .company-menu summary{justify-content:center;padding:12px 0;min-width:28px;min-height:44px}
.nav-group .company-dropdown{left:-22px;top:100%}
.nav-group.is-current>a,.nav-inner nav>a[aria-current=page],.company-dropdown a[aria-current=page]{color:var(--red)}
.nav-inner nav>a[aria-current=page],.nav-group.is-current>a{text-decoration:underline;text-underline-offset:10px;text-decoration-thickness:2px}
.page-heading{background:var(--navy);color:white;padding:30px 0 44px}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;font-size:.8125rem;line-height:1.7;margin-bottom:25px;color:#bbcbd8}
.breadcrumbs a:hover{text-decoration:underline;text-underline-offset:4px}
.breadcrumbs [aria-current=page]{color:inherit}
.page-heading h1{font-size:clamp(2.3rem,4.4vw,3.6rem);line-height:1.2;letter-spacing:-.025em}
.page-heading>.wrap>p{font-size:1rem;line-height:1.8;max-width:830px;color:#d4e0e8;margin-top:20px}
.section-nav{border-bottom:1px solid var(--line);background:#fff}
.section-nav nav{display:flex;gap:32px;overflow-x:auto;scrollbar-width:thin}
.section-nav a{display:block;white-space:nowrap;font-size:.875rem;padding:20px 0;border-bottom:3px solid transparent;font-weight:600}
.section-nav a:hover,.section-nav a[aria-current=page]{color:var(--red);border-bottom-color:var(--red)}
body:not([data-page=home]) .section{padding-block:65px}
body:not([data-page=home]) .category-section{padding-top:45px}
body[data-page=home] .hero,body[data-page=home] .hero-inner{min-height:580px}
body[data-page=home] .hero-inner{padding-top:52px;padding-bottom:105px}
body[data-page=home] .hero h1{font-size:clamp(2.7rem,5vw,4.6rem)}
body[data-page=home] .hero-description{max-width:530px}
.home-products{padding-block:65px 0}
.home-products .range-visual{height:200px}
.home-products .range-copy{padding:25px 28px}
.home-products .range-copy h3{font-size:2rem}
.home-products .range-copy>p:not(.eyebrow){margin-bottom:20px}
.home-products .section-top h2{font-size:2.4rem}
.home-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:45px 60px}
.home-directory>a{padding:8px 30px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.home-directory>a:first-child{padding-left:0}.home-directory>a:last-child{border-right:0;padding-right:0}
.home-directory .eyebrow{margin-bottom:16px}
.home-directory h2{font-size:1.65rem;line-height:1.3;margin-bottom:15px}
.home-directory p{font-size:.9375rem;color:var(--muted);line-height:1.8;margin-bottom:20px}
.directory-link{font-size:.875rem;font-weight:700;margin-top:auto}
.home-directory>a:hover h2,.home-directory>a:hover .directory-link{color:var(--red)}
.product-help{display:grid;grid-template-columns:1.2fr 1fr;gap:20px 50px;border-top:1px solid var(--line);padding-top:50px;margin-top:50px;align-items:center}
.product-help h2{font-size:2rem;line-height:1.3}.product-help p:not(.eyebrow){font-size:1rem;color:var(--muted);line-height:1.8}
.product-help .text-link{grid-column:2;font-weight:700}
.products-overview .materials-jump{padding-block:30px}
.product-content h3 a:hover{color:var(--red)}
.detail-button{display:inline-flex;align-items:center;gap:20px}
.material-family-link{display:grid;grid-template-columns:170px minmax(0,1fr);min-height:210px}
.material-family-link:hover .material-heading strong{color:var(--red)}
.material-card-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;padding:18px 22px;border-top:1px solid var(--line);font-size:.875rem;font-weight:600;background:#fff}
.material-card-footer a:hover{color:var(--red)}
.detail-breadcrumbs{padding-top:28px}.detail-breadcrumbs .breadcrumbs{color:var(--muted);margin-bottom:0}
.product-detail-page .detail-back{margin-bottom:28px;color:var(--muted);font-size:.875rem}
.product-detail-page .detail-layout{border:1px solid var(--line);align-items:start}
.product-detail-page .detail-visual{min-height:440px;height:100%;padding:35px;max-height:none}
.product-detail-page .detail-visual img{width:100%;height:auto;max-height:500px;object-fit:contain}
.product-detail-page .detail-copy{padding:40px 36px}
.product-detail-page .detail-copy h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.22;margin-bottom:22px;letter-spacing:-.02em}
.product-detail-page .detail-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:22px}
.detail-profile{display:block;font-size:.72em;margin-top:10px;letter-spacing:.01em}
.detail-actions{display:flex;flex-direction:column;gap:16px;align-items:flex-start;margin-top:27px}
.detail-actions .source-link{margin-top:0}
.detail-items-title{font-size:1.2rem;margin-top:30px;margin-bottom:18px}
.detail-items{padding-left:19px;line-height:1.8;font-size:1rem}
.detail-items li{margin-bottom:9px}
.product-not-found{padding-block:30px 80px;max-width:720px}.product-not-found h1{font-size:2.5rem;margin-bottom:25px}.product-not-found p{margin-bottom:30px;font-size:1rem;color:var(--muted)}
@media(min-width:851px) and (max-width:1150px){.material-family-link{grid-template-columns:140px minmax(0,1fr)}}
@media(max-width:1000px){.nav-inner nav{gap:18px}.nav-actions{gap:14px}.nav-quote{display:none}.product-detail-page .detail-copy{padding:32px 27px}.home-directory>a{padding-inline:22px}}
@media(max-width:850px){.home-directory h2{font-size:1.45rem}.home-directory p{font-size:.875rem}.material-family-link{grid-template-columns:190px minmax(0,1fr)}.product-detail-page .detail-layout{grid-template-columns:1fr}.product-detail-page .detail-visual{min-height:300px;height:340px}.product-detail-page .detail-visual img{max-height:280px}.product-help{gap:20px 30px}.section-nav nav{gap:25px}}
@media(max-width:600px){
 .nav-inner nav .nav-group{display:flex;align-items:center;flex-wrap:wrap;width:100%;gap:0}
 .nav-group>a{flex:1}.nav-group .company-menu{display:contents}
 .nav-group .company-menu summary{display:flex;align-items:center;justify-content:center;min-width:44px;width:44px;padding:8px}
 .nav-group .company-dropdown{width:100%;flex-basis:100%;margin:0 0 12px;position:static}
 .page-heading{padding:22px 0 32px}.page-heading h1{font-size:2.35rem}
 .page-heading>.wrap>p{font-size:.9375rem;margin-top:16px}.breadcrumbs{font-size:.75rem;gap:8px;margin-bottom:20px}
 .section-nav a{font-size:.875rem;padding-block:17px}.section-nav nav{gap:24px}
 body:not([data-page=home]) .section{padding-block:40px}
 body[data-page=home] .hero,body[data-page=home] .hero-inner{min-height:605px}
 body[data-page=home] .hero h1{font-size:clamp(2.5rem,10.5vw,3.3rem)}
 body[data-page=home] .hero-copy{max-width:100%}.home-products{padding-top:42px}
 .home-products .section-top{gap:18px}.home-products .section-top h2{font-size:2rem}
 .home-products .range-visual{height:185px}.home-products .range-copy{padding:23px}.home-products .range-copy h3{font-size:1.8rem}
 .home-directory{grid-template-columns:1fr;padding-block:25px 35px}
 .home-directory>a,.home-directory>a:first-child,.home-directory>a:last-child{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.home-directory>a:last-child{border-bottom:0}
 .home-directory h2{font-size:1.65rem}.home-directory .eyebrow{margin-bottom:12px}.home-directory p{margin-bottom:15px;font-size:.9375rem}
 .product-help{grid-template-columns:1fr;padding-top:30px;margin-top:30px}.product-help h2{font-size:1.85rem}.product-help .text-link{grid-column:1}
 .material-family-link{grid-template-columns:1fr;min-height:0}.material-card-footer{padding-inline:20px}
 .product-detail-page .detail-visual{height:270px;min-height:0;padding:22px}.product-detail-page .detail-visual img{max-height:225px}
 .product-detail-page .detail-copy{padding:28px 23px}.product-detail-page .detail-copy h1{font-size:2rem}
 .product-detail-page .detail-copy>p:not(.eyebrow),.detail-items{font-size:.9375rem}
 .product-detail-page .detail-back{margin-bottom:23px}.detail-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.range-card,.button{transition:none}}
.partners-section{border-bottom:1px solid var(--line);background:#fff;padding:32px 0}
.partners-inner{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:center;gap:45px}
.partners-heading .eyebrow{margin-bottom:10px}.partners-heading h2{font-size:1.65rem;line-height:1.25}
.partner-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;align-items:center}
.partner-logo{display:flex;justify-content:center;align-items:center;height:88px;min-width:0}
.partner-logo img{width:100%;height:100%;max-width:210px;object-fit:contain}
.partner-logo:first-child img{max-width:165px}
.partner-logo:nth-child(2) img{max-height:43px}
.partner-logo:nth-child(3) img{max-height:52px}
body[data-page=company] .partners-section{padding-block:45px;background:#f7f8f9;border-top:1px solid var(--line)}
@media(max-width:850px){.partners-inner{grid-template-columns:150px minmax(0,1fr);gap:25px}.partner-logos{gap:25px}.partners-heading h2{font-size:1.5rem}.partner-logo{height:72px}}
@media(max-width:600px){.partners-section{padding:25px 0}.partners-inner{grid-template-columns:1fr;gap:20px}.partners-heading{display:flex;align-items:center;gap:20px}.partners-heading .eyebrow{margin:0}.partners-heading h2{font-size:1.3rem}.partner-logos{gap:20px}.partner-logo{height:60px}.partner-logo:nth-child(2) img{max-height:24px}.partner-logo:nth-child(3) img{max-height:29px}}
/* Use the compact menu before navigation labels become crowded. */
@media(max-width:1000px){
 .header .nav-inner{height:80px}.nav-actions{gap:22px}
 .menu-toggle{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:38px;height:40px;background:transparent;border:0;padding:0}
 .menu-toggle>span{width:24px;height:2px;background:var(--navy)}
 .menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}
 .menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .nav-inner nav{display:none;position:absolute;left:0;right:0;top:80px;background:white;padding:18px 28px;border-bottom:1px solid var(--line);box-shadow:0 14px 24px #0001;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 115px);overflow-y:auto}
 .nav-inner nav.open{display:flex}.nav-inner nav a{font-size:1rem;padding:13px 0}
 .nav-inner nav .nav-group{display:block;position:relative;width:100%}
 .nav-group>a{display:block;width:calc(100% - 44px)}
 .nav-group .company-menu{display:block;position:static;width:100%}
 .nav-group .company-menu summary{position:absolute;right:0;top:0;width:44px;min-height:50px;display:flex;justify-content:center;align-items:center;padding:8px}
 .nav-group .company-dropdown{position:static;width:100%;min-width:0;box-shadow:none;border-top:3px solid var(--red);margin:0 0 12px}
 .nav-inner nav .company-dropdown a{white-space:normal;padding:14px 18px;font-size:.9375rem}
 .mobile-contact{display:block!important;color:var(--red)}
 .nav-quote{display:none}.nav-inner nav>a[aria-current=page],.nav-group.is-current>a{text-decoration:none}
}
