/* Selected design: mockup 1, Licht & strak. Shared by all eleven pages. */
:root{--paper:#f8f9f6;--ink:#153b30;--green:#153b30;--copper:#456431;--line:#d6ded7;--muted:#53665d;--max:1312px;--accent:#c0e37b}
body{font-size:16px;line-height:1.5}
.wrap{width:min(var(--max),calc(100% - 128px))}
.site-header{background:var(--paper)}
.header-inner{width:min(var(--max),calc(100% - 128px));min-height:100px;gap:30px}
.brand{display:inline-flex;align-items:center;gap:7px;font-size:23px;font-weight:800;letter-spacing:-1px}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:28px;height:30px;background:var(--accent);font-size:30px;font-weight:400;line-height:1}
.brand-sub{font-size:18px;font-weight:400;letter-spacing:-.4px}
.header-inner nav{margin-left:auto;gap:27px}
.header-inner nav a{font-size:14px}
.header-phone{display:inline-flex;font-size:14px;font-weight:400;gap:0}
.header-phone .icon{display:none}
.button,.button.green{border:1px solid var(--accent);background:var(--accent);color:var(--ink);border-radius:0;min-height:54px;padding:16px 22px;font-size:14px;gap:25px}
.button:hover,.button.green:hover{background:#afd265;border-color:#afd265}
.header-cta{min-height:44px;padding:11px 17px;gap:15px}
.menu-toggle{border-radius:0;border-color:var(--line)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.file-button:focus-within{outline-color:#456431}
.light-home{max-width:1440px;margin:auto}
.light-home a{text-decoration:none}
.light-home .hero{display:grid;grid-template-columns:1.04fr 1fr;gap:70px;align-items:center;padding:50px 64px}
.light-home .eyebrow{display:block;letter-spacing:2px;font-size:11px;font-weight:700;margin-bottom:22px}
.light-home h1{font-size:clamp(48px,4.73vw,68px);line-height:1.02;letter-spacing:-3.2px;margin:0 0 26px;font-weight:700}
.light-home h1 em{font-style:normal;color:#698543}
.light-home h2{font-size:32px;line-height:1.15;letter-spacing:-1.3px;margin:0}
.light-home h3{font-size:21px;line-height:1.15;letter-spacing:-.5px;margin:0 0 12px}
.light-home p{color:var(--muted);margin:0 0 25px;max-width:530px}
.light-home .hero figure{margin:0;height:445px;position:relative}
.light-home .roof{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 65%}
.light-home .hero figure:after{content:'EPDM / ECHTE DAKFOTO';position:absolute;bottom:16px;left:18px;color:white;font-size:10px;letter-spacing:1.5px;background:var(--green);padding:8px 12px}
.light-home .btn{display:inline-flex;align-items:center;gap:30px;background:var(--accent);color:var(--ink);padding:17px 22px;font-size:14px;font-weight:700;min-height:54px}
.light-home .btn:hover{background:#afd265}
.light-home .btn span{font-size:20px;line-height:1}
.light-home .services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;padding:35px 64px}
.light-home .services>a{position:relative;border-top:1px solid var(--line);padding:24px 22px 0 0}
.light-home .services>a:hover h3{text-decoration:underline;text-underline-offset:4px}
.light-home .services p{font-size:14px;max-width:280px;margin:0}
.light-home .num{display:block;font-size:12px;margin-bottom:17px;color:var(--muted)}
.light-home .arrow{position:absolute;right:0;top:23px;font-size:25px}
.light-home .self{margin:15px 64px 25px;background:#e9eee4;padding:28px 32px;display:grid;grid-template-columns:1.1fr 1fr;gap:70px}
.light-home .self .eyebrow{margin-bottom:12px}
.light-home .self p{font-size:15px;margin-bottom:15px}
.light-home .textlink{font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:5px}
.light-home .photo-note{margin:0 64px 16px;color:var(--muted);font-size:11px}
.light-home .photo-note a{text-decoration:underline}
.site-footer{border-top:1px solid var(--line);padding:25px 0}
.footer-top{flex-wrap:wrap;gap:24px}
.footer-top .brand{font-size:20px}
.footer-top nav{flex-wrap:wrap;gap:16px 24px}
.parent-brand{padding-left:0;border:0}
.footer-bottom{font-size:12px;color:var(--muted)}
.article-intro{padding:35px 0 48px;gap:65px}
.article-intro h1,.workflow-intro h1{color:var(--ink);font-size:clamp(38px,4vw,56px);line-height:1.08;letter-spacing:-2px}
.article-intro p,.workflow-intro>p{font-size:18px;color:var(--muted)}
.article-layout{gap:70px}
.article-aside{background:#e9eee4;border-top:1px solid var(--line);padding:30px}
.article-copy h2{font-size:30px}
.article-copy p{line-height:1.75}
.article-copy a,.inline-links a,.copper{color:#456431}
.callout{background:#e9eee4;color:var(--ink);padding:40px 0}
.callout-info{border-color:var(--line)}
.step-num{border-radius:0;background:#e9eee4;color:var(--ink)}
.workflow-overview{margin-block:32px 42px}
.workflow-overview li:not(:last-child):after{background:var(--line)}
.form-section{background:#fff;border-radius:0;padding:26px;margin-bottom:16px}
.form-section h2{color:var(--ink);gap:18px}
.form-section h2>span{background:#e9eee4;border-radius:0;font-size:18px;padding:7px 9px}
input,select,textarea{border-radius:0;border-color:#b7c6bb}
input,select{height:44px}
input[type=checkbox],input[type=radio]{height:18px}
.application-help{background:#e9eee4;color:var(--ink);border-radius:0;margin-bottom:16px}
.application-help h2{font-size:27px}
.help-item p,.help-contact p{color:var(--muted)}
.help-icon{border-color:#9aafa0;border-radius:0}
.help-contact{border-color:#bbcbbb}
.help-contact a{white-space:normal}
.self-build-fields{background:#f3f6ee;border-color:var(--line);border-radius:0}
.upload-box{background:#f8f9f6;border-color:#a3b79f}
.upload-box.drag-active{background:#edf4e0;border-color:#698543}
.preview-notice{border-color:#698543;color:var(--muted)}
.file-button{min-height:40px;padding:10px 15px;gap:12px}
.submit-button{width:100%}
@media(min-width:901px){
 .menu-toggle{display:none}
 .header-inner nav{display:flex;order:initial;width:auto;padding:0;flex-direction:row;align-items:center}
 .header-inner nav a{padding:0;font-size:14px}
 .header-cta,.header-phone{display:inline-flex}
}
@media(min-width:901px) and (max-width:1190px){
 .header-inner{gap:18px}
 .header-inner nav{gap:18px}
 .header-phone{display:none}
 .light-home .hero{gap:40px}
 .light-home h1{font-size:50px;letter-spacing:-2.3px}
 .light-home .self{gap:35px}
 .article-layout{gap:35px}
 .application-grid{grid-template-columns:minmax(0,2fr) minmax(235px,1fr)}
 .application-help{padding:25px 20px}
}
@media(max-width:900px){
 .wrap,.header-inner{width:calc(100% - 40px)}
 .header-inner{min-height:80px;flex-wrap:wrap;gap:0}
 .header-inner .brand{font-size:23px}
 .menu-toggle{display:block;min-height:44px;padding:9px 15px}
 .header-inner nav{display:none;order:3;width:100%;padding:12px 0 22px;flex-direction:column;align-items:stretch;gap:0;margin:0}
 .header-inner nav.is-open{display:flex}
 .header-inner nav a{padding:12px 0;font-size:16px}
 .header-cta,.header-phone{display:none}
 .light-home .hero{grid-template-columns:1fr;padding:36px 20px;gap:32px}
 .light-home h1{font-size:clamp(40px,7vw,56px);letter-spacing:-2px}
 .light-home .hero figure{height:340px}
 .light-home .services{grid-template-columns:1fr;gap:26px;padding:16px 20px 32px}
 .light-home .services p{max-width:530px}
 .light-home .self{grid-template-columns:1fr;margin:8px 20px 24px;padding:26px 24px;gap:20px}
 .light-home h2{font-size:29px}
 .light-home .photo-note{margin:0 20px 22px}
 .footer-top{display:block}
 .footer-top nav{margin:22px 0}
 .article-intro{grid-template-columns:1fr;padding:20px 0 32px;gap:22px}
 .article-layout{grid-template-columns:1fr;padding-block:36px;gap:30px}
 .application-grid{grid-template-columns:1fr}
 .article-intro h1,.workflow-intro h1{font-size:40px}
 .form-section{padding:22px}
 .callout-row{grid-template-columns:1fr;gap:22px}
 .callout-info{padding-left:0;border:0}
}
@media(max-width:480px){
 .brand-sub{font-size:17px}
 .light-home .hero figure{height:285px}
 .light-home .hero .eyebrow{font-size:10px;letter-spacing:1.5px}
 .light-home .hero p{font-size:16px}
 .light-home .self{padding:24px 20px}
 .light-home h2{font-size:27px}
 .article-intro h1,.workflow-intro h1{font-size:36px;letter-spacing:-1.5px}
 .form-section{padding:20px 16px}
 .form-section h2{font-size:20px;gap:12px}
 .application-help{padding:26px 22px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.terms-page{max-width:960px;padding-top:30px}
.terms-version{font-size:13px;color:var(--muted)}
.terms-page>section{padding-top:20px;margin-top:24px;border-top:1px solid var(--line);scroll-margin-top:24px}
.terms-page>section h2{margin-top:10px;font-size:27px}
.terms-page p{font-size:16px;line-height:1.75}
.terms-toc{background:#e9eee4;padding:26px 30px;margin:34px 0}
.terms-toc h2{font-size:23px;margin:0 0 16px}
.terms-toc ol{list-style:none;padding:0;margin:0;columns:2;column-gap:30px}
.terms-toc li{break-inside:avoid;margin:0 0 10px;line-height:1.5;font-size:14px}
.terms-toc a{text-decoration:none}.terms-toc a:hover{text-decoration:underline}
.article-copy ul{padding-left:22px;color:var(--muted);line-height:1.75}
.article-copy li{margin-bottom:12px}
.footer-bottom{flex-wrap:wrap;row-gap:12px}
@media(max-width:600px){.terms-toc{padding:24px 20px}.terms-toc ol{columns:1}.terms-page>section h2{font-size:24px}.terms-page h1{font-size:36px;overflow-wrap:break-word}}
@media print{.site-header,.site-footer,.skip,.terms-toc,.terms-page .breadcrumb,.terms-page .button{display:none!important}.terms-page{width:100%;max-width:none;padding:0}.terms-page h1{font-size:24pt}.terms-page h2{font-size:15pt;break-after:avoid}.terms-page p{font-size:10pt;line-height:1.5}body{background:white;color:#152c23}.terms-page>section{break-inside:auto}}
.legal-page { overflow-wrap: anywhere; }
.light-home .insulation-feature{background:#f0f2e9;border-top:1px solid var(--line)}
.article-copy .roof-layers{list-style:none;padding:0;margin:24px 0 10px;display:grid;gap:5px}
.roof-layers li{padding:17px 21px;margin:0;background:#e9eee4;border-left:4px solid #c6dba3;display:grid;gap:3px}
.roof-layers li:first-child{background:#21483d;border-color:#21483d;color:#fff}
.roof-layers li:nth-child(2){background:#e5ebc9;border-color:#aec46f}
.roof-layers li:nth-child(4){background:#eee8dd;border-color:#c5b492}
.roof-layers strong{font-size:17px}.roof-layers span{font-size:14px;line-height:1.5}
.article-copy .roof-layer-note{font-size:13px;line-height:1.6;color:var(--muted)}
.footer-cookie{font:inherit;color:inherit;background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}
.cookie-choice{position:fixed;bottom:18px;left:18px;right:18px;z-index:1000;max-width:1080px;margin:auto;padding:24px;background:#f7f8f3;color:#16382d;border:1px solid #9bad9f;box-shadow:0 8px 36px #16382d33;display:grid;grid-template-columns:1fr 240px;gap:24px;max-height:80dvh;overflow-y:auto}
.cookie-choice[hidden]{display:none}.cookie-choice h2{font-size:22px;margin:0 0 10px}.cookie-choice p{font-size:14px;line-height:1.6;margin:0 0 10px}.cookie-choice a{text-decoration:underline}
.cookie-actions{display:flex;flex-direction:column;justify-content:center;gap:12px}.cookie-actions button{font:inherit;font-size:14px;font-weight:700;padding:15px;background:#e3edcf;color:#16382d;border:1px solid #7c946d;cursor:pointer;min-height:48px}
.cookie-actions button:hover{background:#cce49c}.cookie-actions button:focus-visible,.footer-cookie:focus-visible{outline:3px solid #16382d;outline-offset:3px}
.form-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:650px){.cookie-choice{left:10px;right:10px;bottom:10px;padding:18px;grid-template-columns:1fr;gap:8px;max-height:85dvh}.cookie-choice h2{font-size:21px}.cookie-actions{gap:8px}}
@media print{.cookie-choice,.footer-cookie{display:none!important}}
