/* KristallSolar — native CSS, ohne Framework oder externe Laufzeit. */
:root{--navy:#102b46;--cyan:#12b0db;--yellow:#f4d121;--cloud:#f2f6f8;--white:#fff;--ink:#102b46;--muted:#526575;--line:#d7e2e9;--dark-line:#35506a;--deep:#0b2136;--font:Arial,Helvetica,sans-serif;--ease:cubic-bezier(.2,.75,.25,1);--radius:10px;--wrap:1280px;--gutter:clamp(22px,5.5vw,96px);--scroll-thumb:#748a9b;--scroll-track:#f2f6f8;--scroll-hover:#102b46}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:thin}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--font);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}::selection{color:var(--navy);background:var(--yellow)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:2px solid var(--scroll-track);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}
img{max-width:100%;display:block}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a,button,input,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-weight:700;line-height:1.1;letter-spacing:-.045em}h2{font-size:clamp(34px,4.2vw,58px);margin-bottom:25px}h3{font-size:28px}p{margin-bottom:1.3em}button:disabled{cursor:default;opacity:.6}.wrap{width:min(calc(100% - var(--gutter)*2),var(--wrap));margin-inline:auto}.section{padding-block:120px}.eyebrow{font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;margin-bottom:24px;display:flex;align-items:center;gap:12px}.eyebrow::before{content:"";width:25px;height:2px;background:var(--cyan);flex:none}.accent{color:var(--yellow)}.cyan{color:var(--cyan)}.muted{color:#6d8091}.icon{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;left:20px;top:-80px;z-index:120;background:var(--yellow);padding:12px 22px;border-radius:5px;font-weight:700}.skip-link:focus{top:12px}
.button{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:57px;padding:17px 25px;border:1px solid var(--yellow);border-radius:5px;background:var(--yellow);color:var(--navy);font-size:14px;font-weight:700;line-height:1.4;transition:background .25s,color .25s,transform .25s,box-shadow .25s;cursor:pointer}.button span{font-size:22px;line-height:1;transition:transform .25s}.button:hover{background:#ffe459;border-color:#ffe459;box-shadow:0 8px 24px #00000012;transform:translateY(-2px)}.button:hover span{transform:translate(2px,-2px)}.button:active{transform:translateY(0)}.button-small{min-height:45px;font-size:12px;padding:11px 18px;gap:18px}.text-link{display:inline-flex;align-items:center;gap:21px;font-size:14px;font-weight:700;border-bottom:1px solid var(--line);padding-bottom:8px;transition:color .2s,border-color .2s}.text-link span{font-size:22px;transition:transform .25s}.text-link:hover{color:#06647d;border-color:var(--cyan)}.text-link:hover span{transform:translate(3px,-3px)}.text-link.light{color:white;border-color:#ffffff50}.text-link.light:hover{color:var(--yellow);border-color:var(--yellow)}.inline-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:700;line-height:1.4;background:none;border:0;padding:0;color:var(--navy);cursor:pointer}.inline-link span{font-size:20px}.inline-link:hover{color:#076881}.round-link{width:49px;height:49px;border:1px solid #ffffff70;border-radius:50%;display:grid;place-items:center;color:white;font-size:25px;transition:transform .25s,background .25s,color .25s}.round-link:hover{background:var(--yellow);color:var(--navy);border-color:var(--yellow);transform:rotate(8deg)}.round-link.navy{color:var(--navy);border-color:var(--line)}
.site-header{position:sticky;top:0;background:#fffffff5;z-index:50;backdrop-filter:blur(18px);border-bottom:1px solid #102b460a;transition:box-shadow .3s}.site-header.scrolled{box-shadow:0 3px 25px #102b460a}.header-inner{width:min(calc(100% - var(--gutter)*2),var(--wrap));margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:93px;gap:32px}.brand{flex:none;width:270px}.brand img{width:100%;height:auto}.main-nav{display:flex;align-items:center;gap:27px}.main-nav>a:not(.button){font-size:12px;font-weight:700;position:relative;padding:10px 0;white-space:nowrap}.main-nav>a:not(.button)::after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:2px;background:var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .3s}.main-nav>a:hover::after{transform:scaleX(1)}.scroll-progress{height:2px;width:100%;background:var(--cyan);transform:scaleX(0);transform-origin:left;position:absolute;bottom:-1px}.menu-toggle{display:none;width:46px;height:46px;padding:12px;border:1px solid var(--line);border-radius:5px;background:transparent;flex:none}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:5px 0;transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.hero{isolation:isolate;position:relative;background:var(--navy);color:var(--white);min-height:780px;overflow:hidden;display:flex;flex-direction:column}.hero-picture,.hero-shade,#sun-particles{position:absolute;inset:0;z-index:-1;pointer-events:none}.hero-picture{overflow:hidden}.hero-picture img{width:100%;height:110%;object-fit:cover;object-position:center 48%;will-change:transform;transform:translateY(-3%)}.hero-shade{background:linear-gradient(90deg,#0b2136f5 0%,#0b2136e6 24%,#0b2136b0 42%,#0b213651 64%,#0b21361a 100%),linear-gradient(0deg,#102b46a8 0%,transparent 42%)}#sun-particles{z-index:0;opacity:.65}.hero-content{position:relative;z-index:2;padding-top:84px;padding-bottom:60px;flex:1}.hero-intro{font-size:11px;letter-spacing:.14em;color:#d6e3ec;margin-bottom:30px}.hero-intro::before{display:none}.sun-spark{width:8px;height:8px;background:var(--yellow);border-radius:50%;box-shadow:0 0 0 6px #f4d12116}.hero h1{font-size:clamp(57px,7.2vw,102px);line-height:.99;letter-spacing:-.06em;margin-bottom:32px;max-width:900px}.hero-line{display:block}.hero-copy{max-width:530px;font-size:16px;line-height:1.8;color:#e4edf3;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:32px}.hero-trust{display:flex;align-items:center;gap:27px;margin-top:28px;font-size:11px;font-weight:400;letter-spacing:.015em;color:#d5e1e9}.hero-trust span{display:flex;align-items:center;gap:8px}.hero-trust .icon{color:var(--cyan);width:17px;height:17px}.hero-bottom{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;padding-bottom:36px;font-size:11px;color:#e0e9f0}.scroll-cue{display:flex;align-items:center;gap:12px}.scroll-arrow{border:1px solid #ffffff30;width:34px;height:45px;border-radius:30px;display:grid;place-items:center;font-size:20px;animation:cue 2s ease-in-out infinite}.hero-location{letter-spacing:.02em}.hero-cut{position:absolute;bottom:0;left:0;width:100%;height:7px;background:var(--cyan);clip-path:polygon(0 0,43% 0,44% 100%,100% 100%,100% 0,44% 0,43% 100%,0 100%)}.hero-cut::after{content:"";position:absolute;inset:0;background:var(--yellow);clip-path:polygon(44% 0,100% 0,100% 100%,44% 100%)}
.hero-intro,.hero-line,.hero-copy,.hero-actions,.hero-trust{animation:hero-in 1s var(--ease) both}.hero-line:nth-child(1){animation-delay:.1s}.hero-line:nth-child(2){animation-delay:.22s}.hero-line:nth-child(3){animation-delay:.34s}.hero-copy{animation-delay:.45s}.hero-actions{animation-delay:.57s}.hero-trust{animation-delay:.68s}.brand-ribbon{overflow:hidden;background:var(--yellow);padding:24px 0;color:var(--navy)}.ribbon-track{width:max-content;display:flex;align-items:center;gap:56px;animation:ribbon 34s linear infinite;font-size:16px;font-weight:700;letter-spacing:.08em}.ribbon-track b{color:#7d6b10;font-size:23px;font-weight:400}.brand-ribbon:hover .ribbon-track{animation-play-state:paused}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:56px}.section-heading h2{margin-bottom:0}.intro-copy{max-width:365px;font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:3px}.solution-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.solution-main{position:relative;overflow:hidden;min-height:615px;border-radius:var(--radius);background:var(--navy);color:white}.solution-main>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 45%;transition:transform 1.2s var(--ease)}.solution-main:hover>img{transform:scale(1.055)}.solution-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#102b4600 12%,#102b4675 37%,#102b46f5 100%)}.solution-main-content{position:absolute;bottom:0;padding:38px;width:100%}.service-tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;display:inline-block;color:#fff;padding:6px 11px;border:1px solid #ffffff50;border-radius:4px;margin-bottom:22px}.solution-main h3{font-size:44px;line-height:1.06;margin-bottom:18px}.solution-main p{font-size:14px;line-height:1.75;color:#e1eaf2;max-width:405px;padding-right:28px;margin-bottom:0}.solution-main .round-link{position:absolute;bottom:38px;right:32px}.solution-side{display:grid;gap:26px;grid-template-rows:1fr 1fr}.solution-small{background:var(--cloud);border-radius:var(--radius);padding:34px 35px;display:flex;gap:24px;transition:background .3s,transform .3s}.solution-small:hover{background:#eaf2f7;transform:translateY(-3px)}.service-icon{flex:none;color:var(--navy);margin-top:4px}.service-icon .icon{width:35px;height:35px}.service-tag.navy{color:var(--muted);border:0;padding:0;margin-bottom:13px;font-size:10px;letter-spacing:.12em}.solution-small h3{font-size:28px;line-height:1.13;margin-bottom:15px;letter-spacing:-.035em}.solution-small p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:20px}.solution-foot{display:flex;align-items:center;gap:18px;margin-top:28px;border-top:1px solid var(--line);padding-top:25px;font-size:12px;color:var(--muted)}.solution-foot p{margin:0}.solution-foot>a{margin-left:auto;font-weight:700;color:var(--navy)}.solution-foot>a:hover{color:#086980}.small-sun{color:#8a7610;font-size:29px;line-height:1}
.energy-section{background:var(--navy);color:var(--white);position:relative;overflow:hidden}.energy-heading .intro-copy{color:#b5c7d6}.energy-heading{margin-bottom:55px}.energy-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:55px;align-items:center}.energy-stage{position:relative;min-width:0;transition:filter .8s;overflow:hidden;border-radius:12px}.energy-svg{width:100%;height:auto;display:block;overflow:visible}.energy-caption{font-size:11px;color:#c8d8e3;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;min-height:28px}.live-dot{height:6px;width:6px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 5px #f4d12110}.energy-track{stroke:#486781;stroke-width:2}.energy-flow{stroke:var(--yellow);stroke-width:3;stroke-dasharray:5 12;animation:flow 1.9s linear infinite;transition:opacity .5s,stroke .5s}.to-car{opacity:.3;stroke:var(--cyan)}.solar-aura{transition:opacity .8s}.solar-panels{transition:opacity .8s}.battery-fill{transition:fill .6s}.energy-stage[data-energy-mode=evening] .solar-aura{opacity:.07}.energy-stage[data-energy-mode=evening] .solar-panels{opacity:.5}.energy-stage[data-energy-mode=evening] .to-storage{animation-direction:reverse;stroke:var(--cyan)}.energy-stage[data-energy-mode=evening] .to-car{opacity:.15}.energy-stage[data-energy-mode=charging] .to-car{opacity:1;stroke:var(--yellow);stroke-width:4}.energy-stage[data-energy-mode=charging] .to-storage{opacity:.25}.energy-stage[data-energy-mode=evening] .battery-fill{fill:var(--cyan)}.tiny-label{color:#a9bfce;font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:17px}.energy-tabs{border-top:1px solid var(--dark-line)}.energy-tab{width:100%;display:flex;align-items:center;text-align:left;padding:22px 13px;border:0;border-bottom:1px solid var(--dark-line);background:transparent;color:white;border-radius:0;transition:background .25s,color .25s}.energy-tab:hover{background:#173b59}.energy-tab.active{background:#1c3b56}.energy-tab strong{display:block;font-size:16px;letter-spacing:-.02em}.energy-tab small{display:block;font-size:11px;color:#b9cad7;margin-top:3px}.time-symbol{width:35px;flex:none;font-size:28px;color:var(--cyan);margin-right:14px}.energy-tab.active .time-symbol{color:var(--yellow)}.tab-arrow{margin-left:auto;opacity:.3;font-size:24px}.energy-tab.active .tab-arrow{opacity:1;color:var(--yellow)}.energy-description{margin-top:28px;min-height:157px}.energy-description h3{font-size:20px;line-height:1.3;letter-spacing:-.025em;margin-bottom:12px}.energy-description p{font-size:13px;line-height:1.75;color:#bccedb;margin:0}.diagram-note{font-size:10px;line-height:1.8;color:#9eb4c6;margin:21px 0 0}
.possibilities{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.possibility-intro>p:not(.eyebrow){font-size:16px;color:var(--muted);max-width:400px}.highlight-text{position:relative;display:inline;z-index:1}.highlight-text::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:12px;background:var(--yellow);z-index:-1;transform:skewX(-12deg)}.benefit{display:flex;gap:26px;border-bottom:1px solid var(--line);padding:28px 0}.benefit:first-child{padding-top:0}.benefit:last-child{border-bottom:0;padding-bottom:0}.benefit>.icon{width:29px;height:29px;color:#0a83a2;margin-top:3px}.benefit h3{font-size:24px;line-height:1.2;margin-bottom:12px;letter-spacing:-.03em}.benefit p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.image-interlude{height:490px;position:relative;overflow:hidden;background:var(--navy);display:flex;align-items:center;color:white}.image-interlude>img{position:absolute;width:100%;height:120%;object-fit:cover;object-position:50% 55%}.image-interlude-shade{position:absolute;inset:0;background:linear-gradient(90deg,#102b46d9 0%,#102b46a1 52%,#102b4640 100%)}.image-interlude .wrap{position:relative}.interlude-title{font-size:clamp(34px,4.5vw,63px);line-height:1.11;letter-spacing:-.045em;font-weight:700;margin:0}.interlude-title>span{color:var(--yellow)}.image-credit{position:absolute;bottom:20px;right:var(--gutter);font-size:9px;letter-spacing:.07em;color:#f2f6f8b0}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:75px}.process-step{position:relative}.process-step::before{content:"";position:absolute;left:0;right:-34px;top:90px;height:1px;background:var(--line)}.process-step:last-child::before{right:0}.step-number{font-size:58px;line-height:1;letter-spacing:-.055em;color:#b0c7d6;font-weight:700;display:block;margin-bottom:31px;transition:color .3s}.process-step:hover .step-number{color:#0d8fae}.step-point{width:9px;height:9px;background:var(--cyan);border-radius:50%;position:relative;margin-bottom:34px;box-shadow:0 0 0 6px var(--white)}.process-step h3{font-size:21px;line-height:1.25;letter-spacing:-.025em;margin-bottom:17px;max-width:200px}.process-step p{font-size:13px;line-height:1.8;color:var(--muted);max-width:250px}.process-cta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:35px;margin-top:50px;gap:25px}.process-cta p{font-size:18px;font-weight:700;letter-spacing:-.02em;margin:0}.showcase{background:var(--cloud)}.showcase-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:28px}.showcase figure{position:relative;border-radius:var(--radius);overflow:hidden;min-height:470px;margin:0;background:var(--navy)}.showcase figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,#102b46ed 100%)}.showcase figure>img{width:100%;height:100%;position:absolute;object-fit:cover;transition:transform 1s var(--ease)}.showcase figure:hover>img{transform:scale(1.035)}.showcase figcaption{position:absolute;bottom:35px;left:35px;right:35px;z-index:1;display:flex;flex-direction:column;color:white}.showcase figcaption>span:first-child{font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.showcase figcaption strong{font-size:26px;letter-spacing:-.025em;line-height:1.2}.image-example{font-size:9px;color:#cad8e1;margin-top:19px}.showcase-small img{object-position:50% 35%}
.about{display:grid;grid-template-columns:1fr 1.05fr;gap:100px;align-items:center}.about-brand{min-height:465px;position:relative;background:var(--cloud);border-radius:var(--radius);overflow:hidden;padding:43px;display:flex;flex-direction:column;justify-content:flex-end}.about-symbol{position:absolute;top:39px;right:32px;width:280px;height:248px;opacity:.10;transform:rotate(-12deg)}.about-place{position:relative;z-index:1;font-size:clamp(42px,4.8vw,70px);font-weight:700;letter-spacing:-.06em;line-height:1;margin-bottom:22px}.about-mark{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);position:relative;z-index:1}.place-dot{width:7px;height:7px;flex:none;background:var(--cyan);border-radius:50%;box-shadow:0 0 0 5px #12b0db18}.about-lines{position:absolute;bottom:0;left:0;right:0;height:16px;background:linear-gradient(45deg,var(--cyan) 0%,var(--cyan) 52%,var(--cloud) 52%,var(--cloud) 55%,var(--yellow) 55%)}.about-copy h2{font-size:clamp(32px,3.25vw,46px)}.about-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--muted)}.person-sign{display:flex;gap:16px;align-items:center;border-top:1px solid var(--line);padding-top:25px;margin-top:31px}.person-monogram{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--yellow);font-size:14px;font-weight:700}.person-sign strong{display:block;font-size:14px}.person-sign>div>span{font-size:10px;color:var(--muted);display:block}.person-sign .round-link{margin-left:auto;font-size:22px}.faq{background:var(--cloud)}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.faq-intro p:not(.eyebrow){font-size:15px;color:var(--muted)}.faq-intro h2{font-size:clamp(35px,3.8vw,50px)}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:16px;font-weight:700;line-height:1.5;padding:25px 0}summary::-webkit-details-marker{display:none}summary>span{position:relative;flex:none;width:20px;height:20px}summary>span::before,summary>span::after{content:"";position:absolute;background:var(--navy);left:3px;top:9px;width:14px;height:1.5px;transition:transform .25s}summary>span::after{transform:rotate(90deg)}details[open] summary>span::after{transform:rotate(0)}summary:hover{color:#087b97}.faq-answer{padding:0 34px 8px 0}.faq-answer p{font-size:14px;line-height:1.85;color:var(--muted)}details[open] .faq-answer{animation:answer-in .35s var(--ease)}
.contact{background:var(--navy);color:var(--white)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.contact-copy{padding-top:20px}.contact h2{font-size:clamp(35px,3.7vw,50px);line-height:1.15}.contact-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#bed0dc;margin:30px 0}.contact-phone{font-size:clamp(24px,2.4vw,33px);font-weight:700;letter-spacing:-.03em;display:flex;align-items:center;gap:30px;width:fit-content;padding:12px 0;border-bottom:1px solid #597086;margin-top:36px}.contact-phone>span{font-size:27px;color:var(--cyan)}.contact-phone:hover{color:var(--yellow)}.contact-email{font-size:15px;display:inline-block;margin:18px 0;color:#c6d6e1}.contact-email:hover{color:var(--yellow)}address{font-size:13px;line-height:1.9;color:#aec3d3;font-style:normal;margin-top:30px}.contact-detail{display:flex;align-items:center;gap:14px;font-size:12px;color:#c6d6e1;margin-top:38px}.contact-detail .icon{color:var(--yellow);width:20px;height:20px}.contact-card{padding:39px;border-radius:var(--radius);background:white;color:var(--navy);min-height:676px}.contact-card-heading{position:relative;padding-right:35px;margin-bottom:26px}.contact-card-heading h3{font-size:30px;letter-spacing:-.04em;margin-bottom:11px}.contact-card-heading p{font-size:12px;color:var(--muted);margin:0}.form-spark{font-size:33px;position:absolute;right:0;top:-5px;color:#0f90ae}.interest-choices{padding:0;margin:0 0 24px;display:flex;gap:8px;flex-wrap:wrap;border:0}.interest-choices legend{font-size:11px;font-weight:700;padding:0;margin-bottom:11px}.interest-choices label{cursor:pointer}.interest-choices input{position:absolute;opacity:0;width:1px;height:1px}.interest-choices label>span{display:block;border:1px solid var(--line);background:white;padding:8px 14px;font-size:11px;border-radius:4px;transition:background .2s,border-color .2s}.interest-choices input:checked+span{background:var(--navy);color:white;border-color:var(--navy)}.interest-choices input:focus-visible+span{outline:3px solid var(--cyan);outline-offset:3px}.interest-choices label:hover>span{border-color:var(--navy)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;margin-bottom:17px}.field>label{font-size:11px;font-weight:700;margin-bottom:8px}.optional{font-weight:400;color:var(--muted);margin-left:5px}.field input,.field textarea{min-width:0;width:100%;font-size:12px;border:1px solid var(--line);border-radius:4px;background:#fff;padding:12px 13px;color:var(--navy);min-height:45px;transition:border-color .2s}.field textarea{resize:none;min-height:102px;line-height:1.6}.field input:hover,.field textarea:hover{border-color:#99b2c4}.field input:focus,.field textarea:focus{border-color:var(--cyan)}.field input::placeholder,.field textarea::placeholder{color:#748795}.field input[aria-invalid=true]{border-color:#ad3542}.field-error{font-size:10px;color:#ad3542;min-height:0}.field-error:not(:empty){padding-top:6px}.form-button{display:flex;width:100%;font-size:13px;margin-top:9px}.form-note{font-size:10px;line-height:1.75;color:var(--muted);margin:14px 0 0}.mail-preview{padding:32px 0}.mail-preview h4{font-size:27px;margin-bottom:25px}.mail-preview>p:not(.form-note){white-space:pre-line;font-size:13px;line-height:1.8;background:var(--cloud);padding:20px;border-radius:5px}.mail-preview .button{width:100%;font-size:12px}.mail-preview>.inline-link{display:block;margin-top:22px}[hidden]{display:none!important}
.site-footer{background:var(--deep);color:white;padding:56px 0 23px}.footer-top{display:flex;align-items:center;gap:100px;padding-bottom:48px;border-bottom:1px solid #29425a}.footer-brand{width:275px;flex:none}.footer-brand img{width:100%;height:auto}.footer-top>p{font-size:14px;color:#b4c6d5;line-height:1.8;letter-spacing:-.015em;margin:0}.back-top{display:grid;place-items:center;width:47px;height:47px;border:1px solid #496277;border-radius:50%;margin-left:auto;font-size:25px;transition:background .25s,color .25s}.back-top:hover{background:var(--yellow);color:var(--navy);border-color:var(--yellow)}.footer-bottom{display:flex;justify-content:space-between;gap:30px;padding-top:24px;font-size:10px;color:#a0b7c9}.footer-bottom>div{display:flex;gap:27px}.footer-link{color:#a0b7c9;border:0;padding:0;background:transparent;font-size:10px}.footer-link:hover{color:var(--yellow)}.preview-tools{position:fixed;right:18px;bottom:16px;z-index:45;display:flex;border:1px solid #fff3;border-radius:6px;box-shadow:0 3px 20px #102b4620;background:#fff;color:var(--navy);overflow:hidden}.preview-tools>button{font-size:10px;border:0;background:#fff;display:flex;align-items:center;gap:8px;min-height:34px;padding:7px 12px;transition:background .2s}.preview-tools>button:hover{background:var(--cloud)}#motion-toggle{border-right:1px solid var(--line)}.motion-icon{font-size:12px;font-weight:700}.preview-info span{padding:1px 4px;border-radius:2px;background:var(--yellow);font-size:9px}.info-dialog{border:0;border-radius:12px;background:white;color:var(--navy);padding:52px;max-width:670px;max-height:calc(100vh - 48px);overflow:auto;width:calc(100% - 40px);box-shadow:0 25px 100px #0005}.info-dialog::backdrop{background:#071a2dda;backdrop-filter:blur(8px)}.info-dialog h2{font-size:33px;line-height:1.17}.info-dialog p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.85}.dialog-close{position:absolute;right:16px;top:12px;width:44px;height:44px;display:grid;place-items:center;background:var(--cloud);border:0;border-radius:50%;font-size:25px;color:var(--navy)}.dialog-close:hover{background:var(--yellow)}.dialog-done{margin-top:15px}.info-dialog[open]{animation:dialog-in .3s var(--ease)}
.js .reveal{opacity:0;transform:translateY(25px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.js .reveal.visible{opacity:1;transform:translateY(0)}.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation-play-state:paused!important}.motion-paused .hero-picture img{will-change:auto}.js .motion-paused .reveal{transition:none;opacity:1;transform:none}.motion-paused .hero-intro,.motion-paused .hero-line,.motion-paused .hero-copy,.motion-paused .hero-actions,.motion-paused .hero-trust{animation:none;opacity:1;transform:none}
@keyframes hero-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes cue{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes ribbon{to{transform:translateX(-50%)}}@keyframes flow{to{stroke-dashoffset:-68}}@keyframes answer-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(min-width:1700px){.hero{min-height:850px}.hero-content{padding-top:100px}.hero h1{font-size:110px}.hero-copy{font-size:18px}.header-inner{min-height:103px}}
@media(max-width:1200px){.main-nav{gap:18px}.brand{width:245px}.header-inner{gap:20px}.main-nav>a:not(.button){font-size:11px}.main-nav .button{font-size:11px;gap:12px;padding:10px 14px}.section{padding-block:95px}.section-heading{gap:40px}.section-heading .intro-copy{max-width:330px}.solution-small{padding:29px;gap:18px}.solution-small h3{font-size:25px}.solution-main-content{padding:32px}.solution-main h3{font-size:39px}.energy-layout{gap:25px}.possibilities,.about,.faq-layout{gap:60px}.contact-layout{gap:50px}.contact-card{padding:30px}.process-steps{gap:25px}.process-step::before{right:-25px}.hero-actions{gap:25px}}
@media(max-width:960px){html{scroll-padding-top:95px}.header-inner{min-height:82px}.brand{width:250px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;box-shadow:0 20px 25px #102b4612;padding:20px var(--gutter) 28px;align-items:stretch;gap:0;max-height:calc(100dvh - 90px);overflow:auto}.main-nav.open{display:flex;flex-direction:column}.main-nav>a:not(.button){font-size:17px;padding:16px 0;border-bottom:1px solid var(--line)}.main-nav>a.button{margin-top:20px;font-size:14px;min-height:49px;max-width:340px}.hero{min-height:775px}.hero-content{padding-top:72px}.hero h1{font-size:82px}.hero-shade{background:linear-gradient(90deg,#0b2136f0 0%,#0b2136c2 45%,#0b21362e 100%),linear-gradient(0deg,#102b46a8,transparent 65%)}.hero-picture img{object-position:59% 50%}.section-heading{align-items:start;gap:30px}.section-heading .intro-copy{max-width:310px;font-size:14px;padding-top:47px}.solution-grid{gap:20px}.solution-side{gap:20px}.solution-main{min-height:655px}.solution-small{padding:25px;display:block}.service-icon{margin-bottom:13px}.service-icon .icon{width:27px;height:27px}.solution-main h3{font-size:35px}.solution-main p{padding-right:0}.solution-main .round-link{position:relative;bottom:auto;right:auto;margin-top:24px;width:42px;height:42px}.energy-layout{grid-template-columns:1.15fr 1fr;gap:20px}.energy-tab{padding:18px 10px}.energy-tab small{font-size:10px}.time-symbol{margin-right:8px;width:29px}.energy-heading h2{font-size:43px}.energy-stage{align-self:start;margin-top:37px}.energy-description{min-height:195px}.possibilities{gap:50px}.possibility-intro .text-link{font-size:12px;gap:14px}.process-steps{grid-template-columns:1fr 1fr;gap:40px}.process-step::before{right:0}.process-step p,.process-step h3{max-width:100%}.process-cta p{font-size:16px}.process-cta .button{font-size:12px;gap:15px}.showcase figure{min-height:410px}.showcase figcaption{left:26px;right:26px;bottom:29px}.showcase figcaption strong{font-size:23px}.about{gap:45px}.about-brand{min-height:425px;padding:29px}.about-place{font-size:49px}.about-mark{font-size:10px;gap:8px}.about-symbol{width:230px}.faq-layout{grid-template-columns:.85fr 1.15fr;gap:45px}.faq-intro h2{font-size:38px}summary{font-size:14px}.contact-layout{gap:35px}.contact-card{padding:25px}.contact h2{font-size:38px}.form-row{grid-template-columns:1fr;gap:0}.contact-card{min-height:730px}.footer-top{gap:60px}.footer-brand{width:250px}}
@media(max-width:700px){:root{--gutter:24px}.section{padding-block:76px}.hero{min-height:750px}.hero-content{padding-top:63px;padding-bottom:45px}.hero h1{font-size:clamp(53px,10.8vw,75px);margin-bottom:29px;line-height:1.03}.hero-intro{font-size:10px;margin-bottom:27px}.hero-copy{font-size:14px;max-width:390px}.hero-copy br{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:21px}.hero-actions .button{font-size:13px;min-height:54px}.hero-actions .text-link{font-size:12px}.hero-trust{font-size:9px;gap:19px;margin-top:30px}.hero-trust .icon{width:14px;height:14px}.hero-bottom{padding-bottom:28px}.hero-location{display:none}.hero-shade{background:linear-gradient(90deg,#0b2136e8 0%,#0b2136b0 57%,#0b21368c 100%),linear-gradient(0deg,#102b46ce,transparent 70%)}.hero-picture img{object-position:57% 50%}.brand-ribbon{padding:18px 0}.ribbon-track{gap:34px;font-size:12px;letter-spacing:.08em}.ribbon-track b{font-size:19px}.section-heading{flex-direction:column;align-items:flex-start;gap:25px;margin-bottom:36px}.section-heading .intro-copy{padding:0;max-width:100%;font-size:15px}.eyebrow{font-size:10px;margin-bottom:19px;gap:10px}h2{font-size:39px;line-height:1.13}.solution-grid{grid-template-columns:1fr;gap:20px}.solution-main{min-height:485px}.solution-main-content{padding:28px}.solution-main h3{font-size:36px}.solution-main p{max-width:100%;font-size:14px}.solution-main .round-link{position:absolute;bottom:30px;right:25px}.solution-main p{padding-right:46px}.solution-side{gap:18px}.solution-small{padding:28px;display:flex;gap:22px}.service-icon .icon{width:30px;height:30px}.solution-small h3{font-size:26px}.solution-small p{font-size:13px}.solution-foot{flex-wrap:wrap;gap:12px;font-size:11px}.solution-foot>p{flex:1}.solution-foot>a{margin-left:40px}.energy-heading h2{font-size:38px}.energy-layout{grid-template-columns:1fr;gap:35px}.energy-stage{margin:0;min-height:0}.energy-svg{width:calc(100% + 26px);margin-left:-13px}.energy-caption{margin-top:3px;font-size:11px}.energy-controls{max-width:100%}.energy-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:0;border:1px solid var(--dark-line);border-radius:6px;overflow:hidden}.energy-tab{padding:18px 9px;display:flex;flex-direction:column;text-align:center;border-bottom:0;border-right:1px solid var(--dark-line);gap:8px;align-items:center}.energy-tab:last-child{border-right:0}.energy-tab strong{font-size:13px}.energy-tab small{font-size:9px;line-height:1.6}.time-symbol{margin-right:0;line-height:1}.tab-arrow{display:none}.energy-description{min-height:125px;margin-top:24px}.energy-description p{font-size:13px}.diagram-note{margin-top:15px}.possibilities{grid-template-columns:1fr;gap:47px}.possibility-intro>p:not(.eyebrow){font-size:15px;max-width:100%}.possibility-intro .text-link{font-size:13px}.benefit{padding-block:26px}.benefit h3{font-size:23px}.benefit p{font-size:14px}.image-interlude{height:385px}.interlude-title{font-size:37px}.interlude-title br{display:none}.interlude-title span{display:block;margin-top:5px}.process-steps{grid-template-columns:1fr;gap:0;margin-top:43px}.process-step{padding:0 0 31px 53px;margin:0}.process-step::before{left:13px;top:8px;bottom:0;right:auto;width:1px;height:auto}.process-step:last-child::before{bottom:50px}.step-number{font-size:26px;margin-bottom:14px}.step-point{position:absolute;left:9px;top:8px;width:9px;height:9px;margin:0}.process-step h3{font-size:23px;margin-bottom:13px}.process-step p{font-size:14px;margin:0}.process-cta{flex-direction:column;align-items:flex-start;margin-top:20px;padding-top:27px;gap:25px}.process-cta p{font-size:17px}.process-cta .button{font-size:13px}.showcase-grid{grid-template-columns:1fr;gap:22px}.showcase figure{min-height:370px}.showcase-small{min-height:360px!important}.showcase figcaption strong{font-size:25px}.about{grid-template-columns:1fr;gap:43px}.about-brand{min-height:330px;padding:32px}.about-symbol{top:23px;width:215px;height:190px}.about-place{font-size:57px}.about-mark{font-size:11px}.about-copy h2{font-size:37px}.about-copy>p:not(.eyebrow){font-size:15px}.faq-layout{grid-template-columns:1fr;gap:40px}.faq-intro h2{font-size:39px}.faq-intro>p:not(.eyebrow){font-size:15px}.faq-intro .text-link{font-size:15px}summary{font-size:16px;padding-block:23px}.faq-answer p{font-size:14px}.contact-layout{grid-template-columns:1fr;gap:44px}.contact-copy{padding-top:0}.contact h2{font-size:39px}.contact-copy>p:not(.eyebrow){font-size:15px;margin:25px 0}.contact-phone{font-size:30px;margin-top:22px}.contact-email{font-size:15px}.contact-detail{margin-top:25px}.contact-card{padding:28px;min-height:0}.contact-card-heading h3{font-size:29px}.form-row{grid-template-columns:1fr;gap:0}.field input,.field textarea{font-size:14px;padding:13px;min-height:47px}.field>label{font-size:12px}.interest-choices legend{font-size:12px}.interest-choices label>span{font-size:12px}.form-button{min-height:55px}.form-note{font-size:11px}.footer-top{gap:30px;flex-wrap:wrap;padding-bottom:30px;align-items:center}.footer-brand{width:225px}.footer-top>p{order:3;width:100%;font-size:14px}.back-top{margin-left:auto;flex:none}.site-footer{padding-top:42px;padding-bottom:72px}.footer-bottom{flex-direction:column;gap:19px;font-size:11px}.footer-bottom>div{gap:22px}.footer-link{font-size:11px}.preview-tools{right:10px;bottom:10px}.info-dialog{padding:42px 26px 32px}.info-dialog h2{font-size:27px}.info-dialog p:not(.eyebrow){font-size:13px}}
@media(max-width:380px){:root{--gutter:20px}.brand{width:200px}.hero{min-height:740px}.hero h1{font-size:clamp(43px,13.5vw,50px)}.hero-trust{gap:14px;font-size:8px}.hero-actions .button{gap:20px}.solution-small{padding:24px;gap:14px}.solution-small h3{font-size:23px}.solution-main p{font-size:13px}.contact-card{padding:23px}.contact-phone{font-size:27px}.contact h2{font-size:35px}.footer-brand{width:211px}.about-mark{font-size:10px}.about-place{font-size:51px}.energy-tab strong{font-size:11px}.energy-tab small{font-size:8px}.contact-card-heading p{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.hero-picture img{will-change:auto}.hero-intro,.hero-line,.hero-copy,.hero-actions,.hero-trust{opacity:1;transform:none}}
@media(forced-colors:active){:root{--scroll-thumb:ButtonText;--scroll-track:Canvas;--scroll-hover:Highlight}.button,.energy-tab,.interest-choices label>span{border:1px solid ButtonText}.energy-flow{stroke:Highlight}.hero-shade{background:#102b46}.live-dot,.step-point{forced-color-adjust:none}}
