:root{
--bg:#26363b; --bg-2:#1b282c; --rail:#0a1013; --panel:#3b5259; --line:#5f7d87; --ink:#f4f9fa; --muted:#c9d6d9; --accent:#5fd0c6; --accent-dim:#3f9f97;
--cyan:#7ce6db;
--brand-deep:#0c313d; --ease: cubic-bezier(.16,.84,.44,1); --rail-w: clamp(120px, 6.2vw, 158px);  --font-display: 'TASA Orbiter', 'Manrope', sans-serif; --font-body: 'Inter', sans-serif; }
*{box-sizing:border-box;} html{scroll-behavior:smooth; overflow-x:hidden;}
body{
margin:0;
font-family:var(--font-body);
color:var(--ink);
background:var(--bg);
-webkit-font-smoothing:antialiased;
overflow-x:hidden;
} .oa-js body{cursor:none;}
h1,h2,h3{font-family:var(--font-display); margin:0; letter-spacing:-.02em;}
p{line-height:1.75; color:var(--muted); margin:0 0 14px;}
a{color:inherit; text-decoration:none;}
ul{margin:0; padding:0; list-style:none;}
img,video{max-width:100%; display:block;}
button{font-family:inherit;}
::selection{background:var(--accent); color:#08191e;}
.oa-js button, .oa-js a, .oa-js .cursor-pointer{cursor:none;} .cursor-dot, .cursor-ring{display:none;}
.cursor-dot, .cursor-ring{
position:fixed; top:0; left:0; pointer-events:none; z-index:9999;
border-radius:50%; will-change:transform; transform:translate(-100px,-100px);
}
@media (min-width:881px) and (min-height:521px){
.oa-js .cursor-dot, .oa-js .cursor-ring{display:block;}
}
.cursor-dot{
width:13px; height:13px; background:#7ff2e6;
box-shadow:0 0 8px 2px rgba(98,210,200,.9), 0 0 18px 5px rgba(98,210,200,.5);
transition:width .2s var(--ease), height .2s var(--ease);
}
.cursor-ring{
width:40px; height:40px; border:1.5px solid #62d2c8;
box-shadow:0 0 12px rgba(98,210,200,.35);
transition:width .3s var(--ease), height .3s var(--ease), background .3s var(--ease);
}
.cursor-ring.hover{
width:66px; height:66px;
background:rgba(98,210,200,.14);
}
@media (max-width:880px), (max-height:520px){
.oa-js body, .oa-js a, .oa-js button{cursor:auto;}
} .oa-js :is(.cky-consent-container,.cky-consent-bar,.cky-modal,.cky-overlay,
.cky-preference-center,.cky-btn-revisit-wrapper,.cky-notice,
.cli-modal,.cli-modal-backdrop,.cli-settings-overlay,.cli-bar-container),
.oa-js :is(.cky-consent-container,.cky-consent-bar,.cky-modal,.cky-overlay,
.cky-preference-center,.cky-btn-revisit-wrapper,.cky-notice,
.cli-modal,.cli-modal-backdrop,.cli-settings-overlay,.cli-bar-container) *{cursor:auto;}
.oa-js :is(.cky-consent-container,.cky-consent-bar,.cky-modal,.cky-overlay,
.cky-preference-center,.cky-btn-revisit-wrapper,.cky-notice,
.cli-modal,.cli-modal-backdrop,.cli-settings-overlay,.cli-bar-container)
:is(a,button,input,select,label,summary,[role="button"]){cursor:pointer;} .oa-js :is(#cookie-law-info-bar,#cookie-law-info-again,#wpadminbar),
.oa-js :is(#cookie-law-info-bar,#cookie-law-info-again,#wpadminbar) *{cursor:auto;}
.oa-js :is(#cookie-law-info-bar,#cookie-law-info-again,#wpadminbar)
:is(a,button,input,select,label,summary,[role="button"]){cursor:pointer;}
.wrap{max-width:1200px; margin:0 auto; padding:0 32px;} header.nav{
position:fixed; top:0; left:0; right:0; z-index:65;
transition:background .4s var(--ease), border-color .4s var(--ease);
border-bottom:1px solid transparent;
}
header.nav.solid{
background:rgba(38,54,59,.9);
backdrop-filter:blur(14px);
border-color:var(--line);
}
.nav-inner{
display:flex; align-items:center; justify-content:space-between;
padding:20px 32px; max-width:1200px; margin:0 auto;
}
.logo-mark{
display:flex; align-items:center; gap:10px;
color:#fff; font-weight:800; font-size:19px; letter-spacing:.02em;
font-family:var(--font-display);
opacity:0; transform:translateY(-10px);
animation:dropIn .7s var(--ease) .1s forwards;
}
.logo-mark .dot{width:9px; height:9px; border-radius:50%; background:var(--accent); box-shadow:0 0 14px 2px rgba(95,208,198,.6);}
.logo-brand{display:inline-flex; align-items:center; opacity:0; transform:translateY(-10px); animation:dropIn .7s var(--ease) .1s forwards;}
.logo-brand img{height:48px; width:auto; display:block;}
@media (max-width:880px){ .logo-brand img{height:40px;} }
nav.links{display:flex;}
nav.links ul{display:flex; gap:30px; margin:0; padding:0; list-style:none;}
nav.links a{
color:var(--muted); font-size:14px; font-weight:600;
text-transform:uppercase; letter-spacing:.06em;
position:relative; padding:6px 0; display:inline-block;
opacity:0; transform:translateY(-10px);
transition:color .3s var(--ease);
}
nav.links a::after{
content:''; position:absolute; left:0; bottom:0;
width:0; height:1px; background:var(--accent);
transition:width .3s var(--ease);
}
nav.links a:hover{color:#fff;}
nav.links a:hover::after{width:100%;}
nav.links li.current-menu-item > a{color:#fff;}
nav.links li.current-menu-item > a::after{width:100%;}
@keyframes dropIn{ to{opacity:1; transform:translateY(0);} } @media (min-width:881px) and (min-height:521px){ body{ padding-left:var(--rail-w); } }
.side-rail{
position:fixed; top:0; left:0; bottom:0; z-index:65;
width:var(--rail-w); height:100vh; height:100dvh;
display:flex; flex-direction:column; align-items:center; justify-content:center; gap:26px;
padding:96px 0 40px;
overflow:hidden; background:var(--rail);
border-right:1px solid var(--line);
box-shadow:inset -1px 0 0 rgba(150,210,215,.10), 8px 0 30px -8px rgba(0,0,0,.6);
}
body.admin-bar .side-rail{top:32px;} @media (min-width:881px) and (min-height:521px){
body.admin-bar .side-rail{height:calc(100vh - 32px); height:calc(100dvh - 32px);}
}
.side-rail::-webkit-scrollbar{width:0; display:none;} .side-rail-logo, .side-rail-bottom{z-index:1;}
.nav-toggle{position:relative; z-index:1;} @media (min-width:881px) and (min-height:521px){
.nav-toggle::before{
content:''; position:absolute; left:50%; top:50%; pointer-events:none;
width:calc(var(--rail-w) * .95); height:96px; transform:translate(-50%,-50%);
background:radial-gradient(50% 50% at 50% 50%, #0a1013 42%, rgba(10,16,19,.94) 63%, rgba(10,16,19,0) 100%);
}
} .rail-crack{position:absolute; left:0; right:0; top:calc(24px + var(--rail-w) * .311); bottom:84px;
z-index:0; pointer-events:none; overflow:visible; animation:railFade 1.1s var(--ease) .35s backwards;}
@keyframes railFade{ from{opacity:0;} to{opacity:1;} }
.rail-crack svg{position:absolute; inset:0; width:100%; height:100%; display:block; overflow:visible;}
.rail-crack .rc-h{display:none;}
.rc-charge-h{stroke:url(#rcGradH);} .rc-line, .rc-stub{fill:none; stroke:rgba(140,190,190,.22); stroke-width:2; stroke-linecap:butt; stroke-linejoin:miter;}
.rc-stub{stroke-width:1.6;} .rc-charge{fill:none; stroke:url(#rcGrad); stroke-width:2.4; stroke-linecap:butt; stroke-linejoin:miter;
filter:drop-shadow(0 0 5px rgba(95,208,198,.85)) drop-shadow(0 0 14px rgba(95,208,198,.45)); stroke-dasharray:var(--scroll, 0) 2; stroke-dashoffset:0;
transition:stroke-dasharray .1s linear;} .rc-via{fill:var(--rail); stroke:var(--cyan); stroke-width:2; transition:stroke .2s linear, filter .2s linear;
stroke-opacity:clamp(.2, calc(.2 + (var(--scroll,0) - var(--t,0)) * 12), 1);}
.rc-via[style*="--t"]{filter:drop-shadow(0 0 calc(6px * clamp(0, calc((var(--scroll,0) - var(--t,0)) * 12), 1)) var(--cyan));} .rc-pad{fill:var(--cyan); transition:opacity .2s linear;
opacity:clamp(.18, calc(.18 + (var(--scroll,0) - var(--t,0)) * 12), 1);} .rc-end{fill:var(--rail); stroke:var(--cyan); stroke-width:2.4;
stroke-opacity:clamp(.25, calc(.25 + (var(--scroll,0) - var(--t,0)) * 14), 1);} @media (max-width:880px), (max-height:520px){ .rail-crack{top:0; bottom:0; left:0; right:0; height:auto;}
.rail-crack .rc-v{display:none;}
.rail-crack .rc-h{display:block;}
}
@media (prefers-reduced-motion: reduce){
.rc-charge{transition:none;}
.rail-crack{opacity:1; animation:none;}
}
.side-rail-logo{
position:absolute; top:24px; left:0; right:0;
display:flex; align-items:center; justify-content:center; flex:none;
opacity:0; animation:dropIn .7s var(--ease) .1s forwards;
}
.side-rail-logo img{width:calc(var(--rail-w) * .883); height:auto; display:block;}
.nav-toggle{flex:none;}
.side-rail-bottom{position:absolute; bottom:30px; left:0; right:0; display:flex; flex-direction:column; align-items:center; gap:12px;}
.side-rail-lang{display:flex; flex-direction:column; align-items:center; gap:7px; text-decoration:none; opacity:0; animation:dropIn .7s var(--ease) .25s forwards;}
.side-rail-lang-flag{display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border:1px solid var(--line); border-radius:50%; font-size:16px; line-height:1; transition:background .3s var(--ease),border-color .3s var(--ease);}
.side-rail-lang-label{font-family:var(--font-display); font-weight:600; font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); transition:color .3s var(--ease);}
.side-rail-lang:hover .side-rail-lang-flag{background:var(--accent); border-color:var(--accent);}
.side-rail-lang:hover .side-rail-lang-label{color:var(--accent);}
body.admin-bar .side-rail{top:32px;}
@media screen and (max-width:782px){ body.admin-bar .side-rail{top:46px; height:auto;} }
@media (max-width:880px), (max-height:520px){
body{padding-left:0;}
.side-rail{
flex-direction:row; width:100%; height:auto; left:0; right:0; bottom:auto; padding:26px 18px 26px; min-height:96px;
justify-content:space-between; align-items:center; gap:12px; background:var(--rail); border-right:none; border-bottom:1px solid var(--line);
}
.side-rail-bottom{position:static; flex-direction:row; align-items:center; gap:14px; order:1; margin-left:0;}
.side-rail-lang{flex-direction:row; gap:7px;} .side-rail-logo{order:2; position:absolute; left:50%; right:auto; top:26px; bottom:26px; margin-left:0; width:auto; height:auto; border:none; background:none; box-shadow:none; transform:translateX(-50%); animation:none; opacity:1;}
.side-rail-logo img{width:auto; height:34px;}
.nav-toggle{order:3;}
} .nav-toggle{
display:flex; background:none; border:none; padding:8px;
flex-direction:column; gap:6px; z-index:62;
}
.nav-toggle span{
position:relative;
display:block; width:26px; height:2px; background:#fff; border-radius:2px;
transition:transform .35s var(--ease), opacity .3s var(--ease);
}
.nav-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.nav-toggle.open span:nth-child(2){opacity:0;}
.nav-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
.menu-backdrop{
position:fixed; inset:0; background:rgba(8,12,14,.55);
-webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);
opacity:0; transition:opacity .4s var(--ease); z-index:59;
}
.menu-backdrop.open{opacity:1;} .mobile-menu{
position:fixed; top:0; left:var(--rail-w); bottom:0; right:auto; z-index:60;
width:min(clamp(560px, 40vw, 820px), calc(100vw - var(--rail-w))); height:100%;
background:var(--rail);
border-right:1px solid var(--line);
transform:translateX(-101%);
transition:transform .5s var(--ease);
overflow-y:auto; box-shadow:40px 0 90px rgba(0,0,0,.55); scrollbar-width:thin; scrollbar-color:var(--line) transparent;
}
.mobile-menu::-webkit-scrollbar{width:6px;}
.mobile-menu::-webkit-scrollbar-track{background:transparent;}
.mobile-menu::-webkit-scrollbar-thumb{background:var(--line); border-radius:3px;}
.mobile-menu::-webkit-scrollbar-thumb:hover{background:var(--accent);}
.mobile-menu.open{transform:translateX(0);}
.mobile-menu-close{
position:absolute; top:30px; right:30px; z-index:2;
width:46px; height:46px; border-radius:0; border:1px solid var(--line);
background:transparent; color:var(--muted); font-size:22px; line-height:1;
display:flex; align-items:center; justify-content:center;
transition:color .25s var(--ease), border-color .25s var(--ease), background .25s var(--ease);
}
.mobile-menu-close:hover{border-color:var(--accent); color:var(--accent); background:rgba(95,208,198,.08);}
.mobile-menu-inner{padding:clamp(56px, 7vh, 104px) clamp(30px, 4vw, 56px) clamp(30px, 4.4vh, 60px); min-height:100%; box-sizing:border-box; display:flex; flex-direction:column;}
.mobile-menu-logo{width:auto; height:clamp(24px, 2.9vh, 38px); display:block; align-self:flex-start; margin-bottom:clamp(14px, 3.6vh, 56px); opacity:.9;}
.mobile-menu ul{display:flex; flex-direction:column; gap:0; list-style:none; margin:0; padding:0;}
.mobile-menu > .mobile-menu-inner > .menu{width:100%; text-align:left;} .mobile-menu > .mobile-menu-inner > .menu > li{position:relative; border-bottom:1px solid rgba(140,190,190,.16);}
.mobile-menu > .mobile-menu-inner > .menu > li:first-child{border-top:1px solid rgba(140,190,190,.16);} .mobile-menu > .mobile-menu-inner > .menu > li::after{
content:''; position:absolute; left:0; right:0; bottom:-1px; height:1px;
background:var(--cyan); box-shadow:0 0 8px rgba(95,208,198,.8);
transform:scaleX(0); transform-origin:left center;
transition:transform .45s var(--ease);
}
.mobile-menu > .mobile-menu-inner > .menu > li:hover::after{transform:scaleX(1);}
.mobile-menu > .mobile-menu-inner > .menu > li > a{
position:relative; display:flex; align-items:center; gap:22px;
font-family:var(--font-display); font-size:clamp(22px, 2.35vh, 32px); font-weight:800; line-height:1.15;
color:#fff; letter-spacing:-.015em;
padding:clamp(8px, 1.85vh, 30px) 0; transition:color .3s var(--ease), transform .35s var(--ease);
} .mobile-menu > .mobile-menu-inner > .menu > li > a::before{
content:''; flex:none; width:11px; height:11px; border-radius:50%;
border:2px solid var(--line); background:transparent;
transition:border-color .3s var(--ease), background .3s var(--ease), box-shadow .3s var(--ease);
} .mobile-menu > .mobile-menu-inner > .menu > li > .menu-title{
position:relative; display:flex; align-items:center; gap:22px;
font-family:var(--font-display);
font-size:clamp(22px, 2.35vh, 32px); font-weight:800; line-height:1.15;
color:#fff; letter-spacing:-.015em; cursor:default;
padding:30px 0; transition:color .3s var(--ease);
}
.mobile-menu > .mobile-menu-inner > .menu > li > .menu-title::before{
content:''; flex:none; width:11px; height:11px; border-radius:50%;
border:2px solid var(--line); background:transparent;
transition:border-color .3s var(--ease), background .3s var(--ease), box-shadow .3s var(--ease);
} .mobile-menu > .mobile-menu-inner > .menu > li:hover > .menu-title{color:var(--cyan);}
.mobile-menu > .mobile-menu-inner > .menu > li:hover > .menu-title::before{
border-color:var(--cyan); background:var(--cyan); box-shadow:0 0 12px var(--cyan);
}
.mobile-menu .sub-menu .menu-title{color:#fff; font-weight:700; cursor:default;}
.mobile-menu .sub-menu li:hover > .menu-title{color:var(--cyan);}
.mobile-menu > .mobile-menu-inner > .menu > li > a:hover{color:var(--cyan); transform:translateX(10px);}
.mobile-menu > .mobile-menu-inner > .menu > li > a:hover::before{
border-color:var(--cyan); background:var(--cyan); box-shadow:0 0 12px var(--cyan);
}
.mobile-menu > .mobile-menu-inner > .menu > li.current-menu-item > a{color:var(--cyan);}
.mobile-menu > .mobile-menu-inner > .menu > li.current-menu-item > a::before{border-color:var(--cyan); background:var(--cyan);} .mobile-menu > .mobile-menu-inner > .menu > li{opacity:0; transform:translateX(-18px); transition:opacity .5s var(--ease), transform .5s var(--ease);}
.mobile-menu.open > .mobile-menu-inner > .menu > li{opacity:1; transform:none;}
.mobile-menu.open > .mobile-menu-inner > .menu > li:nth-child(1){transition-delay:.10s;}
.mobile-menu.open > .mobile-menu-inner > .menu > li:nth-child(2){transition-delay:.16s;}
.mobile-menu.open > .mobile-menu-inner > .menu > li:nth-child(3){transition-delay:.22s;}
.mobile-menu.open > .mobile-menu-inner > .menu > li:nth-child(4){transition-delay:.28s;}
.mobile-menu.open > .mobile-menu-inner > .menu > li:nth-child(5){transition-delay:.34s;}
.mobile-menu.open > .mobile-menu-inner > .menu > li:nth-child(6){transition-delay:.40s;}
.mobile-menu.open > .mobile-menu-inner > .menu > li:nth-child(n+7){transition-delay:.46s;}
@media (max-width:880px), (max-height:520px){
.mobile-menu{left:0; width:100vw;}
.mobile-menu-inner{padding:96px 26px 48px;}
.mobile-menu > .mobile-menu-inner > .menu > li > a{font-size:clamp(24px, 5.4vw, 28px); padding:24px 0; gap:16px;}
}
@media (prefers-reduced-motion: reduce){
.mobile-menu > .mobile-menu-inner > .menu > li{opacity:1; transform:none; transition:none;}
}
.mobile-menu > .mobile-menu-inner > .menu > li > a:hover::before{opacity:1;} .mobile-menu .sub-menu{
list-style:none; margin:clamp(9px, 1.2vh, 16px) 0 clamp(11px, 1.7vh, 26px) 5px; padding:2px 0 2px 20px;
display:flex; flex-direction:column; gap:clamp(7px, 1.1vh, 18px);
border-left:1px solid rgba(140,190,190,.20);
}
.mobile-menu .sub-menu a{
position:relative; padding-left:6px; font-size:clamp(18px, 1.75vh, 24px); font-weight:600; color:var(--muted);
transition:color .25s var(--ease), padding-left .25s var(--ease);
}
.mobile-menu .sub-menu a::before{
content:''; position:absolute; left:-20px; top:.66em; width:13px; height:1px;
background:rgba(140,190,190,.34); transition:background .25s var(--ease);
}
.mobile-menu .sub-menu a::after{
content:''; position:absolute; left:-9px; top:.66em; width:6px; height:6px; margin-top:-3px;
border-radius:50%; background:var(--line);
transition:background .25s var(--ease), box-shadow .25s var(--ease);
}
.mobile-menu .sub-menu a:hover{color:#fff; padding-left:10px;}
.mobile-menu .sub-menu a:hover::before{background:var(--cyan);}
.mobile-menu .sub-menu a:hover::after{background:var(--cyan); box-shadow:0 0 10px var(--cyan);}
.mobile-menu .sub-menu .sub-menu{margin:clamp(9px, 1.2vh, 16px) 0 6px 3px; padding-left:18px;}
.mobile-menu .sub-menu .sub-menu a{font-size:clamp(16px, 1.55vh, 20px);}
body.menu-open{overflow:hidden;}
@media (max-width:880px), (max-height:520px){ .mobile-menu{width:100%; max-width:none; left:0; border-right:none; box-shadow:none;}
.mobile-menu-logo{display:none;}
.mobile-menu-inner{padding:82px 26px 40px;}
body.admin-bar .mobile-menu-inner{padding-top:116px;}
.mobile-menu > .mobile-menu-inner > .menu > li > a{font-size:27px; padding:14px 0 14px 18px;}
.mobile-menu .sub-menu a{font-size:20px;}
}
@media (max-width:782px){
body.admin-bar .mobile-menu-inner{padding-top:122px;}
} .hero{
position:relative; height:100vh; min-height:680px;
overflow:hidden;
display:flex; align-items:center;
}
.hero .bg{position:absolute; inset:0; overflow:hidden;}
.hero .bg video, .hero .bg img{width:100%; height:100%; object-fit:cover; object-position:center 30%; filter:grayscale(.25) brightness(.55);}
.hero::after{
content:''; position:absolute; inset:0;
background:
radial-gradient(ellipse at 20% 30%, rgba(95,208,198,.12), transparent 55%),
linear-gradient(180deg, rgba(15,24,27,.58) 0%, rgba(24,36,40,.42) 40%, rgba(38,54,59,.97) 100%);
}
.hero-content{position:relative; z-index:2; max-width:1200px; margin:0 auto; width:100%; padding:0 32px;}
.eyebrow{
display:flex; align-items:center; gap:10px;
color:var(--accent); font-size:13.5px; font-weight:700; letter-spacing:.22em;
text-transform:uppercase; margin-bottom:22px;
opacity:0; transform:translateY(16px);
animation:riseIn .8s var(--ease) .5s forwards;
}
.eyebrow::before{content:''; width:26px; height:1px; background:var(--accent);}
.hero h1{
color:#fff; font-size:clamp(42px,7vw,84px); font-weight:800; line-height:.98;
opacity:0; transform:translateY(30px);
animation:riseIn .9s var(--ease) .65s forwards;
} .hero h1 span:not(.oa-w){color:var(--accent);}
.hero-title-oneline{white-space:nowrap; font-size:clamp(28px,9vw,90px); letter-spacing:-.03em;}
.hero .tagline{
color:var(--muted); font-size:20px; font-weight:500; margin-top:22px;
max-width:480px;
opacity:0; transform:translateY(22px);
animation:riseIn .9s var(--ease) .82s forwards;
}
.hero .cta-row{margin-top:34px; opacity:0; animation:riseIn .9s var(--ease) 1s forwards;}
.hero .scroll-cue{
position:absolute; left:32px; bottom:36px; z-index:2;
display:flex; align-items:center; gap:10px;
color:var(--muted); font-size:12px; letter-spacing:.18em; text-transform:uppercase;
opacity:0; animation:riseIn .8s var(--ease) 1.2s forwards;
}
.scroll-cue .line{width:1px; height:40px; background:var(--line); position:relative; overflow:hidden;}
.scroll-cue .line::after{
content:''; position:absolute; top:0; left:0; width:1px; height:40px; background:var(--accent);
animation:scrollLine 2s ease-in-out infinite;
}
@keyframes scrollLine{ from{transform:translateY(-40px);} to{transform:translateY(40px);} }
@keyframes riseIn{ to{opacity:1; transform:translateY(0);} } .marquee{
border-top:1px solid var(--line); border-bottom:1px solid var(--line);
padding:20px 0; overflow:hidden; background:var(--bg-2);
white-space:nowrap;
}
.marquee-track{display:inline-flex; animation:marquee 22s linear infinite;}
.marquee-track span{
font-family:var(--font-display); font-size:17px; font-weight:700;
color:var(--muted); text-transform:uppercase; letter-spacing:.05em;
padding:0 28px; display:inline-flex; align-items:center; gap:28px;
}
.marquee-track span::after{content:'✷'; color:var(--accent); font-size:14px;}
@keyframes marquee{ from{transform:translateX(0);} to{transform:translateX(-50%);} } .section-label{
display:flex; align-items:center; gap:14px; margin-bottom:18px;
}
.section-label .num{
font-family:var(--font-display); font-size:14px; font-weight:700; color:var(--accent);
}
.section-label .txt{
font-size:13px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--muted);
}
.section-label .rule{flex:1; height:1px; background:var(--line);} section{padding:clamp(56px, 7.4vh, 112px) 0;}  .oa-js .reveal{opacity:0; transform:perspective(1300px) rotateX(-36deg) translateY(60px); transform-origin:50% 100%; transition:opacity 1.15s var(--ease), transform 1.15s var(--ease); backface-visibility:hidden;}
.oa-js .reveal:not(.in){will-change:opacity, transform;}
.oa-js .reveal.in{opacity:1; transform:perspective(1300px) rotateX(0deg) translateY(0);}
.oa-js .reveal.d1{transition-delay:.12s;}
.oa-js .reveal.d2{transition-delay:.24s;}
.oa-js .reveal.d3{transition-delay:.36s;}
@media (prefers-reduced-motion: reduce){
.reveal, .oa-js .reveal{opacity:1 !important; transform:none !important; filter:none !important; transition:none !important;}
} .bar-reveal{ position:relative; transition:opacity .9s var(--ease), transform .9s var(--ease); } .bar-reveal.bar-hide{ opacity:0; transform:scaleY(.94); } .bar-reveal.bar-lit{ filter:drop-shadow(0 8px 22px rgba(0,0,0,.3)) drop-shadow(0 0 30px rgba(98,210,200,.26)); } .bar-doors{ position:absolute; inset:0; z-index:6; pointer-events:none; overflow:hidden; }
.bar-doors i{
position:absolute; top:0; bottom:0; width:4px; opacity:0;
background:#9af5ea;
box-shadow:0 0 20px 6px rgba(98,210,200,.9), 0 0 46px 16px rgba(98,210,200,.5);
}
.bar-doors .dl{ left:0; }
.bar-doors .dr{ right:0; }
.bar-doors.run .dl{ animation:doorL 1s var(--ease) forwards; }
.bar-doors.run .dr{ animation:doorR 1s var(--ease) forwards; }
@keyframes doorL{ 0%{ left:0; opacity:0; } 12%{ opacity:1; } 86%{ opacity:1; } 100%{ left:calc(50% - 2px); opacity:0; } }
@keyframes doorR{ 0%{ right:0; opacity:0; } 12%{ opacity:1; } 86%{ opacity:1; } 100%{ right:calc(50% - 2px); opacity:0; } }
@media (prefers-reduced-motion: reduce){
.bar-reveal.bar-hide{ opacity:1; transform:none; }
.bar-doors{ display:none; }
} .scroll-progress{position:fixed; top:0; left:0; height:3px; width:0; z-index:55;
background:linear-gradient(90deg, var(--accent), var(--cyan)); box-shadow:0 0 14px rgba(95,208,198,.6);
transition:width .1s linear; pointer-events:none;}
body.admin-bar .scroll-progress{top:32px;} .hero-content{will-change:transform; position:relative;} .section-label.reveal.in .rule,
.reveal.in .section-label .rule{animation:ruleGrow 1s var(--ease) .15s both;}
@keyframes ruleGrow{from{transform:scaleX(0); transform-origin:left; opacity:0;} to{transform:scaleX(1); opacity:1;}} .value-card, .post-card, .wf-step, .job-card, .stat, .client-card, .iso-badge, .robot-media, .proj-card{
transition:transform .45s var(--ease), box-shadow .45s var(--ease), border-color .45s var(--ease), background .45s var(--ease);
}
.value-card, .post-card, .job-card, .client-card, .stat, .wf-step{
box-shadow:0 2px 5px rgba(0,0,0,.22), 0 18px 40px -14px rgba(0,0,0,.45);
}
.value-card:hover, .post-card:hover, .wf-step:hover, .job-card:hover{
transform:translateY(-9px); border-color:var(--accent);
box-shadow:0 4px 10px rgba(0,0,0,.28), 0 30px 60px -16px rgba(0,0,0,.6);
}
.client-card:hover{box-shadow:0 6px 14px rgba(0,0,0,.3), 0 26px 50px -16px rgba(0,0,0,.55);}
.stat:hover{transform:translateY(-6px);}
.client-card:hover, .iso-badge:hover{transform:translateY(-5px) scale(1.04);} .hero-content::before{content:""; position:absolute; inset:-20% -10% auto -10%; height:60%;
background:radial-gradient(60% 60% at 50% 40%, rgba(98,210,200,.16), transparent 70%);
filter:blur(30px); z-index:-1; pointer-events:none; animation:floaty 9s ease-in-out infinite;} .btn{position:relative; overflow:hidden;}
.btn::after{content:""; position:absolute; top:0; left:-120%; width:60%; height:100%;
background:linear-gradient(100deg, transparent, rgba(255,255,255,.35), transparent);
transform:skewX(-18deg); transition:left .6s var(--ease);}
.btn:hover::after{left:140%;} .reveal[style*="--st"]{transition-delay:calc(var(--st) * 115ms);}  .rise .w{display:inline-block; overflow:hidden; vertical-align:top; padding-bottom:.12em; margin-bottom:-.12em;}
.rise .w > span{display:inline-block; transform:translateY(118%); opacity:0;
transition:transform .82s var(--ease), opacity .82s var(--ease);
transition-delay:calc(var(--wi, 0) * 46ms); will-change:transform;}
.rise.in .w > span{transform:none; opacity:1;} .slide-l{opacity:0; transform:translateX(-64px); transition:opacity .95s var(--ease), transform .95s var(--ease); will-change:transform;}
.slide-r{opacity:0; transform:translateX(64px); transition:opacity .95s var(--ease), transform .95s var(--ease); will-change:transform;}
.slide-l.in, .slide-r.in{opacity:1; transform:none;} .scene{transition:none; will-change:transform, opacity;} .section-label .num, .page-head .num, .wf-step .n, .value-card .n{will-change:transform;}
@media (prefers-reduced-motion: reduce){
.rise .w > span, .slide-l, .slide-r{opacity:1 !important; transform:none !important; transition:none !important;}
}
@media (max-width:700px){ .slide-l{transform:translateX(-28px);} .slide-r{transform:translateX(28px);} .oa-js .reveal{transform:translateY(30px);}
.oa-js .reveal.in{transform:none;}
} .circuit-bg{position:fixed; inset:0; z-index:1; pointer-events:none; overflow:hidden; opacity:.55; transform:translateZ(0); contain:layout paint;
-webkit-mask-image:radial-gradient(125% 115% at 0% 42%, #000 6%, rgba(0,0,0,.62) 38%, rgba(0,0,0,.22) 68%, transparent 92%);
mask-image:radial-gradient(125% 115% at 0% 42%, #000 6%, rgba(0,0,0,.62) 38%, rgba(0,0,0,.22) 68%, transparent 92%);}
.circuit-svg{position:relative; z-index:1; width:100%; height:100%; display:block;}
.circuit-line{fill:none; stroke:rgba(98,210,200,.5); stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round;}
.circuit-line.bright{stroke:#8af0e6; stroke-width:1.9; opacity:.9;}
.circuit-dot{fill:#c2fff5;}
.circuit-dot.blink{animation:cbBlink 3s ease-in-out infinite;}
@keyframes cbBlink{0%,100%{opacity:.45;} 50%{opacity:1;}} .circuit-beam-layer{position:absolute; inset:0; width:100%; height:100%; display:block; pointer-events:none;
opacity:.5; will-change:opacity; animation:beamPulse 5.5s ease-in-out infinite;}
.circuit-beam{fill:none; stroke:var(--cyan); stroke-linecap:round; filter:blur(6px); opacity:1;}
@keyframes beamPulse{0%,100%{opacity:.26;} 50%{opacity:.6;}}
.hero{position:relative; z-index:2;}
.wrap, .hero-content, footer{position:relative; z-index:2;} @media (max-width:880px){
.circuit-bg{opacity:.38;
-webkit-mask-image:radial-gradient(150% 100% at 50% 0%, #000 4%, rgba(0,0,0,.55) 30%, rgba(0,0,0,.18) 60%, transparent 88%);
mask-image:radial-gradient(150% 100% at 50% 0%, #000 4%, rgba(0,0,0,.55) 30%, rgba(0,0,0,.18) 60%, transparent 88%);}
.circuit-line{stroke-width:1.1;}
.circuit-line.bright{stroke-width:1.5;}
}
@media (prefers-reduced-motion: reduce){ .circuit-dot.blink, .circuit-beam-layer{animation:none;} } .cube3d-wrap{display:inline-block; width:40px; height:40px; vertical-align:middle; flex:none;}
.cube3d{position:relative; width:100%; height:100%; transform-style:preserve-3d; animation:cubeSpin 8s linear infinite;}
.cube3d .cf{position:absolute; top:5px; left:5px; width:30px; height:30px; border:1.6px solid var(--cyan); background:rgba(98,210,200,.10); box-shadow:inset 0 0 12px rgba(98,210,200,.28);}
.cube3d .f1{transform:translateZ(15px);}
.cube3d .f2{transform:rotateY(180deg) translateZ(15px);}
.cube3d .f3{transform:rotateY(90deg) translateZ(15px);}
.cube3d .f4{transform:rotateY(-90deg) translateZ(15px);}
.cube3d .f5{transform:rotateX(90deg) translateZ(15px);}
.cube3d .f6{transform:rotateX(-90deg) translateZ(15px);}
@keyframes cubeSpin{
0%{transform:perspective(340px) rotateX(-22deg) rotateY(0deg);}
50%{transform:perspective(340px) rotateX(16deg) rotateY(180deg);}
100%{transform:perspective(340px) rotateX(-22deg) rotateY(360deg);}
}
@media (max-width:820px){ .cube3d-wrap{width:30px; height:30px;} .cube3d .cf{top:3px; left:3px; width:24px; height:24px;} .cube3d .f1{transform:translateZ(12px);} .cube3d .f2{transform:rotateY(180deg) translateZ(12px);} .cube3d .f3{transform:rotateY(90deg) translateZ(12px);} .cube3d .f4{transform:rotateY(-90deg) translateZ(12px);} .cube3d .f5{transform:rotateX(90deg) translateZ(12px);} .cube3d .f6{transform:rotateX(-90deg) translateZ(12px);} }
@media (prefers-reduced-motion: reduce){ .cube3d{animation:none; transform:perspective(340px) rotateX(-24deg) rotateY(-36deg);} } .split{display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center;}
h2.big,h1.big{font-size:clamp(32px,4.2vw,47px); font-weight:800; color:#fff; margin-bottom:22px;} .split .copy h2.big,
.split .copy h1.big{font-size:clamp(25px,2.5vw,34px); line-height:1.2; margin-bottom:18px;}
.split .copy p{font-size:17px;}
.feature-list{margin:20px 0 30px; display:flex; flex-direction:column; gap:12px;}
.feature-list li{
display:flex; align-items:center; gap:14px; font-size:16px; color:var(--ink); font-weight:500;
padding-bottom:12px; border-bottom:1px solid var(--line);
}
.feature-list li:last-child{border-bottom:none;}
.feature-list{counter-reset:ortem-fl;}
.feature-list li{counter-increment:ortem-fl;}
.feature-list li::before{content:'0'attr(data-i); font-family:var(--font-display); font-weight:800; color:var(--accent); font-size:14px; flex:none;} .feature-list li:not([data-i])::before{content:counter(ortem-fl, decimal-leading-zero);}
.btn{
display:inline-flex; align-items:center; gap:10px;
background:var(--accent); color:#08191e;
padding:15px 28px; border-radius:100px; border:none;
font-size:14.5px; font-weight:800; text-transform:uppercase; letter-spacing:.04em;
transition:transform .4s var(--ease), background .4s var(--ease), color .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease);
}
.btn:hover{background:#fff; color:var(--brand-deep); transform:translateY(-3px); box-shadow:0 16px 32px rgba(0,0,0,.28);}
.btn.ghost{
background:transparent; color:#fff; border:1.5px solid var(--line);
}
.btn.ghost:hover{background:#fff; color:var(--brand-deep); border-color:#fff; transform:translateY(-3px); box-shadow:0 16px 32px rgba(0,0,0,.28);}
.media-frame{
position:relative; border-radius:18px; overflow:hidden;
border:1px solid var(--line);
}
.media-frame::after{
content:''; position:absolute; inset:0;
background:linear-gradient(180deg, transparent 60%, rgba(27,40,44,.55));
}
.media-frame img{width:100%; height:100%; object-fit:cover; filter:grayscale(.35) contrast(1.05);
transition:filter .5s var(--ease), transform .6s var(--ease);}
.media-frame:hover img{filter:grayscale(0) contrast(1.05); transform:scale(1.04);} .stats{position:relative; z-index:2; background:var(--bg-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:64px 0;}
.stats-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:left;}
.stat h3{font-size:clamp(34px,4vw,52px); font-weight:800; color:#fff;}
.stat h3 span{color:var(--accent);}
.stat p{font-size:14px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); margin-top:6px;} .action-tag{
display:inline-flex; align-items:center; gap:8px; color:var(--accent);
font-size:13px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; margin-bottom:18px;
}
.action-tag::before{content:''; width:8px; height:8px; border-radius:50%; background:var(--accent);} .workflow-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:20px;}
.wf-step{
border:1px solid var(--line); border-radius:16px; padding:28px 22px; background:var(--panel);
transition:border-color .4s var(--ease), transform .4s var(--ease);
}
.wf-step:hover{border-color:var(--accent); transform:translateY(-6px);}
.wf-step .n{font-family:var(--font-display); font-size:34px; font-weight:800; color:var(--accent); opacity:.85;}
.wf-step h4{font-size:19px; font-weight:700; color:#fff; margin:14px 0 8px;}
.wf-step p{font-size:16px; line-height:1.6; margin:0;} .partners{background:var(--bg-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:70px 0;}
.logo-row{overflow:hidden; margin-top:12px;}
.logo-track{display:inline-flex; gap:0; animation:logoScroll 26s linear infinite;}
.logo-card{
flex:none; width:180px; height:96px; margin:0 12px;
display:flex; align-items:center; justify-content:center;
background:#fff; border-radius:12px; padding:16px;
opacity:.9; transition:opacity .4s var(--ease), transform .4s var(--ease);
}
.logo-card:hover{opacity:1; transform:translateY(-4px);}
.logo-card svg{width:80%; height:50px;}
.logo-card img{max-height:58px; max-width:100%; width:auto; object-fit:contain;}
@keyframes logoScroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} } .certs h2.big{margin-bottom:36px;}
.cert-row{display:flex; gap:22px; flex-wrap:wrap;}
.cert-badge{
width:74px; height:74px; border-radius:50%;
background:var(--panel); border:1px solid var(--line);
display:flex; align-items:center; justify-content:center;
transition:transform .4s var(--ease), border-color .4s var(--ease);
}
.cert-badge:hover{transform:translateY(-4px) scale(1.05); border-color:var(--accent);}
.cert-badge svg{width:36px; height:36px;} .cta{
position:relative; text-align:center; padding:clamp(64px, 8.6vh, 130px) 0;
background:
radial-gradient(ellipse at 50% 0%, rgba(95,208,198,.10), transparent 60%),
var(--bg);
}
.cta h2{font-size:clamp(34px,5vw,64px); font-weight:800; color:#fff; max-width:760px; margin:0 auto 30px;}
.cta h2 span{color:var(--accent);} footer.site-footer{background:var(--bg-2); color:var(--muted); padding:64px 0 28px; border-top:1px solid var(--line);}
.footer-logo{height:54px; width:auto; display:block; margin-bottom:16px;}
.footer-grid{display:grid; grid-template-columns:1fr 1.5fr; gap:54px; padding-bottom:40px; border-bottom:1px solid var(--line); align-items:start;}
.footer-certs h4{font-size:13px; color:#fff; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:20px;} .footer-certs .cert-group + .cert-group{margin-top:26px; padding-top:22px; border-top:1px solid rgba(140,190,190,.16);}
.footer-certs .cert-group h4{margin:0 0 3px; font-size:12px; letter-spacing:.16em;}
.cert-note{margin:0 0 14px; font-size:13px; letter-spacing:.04em; color:var(--muted); opacity:.75;} .footer-certs .cert-note{margin:0 0 12px; max-width:42ch; font-size:12.5px; opacity:.7;}
.footer-badges{display:flex; flex-wrap:wrap; gap:26px; align-items:center;}
.footer-badges .iso-badge img{height:66px;}
.footer-brand{display:flex; align-items:center; gap:10px; color:#fff; font-weight:800; font-size:19px; margin-bottom:14px; font-family:var(--font-display);}
.footer-brand .dot{width:9px; height:9px; border-radius:50%; background:var(--accent);}
.footer-grid p{font-size:15px; max-width:260px;}
.footer-col h4{font-size:13px; color:#fff; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:18px;}
.footer-col ul{display:flex; flex-direction:column; gap:11px; list-style:none; margin:0; padding:0;}
.footer-col a{font-size:15px; transition:color .25s var(--ease), padding-left .25s var(--ease);}
.footer-col a:hover{color:var(--accent); padding-left:4px;}
.footer-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:24px; font-size:14px; flex-wrap:wrap; gap:14px;}
.socials{display:flex; gap:14px;}
.socials a{
width:36px; height:36px; border-radius:50%; border:1px solid var(--line);
display:flex; align-items:center; justify-content:center;
transition:background .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease);
}
.socials a:hover{background:var(--accent); border-color:var(--accent); transform:translateY(-3px);}
.socials svg{width:14px; height:14px; fill:#fff;}
.socials a:hover svg{fill:#08191e;} .robot-video video{width:100%; height:auto; display:block; border-radius:inherit;}
.robot-video.robot-embed{padding:0;}
.robot-embed iframe{width:100%; aspect-ratio:16/9; height:auto; display:block; border:0;}
.media-frame.light.robot-video{padding:0; overflow:hidden;} .interreg-banner{position:relative; z-index:2; background:#fff; padding:22px 0; border-bottom:1px solid rgba(0,0,0,.08);}
.interreg-banner .wrap{display:flex; align-items:center; gap:26px; flex-wrap:wrap; justify-content:center; text-align:left;}
.interreg-logo{flex:none; display:block;}
.interreg-logo img{height:64px; width:auto; display:block;}
.interreg-funding{margin:0; color:#1b282c; font-size:14px; line-height:1.6; max-width:760px; font-weight:500;}
@media (max-width:700px){
.interreg-banner .wrap{justify-content:center; text-align:center;}
.interreg-logo img{height:52px;}
.interreg-funding{font-size:13px;}
}
.interreg-foot{border-top:1px solid var(--line); margin-top:34px; padding-top:26px;}
.interreg-links{display:flex; flex-wrap:wrap; gap:10px 26px; margin:0 0 16px; padding:0; list-style:none;}
.interreg-links a{color:var(--accent); font-size:14px; font-weight:600;}
.interreg-links a:hover{color:#fff; text-decoration:underline;}
.interreg-disclaimer{margin:0; font-size:13px; line-height:1.7; color:var(--muted); max-width:960px;} .entry-content > *{max-width:1136px; margin-left:auto; margin-right:auto;}
.entry-content > .alignwide{max-width:1240px;}
.entry-content > .alignfull{max-width:none; width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);}
.entry-content > .alignfull > .wp-block-group__inner-container,
.entry-content > .alignfull .wrap{max-width:1200px; margin:0 auto; padding:0 32px;}
.entry-content .alignleft{float:left; margin:6px 28px 18px 0;}
.entry-content .alignright{float:right; margin:6px 0 18px 28px;}
.entry-content .aligncenter{margin-left:auto; margin-right:auto;}
.entry-content .wp-block-image img,
.entry-content .wp-block-media-text__media img{border-radius:14px; height:auto;}
.entry-content .wp-block-media-text{gap:40px; align-items:center;}
.entry-content .wp-block-columns{gap:26px;}
.entry-content .wp-block-gallery img{border-radius:12px; background:#fff;}
.entry-content .wp-block-video video{width:100%; border-radius:16px;}
.entry-content .wp-block-file{
background:var(--panel); border:1px solid var(--line); border-radius:12px;
padding:16px 20px; display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:12px;
}
.entry-content .wp-block-file a:not(.wp-block-file__button){color:var(--ink); font-weight:600;}
.entry-content .wp-block-file__button{
background:var(--accent); color:#08191e; border-radius:100px; padding:8px 18px; font-weight:700; font-size:14px;
}
.entry-content .wp-block-button__link{
background:var(--accent); color:#08191e; border-radius:100px;
padding:15px 30px; font-weight:700; font-size:15px; letter-spacing:.02em;
}
.entry-content .btn.ghost .wp-block-button__link{background:transparent; color:#fff; border:1.5px solid var(--line);} .entry-content .wp-block-button.btn,
.entry-content .wp-block-button.btn.ghost{
background:none !important; border:0 !important; padding:0 !important;
border-radius:0 !important; box-shadow:none !important; overflow:visible;
}
.entry-content .wp-block-button.btn::after{display:none !important;}
.entry-content .wp-block-quote{border-left:3px solid var(--accent); padding-left:20px; margin:26px 0;}
.entry-content .wp-block-table td, .entry-content .wp-block-table th{border-color:var(--line); padding:10px 14px;}
.entry-content .wp-block-cover{border-radius:0;}
.entry-content .wp-block-cover .wp-block-cover__inner-container{max-width:1200px; margin:0 auto; padding:0 32px;}
.entry-content .wp-block-cover h1,
.entry-content .wp-block-cover h2{font-size:clamp(34px,6vw,68px); line-height:1.02;} .page-content-section{position:relative; z-index:2; padding:90px 0;}
.page-content-section .entry-content{max-width:none; margin:0 auto;}
.page-content-section .entry-content > *:first-child{margin-top:0;}
.page-content-section img,
.page-content-section .wp-block-image img{border-radius:14px; height:auto;}
.page-content-section .wp-block-columns{gap:32px;}
.page-content-section figure{margin:26px 0;}
.page-content-section figcaption{color:var(--muted); font-size:14px; margin-top:8px;} .inner-main{padding:clamp(60px, 7.4vh, 112px) 0 clamp(54px, 6.6vh, 100px); min-height:60vh;}
.inner-main .page-head{margin-bottom:44px;}
.inner-main .page-head .section-label{margin-bottom:14px;}
.entry-content{max-width:820px;}
.entry-content p{font-size:17px;}
.entry-content h2,.entry-content h3{color:#fff; margin:34px 0 14px;}
.entry-content h2{font-size:28px;}
.entry-content h3{font-size:21px;}
.entry-content a{color:var(--accent);}
.entry-content ul{list-style:disc; padding-left:22px; color:var(--muted); margin:0 0 14px;}
.entry-content ol{color:var(--muted); padding-left:22px; margin:0 0 14px;}
.entry-content li{margin-bottom:6px; line-height:1.7;}
.entry-content img{border-radius:14px; border:1px solid var(--line);}
.entry-content blockquote{border-left:2px solid var(--accent); margin:20px 0; padding:6px 0 6px 20px; color:var(--ink);} .post-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.post-card{
display:flex; flex-direction:column;
border:1px solid var(--line); border-radius:16px; overflow:hidden; background:var(--panel);
transition:border-color .4s var(--ease), transform .4s var(--ease);
}
.post-card:hover{border-color:var(--accent); transform:translateY(-6px);}
.post-card .thumb{aspect-ratio:16/10; overflow:hidden; background:var(--bg-2);}
.post-card .thumb img{width:100%; height:100%; object-fit:cover; filter:grayscale(.3); transition:filter .5s var(--ease), transform .6s var(--ease);}
.post-card:hover .thumb img{filter:grayscale(0); transform:scale(1.05);}
.post-card .body{padding:22px; display:flex; flex-direction:column; gap:10px; flex:1;}
.post-card .date{font-size:12.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--accent);}
.post-card h3{font-size:19px; font-weight:700; color:#fff; line-height:1.35;}
.post-card p{font-size:15px; margin:0; flex:1;}
.post-card .more{font-size:13.5px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--accent);}
.post-meta{font-size:13px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:16px;}
.single-hero-img{border-radius:18px; overflow:hidden; border:1px solid var(--line); margin:30px 0;}
.pagination-row{display:flex; gap:8px; margin-top:44px;}
.pagination-row .page-numbers{
min-width:40px; height:40px; padding:0 12px; border-radius:10px;
display:inline-flex; align-items:center; justify-content:center;
border:1px solid var(--line); color:var(--muted); font-size:14px; font-weight:700;
}
.pagination-row .page-numbers.current, .pagination-row .page-numbers:hover{border-color:var(--accent); color:var(--accent);} .woocommerce-wrap{color:var(--ink);}
.woocommerce-wrap .woocommerce-products-header__title{font-size:clamp(32px,4.2vw,47px); font-weight:800; color:#fff; margin-bottom:26px;}
.woocommerce ul.products{margin-top:20px;}
.woocommerce ul.products li.product{
background:var(--panel); border:1px solid var(--line); border-radius:16px;
padding:16px 16px 20px; text-align:left;
transition:border-color .4s var(--ease), transform .4s var(--ease);
}
.woocommerce ul.products li.product:hover{border-color:var(--accent); transform:translateY(-6px);}
.woocommerce ul.products li.product img{border-radius:10px;}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-category__title{
font-family:var(--font-display); font-size:17px; font-weight:700; color:#fff; padding-top:12px;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price, .woocommerce div.product span.price{
color:var(--accent); font-weight:800; font-family:var(--font-display);
}
.woocommerce div.product .product_title{color:#fff; font-weight:800;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--panel); border-color:var(--line);}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--muted);}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:#fff;}
.woocommerce div.product .woocommerce-tabs .panel{color:var(--muted);}
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce #respond input#submit{
background:var(--accent); color:#08191e; border-radius:100px;
font-weight:800; text-transform:uppercase; letter-spacing:.04em; font-size:13.5px;
padding:12px 22px;
transition:transform .4s var(--ease), box-shadow .4s var(--ease);
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover{
background:#fff; color:var(--brand-deep);
transform:translateY(-2px); box-shadow:0 12px 24px rgba(0,0,0,.25);
}
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-breadcrumb{color:var(--muted);}
.woocommerce .woocommerce-ordering select,
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce form .form-row select, .woocommerce-page form .form-row select,
.woocommerce .quantity .qty{
background:var(--panel); border:1px solid var(--line); color:var(--ink);
border-radius:10px; padding:10px 12px;
}
.woocommerce form .form-row label{color:var(--muted);}
.woocommerce table.shop_table{border:1px solid var(--line); border-radius:14px; color:var(--ink);}
.woocommerce table.shop_table th{color:#fff;}
.woocommerce table.shop_table td, .woocommerce table.shop_table th{border-color:var(--line);}
.woocommerce-cart .cart-collaterals .cart_totals h2, .woocommerce-checkout h3{color:#fff;}
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error{
background:var(--panel); color:var(--ink); border-top-color:var(--accent);
}
.woocommerce .woocommerce-message a, .woocommerce .woocommerce-info a{color:var(--accent);}
.woocommerce #payment{background:var(--panel); border-radius:14px;}
.woocommerce #payment div.payment_box{background:var(--bg-2); color:var(--muted);}
.woocommerce #payment div.payment_box::before{border-bottom-color:var(--bg-2);}
.woocommerce nav.woocommerce-pagination ul{border-color:var(--line);}
.woocommerce nav.woocommerce-pagination ul li{border-color:var(--line);}
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span{color:var(--muted);}
.woocommerce nav.woocommerce-pagination ul li span.current, .woocommerce nav.woocommerce-pagination ul li a:hover{
background:var(--panel); color:var(--accent);
}
.woocommerce .star-rating span::before{color:var(--accent);} .robots-intro{max-width:720px; margin-bottom:50px;}
.robot-block{padding:70px 0; border-top:1px solid var(--line);} .robot-block.first,
.robot-block:first-of-type{border-top:none; padding-top:30px;}
.robot-name{font-size:clamp(28px,3.2vw,38px); font-weight:800; color:#fff; margin-bottom:14px; font-family:var(--font-display);}
.robot-media{
position:relative; border-radius:18px; overflow:hidden;
background:#fff; border:1px solid var(--line);
display:flex; align-items:center; justify-content:center;
padding:28px; min-height:340px;
}
.robot-media img{max-height:430px; width:auto; max-width:100%; object-fit:contain;}
.robot-specs{display:flex; flex-wrap:wrap; gap:10px; margin:0 0 18px;}
.robot-specs span{
font-size:12.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
color:var(--accent); border:1px solid var(--line); border-radius:100px; padding:8px 14px;
}
.robot-cta-row{display:flex; gap:14px; flex-wrap:wrap; margin-top:24px;}
.robot-name a{color:inherit; transition:color .3s var(--ease);}
.robot-name a:hover{color:var(--accent);}
a.robot-media{display:block;} .robot-hero{
position:relative; padding:90px 0 70px; overflow:hidden;
background:radial-gradient(ellipse at 72% 18%, rgba(95,208,198,.14), transparent 60%), var(--bg);
}
.back-link{
display:inline-block; margin-bottom:26px; color:var(--muted);
font-size:13.5px; font-weight:700; text-transform:uppercase; letter-spacing:.1em;
transition:color .3s var(--ease), transform .3s var(--ease);
}
.back-link:hover{color:var(--accent); transform:translateX(-3px);}
.robot-hero-grid{display:grid; grid-template-columns:1.05fr 1fr; gap:60px; align-items:center;}
.robot-hero-name{font-size:clamp(46px,7vw,86px); font-weight:800; color:#fff; line-height:1; margin:12px 0 16px; font-family:var(--font-display); letter-spacing:-.02em;}
.robot-hero-tagline{font-size:20px; color:var(--muted); max-width:460px; margin-bottom:26px;}
.robot-hero-media .media-frame{min-height:360px;}
@media (max-width:880px){
.robot-hero{padding:120px 0 50px;}
.robot-hero-grid{grid-template-columns:1fr; gap:34px;}
} .media-frame.light{background:#fff;}
.media-frame.light::after{display:none;}
.media-frame.light img{filter:none; object-fit:contain; padding:20px;} .footer-contact{margin-top:20px; font-size:15px;}
.footer-channels{
max-width:340px; overflow:hidden; position:relative;
border:1px solid rgba(95,208,198,.24); border-radius:18px;
background:
radial-gradient(115% 130% at 0% 0%, rgba(95,208,198,.11), transparent 62%),
rgba(59,82,89,.34);
box-shadow:
inset 0 1px 0 rgba(255,255,255,.07),
0 2px 6px rgba(0,0,0,.2),
0 24px 46px -20px rgba(0,0,0,.55);
}
.footer-channels .footer-channel{
position:relative; display:flex; align-items:center; gap:13px;
padding:13px 16px; color:var(--ink);
transition:background .35s var(--ease);
} .footer-channels .footer-channel + .footer-channel::after{
content:''; position:absolute; top:0; left:16px; right:16px; height:1px;
background:linear-gradient(90deg, transparent, rgba(140,190,190,.28) 16%, rgba(140,190,190,.28) 84%, transparent);
}
.footer-channel::before{
content:''; position:absolute; left:0; top:0; bottom:0; width:3px;
border-radius:0 3px 3px 0;
background:var(--accent); box-shadow:0 0 14px rgba(95,208,198,.5);
transform:scaleY(0); transform-origin:50% 0;
transition:transform .4s var(--ease);
}
.footer-channels a.footer-channel:hover,
.footer-channels a.footer-channel:focus-visible{background:rgba(95,208,198,.09);}
a.footer-channel:hover::before,
a.footer-channel:focus-visible::before{transform:scaleY(1);}
a.footer-channel:focus-visible{outline:2px solid var(--accent); outline-offset:-2px;}
.footer-channel .ch-icon{
flex:none; width:38px; height:38px; border-radius:12px;
display:flex; align-items:center; justify-content:center;
background:rgba(95,208,198,.13); border:1px solid rgba(95,208,198,.28);
box-shadow:inset 0 1px 0 rgba(255,255,255,.13);
color:var(--accent);
transition:background .35s var(--ease), border-color .35s var(--ease), color .35s var(--ease), transform .35s var(--ease);
}
.footer-channel .ch-icon svg{width:17px; height:17px; display:block; fill:currentColor;}
a.footer-channel:hover .ch-icon,
a.footer-channel:focus-visible .ch-icon{
background:var(--accent); border-color:var(--accent); color:var(--rail); transform:translateY(-2px);
}
.footer-channel .ch-text{display:flex; flex-direction:column; gap:3px; min-width:0;}
.footer-channel .ch-lbl{font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); opacity:.72;}
.footer-channel .ch-val{
font-family:var(--font-display); font-size:16.5px; font-weight:700; color:#fff;
line-height:1.25; letter-spacing:.01em; font-variant-numeric:tabular-nums;
overflow-wrap:anywhere;
}
.footer-channel.is-static .ch-val{
font-family:var(--font-body); font-size:14.5px; font-weight:500; color:var(--muted); line-height:1.5;
}
@media (prefers-reduced-motion: reduce){
.footer-channels .footer-channel, .footer-channel::before, .footer-channel .ch-icon{transition:none;}
a.footer-channel:hover .ch-icon, a.footer-channel:focus-visible .ch-icon{transform:none;}
} .value-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:22px;}
.value-card{border:1px solid var(--line); border-radius:16px; padding:30px 26px; background:var(--panel); display:flex; flex-direction:column; gap:10px; transition:border-color .4s var(--ease), transform .4s var(--ease);}
.value-card:hover{border-color:var(--accent); transform:translateY(-6px);}
.value-card .n{font-family:var(--font-display); font-size:30px; font-weight:800; color:var(--accent); opacity:.9;}
.value-card h3{font-size:21px; font-weight:700; color:#fff; line-height:1.3;}
.value-card p{font-size:17px; line-height:1.65; margin:0; flex:1;}
.value-card .more{font-size:14.5px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--accent); margin-top:6px;} .sector-list{display:grid; grid-template-columns:1fr 1fr; gap:0 40px;}
.sector-list li{display:flex; align-items:center; gap:14px; font-size:16px; color:var(--ink); font-weight:500; padding:16px 0; border-bottom:1px solid var(--line);}
.sector-list li::before{content:'→'; color:var(--accent); font-weight:800; flex:none;}
.iso-row{display:flex; flex-wrap:wrap; gap:32px; align-items:center;} .iso-row .iso-badge{display:inline-flex; align-items:center; justify-content:center; background:none; padding:0; border:none; border-radius:0; transition:transform .4s var(--ease), filter .4s var(--ease);}
.iso-row .iso-badge:hover{transform:translateY(-6px) scale(1.04); filter:drop-shadow(0 12px 26px rgba(0,0,0,.4));}
.iso-row .iso-badge img{height:112px; width:auto; object-fit:contain; display:block;}
.iso-row .iso-badge span{display:none;} .footer-badges{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; align-items:stretch;}
.footer-badges .iso-badge{
position:relative; display:flex; flex-direction:row; align-items:center; gap:12px;
width:auto; padding:12px 14px; text-align:left;
border-radius:14px; border:1px solid rgba(140,190,190,.20);
background:linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.02));
box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 14px 28px -18px rgba(0,0,0,.55);
transition:transform .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease), background .4s var(--ease);
}
.footer-badges .badge-art{
display:flex; align-items:center; justify-content:center; flex:none;
width:54px; height:54px; border-radius:12px; overflow:hidden;
} .footer-badges.is-certs .badge-art{
width:auto; height:auto; overflow:visible;
padding:var(--cert-plate-pad, 0);
background:var(--cert-plate-bg, none);
border-radius:var(--cert-plate-radius, 0);
filter:drop-shadow(0 6px 13px rgba(0,0,0,.5));
transition:filter .4s var(--ease), transform .4s var(--ease);
} .footer-badges.is-certs .badge-art img{
height:var(--cert-size, 62px); width:auto; aspect-ratio:402/500;
max-width:none; max-height:none;
}
.footer-badges .iso-badge img,
.footer-badges .iso-badge video{
display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain;
}
.footer-badges .badge-cap{display:flex; flex-direction:column; gap:3px; min-width:0;}
.footer-badges .badge-name{
display:block; font-family:var(--font-display); font-size:16px; font-weight:800; color:#fff;
line-height:1.16; letter-spacing:.01em; font-variant-numeric:tabular-nums;
}
.footer-badges .badge-sub{display:block; font-size:12px; line-height:1.35; color:var(--muted); opacity:.82;} .footer-badges .badge-pdf{
display:block; margin-left:auto; align-self:flex-start; flex:none;
font-size:9px; font-weight:800; letter-spacing:.12em;
color:var(--muted); opacity:.5;
transition:color .3s var(--ease), opacity .3s var(--ease);
}
.footer-badges a.iso-badge:hover,
.footer-badges a.iso-badge:focus-visible{
transform:translateY(-3px); border-color:var(--accent);
background:linear-gradient(135deg, rgba(95,208,198,.15), rgba(255,255,255,.03));
box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 20px 34px -18px rgba(0,0,0,.62);
}
.footer-badges a.iso-badge:hover .badge-pdf,
.footer-badges a.iso-badge:focus-visible .badge-pdf{color:var(--accent); opacity:1;} .footer-badges.is-certs a.iso-badge:hover .badge-art,
.footer-badges.is-certs a.iso-badge:focus-visible .badge-art{
transform:translateY(-2px); filter:drop-shadow(0 11px 20px rgba(0,0,0,.6));
}
.footer-badges a.iso-badge:focus-visible{outline:2px solid var(--accent); outline-offset:3px;} .footer-badges span.iso-badge:hover{transform:none;} @media (hover:none){
.footer-badges .badge-pdf{opacity:.75;}
}
@media (prefers-reduced-motion: reduce){
.footer-badges .iso-badge, .footer-badges .badge-pdf, .footer-badges .badge-art{transition:none;}
.footer-badges a.iso-badge:hover, .footer-badges a.iso-badge:focus-visible{transform:none;}
.footer-badges.is-certs a.iso-badge:hover .badge-art,
.footer-badges.is-certs a.iso-badge:focus-visible .badge-art{transform:none;}
} @media (max-width:880px){
.footer-badges{grid-template-columns:1fr; gap:9px;}
.footer-certs .cert-note{font-size:13.5px; max-width:none;}
.footer-certs .cert-group h4{font-size:12.5px;}
.footer-badges .badge-name{font-size:16.5px;}
.footer-badges .badge-sub{font-size:12.5px;}
.footer-badges.is-certs .badge-art img{height:calc(var(--cert-size, 62px) * .97);}
} @media (max-height:520px){
.footer-badges{grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px;}
.footer-badges .iso-badge{padding:9px 11px; gap:10px;}
.footer-badges .badge-art{width:42px; height:42px; border-radius:10px;}
.footer-badges.is-certs .badge-art img{height:calc(var(--cert-size, 62px) * .74);}
.footer-badges .badge-name{font-size:14.5px;}
.footer-badges .badge-sub{font-size:11.5px;}
} .related-news{padding:90px 0; border-top:1px solid var(--line); background:var(--bg-2);} .client-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:22px;}
.client-card{background:#fff; border-radius:16px; height:150px; display:flex; align-items:center; justify-content:center; padding:26px; transition:transform .4s var(--ease), box-shadow .4s var(--ease);}
.client-card:hover{box-shadow:0 16px 34px rgba(0,0,0,.25);}
.client-card:hover{transform:translateY(-5px);}
.client-card img{max-height:92px; max-width:100%; width:auto; object-fit:contain;} .contact-grid{display:grid; grid-template-columns:1fr 1.1fr; gap:40px; align-items:stretch;}
.contact-item{padding:18px 0; border-bottom:1px solid var(--line);}
.contact-item:last-child{border-bottom:none;}
.contact-item .lbl{display:block; font-size:12.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--accent); margin-bottom:8px;}
.contact-item p{margin:0; color:var(--ink); font-size:17px; line-height:1.7;}
.contact-item a{color:var(--ink);}
.contact-item a:hover{color:var(--accent);}
.contact-socials{display:flex; flex-wrap:wrap; gap:10px;}
.contact-socials a{border:1px solid var(--line); border-radius:100px; padding:8px 16px; font-size:14px; font-weight:600; color:var(--muted);}
.contact-socials a:hover{border-color:var(--accent); color:var(--accent);}
.contact-map{min-height:440px; border-radius:18px; overflow:hidden; border:1px solid var(--line);}
.contact-map iframe{width:100%; height:100%; min-height:440px; display:block;} .news-section{padding:clamp(56px, 7.4vh, 112px) 0;}
.carousel-head{display:flex; align-items:center; justify-content:space-between; gap:20px;}
.carousel-nav-row{display:flex; gap:10px; flex:none;}
.carousel-nav{
width:44px; height:44px; border-radius:50%; border:1px solid var(--line);
background:var(--panel); color:#fff; font-size:22px; line-height:1;
display:flex; align-items:center; justify-content:center;
transition:border-color .3s var(--ease), color .3s var(--ease), transform .3s var(--ease);
}
.carousel-nav:hover{border-color:var(--accent); color:var(--accent); transform:translateY(-2px);}
.carousel-stage{ display:contents; }
.carousel-nav-row{ display:none; }
.carousel-track{
position:relative; z-index:2;
display:flex; gap:26px; overflow-x:auto; overflow-y:hidden;
perspective:1600px;
max-width:1200px; margin:0 auto;
padding:48px 32px;
scrollbar-width:none;
-webkit-mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.carousel-track::-webkit-scrollbar{display:none;}
.carousel-card{
flex:0 0 300px; max-width:80vw;
display:flex; flex-direction:column; background:var(--panel);
border:1px solid var(--line); border-radius:16px; overflow:hidden;
transition:border-color .4s var(--ease); transform-origin:center center;
}
.carousel-card:hover{border-color:var(--accent);}
.carousel-card h3{display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.carousel-card p{display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;}
.carousel-card .thumb{display:block; aspect-ratio:16/10; overflow:hidden; background:var(--bg);}
.carousel-card .thumb img{width:100%; height:100%; object-fit:cover; filter:grayscale(.3); transition:filter .5s var(--ease), transform .6s var(--ease);}
.carousel-card:hover .thumb img{filter:grayscale(0); transform:scale(1.05);}
.carousel-card .thumb-empty{background:linear-gradient(135deg, var(--panel), var(--bg-2));}
.carousel-card .body{padding:22px; display:flex; flex-direction:column; gap:10px; flex:1;}
.carousel-card .date{font-size:12.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--accent);}
.carousel-card h3{font-size:19px; font-weight:700; color:#fff; line-height:1.35;}
.carousel-card p{font-size:15px; margin:0; flex:1;}
.carousel-card .more{font-size:13.5px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--accent);} .carousel-stage.has-pin{
display:grid;
grid-template-columns:minmax(0, 340px) minmax(0, 1fr);
align-items:stretch;
max-width:1440px; margin:0 auto;
padding:0 clamp(16px, 3vw, 40px);
}
.carousel-stage.has-pin .carousel-track{
max-width:none; margin:0;
padding:48px 0 48px 26px;
-webkit-mask-image:linear-gradient(90deg, #000 0, #000 90%, transparent);
mask-image:linear-gradient(90deg, #000 0, #000 90%, transparent);
}
.carousel-pin{
position:relative; z-index:3;
display:flex; flex-direction:column; justify-content:center;
padding:48px 0;
}
.carousel-pin .carousel-card{
flex:0 1 auto; max-width:none;
border-color:rgba(79,182,174,.42);
box-shadow:0 18px 50px rgba(0,0,0,.3);
}
.pin-flag{
display:inline-flex; align-items:center; gap:9px; align-self:flex-start;
margin-bottom:13px;
font-size:11.5px; font-weight:800; letter-spacing:.18em; text-transform:uppercase;
color:var(--accent);
}
.pin-flag::before{
content:''; width:7px; height:7px; border-radius:50%;
background:var(--accent); box-shadow:0 0 0 4px rgba(79,182,174,.16);
} .card-shot{position:relative; display:block; overflow:hidden; background:var(--bg);}
.card-shot img{
width:100%; height:100%; object-fit:cover; display:block;
filter:grayscale(.22);
transition:filter .5s var(--ease), transform .7s var(--ease);
}
.card-shot:hover img, .card-shot:focus-visible img{filter:grayscale(0); transform:scale(1.04);}
.card-shot-label{
position:absolute; inset:auto 0 0 0;
display:flex; flex-direction:column; gap:5px;
padding:52px 20px 18px;
background:linear-gradient(180deg, transparent, rgba(10,28,33,.92));
opacity:0; transform:translateY(10px);
transition:opacity .45s var(--ease), transform .45s var(--ease);
}
.card-shot:hover .card-shot-label,
.card-shot:focus-visible .card-shot-label{opacity:1; transform:none;}
.card-shot-label .date{font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--accent);}
.card-shot-label .ttl{font-size:16.5px; font-weight:700; color:#fff; line-height:1.35;}
.post-card.card-image .card-shot{aspect-ratio:3/4;}
.carousel-card.card-image{align-self:stretch;}
.carousel-card.card-image .card-shot{flex:1; min-height:330px;}
.card-text{position:relative;}
.card-text::before{
content:''; position:absolute; left:0; top:0; bottom:0; width:3px;
background:linear-gradient(180deg, var(--accent), transparent 72%);
}
.card-text .body{padding:28px 24px 24px;}
.card-text h3{font-size:21px;} .poster-post{display:flex; flex-direction:column; align-items:center;}
.poster-post .poster-frame{
margin:0; border:0; border-radius:0; overflow:visible; background:transparent;
display:flex; justify-content:center; width:100%;
}
.poster-zoom{display:block; max-width:100%;}
.poster-img{
width:auto; max-width:100%; max-height:84vh; height:auto; margin:0 auto;
border-radius:18px; border:1px solid var(--line);
}
.poster-post .entry-content{max-width:none; width:100%; display:flex; flex-direction:column; align-items:center;}
.poster-post .entry-content > *{width:100%; max-width:min(100%, 960px);}
.poster-post .entry-content figure{margin-left:auto; margin-right:auto; text-align:center;}
.poster-post .entry-content img{max-height:84vh; width:auto; max-width:100%; margin-left:auto; margin-right:auto;}
.single-back-row{margin-top:44px;}
.poster-post + .single-back-row{margin-top:30px; text-align:center;} @media (max-width:880px){
.carousel-stage.has-pin{grid-template-columns:1fr; padding:0;}
.carousel-pin{padding:0 20px;}
.carousel-pin .carousel-card{max-width:none;}
.carousel-stage.has-pin .carousel-track{
padding:26px 20px 34px;
-webkit-mask-image:linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
mask-image:linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}
.carousel-card.card-image .card-shot{flex:none; min-height:0; aspect-ratio:3/4;}
.card-text .body{padding:22px 20px;}
.card-text h3{font-size:19px;}
.poster-img,
.poster-post .entry-content img{max-height:none; width:100%;}
.poster-post .entry-content > *{max-width:100%;}
} @media (max-height:520px) and (min-width:881px){
.carousel-pin{padding:26px 0;}
.carousel-stage.has-pin .carousel-track{padding:26px 0 26px 26px;}
.poster-img,
.poster-post .entry-content img{max-height:none;}
} @media (hover:none){
.card-shot-label{opacity:1; transform:none;}
}
@media (prefers-reduced-motion: reduce){
.card-shot img,
.card-shot-label{transition:none;}
.card-shot-label{opacity:1; transform:none;}
.card-shot:hover img{transform:none;}
} .contact-backdrop{
position:fixed; inset:0; background:rgba(4,20,25,.6);
-webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px);
opacity:0; transition:opacity .35s var(--ease); z-index:80;
}
.contact-backdrop.open{opacity:1;}
.contact-sidebar{
position:fixed; top:0; right:0; height:100%; width:400px; max-width:90vw;
background:var(--bg-2); border-left:1px solid var(--line); z-index:81;
transform:translateX(100%); transition:transform .4s var(--ease);
overflow-y:auto; box-shadow:-20px 0 60px rgba(0,0,0,.4);
}
.contact-sidebar.open{transform:translateX(0);}
.contact-sidebar-close{
position:absolute; top:16px; right:20px; background:none; border:none;
color:var(--muted); font-size:30px; line-height:1; cursor:pointer;
transition:color .3s var(--ease);
}
.contact-sidebar-close:hover{color:var(--accent);}
.contact-sidebar-inner{padding:70px 34px 44px;}
.contact-sidebar-inner .eyebrow{animation:none; opacity:1; transform:none;}
.contact-sidebar-inner h3{font-size:30px; font-weight:800; color:#fff; margin:12px 0 12px; font-family:var(--font-display);}
.cs-item{padding:16px 0; border-bottom:1px solid var(--line);}
.cs-item .lbl{display:block; font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:6px;}
.cs-item p{margin:0; color:var(--ink); font-size:16px; line-height:1.6;}
.cs-item a{color:var(--ink); transition:color .25s var(--ease);}
.cs-item a:hover{color:var(--accent);}
.contact-sidebar-inner .btn{margin:26px 0 22px;}
.cs-socials{display:flex; flex-wrap:wrap; gap:16px;}
.cs-socials a{font-size:14px; font-weight:600; color:var(--muted); transition:color .25s var(--ease);}
.cs-socials a:hover{color:var(--accent);}
body.sidebar-open{overflow:hidden;} nav.links .mega-menu{display:flex; gap:30px; margin:0; padding:0; list-style:none; align-items:center;}
.mega-toggle{
background:none; border:none; font-family:inherit; cursor:none;
color:var(--muted); font-size:14px; font-weight:600; text-transform:uppercase; letter-spacing:.06em;
padding:6px 0; position:relative;
opacity:0; transform:translateY(-10px);
transition:color .3s var(--ease);
}
.mega-toggle::after{content:''; position:absolute; left:0; bottom:0; width:0; height:1px; background:var(--accent); transition:width .3s var(--ease);}
.mega-toggle:hover, .mega-toggle.active{color:#fff;}
.mega-toggle:hover::after, .mega-toggle.active::after{width:100%;}
.mega-panel{
position:absolute; left:0; right:0; top:100%;
background:rgba(38,54,59,.99); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
border-top:1px solid var(--line); border-bottom:1px solid var(--line);
box-shadow:0 30px 60px rgba(0,0,0,.45);
opacity:0; visibility:hidden; transform:translateY(-8px);
transition:opacity .3s var(--ease), transform .3s var(--ease), visibility .3s;
z-index:59;
}
.mega-panel.open{opacity:1; visibility:visible; transform:translateY(0);}
.mega-grid{display:flex; gap:64px; padding:38px max(32px, calc((100vw - 1200px) / 2 + 32px)); align-items:flex-start;}
.mega-col{opacity:.5; transition:opacity .35s var(--ease); min-width:210px;}
.mega-col.active{opacity:1;}
.mega-col h4{font-size:13px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin:0 0 16px; transition:color .35s var(--ease);}
.mega-col.active h4{color:var(--accent);}
.mega-col ul{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px;}
.mega-col a{display:inline-block; padding:8px 0; font-size:15px; font-weight:600; color:var(--muted); transition:color .25s var(--ease), padding-left .25s var(--ease);}
.mega-col a:hover{color:#fff; padding-left:6px;}
.mega-col a.mega-parent{color:#fff; font-weight:700;}
.mega-sub{list-style:none; margin:6px 0 8px 16px; padding:0 0 0 14px; border-left:1px solid var(--line); display:flex; flex-direction:column; gap:1px;}
.mega-sub a{font-size:14px; padding:5px 0;} .jobs-grid{display:grid; grid-template-columns:1fr 1fr; gap:26px;}
.job-card{border:1px solid var(--line); border-radius:18px; padding:34px 30px; background:var(--panel); transition:border-color .4s var(--ease), transform .4s var(--ease);}
.job-card:hover{border-color:var(--accent); transform:translateY(-6px);}
.job-card .robot-name{margin:12px 0 14px;}
.job-sub{font-size:13px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); margin:22px 0 12px;}
.job-reqs{list-style:none; margin:0 0 12px; padding:0; display:flex; flex-direction:column; gap:10px;}
.job-reqs li{position:relative; padding-left:22px; color:var(--ink); font-size:15.5px; line-height:1.5;}
.job-reqs li::before{content:'✓'; position:absolute; left:0; color:var(--accent); font-weight:800;}
.job-offer{font-size:15px; color:var(--muted); font-style:italic; margin:14px 0 22px;} @keyframes floaty{0%,100%{transform:translate3d(0,0,0);} 50%{transform:translate3d(0,-12px,0);}}
.robot-hero-media .media-frame,
#about .media-frame.light{animation:floaty 6s ease-in-out infinite;}
@media (prefers-reduced-motion:reduce){
.robot-hero-media .media-frame, #about .media-frame.light{animation:none;}
} .proj-marquee{
overflow:hidden; margin-top:16px;
-webkit-mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.proj-track{display:inline-flex; gap:22px; align-items:center; animation:projScroll 70s linear infinite;}
.proj-marquee:hover .proj-track{animation-play-state:paused;}
.proj-card{
flex:none; width:190px; height:110px; background:#fff; border-radius:14px;
display:flex; align-items:center; justify-content:center; padding:15px 18px;
transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.proj-card:hover{transform:translateY(-4px); box-shadow:0 14px 30px rgba(0,0,0,.28);} .proj-card img{max-height:100%; max-width:100%; width:auto; height:auto; object-fit:contain;}
@keyframes projScroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} } @media (max-width:880px){
.sector-list{grid-template-columns:1fr;}
.contact-grid{grid-template-columns:1fr;}
.contact-map{min-height:320px;}
.contact-map iframe{min-height:320px;}
nav.links{display:none;}
.split{grid-template-columns:1fr; gap:40px;}
.stats-grid{grid-template-columns:1fr 1fr;}
.workflow-grid{grid-template-columns:1fr 1fr;}
.footer-grid{grid-template-columns:1fr 1fr; row-gap:32px;}
.post-grid{grid-template-columns:1fr;}
.inner-main{padding:130px 0 70px;}
}
@media (min-width:881px) and (max-width:1100px){
.post-grid{grid-template-columns:1fr 1fr;}
} .value-card, .post-card, .job-card, .carousel-card, .wf-step, .stat{
background:linear-gradient(152deg, #223840 0%, #172830 58%, #101e24 100%);
border:1px solid #46626d;
box-shadow:
inset 0 1px 0 rgba(150,210,215,.18),
7px 8px 16px -3px rgba(98,210,200,.5),
0 26px 44px -16px rgba(0,0,0,.68),
0 0 26px -6px rgba(98,210,200,.42);
}
.stat{padding:26px 24px; border-radius:14px;}
.value-card:hover, .post-card:hover, .job-card:hover, .wf-step:hover, .stat:hover{
transform:translateY(-9px); border-color:var(--accent);
box-shadow:
inset 0 1px 0 rgba(150,210,215,.24),
10px 12px 22px -3px rgba(98,210,200,.62),
0 36px 56px -16px rgba(0,0,0,.72),
0 0 38px -4px rgba(98,210,200,.6);
} .ortem-sec{position:relative; z-index:2; padding:100px 0;}
.ortem-sec--tight{padding:56px 0;}
.ortem-sec--roomy{padding:140px 0;}
.ortem-sec--dark{background:var(--bg-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.ortem-sec--panel{background:var(--panel);}
.ortem-sec--richtext .entry-content{max-width:820px;}
.ortem-sec--w-narrow .entry-content{max-width:640px;}
.ortem-sec--w-wide .entry-content{max-width:1100px;}
.split--media-left{direction:rtl;}
.split--media-left>*{direction:ltr;}
.split--60-40{grid-template-columns:1.5fr 1fr;}
.split--40-60{grid-template-columns:1fr 1.5fr;}
.split--vtop{align-items:start;}
.split--vbottom{align-items:end;}
.hero--h60{height:60vh; min-height:420px;}
.hero--h80{height:80vh; min-height:520px;} .hero--h100{height:100vh;}
.hero--center .hero-content{text-align:center;}
.hero::after{opacity:var(--hero-dim,.6);}
.cta--left .wrap{text-align:left;}
@media (max-width:880px){ .ortem-sec--hide-mobile{display:none!important;} } @media (max-width:700px){ .nav-toggle{min-width:44px; min-height:44px; padding:11px 8px; justify-content:center;}
.side-rail-lang{min-height:44px; justify-content:center;}
.side-rail-logo{min-height:44px;} .mobile-menu .sub-menu a{
display:flex; align-items:center; min-height:44px; padding:6px 0 6px 6px;
}
.mobile-menu .sub-menu{gap:6px;} .btn, .footer-contact a, .socials a, .cs-socials a,
.cs-item a, .carousel-card .more, a.more{min-height:44px; display:inline-flex; align-items:center;}
.contact-sidebar-close{min-width:44px; min-height:44px; display:flex; align-items:center; justify-content:center;} .eyebrow, .cert-note,
.side-rail-lang-label, .footer-contact span, .footer-bottom span,
.section-label .txt, .carousel-card .date, .cs-item .lbl,
.carousel-card .more, a.more, span.date{
font-size:14px;
}
input, select, textarea{font-size:17px;}  .hero h1{font-size:clamp(34px, 11vw, 56px);}
} @media (max-height:520px){
.side-rail{padding:12px 16px 12px; min-height:68px;}
.side-rail-logo{top:12px; bottom:12px;}
.side-rail-logo img{height:26px;} .nav-toggle{min-width:44px; min-height:44px; padding:8px; justify-content:center;}
.side-rail-lang{min-height:44px;} .inner-main{padding-top:104px;}
.robot-hero{padding-top:100px;} .mobile-menu-inner{padding:88px 26px 32px;}
.mobile-menu > .mobile-menu-inner > .menu > li > a,
.mobile-menu > .mobile-menu-inner > .menu > li > .menu-title{font-size:22px; padding:11px 0 11px 18px;}
.mobile-menu .sub-menu{margin:10px 0 16px 5px; gap:10px;}
.mobile-menu .sub-menu a{font-size:19px; min-height:38px;}
} .ergo-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(272px,1fr)); gap:22px;}
.ergo-card{
position:relative; display:flex; flex-direction:column; gap:12px;
padding:26px 22px 22px; text-decoration:none;
background:linear-gradient(158deg,#16242a 0%,#101c21 62%,#0b1417 100%);
border:1px solid #35505a; border-radius:14px;
transition:border-color .35s var(--ease), transform .35s var(--ease), box-shadow .35s var(--ease);
} .ergo-card::before, .ergo-card::after{
content:''; position:absolute; width:13px; height:13px; pointer-events:none;
border-color:var(--line); transition:border-color .35s var(--ease);
}
.ergo-card::before{top:9px; left:9px; border-top:1px solid; border-left:1px solid;}
.ergo-card::after{bottom:9px; right:9px; border-bottom:1px solid; border-right:1px solid;}
.ergo-card:hover{
border-color:var(--accent); transform:translateY(-6px);
box-shadow:0 24px 44px -18px rgba(0,0,0,.7), 0 0 24px -8px rgba(98,210,200,.45);
}
.ergo-card:hover::before, .ergo-card:hover::after{border-color:var(--accent);}
.ergo-card:focus-visible{outline:2px solid var(--accent); outline-offset:3px;}
.ergo-code{
position:absolute; top:14px; right:16px;
font-family:var(--font-display); font-size:12px; font-weight:700;
letter-spacing:.16em; color:var(--accent); opacity:.75;
} .ergo-logo{
display:flex; align-items:center; justify-content:center; flex:none;
height:78px; padding:12px 16px; border-radius:10px; background:#fff;
}
.ergo-logo img{max-height:100%; max-width:100%; width:auto; object-fit:contain; display:block;} .ergo-logo--none{
background:repeating-linear-gradient(135deg, rgba(140,190,190,.10) 0 6px, transparent 6px 12px), var(--rail);
border:1px dashed rgba(140,190,190,.28);
}
.ergo-client{
font-family:var(--font-display); font-size:16px; font-weight:800;
line-height:1.3; color:#fff;
}
.ergo-title{font-size:14px; line-height:1.55; color:var(--muted);} .ergo-more{
display:inline-flex; align-items:center; gap:10px; margin-top:auto; padding-top:6px;
font-family:var(--font-display); font-size:13px; font-weight:800;
letter-spacing:.08em; text-transform:uppercase; color:var(--accent);
}
.ergo-more::before{
content:''; width:14px; height:1px; background:var(--accent);
transition:width .35s var(--ease), box-shadow .35s var(--ease);
}
.ergo-card:hover .ergo-more::before{width:30px; box-shadow:0 0 8px rgba(95,208,198,.9);} .ergo-back{
display:inline-flex; align-items:center; min-height:44px; margin-bottom:14px;
font-family:var(--font-display); font-size:13px; font-weight:800;
letter-spacing:.08em; text-transform:uppercase; color:var(--accent);
}
.ergo-back:hover{color:var(--cyan);}
.ergo-detail{max-width:900px;}
.ergo-detail-head{display:flex; align-items:center; gap:26px; margin-bottom:30px; flex-wrap:wrap;}
.ergo-logo--lg{height:112px; padding:16px 22px; border-radius:12px;}
.ergo-detail .ergo-code{position:static; display:block; margin-bottom:10px; font-size:13px; opacity:1;}
.ergo-detail .ergo-client{font-size:clamp(20px,2.6vw,30px); line-height:1.25;}
.ergo-detail .ergo-title{font-size:16px; line-height:1.7; color:var(--ink); margin:0 0 34px;}
.ergo-scope-head{
font-family:var(--font-display); font-size:13px; font-weight:700;
letter-spacing:.2em; text-transform:uppercase; color:var(--muted); margin-bottom:18px;
} .ergo-scope{
list-style:none; margin:0; padding:2px 0 2px 24px;
display:flex; flex-direction:column; gap:16px;
border-left:1px solid rgba(140,190,190,.22);
}
.ergo-scope li{position:relative; font-size:15.5px; line-height:1.6; color:var(--ink);}
.ergo-scope li::before{
content:''; position:absolute; left:-24px; top:.7em; width:16px; height:1px;
background:rgba(140,190,190,.34);
}
.ergo-scope li::after{
content:''; position:absolute; left:-11px; top:.7em; width:7px; height:7px; margin-top:-3px;
border-radius:50%; background:var(--accent); box-shadow:0 0 8px rgba(95,208,198,.5);
}
@media (max-width:700px){
.ergo-grid{gap:16px;}
.ergo-card{padding:22px 18px 18px;}
.ergo-logo{height:66px;}
.ergo-logo--lg{height:88px;}
.ergo-detail-head{gap:18px;}
} .rc-h-dots{display:none;}
@media (max-width:880px), (max-height:520px){
.rc-h-dots{position:absolute; inset:0; display:block; pointer-events:none;}
.rc-h-dots i{
position:absolute; left:var(--x); top:var(--y, 50%);
transform:translate(-50%,-50%); border-radius:50%; box-sizing:border-box;
transition:opacity .2s linear, box-shadow .2s linear;
}
.rc-h-via{
width:9px; height:9px; background:var(--rail); border:2px solid var(--cyan);
opacity:clamp(.25, calc(.25 + (var(--scroll,0) - var(--t,0)) * 12), 1);
box-shadow:0 0 calc(6px * clamp(0, calc((var(--scroll,0) - var(--t,0)) * 12), 1)) var(--cyan);
}
.rc-h-pad{
width:6px; height:6px; background:var(--cyan);
opacity:clamp(.18, calc(.18 + (var(--scroll,0) - var(--t,0)) * 12), 1);
} .rc-h .rc-line{stroke:rgba(140,190,190,.34);} .rc-charge-h{
stroke-dasharray:none;
clip-path:inset(0 calc((1 - var(--scroll, 0)) * 100%) 0 0);
transition:clip-path .1s linear;
}
}
@media (prefers-reduced-motion: reduce){
.rc-charge-h{transition:none;}
} @media (max-width:360px){
.side-rail-lang-label{display:none;}
.side-rail-logo img{height:28px;}
} @media (max-width:880px), (max-height:520px){
.side-rail-lang{position:relative; z-index:1;}
.side-rail-logo::before,
.side-rail-lang::before,
.nav-toggle::before{
content:''; position:absolute; left:50%; top:50%; z-index:-1;
width:calc(100% + 30px); height:calc(100% + 18px);
transform:translate(-50%,-50%); pointer-events:none;
background:radial-gradient(50% 50% at 50% 50%, #0a1013 54%, rgba(10,16,19,.9) 74%, rgba(10,16,19,0) 100%);
}
} @media (max-width:700px){
.footer-grid{grid-template-columns:1fr; gap:34px; padding-bottom:30px;}
.footer-grid p{max-width:none;}
footer.site-footer{padding:44px 0 24px;}
.footer-logo{height:44px; margin-bottom:14px;} .footer-badges .iso-badge{padding:11px 13px; gap:11px;}
.footer-badges .badge-art{width:50px; height:50px;}
.footer-badges.is-certs .badge-art img{height:calc(var(--cert-size, 62px) * .87);}
.footer-certs h4{margin-bottom:12px;}
.footer-certs .cert-group + .cert-group{margin-top:20px; padding-top:18px;}
.footer-bottom{justify-content:center; text-align:center;}
.interreg-links{gap:8px 18px; justify-content:center;}
.interreg-foot{margin-top:26px; padding-top:20px;} .footer-channels{max-width:none; border-radius:16px;}
.footer-channels .footer-channel{display:flex; min-height:60px; padding:12px 14px; gap:12px;}
.footer-channel .ch-icon{width:36px; height:36px; border-radius:11px;}
.footer-channel .ch-lbl{font-size:11px;}
.footer-channel .ch-val{font-size:16px;}
.footer-channel.is-static .ch-val{font-size:14.5px;}
}  .feature-list{
position:relative;
padding-left:44px;
margin:24px 0 32px;
display:flex; flex-direction:column; gap:0;
} .feature-list li{
position:relative; display:grid;
grid-template-columns:1fr;
row-gap:5px;
align-items:start;
padding:15px 0;
border-bottom:1px solid color-mix(in srgb, var(--line) 42%, transparent);
font-size:16px; color:var(--ink); font-weight:500;
}
.feature-list li:last-child{border-bottom:none;} .feature-list li::before{
content:'0'attr(data-i); position:absolute; left:-44px; top:10px;
width:32px; height:32px;
display:flex; align-items:center; justify-content:center;
font-family:var(--font-display); font-size:12px; font-weight:800;
letter-spacing:.02em; font-variant-numeric:tabular-nums;
color:var(--accent); background:color-mix(in srgb, var(--accent) 9%, transparent);
border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);
border-radius:9px;
transition:border-color .45s var(--ease), box-shadow .45s var(--ease), color .45s var(--ease);
}
.feature-list li:not([data-i])::before{content:counter(ortem-fl, decimal-leading-zero);} .feature-list li:hover::before{
border-color:var(--accent);
color:var(--cyan);
box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent);
}
.feature-list li>strong{
color:var(--ink); font-weight:700; font-size:18px; line-height:1.4;
letter-spacing:-.005em;
}
.feature-list .fl-txt{
font-weight:400; color:var(--muted); font-size:16.5px; line-height:1.65;
max-width:62ch;
} @media (min-width:1024px){
.feature-list li{
grid-template-columns:minmax(0,15rem) minmax(0,1fr);
column-gap:28px; row-gap:0;
}
.feature-list li>strong{grid-column:1;}
.feature-list .fl-txt{grid-column:2;} .feature-list li:not(:has(.fl-txt))>strong{grid-column:1 / -1;}
}
@media (prefers-reduced-motion:reduce){
.feature-list li::before{transition:none;}
} .media-frame img[src*="ortem-logo-white"],
.media-frame img[src*="ortem-placeholder"]{
object-fit:contain; padding:12%; opacity:.55; background:var(--panel);
} .value-card .n,
.wf-step .n{
width:44px; height:44px;
display:flex; align-items:center; justify-content:center;
font-size:14px; font-weight:800; letter-spacing:.02em;
font-variant-numeric:tabular-nums;
color:var(--accent); opacity:1;
border:1px solid color-mix(in srgb, var(--accent) 34%, transparent);
border-radius:10px;
background:color-mix(in srgb, var(--accent) 7%, transparent);
transition:border-color .45s var(--ease), box-shadow .45s var(--ease), color .45s var(--ease);
}
.value-card:hover .n,
.wf-step:hover .n{
border-color:var(--accent);
color:var(--cyan);
box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 10%, transparent);
} .value-card .n.is-mark{
width:auto; height:auto; border:none; background:none;
font-size:26px; line-height:1; justify-content:flex-start;
}
.value-card .n{flex:none;}
@media (prefers-reduced-motion:reduce){
.value-card .n, .wf-step .n{transition:none;}
}   .app-index{margin:0 0 38px;}
.app-index-lead{
font-family:var(--font-display); font-weight:700; font-size:11px;
letter-spacing:.24em; text-transform:uppercase; color:var(--accent);
margin:0 0 14px;
}
.app-index-list{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px;}
.app-index-list a{
display:inline-flex; align-items:center; gap:9px;
padding:7px 15px 7px 7px; border-radius:999px;
border:1px solid color-mix(in srgb, var(--accent) 26%, transparent);
background:color-mix(in srgb, var(--accent) 6%, transparent);
color:#e9f4f5; text-decoration:none; font-size:14.5px; font-weight:600;
transition:border-color .25s var(--ease), background .25s var(--ease), transform .25s var(--ease);
}
.app-index-list a:hover{
border-color:var(--cyan);
background:color-mix(in srgb, var(--accent) 14%, transparent);
transform:translateY(-2px);
}
.app-index-list a:focus-visible{outline:2px solid var(--cyan); outline-offset:3px;}
.app-index-mark{
flex:none; width:26px; height:26px; border-radius:7px;
display:grid; place-items:center;
font-family:var(--font-display); font-weight:800; font-size:11.5px;
color:var(--rail); background:var(--accent);
} .app-index-z{
flex:none; position:relative; width:26px; height:26px; border-radius:7px;
display:grid; place-items:center;
background:linear-gradient(160deg, #14252b, #0a1013);
border:1px solid color-mix(in srgb, var(--accent) 42%, transparent);
box-shadow:inset 0 1px 0 rgba(150,235,226,.14);
}
.app-index-z .app-z{width:12px; height:13px;}
.app-index-z .app-z-trace{stroke-width:2.9;}
.app-index-list a:hover .app-index-z{border-color:var(--cyan);} .app-index-fit{margin-bottom:34px;}
.app-card{
position:relative; scroll-margin-top:110px;
margin:0 0 18px; padding:30px 32px 32px;
border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);
border-radius:16px;
background:linear-gradient(180deg, rgba(10,16,19,.42), rgba(10,16,19,.18));
transition:border-color .3s var(--ease), transform .3s var(--ease);
} .app-card:hover{border-color:color-mix(in srgb, var(--sc, var(--accent)) 48%, transparent); transform:translateY(-2px);}
.app-card:target{border-color:var(--cyan);}
.app-card-head{display:flex; align-items:center; gap:18px; margin:0 0 18px;}
.app-card-id{min-width:0;} .app-chip{
flex:none; position:relative; width:58px; height:58px; border-radius:12px;
display:grid; place-items:center;
background:linear-gradient(160deg, #14252b, #0a1013);
border:1px solid color-mix(in srgb, var(--accent) 42%, transparent);
box-shadow:inset 0 1px 0 rgba(150,235,226,.14);
}
.app-chip b{
font-family:var(--font-display); font-weight:800; font-size:19px;
letter-spacing:.04em; color:var(--accent);
}
.app-z{width:26px; height:28px; display:block; fill:none;}
.app-z path{stroke-linecap:square; stroke-linejoin:miter;}
.app-z-trace{stroke:var(--accent); stroke-width:2.6;}
.app-z-pulse{
stroke:var(--cyan); stroke-width:1.5; stroke-dasharray:14 86; opacity:0;
filter:drop-shadow(0 0 3px rgba(124,230,219,.75));
}
.app-chip::before,
.app-chip::after{
content:''; position:absolute; top:12px; bottom:12px; width:4px;
background:repeating-linear-gradient(180deg, var(--accent) 0 3px, transparent 3px 9px);
opacity:.5; transition:opacity .3s var(--ease);
}
.app-chip::before{left:-5px; border-radius:2px 0 0 2px;}
.app-chip::after{right:-5px; border-radius:0 2px 2px 0;}
.app-card:hover .app-chip::before,
.app-card:hover .app-chip::after{opacity:1;}
.app-name{font-size:clamp(24px,2.8vw,32px); font-weight:800; color:#fff; line-height:1.15; margin:0;} .app-sector{
display:inline-block; margin-top:9px; padding:4px 13px; border-radius:999px;
border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);
background:color-mix(in srgb, var(--accent) 8%, transparent);
font-size:13.5px; font-weight:600; letter-spacing:0; color:var(--accent);
}
.app-intro{font-size:17.5px; line-height:1.75; max-width:74ch; margin:0 0 18px;}
.app-origin{
max-width:74ch; margin:0; padding:14px 16px 14px 18px; border-radius:10px;
border-left:2px solid color-mix(in srgb, var(--accent) 40%, transparent);
background:color-mix(in srgb, var(--accent) 5%, transparent);
font-size:15.5px; line-height:1.7; color:var(--muted);
}
.app-origin-label{
display:block; margin:0 0 5px;
font-family:var(--font-display); font-weight:700; font-size:10.5px;
letter-spacing:.24em; text-transform:uppercase; color:var(--accent);
}
.app-cta{margin:18px 0 0;} .app-scene{
flex:none; position:relative; overflow:hidden;
width:152px; height:152px; margin:26px auto 0;
display:grid; place-items:center; border-radius:20px;
border:1px solid color-mix(in srgb, var(--sc) 34%, transparent);
background:
radial-gradient(122% 118% at 30% 20%, color-mix(in srgb, var(--sc) 15%, transparent), transparent 68%),
linear-gradient(160deg, rgba(11,19,23,.7), rgba(8,13,16,.45));
transition:border-color .3s var(--ease);
} .app-scene::before{
content:''; position:absolute; inset:0;
background-image:
linear-gradient(color-mix(in srgb, var(--sc) 14%, transparent) 1px, transparent 1px),
linear-gradient(90deg, color-mix(in srgb, var(--sc) 14%, transparent) 1px, transparent 1px);
background-size:19px 19px;
-webkit-mask-image:radial-gradient(72% 72% at 50% 50%, #000 30%, transparent 76%);
mask-image:radial-gradient(72% 72% at 50% 50%, #000 30%, transparent 76%);
}
.app-card:hover .app-scene{border-color:color-mix(in srgb, var(--sc) 62%, transparent);}
.app-scene-art{position:relative; width:98px; height:98px; display:block; fill:none;}
.sc-line > *{
fill:none; stroke:var(--sc); stroke-width:2.6;
stroke-linecap:round; stroke-linejoin:round;
}
.sc-flow{
fill:none; stroke:color-mix(in srgb, var(--sc) 26%, #ffffff); stroke-width:2.4;
stroke-linecap:round; stroke-dasharray:9 91; opacity:0;
filter:drop-shadow(0 0 5px color-mix(in srgb, var(--sc) 85%, transparent));
}
.sc-pads > *{fill:var(--sc); stroke:none;} @media (min-width:1000px){
.app-card{display:flex; align-items:center; gap:38px;}
.app-card-body{flex:1 1 auto; min-width:0;}
.app-scene{width:198px; height:198px; margin:0;}
.app-scene-art{width:126px; height:126px;}
} @media (max-width:880px){
.app-index{margin-bottom:30px;}
.app-index-fit{margin-bottom:26px;}
.app-index-list{
flex-wrap:nowrap; overflow-x:auto; padding-bottom:8px;
scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch;
scrollbar-width:thin; scrollbar-color:var(--line) transparent;
}
.app-index-list::-webkit-scrollbar{height:4px;}
.app-index-list::-webkit-scrollbar-track{background:transparent;}
.app-index-list::-webkit-scrollbar-thumb{background:var(--line); border-radius:2px;}
.app-index-list li{flex:none; scroll-snap-align:start;}
.app-index-list a{white-space:nowrap;}
} @media (max-height:520px){
.app-index, .app-index-fit{margin-bottom:20px;}
.app-index-lead{font-size:10px; margin-bottom:9px;}
.app-index-list{gap:6px;}
.app-index-list a{font-size:13px; padding:5px 12px 5px 5px;}
.app-index-mark{width:22px; height:22px; border-radius:6px; font-size:10.5px;}
.app-index-z{width:22px; height:22px; border-radius:6px;}
.app-index-z .app-z{width:10px; height:11px;}
}
@media (max-width:640px){
.app-card{padding:22px 18px 24px; border-radius:14px;}
.app-card-head{gap:14px;}
.app-chip{width:48px; height:48px;}
.app-chip b{font-size:16px;}
.app-z{width:22px; height:24px;}
.app-scene{width:134px; height:134px; margin-top:22px; border-radius:17px;}
.app-scene-art{width:88px; height:88px;}
.app-chip::before, .app-chip::after{top:9px; bottom:9px;}
.app-index-list a{font-size:13.5px; padding:6px 13px 6px 6px;}
} @keyframes appPillIn{
from{opacity:0; transform:translateY(12px) scale(.94);}
to{opacity:1; transform:none;}
}
.oa-js .app-index-list li{opacity:0;}
.oa-js .app-index.in .app-index-list li{
animation:appPillIn .52s var(--ease) both;
animation-delay:calc(var(--st, 0) * 55ms);
}
@keyframes appChipWake{
0%{box-shadow:inset 0 1px 0 rgba(150,235,226,.14);}
40%{box-shadow:inset 0 1px 0 rgba(150,235,226,.14), 0 0 18px rgba(95,208,198,.6);}
100%{box-shadow:inset 0 1px 0 rgba(150,235,226,.14);}
}
.oa-js .app-card.in .app-chip{animation:appChipWake 1.1s var(--ease) .2s 1;} @keyframes appZDraw{from{stroke-dashoffset:100;} to{stroke-dashoffset:0;}}
@keyframes appZRun{from{stroke-dashoffset:0;} to{stroke-dashoffset:-100;}}
.oa-js .app-z-trace{stroke-dasharray:100; stroke-dashoffset:100;}
.oa-js .app-card.in .app-z-trace{animation:appZDraw .9s var(--ease) .18s both;}
.app-card:hover .app-z-pulse{opacity:1; animation:appZRun .7s linear infinite;} .oa-js .app-index.in .app-index-z .app-z-trace{
animation:appZDraw .7s var(--ease) both;
animation-delay:calc(var(--st, 0) * 55ms + .26s);
}
.app-index-list a:hover .app-z-pulse{opacity:1; animation:appZRun .7s linear infinite;} @keyframes scDraw{from{stroke-dashoffset:100;} to{stroke-dashoffset:0;}}
@keyframes scPadIn{from{opacity:0; transform:scale(.3);} to{opacity:1; transform:none;}}
@keyframes scFlowIn{from{opacity:0;} to{opacity:.95;}}
@keyframes scFlowRun{from{stroke-dashoffset:100;} to{stroke-dashoffset:0;}}
.oa-js .app-scene .sc-line > *{stroke-dasharray:100; stroke-dashoffset:100;}
.oa-js .app-card.in .app-scene .sc-line > *{animation:scDraw .8s var(--ease) both;}
.oa-js .app-card.in .app-scene .sc-line > *:nth-child(1){animation-delay:.24s;}
.oa-js .app-card.in .app-scene .sc-line > *:nth-child(2){animation-delay:.34s;}
.oa-js .app-card.in .app-scene .sc-line > *:nth-child(3){animation-delay:.44s;}
.oa-js .app-card.in .app-scene .sc-line > *:nth-child(4){animation-delay:.54s;}
.oa-js .app-card.in .app-scene .sc-line > *:nth-child(5){animation-delay:.64s;}
.oa-js .app-card.in .app-scene .sc-line > *:nth-child(6){animation-delay:.74s;}
.oa-js .app-card.in .app-scene .sc-line > *:nth-child(n+7){animation-delay:.84s;}
.oa-js .app-scene .sc-pads > *{opacity:0; transform-box:fill-box; transform-origin:center;}
.oa-js .app-card.in .app-scene .sc-pads > *{animation:scPadIn .45s var(--ease) both;}
.oa-js .app-card.in .app-scene .sc-pads > *:nth-child(1){animation-delay:.98s;}
.oa-js .app-card.in .app-scene .sc-pads > *:nth-child(2){animation-delay:1.06s;}
.oa-js .app-card.in .app-scene .sc-pads > *:nth-child(3){animation-delay:1.14s;}
.oa-js .app-card.in .app-scene .sc-pads > *:nth-child(n+4){animation-delay:1.22s;}
.oa-js .app-card.in .app-scene .sc-flow{
animation:scFlowIn .5s var(--ease) 1.15s both, scFlowRun 4.6s linear 1.15s infinite;
}
.oa-js .app-card.in:hover .app-scene .sc-flow{animation-duration:.5s, 1.9s;} @keyframes appPinDown{to{background-position:0 9px;}}
@keyframes appPinUp{to{background-position:0 -9px;}}
.app-card:hover .app-chip::before{opacity:1; animation:appPinDown .7s linear infinite;}
.app-card:hover .app-chip::after{opacity:1; animation:appPinUp .7s linear infinite;} @keyframes appTargetPulse{
from{box-shadow:0 0 0 0 rgba(124,230,219,.42);}
to{box-shadow:0 0 0 20px rgba(124,230,219,0);}
}
.app-card:target{animation:appTargetPulse .95s var(--ease) 1;}
@media (prefers-reduced-motion: reduce){
.app-card, .app-index-list a, .app-chip::before, .app-chip::after{transition:none;}
.app-card:hover, .app-index-list a:hover{transform:none;}
.oa-js .app-index-list li{opacity:1;}
.oa-js .app-z-trace{stroke-dashoffset:0;}
.app-card:hover .app-z-pulse,
.app-index-list a:hover .app-z-pulse{opacity:0;}
.app-index-z{transition:none;}
.oa-js .app-scene .sc-line > *{stroke-dashoffset:0;}
.oa-js .app-scene .sc-pads > *{opacity:1;}
.app-scene{transition:none;}
.oa-js .app-index.in .app-index-list li,
.oa-js .app-index.in .app-index-z .app-z-trace,
.app-index-list a:hover .app-z-pulse,
.oa-js .app-card.in .app-chip,
.oa-js .app-card.in .app-z-trace,
.oa-js .app-card.in .app-scene .sc-line > *,
.oa-js .app-card.in .app-scene .sc-pads > *,
.oa-js .app-card.in .app-scene .sc-flow,
.app-card:hover .app-z-pulse,
.app-card:hover .app-chip::before,
.app-card:hover .app-chip::after,
.app-card:target{animation:none;}
}  :where(.copy,.entry-content,.page-head){text-align:justify;} :where(.copy,.entry-content,.page-head) :where(h1,h2,h3,h4,h5,h6,
ul,ol,li,dl,dt,dd,
.value-card,.wf-step,.stat,.post-card,.carousel-card,.proj-card,
.ergo-card,.job-card,.client-card,.logo-card,
input,textarea,select,button){text-align:left;} .oc-align-center :where(h1,h2,h3,h4,ul,ol,li,dl,dt,dd),
.oc-align-right  :where(h1,h2,h3,h4,ul,ol,li,dl,dt,dd){text-align:inherit;} .oc-align-justify :where(h1,h2,h3,h4,h5,h6,
ul,ol,li,dl,dt,dd,
.value-card,.wf-step,.stat,.post-card,.carousel-card,.proj-card,
.ergo-card,.job-card,.client-card,.logo-card){text-align:left;}  .oc-align-left,  .oc-align-left  .copy,
.oc-align-left  .value-card, .oc-align-left  .wf-step, .oc-align-left  .stat{text-align:left;}
.oc-align-center,.oc-align-center .copy,
.oc-align-center .value-card, .oc-align-center .wf-step, .oc-align-center .stat{text-align:center;}
.oc-align-right, .oc-align-right .copy,
.oc-align-right .value-card, .oc-align-right .wf-step, .oc-align-right .stat{text-align:right;} .oc-align-justify,.oc-align-justify .copy{text-align:justify;} .oc-align-center .value-card, .oc-align-center .wf-step{align-items:center;}
.oc-align-right  .value-card, .oc-align-right  .wf-step{align-items:flex-end;}
.oc-align-center .robot-cta-row, .oc-align-center .cta-row{justify-content:center;}
.oc-align-right  .robot-cta-row, .oc-align-right  .cta-row{justify-content:flex-end;}
.oc-align-center .section-label{justify-content:center;}
.oc-align-right  .section-label{justify-content:flex-end;} .oc-align-center .section-label .rule,
.oc-align-right  .section-label .rule{display:none;} .oc-head-top .oc-head{
font-size:clamp(32px,4.2vw,47px); line-height:1.12;
max-width:26ch; margin-bottom:36px;
}
.oc-align-center.oc-head-top .oc-head{max-width:none;}
.oc-align-right.oc-head-top  .oc-head{max-width:none;}
@media (max-width:880px){
.oc-head-top .oc-head{max-width:none; margin-bottom:26px;}
} .oc-list-center .feature-list,
.oc-list-right  .feature-list{
width:fit-content; max-width:100%;
}
.oc-list-center .feature-list{margin-left:auto;  margin-right:auto;}
.oc-list-right  .feature-list{margin-left:auto;  margin-right:0;} @media (max-width:880px){
.oc-list-center .feature-list,
.oc-list-right  .feature-list{width:auto; margin-left:0; margin-right:0;}
} .mobile-menu.is-cards{ background:
radial-gradient(130% 42% at 50% -4%, rgba(95,208,198,.09), transparent 70%),
var(--rail);
overscroll-behavior:contain;
-webkit-overflow-scrolling:touch;
}
.mobile-menu.is-cards .mobile-menu-inner{
padding:clamp(46px,6vh,92px) clamp(16px,3vw,44px) clamp(30px,5vh,60px);
}
.om-eyebrow{margin:0 0 clamp(14px,2.4vh,26px);}
.om-eyebrow span{
display:block; font-family:var(--font-display); font-weight:700;
font-size:11px; letter-spacing:.26em; text-transform:uppercase; color:var(--accent);
}
.om-eyebrow i{
display:block; width:30px; height:2px; margin-top:9px; background:var(--accent);
box-shadow:0 0 10px rgba(95,208,198,.55);
}
.ortem-menu{
--om-fill:linear-gradient(180deg, rgba(24,66,82,.72), rgba(14,44,58,.72));
--om-fill-hi:linear-gradient(180deg, rgba(32,82,98,.82), rgba(20,56,72,.82));
--om-edge:rgba(95,208,198,.22);
--om-edge-hi:rgba(124,230,219,.62);
list-style:none; margin:0; padding:0; max-width:620px;
display:flex; flex-direction:column;
} .mobile-menu ul.ortem-menu{gap:18px;}
.om-item{
border:1px solid var(--om-edge); border-radius:12px; background:var(--om-fill);
}
.om-item:hover{border-color:var(--om-edge-hi); background:var(--om-fill-hi);}
.om-item.is-current{border-color:var(--om-edge-hi); background:var(--om-fill-hi);}
.om-card{
position:relative; display:flex; align-items:center; gap:12px;
width:100%; min-height:56px; margin:0; padding:15px 16px;
background:none; border:0; border-radius:12px; text-align:left; cursor:pointer;
color:#fff; text-decoration:none;
font-family:var(--font-display); font-weight:700; font-size:16px; line-height:1.25;
-webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.om-item.is-current > .om-card{color:var(--cyan);}
.om-card:focus-visible{outline:2px solid var(--cyan); outline-offset:2px;} .om-card::before{
content:''; position:absolute; left:-1px; top:50%; width:2px; height:0;
background:var(--accent); border-radius:0 2px 2px 0; transform:translateY(-50%);
transition:height .3s var(--ease), box-shadow .3s var(--ease);
}
.om-item:hover > .om-card::before,
.om-card:focus-visible::before,
.om-item.is-open > .om-card::before{height:22px; box-shadow:0 0 10px rgba(95,208,198,.6);}
.om-item.is-current > .om-card::before{height:26px; box-shadow:0 0 12px rgba(95,208,198,.75);}
.om-label{flex:1 1 auto; min-width:0; overflow-wrap:break-word;}
.om-chev{
flex:none; width:17px; height:17px; color:var(--accent); opacity:.7;
transition:transform .3s var(--ease), opacity .3s var(--ease);
}
.om-chev svg{width:100%; height:100%; display:block;}
.om-leaf:hover .om-chev{transform:translateX(3px); opacity:1;}
.om-group:hover .om-caret{opacity:1;}
.om-item.is-open > .om-head .om-caret{transform:rotate(180deg); opacity:1;} .om-item.om-linked{display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:stretch;}
.om-linked > .om-panel{grid-column:1 / -1;}
.om-linked > .om-panel > .om-panel-in{border-top:1px solid rgba(95,208,198,.18);}
.om-side{
display:flex; align-items:center; justify-content:center;
width:56px; margin:0; padding:0; cursor:pointer;
border:0; border-left:1px solid rgba(95,208,198,.18); border-radius:0 12px 12px 0;
background:none; color:#fff;
-webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.om-side:focus-visible{outline:2px solid var(--cyan); outline-offset:-2px;}
.om-linked:hover .om-side .om-caret,
.om-side:focus-visible .om-caret{opacity:1;} .om-panel{display:grid; grid-template-rows:0fr; transition:grid-template-rows .42s var(--ease);}
.om-item.is-open > .om-panel{grid-template-rows:1fr;}
.om-panel-in{overflow:hidden; min-height:0;} .ortem-menu.om-no-anim .om-panel,
.ortem-menu.om-no-anim .om-caret{transition:none;} .om-list{list-style:none; margin:0; padding:0 14px 12px 18px; display:flex; flex-direction:column;}
.om-list a{
display:flex; align-items:center; gap:11px; min-height:42px; padding:8px 4px;
color:var(--muted); text-decoration:none; font-size:15px; font-weight:600;
transition:color .25s var(--ease), transform .25s var(--ease);
}
.om-dot{
flex:none; width:6px; height:6px; border-radius:50%; background:var(--accent-dim);
transition:background .25s var(--ease), box-shadow .25s var(--ease);
}
.om-list a:hover,
.om-list a.is-current{color:#fff; transform:translateX(4px);}
.om-list a:hover .om-dot,
.om-list a.is-current .om-dot{background:var(--cyan); box-shadow:0 0 9px var(--cyan);} .om-subcards{display:flex; flex-direction:column; gap:8px; padding:2px 12px 12px;}
.om-subcard{
display:flex; align-items:center; gap:12px; min-height:52px; padding:11px 13px;
border:1px solid rgba(124,230,219,.26); border-radius:10px; background:rgba(150,235,226,.10);
color:#e9f4f5; text-decoration:none;
font-family:var(--font-display); font-weight:600; font-size:14.5px; line-height:1.3;
transition:border-color .25s var(--ease), background .25s var(--ease), color .25s var(--ease);
}
.om-subcard:hover,
.om-subcard.is-current{border-color:var(--om-edge-hi); background:rgba(150,235,226,.17); color:#fff;}
.om-subcard .om-chev{width:15px; height:15px;}
.om-subcard:hover .om-chev{transform:translateX(3px); opacity:1;} .om-subgroup{
display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:stretch;
border:1px solid rgba(124,230,219,.26); border-radius:10px; background:rgba(150,235,226,.10);
transition:border-color .25s var(--ease), background .25s var(--ease);
}
.om-subgroup:hover,
.om-subgroup.is-open{border-color:var(--om-edge-hi); background:rgba(150,235,226,.17);}
.om-subgroup.is-current{border-color:var(--om-edge-hi); background:rgba(150,235,226,.20);}
.om-subgroup > .om-subcard-link,
.om-subgroup > .om-subcard-link:hover{border:0; background:none; border-radius:9px 0 0 9px;}
.om-subgroup.is-current > .om-subcard-link{color:var(--cyan);}
.om-subhead{
display:flex; align-items:center; justify-content:center;
width:48px; margin:0; padding:0; cursor:pointer;
border:0; border-left:1px solid rgba(95,208,198,.18); border-radius:0 9px 9px 0;
background:none; color:#fff;
-webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.om-subhead:focus-visible{outline:2px solid var(--cyan); outline-offset:-2px;}
.om-subgroup:hover .om-subhead .om-caret,
.om-subhead:focus-visible .om-caret{opacity:1;}
.om-subgroup.is-open > .om-subhead .om-caret{transform:rotate(180deg); opacity:1;}
.om-subgroup > .om-panel{grid-column:1 / -1;}
.om-subgroup.is-open > .om-panel{grid-template-rows:1fr;}
.om-subgroup > .om-panel > .om-panel-in{border-top:1px solid rgba(95,208,198,.18);} .om-tiles > .om-subgroup{grid-column:1 / -1;}
.om-list > .om-list-sub{margin:6px 0 2px;} .om-tiles{
display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
gap:10px; padding:4px 12px 14px;
}
.om-tile{
display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px;
min-height:132px; padding:14px 10px;
border:1px solid rgba(124,230,219,.26); border-radius:12px; background:rgba(150,235,226,.10);
text-align:center; text-decoration:none;
transition:border-color .25s var(--ease), background .25s var(--ease);
}
.om-tile:hover,
.om-tile.is-current{border-color:var(--om-edge-hi); background:rgba(150,235,226,.17);}
.om-tile.is-plain{min-height:64px;}
.om-tile-img{flex:none; width:100%; height:74px; display:flex; align-items:center; justify-content:center;} .om-tile-img img,
.om-tile-img video{
width:100%; height:100%; display:block;
object-fit:contain; object-position:center bottom;
filter:drop-shadow(0 4px 10px rgba(0,0,0,.45));
}
.om-tile-name{
min-width:0; overflow-wrap:break-word; color:#fff;
font-family:var(--font-display); font-weight:600; font-size:15px; line-height:1.25;
} .mobile-menu.is-cards .om-eyebrow,
.mobile-menu.is-cards .om-item{
opacity:0; transform:translateX(-16px);
transition:opacity .5s var(--ease), transform .5s var(--ease),
border-color .3s var(--ease), background-color .3s var(--ease);
}
.mobile-menu.is-cards.open .om-eyebrow,
.mobile-menu.is-cards.open .om-item{
opacity:1; transform:none;
transition-delay:calc(.08s + var(--om-i,0) * .055s), calc(.08s + var(--om-i,0) * .055s), 0s, 0s;
} @media (max-width:880px), (max-height:520px){
.mobile-menu.is-cards .mobile-menu-inner{padding:112px 16px 40px;}
body.admin-bar .mobile-menu.is-cards .mobile-menu-inner{padding-top:146px;}
.ortem-menu{max-width:none;}
}
@media (max-width:782px){
body.admin-bar .mobile-menu.is-cards .mobile-menu-inner{padding-top:158px;}
} @media (max-height:520px){
.mobile-menu.is-cards .mobile-menu-inner{padding-top:106px; padding-bottom:26px;}
.ortem-menu{gap:12px;}
.om-card{min-height:46px; padding:11px 14px; font-size:15px;}
.om-list a{min-height:36px; padding:6px 4px; font-size:14px;}
.om-subcard{min-height:44px; padding:9px 12px; font-size:13.5px;}
.om-side{width:46px;}
.om-subhead{width:42px;}
.om-tile{min-height:94px; padding:10px 8px; gap:6px;}
.om-tile.is-plain{min-height:48px;}
.om-tile-img{width:100%; height:46px;}
.om-tile-name{font-size:13px;}
} @media (max-width:520px){
.om-tiles{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (prefers-reduced-motion: reduce){
.mobile-menu.is-cards .om-eyebrow,
.mobile-menu.is-cards .om-item{opacity:1; transform:none; transition:none;}
.om-panel, .om-card::before, .om-chev, .om-list a, .om-dot, .om-subcard, .om-subgroup, .om-tile{transition:none;}
} .robot-hero .scroll-cue{
position:absolute; left:clamp(20px,4vw,48px); bottom:26px; z-index:2;
display:flex; align-items:center; gap:10px; width:fit-content;
color:var(--muted); font-size:12px; letter-spacing:.18em; text-transform:uppercase;
text-decoration:none;
opacity:0; animation:riseIn .8s var(--ease) 1.1s forwards;
transition:color .3s var(--ease);
}
.robot-hero .scroll-cue:hover{color:var(--accent);}
.robot-hero .scroll-cue:hover .line{background:var(--accent-dim);}
.robot-hero .scroll-cue:focus-visible{outline:2px solid var(--cyan); outline-offset:6px;} @media (max-width:880px){
.robot-hero .scroll-cue{position:static; margin:26px auto 0;}
}
@media (prefers-reduced-motion: reduce){
.robot-hero .scroll-cue{animation:none; opacity:1;}
} .thumb.thumb-ph,
.single-hero-img.thumb-ph{
position:relative; display:flex; align-items:center; justify-content:center;
background:
radial-gradient(130% 120% at 50% 0%, rgba(95,208,198,.15), transparent 64%),
repeating-linear-gradient(135deg, rgba(140,190,190,.07) 0 8px, transparent 8px 16px),
var(--bg-2);
}
.thumb.thumb-ph::after,
.single-hero-img.thumb-ph::after{
content:''; position:absolute; inset:0; pointer-events:none;
box-shadow:inset 0 0 0 1px rgba(140,190,190,.16);
}
.thumb.thumb-ph .ph-mark,
.single-hero-img.thumb-ph .ph-mark{
display:flex; align-items:center; justify-content:center;
width:min(58%, 230px); max-height:64%; opacity:.6;
transition:opacity .5s var(--ease), transform .6s var(--ease);
}
.thumb.thumb-ph .ph-mark img,
.thumb.thumb-ph .ph-mark video,
.single-hero-img.thumb-ph .ph-mark img,
.single-hero-img.thumb-ph .ph-mark video{
width:100%; height:auto; max-height:100%;
object-fit:contain; display:block; filter:none; transform:none;
}
.post-card:hover .thumb.thumb-ph .ph-mark,
.carousel-card:hover .thumb.thumb-ph .ph-mark{opacity:.92; transform:scale(1.05);} .single-hero-img.thumb-ph{aspect-ratio:16/6; min-height:170px;}
.single-hero-img.thumb-ph .ph-mark{width:min(42%, 260px);} .ergo-logo.ergo-logo--ph{
background:
repeating-linear-gradient(135deg, rgba(140,190,190,.08) 0 7px, transparent 7px 14px),
var(--bg-2);
border:1px solid rgba(140,190,190,.20);
}
.ergo-logo.ergo-logo--ph img{opacity:.72; transition:opacity .4s var(--ease);}
.ergo-card:hover .ergo-logo.ergo-logo--ph img{opacity:1;}
@media (max-width:880px){
.thumb.thumb-ph .ph-mark,
.single-hero-img.thumb-ph .ph-mark{width:min(64%, 190px);}
.single-hero-img.thumb-ph{aspect-ratio:16/8; min-height:132px;}
.single-hero-img.thumb-ph .ph-mark{width:min(62%, 200px);}
} @media (max-height:520px){
.single-hero-img.thumb-ph{aspect-ratio:auto; min-height:96px; height:96px;}
.single-hero-img.thumb-ph .ph-mark{width:min(46%, 170px); max-height:72%;}
}
@media (prefers-reduced-motion: reduce){
.thumb.thumb-ph .ph-mark,
.single-hero-img.thumb-ph .ph-mark,
.ergo-logo.ergo-logo--ph img{transition:none;}
.post-card:hover .thumb.thumb-ph .ph-mark,
.carousel-card:hover .thumb.thumb-ph .ph-mark{transform:none;}
} .app-fit-grid{grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px;}
.app-fit-card{
--gl:color-mix(in srgb, var(--accent) 82%, #ffffff);
position:relative; overflow:hidden; padding:24px 22px 22px; gap:8px;
transition:border-color .4s var(--ease), transform .4s var(--ease), box-shadow .45s var(--ease);
} .app-fit-card:hover,
.app-fit-card:focus-visible{
--gl:var(--sc);
border-color:color-mix(in srgb, var(--sc) 72%, transparent);
box-shadow:
inset 0 1px 0 rgba(150,210,215,.24),
10px 12px 22px -3px color-mix(in srgb, var(--sc) 58%, transparent),
0 36px 56px -16px rgba(0,0,0,.72),
0 0 38px -4px color-mix(in srgb, var(--sc) 56%, transparent);
}
.app-fit-card::before{
content:''; position:absolute; inset:0; pointer-events:none; opacity:0;
background:radial-gradient(122% 104% at 14% 0%, color-mix(in srgb, var(--sc) 22%, transparent), transparent 64%);
transition:opacity .4s var(--ease);
}
.app-fit-card:hover::before,
.app-fit-card:focus-visible::before{opacity:1;}
.app-fit-card > *{position:relative;}
.app-fit-head{display:flex; align-items:center; justify-content:space-between; gap:12px;} .app-fit-art{
flex:none; width:56px; height:56px; border-radius:13px;
display:grid; place-items:center;
border:1px solid color-mix(in srgb, var(--gl) 34%, transparent);
background:linear-gradient(160deg, rgba(20,37,43,.92), rgba(10,16,19,.6));
box-shadow:inset 0 1px 0 rgba(150,235,226,.14);
transition:border-color .4s var(--ease), box-shadow .4s var(--ease);
}
.app-fit-card:hover .app-fit-art,
.app-fit-card:focus-visible .app-fit-art{
border-color:color-mix(in srgb, var(--sc) 66%, transparent);
box-shadow:inset 0 1px 0 rgba(150,235,226,.14), 0 0 0 4px color-mix(in srgb, var(--sc) 12%, transparent);
}
.app-fit-glyph{width:34px; height:34px; display:block; fill:none;}
.app-fit-glyph .sc-line > *{stroke:var(--gl); stroke-width:3.4; transition:stroke .4s var(--ease);}
.app-fit-glyph .sc-pads > *{fill:var(--gl); transition:fill .4s var(--ease);} .app-fit-glyph .sc-flow{opacity:0; stroke-width:2.8; transition:opacity .35s var(--ease);}
.app-fit-card:hover .app-fit-glyph .sc-flow{opacity:.95;}
.app-fit-n{
font-family:var(--font-display); font-weight:800; font-size:12.5px;
letter-spacing:.14em; font-variant-numeric:tabular-nums;
color:var(--gl); opacity:.8; transition:color .4s var(--ease);
}
.app-fit-card h3{font-size:20.5px;}
.app-fit-card p{font-size:15.5px; line-height:1.55; color:var(--muted);}
.app-fit-card .more{color:var(--gl); transition:color .4s var(--ease);} @media (max-width:1100px){
.app-fit-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:880px){
.app-fit-grid{gap:13px;}
.app-fit-card{padding:18px 16px 16px;}
.app-fit-art{width:48px; height:48px; border-radius:11px;}
.app-fit-glyph{width:29px; height:29px;}
.app-fit-card h3{font-size:17.5px;}
.app-fit-card p{font-size:14px;}
.app-fit-card .more{font-size:12.5px;}
.app-fit-n{font-size:11px;}
} @media (max-width:600px){
.app-fit-grid{grid-template-columns:1fr; gap:10px;}
.app-fit-card{
display:grid; grid-template-columns:auto minmax(0,1fr) auto;
align-items:center; column-gap:14px; row-gap:2px; padding:13px 15px;
}
.app-fit-head{grid-row:1 / span 2;}
.app-fit-n{display:none;}
.app-fit-card p{flex:none;}
.app-fit-card .more{display:none;}
.app-fit-card::after{
content:'›'; grid-column:3; grid-row:1 / span 2;
font-size:27px; line-height:1; color:var(--gl);
transition:color .4s var(--ease);
}
} @media (max-height:520px){
.app-fit-grid{gap:11px;}
.app-fit-card{padding:15px 14px 13px; gap:6px;}
.app-fit-art{width:42px; height:42px; border-radius:10px;}
.app-fit-glyph{width:26px; height:26px;}
.app-fit-card h3{font-size:16.5px;}
.app-fit-card p{font-size:13.5px;}
.app-fit-card .more{font-size:12px;}
} .oa-js .app-fit-glyph .sc-line > *{stroke-dasharray:100; stroke-dashoffset:100;}
.oa-js .app-fit-card.in .app-fit-glyph .sc-line > *{
animation:scDraw .8s var(--ease) both;
animation-delay:calc(var(--st, 0) * 70ms + .18s);
}
.oa-js .app-fit-glyph .sc-pads > *{opacity:0; transform-box:fill-box; transform-origin:center;}
.oa-js .app-fit-card.in .app-fit-glyph .sc-pads > *{
animation:scPadIn .42s var(--ease) both;
animation-delay:calc(var(--st, 0) * 70ms + .78s);
}
.oa-js .app-fit-card.in:hover .app-fit-glyph .sc-flow{animation:scFlowRun 2.1s linear infinite;}
@media (prefers-reduced-motion: reduce){
.app-fit-card, .app-fit-card::before, .app-fit-art, .app-fit-n,
.app-fit-glyph .sc-line > *, .app-fit-glyph .sc-pads > *,
.app-fit-glyph .sc-flow, .app-fit-card .more, .app-fit-card::after{transition:none;}
.app-fit-card:hover{transform:none;}
.oa-js .app-fit-glyph .sc-line > *{stroke-dashoffset:0;}
.oa-js .app-fit-glyph .sc-pads > *{opacity:1;}
.oa-js .app-fit-card.in .app-fit-glyph .sc-line > *,
.oa-js .app-fit-card.in .app-fit-glyph .sc-pads > *,
.oa-js .app-fit-card.in:hover .app-fit-glyph .sc-flow{animation:none;}
} .err-head{margin-bottom:26px;}
.err-code{
display:flex; gap:clamp(4px,1vw,12px); align-items:baseline;
font-family:var(--font-display); font-weight:800; line-height:.86;
font-size:clamp(80px,13vw,196px); letter-spacing:-.045em; margin:2px 0 10px;
}
.err-code span{
color:transparent; -webkit-text-stroke:2px var(--line);
animation:errCodeIn .8s var(--ease) both;
}
.err-code span:nth-child(1){animation-delay:.06s;}
.err-code span:nth-child(2){
-webkit-text-stroke-color:var(--accent);
text-shadow:0 0 46px rgba(95,208,198,.22);
animation:errCodeIn .8s var(--ease) .18s both, errCodePulse 3.8s ease-in-out 1.2s infinite;
}
.err-code span:nth-child(3){animation-delay:.3s;}
@supports not (-webkit-text-stroke: 2px #000){
.err-code span{color:var(--line);}
.err-code span:nth-child(2){color:var(--accent);}
}
@keyframes errCodeIn{
from{opacity:0; transform:translateY(24px) scale(.92);}
to{opacity:1; transform:none;}
}
@keyframes errCodePulse{
0%,100%{text-shadow:0 0 46px rgba(95,208,198,.22);}
50%{text-shadow:0 0 74px rgba(95,208,198,.45);}
}
.err-text{max-width:62ch; font-size:16.5px;}
.err-actions{display:flex; flex-wrap:wrap; gap:14px; margin:0 0 40px;}
.err-search{margin:0 0 44px; max-width:560px;}
.err-search-label{
display:block; font-family:var(--font-display); font-weight:700; font-size:12.5px;
letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:12px;
}
.err-search-row{display:flex; gap:12px;}
.err-search input[type=search]{
flex:1 1 auto; min-width:0; padding:14px 18px; border-radius:14px;
background:rgba(0,0,0,.24); border:1.5px solid var(--line); color:var(--ink);
font-family:var(--font-body); font-size:15.5px;
transition:border-color .3s var(--ease), box-shadow .3s var(--ease);
}
.err-search input[type=search]::placeholder{color:var(--muted); opacity:.75;}
.err-search input[type=search]:focus{
outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(95,208,198,.2);
}
.err-search .btn{flex:0 0 auto;}
.err-links-title{font-family:var(--font-display); font-size:clamp(19px,2vw,23px); color:#fff; margin:0 0 18px;}
.err-links-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px;}
.err-links-grid li{animation:errLinkIn .6s var(--ease) both; animation-delay:calc(var(--st,0) * 60ms + .35s);}
.err-links-grid a{
display:flex; align-items:center; justify-content:space-between; gap:12px;
padding:16px 18px; border-radius:14px; background:var(--panel);
border:1px solid var(--line); color:var(--ink); font-weight:600;
transition:transform .35s var(--ease), border-color .35s var(--ease), background .35s var(--ease);
}
.err-links-grid a i{
font-style:normal; font-size:22px; line-height:1; color:var(--accent);
transition:transform .35s var(--ease);
}
.err-links-grid a:hover{transform:translateY(-3px); border-color:var(--accent); background:rgba(95,208,198,.1);}
.err-links-grid a:hover i{transform:translateX(4px);}
@keyframes errLinkIn{
from{opacity:0; transform:translateY(14px);}
to{opacity:1; transform:none;}
} @media (max-width:880px){
.err-code{font-size:clamp(66px,21vw,120px); margin-bottom:6px;}
.err-text{font-size:15.5px;}
.err-actions{gap:10px; margin-bottom:32px;}
.err-actions .btn{flex:1 1 100%; justify-content:center;}
.err-search{margin-bottom:34px;}
.err-search-row{flex-direction:column;}
.err-search .btn{width:100%; justify-content:center;}
.err-links-grid{grid-template-columns:1fr;}
} @media (max-height:520px){
.err-head{margin-bottom:18px;}
.err-code{font-size:clamp(48px,13vh,88px); margin-bottom:2px;}
.err-actions{margin-bottom:22px;}
.err-search{margin-bottom:24px;}
.err-links-grid a{padding:12px 15px;}
}
@media (prefers-reduced-motion: reduce){
.err-code span, .err-links-grid li{animation:none; opacity:1; transform:none;}
.err-code span:nth-child(2){text-shadow:0 0 46px rgba(95,208,198,.22);}
.err-search input[type=search], .err-links-grid a, .err-links-grid a i{transition:none;}
.err-links-grid a:hover{transform:none;}
.err-links-grid a:hover i{transform:none;}
}