:root{--black:#060708;--carbon:#15181b;--graphite:#272b30;--white:#f3f3f0;--muted:#b4b8bd;--red:#c51f2a;color-scheme:dark;font-family:Manrope,Arial,sans-serif;color:var(--white);background:var(--black)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--white);outline-offset:6px}.symbols{position:absolute;width:0;height:0}.skip{position:fixed;left:20px;top:-90px;z-index:100;background:var(--white);color:var(--black);padding:15px}.skip:focus{top:15px}.header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;inset:0 0 auto;z-index:10;border-bottom:1px solid #ffffff20}.brand{display:flex;align-items:center;gap:19px}.logo{display:block;position:relative;overflow:hidden;width:148px;height:42px}.logo img{position:absolute;width:200px;height:200px;max-width:none;left:-26px;top:-82px}.brand-energy{font-size:12px;letter-spacing:.28em;border-left:1px solid #ffffff50;padding-left:18px}.header nav{display:flex;gap:32px;font-size:14px}.header nav a:hover{color:#fff;border-bottom:1px solid var(--red)}.header-location{font-size:12px;letter-spacing:.15em}.hero{min-height:780px;height:100svh;max-height:1150px;position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero-film{position:absolute;inset:0 0 0 49%;z-index:-2}.hero-film video{width:100%;height:100%;object-fit:cover;object-position:center 50%}.film-shade{position:absolute;inset:0;background:linear-gradient(90deg,var(--black),#06070815 45%),linear-gradient(0deg,#060708b0,transparent 40%,#06070855)}.hero-copy{width:64%;padding:155px 0 140px 7%;}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:600;display:flex;align-items:center;gap:14px;margin:0 0 32px}.eyebrow>span{width:30px;height:2px;background:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-weight:400;font-size:clamp(24px,2.35vw,36px);line-height:1.45;max-width:720px;margin-bottom:28px}h1 strong{font-family:Michroma,sans-serif;display:block;font-size:clamp(36px,4.15vw,65px);font-weight:400;line-height:1.2;letter-spacing:-.045em;margin-top:12px}.hero-message{font-size:18px;line-height:1.7;color:#d8dadc}.contact-actions{display:flex;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 25px;border:1px solid #f3f3f070;background:#06070835;font-size:14px;font-weight:600;min-width:152px;transition:background .2s,border-color .2s}.button:hover{background:var(--red);border-color:var(--red)}svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.5;fill:none;flex-shrink:0}.hero-bottom{position:absolute;bottom:35px;left:7%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:25px}.discover{font-size:11px;letter-spacing:.17em;display:flex;align-items:center;gap:28px}.discover span{font-size:24px}.slogan{font-size:11px;letter-spacing:.14em}.video-toggle{font-size:12px;color:var(--white);padding:10px 13px;border:1px solid #ffffff60;background:#06070850;cursor:pointer}.section-wrap{padding:110px 7%}.section-caption{display:flex;gap:15px;align-items:baseline;font-size:12px;letter-spacing:.14em;flex-shrink:0}.section-caption p{margin:0}.index{color:#ec5a62;letter-spacing:.06em}.about{display:grid;grid-template-columns:1fr 2.5fr;gap:40px;border-bottom:1px solid var(--graphite)}h2{font-family:Michroma,sans-serif;font-weight:400;line-height:1.45;font-size:clamp(25px,2.6vw,40px);letter-spacing:-.035em}.about h2 span{color:var(--muted)}.about-text{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:40px;color:var(--muted);font-size:16px;line-height:1.85}.about-text p{margin:0}.section-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:55px}.section-heading h2{margin:0;width:50%}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.service-visual{height:370px;position:relative;overflow:hidden;background:var(--carbon)}.service-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 65%,#060708a0)}.service-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.55);transition:transform .7s}.service:hover img{transform:scale(1.035)}.service:nth-child(2) .service-visual img{object-position:center 45%;filter:saturate(.85)}.image-label{position:absolute;bottom:20px;left:22px;font-size:11px;letter-spacing:.16em;z-index:1}.service-text{border-top:2px solid var(--red);padding:25px 0 0;position:relative}.service-num{position:absolute;right:0;top:26px;font-size:12px;color:var(--muted)}h3{font-family:Michroma,sans-serif;font-size:20px;line-height:1.55;font-weight:400;letter-spacing:-.02em;margin:0 25px 18px 0}.service-text p{font-size:15px;color:var(--muted);line-height:1.8;max-width:330px;margin:0}.territory{position:relative;display:grid;grid-template-columns:1fr 2.5fr;gap:40px;background:var(--carbon);overflow:hidden;isolation:isolate;border-top:1px solid var(--graphite);border-bottom:1px solid var(--graphite)}.territory-origin{font-size:12px;letter-spacing:.14em;margin-bottom:25px;color:var(--muted)}.territory h2{font-size:clamp(30px,3.3vw,50px);line-height:1.35}.territory h2 span{color:var(--white);text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:2px;text-underline-offset:12px}.territory-content>p:last-child{font-size:16px;color:var(--muted);line-height:1.8;margin-bottom:0}.territory-mark{position:absolute;right:3%;bottom:6%;font-size:clamp(130px,22vw,340px);font-weight:700;line-height:1;color:#ffffff04;z-index:-1;letter-spacing:-.08em}.territory-mark span{display:block;font-size:11px;letter-spacing:.12em;color:#747a81;text-align:right;padding-right:12px}.closing{min-height:700px;position:relative;isolation:isolate;display:flex;align-items:center;padding:100px 7%;overflow:hidden}.closing-photo{position:absolute;inset:0 0 0 auto;width:65%;height:100%;object-fit:cover;object-position:50% 42%;z-index:-3;filter:saturate(.3)}.closing-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#060708 18%,#060708d0 45%,#06070850),linear-gradient(0deg,#06070860,transparent)}.closing h2{font-size:clamp(30px,3.5vw,52px);line-height:1.4;margin-bottom:25px}.closing-copy>p:not(.eyebrow){font-size:17px;color:#d8dadc;line-height:1.8}.email-address{display:inline-block;margin-top:24px;font-size:14px;border-bottom:1px solid #747a81;padding-bottom:5px}footer{padding:45px 7% 125px;border-top:1px solid var(--graphite);display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:35px;align-items:start;font-size:13px;color:var(--muted)}footer strong{color:var(--white);font-size:16px;letter-spacing:.15em}footer p{margin:12px 0 0;line-height:1.7}.footer-details{display:flex;flex-direction:column;gap:12px}.footer-slogan{font-size:11px;letter-spacing:.1em;margin:0}.contact-dock{position:fixed;right:28px;bottom:22px;display:flex;z-index:20;background:#15181bef;border:1px solid #747a8170;box-shadow:0 5px 25px #0005;backdrop-filter:blur(14px)}.contact-dock a{display:flex;gap:10px;align-items:center;justify-content:center;padding:15px 20px;font-size:13px;min-width:140px}.contact-dock a+a{border-left:1px solid #747a8170}.contact-dock a:hover{background:var(--graphite)}
@media(min-width:1500px){.hero-copy{width:60%}.service-visual{height:440px}}
@media(max-width:1000px){.header{height:90px}.header-location{display:none}.hero{min-height:740px}.hero-copy{width:76%}h1 strong{font-size:44px}.hero-film{left:40%}.section-wrap{padding:80px 6%}.about,.territory{grid-template-columns:1fr;gap:35px}.section-heading h2{width:60%}.service-grid{gap:18px}.service-visual{height:300px}h3{font-size:17px}.slogan{display:none}footer{grid-template-columns:1fr 1fr}.footer-slogan{grid-column:1/-1}}
@media(max-width:650px){html{scroll-padding-top:20px}.header{height:90px;padding:0 24px}.brand-energy{font-size:10px;padding-left:12px}.brand{gap:12px}.header nav{display:none}.hero{height:auto;min-height:850px;min-height:100svh;max-height:none;align-items:end;padding-top:145px;padding-bottom:110px}.hero-film{inset:0}.hero-film video{object-position:center 30%}.film-shade{background:linear-gradient(0deg,#060708 0%,#060708e0 22%,#06070865 65%,#06070875)}.hero-copy{padding:100px 24px 38px;width:100%}.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:24px}h1{font-size:22px;max-width:450px}h1 strong{font-size:clamp(29px,7.8vw,47px);line-height:1.35;letter-spacing:-.045em;margin-top:15px}.hero-message{font-size:16px}.contact-actions{gap:10px;margin-top:25px;flex-wrap:wrap}.button{padding:14px 18px;min-width:140px;flex:1;max-width:210px}.hero-bottom{bottom:84px;left:24px;right:24px}.discover{font-size:10px;gap:12px}.video-toggle{font-size:11px}.section-wrap{padding:66px 24px}.section-caption{font-size:10px}.about,.territory{gap:28px}h2{font-size:25px;line-height:1.55}.about-text{grid-template-columns:1fr;gap:18px;margin-top:28px;font-size:16px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{width:100%;margin-top:25px}.service-grid{grid-template-columns:1fr;gap:40px}.service-visual{height:390px}.service-text{padding-top:22px}h3{font-size:21px}.service-text p{max-width:100%;font-size:16px}.territory h2{font-size:29px}.territory-origin{font-size:10px}.territory-mark{right:20px;bottom:25px;font-size:150px}.territory-mark span{display:none}.closing{padding:70px 24px;min-height:660px}.closing-photo{width:100%;object-position:45% center}.closing-shade{background:linear-gradient(90deg,#060708da,#06070875),linear-gradient(0deg,#060708,transparent 60%)}.closing h2{font-size:29px}.closing-copy>p:not(.eyebrow){font-size:16px}.email-address{font-size:13px}footer{padding:35px 24px 120px;grid-template-columns:1fr;gap:25px}.contact-dock{left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));}.contact-dock a{flex:1;min-width:0;font-size:14px;padding:15px 12px}.footer-slogan{grid-column:auto}}
.logo{mix-blend-mode:screen}.video-toggle{position:absolute;right:0;bottom:65px}@media(max-width:650px){.video-toggle{bottom:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.service:hover img{transform:none}}
