:root{--paper:#f6f4ef;--ink:#242a29;--muted:#626963;--line:#d8dad1;--accent:#8b5038;--dark:#202b28;--pad:clamp(20px,5vw,76px)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:-.04em}h1{font-size:clamp(40px,5.5vw,80px);max-width:1000px}h2{font-size:clamp(32px,3.8vw,53px)}h3{font-size:25px}p{max-width:68ch}p+p{margin-top:15px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.wrap{max-width:1480px;margin:auto;padding:0 var(--pad)}.review{background:#e8e5dc;font-size:12px;padding:7px var(--pad);display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.skip{position:absolute;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:0}.header{display:flex;align-items:center;gap:25px;min-height:100px;border-bottom:1px solid var(--line)}.brand{font-size:24px;letter-spacing:-1px;line-height:1.15;white-space:nowrap}.brand span{color:var(--accent)}.brand small{display:block;font-size:9px;letter-spacing:.25em;margin-top:9px}.nav{margin-left:auto;display:flex;flex-wrap:wrap;gap:22px;align-items:center;font-size:14px}.nav a[aria-current=page]{color:var(--accent);text-decoration:underline;text-underline-offset:8px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:12px 23px;border:1px solid var(--ink);background:transparent;color:var(--ink)}.primary{background:var(--accent);color:white;border-color:var(--accent)}.light{border-color:white;color:white}.small{font-size:13px}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.muted{color:var(--muted)}.hero{position:relative;min-height:610px;display:flex;align-items:flex-end;color:white;background:var(--dark);isolation:isolate}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:center 55%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071311bb,#07131100),linear-gradient(0deg,#071311aa,transparent 70%);z-index:-1}.hero .inside{padding:75px var(--pad);width:100%;max-width:1480px;margin:auto}.hero h1{max-width:850px;margin:22px 0}.hero p{max-width:510px;margin-bottom:25px}.actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.section{padding-top:82px;padding-bottom:82px}.section+.section{border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}.section-head h2{margin-top:14px}.intro{padding:55px 0 45px}.intro .eyebrow{margin-bottom:20px}.intro p{font-size:18px;margin-top:25px}.crumbs{font-size:12px;color:var(--muted);padding-top:24px;display:flex;gap:12px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{min-width:0}.card>a{display:block}.card img{width:100%;height:290px;object-fit:cover;transition:filter .2s}.card a:hover img{filter:brightness(.92)}.card .meta{padding:19px 0 0}.card h3{margin:8px 0 12px}.card p{color:var(--muted);font-size:14px}.card .number{font-size:11px;letter-spacing:.12em;color:var(--accent)}.dark{background:var(--dark);color:white}.dark .muted{color:#c3c9c5}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split>img{width:100%;height:530px;object-fit:cover}.split h1,.split h2{margin:18px 0 25px}.split p{margin-bottom:25px}.rows{border-top:1px solid var(--line);margin-top:28px}.rows a{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);font-size:20px}.catalog-card{background:#e9e6dd;padding:23px;display:block}.catalog-card img{height:285px;object-fit:contain;margin:auto;width:100%;filter:drop-shadow(0 10px 10px #0002)}.catalog-card h3{font-size:23px;margin:22px 0 10px}.catalog-card p{font-size:13px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.gallery-grid figure{margin:0}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid figcaption{font-size:13px;margin-top:9px;color:var(--muted)}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:30px}.toolbar label{display:flex;gap:8px;align-items:center}.toolbar select{padding:10px;background:white;border:1px solid #aaa;max-width:100%}.viewer{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:40px;align-items:start}.catalog-main{background:#e8e5dd;padding:20px}.catalog-main img{max-height:850px;margin:auto;object-fit:contain}.catalog-main>a{display:block}.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-height:820px;overflow:auto;padding:3px}.thumbs a{background:#ebe8df;padding:5px;text-align:center;font-size:11px}.thumbs img{width:100%;aspect-ratio:3/4;object-fit:contain}.thumbs a[aria-current=true]{outline:2px solid var(--accent)}.video-frame{width:100%;aspect-ratio:16/9;background:var(--dark);border:0;display:block}.video-tile{background:var(--dark);color:white;aspect-ratio:16/9;display:flex!important;flex-direction:column;justify-content:space-between;padding:25px}.play{font-size:28px;border:1px solid #fff8;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;align-self:center}.video-tile .small{color:#d5ded7}.video-copy{padding-top:27px}.notice{padding:20px 25px;border-left:3px solid var(--accent);background:#ece9e0;font-size:14px;margin:30px 0}.company{border-top:1px solid var(--line);padding-top:25px}.company h3{margin:14px 0}.company .btn{margin-top:25px}.cta{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:45px 0}.cta h2{font-size:35px}footer{background:var(--dark);color:white;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}.footer-grid h3{font-size:22px;margin-bottom:12px}.footer-grid p{color:#c3c9c5;font-size:14px}.footnote{border-top:1px solid #ffffff30;margin-top:35px;padding-top:20px;font-size:12px;color:#c3c9c5;display:flex;justify-content:space-between;gap:25px}dialog{border:0;background:#141a17;color:white;width:95vw;max-width:1400px;max-height:95vh;padding:20px}dialog::backdrop{background:#000d}.lightbox-img{height:72vh;width:100%;object-fit:contain}.dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:15px}.dialog-bar button{color:white;border:1px solid #ffffff80;background:none;padding:10px 18px;min-height:44px}.dialog-close{display:block;margin:0 0 15px auto;background:none;border:1px solid white;color:white;padding:8px 16px}.spec{width:100%;border-collapse:collapse;margin:25px 0}.spec td,.spec th{text-align:left;padding:16px;border-bottom:1px solid var(--line);vertical-align:top}.spec th{width:35%;font-weight:400}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:19px}details p{padding-top:15px}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}@media(max-width:1050px){.header{flex-wrap:wrap;padding-top:22px;padding-bottom:22px}.nav{margin:0;width:100%;gap:22px}.grid.four{grid-template-columns:repeat(2,1fr)}.split{gap:35px}.viewer{grid-template-columns:minmax(0,1fr) 170px}.thumbs{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.hero{min-height:570px}.hero .inside{padding:55px var(--pad)}.nav{gap:13px 19px;font-size:13px}.section{padding-top:50px;padding-bottom:50px}.section-head,.cta{display:block}.section-head>a,.cta>a{margin-top:20px}.grid,.grid.two,.gallery-grid,.split,.footer-grid{grid-template-columns:1fr}.grid.four{gap:14px}.catalog-card{padding:15px}.catalog-card img{height:200px}.catalog-card h3{font-size:20px}.split>img{height:350px}.viewer{grid-template-columns:1fr}.thumbs{grid-template-columns:repeat(5,1fr);max-height:220px}.card img{height:270px}.hero h1{font-size:46px}.footnote{display:block}.toolbar .btn{padding:10px 14px}.intro{padding-top:40px}.dialog-bar{flex-wrap:wrap}.lightbox-img{height:65vh}.spec td,.spec th{padding:12px 8px}.footer-grid{gap:28px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.brand-image{display:block;background:#fff;padding:9px 12px;width:245px;flex-shrink:0}.brand-image img{width:100%;height:auto}.footer-logo{width:240px}.video-cover{display:block;position:relative;aspect-ratio:16/9;background:var(--dark);overflow:hidden;border:0;padding:0;width:100%;color:white}.video-cover img,.card .video-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.video-cover:hover img{transform:scale(1.025)}.video-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0006,transparent 55%);pointer-events:none}.video-cover .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#1b2829b8;border-color:#fffd;z-index:1}.video-tag{position:absolute;bottom:17px;left:20px;font-size:11px;letter-spacing:.15em;z-index:1}.video-start .play{width:85px;height:85px;font-size:38px}.player-note{margin-top:15px}.contact-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:80px}.contact-layout h2{margin:20px 0 25px}.contact-phone{display:block;font-size:clamp(26px,3vw,38px);margin:30px 0 10px;letter-spacing:-.04em}.contact-company{padding-top:30px;margin-top:30px;border-top:1px solid var(--line)}.contact-company p{margin-top:10px}.text-btn{border:0;background:none;color:var(--accent);padding:12px 0;text-align:left;min-height:44px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}form label{display:block;font-size:13px;margin-bottom:20px}form input,form textarea,form select{display:block;width:100%;border:1px solid #a7aca5;background:#fff;color:var(--ink);font:inherit;font-size:16px;padding:13px;margin-top:8px;min-height:48px}form textarea{resize:vertical}form .btn{margin-top:25px}.form-status{margin-top:15px}.prototype-note{font-size:12px;color:var(--muted);margin-top:15px}.form-honey{position:absolute;left:-10000px}.logo-board img{background:#fff;width:100%;max-width:1000px;margin:25px 0 60px;padding:20px}.logo-board h2{font-size:30px;margin-top:40px}.form-status[data-state=error]{color:#9c2929}.form-status[data-state=success]{color:#276d35}@media(max-width:850px){.contact-layout{grid-template-columns:1fr;gap:40px}.brand-image{width:215px}.form-grid{grid-template-columns:1fr}.video-start .play{width:65px;height:65px;font-size:29px}}

.roof-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:54px;align-items:center;padding-top:48px;padding-bottom:58px}.roof-hero h1{font-size:clamp(38px,4.7vw,70px);margin:22px 0}.roof-hero .lead{font-size:18px;margin:25px 0 30px}.roof-hero figure{margin:0}.roof-hero img{width:100%;aspect-ratio:4/5;object-fit:cover}.roof-hero figcaption{font-size:12px;color:var(--muted);padding-top:12px}.language-nav{display:flex;flex-wrap:wrap;gap:4px 14px;padding-top:16px;padding-bottom:16px;font-size:12px;border-bottom:1px solid var(--line)}.language-nav a{display:inline-flex;align-items:center;min-height:32px}.language-nav a[aria-current=page]{font-weight:700;color:var(--accent);text-decoration:underline}.roof-benefits{padding-top:36px;padding-bottom:48px;gap:38px}.roof-benefits article{border-top:1px solid var(--ink);padding-top:24px}.roof-benefits h2{font-size:26px;margin-bottom:16px}.roof-gallery-head p{margin:22px 0}.roof-gallery img{aspect-ratio:4/3;object-fit:cover}.roof-gallery .portrait img{object-fit:contain;background:#e4e3dc}.roof-gallery a{display:block}.roof-gallery figcaption{font-size:14px;color:var(--ink)}.roof-detail{background:#eae7df}.roof-detail h2{margin:0 0 25px}.roof-detail .specification{font-size:13px;border-top:1px solid #aaa;padding-top:20px;margin-top:25px}.roof-faq{max-width:1000px}.roof-contact{background:var(--dark);color:white}.roof-contact h2{margin:12px 0 25px}.roof-contact p{margin:15px 0}.roof-contact .contact-phone{display:inline-block}.roof-strip{background:#eae7df}.roof-strip h2{margin:15px 0 24px}.roof-strip figure{margin:0}.roof-strip img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-categories{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.gallery-categories a{padding:10px 15px;border:1px solid var(--line)}.photo-caption{display:block}.nav a{min-height:36px;display:inline-flex;align-items:center}.brand-image{max-width:100%}textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.catalog-main img{width:100%;height:auto}.thumbs img{width:100%;height:auto}.form-honey{left:auto;position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.hero>picture{position:absolute;inset:0;z-index:-2}.hero>picture img{width:100%;height:100%;object-fit:cover}.section p{overflow-wrap:anywhere}.roof-page .section h2{max-width:900px}.roof-page .footer-grid{grid-template-columns:1fr 1fr}.roof-page h1{overflow-wrap:anywhere}.photo-gallery-section{scroll-margin-top:30px}.photo-gallery-section h2{margin-bottom:24px}
@media(max-width:850px){.roof-hero{grid-template-columns:1fr;gap:24px;padding-top:30px}.roof-hero img{aspect-ratio:4/3}.roof-hero h1{font-size:42px}.roof-benefits{grid-template-columns:1fr}.roof-page .footer-grid{grid-template-columns:1fr}.language-nav{gap:4px 16px}.roof-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.roof-gallery img{aspect-ratio:1}.roof-hero .lead{font-size:17px}}
@media(max-width:480px){.roof-gallery{grid-template-columns:1fr}.roof-hero h1{font-size:36px}.roof-hero img{aspect-ratio:4/5}.roof-gallery img{aspect-ratio:4/3}.brand-image{width:210px}.nav{gap:7px 16px}.language-nav a{min-height:36px}.roof-page .contact-phone{font-size:29px}}

.roof-strip img{object-position:50% 25%}.roof-hero img{object-position:50% 35%}

footer a:focus-visible,dialog button:focus-visible,.hero a:focus-visible,.dark a:focus-visible,.dark button:focus-visible{outline-color:#fff}

.catalog-main>a{aspect-ratio:4/3;display:grid;place-items:center}.catalog-main img{width:100%;height:100%;min-height:0;max-height:none;object-fit:contain}.roof-gallery.portrait img{object-fit:contain} .roof-gallery .portrait img{aspect-ratio:3/4}.roof-contact a:focus-visible{outline-color:#fff}.footnote span:empty{display:none}.contact-layout h1{font-size:clamp(36px,4vw,55px);margin:20px 0 25px}

button:disabled{opacity:.55;cursor:not-allowed}.video-frame{width:100%;aspect-ratio:16/9;height:auto;display:block;border:0}

.archive-page{max-width:900px}.archive-page h1{font-size:clamp(2rem,5vw,3.5rem);margin:24px 0}.archive-page p,.archive-page ul{margin:1.2em 0;line-height:1.75}.archive-page article{margin:40px 0}.archive-page article h2,.archive-page article h3{margin:1.5em 0 .5em;font-size:1.5rem}.archive-list{padding-left:24px}.archive-list li{margin:.65em 0}.archive-page .notice{margin:24px 0;padding:20px}

/* photo-language-20261019 */
.site-language{position:relative;flex-shrink:0;margin-left:auto;font-size:13px;z-index:10}
.site-language summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:9px 12px;border:1px solid var(--ink);cursor:pointer;list-style:none;white-space:nowrap}
.site-language summary::-webkit-details-marker{display:none}
.site-language summary::after{content:"⌄";font-size:18px;line-height:1}
.site-language[open] summary::after{content:"⌃"}
.language-panel{position:absolute;right:0;top:calc(100% + 8px);width:320px;max-width:calc(100vw - 40px);padding:20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 35px #202b2826}
.language-title{font-weight:700;font-size:14px}.language-note{font-size:12px;color:var(--muted);margin-top:4px}
.language-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin-top:12px}
.language-options a{display:flex;align-items:center;min-height:44px;padding:5px 0;font-size:14px;overflow-wrap:anywhere}
.language-options a[aria-current=page]{font-weight:700;color:var(--accent);text-decoration:underline}
.installation-gallery .portrait img{object-fit:contain}
@media(min-width:1101px){.header{gap:20px}.header .nav{gap:16px;font-size:13px}.brand-image{flex-shrink:0}.site-language summary{font-size:12px}}
@media(max-width:1100px){.header{flex-wrap:wrap;padding-top:18px;padding-bottom:18px;gap:14px 20px}.header>.brand{order:0}.site-language{order:1}.header>.nav{order:2;width:100%;margin-left:0}}
@media(max-width:480px){.header>.brand-image{width:165px}.site-language summary{padding:8px;font-size:11px;gap:6px}.language-panel{width:300px}}
