:root{--ink:#17191d;--paper:#f3f0e8;--muted:#aaa9a4;--coral:#ff5a45;--line:rgba(243,240,232,.16);--max:1240px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--paper);font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.55}
a{color:inherit;text-decoration:none}
.site-header{height:88px;max-width:var(--max);margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand img,footer img{display:block}.site-header nav{display:flex;align-items:center;gap:34px;font-size:.875rem}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--coral)}
.nav-cta{border:1px solid var(--line);padding:10px 17px}.nav-cta:hover{border-color:var(--coral)}
.hero{min-height:calc(100vh - 88px);max-width:var(--max);margin:auto;padding:86px 28px 46px;position:relative;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;overflow:hidden}
.hero-copy{position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--coral);font-size:.72rem;font-weight:700;margin:0 0 22px}
h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-.05em;line-height:.98}h1{font-size:clamp(4rem,8vw,7.75rem);margin-bottom:34px}h1 em{font-style:normal;color:var(--coral)}
.lead{max-width:590px;color:#d5d2ca;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.55;margin-bottom:40px}
.hero-actions{display:flex;gap:30px;align-items:center;flex-wrap:wrap}.button{background:var(--coral);color:var(--ink);font-weight:700;padding:15px 20px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#ff6b58}.text-link{border-bottom:1px solid var(--line);padding:10px 0}.text-link span{color:var(--coral);margin-left:8px}
.stage{height:560px;position:relative;perspective:900px}.stage-frame{position:absolute;inset:14% 2% 18% 9%;border:1px solid rgba(255,90,69,.8);background:radial-gradient(circle at 50% 54%,rgba(255,90,69,.24),transparent 52%),linear-gradient(145deg,#21242a,#101114);box-shadow:0 0 90px rgba(255,90,69,.16),inset 0 0 70px rgba(0,0,0,.7);transform:rotateY(-9deg) rotateX(2deg);display:grid;place-items:center}.stage-frame:before{content:"";position:absolute;inset:10%;border:1px solid rgba(243,240,232,.12)}.stage-frame span{font-size:clamp(2rem,5vw,4.2rem);letter-spacing:.22em;font-weight:700;color:rgba(243,240,232,.92)}
.beam{position:absolute;top:0;width:2px;height:95%;background:linear-gradient(var(--coral),transparent);filter:drop-shadow(0 0 14px var(--coral));transform-origin:top}.beam-one{left:19%;transform:rotate(-19deg)}.beam-two{right:12%;transform:rotate(23deg)}.stage-line{position:absolute;bottom:14%;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--coral),transparent)}
.hero-index{position:absolute;right:28px;bottom:34px;color:var(--muted);font-size:.72rem;letter-spacing:.16em}
.section{max-width:var(--max);margin:auto;padding:132px 28px;border-top:1px solid var(--line)}.section-intro{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:72px}.section-intro h2,.approach h2,.contact h2{font-size:clamp(3rem,6vw,6rem);margin:0}
.service-list article{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:42px 0;border-top:1px solid var(--line)}.service-list article>span{font-size:.75rem;color:var(--coral);letter-spacing:.15em}.service-list h3{font-size:clamp(1.65rem,3vw,2.55rem);font-weight:500;letter-spacing:-.035em;margin-bottom:14px}.service-list p{color:var(--muted);max-width:620px;font-size:1.05rem}
.approach{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;background:linear-gradient(135deg,rgba(255,90,69,.07),transparent 48%)}.approach-copy>p:last-child{color:var(--muted);font-size:1.08rem;max-width:680px;margin-top:32px}.process{list-style:none;margin:54px 0 0;padding:0}.process li{display:grid;grid-template-columns:44px 1fr;padding:24px 0;border-top:1px solid var(--line)}.process span{color:var(--coral);font-size:.7rem}.process strong{font-size:1.2rem;font-weight:500}.process small{grid-column:2;color:var(--muted);font-size:.88rem}
.contact{text-align:center;padding-top:150px;padding-bottom:150px}.contact .eyebrow{margin-bottom:26px}.contact h2{margin-bottom:30px}.contact>p:not(.eyebrow){color:var(--muted);max-width:600px;margin:0 auto 48px;font-size:1.08rem}.contact-mail{display:inline-flex;gap:18px;align-items:center;font-size:clamp(1.45rem,3vw,2.25rem);border-bottom:2px solid var(--coral);padding:8px 0}.contact-mail span{color:var(--coral)}
footer{max-width:var(--max);margin:auto;padding:38px 28px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}footer p{margin:0;text-align:center}footer p:last-child{text-align:right}
@media(max-width:850px){.site-header nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;padding-top:70px}.stage{position:absolute;right:-30%;top:15%;width:76%;opacity:.42}.hero-copy{max-width:700px}h1{font-size:clamp(3.75rem,15vw,6.7rem)}.section{padding-top:90px;padding-bottom:90px}.section-intro,.service-list article,.approach{grid-template-columns:1fr}.section-intro,.approach{gap:32px}.service-list article{gap:12px}.approach .process{margin-top:12px}}
@media(max-width:560px){.site-header{height:76px;padding:0 20px}.site-header nav{gap:0}.hero{min-height:calc(100vh - 76px);padding:58px 20px 32px}.hero-actions{align-items:flex-start;flex-direction:column;gap:13px}.stage{right:-60%;width:110%}.section{padding:76px 20px}.section-intro{margin-bottom:48px}.contact{padding-top:96px;padding-bottom:96px}footer{padding:32px 20px;grid-template-columns:1fr 1fr;gap:20px}footer p:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
