:root{
  --bg:#050505;--panel:#090d14;--panel2:#0d1420;--text:#f8fbff;--muted:#aab4c5;--blue:#0a84ff;--blue2:#005bff;--line:rgba(96,165,250,.22);--radius:28px;--shadow:0 30px 80px rgba(0,0,0,.55);
}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:10px;background:#fff;color:#000;padding:10px;z-index:10}.skip-link:focus{left:10px}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:18px;padding:8px clamp(16px,2.6vw,32px);background:linear-gradient(to bottom,rgba(5,5,5,.85),rgba(5,5,5,.35),transparent);backdrop-filter:blur(16px)}.brand img{width:142px;height:auto}.nav{display:flex;justify-content:center;gap:30px;color:#d8dfec;font-size:15px}.nav a,.header-phone{opacity:.86}.nav a:hover,.header-phone:hover{color:#fff}.header-phone{font-size:15px}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:12px;padding:13px 20px;font-weight:700;border:1px solid transparent;transition:.25s ease;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--blue2));box-shadow:0 16px 40px rgba(10,132,255,.25)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 55px rgba(10,132,255,.35)}.btn-outline,.btn-dark{border-color:rgba(10,132,255,.65);background:rgba(3,8,18,.55)}.btn-dark{border-color:rgba(255,255,255,.14)}.hero{min-height:100vh;position:relative;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:0}.hero-bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;filter:saturate(1.05) contrast(1.02) brightness(.72)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.78) 28%,rgba(5,5,5,.20) 62%,rgba(5,5,5,.08) 100%),linear-gradient(180deg,rgba(5,5,5,.05),#050505 98%)}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(320px,560px) 1fr;align-items:center;padding-top:80px}.hero-content{padding:68px 0}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.22em;color:#52a8ff;font-weight:800;margin:0 0 18px}.hero h1,.section h2{font-size:clamp(46px,6vw,82px);line-height:.96;letter-spacing:-.055em;margin:0 0 24px}.hero-lead{font-size:clamp(18px,2vw,22px);max-width:650px;color:#dbe6f7;margin:0 0 32px}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:34px}.trust-row{display:flex;flex-wrap:wrap;gap:12px}.trust-row span{border:1px solid var(--line);background:rgba(7,13,24,.54);padding:9px 12px;border-radius:999px;color:#cbd7ea;font-size:13px}.section{padding:84px 0;position:relative}.section-heading{text-align:center;max-width:760px}.section-heading h2{font-size:clamp(34px,4.3vw,62px)}.section-heading p{color:var(--muted);font-size:18px}.align-left{text-align:left;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.service-card{border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,rgba(12,18,30,.92),rgba(4,7,13,.88));border-radius:var(--radius);padding:30px;box-shadow:var(--shadow);position:relative;overflow:hidden}.service-card:before,.reference-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 0%,rgba(10,132,255,.18),transparent 35%);pointer-events:none}.service-card-large{grid-column:span 3;display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center}.service-card h3{font-size:26px;line-height:1.15;margin:0 0 16px}.service-card p{color:#b9c4d4;margin:0 0 14px}.pill-list{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0;list-style:none;grid-column:1/-1}.pill-list li{font-size:13px;color:#d9e6fb;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:rgba(10,132,255,.08)}.service-visual{min-height:280px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:linear-gradient(150deg,#0b1220,#030508);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(10,132,255,.08)}.browser-visual>span{position:absolute;top:16px;width:10px;height:10px;border-radius:50%;background:#2a3140}.browser-visual>span:nth-child(1){left:18px}.browser-visual>span:nth-child(2){left:34px}.browser-visual>span:nth-child(3){left:50px;background:var(--blue)}.visual-hero{position:absolute;left:30px;top:55px;right:30px;height:100px;border-radius:18px;background:radial-gradient(circle at 35% 35%,#1f8dff,transparent 25%),linear-gradient(135deg,#101b2f,#04101e)}.visual-lines{position:absolute;left:30px;right:30px;bottom:35px;display:grid;gap:14px}.visual-lines i{height:18px;border-radius:20px;background:linear-gradient(90deg,rgba(10,132,255,.8),rgba(255,255,255,.12))}.service-icon{width:72px;height:72px;border-radius:22px;margin-bottom:22px;background:linear-gradient(135deg,#0b1d36,#03070d);border:1px solid var(--line);position:relative;box-shadow:0 20px 45px rgba(10,132,255,.18)}.hosting-icon:before{content:"";position:absolute;inset:18px;border-left:7px solid var(--blue);border-right:7px solid var(--blue);box-shadow:14px 0 0 rgba(10,132,255,.45),-14px 0 0 rgba(10,132,255,.45)}.marketing-icon:before{content:"";position:absolute;left:18px;right:18px;bottom:18px;height:36px;background:linear-gradient(135deg,transparent 45%,var(--blue) 46% 54%,transparent 55%)}.marketing-icon:after{content:"";position:absolute;right:15px;top:17px;width:12px;height:12px;border-top:3px solid var(--blue);border-right:3px solid var(--blue);transform:rotate(45deg)}.design-icon:before{content:"";position:absolute;inset:18px;border:3px solid var(--blue);border-radius:50%;clip-path:polygon(0 0,100% 0,80% 100%,20% 100%)}.why{background:linear-gradient(180deg,#050505,#070b12)}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:start}.benefit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.benefit-grid div{padding:24px;border-radius:22px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.benefit-grid strong{display:block;font-size:19px;margin-bottom:8px}.benefit-grid span{color:#aeb9c9}.reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}.reference-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#080c14;border-radius:24px;padding:16px}.reference-card h3{margin:16px 0 4px}.reference-card p{margin:0 0 4px;color:#aeb9c9}.mockup{height:220px;border-radius:18px;background:linear-gradient(155deg,#111827,#05070c);border:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden}.mockup:before{content:"";position:absolute;left:8%;top:10%;right:8%;height:34px;border-radius:10px;background:rgba(255,255,255,.08)}.mockup:after{content:"";position:absolute;left:8%;right:8%;bottom:12%;height:92px;border-radius:16px;background:linear-gradient(135deg,rgba(10,132,255,.55),rgba(255,255,255,.06));box-shadow:0 -50px 0 rgba(255,255,255,.05)}.law{background:linear-gradient(155deg,#151515,#05070c)}.construction{background:linear-gradient(155deg,#11161d,#060709)}.realestate{background:linear-gradient(155deg,#111a24,#05070c)}.shop{background:linear-gradient(155deg,#171719,#05070c)}.restaurant{background:linear-gradient(155deg,#1a120d,#05070c)}.pt{background:linear-gradient(155deg,#101010,#030508)}.about{background:radial-gradient(circle at 30% 20%,rgba(10,132,255,.12),transparent 34%)}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.about-image,.cta-image{border-radius:32px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#05080d}.about-image img,.cta-image img{width:100%;height:620px;object-fit:cover;object-position:center}.about-copy h2{font-size:clamp(36px,5vw,70px);line-height:1;margin:0 0 10px}.role{color:#58aaff;font-weight:700}.about-copy p{font-size:19px;color:#d0d9e8}.about-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.about-tags span{padding:10px 12px;border-radius:999px;background:rgba(10,132,255,.1);border:1px solid var(--line);color:#dce9ff}.process{background:#07090e}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}.process-grid div{padding:24px;border-radius:22px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.process-grid span{color:#0a84ff;font-weight:900}.process-grid h3{margin:12px 0 6px}.process-grid p{margin:0;color:#aeb9c9}.cta-grid{display:grid;grid-template-columns:.8fr 1fr;gap:34px;align-items:center;background:linear-gradient(135deg,rgba(12,18,30,.92),rgba(3,6,11,.96));border:1px solid rgba(255,255,255,.08);border-radius:36px;padding:24px;box-shadow:var(--shadow)}.cta-copy h2{font-size:clamp(36px,4vw,58px);line-height:1;margin:0 0 14px}.cta-copy p{color:#c4cedd;font-size:18px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.contact-form label{display:grid;gap:7px;color:#c6d1e1;font-size:14px}.contact-form label:nth-child(4),.contact-form button{grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.25);color:#fff;border-radius:14px;padding:13px 14px;font:inherit;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue)}.contact-card{display:grid;grid-template-columns:280px 1fr;gap:42px;align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:32px;padding:30px;background:linear-gradient(135deg,#070b12,#030508)}.contact-card img{width:260px}.contact-card a{text-decoration:underline;text-decoration-color:rgba(10,132,255,.5)}.footer{padding:60px 0;background:#030405;border-top:1px solid rgba(255,255,255,.08)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px}.footer p,.footer a,.footer span{display:block;color:#aeb9c9;margin:8px 0}.mobile-call{display:none}.reveal{opacity:1;transform:none;transition:none}.reveal.in-view{opacity:1;transform:none}
.image-visual{padding:0;min-height:320px;border-radius:26px;overflow:hidden;background:#05080d}
.image-visual img,.service-thumb,.ref-image{display:block;width:100%;height:100%;object-fit:cover}
.service-thumb{height:190px;border-radius:20px;margin-bottom:22px;border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 70px rgba(10,132,255,.13)}
.ref-image{height:220px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:#080c14}
.reference-card{padding:16px 16px 22px}
.about-image img{object-position:center center}
.cta-image{position:relative}
.cta-image:before{content:"LumioWeb";position:absolute;left:32px;top:28px;z-index:2;font-size:28px;font-weight:900;letter-spacing:-.03em;color:#fff;text-shadow:0 0 28px rgba(10,132,255,.5)}
.cta-image:after{content:"";position:absolute;left:30px;top:70px;width:160px;height:2px;background:linear-gradient(90deg,#0a84ff,transparent);z-index:2}
@media(max-width:960px){.site-header{grid-template-columns:auto auto;justify-content:space-between;padding:8px 16px}.brand img{width:128px}.nav,.header-phone,.site-header>.btn{display:none}.menu-toggle{display:block;background:rgba(255,255,255,.06);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px 12px}.nav.open{display:flex;position:absolute;top:58px;left:16px;right:16px;flex-direction:column;background:rgba(5,5,5,.96);border:1px solid rgba(255,255,255,.1);padding:16px;border-radius:20px}.hero-grid{grid-template-columns:1fr}.hero-content{padding-top:118px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.78) 28%,rgba(5,5,5,.20) 62%,rgba(5,5,5,.08) 100%),linear-gradient(180deg,rgba(5,5,5,.05),#050505 98%)}.hero-bg video{object-position:68% center;opacity:.72}.service-grid,.service-card-large,.split,.about-grid,.cta-grid,.contact-card,.footer-grid{grid-template-columns:1fr}.service-card-large{grid-column:auto}.reference-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.about-image img,.cta-image img{height:520px}.contact-form{grid-template-columns:1fr}.mobile-call{display:flex;position:fixed;right:18px;bottom:18px;z-index:60;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;border-radius:999px;padding:13px 18px;font-weight:800;box-shadow:0 16px 44px rgba(10,132,255,.35)}}@media(max-width:640px){.container{width:min(100% - 28px,1180px)}.hero h1{font-size:44px}.hero-lead{font-size:17px}.hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}.section{padding:64px 0}.service-card{padding:22px;border-radius:22px}.reference-grid,.process-grid,.benefit-grid{grid-template-columns:1fr}.about-image img,.cta-image img{height:440px}.contact-card{padding:24px}.contact-card img{width:210px}.footer{padding-bottom:90px}}

/* Professional motion system */
.site-header{transition:padding .28s ease,background .28s ease,box-shadow .28s ease,border-color .28s ease}
.site-header.is-scrolled{padding-top:6px;padding-bottom:6px;background:rgba(3,6,11,.82);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 18px 55px rgba(0,0,0,.34)}
.brand img{transition:transform .28s ease,filter .28s ease}.brand:hover img{transform:translateY(-1px);filter:drop-shadow(0 0 18px rgba(10,132,255,.28))}
.nav a{position:relative;transition:color .25s ease,opacity .25s ease}.nav a:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;background:linear-gradient(90deg,var(--blue),transparent);transform:scaleX(0);transform-origin:left;transition:transform .28s ease}.nav a:hover:after{transform:scaleX(1)}
.btn{position:relative;overflow:hidden;transform:translateZ(0)}.btn:before{content:"";position:absolute;inset:-30% -70%;background:linear-gradient(120deg,transparent 34%,rgba(255,255,255,.32) 50%,transparent 66%);transform:translateX(-70%);transition:transform .7s ease;pointer-events:none}.btn:hover:before{transform:translateX(70%)}
.hero-content{transform:translateY(var(--hero-shift,0));transition:transform .12s linear}.hero-content .eyebrow,.hero h1,.hero-lead,.hero-actions,.trust-row{animation:hero-rise .82s cubic-bezier(.22,1,.36,1) both}.hero h1{animation-delay:.08s}.hero-lead{animation-delay:.16s}.hero-actions{animation-delay:.24s}.trust-row{animation-delay:.32s}@keyframes hero-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.trust-row span{transition:transform .25s ease,border-color .25s ease,background .25s ease}.trust-row span:hover{transform:translateY(-3px);border-color:rgba(10,132,255,.55);background:rgba(10,132,255,.12)}
.service-card,.reference-card,.benefit-grid>div,.process-grid>div,.cta-grid,.contact-card{isolation:isolate;transition:transform .32s cubic-bezier(.22,1,.36,1),border-color .32s ease,box-shadow .32s ease,background .32s ease}.service-card:after,.reference-card:after,.benefit-grid>div:after,.process-grid>div:after,.cta-grid:after,.contact-card:after{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(10,132,255,.24),transparent 42%);transition:opacity .28s ease;pointer-events:none}.service-card:hover,.reference-card:hover,.benefit-grid>div:hover,.process-grid>div:hover,.cta-grid:hover,.contact-card:hover{transform:translateY(-8px);border-color:rgba(10,132,255,.36);box-shadow:0 36px 90px rgba(0,0,0,.58),0 0 34px rgba(10,132,255,.12)}.service-card:hover:after,.reference-card:hover:after,.benefit-grid>div:hover:after,.process-grid>div:hover:after,.cta-grid:hover:after,.contact-card:hover:after{opacity:1}
.service-thumb,.ref-image,.image-visual img,.about-image img,.cta-image img{transition:transform .7s cubic-bezier(.22,1,.36,1),filter .45s ease}.service-card:hover .service-thumb,.reference-card:hover .ref-image,.service-card-large:hover .image-visual img,.about-image:hover img,.cta-grid:hover .cta-image img{transform:scale(1.045);filter:saturate(1.08) contrast(1.04)}
.pill-list li{transition:transform .25s ease,border-color .25s ease,background .25s ease}.pill-list li:hover{transform:translateY(-2px);border-color:rgba(10,132,255,.58);background:rgba(10,132,255,.14)}
.process-grid div span{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:16px;background:rgba(10,132,255,.1);box-shadow:0 0 0 1px rgba(10,132,255,.25),0 0 28px rgba(10,132,255,.12);transition:transform .32s ease,box-shadow .32s ease}.process-grid div:hover span{transform:rotate(-4deg) scale(1.06);box-shadow:0 0 0 1px rgba(10,132,255,.55),0 0 36px rgba(10,132,255,.24)}
.contact-form input,.contact-form textarea{transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}.contact-form input:focus,.contact-form textarea:focus{box-shadow:0 0 0 4px rgba(10,132,255,.13);background:rgba(7,13,24,.55)}
.reveal{opacity:1;transform:none;transition:none}.reveal.in-view{opacity:1;transform:none}
.service-card-large.reveal{transform:none}.service-card-large.reveal.in-view{transform:none}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.reveal{opacity:1!important;transform:none!important}.hero-content{transform:none!important}.service-card:hover,.reference-card:hover,.benefit-grid>div:hover,.process-grid>div:hover,.cta-grid:hover,.contact-card:hover,.btn-primary:hover{transform:none!important}.service-thumb,.ref-image,.image-visual img,.about-image img,.cta-image img{transform:none!important}}
@media(max-width:960px){.site-header.is-scrolled{padding-top:6px;padding-bottom:6px}.nav.open a:after{bottom:-3px}.service-card:hover,.reference-card:hover,.benefit-grid>div:hover,.process-grid>div:hover,.cta-grid:hover,.contact-card:hover{transform:none}}


/* Korjaus: kaikki sisällöt näkyvät heti ilman scroll reveal-, sisääntulo- tai viiveanimaatioita. */
html { scroll-behavior: auto !important; }
*, *::before, *::after {
  animation: none !important;
  transition: none !important;
}
.reveal,
.reveal.in-view,
.hero-content,
.hero-content .eyebrow,
.hero h1,
.hero-lead,
.hero-actions,
.trust-row,
.service-card,
.service-card-large,
.reference-card,
.benefit-grid > div,
.process-grid > div,
.about-image,
.about-copy,
.cta-grid,
.contact-card {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

/* Service detail pages */
.service-more{display:inline-flex;align-items:center;justify-content:center;margin-top:10px;color:#dce9ff;font-weight:800;border:1px solid rgba(10,132,255,.42);background:rgba(10,132,255,.08);border-radius:12px;padding:11px 14px;position:relative;z-index:2}
.service-more:hover{background:rgba(10,132,255,.16);border-color:rgba(10,132,255,.72)}
.service-page-hero{min-height:78vh;display:flex;align-items:center;padding:130px 0 70px;background:radial-gradient(circle at 70% 15%,rgba(10,132,255,.18),transparent 34%),linear-gradient(180deg,#050505,#070b12)}
.service-page-grid{display:grid;grid-template-columns:1fr .9fr;gap:48px;align-items:center}
.service-page-copy h1{font-size:clamp(46px,6vw,82px);line-height:.96;letter-spacing:-.055em;margin:0 0 24px}
.service-page-image{border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow);background:#05080d}
.service-page-image img{width:100%;height:520px;object-fit:cover}
.service-detail{background:#05070c}
.service-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:start}
.service-detail-card,.service-side-card{border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,rgba(12,18,30,.92),rgba(4,7,13,.88));border-radius:28px;padding:34px;box-shadow:var(--shadow)}
.service-detail-card h2,.service-side-card h2{font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.035em;margin:0 0 18px}
.service-detail-card p{font-size:18px;color:#c4cedd;margin:0 0 18px}
.service-side-card{position:sticky;top:92px}
.service-side-card .pill-list{display:flex;margin:0 0 26px}.service-side-card .btn{width:100%}
.service-page-cta{padding-top:20px}
@media(max-width:960px){.service-page-grid,.service-detail-grid{grid-template-columns:1fr}.service-page-image img{height:420px}.service-side-card{position:relative;top:auto}}


/* === MOBILE FINAL FIX 2026-06-04 === */
@media (max-width: 760px){
  html, body{overflow-x:hidden!important;}
  .site-header{
    position:fixed!important;
    top:0!important;left:0!important;right:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    gap:10px!important;
    padding:14px 18px 12px!important;
    background:linear-gradient(180deg,rgba(6,12,22,.78),rgba(6,12,22,.34))!important;
    backdrop-filter:blur(14px)!important;
    transform:none!important;
  }
  .site-header.header-hidden{transform:none!important;}
  .brand{display:flex!important;justify-content:flex-start!important;align-items:center!important;}
  .brand img{width:178px!important;max-width:178px!important;height:auto!important;}
  .menu-toggle{display:none!important;}
  .nav{
    display:flex!important;
    position:static!important;
    opacity:1!important;visibility:visible!important;transform:none!important;
    width:100%!important;max-width:100%!important;
    justify-content:space-between!important;align-items:center!important;
    gap:6px!important;margin:0!important;padding:0!important;
    background:transparent!important;border:0!important;box-shadow:none!important;
  }
  .nav a{
    display:inline-flex!important;
    align-items:center!important;justify-content:center!important;
    padding:8px 4px!important;
    font-size:13px!important;
    line-height:1!important;
    white-space:nowrap!important;
    color:#eef5ff!important;
    opacity:.95!important;
  }
  .header-phone,.site-header > .btn{display:none!important;}

  .hero{
    min-height:100svh!important;
    height:auto!important;
    display:flex!important;
    align-items:center!important;
    padding-top:96px!important;
    padding-bottom:22px!important;
  }
  .hero-grid{
    min-height:calc(100svh - 118px)!important;
    padding:0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
  }
  .hero .container{width:min(100% - 28px, 680px)!important;}
  .hero-content{
    min-height:calc(100svh - 160px)!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
  }
  .hero h1{
    font-size:clamp(36px,11vw,48px)!important;
    line-height:1.03!important;
    letter-spacing:-.055em!important;
    max-width:355px!important;
    margin:0 auto 22px!important;
    text-align:center!important;
    min-height:0!important;
  }
  .hero-actions{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    width:100%!important;
    max-width:310px!important;
    margin:0 auto!important;
    position:relative!important;
    z-index:10!important;
    opacity:1!important;visibility:visible!important;
  }
  .hero-actions .btn{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    padding:14px 18px!important;
    font-size:16px!important;
    border-radius:15px!important;
    opacity:1!important;
    transform:none!important;
    animation:none!important;
  }
  .hero-bg .hero-image{
    object-position:center center!important;
    filter:saturate(1.08) contrast(1.06) brightness(.84)!important;
  }
  .hero-overlay{
    background:linear-gradient(180deg,rgba(3,7,14,.16) 0%,rgba(3,7,14,.34) 45%,rgba(3,7,14,.70) 100%),linear-gradient(90deg,rgba(0,0,0,.30),rgba(0,31,70,.10),rgba(0,0,0,.22))!important;
  }

  .section{padding-top:82px!important;padding-bottom:82px!important;}
  .references{padding-bottom:92px!important;}
  .about{padding-top:104px!important;padding-bottom:98px!important;}
  .process{padding-top:104px!important;padding-bottom:98px!important;}
  .why{padding-top:104px!important;padding-bottom:98px!important;}
  .cta{padding-top:104px!important;}

  .process-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    margin-top:34px!important;
    padding-left:0!important;
  }
  .process-grid:before,.process-grid:after,.process:before,.process:after{display:none!important;content:none!important;}
  .process-grid div{
    position:relative!important;
    display:block!important;
    padding:24px 22px!important;
    margin:0!important;
    border:1px solid rgba(10,132,255,.20)!important;
    border-radius:24px!important;
    background:linear-gradient(145deg,rgba(9,15,27,.78),rgba(3,6,11,.84))!important;
    box-shadow:none!important;
  }
  .process-grid div:before,.process-grid div:after{display:none!important;content:none!important;}
  .process-grid span{
    width:64px!important;height:64px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#0a84ff,#075cff)!important;
    color:#fff!important;
    font-size:22px!important;
    font-weight:900!important;
    margin-bottom:14px!important;
    box-shadow:0 18px 44px rgba(10,132,255,.22)!important;
  }
  .process-grid h3{font-size:27px!important;margin:0 0 8px!important;line-height:1.1!important;}
  .process-grid p{font-size:17px!important;line-height:1.55!important;margin:0!important;}

  .float-call,.whatsapp-float{right:18px!important;width:58px!important;height:58px!important;}
  .float-call{bottom:98px!important;}
  .whatsapp-float{bottom:24px!important;}
}

@media (max-width: 380px){
  .brand img{width:158px!important;max-width:158px!important;}
  .nav a{font-size:12px!important;padding-inline:2px!important;}
  .hero h1{font-size:clamp(34px,10.3vw,43px)!important;max-width:330px!important;}
}


/* === FINAL MOBILE + CTA FIX 2026-06-05 === */
.hero-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
  margin-top:10px!important;
  margin-bottom:0!important;
  position:relative!important;
  z-index:25!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}
.hero-actions .btn{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}

/* Tasaisemmat välit pääosioiden välillä */
.about{padding-bottom:92px!important;}
.references{padding-top:92px!important;padding-bottom:98px!important;}
.process{padding-top:98px!important;padding-bottom:98px!important;}
.why{padding-top:98px!important;padding-bottom:98px!important;}
.cta{padding-top:98px!important;}

@media (max-width: 760px){
  html,body{overflow-x:hidden!important;}

  /* Mobiilissa ei käytetä erillistä Menu-painiketta, vaan linkit näkyvät suoraan */
  .site-header{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    gap:9px!important;
    padding:12px 14px 10px!important;
    background:linear-gradient(180deg,rgba(6,12,22,.56),rgba(6,12,22,.18))!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
  }
  .menu-toggle{display:none!important;}
  .brand img{width:172px!important;max-width:172px!important;height:auto!important;}
  .nav{
    display:flex!important;
    position:static!important;
    flex-direction:row!important;
    justify-content:space-between!important;
    align-items:center!important;
    width:100%!important;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  .nav a{
    flex:1 1 auto!important;
    min-width:0!important;
    display:inline-flex!important;
    justify-content:center!important;
    align-items:center!important;
    padding:7px 2px!important;
    font-size:12.5px!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
    color:#f3f7ff!important;
  }
  .header-phone,.site-header>.btn{display:none!important;}

  /* Hero täyttää mobiilissa aloitusnäkymän ja CTA:t näkyvät otsikon alla */
  .hero{
    min-height:100svh!important;
    height:100svh!important;
    display:flex!important;
    align-items:stretch!important;
    padding-top:102px!important;
    padding-bottom:0!important;
    overflow:hidden!important;
  }
  .hero .container{width:min(100% - 28px, 680px)!important;}
  .hero-grid{
    min-height:calc(100svh - 102px)!important;
    height:calc(100svh - 102px)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
  }
  .hero-content{
    min-height:0!important;
    width:100%!important;
    padding:0 0 18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    transform:none!important;
  }
  .hero h1{
    font-size:clamp(32px,9.6vw,41px)!important;
    line-height:1.04!important;
    max-width:350px!important;
    margin:0 auto 18px!important;
    text-align:center!important;
    letter-spacing:-.055em!important;
  }
  .hero-actions{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:306px!important;
    gap:11px!important;
    margin:0 auto!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    animation:none!important;
  }
  .hero-actions .btn{
    width:100%!important;
    min-height:50px!important;
    padding:13px 17px!important;
    border-radius:15px!important;
    font-size:15.5px!important;
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    animation:none!important;
  }
  .hero-bg .hero-image{object-position:center center!important;}
  .hero-overlay{
    background:linear-gradient(180deg,rgba(3,7,14,.22) 0%,rgba(3,7,14,.38) 48%,rgba(3,7,14,.76) 100%),linear-gradient(90deg,rgba(0,0,0,.34),rgba(0,31,70,.10),rgba(0,0,0,.25))!important;
  }

  /* Työn eteneminen mobiilissa: ei viivaa, vain selkeät kortit */
  .process-grid,
  .process-steps,
  .timeline,
  .steps,
  .process-timeline{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
    padding-left:0!important;
    margin-top:30px!important;
  }
  .process-grid:before,.process-grid:after,
  .process:before,.process:after,
  .process-steps:before,.process-steps:after,
  .timeline:before,.timeline:after,
  .steps:before,.steps:after,
  .process-line,.progress-line,.steps-line,.timeline-line{
    display:none!important;
    content:none!important;
  }
  .process-grid div{
    padding:22px 20px!important;
    border-radius:22px!important;
    border:1px solid rgba(10,132,255,.20)!important;
    background:linear-gradient(145deg,rgba(9,15,27,.80),rgba(3,6,11,.88))!important;
  }
  .process-grid div:before,.process-grid div:after{display:none!important;content:none!important;}
  .process-grid span{
    width:54px!important;
    height:54px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0 0 12px!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#0a84ff,#075cff)!important;
    color:#fff!important;
    font-size:19px!important;
    font-weight:900!important;
    box-shadow:0 14px 34px rgba(10,132,255,.20)!important;
  }
  .process-grid h3{font-size:25px!important;margin:0 0 7px!important;line-height:1.1!important;}
  .process-grid p{font-size:16px!important;line-height:1.5!important;margin:0!important;}

  /* Mobiilin osioiden välit */
  .section{padding-top:78px!important;padding-bottom:78px!important;}
  .about{padding-top:92px!important;padding-bottom:96px!important;}
  .references{padding-top:96px!important;padding-bottom:96px!important;}
  .process{padding-top:96px!important;padding-bottom:96px!important;}
  .why{padding-top:96px!important;padding-bottom:96px!important;}
  .cta{padding-top:96px!important;padding-bottom:82px!important;}
}

@media (max-width: 390px){
  .brand img{width:160px!important;max-width:160px!important;}
  .nav a{font-size:11.7px!important;padding-inline:1px!important;}
  .hero h1{font-size:clamp(30px,9.25vw,38px)!important;max-width:330px!important;}
  .hero-actions{max-width:292px!important;}
}


/* === FINAL: mobiilihero takaisin isoksi, CTA:t pois herosta, mobiilimenu korjattu === */
.hero .hero-actions{display:none!important;}

/* Desktop: hero pysyy isona ilman CTA-nappeja */
@media (min-width: 761px){
  .hero{min-height:92vh!important;height:92vh!important;}
  .hero-grid{min-height:92vh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding-top:80px!important;}
  .hero-content{width:100%!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;}
  .hero h1{max-width:1120px!important;margin:0 auto!important;text-align:center!important;}
}

@media (max-width: 760px){
  html,body{overflow-x:hidden!important;}

  /* Header mobiilissa: logo + Menu, linkit aukeavat napista */
  .site-header{
    display:grid!important;
    grid-template-columns:auto auto!important;
    grid-template-rows:auto!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:14px 18px!important;
    background:linear-gradient(180deg,rgba(6,12,22,.42),rgba(6,12,22,.12))!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
    transform:none!important;
  }
  .site-header.header-hidden{transform:none!important;}
  .brand{display:flex!important;align-items:center!important;justify-content:flex-start!important;}
  .brand img{width:150px!important;max-width:150px!important;height:auto!important;}
  .menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:122px!important;
    height:52px!important;
    padding:0 24px!important;
    border-radius:18px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.07)!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:600!important;
  }
  .nav{
    display:none!important;
    position:absolute!important;
    top:76px!important;
    left:18px!important;
    right:18px!important;
    width:auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:6px!important;
    padding:14px!important;
    border-radius:22px!important;
    border:1px solid rgba(255,255,255,.12)!important;
    background:rgba(3,7,14,.96)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.45)!important;
  }
  .nav.open{display:flex!important;}
  .nav a{
    display:flex!important;
    width:100%!important;
    justify-content:center!important;
    padding:13px 10px!important;
    border-radius:14px!important;
    color:#f3f7ff!important;
    font-size:16px!important;
    line-height:1.1!important;
    background:rgba(255,255,255,.035)!important;
  }
  .header-phone,.site-header>.btn{display:none!important;}

  /* Hero: tarpeeksi korkea mobiilissa, ilman CTA-nappeja */
  .hero{
    min-height:100svh!important;
    height:100svh!important;
    display:flex!important;
    align-items:center!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .hero .container{width:min(100% - 28px,680px)!important;}
  .hero-grid{
    min-height:100svh!important;
    height:100svh!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:92px 0 0!important;
  }
  .hero-content{
    width:100%!important;
    min-height:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:0!important;
    transform:none!important;
  }
  .hero h1{
    font-size:clamp(38px,11.2vw,52px)!important;
    line-height:1.04!important;
    max-width:390px!important;
    margin:0 auto!important;
    text-align:center!important;
    letter-spacing:-.055em!important;
  }
  .hero-bg .hero-image{
    object-position:center center!important;
    filter:saturate(1.08) contrast(1.06) brightness(.86)!important;
    opacity:1!important;
  }
  .hero-overlay{
    background:linear-gradient(180deg,rgba(3,7,14,.18) 0%,rgba(3,7,14,.34) 48%,rgba(3,7,14,.72) 100%),linear-gradient(90deg,rgba(0,0,0,.30),rgba(0,31,70,.08),rgba(0,0,0,.20))!important;
  }

  /* Työn eteneminen: mobiilissa ei viivaa, vain siistit kortit */
  .process-grid,
  .process-steps,
  .timeline,
  .steps,
  .process-timeline{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
    margin-top:30px!important;
    padding-left:0!important;
  }
  .process-grid:before,.process-grid:after,
  .process:before,.process:after,
  .process-steps:before,.process-steps:after,
  .timeline:before,.timeline:after,
  .steps:before,.steps:after,
  .process-line,.progress-line,.steps-line,.timeline-line{
    display:none!important;
    content:none!important;
    width:0!important;height:0!important;
  }
  .process-grid > div{
    position:relative!important;
    display:block!important;
    text-align:left!important;
    padding:22px 20px!important;
    min-height:0!important;
    margin:0!important;
    border-radius:22px!important;
    border:1px solid rgba(10,132,255,.20)!important;
    background:linear-gradient(145deg,rgba(9,15,27,.80),rgba(3,6,11,.88))!important;
  }
  .process-grid > div:before,.process-grid > div:after{display:none!important;content:none!important;}
  .process-grid > div span,
  .process-grid span{
    position:static!important;
    width:54px!important;height:54px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    margin:0 0 12px!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#0a84ff,#075cff)!important;
    color:#fff!important;
    font-size:19px!important;font-weight:900!important;
    box-shadow:0 14px 34px rgba(10,132,255,.20)!important;
  }
  .process-grid h3{font-size:25px!important;margin:0 0 7px!important;line-height:1.1!important;}
  .process-grid p{font-size:16px!important;line-height:1.5!important;margin:0!important;max-width:none!important;}

  /* Mobiilin osioiden välit: hieman enemmän hengitystä */
  .about{padding-top:92px!important;padding-bottom:118px!important;}
  .references{padding-top:112px!important;padding-bottom:116px!important;}
  .process{padding-top:116px!important;padding-bottom:116px!important;}
  .why{padding-top:116px!important;padding-bottom:116px!important;}
  .cta{padding-top:116px!important;padding-bottom:90px!important;}
}

@media (max-width: 390px){
  .brand img{width:142px!important;max-width:142px!important;}
  .menu-toggle{min-width:112px!important;height:50px!important;padding-inline:20px!important;}
  .hero h1{font-size:clamp(36px,10.8vw,48px)!important;max-width:360px!important;}
}

/* === FINAL FIX: mobiiliheader vain logo + Menu, isompi mobiilihero === */
@media (max-width: 900px){
  html,body{overflow-x:hidden!important;}

  .site-header{
    display:grid!important;
    grid-template-columns:auto auto!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:14px 18px!important;
    background:linear-gradient(180deg,rgba(4,8,16,.38),rgba(4,8,16,.08))!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
    transform:none!important;
  }
  .site-header.header-hidden{transform:none!important;}
  .brand{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;}
  .brand img{width:154px!important;max-width:154px!important;height:auto!important;}

  .site-header .header-phone,
  .site-header > .btn{display:none!important;}

  .menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:104px!important;
    height:48px!important;
    padding:0 20px!important;
    border-radius:16px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.075)!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:700!important;
    letter-spacing:.01em!important;
  }

  .nav{
    display:none!important;
    position:absolute!important;
    top:72px!important;
    left:18px!important;
    right:18px!important;
    width:auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:14px!important;
    border-radius:22px!important;
    border:1px solid rgba(255,255,255,.13)!important;
    background:rgba(3,7,14,.97)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.48)!important;
    z-index:80!important;
  }
  .nav.open{display:flex!important;}
  .nav a{
    display:flex!important;
    width:100%!important;
    justify-content:center!important;
    padding:14px 12px!important;
    border-radius:15px!important;
    color:#f5f8ff!important;
    font-size:16px!important;
    font-weight:700!important;
    line-height:1.1!important;
    background:rgba(255,255,255,.04)!important;
  }

  .hero{
    min-height:112svh!important;
    height:112svh!important;
    display:flex!important;
    align-items:center!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .hero-grid{
    min-height:112svh!important;
    height:112svh!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:96px 0 0!important;
  }
  .hero-content{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:0!important;
    transform:none!important;
  }
  .hero h1{
    font-size:clamp(40px,12vw,56px)!important;
    line-height:1.02!important;
    max-width:410px!important;
    margin:0 auto!important;
    text-align:center!important;
  }
  .hero .hero-actions{display:none!important;}
  .hero-bg,.hero-bg .hero-image{height:100%!important;min-height:112svh!important;}
  .hero-bg .hero-image{
    width:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    filter:saturate(1.08) contrast(1.05) brightness(.9)!important;
    opacity:1!important;
  }
  .hero-overlay{
    background:
      linear-gradient(180deg,rgba(3,7,14,.10) 0%,rgba(3,7,14,.28) 48%,rgba(3,7,14,.76) 100%),
      linear-gradient(90deg,rgba(0,0,0,.26),rgba(0,31,70,.06),rgba(0,0,0,.18))!important;
  }
}

@media (max-width: 390px){
  .brand img{width:144px!important;max-width:144px!important;}
  .menu-toggle{min-width:96px!important;height:46px!important;padding-inline:18px!important;}
  .hero h1{font-size:clamp(38px,11.5vw,50px)!important;max-width:370px!important;}
}



/* Lopullinen mobiilikorjaus: logo + Menu, iso hero, header piiloutuu alas scrollatessa */
.hero .hero-actions{display:none!important;}
@media (max-width: 760px){
  html,body{overflow-x:hidden!important;}
  .site-header{
    position:fixed!important;
    top:0!important;left:0!important;right:0!important;
    z-index:1000!important;
    display:grid!important;
    grid-template-columns:auto auto!important;
    grid-template-rows:auto!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:10px 16px!important;
    min-height:68px!important;
    background:linear-gradient(180deg,rgba(4,8,15,.46),rgba(4,8,15,.14))!important;
    border-bottom:1px solid rgba(255,255,255,.04)!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
    transition:transform .32s ease, background .24s ease!important;
  }
  .site-header.header-hidden{transform:translateY(-115%)!important;}
  .site-header.is-scrolled{background:linear-gradient(180deg,rgba(4,8,15,.58),rgba(4,8,15,.20))!important;}
  .brand{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;}
  .brand img{width:166px!important;max-width:166px!important;max-height:50px!important;height:auto!important;object-fit:contain!important;}
  .menu-toggle{
    display:inline-flex!important;
    align-items:center!important;justify-content:center!important;
    justify-self:end!important;
    color:#fff!important;
    background:rgba(255,255,255,.07)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    border-radius:999px!important;
    padding:10px 15px!important;
    font-size:14px!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
    line-height:1!important;
  }
  .header-phone,.site-header>.btn{display:none!important;}
  .nav{
    display:none!important;
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:14px!important;right:14px!important;
    width:auto!important;max-width:none!important;
    flex-direction:column!important;
    align-items:stretch!important;justify-content:flex-start!important;
    gap:6px!important;
    padding:12px!important;
    margin:0!important;
    background:rgba(3,7,14,.94)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:20px!important;
    box-shadow:0 22px 70px rgba(0,0,0,.45)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  .nav.open{display:flex!important;}
  .nav a{
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:100%!important;
    padding:14px 12px!important;
    border-radius:14px!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:800!important;
    line-height:1.1!important;
    background:rgba(255,255,255,.045)!important;
  }
  .nav a:active{background:rgba(10,132,255,.22)!important;}
  .hero{
    min-height:106svh!important;
    height:106svh!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    overflow:hidden!important;
  }
  .hero-bg,.hero-bg .hero-image{height:100%!important;min-height:106svh!important;}
  .hero-bg .hero-image{
    object-fit:cover!important;
    object-position:center center!important;
    filter:saturate(1.08) contrast(1.05) brightness(.86)!important;
    opacity:1!important;
  }
  .hero-overlay{
    background:linear-gradient(180deg,rgba(3,7,14,.08) 0%,rgba(3,7,14,.30) 47%,rgba(3,7,14,.80) 100%),linear-gradient(90deg,rgba(0,0,0,.28),rgba(0,31,70,.08),rgba(0,0,0,.24))!important;
  }
  .hero-grid{
    min-height:106svh!important;
    padding:80px 0 26px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .hero-content{
    min-height:calc(106svh - 110px)!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    text-align:center!important;
  }
  .hero h1{
    font-size:clamp(39px,11.8vw,54px)!important;
    line-height:1.02!important;
    letter-spacing:-.058em!important;
    max-width:370px!important;
    margin:0 auto!important;
    text-align:center!important;
  }
  .hero .hero-actions{display:none!important;}
  .process-grid:before,.process-grid:after,.process:before,.process:after{display:none!important;content:none!important;}
}
@media (max-width: 380px){
  .brand img{width:150px!important;max-width:150px!important;}
  .hero h1{font-size:clamp(36px,11vw,48px)!important;max-width:340px!important;}
}



/* LumioWeb final rebrand fixes */
.site-header .brand img, .brand img{display:block!important;width:190px!important;max-width:190px!important;height:auto!important;object-fit:contain!important;border:0!important;background:transparent!important;box-shadow:none!important;}
.footer-logo-lumioweb{display:block!important;width:210px!important;max-width:100%!important;height:auto!important;margin:0 0 14px!important;background:transparent!important;border:0!important;box-shadow:none!important;}
@media(max-width:760px){.site-header .brand img,.brand img{width:150px!important;max-width:150px!important}.footer-logo-lumioweb{width:170px!important}}
