/* ECCOVERD-Farbvorgabe. Keine externen Schrift- oder Medienabrufe. */
@font-face{font-family:'Canva Sans';src:local('Canva Sans');font-style:normal;font-weight:100 900;font-display:swap}
:root{--brand-roof:#7ED957;--brand-trees:#2EE800;--brand-brown:#745841;--brand-deep:#2D7D0B;--forest:var(--brand-deep);--brand-green:var(--brand-deep);--brand-lime:var(--brand-roof);--gold:var(--brand-roof);--ink:#192419;--muted:#465346;--cream:#f7faf4;--sage:#f0f8e9;--line:#dbe7d2;--shadow:0 18px 45px rgba(45,125,11,.10)}
body{font-family:'Canva Sans','Segoe UI',Arial,Helvetica,sans-serif}
.announcement:not(.announcement-blue){color:#fff}
.brand img:not(.cms-media-override){width:140px;height:140px;object-fit:contain}
.portfolio-heading h1{color:var(--brand-deep)}
.portfolio-heading h1 em{color:var(--brand-deep);text-decoration:underline;text-decoration-color:var(--brand-roof);text-decoration-thickness:.055em;text-underline-offset:.13em}
.portfolio-card-copy p,.section-dark .steps p{color:#fff}
.portfolio-caption,.system-tech p,.portfolio-lead{color:var(--muted)}
.portfolio-caption{border-left:3px solid var(--brand-brown);padding-left:12px}
.site-footer,.ad-sidebar{background:var(--brand-deep)}
.site-footer .footer-grid p,.site-footer .footer-grid a,.site-footer .footer-label,.site-footer .footer-bottom,.site-footer .admin-footer-link{color:#fff!important}
.site-footer .footer-grid a:hover{color:var(--brand-roof)!important}
.site-footer .brand{background:#fff}
.ad-sidebar>p,.ad-sidebar small{color:#fff}
.ad-sidebar button[aria-current=page],.ad-sidebar button:hover{background:#1c5106}
.ad-connection,.ad-message{color:#245f0a;background:var(--sage)}
.eyebrow-dark{color:var(--brand-deep)}
.section-dark .section-heading-light>p,.section-dark .eyebrow{color:#fff}
.contact-panel{border-top:4px solid var(--brand-roof)}
body:not([data-page=shop]) input:focus,body:not([data-page=shop]) textarea:focus,body:not([data-page=shop]) select:focus{border-color:var(--brand-deep);box-shadow:0 0 0 3px #7ed95740}
.footer-utilities{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;padding-top:24px;padding-bottom:20px;border-top:1px solid #ffffff55;margin-top:20px}
.footer-legal,.footer-social{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;font-size:.86rem}
.footer-legal a{text-decoration:underline;text-underline-offset:4px}
.social-contact{display:inline-flex;align-items:center;gap:9px;padding:8px 0;min-height:44px}
.social-contact svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.social-contact[aria-disabled=true]{opacity:.72;cursor:default}
.social-contact small{font-size:.68rem}
.ad-legal-footer{background:var(--brand-deep);color:white;padding:0 28px 22px}.ad-legal-footer .footer-utilities{margin-top:0}
.form-privacy-note{font-size:.77rem;line-height:1.55;color:var(--muted);margin:0}.form-privacy-note a{text-decoration:underline;text-underline-offset:3px}
.legal-main{max-width:920px;margin:0 auto;padding:66px 24px 80px}.legal-main h1{font-size:clamp(2.2rem,5vw,3.8rem);color:var(--brand-deep)}.legal-main h2{font-size:1.35rem;margin:36px 0 12px;line-height:1.3}.legal-main p,.legal-main li{max-width:76ch;line-height:1.75}.legal-main a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-main dl{display:grid;grid-template-columns:minmax(140px,190px) minmax(0,1fr);gap:12px 22px;padding:24px;background:var(--sage);border-radius:14px}.legal-main dt{font-weight:700}.legal-main dd{margin:0;white-space:pre-line;overflow-wrap:anywhere}.legal-notice{border-left:4px solid var(--brand-brown);padding:16px 20px;background:#f8f3ee;color:#574130}.legal-main .legal-missing{color:#745841;font-weight:600}.legal-main .legal-sources{font-size:.83rem}.legal-updated{font-size:.8rem;color:var(--muted)}
@media(max-width:600px){.footer-utilities{align-items:flex-start;flex-direction:column}.legal-main{padding-top:40px}.legal-main dl{grid-template-columns:1fr;gap:4px;padding:18px}.legal-main dd{margin-bottom:14px}.footer-legal,.footer-social{gap:14px 20px}}
.shop-launch{background:var(--cream);padding:70px 0 90px}.shop-launch-card{max-width:850px;margin:auto;padding:48px;background:#fff;border-radius:24px;border-top:5px solid var(--brand-roof);box-shadow:var(--shadow)}.launch-victron{width:250px;margin-bottom:35px}.shop-launch h1{font-size:clamp(2.6rem,6vw,4.5rem);color:var(--brand-deep)}.launch-lead{font-size:1.2rem;max-width:48ch}.shop-preview{margin-top:36px;border-top:1px solid var(--line);padding-top:22px}.shop-preview summary{cursor:pointer;font-weight:700}.shop-preview form{display:grid;gap:14px;max-width:450px;margin-top:20px}.shop-preview label{display:grid;gap:8px}.references-main{padding-block:60px 80px}.references-main h1{color:var(--brand-deep);font-size:clamp(2.5rem,6vw,4.5rem)}.references-lead{font-size:1.14rem;max-width:54ch}.reference-empty{padding:30px;background:var(--sage);border-radius:16px;margin:34px 0}.reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:38px}.reference-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff}.reference-cover{width:100%;padding:0;border:0;background:var(--sage);cursor:pointer}.reference-cover img{width:100%;aspect-ratio:16/10;object-fit:cover}.reference-copy{padding:25px}.reference-copy h2{font-size:1.65rem}.reference-copy p:last-child{white-space:pre-line}.reference-meta{color:var(--brand-brown);font-size:.85rem}.reference-gallery{width:min(900px,calc(100% - 30px));max-height:90dvh;overflow:auto;padding:24px;border:1px solid var(--line);border-radius:20px}.reference-gallery::backdrop{background:#10200fcc}.reference-gallery h2{font-size:1.4rem}.reference-gallery>img{width:100%;max-height:65dvh;object-fit:contain}.reference-thumbs{display:flex;gap:10px;margin-top:15px}.reference-thumbs button{border:1px solid var(--line);background:white;padding:5px;cursor:pointer}.reference-thumbs img{width:75px;height:60px;object-fit:cover}.ad-reference-photos{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ad-reference-preview{max-height:150px;width:100%;object-fit:contain;background:var(--sage)}#admin-reference-rows button{margin:3px;padding:6px}#admin-reference-local-feedback{color:#862626}
@media(max-width:1100px){.main-nav{gap:12px;font-size:.8rem}.site-header{gap:18px;padding-inline:20px}}
@media(min-width:761px) and (max-width:1200px){.main-nav{display:none;position:absolute;top:104px;left:12px;right:12px;padding:16px;background:white;border:1px solid var(--line);border-radius:12px}.main-nav.open{display:grid}.main-nav a{padding:10px}.menu-toggle{display:block;margin-left:auto}.header-actions{margin-left:0}}
@media(max-width:760px){.shop-launch{padding:35px 0}.shop-launch-card{padding:25px}.reference-grid,.ad-reference-photos{grid-template-columns:1fr}.references-main{padding-block:40px 60px}.reference-copy{padding:20px}.reference-gallery{padding:18px}}
@media print{.ad-legal-footer{display:none!important}}
.reference-gallery .ad-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.reference-gallery .ad-dialog-head h2{margin:0}.reference-gallery .ad-dialog-head button{border:1px solid var(--line);background:#fff;border-radius:50%;width:36px;height:36px;font-size:1.4rem;cursor:pointer}
@media(max-width:760px){.site-header .brand img:not(.cms-media-override){width:120px;height:120px;top:-12px;left:-5px}}
.shop-launch{background:#eaf4fb}.shop-launch-card{border-top-color:#0b66a7}.shop-launch h1,.shop-launch .eyebrow{color:#063f73}.shop-launch .button-primary{background:#063f73;color:#fff}

/* Language controls share local assets and the existing header. */
[data-language-select]{min-width:64px;max-width:90px;background:#fff;color:#20372b;border:1px solid #d9e1d5;border-radius:18px;padding:8px;font:inherit}
.site-header>.language-control{margin-inline:12px}.login-header>.language-control{margin-left:auto}
[data-cms]{white-space:pre-line}
.systems .section-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:start;gap:48px}
.systems .section-heading>p{max-width:480px}
@media(max-width:760px){.systems .section-heading{grid-template-columns:1fr;gap:20px}.site-header>.language-control{margin:0 8px}.site-header{flex-wrap:wrap}.ad-top-actions{flex-wrap:wrap}}
