/* STRAIGHT LINE – eigenständiger Designentwurf, komplett ohne externe Bibliotheken. */
:root{--ink:#090a0e;--ink-soft:#101218;--surface:#15171d;--surface-alt:#1b1d24;--line:#303138;--line-light:#46484f;--white:#f4f4f0;--muted:#9fa0a7;--lime:#d9ff59;--violet:#aa8aff;--max:1400px;--pad:clamp(22px,5.2vw,88px);--display:Impact,'Arial Narrow','Arial Black',sans-serif;--sans:Arial,Helvetica,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;color:var(--white);background:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
::selection{background:var(--lime);color:var(--ink)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
svg{display:block;width:24px;height:24px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
.svg-sprite{position:absolute!important;width:0!important;height:0!important;overflow:hidden;pointer-events:none}
:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.wrap{width:100%;max-width:calc(var(--max) + 2*var(--pad));padding-inline:var(--pad);margin-inline:auto}
.skip-link{position:fixed;z-index:110;top:-100px;left:12px;padding:12px 20px;background:var(--lime);color:var(--ink);font-weight:800}
.skip-link:focus{top:10px}
.period{color:var(--lime)}

/* HEADER */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .25s,border-color .25s,box-shadow .25s;border-bottom:1px solid transparent}
.site-header.is-scrolled,.site-header.is-open{background:rgba(9,10,14,.95);border-color:#303039;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 10px 50px #05050a77}
.header-inner{min-height:101px;display:flex;align-items:center;justify-content:space-between;gap:34px}
.brand{display:inline-flex;align-items:center;gap:12px;position:relative;flex-shrink:0}
.brand-symbol{position:relative;width:39px;height:41px;transform:skew(-16deg);display:flex;gap:5px;overflow:hidden}
.brand-symbol span{height:35px;align-self:center;width:15px;background:var(--lime);clip-path:polygon(0 0,100% 0,53% 48%,100% 48%,25% 100%,0 100%,46% 47%,0 47%)}
.brand-symbol span:nth-child(2){transform:translateY(1px)}
.brand-type{display:flex;flex-direction:column;gap:0;line-height:1}
.brand-type strong{font-size:24px;font-weight:1000;letter-spacing:-1.7px;white-space:nowrap;line-height:1}
.brand-type strong span{color:var(--lime)}
.brand-type small{font-size:9px;font-weight:900;letter-spacing:2.25px;margin-top:7px;color:#c4c5c8}
.main-nav{display:flex;align-items:center;gap:clamp(15px,2.4vw,34px);margin-left:auto}
.main-nav>a{color:#e5e5e7;font-size:12px;font-weight:800;letter-spacing:.55px;position:relative;transition:color .18s}
.main-nav>a:after{content:'';position:absolute;bottom:-7px;left:0;width:0;height:2px;background:var(--lime);transition:width .18s}
.main-nav>a:hover,.main-nav>a.is-current{color:var(--lime)}
.main-nav>a:hover:after,.main-nav>a.is-current:after{width:100%}
.main-nav .nav-mobile-cta{display:none}
.header-cta{background:var(--lime);color:#101312;display:inline-flex;align-items:center;gap:16px;padding:16px 19px;font-size:10px;font-weight:1000;letter-spacing:1.1px;transition:transform .2s,background .2s;white-space:nowrap}
.header-cta:hover{background:#edffad;transform:translateY(-2px)}
.header-cta svg{height:16px;width:16px;stroke-width:2.4}
.menu-toggle{display:none;width:43px;height:43px;border:1px solid #55585b;background:#1b1d24;color:var(--white);place-items:center}
.menu-toggle svg{height:22px;width:22px}
.menu-toggle .menu-close-icon{display:none}

/* HERO */
.hero{min-height:770px;height:min(940px,100svh);height:max(760px,min(950px,100svh));position:relative;overflow:hidden;isolation:isolate;background:#090a0f}
.hero-stage-art{position:absolute;inset:0;background-image:url('assets/hero-stage.svg');background-repeat:no-repeat;background-size:cover;background-position:center 50%;z-index:-4;transform:scale(1.01)}
.hero-grid{position:absolute;inset:0;z-index:-3;opacity:.36;background-image:linear-gradient(90deg,transparent 0 98%,rgba(224,223,248,.13) 98% 100%),linear-gradient(transparent 0 98%,rgba(224,223,248,.07) 98% 100%);background-size:130px 130px;mask-image:linear-gradient(to right,black,transparent 56%)}
.hero-shadow{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#08090ef5 0%,#08090eef 20%,#08090eb0 41%,#0a0a1430 69%,#09091310 100%),linear-gradient(0deg,#07080f 0%,transparent 25%,transparent 65%,#06080f55 100%)}
.hero:after{content:'';position:absolute;right:-15%;bottom:-57%;width:70vw;height:56vw;max-width:1000px;max-height:800px;border:1px solid rgba(212,255,88,.18);border-radius:50%;pointer-events:none}
.hero-content{height:100%;position:relative;display:flex;align-items:center;padding-top:90px;padding-bottom:98px}
.hero-copy{position:relative;max-width:800px;padding-top:10px}
.eyebrow{font-size:11px;font-weight:900;letter-spacing:2.3px}
.hero-eyebrow{display:flex;align-items:center;gap:13px;color:#fff;margin:0 0 21px;white-space:nowrap}
.pulse-dot{width:9px;height:9px;flex-shrink:0;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(216,255,89,.11),0 0 20px var(--lime);animation:glow 2.6s infinite}
.hero-edition{font-size:9px;letter-spacing:1.5px;color:#a8a9b1}
.hero h1{font-family:var(--display);font-weight:900;font-size:clamp(86px,10.6vw,166px);line-height:.91;letter-spacing:-1.1px;margin:0;white-space:nowrap;text-shadow:0 8px 50px #08090d40}
.hero h1 em{font-style:normal;color:var(--lime);letter-spacing:-2px}
.hero h1 .period{color:var(--white)}
.hero-subline{display:flex;align-items:flex-start;gap:19px;margin-top:34px}
.hero-line{display:block;width:39px;height:2px;margin-top:12px;background:var(--lime);flex-shrink:0}
.hero-subline p{margin:0;color:#d1d0d7;font-size:14px;line-height:1.9;max-width:550px}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:34px}
.btn{min-height:56px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:11px;letter-spacing:1px;font-weight:1000;transition:background .2s,color .2s,transform .2s,border-color .2s}
.btn:hover{transform:translateY(-3px)}
.btn svg{width:18px;height:18px;stroke-width:2.5}
.btn-lime{background:var(--lime);color:var(--ink)}
.btn-lime:hover{background:#eeffbd}
.btn-outline{border:1px solid #b6b8bd80;color:var(--white);background:#17172060}
.btn-outline:hover{border-color:var(--lime);color:var(--lime);background:#10121c}
.hero-side-note{position:absolute;right:calc(var(--pad) - 13px);top:47%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:2.4px;font-weight:900;color:#c0b8d9}
.hero-side-note span{color:var(--lime)}
.hero-bottomline{position:absolute;bottom:26px;left:var(--pad);right:var(--pad);border-top:1px solid #aaa1bc48;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:9px;font-weight:800;letter-spacing:1.8px;color:#c9c7d2}
.hero-bottomline>span:first-child{display:flex;gap:12px;align-items:center}
.hero-bottom-square{background:var(--lime);width:8px;height:8px;display:block;transform:rotate(45deg)}
.hero-bottom-center{color:#8e8a9b}
.scroll-hint{display:inline-flex;align-items:center;gap:16px;transition:color .2s}
.scroll-hint:hover{color:var(--lime)}
.scroll-hint span{font-size:23px;font-weight:400;line-height:.6;color:var(--lime)}
@keyframes glow{50%{box-shadow:0 0 0 8px rgba(216,255,89,.05),0 0 35px var(--lime)}}

/* TICKER */
.ticker{overflow:hidden;background:var(--lime);height:66px;display:flex;align-items:center;color:#0e1414;border-block:1px solid #edffb1}
.ticker-inner{display:flex;gap:36px;white-space:nowrap;width:max-content;animation:marquee 30s linear infinite}
.ticker-inner>span{font-family:var(--display);font-size:31px;letter-spacing:1px;line-height:1}
.ticker b{font-family:var(--sans);font-size:19px;vertical-align:4px;margin:0 18px}
@keyframes marquee{to{transform:translateX(-50%)}}

/* SHARED */
.section{padding-block:clamp(90px,11vw,152px)}
.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:45px}
.section-kicker{font-size:11px;letter-spacing:2.5px;font-weight:900;color:#a6a7ac;margin:0 0 23px}
.section-kicker span{color:var(--lime)}
.display-heading{font-family:var(--display);font-size:clamp(52px,6.8vw,96px);line-height:.99;letter-spacing:-.6px;margin:0;font-weight:900}
.display-heading span{color:var(--lime)}
.section-intro{max-width:350px;margin:0 0 4px;line-height:1.95;font-size:15px;color:#babac2}
.text-link{display:inline-flex;align-items:center;gap:16px;padding-block:6px 12px;border-bottom:2px solid var(--lime);color:var(--lime);font-size:11px;font-weight:1000;letter-spacing:1.2px;transition:gap .2s}
.text-link:hover{gap:27px}
.text-link svg{width:18px;height:18px;stroke-width:2.2}

/* SERVICES */
.services-section{background:#0d0f14;position:relative;overflow:hidden}
.services-section:before{content:'';position:absolute;left:-180px;top:-200px;width:650px;height:650px;background:radial-gradient(circle,#46306c33,transparent 70%);pointer-events:none}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.service-card{position:relative;height:clamp(310px,29vw,390px);isolation:isolate;overflow:hidden;background:#161b27;border:1px solid #ffffff1b;transition:border-color .28s,transform .28s}
.service-card:hover{border-color:#d9ff596d;transform:translateY(-5px)}
.service-card:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,#0b0d15 0%,#0b0e17c9 25%,transparent 76%),linear-gradient(90deg,#10111a98,transparent 65%)}
.service-card img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s ease}
.service-card:hover img{transform:scale(1.07)}
.service-tag{position:absolute;top:22px;left:27px;padding:7px 10px;border:1px solid #f0f0fc70;font-size:10px;font-weight:900;letter-spacing:1.8px;color:#efeff8;background:#18192377}
.service-card-content{position:absolute;inset:auto 25px 22px 29px}
.service-icon{width:28px;height:28px;color:var(--lime);stroke-width:1.8;margin-bottom:13px}
.service-card h3{font-family:var(--display);font-size:clamp(30px,3.25vw,45px);line-height:1.03;letter-spacing:.3px;margin:0;max-width:470px}
.service-card h3 span{color:var(--lime)}
.service-card p{margin:11px 68px 0 0;color:#d4d5df;font-size:13px;line-height:1.6}
.round-link{position:absolute;right:0;bottom:0;width:48px;height:48px;border-radius:50%;background:var(--lime);color:#101316;display:grid;place-items:center;transition:transform .22s,background .22s}
.round-link:hover{transform:rotate(45deg);background:#ecffb6}
.round-link svg{width:21px;height:21px;stroke-width:2.2}
.service-footer-note{border-top:1px solid #ffffff31;padding-top:22px;margin-top:22px;display:flex;align-items:flex-start;gap:13px;color:#c0c1c8;font-size:10px;font-weight:800;letter-spacing:1.5px}
.service-footer-note span{color:var(--lime);font-size:26px;line-height:.6;font-weight:400}

/* STRONG TYPOGRAPHIC BREAK */
.statement-section{background:#d9ff59;color:#101414;overflow:hidden;position:relative}
.statement-inner{position:relative;min-height:385px;padding-top:82px;padding-bottom:70px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.statement-inner>p{font-size:12px;line-height:1.7;letter-spacing:2.1px;font-weight:1000;margin:0;align-self:center;min-width:170px}
.statement-inner h2{font-family:var(--display);font-size:clamp(85px,11.6vw,162px);font-weight:900;line-height:.83;letter-spacing:-1px;margin:0 auto 0 0;position:relative;z-index:2}
.statement-inner h2 span{color:transparent;-webkit-text-stroke:2px #0f1717}
.statement-inner h2 .period{color:#101414}
.statement-circle{position:absolute;right:-125px;top:-95px;width:470px;height:470px;border:1px solid rgba(10,15,17,.15);border-radius:50%;display:grid;place-items:center}
.statement-circle:before,.statement-circle:after{content:'';position:absolute;inset:45px;border:1px solid rgba(10,15,17,.18);border-radius:50%}
.statement-circle:after{inset:95px}
.statement-circle span{color:#1116141a;font-family:var(--display);font-size:280px;letter-spacing:-30px;transform:rotate(-15deg)}

/* ABOUT */
.about-section{background:#f2f1ec;color:#121319}
.about-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(45px,8vw,135px);align-items:center}
.about-section .section-kicker{color:#6b6c6e}
.about-section .section-kicker span{color:#596517}
.about-copy .display-heading{font-size:clamp(51px,6.1vw,86px)}
.about-copy .display-heading span{color:#7672c9}
.about-lead{font-size:20px;line-height:1.55;font-weight:800;margin:31px 0 17px;max-width:540px}
.about-copy>p:not(.section-kicker):not(.about-lead){font-size:15px;line-height:1.9;color:#51545a;max-width:520px}
.about-copy .text-link{color:#25252b;border-color:#7f67d3;margin-top:22px}
.about-visual{position:relative;min-height:600px;background:radial-gradient(circle at 70% 16%,#46338375,transparent 60%),linear-gradient(145deg,#171825,#080b10);color:var(--white);display:flex;flex-direction:column;justify-content:space-between;padding:30px 34px;box-shadow:28px 28px 0 #d8d8d5;overflow:hidden}
.about-visual:after{position:absolute;inset:0;content:'';background-image:linear-gradient(#ffffff0d 1px,transparent 1px),linear-gradient(90deg,#ffffff0d 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(135deg,black,transparent 70%);pointer-events:none}
.about-visual-top,.about-visual-bottom{display:flex;justify-content:space-between;gap:15px;color:#b4b5c5;font-size:9px;font-weight:800;letter-spacing:1.6px;z-index:1}
.about-visual-top>span:last-child{color:var(--lime)}
.about-visual-main{position:relative;z-index:1;margin-top:8px}
.about-visual-main>span{display:block;font-family:var(--display);font-size:34px;color:#9991d4;line-height:.8}
.about-visual-main strong{font-family:var(--display);font-size:clamp(115px,12vw,190px);letter-spacing:-4px;line-height:.9;display:block;font-weight:900}
.about-visual-main strong span{color:var(--lime)}
.about-visual-main p{letter-spacing:2px;font-weight:900;line-height:1.7;font-size:12px;margin-top:22px}
.about-eq{position:absolute;bottom:97px;right:24px;height:120px;display:flex;align-items:end;gap:4px;opacity:.65}
.about-eq span{width:8px;background:#b799ff;height:15%;animation:equalize 3s ease-in-out infinite alternate}
.about-eq span:nth-child(5n+1){height:90%;animation-delay:.6s}
.about-eq span:nth-child(4n+2){height:33%;animation-delay:1.4s}
.about-eq span:nth-child(3n+3){height:60%;animation-delay:1.1s;background:#c9ff66}
.about-eq span:nth-child(7n+4){height:98%;animation-delay:2s}
@keyframes equalize{to{height:24%}}

/* RENTAL */
.rental-section{background:#111319}
.rental-heading .display-heading{max-width:870px}
.rental-filter{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}
.filter-tab{font-size:10px;letter-spacing:1px;font-weight:900;color:#d4d5d8;border:1px solid #42444b;padding:14px 16px;background:#1a1d23;transition:background .2s,color .2s,border-color .2s}
.filter-tab span{margin-left:11px}
.filter-tab:hover,.filter-tab:focus-visible{border-color:var(--lime)}
.filter-tab.is-active{background:var(--lime);border-color:var(--lime);color:#0e1214}
.rental-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;min-height:335px}
.equipment-card{background:#1c1e25;border:1px solid #333640;min-height:322px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:26px;transition:border-color .2s,transform .2s;isolation:isolate}
.equipment-card:hover{transform:translateY(-4px);border-color:#badf50}
.equipment-card:before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 65% 26%,rgba(136,108,222,.27),transparent 43%),linear-gradient(150deg,#22252f,#15171b)}
.equipment-card[data-kind="audio"]:before{background:radial-gradient(circle at 65% 26%,#685eaf61,transparent 46%),linear-gradient(150deg,#242334,#15171b)}
.equipment-card[data-kind="light"]:before{background:radial-gradient(circle at 65% 26%,#7f61d35a,transparent 45%),linear-gradient(150deg,#272038,#15171b)}
.equipment-card[data-kind="video"]:before{background:radial-gradient(circle at 65% 26%,#2c91b85c,transparent 46%),linear-gradient(150deg,#1c303b,#15171b)}
.equipment-card[data-kind="rigging"]:before{background:radial-gradient(circle at 65% 26%,#a0bb674d,transparent 46%),linear-gradient(150deg,#242b26,#15171b)}
.equipment-card[data-kind="other"]:before{background:radial-gradient(circle at 65% 26%,#a7759052,transparent 45%),linear-gradient(150deg,#30232a,#15171b)}
.equipment-card::after{content:'';position:absolute;right:-54px;top:22px;width:215px;height:215px;border:1px solid #d8dce62b;border-radius:50%;box-shadow:0 0 0 30px #a5b4d80a,0 0 0 63px #a5b4d80a;pointer-events:none}
.equipment-top{position:absolute;top:24px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;color:#b2b1c0;font-size:10px;font-weight:900;letter-spacing:1.6px}
.equipment-top svg{width:24px;height:24px;color:var(--lime);stroke-width:1.7}
.equipment-symbol{position:absolute;right:30px;top:56px;opacity:.52;color:#b9a7ff;transform:rotate(-12deg);pointer-events:none}
.equipment-symbol svg{width:130px;height:130px;stroke-width:.8}
.equipment-title{font-family:var(--display);font-size:38px;line-height:.98;margin:0 0 14px;position:relative;z-index:1}
.equipment-detail{font-size:12px;color:#bcbfc8;max-width:290px;margin:0 0 24px;min-height:39px;line-height:1.65;position:relative;z-index:1}
.equipment-action{display:inline-flex;align-items:center;justify-content:space-between;width:100%;border-top:1px solid #ffffff43;padding-top:17px;font-size:10px;color:var(--lime);font-weight:900;letter-spacing:1.5px;position:relative;z-index:1}
.equipment-action svg{height:19px;width:19px;stroke-width:2}
.loading-fallback{padding:30px}
.rental-bottom{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:29px}
.rental-bottom p{display:flex;align-items:center;gap:13px;color:#a8aab2;font-size:12px;line-height:1.6;margin:0}
.rental-bottom p svg{color:var(--lime);height:17px;width:17px;flex-shrink:0}

/* REFERENCES */
.references-section{background:#0c0e12;padding-bottom:120px}
.references-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:17px}
.reference-card{position:relative;min-height:460px;background:#1a1b24;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;border:1px solid #ffffff26}
.reference-art{position:absolute;inset:0;z-index:-2;overflow:hidden;transition:transform .5s}
.reference-card:hover .reference-art{transform:scale(1.045)}
.reference-a .reference-art{background:radial-gradient(circle at 60% 70%,#5229a0a0,transparent 47%),linear-gradient(130deg,#161b36,#130f2b 65%,#272251)}
.reference-b .reference-art{background:radial-gradient(circle at 60% 38%,#8a67d08a,transparent 38%),linear-gradient(120deg,#2e2344,#112534)}
.reference-card:after{position:absolute;inset:0;content:'';z-index:-1;background:linear-gradient(0deg,#0b0c13 0%,#0b0c13aa 30%,transparent 73%)}
.stage-cone{position:absolute;top:-65px;width:350px;height:550px;background:linear-gradient(#b4a0ff91,#b4a0ff05 88%);clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);filter:blur(5px)}
.cone-one{left:17%;transform:rotate(23deg)}
.cone-two{left:52%;transform:rotate(-20deg);background:linear-gradient(#b0ff7580,#b0ff7503 92%)}
.stage-lines{position:absolute;left:10%;right:10%;top:23%;height:20px;border-top:9px solid #787599;border-bottom:6px solid #787599;transform:rotate(-5deg);box-shadow:0 10px 20px #161329b0}
.stage-lines:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(60deg,transparent 0 30px,#9f9baf 30px 35px,transparent 35px 60px)}
.stage-ground{position:absolute;bottom:0;left:0;right:0;height:30%;background:linear-gradient(transparent,#100d17)}
.ref-dots{position:absolute;inset:0;background-image:radial-gradient(circle,#ffffff 1.1px,transparent 1.1px);background-size:35px 35px;opacity:.17}
.ref-halo{position:absolute;width:300px;height:300px;border:33px solid #c9f97e;opacity:.38;border-radius:50%;left:36%;top:4%;box-shadow:0 0 80px #b6e9817c;transform:rotate(-24deg) scaleX(.65)}
.ref-orbit{position:absolute;width:490px;height:490px;border:2px solid #c9f97e85;border-radius:50%;left:10%;top:-40%;transform:rotate(-24deg) scaleX(.67)}
.reference-content{padding:35px;position:relative}
.ref-index{font-size:10px;letter-spacing:2px;color:#cfced6;font-weight:800}
.reference-content h3{font-family:var(--display);font-size:clamp(43px,5.5vw,78px);margin:18px 0 9px;line-height:.95;overflow-wrap:anywhere}
.reference-content p{max-width:455px;color:#d2d2dc;font-size:14px;line-height:1.7;margin:0 60px 0 0}
.reference-content a{position:absolute;right:32px;bottom:33px;border:1px solid #c2c1c680;height:48px;width:48px;display:grid;place-items:center;color:#fff;transition:background .2s,color .2s}
.reference-content a:hover{background:var(--lime);color:#15171d}
.reference-content a svg{height:22px;width:22px}
.references-disclaimer{font-size:11px;color:#85858d;margin:16px 0 0}

/* PROCESS */
.process-section{padding-block:110px;background:#181a21}
.process-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px}
.process-head h2{font-family:var(--display);font-size:clamp(49px,5.4vw,78px);line-height:.99;margin:0}
.process-head h2 em{font-style:normal;color:var(--lime)}
.process-steps{border-top:1px solid #4d5058}
.process-step{padding:24px 0 26px;display:grid;grid-template-columns:53px 1fr 22px;gap:15px;border-bottom:1px solid #4d5058;align-items:flex-start}
.step-number{color:var(--lime);font-size:12px;font-weight:900;letter-spacing:2px;padding-top:7px}
.process-step h3{font-size:15px;letter-spacing:.8px;margin:0 0 9px;font-weight:900}
.process-step p{color:#acaeb9;font-size:13px;line-height:1.65;max-width:400px;margin:0}
.process-step>svg{height:19px;width:19px;color:var(--lime);margin-top:5px}

/* CONTACT */
.contact-section{background:var(--lime);padding-block:120px;color:#101316;overflow:hidden}
.contact-layout{display:grid;grid-template-columns:.83fr 1.17fr;gap:clamp(36px,6.2vw,100px);align-items:start}
.contact-eyebrow{font-size:11px;font-weight:900;letter-spacing:2px;margin:5px 0 28px}
.contact-copy h2{font-family:var(--display);font-size:clamp(95px,10vw,155px);font-weight:900;line-height:.9;letter-spacing:-2px;margin:0;overflow-wrap:normal}
.contact-copy h2 span{color:#758a1f}
.contact-lead{font-size:clamp(23px,2.3vw,32px);font-weight:900;line-height:1.34;margin:35px 0 55px}
.contact-details{display:flex;flex-direction:column;gap:15px}
.contact-details a{display:inline-flex;gap:14px;align-items:center;font-size:15px;font-weight:800;line-height:1.4;transition:transform .2s}
.contact-details a:hover{transform:translateX(6px)}
.contact-details a svg{height:21px;width:21px;flex-shrink:0;stroke-width:2}
.contact-form-box{background:#13151b;color:#f6f6f3;padding:31px 34px 33px;box-shadow:19px 19px 0 rgba(16,17,19,.16)}
.form-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #474951;padding-bottom:21px;margin-bottom:26px;font-size:11px;font-weight:900;letter-spacing:1.9px}
.form-head span:last-child{font-size:25px;color:var(--lime);line-height:.5}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.field{display:flex;flex-direction:column;gap:9px;margin-bottom:19px;min-width:0}
.field label{font-size:10px;font-weight:900;letter-spacing:1.4px;color:#d8d9db}
.field label span{color:var(--lime)}
.field input,.field select,.field textarea{width:100%;appearance:none;border-radius:0;background:#21242c;border:1px solid #40434b;color:#f2f3f3;min-height:52px;padding:13px 14px;font-size:13px;outline:none;transition:border-color .18s,background .18s}
.field input::placeholder,.field textarea::placeholder{color:#9da0a8;opacity:1}
.field select{padding-right:24px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b8bbc3' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.field textarea{min-height:121px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--lime);background:#272932}
.submit-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--lime);border:1px solid var(--lime);color:#101316;width:100%;min-height:58px;padding:15px 18px;font-size:11px;font-weight:1000;letter-spacing:1px;text-align:left;transition:background .2s}
.submit-btn:hover{background:#f0ffb7}
.submit-btn svg{width:21px;height:21px;stroke-width:2.5;flex-shrink:0}
.copy-btn{background:transparent;border:0;color:#d5d5d8;padding:15px 0 0;display:flex;align-items:center;gap:9px;font-size:10px;font-weight:900;letter-spacing:1px;transition:color .2s}
.copy-btn:hover{color:var(--lime)}
.copy-btn svg{width:16px;height:16px}
.form-note{font-size:11px;color:#a9aab1;line-height:1.65;margin:17px 0 0}
.form-status{color:var(--lime);font-size:12px;font-weight:700;margin:8px 0 0}
.form-status:empty{display:none}

/* FOOTER */
.site-footer{background:#090a0e}
.footer-main{min-height:250px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:46px;padding-bottom:46px;border-bottom:1px solid #303138}
.footer-logo{font-size:27px;letter-spacing:-1.3px;font-weight:1000;white-space:nowrap;line-height:1;display:inline-block}
.footer-logo>span:first-child{color:var(--lime);letter-spacing:-7px;display:inline-block;margin-right:10px;font-weight:900}
.footer-logo>span:nth-child(2){color:var(--lime)}
.footer-logo small{display:block;margin-left:53px;margin-top:9px;letter-spacing:2.8px;font-size:9px;color:#aaaab1}
.footer-main p{color:#b5b5bc;font-size:11px;line-height:1.9;font-weight:800;letter-spacing:1.5px}
.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px 29px;font-size:12px;color:#c7c8cc;font-weight:700}
.footer-nav a:hover,.footer-legal a:hover{color:var(--lime)}
.footer-bottom{min-height:89px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#999aa1;font-size:10px;font-weight:800;letter-spacing:1px}
.footer-legal{display:flex;align-items:center;gap:24px}
.footer-legal a{display:inline-flex;gap:4px;align-items:center}
.footer-legal svg{width:11px;height:11px}

/* REVEALS: default content stays visible when JavaScript is disabled. */
body.has-js .reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}
body.has-js .reveal.is-visible{opacity:1;transform:translateY(0)}

/* RESPONSIVE */
@media(max-width:1250px){
  .header-inner{gap:20px}.main-nav{gap:19px}.header-cta{padding:14px}.brand-type strong{font-size:21px}
  .hero h1{font-size:clamp(80px,11.3vw,135px)}.hero-stage-art{background-position:55% center}
  .about-layout{gap:60px}.about-visual{min-height:540px}.about-visual-main strong{font-size:clamp(100px,13.5vw,150px)}
  .contact-copy h2{font-size:clamp(90px,10.1vw,135px)}
}
@media(max-width:1010px){
  :root{--pad:38px}
  .header-inner{min-height:80px}.main-nav{gap:15px}.main-nav>a{font-size:11px}.header-cta{font-size:9px;gap:9px;padding:13px}.brand-type strong{font-size:18px}.brand-type small{font-size:8px;letter-spacing:1.7px}.brand-symbol{transform:scale(.82) skew(-16deg);margin-right:-5px}
  .hero{min-height:780px;height:90svh}.hero-copy{max-width:700px}.hero h1{font-size:clamp(85px,12vw,135px)}
  .statement-inner>p{min-width:125px;font-size:10px}.statement-inner h2{font-size:clamp(75px,11.5vw,125px)}
  .about-visual{min-height:490px}.about-visual-main strong{font-size:clamp(95px,12vw,130px)}.about-visual-main p{font-size:10px}.about-visual-top,.about-visual-bottom{font-size:8px}
  .rental-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rental-grid .equipment-card{min-height:300px}
  .process-layout{gap:50px}.contact-layout{gap:38px}.contact-form-box{padding:25px}.contact-copy h2{font-size:clamp(78px,10vw,108px)}
}
@media(max-width:790px){
  :root{--pad:26px}
  .site-header{background:rgba(9,10,14,.82);backdrop-filter:blur(15px)}
  .header-inner{min-height:78px}.menu-toggle{display:grid;margin-left:auto;z-index:3}
  .menu-toggle[aria-expanded="true"] .menu-open-icon{display:none}.menu-toggle[aria-expanded="true"] .menu-close-icon{display:block}
  .main-nav{display:none;position:fixed;top:78px;left:0;right:0;width:100vw;min-height:calc(100svh - 78px);padding:42px var(--pad);background:#111319;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;z-index:2;overflow-y:auto;border-top:1px solid #33353b}
  .site-header.is-open .main-nav{display:flex}
  .main-nav>a{padding:18px 2px;border-bottom:1px solid #373840;font-size:22px;font-family:var(--display);line-height:1.2;font-weight:900}
  .main-nav>a:after{display:none}
  .main-nav .nav-mobile-cta{display:block;color:var(--lime);margin-top:15px}
  .header-cta{margin-left:auto}
  .hero{height:auto;min-height:790px;max-height:none}
  .hero-content{padding-top:185px;padding-bottom:152px;min-height:790px;align-items:flex-start}
  .hero h1{font-size:clamp(86px,13.8vw,124px)}
  .hero-stage-art{background-position:53% center;opacity:.86}
  .hero-shadow{background:linear-gradient(90deg,#090a0ef5,#090a0ec4 50%,#08090f65),linear-gradient(0deg,#090a0ff0 0%,transparent 45%)}
  .hero-side-note{display:none}
  .hero-bottom-center{display:none}
  .section-top{align-items:flex-start;gap:24px;flex-direction:column}
  .section-intro{max-width:600px}
  .display-heading{font-size:clamp(58px,9vw,82px)}
  .service-grid{gap:13px}.service-card{height:345px}
  .service-card h3{font-size:clamp(27px,4.8vw,38px)}
  .statement-inner{min-height:330px;padding-block:65px}.statement-inner h2{font-size:clamp(73px,12vw,118px)}.statement-inner>p{display:none}
  .about-layout{grid-template-columns:1fr;gap:55px}.about-visual{min-height:520px;margin-right:20px}.about-visual-main strong{font-size:160px}
  .references-grid{grid-template-columns:1fr 1fr}.reference-card{min-height:380px}.reference-content{padding:24px}.reference-content h3{font-size:clamp(42px,6vw,62px)}.reference-content p{font-size:12px}
  .process-layout{grid-template-columns:1fr;gap:40px}.process-head h2{font-size:clamp(65px,9vw,85px)}
  .contact-layout{grid-template-columns:1fr;gap:60px}.contact-copy h2{font-size:clamp(95px,14vw,140px)}.contact-lead{margin:25px 0 30px}.contact-details{gap:12px}.contact-form-box{max-width:100%}
  .footer-main{flex-wrap:wrap}.footer-bottom{flex-wrap:wrap;padding-block:25px;gap:20px}
}
@media(max-width:600px){
  :root{--pad:20px}
  html{scroll-padding-top:75px}
  .header-inner{min-height:74px}.main-nav{top:74px;min-height:calc(100svh - 74px)}
  .header-cta{display:none}.brand-type strong{font-size:21px}.brand-type small{font-size:8px}.brand-symbol{transform:scale(.8) skew(-16deg)}
  .hero{min-height:760px}.hero-content{min-height:760px;padding-top:165px;padding-bottom:130px}
  .hero-stage-art{background-position:47% center}
  .hero-shadow{background:linear-gradient(90deg,#080910f5 0%,#080910dc 55%,#08091070 100%),linear-gradient(0deg,#080910 0%,transparent 50%)}
  .hero-eyebrow{font-size:9px;letter-spacing:1.2px;gap:9px}.hero-edition{font-size:8px}
  .hero h1{font-size:clamp(69px,14.3vw,105px);letter-spacing:-.6px}
  .hero-subline{gap:12px;margin-top:26px}.hero-line{width:19px}.hero-subline p{font-size:13px;line-height:1.7}.hero-subline p br{display:none}
  .hero-actions{margin-top:29px;gap:10px}.btn{padding-inline:14px;min-height:52px;font-size:9px;gap:11px}.btn svg{width:17px;height:17px}
  .hero-bottomline{bottom:28px;align-items:center;padding-top:16px}.hero-bottomline>span:first-child{font-size:8px}.scroll-hint{font-size:8px;gap:8px}
  .ticker{height:56px}.ticker-inner>span{font-size:25px}.ticker b{font-size:15px;margin:0 11px}
  .section{padding-block:86px}.section-kicker{margin-bottom:19px;font-size:10px}.display-heading{font-size:clamp(48px,10.2vw,65px)}.section-intro{font-size:14px;line-height:1.75}.section-top{margin-bottom:31px}
  .service-grid{grid-template-columns:1fr}.service-card{height:340px}.service-card h3{font-size:39px}.service-card p{font-size:12px}
  .service-footer-note{font-size:9px;line-height:1.8}
  .statement-inner{min-height:270px}.statement-inner h2{font-size:clamp(69px,13.3vw,92px)}.statement-circle{right:-260px}
  .about-copy .display-heading{font-size:clamp(47px,10.5vw,72px)}.about-lead{font-size:18px}.about-visual{min-height:450px;padding:25px 23px}.about-visual-main strong{font-size:clamp(116px,26vw,160px)}.about-visual-top,.about-visual-bottom{font-size:7px;letter-spacing:.5px}.about-visual-main p{font-size:9px}.about-eq{bottom:73px;opacity:.36}
  .rental-filter{gap:7px}.filter-tab{padding:11px 12px;font-size:9px}.rental-grid{grid-template-columns:1fr}.rental-grid .equipment-card{min-height:275px}.equipment-title{font-size:43px}.rental-bottom{flex-direction:column;align-items:flex-start;gap:16px}
  .references-grid{grid-template-columns:1fr}.reference-card{min-height:375px}.reference-content h3{font-size:59px}.reference-content p{font-size:13px}
  .process-section{padding-block:83px}.process-head h2{font-size:clamp(51px,10.5vw,72px)}.process-step{grid-template-columns:36px 1fr 20px;gap:12px}
  .contact-section{padding-block:87px}.contact-copy h2{font-size:clamp(86px,17vw,125px)}.contact-lead{font-size:22px}.contact-details a{font-size:13px}.contact-form-box{padding:24px 19px;box-shadow:9px 9px 0 #10131628}.form-row{grid-template-columns:1fr;gap:0}.form-head{margin-bottom:22px}.field{margin-bottom:16px}.submit-btn{font-size:10px;letter-spacing:.5px}
  .footer-main{padding-block:55px;gap:25px;flex-direction:column;align-items:flex-start}.footer-main p{font-size:10px;margin:0}.footer-nav{font-size:11px}.footer-bottom{font-size:9px;letter-spacing:.3px}.footer-legal{gap:15px;flex-wrap:wrap}
}
@media(max-width:360px){.hero h1{font-size:65px}.hero-eyebrow{font-size:8px}.hero-edition{display:none}.hero-actions{flex-direction:column;align-items:flex-start}.hero-bottomline>span:first-child{font-size:7px}.scroll-hint{font-size:7px}.brand-type strong{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-inner,.pulse-dot,.about-eq span{animation:none!important}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}body.has-js .reveal{opacity:1;transform:none}}
