.gs-solar-fullpage { margin: 0; }
.gs-solar-site {
  --solar-navy:#06172e; --solar-blue:#0b5fff; --solar-yellow:#ffd43b; --solar-white:#f7fbff;
  position:relative; width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); overflow:clip; background:var(--solar-white); color:var(--solar-navy);
  font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif; line-height:1.4; isolation:isolate;
}
.gs-solar-site, .gs-solar-site * { box-sizing:border-box; }
.gs-solar-site a { color:inherit; text-decoration:none; }
.gs-solar-site button,.gs-solar-site input,.gs-solar-site select { font:inherit; }
.gs-solar-site button,.gs-solar-site a { -webkit-tap-highlight-color:transparent; }
.gs-solar-site ::selection { background:var(--solar-yellow); color:var(--solar-navy); }
.gs-skip-link { position:fixed; top:1rem; left:1rem; z-index:10000; transform:translateY(-160%); background:var(--solar-yellow); color:var(--solar-navy); padding:.75rem 1rem; border-radius:.5rem; font-weight:800; }
.gs-skip-link:focus { transform:translateY(0); }

.gs-sun-cursor { position:fixed; top:-18px; left:-18px; z-index:99999; width:36px; height:36px; pointer-events:none; display:grid; place-items:center; filter:drop-shadow(0 0 10px rgba(255,212,59,.75)); transition:width .18s,height .18s,margin .18s,color .18s; color:var(--solar-yellow); }
.gs-sun-cursor svg { width:100%; height:100%; animation:gs-cursor-spin 9s linear infinite; }
.gs-sun-cursor::after { content:""; width:6px; height:6px; background:#fff; border-radius:50%; position:absolute; box-shadow:0 0 14px var(--solar-yellow); }
.gs-sun-cursor.is-active { width:48px; height:48px; margin:-6px; color:#fff; }
@keyframes gs-cursor-spin { to { transform:rotate(360deg); } }
@media (pointer:fine) { body.gs-solar-cursor-active,body.gs-solar-cursor-active * { cursor:none!important; } }

.gs-site-header { position:fixed; inset:0 0 auto; z-index:1000; height:86px; padding:0 clamp(1rem,4vw,4.5rem); display:grid; grid-template-columns:1fr auto 1fr; align-items:center; color:#fff; background:linear-gradient(180deg,rgba(3,15,31,.9),rgba(3,15,31,.3) 75%,transparent); }
body.admin-bar .gs-site-header { top:32px; }
.gs-brand-lockup { display:flex; align-items:center; gap:.72rem; width:max-content; }
.gs-brand-logo { width:46px; height:46px; border-radius:12px; overflow:hidden; background:#eef0f2; border:1px solid rgba(255,255,255,.4); box-shadow:0 8px 22px rgba(0,0,0,.15); }
.gs-brand-logo img { width:100%; height:100%; object-fit:contain; display:block; }
.gs-brand-words { display:grid; line-height:1; }
.gs-brand-words strong { font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; font-size:1.55rem; letter-spacing:.05em; }
.gs-brand-words small { margin-top:.27rem; font-size:.68rem; font-weight:750; letter-spacing:.04em; opacity:.84; }
.gs-main-nav { display:flex; align-items:center; gap:2rem; font-size:.83rem; font-weight:750; letter-spacing:.035em; }
.gs-main-nav a { position:relative; padding:.8rem 0; color:rgba(255,255,255,.78); transition:color .25s; }
.gs-main-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:.5rem; height:2px; background:var(--solar-yellow); transition:right .28s; }
.gs-main-nav a:hover,.gs-main-nav a:focus-visible { color:#fff; }
.gs-main-nav a:hover::after,.gs-main-nav a:focus-visible::after { right:0; }
.gs-header-actions { display:flex; justify-content:flex-end; align-items:center; gap:.75rem; }
.gs-sound-toggle,.gs-menu-toggle { border:1px solid rgba(255,255,255,.2); background:rgba(6,23,46,.44); color:#fff; border-radius:999px; height:42px; padding:0 .85rem; display:flex; align-items:center; gap:.5rem; backdrop-filter:blur(12px); transition:background .2s,transform .2s; }
.gs-sound-toggle:hover,.gs-menu-toggle:hover { background:rgba(255,255,255,.14); transform:translateY(-2px); }
.gs-sound-toggle svg { width:17px; }
.gs-sound-toggle span { font-size:.74rem; font-weight:750; }
.gs-header-cta { display:flex; align-items:center; gap:.55rem; height:44px; padding:0 1.05rem 0 1.2rem; border-radius:999px; background:var(--solar-yellow); color:var(--solar-navy); font-size:.8rem; font-weight:850; transition:transform .25s,box-shadow .25s; }
.gs-header-cta svg { width:17px; }
.gs-header-cta:hover { transform:translateY(-3px); box-shadow:0 12px 30px rgba(255,212,59,.22); }
.gs-menu-toggle { display:none; width:42px; padding:0; justify-content:center; }

.gs-hero { position:relative; min-height:760px; height:100svh; display:flex; align-items:center; color:#fff; isolation:isolate; background:var(--solar-navy); }
.gs-hero-image,.gs-hero-overlay,.gs-hero-grid { position:absolute; inset:0; width:100%; height:100%; }
.gs-hero-image { object-fit:cover; z-index:-4; animation:gs-hero-zoom 18s ease-out both; }
.gs-hero-overlay { z-index:-3; background:linear-gradient(90deg,rgba(2,13,29,.96),rgba(2,13,29,.84) 36%,rgba(2,13,29,.34) 67%,rgba(2,13,29,.12)),linear-gradient(0deg,rgba(3,16,33,.8),transparent 40%); }
.gs-hero-grid { z-index:-2; opacity:.16; background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px); background-size:76px 76px; mask-image:linear-gradient(90deg,#000,transparent 64%); }
@keyframes gs-hero-zoom { from { transform:scale(1.07); } to { transform:scale(1); } }
.gs-hero-content { width:min(760px,76vw); margin-left:clamp(1.2rem,8vw,9rem); padding-top:3rem; }
.gs-eyebrow { margin:0 0 1.2rem; display:flex; align-items:center; gap:.65rem; color:var(--solar-yellow); font-size:.72rem; font-weight:900; letter-spacing:.2em; text-transform:uppercase; }
.gs-eyebrow.gs-dark { color:var(--solar-blue); }
.gs-live-dot { width:7px; height:7px; border-radius:50%; background:var(--solar-yellow); box-shadow:0 0 0 6px rgba(255,212,59,.12); animation:gs-live-pulse 2s ease-out infinite; }
@keyframes gs-live-pulse { 50% { box-shadow:0 0 0 12px rgba(255,212,59,0); } }
.gs-hero h1 { margin:0; max-width:790px; font-size:clamp(4.2rem,8.3vw,8.8rem); letter-spacing:-.068em; line-height:.78; font-weight:950; text-transform:uppercase; }
.gs-hero h1 span { display:block; }
.gs-hero h1 em { display:block; margin-top:.19em; color:var(--solar-yellow); font-family:"Snell Roundhand","Segoe Script","Brush Script MT",cursive; font-size:.66em; letter-spacing:-.035em; font-weight:500; text-transform:none; transform:rotate(-2deg); transform-origin:left; text-shadow:0 0 36px rgba(255,212,59,.2); }
.gs-hero-content>p { max-width:650px; margin:2.25rem 0 0; font-size:clamp(1rem,1.5vw,1.2rem); line-height:1.7; color:rgba(255,255,255,.75); }
.gs-hero-actions { display:flex; flex-wrap:wrap; gap:.85rem; margin-top:2rem; }
.gs-button-primary,.gs-button-ghost { min-height:54px; padding:0 1.4rem; border-radius:999px; display:flex; align-items:center; gap:.75rem; font-size:.86rem; font-weight:850; transition:transform .25s,box-shadow .25s,background .25s; }
.gs-button-primary { background:var(--solar-yellow); color:var(--solar-navy); }
.gs-button-primary:hover { transform:translateY(-4px); box-shadow:0 15px 35px rgba(255,212,59,.25); }
.gs-button-primary svg,.gs-button-ghost svg { width:18px; }
.gs-button-ghost { background:rgba(255,255,255,.07); color:#fff; border:1px solid rgba(255,255,255,.24); backdrop-filter:blur(12px); }
.gs-button-ghost:hover { transform:translateY(-4px); background:rgba(255,255,255,.13); }
.gs-hero-meta { position:absolute; right:clamp(1rem,4vw,4rem); bottom:3.7rem; display:flex; align-items:center; gap:.9rem; font-size:.66rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.7); writing-mode:vertical-rl; }
.gs-hero-meta i { width:1px; height:25px; background:rgba(255,255,255,.36); }
.gs-scroll-cue { position:absolute; left:50%; bottom:1.4rem; width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.25); border-radius:50%; animation:gs-bob 2s ease-in-out infinite; }
.gs-scroll-cue svg { width:16px; }
@keyframes gs-bob { 50% { transform:translateY(6px); } }
.gs-hero-sun { position:absolute; right:7.5%; top:21%; width:132px; height:132px; border-radius:50%; border:1px solid rgba(255,212,59,.4); opacity:.7; }
.gs-hero-sun span { position:absolute; border-radius:50%; border:1px solid rgba(255,212,59,.18); inset:-22px; animation:gs-solar-orbit 8s linear infinite; }
.gs-hero-sun span:nth-child(2) { inset:-48px; animation-duration:13s; animation-direction:reverse; }
.gs-hero-sun span:nth-child(3) { inset:40%; background:var(--solar-yellow); border:0; box-shadow:0 0 42px var(--solar-yellow); }
@keyframes gs-solar-orbit { to { transform:rotate(360deg); } }

.gs-stats-band { display:grid; grid-template-columns:repeat(4,1fr); background:var(--solar-yellow); color:var(--solar-navy); padding:0 clamp(1rem,5vw,5rem); }
.gs-stats-band>div { min-height:152px; padding:2rem clamp(1rem,3vw,3rem); display:grid; align-content:center; border-right:1px solid rgba(6,23,46,.18); }
.gs-stats-band>div:last-child { border-right:0; }
.gs-stats-band strong { font-size:clamp(2.3rem,4vw,4.2rem); line-height:1; font-weight:950; letter-spacing:-.06em; }
.gs-stats-band span { margin-top:.65rem; font-size:.72rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.gs-section { padding:clamp(5.5rem,10vw,10rem) clamp(1.2rem,6vw,7rem); }
.gs-section-heading,.gs-calculator-heading { max-width:1280px; margin:0 auto 3.8rem; display:grid; grid-template-columns:1.4fr .8fr; gap:5rem; align-items:end; }
.gs-section h2,.gs-contact-section h2 { margin:0; font-size:clamp(2.8rem,5.6vw,6.2rem); line-height:.91; letter-spacing:-.065em; font-weight:950; }
.gs-section-heading>p,.gs-calculator-heading>p { margin:0; font-size:1.02rem; line-height:1.75; color:#64748b; }

.gs-services-section { background:var(--solar-white); }
.gs-services-grid { max-width:1280px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(6,23,46,.14); border-left:1px solid rgba(6,23,46,.14); }
.gs-service-card { position:relative; min-height:350px; padding:2rem; display:flex; flex-direction:column; justify-content:space-between; border:0; border-right:1px solid rgba(6,23,46,.14); border-bottom:1px solid rgba(6,23,46,.14); background:rgba(255,255,255,.74); outline:none; overflow:hidden; transition:color .38s,transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s; }
.gs-service-card::before { content:""; position:absolute; inset:100% 0 0; background:var(--solar-blue); transition:inset .42s cubic-bezier(.2,.8,.2,1); z-index:0; }
.gs-service-card>* { position:relative; z-index:1; }
.gs-service-card:hover,.gs-service-card:focus-visible { color:#fff; transform:translateY(-9px); box-shadow:0 26px 60px rgba(6,23,46,.18); z-index:3; }
.gs-service-card:hover::before,.gs-service-card:focus-visible::before { inset:0; }
.gs-service-card-top { display:flex; justify-content:space-between; align-items:center; }
.gs-service-card-top span { font-size:.72rem; font-weight:900; letter-spacing:.14em; opacity:.55; }
.gs-service-card-top svg { width:38px; height:38px; stroke-width:1.25; color:var(--solar-blue); transition:color .3s,transform .3s; }
.gs-service-card:hover .gs-service-card-top svg,.gs-service-card:focus-visible .gs-service-card-top svg { color:var(--solar-yellow); transform:scale(1.16) rotate(-7deg); }
.gs-service-card h3 { margin:0 0 1rem; max-width:300px; font-size:1.45rem; line-height:1.08; letter-spacing:-.035em; }
.gs-service-card p { margin:0; color:#65758a; line-height:1.68; font-size:.92rem; transition:color .3s; }
.gs-service-card:hover p,.gs-service-card:focus-visible p { color:rgba(255,255,255,.72); }
.gs-service-arrow { position:absolute!important; right:1.4rem; bottom:1.3rem; width:20px; opacity:0; transform:translateX(-8px); transition:opacity .3s,transform .3s; }
.gs-service-card:hover .gs-service-arrow,.gs-service-card:focus-visible .gs-service-arrow { opacity:1; transform:translateX(0); }

.gs-scale-section { background:var(--solar-navy); color:#fff; display:grid; grid-template-columns:.9fr 1.1fr; gap:6vw; }
.gs-scale-intro { position:sticky; top:140px; align-self:start; max-width:600px; }
.gs-scale-intro>p:not(.gs-eyebrow) { margin:1.8rem 0 0; max-width:520px; color:rgba(255,255,255,.62); line-height:1.75; }
.gs-scale-line { margin-top:3.2rem; display:flex; align-items:center; width:85%; }
.gs-scale-line span { width:11px; height:11px; border-radius:50%; border:2px solid var(--solar-yellow); }
.gs-scale-line span:nth-child(2),.gs-scale-line span:nth-child(3) { margin-left:29%; }
.gs-scale-line span:nth-child(4) { margin-left:auto; background:var(--solar-yellow); box-shadow:0 0 16px var(--solar-yellow); }
.gs-scale-cards { display:grid; gap:1rem; }
.gs-scale-card { min-height:250px; padding:clamp(1.6rem,3vw,2.7rem); display:grid; grid-template-columns:auto 1fr; column-gap:1.8rem; align-content:center; border:1px solid rgba(255,255,255,.12); background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.02)); border-radius:1.4rem; transition:transform .35s,border-color .35s,background .35s; }
.gs-scale-card:hover { transform:translateX(-12px); border-color:rgba(255,212,59,.6); background:linear-gradient(135deg,rgba(11,95,255,.22),rgba(255,255,255,.03)); }
.gs-scale-icon { grid-row:1/5; width:66px; height:66px; border-radius:50%; background:var(--solar-yellow); color:var(--solar-navy); display:grid; place-items:center; }
.gs-scale-icon svg { width:28px; }
.gs-scale-card>span { color:var(--solar-yellow); font-size:.72rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.gs-scale-card h3 { margin:.7rem 0 .6rem; font-size:2rem; letter-spacing:-.045em; }
.gs-scale-card p { margin:0; max-width:520px; color:rgba(255,255,255,.62); line-height:1.65; }

.gs-calculator-section { background:#eef4fa; }
.gs-calculator-shell { max-width:1280px; margin:0 auto; display:grid; grid-template-columns:.95fr 1.05fr; background:#fff; border-radius:1.5rem; box-shadow:0 30px 90px rgba(6,23,46,.12); overflow:hidden; }
.gs-calculator-controls,.gs-calculator-result { padding:clamp(1.5rem,4vw,4rem); }
.gs-calculator-controls { display:grid; align-content:center; gap:2.4rem; }
.gs-calc-field { display:grid; gap:1rem; }
.gs-calc-label-row { display:flex; justify-content:space-between; gap:1rem; align-items:baseline; }
.gs-calc-label-row label { font-size:.77rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; color:#627188; }
.gs-calc-label-row strong { font-size:1.25rem; letter-spacing:-.03em; }
.gs-range { width:100%; height:7px; appearance:none; border:0; border-radius:99px; background:linear-gradient(90deg,var(--solar-blue) 0 var(--gs-progress,30%),#dae4ee var(--gs-progress,30%)); outline:none; }
.gs-range::-webkit-slider-thumb { appearance:none; width:22px; height:22px; border:5px solid #fff; border-radius:50%; background:var(--solar-yellow); box-shadow:0 0 0 2px var(--solar-blue),0 6px 15px rgba(11,95,255,.24); }
.gs-range::-moz-range-thumb { width:12px; height:12px; border:5px solid #fff; border-radius:50%; background:var(--solar-yellow); box-shadow:0 0 0 2px var(--solar-blue),0 6px 15px rgba(11,95,255,.24); }
.gs-range-ends { display:flex; justify-content:space-between; color:#8b9aae; font-size:.68rem; font-weight:700; }
.gs-calculator-mini-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.gs-number-control { padding:1rem; border:1px solid #dce5ef; border-radius:.8rem; display:grid; gap:.6rem; }
.gs-number-control>span:first-child { color:#738196; font-size:.73rem; font-weight:800; }
.gs-number-input-wrap { display:flex; align-items:baseline; gap:.35rem; }
.gs-number-input-wrap input { width:80px; border:0; outline:0; padding:0; background:transparent; color:var(--solar-navy); font-size:1.18rem; font-weight:900; }
.gs-number-input-wrap small { color:#8592a4; font-size:.73rem; }
.gs-calculate-button { min-height:54px; border:0; border-radius:.8rem; padding:0 1.1rem; background:var(--solar-navy); color:#fff; display:flex; align-items:center; justify-content:center; gap:.7rem; font-weight:850; transition:transform .25s,background .25s; }
.gs-calculate-button:hover { transform:translateY(-3px); background:var(--solar-blue); }
.gs-calculate-button svg { width:18px; }
.gs-calculate-button svg:last-child { margin-left:auto; }
.gs-calculator-result { position:relative; background:var(--solar-blue); color:#fff; overflow:hidden; }
.gs-calculator-result.gs-pulse { animation:gs-result-in .45s ease both; }
.gs-calculator-result::before { content:""; position:absolute; width:360px; height:360px; right:-110px; top:-150px; border-radius:50%; background:var(--solar-yellow); opacity:.14; }
.gs-calculator-result::after { content:""; position:absolute; inset:0; opacity:.08; background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px); background-size:42px 42px; pointer-events:none; }
@keyframes gs-result-in { from { opacity:.75; transform:scale(.985); } }
.gs-result-topline,.gs-capacity-result,.gs-result-grid,.gs-calc-disclaimer { position:relative; z-index:1; }
.gs-result-topline { display:flex; align-items:center; gap:.55rem; font-size:.7rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; color:var(--solar-yellow); }
.gs-result-topline svg { width:17px; }
.gs-capacity-result { display:grid; grid-template-columns:auto 1fr; gap:1.7rem; align-items:center; padding:2.2rem 0; }
.gs-power-ring { width:138px; height:138px; border-radius:50%; display:grid; place-items:center; background:conic-gradient(var(--solar-yellow) 0 var(--ring-progress,0deg),rgba(255,255,255,.14) var(--ring-progress,0deg)); position:relative; }
.gs-power-ring::before { content:""; position:absolute; inset:8px; border-radius:50%; background:var(--solar-blue); }
.gs-power-ring div { position:relative; text-align:center; display:grid; }
.gs-power-ring strong { font-size:2.6rem; line-height:.9; letter-spacing:-.06em; }
.gs-power-ring span { margin-top:.35rem; font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.12em; color:var(--solar-yellow); }
.gs-capacity-result>div:last-child>span { color:rgba(255,255,255,.57); font-size:.7rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.gs-capacity-result h3 { margin:.45rem 0; font-size:1.55rem; letter-spacing:-.035em; }
.gs-capacity-result p { margin:0; color:rgba(255,255,255,.66); font-size:.86rem; line-height:1.55; }
.gs-result-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid rgba(255,255,255,.18); border-left:1px solid rgba(255,255,255,.18); }
.gs-result-grid>div { min-height:91px; padding:1rem; display:grid; align-content:center; border-right:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
.gs-result-grid span { color:rgba(255,255,255,.56); font-size:.67rem; font-weight:750; text-transform:uppercase; letter-spacing:.06em; }
.gs-result-grid strong { margin-top:.35rem; font-size:1rem; }
.gs-calc-disclaimer { margin:1.2rem 0 0; color:rgba(255,255,255,.52); font-size:.68rem; line-height:1.55; }

.gs-process-section { background:var(--solar-white); display:grid; grid-template-columns:.8fr 1.2fr; gap:7vw; }
.gs-process-copy { align-self:center; }
.gs-process-copy>p:not(.gs-eyebrow) { margin:1.5rem 0 0; color:#67768a; line-height:1.75; }
.gs-process-promise { margin-top:2rem; padding:1.2rem; display:flex; align-items:center; gap:1rem; border:1px solid #dce5ef; border-radius:1rem; background:#fff; }
.gs-process-promise>svg { color:var(--solar-blue); width:28px; }
.gs-process-promise span { display:grid; gap:.25rem; }
.gs-process-promise small { color:#758398; }
.gs-process-steps { display:grid; }
.gs-process-steps article { min-height:130px; padding:1.5rem 0; display:grid; grid-template-columns:58px 1fr auto; align-items:center; gap:1rem; border-bottom:1px solid #dce5ef; transition:padding .25s,color .25s; }
.gs-process-steps article:hover { padding-left:1rem; color:var(--solar-blue); }
.gs-process-steps article>span { font-size:.72rem; font-weight:900; color:var(--solar-blue); }
.gs-process-steps h3 { margin:0 0 .38rem; font-size:1.4rem; letter-spacing:-.035em; }
.gs-process-steps p { margin:0; color:#728095; }
.gs-process-steps article>svg { width:22px; color:var(--solar-blue); opacity:.45; }

.gs-contact-section { position:relative; overflow:hidden; padding:clamp(5.5rem,10vw,10rem) clamp(1.2rem,7vw,8rem); display:grid; grid-template-columns:1fr .78fr; gap:8vw; align-items:center; background:var(--solar-navy); color:#fff; }
.gs-contact-section::before { content:""; position:absolute; width:540px; height:540px; border:1px solid rgba(255,212,59,.16); border-radius:50%; left:-250px; top:-220px; box-shadow:0 0 0 70px rgba(255,212,59,.025),0 0 0 140px rgba(255,212,59,.02); }
.gs-contact-glow { position:absolute; width:480px; height:480px; right:-150px; bottom:-220px; border-radius:50%; background:var(--solar-blue); filter:blur(110px); opacity:.28; }
.gs-contact-copy,.gs-contact-form { position:relative; z-index:1; }
.gs-contact-copy>p:not(.gs-eyebrow) { max-width:650px; margin:1.8rem 0 0; color:rgba(255,255,255,.65); line-height:1.75; }
.gs-contact-details { display:flex; flex-wrap:wrap; gap:1.4rem; margin-top:2rem; color:rgba(255,255,255,.72); }
.gs-contact-details a,.gs-contact-details div { display:flex; align-items:center; gap:.55rem; font-size:.8rem; font-weight:750; }
.gs-contact-details svg { width:17px; color:var(--solar-yellow); }
.gs-contact-form { padding:clamp(1.4rem,3vw,2.4rem); display:grid; gap:1rem; border:1px solid rgba(255,255,255,.13); border-radius:1.4rem; background:rgba(255,255,255,.06); backdrop-filter:blur(20px); }
.gs-contact-form label { display:grid; gap:.5rem; }
.gs-contact-form label>span { font-size:.68rem; font-weight:850; letter-spacing:.09em; text-transform:uppercase; color:rgba(255,255,255,.58); }
.gs-contact-form input,.gs-contact-form select { height:52px; width:100%; padding:0 1rem; border:1px solid rgba(255,255,255,.17); border-radius:.7rem; outline:0; background:rgba(255,255,255,.07); color:#fff; transition:border-color .2s,background .2s; }
.gs-contact-form select option { color:var(--solar-navy); }
.gs-contact-form input::placeholder { color:rgba(255,255,255,.35); }
.gs-contact-form input:focus,.gs-contact-form select:focus { border-color:var(--solar-yellow); background:rgba(255,255,255,.1); }
.gs-contact-form button { min-height:54px; margin-top:.4rem; border:0; border-radius:.7rem; padding:0 1.2rem; display:flex; align-items:center; justify-content:center; gap:.7rem; background:var(--solar-yellow); color:var(--solar-navy); font-weight:900; transition:transform .25s,box-shadow .25s; }
.gs-contact-form button:hover { transform:translateY(-3px); box-shadow:0 16px 32px rgba(255,212,59,.18); }
.gs-contact-form button svg { width:18px; }
.gs-site-footer { min-height:150px; padding:2rem clamp(1.2rem,6vw,7rem); background:#020b16; color:#fff; display:grid; grid-template-columns:1fr auto 1fr; gap:2rem; align-items:center; }
.gs-footer-brand .gs-brand-logo { width:40px; height:40px; }
.gs-site-footer>p { margin:0; font-size:.72rem; text-transform:uppercase; letter-spacing:.11em; color:rgba(255,255,255,.42); }
.gs-site-footer>div { display:flex; justify-content:flex-end; gap:1.2rem; font-size:.72rem; color:rgba(255,255,255,.48); }
.gs-site-footer>div a { color:var(--solar-yellow); }

[data-gs-reveal] { opacity:0; transform:translateY(28px); transition:opacity .75s,transform .75s cubic-bezier(.2,.8,.2,1); }
[data-gs-reveal].is-visible { opacity:1; transform:translateY(0); }
.gs-services-grid [data-gs-reveal]:nth-child(2),.gs-scale-cards [data-gs-reveal]:nth-child(2),.gs-process-steps [data-gs-reveal]:nth-child(2) { transition-delay:.08s; }
.gs-services-grid [data-gs-reveal]:nth-child(3),.gs-scale-cards [data-gs-reveal]:nth-child(3),.gs-process-steps [data-gs-reveal]:nth-child(3) { transition-delay:.16s; }
.gs-services-grid [data-gs-reveal]:nth-child(4),.gs-process-steps [data-gs-reveal]:nth-child(4) { transition-delay:.24s; }
.gs-services-grid [data-gs-reveal]:nth-child(5) { transition-delay:.32s; }
.gs-services-grid [data-gs-reveal]:nth-child(6) { transition-delay:.4s; }

@media (max-width:1050px) {
  .gs-site-header { grid-template-columns:1fr auto; }
  .gs-main-nav { position:fixed; inset:86px 1rem auto; padding:1rem; border-radius:1rem; display:none; flex-direction:column; align-items:stretch; gap:.2rem; background:rgba(3,15,31,.97); border:1px solid rgba(255,255,255,.12); box-shadow:0 25px 70px rgba(0,0,0,.34); }
  .gs-main-nav.is-open { display:flex; } .gs-main-nav a { padding:.9rem 1rem; } .gs-main-nav a::after { display:none; }
  .gs-menu-toggle { display:flex; } .gs-header-cta { display:none; } .gs-services-grid { grid-template-columns:repeat(2,1fr); }
  .gs-scale-section,.gs-process-section { grid-template-columns:1fr; } .gs-scale-intro { position:static; }
  .gs-calculator-shell { grid-template-columns:1fr; } .gs-contact-section { grid-template-columns:1fr; }
}
@media (max-width:720px) {
  body.admin-bar .gs-site-header { top:46px; }
  .gs-site-header { height:72px; padding:0 1rem; } .gs-main-nav { top:72px; }
  .gs-brand-logo { width:40px; height:40px; border-radius:10px; } .gs-brand-words strong { font-size:1.28rem; } .gs-brand-words small { font-size:.58rem; }
  .gs-sound-toggle { width:40px; padding:0; justify-content:center; } .gs-sound-toggle span { display:none; }
  .gs-hero { min-height:700px; height:100svh; } .gs-hero-image { object-position:60% center; }
  .gs-hero-overlay { background:linear-gradient(90deg,rgba(2,13,29,.94),rgba(2,13,29,.62)),linear-gradient(0deg,rgba(2,13,29,.9),transparent 55%); }
  .gs-hero-content { width:auto; margin:0 1.2rem; padding-top:1.5rem; } .gs-hero h1 { font-size:clamp(3.55rem,17vw,5.6rem); line-height:.82; }
  .gs-hero-content>p { font-size:.96rem; line-height:1.6; } .gs-hero-actions { display:grid; grid-template-columns:1fr; }
  .gs-button-primary,.gs-button-ghost { justify-content:center; } .gs-hero-meta,.gs-hero-sun { display:none; }
  .gs-stats-band { grid-template-columns:repeat(2,1fr); padding:0; } .gs-stats-band>div { min-height:120px; padding:1.4rem; border-bottom:1px solid rgba(6,23,46,.18); }
  .gs-stats-band>div:nth-child(2) { border-right:0; } .gs-stats-band strong { font-size:2.35rem; }
  .gs-section-heading,.gs-calculator-heading { grid-template-columns:1fr; gap:1.3rem; margin-bottom:2.5rem; }
  .gs-section h2,.gs-contact-section h2 { font-size:clamp(2.75rem,13vw,4.4rem); } .gs-services-grid { grid-template-columns:1fr; }
  .gs-service-card { min-height:290px; } .gs-scale-card { grid-template-columns:1fr; } .gs-scale-icon { grid-row:auto; margin-bottom:1.4rem; }
  .gs-calculator-controls,.gs-calculator-result { padding:1.35rem; } .gs-calculator-mini-grid,.gs-capacity-result,.gs-result-grid { grid-template-columns:1fr; }
  .gs-power-ring { width:120px; height:120px; } .gs-process-steps article { grid-template-columns:45px 1fr; } .gs-process-steps article>svg { display:none; }
  .gs-contact-details { display:grid; } .gs-site-footer { grid-template-columns:1fr; text-align:center; justify-items:center; }
  .gs-site-footer>div { justify-content:center; flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) {
  .gs-solar-site *,.gs-solar-site *::before,.gs-solar-site *::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  [data-gs-reveal] { opacity:1; transform:none; } .gs-sun-cursor { display:none; }
}
