/* OWO premium visual system — 2026-09-25 */
:root{
  --owo-bg:#0b1115;--owo-panel:#111a1f;--owo-panel-2:#162128;
  --owo-line:rgba(255,255,255,.105);--owo-text:#f5f7f8;--owo-muted:#a9b4ba;
  --owo-red:#d72f3f;--owo-red-bright:#f04455;--owo-green:#96d400;
  --owo-radius:10px;--owo-shadow:0 24px 70px rgba(0,0,0,.34);
}
html{scroll-behavior:smooth}
body{background:radial-gradient(circle at 82% -10%,rgba(215,47,63,.085),transparent 31%),var(--owo-bg);color:var(--owo-text);font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility}
.shell{width:min(1460px,calc(100% - 64px))}
.header{background:rgba(8,13,16,.88);border-bottom:1px solid var(--owo-line);box-shadow:0 10px 40px rgba(0,0,0,.22);backdrop-filter:blur(18px) saturate(130%)}
.nav{min-height:92px}.navlinks{gap:4px}.navlinks a{position:relative;padding:12px 10px;border-radius:6px;color:#c3ccd0;letter-spacing:.035em;transition:color .2s,background .2s}.navlinks a:hover{color:#fff;background:rgba(255,255,255,.045)}.navlinks a.active{color:#fff;background:rgba(215,47,63,.09)}.navlinks a.active:after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:2px;background:var(--owo-red)}
.language-switch button{border-color:var(--owo-line);border-radius:6px}.language-menu{border:1px solid var(--owo-line);border-radius:8px;background:#10191e;box-shadow:var(--owo-shadow);overflow:hidden}
.cta,.re-btn{border-radius:6px;box-shadow:0 10px 30px rgba(215,47,63,.16);transition:transform .2s,box-shadow .2s,background .2s}.cta:hover,.re-btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(215,47,63,.25)}
.page-hero{position:relative;overflow:hidden;padding:92px 0 78px;border-bottom:1px solid var(--owo-line);background:linear-gradient(125deg,rgba(16,25,30,.98),rgba(9,15,19,.94))}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--owo-red) 0 3px,transparent 3px),radial-gradient(circle at 85% 18%,rgba(215,47,63,.13),transparent 28%);pointer-events:none}.page-hero .shell{position:relative}.page-hero h1{max-width:980px;margin-top:12px;font-size:clamp(2.6rem,5.2vw,5.8rem);line-height:.98;letter-spacing:-.045em}.page-hero .lead{max-width:900px;color:#c2cbd0;font-size:clamp(1.03rem,1.25vw,1.28rem);line-height:1.7}.eyebrow{color:var(--owo-red-bright);font-weight:900;letter-spacing:.16em}
.section{padding:76px 0}.section-title{margin-bottom:30px}.section-title h2{font-size:clamp(2rem,3vw,3.4rem);letter-spacing:-.035em}.section-title p{color:var(--owo-muted)}
.content-grid{gap:18px}.content-card,.side-card,.about-link-grid a{position:relative;border:1px solid var(--owo-line);border-radius:var(--owo-radius);background:linear-gradient(145deg,rgba(24,36,43,.96),rgba(14,22,27,.96));box-shadow:0 15px 38px rgba(0,0,0,.16);transition:transform .22s,border-color .22s,box-shadow .22s}.content-card{padding:30px}.content-card:before,.about-link-grid a:before{content:"";position:absolute;left:0;top:24px;width:3px;height:32px;background:var(--owo-red);border-radius:0 3px 3px 0}.content-card:hover,.about-link-grid a:hover{transform:translateY(-4px);border-color:rgba(215,47,63,.55);box-shadow:var(--owo-shadow)}.content-card h3{font-size:1rem;letter-spacing:.055em}.content-card p,.side-card p{color:#b6c0c5;line-height:1.72}
.detail-layout{gap:22px}.detail-hero{min-height:510px;border:1px solid var(--owo-line);border-radius:var(--owo-radius);box-shadow:var(--owo-shadow);overflow:hidden}.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,10,13,.93),rgba(5,10,13,.22));pointer-events:none}.detail-hero .copy{position:relative;z-index:1;max-width:650px}.side-card{padding:30px}
.home-dashboard{padding-top:26px;padding-bottom:68px}.home-top{gap:20px}.home-hero,.home-dual-promo,.home-estate-teaser,.home-business,.home-opps{border-radius:var(--owo-radius);border-color:var(--owo-line);box-shadow:0 18px 54px rgba(0,0,0,.24);overflow:hidden}.home-hero{min-height:560px}.current-slide-shade{background:linear-gradient(90deg,rgba(5,10,13,.96) 0%,rgba(5,10,13,.76) 43%,rgba(5,10,13,.18) 82%)}.hero-copy{padding:52px 44px}.hero-copy h1{max-width:820px;font-size:clamp(2.8rem,4.7vw,5.6rem);line-height:.98;letter-spacing:-.045em}.hero-qty{color:#fff}.slide-time{height:3px}.slide-time span{background:var(--owo-red)}
.dual-eco{background:linear-gradient(145deg,#17242a,#10181d);border-bottom-color:rgba(150,212,0,.38)}.dual-energy{border-top:1px solid rgba(255,255,255,.06)}.dual-energy-title{border:1px solid rgba(255,255,255,.09);border-radius:6px}.dual-energy>a{border-radius:6px;transition:transform .2s,border-color .2s,background .2s}.dual-energy>a:hover{transform:translateY(-2px);background:rgba(8,16,20,.95)}
.icon-business-grid{gap:12px}.icon-business-grid a,.opp,.business-card{border-radius:8px;border-color:var(--owo-line);transition:transform .22s,border-color .22s,box-shadow .22s}.icon-business-grid a:hover,.opp:hover,.business-card:hover{transform:translateY(-4px);border-color:rgba(215,47,63,.55);box-shadow:0 18px 46px rgba(0,0,0,.28)}
.trust-strip{border:1px solid var(--owo-line);border-radius:8px;background:linear-gradient(90deg,#10191e,#141f25)}
.portfolio-hero{border-bottom:1px solid var(--owo-line)}.portfolio-title h1{font-size:clamp(2.7rem,5vw,5.5rem);letter-spacing:-.045em}.portfolio-stats>div,.rail-facts>div,.capability-grid>article,.company-triad>article{border-radius:8px;border-color:var(--owo-line);background:linear-gradient(145deg,#172229,#10181d)}.rail-feature,.mega-project,.reference-cta{border-radius:var(--owo-radius);border-color:var(--owo-line);box-shadow:0 18px 52px rgba(0,0,0,.22);overflow:hidden}.mega-project{transition:transform .22s,border-color .22s}.mega-project:hover{transform:translateY(-4px);border-color:rgba(215,47,63,.52)}
.footer{border-top:1px solid var(--owo-line);background:#080d10}.footer-grid{padding-top:16px}.footer-grid b{color:#fff}.footer-grid a{transition:color .18s,transform .18s}.footer-grid a:hover{color:#fff;transform:translateX(3px)}
.re{background:#090d10}.re-hero{min-height:760px}.re-hero:after{background:linear-gradient(90deg,rgba(5,7,9,.9),rgba(5,7,9,.16))}.re-wrap{width:min(1380px,calc(100% - 64px))}.re-section{padding:92px 0}.re-story-card,.re-feature,.re-step,.estate,.re-form,.re-notice{border-radius:8px;border-color:rgba(200,169,104,.25);box-shadow:0 18px 46px rgba(0,0,0,.2)}.re-k{letter-spacing:.18em}.re-copy h2,.re-section h2{letter-spacing:-.035em}.re-btn.gold{box-shadow:0 14px 36px rgba(200,169,104,.16)}
*:focus-visible{outline:3px solid rgba(240,68,85,.8);outline-offset:3px}
@media(max-width:1180px){.shell,.re-wrap{width:min(100% - 38px,1460px)}.nav{min-height:80px}.home-top{grid-template-columns:1fr}.home-right{grid-template-columns:1fr 1fr}.detail-layout{grid-template-columns:1fr}.side-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px}.side-card h3,.side-card p{grid-column:1}}
@media(max-width:760px){.shell,.re-wrap{width:min(100% - 28px,1460px)}.header{backdrop-filter:blur(14px)}.nav{min-height:72px}.page-hero{padding:66px 0 56px}.page-hero h1{font-size:clamp(2.35rem,12vw,4rem)}.section{padding:54px 0}.content-card{padding:25px 22px}.home-dashboard{padding-top:14px}.home-hero{min-height:510px}.hero-copy{padding:36px 24px}.hero-copy h1{font-size:clamp(2.35rem,11vw,4.2rem)}.home-right{grid-template-columns:1fr}.side-card{display:block}.detail-hero{min-height:420px}.re-hero{min-height:650px}.re-section{padding:64px 0}.footer-grid{gap:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
