:root{--sg-cream-50:#fefaf2;--sg-cream-100:#fdf5eb;--sg-cream-200:#f6ecdc;--sg-cream-300:#ecdcc2;--sg-navy-900:#0f1c26;--sg-navy-800:#1b2e3e;--sg-navy-700:#2c445a;--sg-navy-600:#415c75;--sg-navy-500:#5a7890;--sg-navy-200:#dbe5ec;--sg-navy-100:#eef3f7;--sg-orange-700:#a94524;--sg-orange-600:#cb5632;--sg-orange-500:#dc6d46;--sg-orange-400:#e78a69;--sg-orange-300:#f1ad94;--sg-orange-100:#fbe6db;--sg-ochre:#c58a3a;--sg-moss:#5a6b48;--fg-1:var(--sg-navy-800);--fg-2:var(--sg-navy-700);--fg-3:var(--sg-navy-500);--fg-accent:var(--sg-orange-600);--fg-on-dark:var(--sg-cream-100);--fg-on-accent:var(--sg-cream-100);--bg-1:var(--sg-cream-100);--bg-2:var(--sg-cream-50);--border-1:var(--sg-navy-200);--font-sans:'Helvetica Neue',Arial,'DIN Pro','DIN Next',sans-serif;--fs-h2:clamp(28px,3.2vw,42px);--fs-body-lg:18px;--fw-medium:500;--fw-bold:700;--lh-heading:1.08;--lh-loose:1.7;--ls-tight:-.01em;--ls-button:.04em;--radius-sm:4px;--radius-md:6px;--shadow-md:0 4px 12px rgba(27,46,62,.08),0 2px 4px rgba(27,46,62,.04);--ease-out:cubic-bezier(.22,.61,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
html,body{margin:0;padding:0;background:var(--bg-1);font-family:var(--font-sans);color:var(--fg-1);text-rendering:optimizeLegibility}
h1,h2,h3,p{margin:0}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
::selection{background:#f7cfbf;color:var(--sg-navy-900)}
.container{max-width:1200px;margin:0 auto;padding-left:clamp(28px,4vw,56px);padding-right:clamp(28px,4vw,56px)}
.brand{font-weight:700;letter-spacing:.04em;font-size:17px;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px;color:var(--fg-1)}
.brand-mark{width:28px;height:28px;background:var(--sg-navy-800);position:relative;transform:skewX(-12deg);display:inline-block}
.brand-mark::after{content:'';position:absolute;inset:0;background-image:linear-gradient(135deg,transparent 35%,var(--sg-orange-500) 35%,var(--sg-orange-500) 65%,transparent 65%);opacity:.95}
.brand .strand{color:var(--fg-accent)}
.on-dark .brand{color:var(--fg-on-dark)}
.on-dark .brand-mark{background:var(--sg-orange-600)}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-sans);font-size:14px;font-weight:500;letter-spacing:var(--ls-button);padding:14px 22px;border-radius:var(--radius-sm);border:1.5px solid transparent;transition:all 140ms var(--ease-out);white-space:nowrap;cursor:pointer}
.btn.lg{padding:16px 28px;font-size:16px}
.btn.primary{background:var(--sg-orange-600);color:var(--fg-on-accent);border-color:var(--sg-orange-600)}
.btn.primary:hover{background:var(--sg-orange-700);border-color:var(--sg-orange-700)}
.btn.secondary{background:transparent;color:var(--fg-1);border-color:var(--sg-navy-800)}
.btn.secondary:hover{background:var(--sg-navy-800);color:var(--fg-on-dark)}
.btn.secondary.on-dark{color:var(--fg-on-dark);border-color:rgba(253,245,235,.55);background:rgba(255,255,255,.1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.btn.secondary.on-dark:hover{background:var(--fg-on-dark);color:var(--sg-navy-800);border-color:var(--fg-on-dark)}
.eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--fg-accent);display:inline-flex;align-items:center;gap:12px;margin-bottom:24px}
.eyebrow::before{content:'';width:32px;height:1.5px;background:var(--sg-orange-600)}
.eyebrow.recolor{color:#bd5d3d;margin-bottom:14px}
.eyebrow.recolor::before{background:#bd5d3d}
.icn{width:16px;height:16px;display:inline-block;transition:transform 180ms var(--ease-out)}
.hero{position:relative;min-height:720px;background:var(--sg-navy-900);overflow:hidden;color:var(--fg-on-dark);display:flex;flex-direction:column;padding-bottom:32px;margin-bottom:32px}
.hero-image{position:absolute;inset:0;background:url('assets/hero-wind-farm.jpg') center 30%/cover no-repeat,#0f1c26}
.hero-image::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,rgba(253,245,235,.025) 0 1px,transparent 1px 96px),repeating-linear-gradient(0deg,rgba(253,245,235,.025) 0 1px,transparent 1px 96px);opacity:.35}
.nav{position:absolute;top:20px;left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:1200px;z-index:3;box-sizing:border-box;padding:10px clamp(16px,2vw,24px);display:flex;align-items:center;background:transparent;backdrop-filter:blur(28px) saturate(70%) brightness(1.18);-webkit-backdrop-filter:blur(28px) saturate(70%) brightness(1.18);border:1px solid rgba(255,255,255,.28);border-radius:9999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -1px 0 rgba(255,255,255,.1)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%}
.nav .brand,.nav .nav-links a,.nav .nav-meta{color:#fff}
.nav-links{display:flex;gap:6px;font-size:13px;font-weight:500}
.nav-links a{padding:7px 16px;border-radius:9999px;background:transparent;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out)}
.nav-links a:hover{background:rgba(255,255,255,.12);color:var(--sg-orange-300)}
.nav-links a.is-active{background:rgba(255,255,255,.22);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}
.nav-meta{font-size:13px}
.hero-content{position:relative;z-index:2;flex:1 1 auto;display:flex;padding:120px 0 56px}
.hero-content .container{width:calc(100% - 32px);max-width:1200px;margin-left:auto;margin-right:auto;padding-left:clamp(16px,2vw,24px);padding-right:clamp(16px,2vw,24px);flex:1 1 auto;display:flex;flex-direction:column;justify-content:space-between;gap:clamp(48px,8vh,120px)}
.hero-top{display:flex;flex-direction:column;gap:18px}
.hero-top h1{font-size:clamp(48px,6.4vw,92px);font-weight:700;line-height:.94;letter-spacing:-.018em;text-transform:uppercase;color:#fff;margin:0;max-width:none;white-space:nowrap}
.hero-top h1 .pop{color:var(--sg-orange-400)}
.hero-bottom{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:end}
.hero-lead-wrap{display:flex;flex-direction:column;align-items:flex-start}
.hero-lead{font-size:19px;line-height:1.6;color:#fff;max-width:56ch;margin:0}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:flex-end;margin:0}
.services{padding:120px 0 132px;background:var(--bg-1);border-bottom:1px solid var(--border-1)}
.services-head{max-width:760px;margin:0 auto 56px;text-align:center}
.services-head .eyebrow{justify-content:center}
.services-head h2{font-size:var(--fs-h2);font-weight:var(--fw-bold);line-height:var(--lh-heading);letter-spacing:var(--ls-tight);color:var(--fg-1);margin:0 0 18px}
.services-lead{font-size:var(--fs-body-lg);line-height:var(--lh-loose);color:var(--fg-2);margin:0}
.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.card{position:relative;border-radius:22px;padding:36px 38px 32px;min-height:380px;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;isolation:isolate;transition:transform 240ms var(--ease-out),box-shadow 240ms var(--ease-out)}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.card-status{display:inline-flex;align-items:center;gap:10px;background:var(--bg-1);padding:8px 16px 8px 12px;border-radius:999px;font-size:12.5px;font-weight:500;color:var(--fg-1);width:max-content;position:relative;z-index:2;box-shadow:0 1px 2px rgba(27,46,62,.04)}
.card-status .dot{width:10px;height:10px;border-radius:999px;background:currentColor;display:inline-block}
.card-body{align-self:end;max-width:56%;position:relative;z-index:2;margin-top:36px}
.card-body h3{font-size:clamp(36px,3.4vw,48px);font-weight:var(--fw-bold);line-height:1.02;letter-spacing:-.015em;color:var(--fg-1);margin:0 0 16px}
.card-body p{font-size:15.5px;line-height:1.55;color:var(--fg-2);margin:0}
.card-cta{align-self:end;margin-top:28px;display:inline-flex;align-items:center;gap:12px;font-size:14.5px;font-weight:700;letter-spacing:.02em;color:var(--fg-1);width:max-content;position:relative;z-index:2;padding-bottom:6px;border-bottom:1.5px solid var(--fg-1);transition:gap 180ms var(--ease-out)}
.card-cta:hover{gap:18px}
.card-cta:hover .icn{transform:translateX(2px)}
.card-shape{position:absolute;top:-8%;right:-6%;width:52%;height:116%;z-index:1;pointer-events:none;display:flex;align-items:center;justify-content:center}
.card-shape svg{width:100%;height:100%;overflow:visible}
.card.tint-orange{background:var(--sg-orange-100);color:var(--sg-orange-600)}
.card.tint-orange .card-status{color:var(--sg-orange-700)}
.card.tint-orange .card-status .dot{background:var(--sg-orange-600)}
.card.tint-orange .card-body h3,.card.tint-orange .card-cta{color:var(--sg-navy-900)}
.card.tint-orange .card-cta{border-bottom-color:var(--sg-navy-900)}
.card.tint-slate{background:var(--sg-navy-100);color:var(--sg-navy-600)}
.card.tint-slate .card-status{color:var(--sg-navy-800)}
.card.tint-slate .card-status .dot{background:var(--sg-navy-800)}
.card.tint-slate .card-body h3,.card.tint-slate .card-cta{color:var(--sg-navy-900)}
.card.tint-slate .card-cta{border-bottom-color:var(--sg-navy-900)}
.card.tint-ochre{background:#f3e6c8;color:var(--sg-ochre)}
.card.tint-ochre .card-status{color:#7a5418}
.card.tint-ochre .card-status .dot{background:var(--sg-ochre)}
.card.tint-ochre .card-body h3,.card.tint-ochre .card-cta{color:var(--sg-navy-900)}
.card.tint-ochre .card-cta{border-bottom-color:var(--sg-navy-900)}
.card.tint-moss{background:#e3ead4;color:var(--sg-moss)}
.card.tint-moss .card-status{color:#3f4d33}
.card.tint-moss .card-status .dot{background:var(--sg-moss)}
.card.tint-moss .card-body h3,.card.tint-moss .card-cta{color:var(--sg-navy-900)}
.card.tint-moss .card-cta{border-bottom-color:var(--sg-navy-900)}
@media(max-width:900px){.services-grid{grid-template-columns:1fr}.card{min-height:340px;padding:28px 28px 24px}.card-body{max-width:64%}}
@media(max-width:820px){.hero-bottom{grid-template-columns:1fr;gap:24px}.hero-ctas{justify-content:flex-start}.hero-top h1{white-space:normal;font-size:clamp(40px,9vw,64px)}.nav-links,.nav-meta{display:none}}
@media(max-width:560px){.card-body{max-width:100%}.card-shape{opacity:.55;width:60%}}
