:root{--black:#05090b;--paper:#f3f4f2;--ink:#0a0f12;--muted:#69747a;--max:1540px;--ease:cubic-bezier(.2,.75,.25,1);--img-hero:url('assets/images/karbora-hero-carbon.webp');--img-carbon:url('assets/images/material-carbon-v5.webp');--img-glass:url('assets/images/material-glass-v5.webp');--img-resin:url('assets/images/material-resin-v5.webp');--img-core:url('assets/images/material-core-v5.webp');--img-vacuum:url('assets/images/material-vacuum-v5.webp');--img-adhesive:url('assets/images/material-adhesive-v5.webp');--img-industrial:url('assets/images/sector-industrial-v5.webp');--img-oilgas:url('assets/images/sector-oilgas-v5.webp');--img-marine:url('assets/images/sector-marine-v5.webp');--img-energy:url('assets/images/sector-energy-v5.webp');--img-automotive:url('assets/images/sector-automotive-v5.webp');--img-construction:url('assets/images/sector-infrastructure-v5.webp');--img-water:url('assets/images/sector-water-v5.webp');--img-renewables:url('assets/images/sector-renewables-v5.webp')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.wrap{width:min(calc(100% - 96px),var(--max));margin:auto}.skip-link{position:fixed;z-index:999;left:18px;top:18px;transform:translateY(-150%);background:#fff;color:#05090b;padding:12px 16px;font-size:12px;font-weight:700}.skip-link:focus{transform:none}.kicker{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:#8c969b}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 19px;border:1px solid transparent;font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:transform .25s var(--ease),background .25s}.btn:hover{transform:translateY(-2px)}.btn.light{background:#fff;color:#05090b}.btn.dark{background:#060a0d;color:#fff}.btn.outline{border-color:rgba(255,255,255,.36);color:#fff}.header{position:fixed;z-index:70;inset:0 0 auto;background:rgba(3,6,8,.9);border-bottom:1px solid rgba(255,255,255,.075);backdrop-filter:blur(20px)}.nav{height:88px;display:flex;align-items:center;gap:34px}.logo{flex:0 0 auto}.logo img{width:238px;height:auto;image-rendering:auto}.links{display:flex;gap:29px;align-items:center;margin-left:auto}.links a{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#dbe0e3}.actions{display:flex;align-items:center;gap:14px}.lang{font-size:10px;color:#dfe3e5}.hero{min-height:100svh;padding-top:88px;position:relative;overflow:hidden;background:#020507;color:#fff}.hero-media{position:absolute;inset:0;background-image:var(--img-hero);background-position:69% center;background-size:cover;background-repeat:no-repeat;filter:contrast(1.12) saturate(.68) brightness(.7)}.hero:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#020507 0%,rgba(2,5,7,.98) 30%,rgba(2,5,7,.78) 50%,rgba(2,5,7,.12) 100%)}.hero .wrap{position:relative;z-index:2;min-height:calc(100svh - 88px);display:flex;align-items:center}.hero-copy{max-width:1120px;padding:10vh 0}.hero .kicker{color:#dfe4e6;margin-bottom:30px}.hero h1{font-size:clamp(72px,7.8vw,128px);line-height:.82;letter-spacing:-.064em;max-width:10.4ch;margin:0 0 34px}.hero h1 span{display:block;color:#939da2;font-weight:540;line-height:.88}.lead{font-size:clamp(15px,1.03vw,19px);line-height:1.6;max-width:590px;color:#dce1e3}.hero-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:38px}.brand-strip{background:#080d10;color:#d9dee1;border-top:1px solid rgba(255,255,255,.06)}.brand-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.brand-strip span{padding:22px 20px;border-right:1px solid rgba(255,255,255,.08);font-size:9px;letter-spacing:.22em;text-transform:uppercase}.section{padding:140px 0}.section-head{display:grid;grid-template-columns:1fr minmax(320px,520px);gap:70px;align-items:end;margin-bottom:58px}.section-head h2,.position h2,.why h2,.contact h2{font-size:clamp(58px,5.5vw,88px);line-height:.88;letter-spacing:-.068em;margin:8px 0 0;text-wrap:balance}.section-head p,.position p,.why p,.contact p{font-size:13px;line-height:1.72;color:#657178}.position-grid{display:grid;grid-template-columns:.8fr 1.6fr;gap:9vw}.principles{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.principle{min-height:300px;border-top:1px solid #aeb7bb;padding-top:20px;display:flex;flex-direction:column}.principle .no{font-size:64px;color:#c1c8cb;margin-bottom:auto}.principle h3{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.principle p{max-width:34ch}.materials,.why,.lab{background:#080d10;color:#fff}.materials .section-head p,.why p,.lab p{color:#aeb7bc}.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.material{position:relative;min-height:360px;background:#12191d;overflow:hidden;border:1px solid rgba(255,255,255,.055)}.visual{position:absolute;inset:0;background-size:cover;background-position:center}.material:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.92))}.material-copy{position:absolute;z-index:2;left:24px;right:24px;bottom:22px}.material-copy small,.sector-copy small{font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#a8b2b7}.material h3{margin:8px 0;font-size:22px}.material p{font-size:11px;line-height:1.55;color:#c3cbce}.carbon{background-image:var(--img-carbon)}.resin{background-image:var(--img-resin)}.adhesive{background-image:var(--img-adhesive)}.glass{background-image:var(--img-glass),repeating-linear-gradient(35deg,#d9dddc 0 2px,#aeb5b5 2px 5px,#eef0ef 5px 7px);background-color:#c8cece}.core{background-image:var(--img-core),radial-gradient(circle,#69757a 1px,transparent 1.5px);background-size:cover,16px 14px;background-color:#182126}.vacuum{background-image:var(--img-vacuum),linear-gradient(135deg,transparent 45%,rgba(255,255,255,.12) 46% 48%,transparent 49%),linear-gradient(#142027,#080d10);background-size:cover}.why-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.proof-row{display:grid;grid-template-columns:52px 180px 1fr;gap:18px;padding:24px 0;border-top:1px solid rgba(255,255,255,.16)}.proof-row strong{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.proof-row p{margin:0}.method{background:#10181d;color:#fff;border-top:1px solid rgba(255,255,255,.08)}.method-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.method-item{padding:34px 26px;border-right:1px solid rgba(255,255,255,.1)}.method-item span{font-size:9px;color:#7f8b91}.method-item h3{font-size:12px;text-transform:uppercase;letter-spacing:.1em}.method-item p{font-size:10px;line-height:1.6;color:#9fa9ae}.sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.sector{position:relative;min-height:300px;background:#2b3439;overflow:hidden;border:1px solid rgba(12,20,24,.08)}.scene{position:absolute;inset:0;background-size:cover;background-position:center}.sector:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 22%,rgba(0,0,0,.78))}.sector-copy{position:absolute;z-index:2;left:20px;bottom:18px;color:#fff}.sector-copy strong{display:block;margin-top:7px;font-size:11px;text-transform:uppercase;letter-spacing:.07em}.industrial{background-image:var(--img-industrial)}.oilgas{background-image:var(--img-oilgas);background-color:#111b20}.marine{background-image:var(--img-marine)}.energy{background-image:var(--img-energy)}.automotive{background-image:var(--img-automotive)}.construction{background-image:var(--img-construction)}.water{background-image:var(--img-water)}.renewables{background-image:var(--img-renewables)}.lab-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;align-items:start}.lab h2{font-size:clamp(58px,5.5vw,88px);line-height:.88;letter-spacing:-.068em}.article{border-top:1px solid rgba(255,255,255,.18);padding:24px 0}.article small{font-size:8px;text-transform:uppercase;letter-spacing:.16em;color:#879399}.article h3{font-size:clamp(24px,2.5vw,40px);line-height:1.08;margin:12px 0}.soon{display:inline-block;font-size:8px;letter-spacing:.14em;text-transform:uppercase;border:1px solid rgba(255,255,255,.22);padding:7px 9px;color:#aeb7bc}.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #e0e4e6}.contact-visual{min-height:650px;background:linear-gradient(145deg,#111a1f,#05090b);display:flex;align-items:flex-end;padding:7%;color:#fff}.quote{font-size:clamp(38px,3.4vw,58px);line-height:1.06;letter-spacing:-.05em}.contact-copy{padding:9vw}.intent{list-style:none;padding:0;margin:45px 0}.intent li{padding:14px 0;border-top:1px solid #d5dade;font-size:10px;text-transform:uppercase;letter-spacing:.08em}footer{background:#070b0e;color:#f2f4f5;padding:72px 0 28px}.footer-top{display:flex;justify-content:space-between;gap:64px;align-items:flex-end}.footer-brand{max-width:520px}.footer-brand img{width:clamp(285px,22vw,360px);height:auto}.footer-brand p{font-size:12px;font-weight:650;letter-spacing:.17em;text-transform:uppercase;color:#9da8ad;margin:20px 0 0}.footer-nav{display:flex;gap:25px;flex-wrap:wrap;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#c3ccd0}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.11);padding-top:21px;margin-top:44px;font-size:9px;color:#7d898f}.footer-slogan{text-transform:uppercase;letter-spacing:.17em;font-weight:700;line-height:1.5}.menu{display:none}
@media(min-width:901px){.lab-grid>div:first-child{position:sticky;top:125px}.contact-copy{padding-left:clamp(70px,8vw,145px);padding-right:clamp(60px,7vw,120px)}}
@media(max-width:900px){.wrap{width:calc(100% - 38px)}.links,.actions .btn,.lang{display:none}.menu{display:block;margin-left:auto}.hero h1{font-size:clamp(58px,15vw,90px)}.position-grid,.why-grid,.lab-grid,.contact-grid{grid-template-columns:1fr}.principles{grid-template-columns:1fr 1fr}.material-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.material-grid::-webkit-scrollbar{display:none}.material{min-width:min(82vw,620px);scroll-snap-align:start}.sector-grid{grid-template-columns:1fr 1fr}.method-grid{grid-template-columns:1fr 1fr}.method-item:last-child{grid-column:1/-1}.contact-visual{min-height:430px}.footer-top{align-items:flex-start;flex-direction:column}.footer-brand img{width:min(340px,78vw)}}
@media(max-width:620px){.section{padding:88px 0}.section-head{grid-template-columns:1fr;gap:24px}.principles,.sector-grid,.method-grid{grid-template-columns:1fr}.method-item:last-child{grid-column:auto}.material{min-width:calc(100vw - 32px);min-height:430px}.proof-row{grid-template-columns:40px 1fr}.proof-row p{grid-column:2}.footer-bottom{flex-direction:column;gap:14px}.footer-brand p{font-size:10px;line-height:1.5}.brand-strip .wrap{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Canonical hardening and interaction states */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:focus-visible{outline:2px solid currentColor;outline-offset:5px}main section[id]{scroll-margin-top:104px}.header{transition:background .25s ease,border-color .25s ease}.header.is-scrolled{background:rgba(3,6,8,.97);border-color:rgba(255,255,255,.14)}
.links a{position:relative;display:flex;align-items:center;min-height:44px}.links a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:1px;background:currentColor;transition:right .25s ease}.links a:hover:after,.links a[aria-current="location"]:after{right:0}
.menu{min-width:44px;min-height:44px;color:#fff;border:0;background:transparent;cursor:pointer}.menu span{font-size:22px;line-height:1}.canonical-mobile-menu{position:fixed;z-index:68;inset:88px 0 0;background:#05090b;color:#fff;padding:clamp(32px,7vh,72px) max(20px,env(safe-area-inset-right)) calc(32px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));overflow-y:auto;overscroll-behavior:contain}.canonical-mobile-menu[hidden]{display:none}.canonical-mobile-menu nav{width:min(100%,680px);margin:auto}.canonical-mobile-menu a{display:flex;align-items:center;justify-content:space-between;min-height:58px;border-bottom:1px solid rgba(255,255,255,.12);font-size:clamp(18px,5vw,28px);letter-spacing:-.02em}.canonical-mobile-menu a[aria-current="location"]:after{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.canonical-mobile-meta{width:min(100%,680px);margin:34px auto 0;color:#8f999e;font-size:9px;letter-spacing:.18em;text-transform:uppercase}html.menu-open,body.menu-open{overflow:hidden!important;overscroll-behavior:none}
.motion-ready [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.motion-ready [data-reveal]{opacity:1;transform:none;transition:none}}
@media(max-width:900px){.nav{height:72px}.logo img{width:204px}.hero{padding-top:72px}.hero .wrap{min-height:calc(100svh - 72px)}.canonical-mobile-menu{inset:72px 0 0}.header{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}
@media(max-width:620px){.hero-copy{padding:8vh 0 9vh}.hero h1{font-size:clamp(52px,15vw,76px);line-height:.86;letter-spacing:-.058em}.lead{font-size:14px}.hero-buttons{margin-top:28px}.hero-buttons .btn{width:100%;min-height:48px}.brand-strip span{padding:17px 10px;font-size:8px}.section-head h2,.position h2,.why h2,.contact h2,.lab h2{font-size:clamp(46px,13vw,68px);line-height:.9}.contact-copy{padding:72px 20px}.footer-nav{gap:18px 22px}.footer-slogan{max-width:30ch}}

/* V2.3 finishing refinements */
@supports(text-wrap:balance){.hero h1,.section-head h2,.position h2,.why h2,.lab h2,.contact h2,.article h3{text-wrap:balance}}
@media(hover:hover) and (pointer:fine){.material .visual,.sector .scene{transition:transform .8s var(--ease),filter .8s var(--ease)}.material:hover .visual,.sector:hover .scene{transform:scale(1.035);filter:contrast(1.04)}.material:hover,.sector:hover{border-color:rgba(255,255,255,.14)}}
@media(max-width:620px){.material-grid{margin-right:-19px;padding-right:19px}.material{min-width:min(86vw,430px)}.sector{min-height:270px}.contact-visual{min-height:360px}.quote{font-size:clamp(34px,11vw,48px)}.footer-top{gap:42px}.footer-bottom{margin-top:36px}}
@media(prefers-reduced-data:reduce){.hero-media,.visual,.scene{background-image:none!important;filter:none!important}.material .visual,.sector .scene{transition:none!important}}

/* Mobile reading rhythm and safer long-label wrapping */
.material h3,.sector-copy strong,.footer-nav a,.intent li{overflow-wrap:anywhere}.article h3{hyphens:auto}
@media(max-width:420px){.wrap{width:calc(100% - 30px)}.material-grid{margin-right:-15px;padding-right:15px}.material{min-width:88vw}.brand-strip span{letter-spacing:.14em}.proof-row{gap:12px}.contact-copy{padding-left:15px;padding-right:15px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;width:100%}}

/* Disabled contact state while production mailbox is being verified */
.contact .btn[aria-disabled="true"]{cursor:default;pointer-events:none;opacity:.58;background:#20282c;color:#fff}

/* Placeholder system: preserve material identity until local photography is committed */
.carbon{background-image:linear-gradient(35deg,rgba(255,255,255,.055) 25%,transparent 25% 50%,rgba(255,255,255,.055) 50% 75%,transparent 75%),var(--img-carbon);background-size:10px 10px,cover}.resin:before,.adhesive:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 24%,rgba(255,255,255,.18),transparent 20%);mix-blend-mode:screen}.sector .scene{filter:saturate(.78) contrast(1.06)}

/* Content-visibility: defer below-fold paint without affecting document semantics */
@supports(content-visibility:auto){.section:not(.position),.method,.contact{content-visibility:auto;contain-intrinsic-size:auto 900px}}

/* System accessibility preferences */
@media(forced-colors:active){.btn,.material,.sector,.principle{border:1px solid CanvasText}.hero:before,.material:after,.sector:after{display:none}.kicker,.lead,.material p,.sector p{color:CanvasText}.header{background:Canvas}}
@media(prefers-contrast:more){.lead,.materials .section-head p,.why p,.lab p{color:#e8edef}.links a{color:#fff}.btn.outline{border-color:#fff}}

/* Anchor navigation respects the fixed header and user motion preference. */
html{scroll-padding-top:96px}
@media(max-width:900px){html{scroll-padding-top:76px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Contact/footer finishing pass */
.contact .btn.is-disabled{cursor:default;pointer-events:none;user-select:none;opacity:.58;background:#20282c;color:#fff;transform:none}
.footer-brand p{max-width:34ch;color:#aeb8bd}
.footer-nav a{transition:color .2s ease}.footer-nav a:hover{color:#fff}
@media(max-width:620px){.footer-brand img{width:min(320px,82vw)}.footer-brand p{font-size:11px;letter-spacing:.14em}.footer-nav a{min-height:44px;display:flex;align-items:center}}

/* Mobile carousel and narrow-screen finishing pass */
.material-grid:focus-visible{outline:2px solid currentColor;outline-offset:7px}
@media(max-width:900px){
  .material-grid{gap:10px;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scroll-padding-inline:0 19px}
  .material{scroll-snap-stop:always}
}
@media(max-width:620px){
  .material-grid{padding-bottom:5px}
  .material:first-child{min-width:min(84vw,420px)}
  .principle{min-height:230px}
  .principle .no{font-size:52px}
}
@media(max-width:390px){
  .hero h1{font-size:clamp(48px,14.2vw,58px);letter-spacing:-.052em}
  .hero .kicker{margin-bottom:22px}
  .lead{line-height:1.55}
  .material-copy{left:20px;right:20px;bottom:20px}
  .material h3{font-size:20px}
  .sector-copy{left:18px;right:18px}
  .canonical-mobile-menu a{min-height:54px}
}
@media(max-width:340px){
  .wrap{width:calc(100% - 24px)}
  .logo img{width:178px}
  .material-grid{margin-right:-12px;padding-right:12px;scroll-padding-inline:0 12px}
  .material{min-width:88vw;min-height:400px}
  .hero h1{font-size:46px}
  .brand-strip span{padding-left:7px;padding-right:7px;letter-spacing:.1em}
  .footer-nav{grid-template-columns:1fr}
}


/* Hero art-direction contract: tuned for the approved clean carbon macro asset */
.hero-media{background-position:72% 48%;transform:scale(1.015);transform-origin:center right}
@media(max-width:1100px){.hero-media{background-position:68% 50%}.hero:before{background:linear-gradient(90deg,#020507 0%,rgba(2,5,7,.97) 38%,rgba(2,5,7,.7) 61%,rgba(2,5,7,.16) 100%)}}
@media(max-width:620px){.hero-media{background-position:64% 50%;transform:scale(1.025)}.hero:before{background:linear-gradient(90deg,rgba(2,5,7,.96) 0%,rgba(2,5,7,.88) 55%,rgba(2,5,7,.45) 100%)}}
@media(prefers-reduced-motion:reduce){.hero-media{transform:none}}


/* Material photography art direction — keeps upcoming local assets consistent */
.material-media{background-position:center;background-size:cover}
.material:nth-child(1) .material-media{background-position:58% 50%}
.material:nth-child(2) .material-media{background-position:50% 46%}
.material:nth-child(3) .material-media{background-position:52% 50%}
.material:nth-child(4) .material-media{background-position:50% 42%}
.material:nth-child(5) .material-media{background-position:55% 50%}
.material:nth-child(6) .material-media{background-position:50% 48%}
@media(max-width:620px){
  .material-media{background-position:center}
  .material:nth-child(1) .material-media{background-position:60% 50%}
  .material:nth-child(2) .material-media{background-position:52% 48%}
}


/* Sector photography art direction — ready for local production assets */
.sector:nth-child(1) .scene{background-position:50% 48%}
.sector:nth-child(2) .scene{background-position:54% 50%}
.sector:nth-child(3) .scene{background-position:62% 50%}
.sector:nth-child(4) .scene{background-position:50% 46%}
.sector:nth-child(5) .scene{background-position:58% 50%}
.sector:nth-child(6) .scene{background-position:52% 50%}
.sector:nth-child(7) .scene{background-position:50% 44%}
.sector:nth-child(8) .scene{background-position:56% 50%}
@media(max-width:620px){
  .sector .scene{background-position:center}
  .sector:nth-child(3) .scene{background-position:64% 50%}
  .sector:nth-child(5) .scene{background-position:60% 50%}
}


/* Visual consistency pass for photographic cards */
.material .visual,.sector .scene{
  transform:translateZ(0);
  image-rendering:auto;
}
.material:after{
  background:linear-gradient(180deg,rgba(3,7,9,.02) 22%,rgba(3,7,9,.28) 56%,rgba(3,7,9,.94) 100%);
}
.sector:after{
  background:linear-gradient(180deg,rgba(3,7,9,.04) 18%,rgba(3,7,9,.18) 52%,rgba(3,7,9,.84) 100%);
}
.material-copy,.sector-copy{text-shadow:0 1px 18px rgba(0,0,0,.24)}
@media(hover:hover) and (pointer:fine){
  .material:hover .visual,.sector:hover .scene{transform:scale(1.028)}
}
@media(prefers-reduced-motion:reduce){
  .material .visual,.sector .scene{transform:none!important}
}

/* MVP launch footer/contact polish */
.footer-bottom a{color:inherit;text-decoration:none}.footer-bottom a:hover,.footer-bottom a:focus-visible{color:#f2f4f5;text-decoration:underline;text-underline-offset:4px}
@media(max-width:620px){.footer-bottom{flex-direction:column;gap:14px;align-items:flex-start}.footer-slogan{margin-top:4px}.contact-copy{padding:72px 24px}.contact-copy .btn{width:100%;justify-content:center}.contact-visual{min-height:360px;padding:28px 24px}}

/* MVP premium footer */
footer{position:relative;overflow:hidden;padding:88px 0 30px;background:radial-gradient(circle at 85% 20%,rgba(91,111,120,.16),transparent 34%),#070b0e}footer:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;background:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 9px)}footer>.wrap{position:relative;z-index:1}.footer-main{display:grid;grid-template-columns:minmax(300px,1.5fr) minmax(160px,.65fr) minmax(250px,.85fr);gap:clamp(48px,7vw,110px);align-items:start}.footer-brand{max-width:520px}.footer-brand img{width:clamp(280px,24vw,390px);height:auto}.footer-brand p{max-width:430px;margin:28px 0 18px;font-size:clamp(18px,1.45vw,24px);line-height:1.45;letter-spacing:-.02em;color:#dce2e4}.footer-brand span,.footer-column>strong,.footer-contact>strong{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.19em;color:#7f8b91;font-weight:700}.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin-top:23px;font-size:12px;text-transform:none;letter-spacing:0;color:#d5dcdf}.footer-nav a,.footer-mail{transition:opacity .2s ease}.footer-nav a:hover,.footer-mail:hover{opacity:.65}.footer-contact{display:flex;flex-direction:column;align-items:flex-start}.footer-mail{margin:23px 0 30px;color:#f2f4f5;font-size:clamp(17px,1.35vw,21px);text-decoration:none}.footer-cta{min-width:210px;justify-content:center}.footer-bottom{position:relative;display:flex;justify-content:space-between;gap:30px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px;margin-top:72px;font-size:9px;color:#7d898f}.footer-slogan{text-transform:uppercase;letter-spacing:.17em;font-weight:700;line-height:1.5}
@media(max-width:900px){.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-contact{align-items:flex-start}}
@media(max-width:620px){footer{padding:70px 0 26px}.footer-main{grid-template-columns:1fr;gap:46px}.footer-brand{grid-column:auto}.footer-brand p{font-size:19px}.footer-contact,.footer-column{width:100%}.footer-cta{width:100%}.footer-bottom{margin-top:58px;flex-direction:column;gap:13px;align-items:flex-start}.footer-slogan{margin-top:0}}

/* MVP marine image hardening */
.sector-card:nth-child(3){background-image:linear-gradient(180deg,rgba(5,10,12,.04),rgba(5,10,12,.76)),url('assets/images/sector-marine-v5.webp')!important;background-size:cover;background-position:center}

/* Compact cinematic hero — MVP final art direction */
.hero{min-height:clamp(620px,78svh,820px)}
.hero .wrap{min-height:clamp(532px,calc(78svh - 88px),732px)}
.hero-media{background-position:72% 48%;filter:contrast(1.16) saturate(.62) brightness(.76);transform:scale(1.015)}
.hero:before{background:linear-gradient(90deg,#020507 0%,rgba(2,5,7,.97) 28%,rgba(2,5,7,.78) 47%,rgba(2,5,7,.22) 72%,rgba(2,5,7,.06) 100%)}
.hero:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(2,5,7,.14) 0%,transparent 50%,rgba(2,5,7,.34) 100%);pointer-events:none}
.hero-copy{max-width:880px;padding:clamp(72px,8vh,104px) 0}
.hero h1{font-size:clamp(64px,6.6vw,108px);line-height:.86;max-width:10.8ch;margin-bottom:30px}
.hero .lead{max-width:680px}
@media(max-width:900px){
 .hero{min-height:clamp(640px,86svh,780px)}
 .hero .wrap{min-height:clamp(568px,calc(86svh - 72px),708px)}
 .hero-media{background-position:68% center;filter:contrast(1.12) saturate(.62) brightness(.64)}
 .hero:before{background:linear-gradient(90deg,rgba(2,5,7,.98) 0%,rgba(2,5,7,.88) 48%,rgba(2,5,7,.38) 100%)}
 .hero-copy{padding:72px 0 56px}
}
@media(max-width:620px){
 .hero{min-height:clamp(620px,88svh,740px)}
 .hero .wrap{min-height:clamp(548px,calc(88svh - 72px),668px);align-items:flex-end}
 .hero-media{background-position:64% center}
 .hero:before{background:linear-gradient(180deg,rgba(2,5,7,.18) 0%,rgba(2,5,7,.38) 32%,rgba(2,5,7,.92) 68%,#020507 100%)}
 .hero-copy{padding:110px 0 48px}
 .hero h1{font-size:clamp(50px,14.2vw,72px);max-width:9.8ch}
}

/* Visual visibility correction — explicit production selectors */
.hero .hero-media{
  background-image:url('assets/images/karbora-hero-carbon.webp')!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-position:74% 48%!important;
  opacity:1!important;
  filter:contrast(1.08) saturate(.78) brightness(1.08)!important;
}
.hero:before{
  display:block!important;
  background:linear-gradient(90deg,#020507 0%,rgba(2,5,7,.92) 27%,rgba(2,5,7,.55) 48%,rgba(2,5,7,.08) 76%,rgba(2,5,7,0) 100%)!important;
}
.sector .scene.marine{
  background-image:url('assets/images/sector-marine-v5.webp')!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  opacity:1!important;
}
.contact-visual{
  position:relative;
  isolation:isolate;
  background-image:linear-gradient(180deg,rgba(3,7,9,.12),rgba(3,7,9,.72)),url('assets/images/material-resin.webp')!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
.contact-visual:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,7,9,.15),rgba(3,7,9,.02))}
@media(max-width:620px){
 .hero .hero-media{background-position:67% 38%!important;filter:contrast(1.05) saturate(.72) brightness(.92)!important}
 .hero:before{background:linear-gradient(180deg,rgba(2,5,7,.05) 0%,rgba(2,5,7,.24) 35%,rgba(2,5,7,.88) 70%,#020507 100%)!important}
 .contact-visual{background-position:center!important}
}

/* Structural image fallback: real IMG elements prevent background-image suppression */
.hero-media>img,.sector .scene>img{width:100%;height:100%;display:block;object-fit:cover}
.hero-media>img{object-position:74% 48%}
.sector .scene.marine>img{object-position:center}
.hero .hero-media{background-image:none!important;filter:none!important}
.sector .scene.marine{background-image:none!important;filter:none!important}
.contact-visual{background-image:linear-gradient(145deg,#111a1f,#05090b)!important}
.contact-visual:before{display:none!important}
@media(max-width:620px){.hero-media>img{object-position:67% 38%}}

/* Compact footer after approved content reduction */
.footer-main{align-items:center}
.footer-brand{align-self:center}
.footer-brand img{margin:0}
@media(max-width:900px){.footer-main{align-items:start}}

/* Definitive visible-media layer: critical images are foreground IMG nodes */
.hero-media{z-index:0!important;display:block!important;opacity:1!important}
.hero-media>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;visibility:visible!important;opacity:1!important;object-fit:cover!important;object-position:74% 48%!important;filter:contrast(1.08) saturate(.82) brightness(1.08)!important}
.hero:before{z-index:1!important;display:block!important}
.hero .wrap{z-index:2!important}
.contact-visual{position:relative!important;overflow:hidden!important;background:#05090b!important}
.contact-visual>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;visibility:visible!important;opacity:1!important;object-fit:cover!important;object-position:center!important;z-index:0!important}
.contact-visual:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(3,7,9,.10),rgba(3,7,9,.64))}
.contact-visual .quote{position:relative;z-index:2}
@media(max-width:620px){.hero-media>img{object-position:67% 38%!important}}

/* Marine foreground image: explicit stacking above sector surface */
.sector{isolation:isolate}
.sector .scene.marine{position:absolute!important;inset:0!important;z-index:0!important;display:block!important;visibility:visible!important;opacity:1!important;overflow:hidden!important}
.sector .scene.marine>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;visibility:visible!important;opacity:1!important;object-fit:cover!important;object-position:center!important;filter:contrast(1.04) saturate(.9)!important}
.sector:after{z-index:1}
.sector-copy{z-index:2!important}


/* 2026-09-30 critical-media consolidation — v3 assets */
.hero-media{transform:none!important;overflow:hidden!important;background:#020507!important}
.hero-media>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;opacity:1!important;visibility:visible!important;object-fit:cover!important;object-position:74% 48%!important;filter:contrast(1.08) saturate(.82) brightness(1.08)!important}
.hero:before{background:linear-gradient(90deg,#020507 0%,rgba(2,5,7,.90) 27%,rgba(2,5,7,.48) 49%,rgba(2,5,7,.05) 78%,transparent 100%)!important}
.sector .scene.marine{position:absolute!important;inset:0!important;display:block!important;opacity:1!important;visibility:visible!important;background:none!important;filter:none!important;transform:none!important}
.sector .scene.marine>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;opacity:1!important;visibility:visible!important;object-fit:cover!important;object-position:center!important;filter:none!important}
.contact-visual{position:relative!important;isolation:isolate!important;overflow:hidden!important;background:#05090b!important}
.contact-visual>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;opacity:1!important;visibility:visible!important;object-fit:cover!important;object-position:center!important;z-index:0!important}
.contact-visual:after{content:"";position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(180deg,rgba(3,7,9,.04),rgba(3,7,9,.60))!important}
.contact-visual .quote{position:relative!important;z-index:2!important}
@media(max-width:620px){
 .hero-media>img{object-position:67% 38%!important}
 .hero:before{background:linear-gradient(180deg,rgba(2,5,7,.05) 0%,rgba(2,5,7,.22) 34%,rgba(2,5,7,.86) 70%,#020507 100%)!important}
}


/* Marine sector: match the shared card hover interaction */
.sector .scene.marine{
  filter:saturate(.78) contrast(1.06)!important;
  transition:transform .8s var(--ease),filter .8s var(--ease)!important;
  transform:translateZ(0)!important;
}
@media(hover:hover) and (pointer:fine){
  .sector:hover .scene.marine{
    transform:scale(1.028)!important;
    filter:contrast(1.04)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .sector .scene.marine{transform:none!important;transition:none!important}
}

/* Uploaded cinematic hero: static fallback remains until playback succeeds. */
.hero-media>.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;opacity:0;pointer-events:none;transition:opacity .35s ease}
.hero-media.is-playing>.hero-video{opacity:1}
.hero-video-toggle{position:absolute;z-index:3;right:24px;bottom:20px;min-height:44px;padding:10px 15px;border:1px solid rgba(255,255,255,.4);background:rgba(2,5,7,.65);color:#fff;font-size:14px;cursor:pointer}
.hero-video-toggle[hidden]{display:none}
.hero:before{background:linear-gradient(90deg,rgba(2,5,7,.96) 0%,rgba(2,5,7,.86) 28%,rgba(2,5,7,.58) 48%,rgba(2,5,7,.12) 76%,rgba(2,5,7,.08) 100%)!important}
@media(max-width:620px){.hero-media>.hero-video{object-position:65% center}.hero:before{background:linear-gradient(180deg,rgba(2,5,7,.16) 0%,rgba(2,5,7,.4) 34%,rgba(2,5,7,.9) 70%,#020507 100%)!important}.hero-video-toggle{right:15px;bottom:10px}}
@media(prefers-reduced-motion:reduce){.hero-media>.hero-video{display:none;transition:none}}

/* Manual language selector */
.lang-switch{display:inline-flex;align-items:center}.lang-switch select{appearance:none;border:0;background:transparent;color:#dfe3e5;font:inherit;font-size:10px;letter-spacing:.08em;padding:8px 2px;cursor:pointer}.lang-switch select:focus-visible{outline:1px solid #fff;outline-offset:3px}.lang-switch option{color:#05090b;background:#fff}@media(max-width:620px){.lang-switch select{font-size:11px;padding:12px 2px}}

/* Arabic: preserve the hero text safe area while using RTL reading order. */
html[lang="ar"] body{font-family:Tahoma,"Segoe UI",Arial,sans-serif}
html[lang="ar"] .nav,html[lang="ar"] .hero>.wrap{direction:ltr}
html[lang="ar"] .hero-copy,html[lang="ar"] .links,html[lang="ar"] .actions{direction:rtl}
html[lang="ar"] .hero-copy{text-align:right}
html[lang="ar"] .kicker,html[lang="ar"] .btn,html[lang="ar"] .links a,html[lang="ar"] .footer-slogan{letter-spacing:normal}
html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3{letter-spacing:normal;line-height:1.35}
html[lang="ar"] .hero h1{font-size:clamp(48px,5.5vw,86px);max-width:14ch}
html[lang="ar"] .footer-nav,html[lang="ar"] .footer-contact{align-items:flex-start}
html[lang="ar"] .lang-switch select{direction:ltr}
@media(max-width:620px){html[lang="ar"] .hero h1{font-size:clamp(38px,10vw,56px)}}
