:root{
  --bg:#0c0f13;
  --bg-soft:#11161c;
  --panel:#141a21;
  --panel-2:#181f27;
  --line:rgba(255,255,255,.09);
  --text:#f4f6f8;
  --muted:#9da7b3;
  --accent:#ef4c35;
  --accent-soft:rgba(239,76,53,.12);
  --cyan:#66c9ff;
  --max:1240px;
  --radius:22px;
  --shadow:0 30px 80px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,svg{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
::selection{background:var(--accent);color:white}
.container{width:min(calc(100% - 40px),var(--max));margin:0 auto}
.section{padding:108px 0;position:relative}
.section-sm{padding:76px 0}
.kicker{display:inline-flex;align-items:center;gap:10px;color:#cfd5dc;text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:700;margin-bottom:18px}
.kicker:before{content:"";width:26px;height:1px;background:var(--accent)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(3.1rem,7vw,7.1rem);line-height:.94;letter-spacing:-.055em;margin-bottom:28px;max-width:1050px}
h2{font-size:clamp(2.25rem,4vw,4.5rem);line-height:1.02;letter-spacing:-.045em;margin-bottom:24px;max-width:920px}
h3{font-size:1.25rem;line-height:1.25;letter-spacing:-.02em;margin-bottom:12px}
.lead{font-size:clamp(1.04rem,1.5vw,1.28rem);color:#c7cdd4;max-width:760px}
.muted{color:var(--muted)}
.text-accent{color:var(--accent)}
.divider{height:1px;background:var(--line)}
.grid{display:grid;gap:22px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:.25s;background:linear-gradient(180deg,rgba(12,15,19,.78),rgba(12,15,19,0));border-bottom:1px solid transparent}
.site-header.scrolled{background:rgba(12,15,19,.92);backdrop-filter:blur(16px);border-color:var(--line)}
.nav{height:104px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;flex:none}
.brand img{width:auto;height:90px;object-fit:contain}
.nav-links{display:flex;align-items:center;gap:28px;font-size:.85rem;font-weight:650;letter-spacing:.04em}
.nav-links a{color:#d8dde3;position:relative}
.nav-links a:not(.btn):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--accent);transition:.22s}
.nav-links a:hover:after,.nav-links a.active:after{width:100%}
.menu-toggle{display:none;background:none;border:1px solid var(--line);color:white;border-radius:12px;width:44px;height:44px;cursor:pointer}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 21px;border-radius:999px;border:1px solid transparent;font-weight:750;font-size:.82rem;letter-spacing:.05em;text-transform:uppercase;transition:.2s;cursor:pointer}
.btn-primary{background:var(--accent);color:#fff;box-shadow:0 12px 34px rgba(239,76,53,.22)}
.btn-primary:hover{transform:translateY(-2px);background:#ff5c43}
.btn-secondary{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.035);color:#fff}
.btn-secondary:hover{border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.07)}
.btn-small{min-height:42px;padding:0 17px;font-size:.75rem}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.hero{min-height:100svh;display:flex;align-items:center;position:relative;overflow:hidden;padding:128px 0 86px}
.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 34%,rgba(102,201,255,.09),transparent 30%),radial-gradient(circle at 28% 65%,rgba(239,76,53,.10),transparent 32%),linear-gradient(180deg,#0b0e12 0%,#0c0f13 70%);z-index:-3}
.hero:after{content:"";position:absolute;inset:0;opacity:.26;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 88%);z-index:-2}
.hero-grid{display:grid;grid-template-columns:1.16fr .84fr;align-items:center;gap:50px}
.hero-copy{position:relative;z-index:2}
.hero-copy .eyebrow{font-size:.8rem;letter-spacing:.23em;text-transform:uppercase;color:#b4bec8;font-weight:750;margin-bottom:24px}
.hero-copy .eyebrow strong{color:var(--accent)}
.hero-copy p{max-width:680px;color:#b6c0ca;font-size:1.12rem}
.hero-visual{min-height:520px;position:relative;display:grid;place-items:center}
.control-map{width:min(100%,540px);aspect-ratio:1/1;position:relative;border-radius:50%;background:radial-gradient(circle at center,rgba(102,201,255,.08),transparent 36%),radial-gradient(circle at center,transparent 48%,rgba(255,255,255,.06) 49%,transparent 50%),radial-gradient(circle at center,transparent 67%,rgba(255,255,255,.05) 68%,transparent 69%)}
.control-map:before{content:"";position:absolute;inset:12%;border:1px dashed rgba(255,255,255,.08);border-radius:50%;animation:spin 30s linear infinite}
.control-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 36% 28%,#202b35,#11161c 72%);border:1px solid rgba(102,201,255,.28);box-shadow:0 0 80px rgba(102,201,255,.10),inset 0 0 36px rgba(102,201,255,.04)}
.control-core b{font-size:1.02rem;letter-spacing:.08em}.control-core span{display:block;font-size:.72rem;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:6px}
.node{position:absolute;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(20,26,33,.78);backdrop-filter:blur(8px);font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;font-weight:700;color:#d8dde3;white-space:nowrap;box-shadow:0 12px 34px rgba(0,0,0,.2)}
.node:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 18px var(--accent)}
.node.n1{top:10%;left:13%}.node.n2{top:18%;right:3%}.node.n3{right:0;bottom:23%}.node.n4{left:6%;bottom:13%}.node.n5{left:-2%;top:48%}.node.n6{right:18%;bottom:4%}
.node.n1:after,.node.n4:after,.node.n5:after{right:-3px;top:50%}.node.n2:after,.node.n3:after,.node.n6:after{left:-3px;top:50%}
.hero-metric{position:absolute;right:-4%;top:10%;padding:16px 18px;border-left:2px solid var(--accent);background:rgba(12,15,19,.55)}
.hero-metric strong{display:block;font-size:1.8rem;line-height:1}.hero-metric span{font-size:.7rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}
@keyframes spin{to{transform:rotate(360deg)}}
.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0a0d10}
.trust-row{display:grid;grid-template-columns:1.2fr repeat(4,1fr);min-height:118px;align-items:stretch}
.trust-item{display:flex;flex-direction:column;justify-content:center;padding:22px;border-left:1px solid var(--line)}
.trust-item:first-child{border-left:0;padding-left:0}.trust-item strong{font-size:1.15rem}.trust-item span{font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-top:4px}
.card{background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.015));border:1px solid var(--line);border-radius:var(--radius);padding:30px;position:relative;overflow:hidden;transition:.25s}
.card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.18);box-shadow:var(--shadow)}
.card .num{font-size:.7rem;letter-spacing:.16em;color:var(--accent);font-weight:800;margin-bottom:44px}
.card p{color:var(--muted);margin-bottom:20px}.card .link{font-size:.76rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:#dce2e7}
.card .link:after{content:"  →";color:var(--accent)}
.card-icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;border:1px solid var(--line);background:#10151b;margin-bottom:26px;color:#dfe5ea}
.card-icon svg{width:25px;height:25px;stroke:currentColor}
.intro-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:90px;align-items:start}
.statement{font-size:clamp(1.6rem,3vw,3rem);line-height:1.16;letter-spacing:-.035em;color:#e9edf0;margin-bottom:28px}
.statement strong{color:var(--accent)}
.system-stage{margin-top:55px;display:grid;grid-template-columns:1fr 170px 1fr;align-items:center;gap:28px}
.system-list{display:grid;gap:12px}.system-pill{padding:16px 18px;border:1px solid var(--line);border-radius:13px;background:var(--panel);font-size:.84rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700;display:flex;align-items:center;justify-content:space-between}.system-pill i{width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 14px rgba(239,76,53,.45)}
.system-center{aspect-ratio:1;border:1px solid rgba(102,201,255,.25);border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,rgba(102,201,255,.07),transparent 70%);position:relative}
.system-center:before,.system-center:after{content:"";position:absolute;top:50%;width:40px;height:1px;background:linear-gradient(90deg,transparent,rgba(102,201,255,.45))}.system-center:before{right:100%}.system-center:after{left:100%;transform:rotate(180deg)}
.system-center strong{font-size:.9rem;letter-spacing:.08em}.system-center small{display:block;color:var(--muted);margin-top:5px}
.steps{counter-reset:step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:48px}.step{background:var(--bg);padding:34px;min-height:230px}.step:before{counter-increment:step;content:"0" counter(step);display:block;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.14em;margin-bottom:54px}.step p{color:var(--muted);font-size:.93rem}
.sector-card{min-height:330px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,.035));border:1px solid var(--line);border-radius:var(--radius);padding:28px;position:relative;overflow:hidden}.sector-card:before{content:"";position:absolute;width:210px;height:210px;border-radius:50%;border:1px solid rgba(255,255,255,.05);top:-60px;right:-60px}.sector-card:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;border:1px dashed rgba(239,76,53,.25);top:-15px;right:-15px}.sector-card p{color:var(--muted);max-width:320px}.sector-tag{position:absolute;top:26px;left:28px;font-size:.68rem;color:#aab4bf;letter-spacing:.14em;text-transform:uppercase}
.project{border-top:1px solid var(--line);padding:31px 0;display:grid;grid-template-columns:1.2fr .8fr auto;align-items:center;gap:34px;transition:.2s}.project:last-child{border-bottom:1px solid var(--line)}.project:hover{padding-left:12px}.project h3{margin:0;font-size:clamp(1.25rem,2vw,1.8rem)}.project-meta{color:var(--muted);font-size:.86rem}.project-arrow{font-size:1.5rem;color:var(--accent)}
.partner-wall{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:40px}.partner{min-height:120px;display:grid;place-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:#adb6c0;font-size:1rem;letter-spacing:.12em;font-weight:800;text-align:center;padding:20px}.partner:hover{color:white;background:rgba(255,255,255,.02)}
.cta{background:linear-gradient(135deg,#161d25,#101419);border:1px solid var(--line);border-radius:30px;padding:58px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px;position:relative;overflow:hidden}.cta:before{content:"";position:absolute;right:-100px;top:-180px;width:420px;height:420px;border:1px solid rgba(239,76,53,.18);border-radius:50%}.cta h2{font-size:clamp(2.4rem,4.5vw,5rem);margin:0}.cta p{color:var(--muted);max-width:620px;margin:16px 0 0}
.page-hero{padding:190px 0 90px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 76% 20%,rgba(239,76,53,.08),transparent 30%)}
.page-hero h1{font-size:clamp(3rem,6vw,6rem);max-width:980px}.breadcrumbs{color:#7f8a95;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:24px}.breadcrumbs a:hover{color:white}
.feature-row{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;padding:58px 0;border-top:1px solid var(--line)}.feature-row:last-child{border-bottom:1px solid var(--line)}.feature-row .feature-label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:800}.feature-row p{color:var(--muted);max-width:720px}
.pill-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.pill{border:1px solid var(--line);padding:8px 12px;border-radius:999px;color:#bac3cc;font-size:.74rem}
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px}.contact-data{display:grid;gap:28px}.contact-block{padding-bottom:26px;border-bottom:1px solid var(--line)}.contact-block small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;margin-bottom:6px}.contact-block strong{font-size:1.18rem}.form{display:grid;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#aeb7c0;margin-bottom:8px}.field input,.field textarea,.field select{width:100%;background:#0f141a;border:1px solid var(--line);border-radius:13px;color:white;padding:14px 15px;outline:none;transition:.2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:rgba(239,76,53,.65);box-shadow:0 0 0 3px rgba(239,76,53,.09)}.field textarea{min-height:160px;resize:vertical}.form-note{font-size:.78rem;color:var(--muted)}.form-message{display:none;padding:14px 16px;border-radius:12px;margin-bottom:18px}.form-message.show{display:block}.form-message.ok{background:rgba(53,187,115,.12);border:1px solid rgba(53,187,115,.3)}.form-message.err{background:rgba(239,76,53,.12);border:1px solid rgba(239,76,53,.3)}
.prose{max-width:850px}.prose h2{font-size:2rem;margin-top:46px}.prose h3{margin-top:34px}.prose p,.prose li{color:#b4bdc6}.prose ul{padding-left:20px}
.site-footer{border-top:1px solid var(--line);padding:62px 0 30px;background:#090c0f}.footer-top{display:grid;grid-template-columns:1.1fr .9fr .9fr .9fr;gap:50px}.footer-brand img{width:122px;height:auto;margin-bottom:22px}.footer-brand p{color:var(--muted);max-width:320px;font-size:.9rem}.footer-col h4{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#d4dae0;margin:0 0 18px}.footer-col a,.footer-col span{display:block;color:#8f9aa5;font-size:.88rem;margin:9px 0}.footer-col a:hover{color:white}.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);margin-top:50px;padding-top:24px;color:#6f7a85;font-size:.76rem}.footer-bottom-links{display:flex;gap:18px}.social-link{display:inline-flex!important;align-items:center;gap:7px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.in{opacity:1;transform:none}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media (max-width:980px){
  .section{padding:86px 0}.hero-grid,.intro-grid,.contact-grid{grid-template-columns:1fr}.hero{padding-top:130px;min-height:auto}.hero-visual{min-height:430px;order:-1;margin-top:30px}.hero-copy{text-align:left}.hero-copy h1{font-size:clamp(3rem,11vw,5.7rem)}
  .nav-links{position:fixed;inset:104px 16px auto 16px;background:#10151b;border:1px solid var(--line);border-radius:18px;padding:22px;flex-direction:column;align-items:stretch;gap:8px;transform:translateY(-16px);opacity:0;pointer-events:none;transition:.2s;box-shadow:var(--shadow)}.nav-links.open{opacity:1;transform:none;pointer-events:auto}.nav-links a{padding:12px}.menu-toggle{display:block}.nav-links .btn{margin-top:8px}
  .grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.trust-row{grid-template-columns:repeat(2,1fr)}.trust-item:first-child{padding-left:22px}.trust-item{border-bottom:1px solid var(--line)}.system-stage{grid-template-columns:1fr}.system-center{width:170px;margin:10px auto}.system-center:before,.system-center:after{display:none}.partner-wall{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:repeat(2,1fr)}.cta{grid-template-columns:1fr;align-items:start}.feature-row{grid-template-columns:1fr;gap:18px}.project{grid-template-columns:1fr auto}.project-meta{grid-column:1/2}.project-arrow{grid-row:1/3;grid-column:2}
}
@media (max-width:640px){
  .container{width:min(calc(100% - 28px),var(--max))}.section{padding:72px 0}.nav{height:88px}.nav-links{inset:88px 12px auto 12px}.brand img{width:auto;height:72px}.hero{padding-top:112px}.hero-visual{min-height:340px}.control-map{width:330px}.control-core{width:130px}.node{font-size:.56rem;padding:8px 9px}.hero-metric{display:none}.trust-row,.grid-2,.grid-3,.grid-4,.steps{grid-template-columns:1fr}.trust-item{border-left:0}.card{padding:24px}.cta{padding:34px 24px;border-radius:22px}.partner-wall{grid-template-columns:1fr 1fr}.footer-top{grid-template-columns:1fr}.footer-bottom{align-items:flex-start;flex-direction:column}.form-row{grid-template-columns:1fr}.system-stage{margin-top:34px}.project{gap:12px}.page-hero{padding:150px 0 70px}.hero-copy .eyebrow{font-size:.7rem}.actions .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.control-map:before{animation:none}}

/* V3 - imagery and content from Trium corporate presentation */
.section-dark{background:#0a0d10}
.hero-photo:before{background:linear-gradient(90deg,rgba(8,11,15,.98) 0%,rgba(8,11,15,.88) 43%,rgba(8,11,15,.34) 72%,rgba(8,11,15,.58) 100%),linear-gradient(180deg,rgba(0,0,0,.1),#0c0f13 98%),url('../img/presentation/control-room-hero.webp') center/cover no-repeat;z-index:-3}
.hero-photo .hero-grid{grid-template-columns:1.05fr .95fr}.hero-photo .hero-copy p{color:#d0d6dc}.hero-glass{margin-left:auto;width:min(100%,390px);padding:32px;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:rgba(10,14,18,.68);backdrop-filter:blur(14px);box-shadow:0 28px 90px rgba(0,0,0,.35)}.hero-glass .visual-kicker{display:block;color:var(--accent);font-size:.7rem;letter-spacing:.17em;text-transform:uppercase;font-weight:800;margin-bottom:18px}.hero-glass strong{display:block;font-size:clamp(2rem,3vw,3.3rem);line-height:1.02;letter-spacing:-.045em;margin-bottom:20px}.hero-glass p{color:#b9c2cb;font-size:.95rem}.hero-glass .link{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.hero-glass .link:after{content:' →';color:var(--accent)}
.split-media{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split-media.reverse>div:first-child{order:2}.split-media.reverse>div:last-child{order:1}.media-frame{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);min-height:350px}.media-frame img{width:100%;height:100%;object-fit:cover}.media-frame.diagram{background:#f6f8fa;padding:24px;min-height:300px}.media-frame.diagram img{object-fit:contain}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.check-grid span{padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);color:#d5dbe1;font-size:.85rem}.check-grid span:before{content:'•';color:var(--accent);margin-right:10px}
.story-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:58px;align-items:center;margin-top:46px}.big-stat{margin:32px 0}.big-stat strong{display:block;font-size:5rem;line-height:.85;color:var(--accent);letter-spacing:-.06em}.big-stat span{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;margin-top:10px}.gallery-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery-2 img{width:100%;height:340px;object-fit:cover;border-radius:18px;border:1px solid var(--line)}
.visual-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:44px}.visual-card{position:relative;min-height:420px;overflow:hidden;border-radius:22px;border:1px solid var(--line);background:#11161c;isolation:isolate}.visual-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(8,11,15,.93) 84%);z-index:1}.visual-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.45s}.visual-card:hover img{transform:scale(1.035)}.visual-card>div{position:absolute;left:26px;right:26px;bottom:24px;z-index:2}.visual-card span{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:800}.visual-card h3,.visual-card h2{margin:5px 0 8px;font-size:1.55rem;letter-spacing:-.03em}.visual-card p{margin:0;color:#c0c8d0;font-size:.9rem}.sectors-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.sectors-wide .visual-card{min-height:470px}
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:46px}.case-card{border:1px solid var(--line);border-radius:20px;padding:30px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.015));min-height:270px}.case-card span,.case-body>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:var(--accent);font-weight:800}.case-card h3{font-size:1.55rem;margin-top:24px}.case-card p{color:var(--muted)}
.media-feature>div:first-child img{margin-top:20px;width:100%;max-width:370px;height:190px;object-fit:cover;border-radius:16px;border:1px solid var(--line)}
.page-hero-photo{position:relative;overflow:hidden}.page-hero-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,15,19,.98),rgba(12,15,19,.86) 55%,rgba(12,15,19,.35)),var(--hero-img) center/cover no-repeat;z-index:-1}.page-hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,#0c0f13 100%);z-index:-1}
.case-study{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;padding:42px 0;border-bottom:1px solid var(--line)}.case-study:first-child{padding-top:0}.case-media{border-radius:20px;overflow:hidden;border:1px solid var(--line);min-height:300px}.case-media>img{width:100%;height:100%;min-height:300px;object-fit:cover}.case-body h2{font-size:clamp(2rem,3.2vw,3.3rem);margin-top:12px}.case-body p{color:#b9c2ca;font-size:1.02rem}.solar-pair{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#0b0e12}.solar-pair img{width:100%;height:100%;min-height:300px;object-fit:cover}
.numbers-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-top:42px}.numbers-grid>div{background:var(--bg);padding:28px}.numbers-grid strong{display:block;font-size:2.4rem;letter-spacing:-.05em}.numbers-grid span{display:block;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.11em;margin-top:5px}
@media(max-width:900px){.hero-photo .hero-grid,.split-media,.story-grid,.case-study{grid-template-columns:1fr}.hero-photo .hero-visual{min-height:auto}.hero-glass{margin:0;max-width:520px}.split-media.reverse>div:first-child,.split-media.reverse>div:last-child{order:initial}.visual-cards,.case-grid{grid-template-columns:1fr 1fr}.sectors-wide{grid-template-columns:1fr}.numbers-grid{grid-template-columns:1fr 1fr}.gallery-2 img{height:260px}}
@media(max-width:640px){.visual-cards,.case-grid,.check-grid,.gallery-2{grid-template-columns:1fr}.visual-card,.sectors-wide .visual-card{min-height:390px}.gallery-2 img{height:230px}.case-study{gap:26px}.case-media,.case-media>img,.solar-pair img{min-height:240px}.solar-pair{grid-template-columns:1fr}.numbers-grid{grid-template-columns:1fr}.big-stat strong{font-size:4.2rem}}
@media(max-width:900px){.hero-photo .hero-visual{order:initial;margin-top:18px}.hero-photo .hero-grid{gap:28px}}

/* V5 - privacy, cookie e accessibilita form */
.form-help{display:block;margin-top:8px;color:var(--muted);font-size:.82rem;line-height:1.55}
.privacy-table-wrap{overflow-x:auto;margin:22px 0}
.privacy-table{width:100%;border-collapse:collapse;min-width:680px}
.privacy-table th,.privacy-table td{padding:14px 16px;border:1px solid rgba(255,255,255,.12);text-align:left;vertical-align:top}
.privacy-table th{color:var(--text);font-weight:700;background:rgba(255,255,255,.04)}
.privacy-table td{color:var(--muted)}
.prose ul{padding-left:1.2rem;margin:18px 0 28px}
.prose li{margin:10px 0;color:var(--muted);line-height:1.7}

.footer-bottom>span{max-width:900px;line-height:1.6}
