/* Luminous Impulse — visual refinement, 2026-10-20.
   Existing brand palette and content architecture are deliberately retained. */
:root{--lp-ease:cubic-bezier(.2,.7,.2,1)}
html{scroll-padding-top:100px}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.li-nav{box-shadow:0 5px 22px rgba(29,25,63,.035)}
.li-nav-brand{transition:opacity .2s ease}
.li-nav-brand:hover{opacity:.85}
.li-nav-links a{position:relative;transition:color .2s ease}
.li-nav-links a:not(.is-active):after{content:'';position:absolute;bottom:0;left:12px;right:12px;height:2px;border-radius:2px;background:var(--li-grad);transform:scaleX(0);transform-origin:left;transition:transform .24s var(--lp-ease)}
.li-nav-links a:not(.is-active):hover:after{transform:scaleX(1)}
.lh-hero h1{text-wrap:balance;max-width:1100px;line-height:1.07}
.lh-lead{line-height:1.75;max-width:780px;color:#d3d8e9}
.lh-kicker{font-size:.75rem;letter-spacing:.15em}
.lh-door{border:1px solid rgba(255,255,255,.2);box-shadow:0 22px 58px rgba(3,9,25,.16);transition:border-color .24s,box-shadow .24s}
.lh-door--svc{border-color:rgba(255,255,255,.85);background:linear-gradient(135deg,#fff,#fafbff)}
.lh-door--app{background:radial-gradient(circle at 100% 0%,rgba(109,66,199,.45),transparent 60%),linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.055))}
.lh-door h2{line-height:1.18;letter-spacing:-.035em;text-wrap:balance}
.lh-door-list{gap:10px}.lh-door-list li{line-height:1.5}
.lh-door--app .lh-door-list{color:#e0e6f5}
.li-btn,.li-nav-cta,.li-g-cta a.primary,.li-g-card .plan-cta a.buy{position:relative;isolation:isolate;overflow:hidden;transition:transform .22s var(--lp-ease),box-shadow .22s ease,filter .22s ease}
.li-btn--primary,.li-nav-cta{box-shadow:0 7px 19px rgba(109,66,199,.19),inset 0 1px rgba(255,255,255,.22)}
.li-btn--primary:after,.li-nav-cta:after,.li-g-cta a.primary:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.2) 50%,transparent 75%);transform:translateX(-155%)}
.li-btn--primary:hover:after,.li-nav-cta:hover:after,.li-g-cta a.primary:hover:after{animation:lp-sheen .65s ease}
.li-card,.li-g-card,.li-g-cardx,.li-g-guides a,.li-steps li{transition:transform .25s var(--lp-ease),box-shadow .25s ease,border-color .25s ease}
.li-card{border-color:#e1e5f0;box-shadow:0 9px 30px rgba(37,34,72,.045)}
.li-ico{transition:background-color .25s,color .25s,transform .25s var(--lp-ease)}
.li-card h3{line-height:1.3;letter-spacing:-.025em}
.li-card p{line-height:1.75}
.li-svc-card .more{display:inline-flex;gap:5px;align-items:center;transition:color .2s}
.li-sec-head h2,.lh-app h2,.li-g-sec-head h2{line-height:1.16;text-wrap:balance;letter-spacing:-.035em}
.li-sec-head p{line-height:1.75}
.lh-trust{font-size:.85rem;line-height:1.5;color:#d0d8e9}
.lh-trust span{border:1px solid rgba(143,220,240,.12);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.li-band{border:1px solid rgba(143,220,240,.12);box-shadow:0 20px 60px rgba(28,25,60,.07)}
.lh-b2b-list li{transition:border-color .2s,background-color .2s}
.li-faq details{box-shadow:0 4px 14px rgba(26,30,55,.02);transition:border-color .2s,box-shadow .2s}
.li-faq details[open]{border-color:rgba(109,66,199,.32);box-shadow:0 8px 25px rgba(109,66,199,.055)}
.li-faq summary{line-height:1.55}
.li-link{text-underline-offset:4px}.li-link:hover{text-decoration:underline}
:where(input,textarea,select):focus-visible{border-color:#8f70cf!important;outline:2px solid rgba(109,66,199,.17);outline-offset:2px}
.li-foot a{transition:color .18s}.li-foot a:hover{color:#c9b6f1}
/* An authentic product image is shown without recolouring or inventing an interface. */
.lp-product-image{display:block;width:100%;height:auto;border-radius:12px;border:1px solid rgba(109,66,199,.16);box-shadow:0 12px 32px rgba(20,25,45,.13)}
.lp-product-caption{font-size:11px;line-height:1.6;color:var(--li-text-muted);margin:10px 0 0}
.lh-door--app .lp-product-caption{color:#d3d8e9;font-size:10px}
.lp-door-product{position:absolute;right:18px;top:74px;width:34%;max-width:205px;margin:0}
.lp-door-product .lp-product-image{border-radius:7px;box-shadow:0 14px 26px rgba(0,0,0,.2)}
.lp-app-product{padding:0;margin:0}.lp-app-product a{display:block}
@media(hover:hover) and (pointer:fine){.li-card:hover,.li-g-card:hover,.li-g-cardx:hover,.li-g-guides a:hover{transform:translateY(-4px);border-color:rgba(109,66,199,.3);box-shadow:0 16px 36px rgba(73,49,120,.09)}.li-card:hover .li-ico{transform:translateY(-2px);background:rgba(109,66,199,.11);color:#6134aa}.li-btn:hover,.li-nav-cta:hover{transform:translateY(-2px)}.lh-b2b-list li:hover{border-color:rgba(143,220,240,.32);background-color:rgba(255,255,255,.085)}}
@keyframes lp-sheen{to{transform:translateX(155%)}}
@media(max-width:860px){.lh-hero{padding-top:42px}.lh-hero h1{font-size:clamp(2rem,6.3vw,3rem)}.lh-lead{font-size:1rem;line-height:1.7}.lh-door{padding:25px}.lh-door--app{padding-bottom:25px}.lp-door-product{position:static;width:100%;max-width:420px;margin:8px auto 0}.lh-trust{font-size:.8rem;gap:16px}.lh-door h2{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.li-btn,.li-nav-cta,.li-card,.li-g-card,.li-g-cardx,.li-g-guides a,.li-steps li,.li-ico,.li-nav-links a:after{transition:none!important}.li-btn:after,.li-nav-cta:after,.li-g-cta a.primary:after{animation:none!important;display:none}.li-btn:hover,.li-nav-cta:hover,.li-card:hover,.li-g-card:hover,.li-g-cardx:hover,.li-g-guides a:hover,.li-card:hover .li-ico{transform:none!important}html{scroll-behavior:auto!important}}
/* Palette preference: blue/cyan from the official cube; violet remains in the logo only. */
:root{--li-secondary:#17679c;--li-brand-rgb:23,103,156;--li-accent:#19bde5;--li-accent-soft:#397fd1;--li-grad:linear-gradient(135deg,#165d90,#16758f)}
.lh-hero{background:radial-gradient(ellipse at 85% -10%,rgba(57,127,209,.32),transparent 55%),radial-gradient(ellipse at 0% 110%,rgba(25,189,229,.18),transparent 50%),linear-gradient(160deg,#0f1526 0%,#142a40 60%,#17314b 100%)}
.grad{background:linear-gradient(120deg,#8ac6f4 0%,#6dcde7 55%,#70d9df 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.lh-door--app{background:radial-gradient(circle at 100% 0%,rgba(57,127,209,.3),transparent 60%),linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.055))}
.lh-door--svc .lh-door-tag,.li-eyebrow{color:#17679c}.li-nav-links a.is-active{color:#17679c!important}
.li-btn--primary,.li-nav-cta{box-shadow:0 7px 19px rgba(23,103,156,.19),inset 0 1px rgba(255,255,255,.22)}
.li-card .li-ico{background:rgba(23,103,156,.075);color:#17679c}
.li-faq details[open]{border-color:rgba(23,103,156,.32);box-shadow:0 8px 25px rgba(23,103,156,.055)}
.lh-app{background:linear-gradient(180deg,#edf5fb,#f5f8fb)}
:where(input,textarea,select):focus-visible{border-color:#397fa9!important;outline-color:rgba(23,103,156,.2)}
.li-foot a:hover{color:#8ad9eb}
.li-g,.li-gf,.li-book-page,.li-book{--accent:#17679c;--cyan:#19bde5}
.li-g{background:radial-gradient(circle at 88% 0,rgba(85,189,232,.12),transparent 34%),radial-gradient(circle at 8% 92%,rgba(23,103,156,.08),transparent 36%),linear-gradient(145deg,#f8fafc,#f0f6fa 48%,#f8fafc)}
.li-g .li-g-badge,.li-g-card .tag{background:#e6f2fa;color:#17679c;border-color:#b9d9ed}
.li-g-cta a.primary,.li-g-card .plan-cta a.buy{background:var(--li-grad)}
.li-g-cta a.linkish{color:#17679c!important}.li-g-compare thead th.rec{background:#eaf5fb}.li-g-compare td.rec{background:rgba(23,103,156,.04)}
.li-cookie-btn.primary{background:var(--li-grad)}
@media(hover:hover) and (pointer:fine){.li-card:hover,.li-g-card:hover,.li-g-cardx:hover,.li-g-guides a:hover{border-color:rgba(23,103,156,.3);box-shadow:0 16px 36px rgba(23,73,110,.09)}.li-card:hover .li-ico{background:rgba(23,103,156,.11);color:#17679c}}
/* Glass finish: connected blue-to-mist sections instead of abrupt dark/white cuts. */
body{background:radial-gradient(ellipse at 85% 45%,rgba(120,194,223,.09),transparent 48%),linear-gradient(160deg,#edf4f9,#f4f8fb 65%,#edf5f9)}
.li-nav{background:rgba(248,252,255,.76);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);border-bottom-color:rgba(255,255,255,.75);box-shadow:0 5px 26px rgba(24,65,94,.045)}
.lh-hero{background:radial-gradient(ellipse at 90% 0,rgba(57,127,209,.25),transparent 55%),linear-gradient(180deg,#101c2c 0%,#18334c 66%,#36536b 100%)}
.lh-door{border-radius:24px;border:1px solid rgba(255,255,255,.4);box-shadow:0 16px 44px rgba(6,28,48,.12),inset 0 1px 0 rgba(255,255,255,.38);backdrop-filter:blur(15px) saturate(125%);-webkit-backdrop-filter:blur(15px) saturate(125%)}
.lh-door--svc{background:linear-gradient(135deg,rgba(247,252,255,.94),rgba(224,240,250,.85));border-color:rgba(255,255,255,.72)}
.lh-door--app{background:linear-gradient(135deg,rgba(86,148,186,.25),rgba(203,236,252,.09));border-color:rgba(200,235,252,.3)}
.lh-trust span{background:rgba(224,246,255,.09);border-color:rgba(203,235,252,.2);box-shadow:inset 0 1px rgba(255,255,255,.1)}
.lh-b2b{background:linear-gradient(180deg,#36536b 0%,#7392a8 42%,#c4d6e2 78%,#edf4f9 100%);padding-top:32px;padding-bottom:72px!important}
.li-band{background:linear-gradient(125deg,rgba(18,49,74,.9),rgba(42,88,116,.84));border:1px solid rgba(225,246,255,.36);box-shadow:0 18px 52px rgba(28,65,89,.12),inset 0 1px rgba(255,255,255,.17);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%)}
.lh-b2b-list li{background:rgba(237,250,255,.055);border-color:rgba(224,245,255,.22);box-shadow:inset 0 1px rgba(255,255,255,.06)}
.li-card,.li-steps li,.li-faq details,.li-g-card,.li-g-cardx,.li-g-guides a{background:linear-gradient(140deg,rgba(255,255,255,.83),rgba(244,251,255,.63));border-color:rgba(255,255,255,.88);box-shadow:0 10px 35px rgba(30,74,104,.055),inset 0 1px rgba(255,255,255,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.li-card{outline:1px solid rgba(151,185,207,.18);outline-offset:-1px}
.li-ico{box-shadow:inset 0 1px rgba(255,255,255,.6);border:1px solid rgba(23,103,156,.055)}
.lh-help{background:linear-gradient(180deg,rgba(218,235,246,0),rgba(214,234,246,.35),rgba(218,235,246,0));border-top:0}
.lh-app{background:linear-gradient(180deg,rgba(220,237,248,0),rgba(210,232,246,.5) 45%,rgba(220,237,248,0));border-block:0}
.lh-app-flow li{background:rgba(255,255,255,.65);border-color:rgba(255,255,255,.9);box-shadow:inset 0 1px rgba(255,255,255,.9)}
.lh-form{background:linear-gradient(135deg,rgba(248,253,255,.96),rgba(231,244,251,.92));border:1px solid rgba(255,255,255,.85);box-shadow:0 14px 36px rgba(6,28,48,.14),inset 0 1px rgba(255,255,255,.8)}
.li-foot{background:linear-gradient(180deg,#304e66,#14283c);box-shadow:inset 0 1px rgba(202,234,250,.14)}
.li-mbar{background:rgba(248,252,255,.83);border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.li-card,.li-steps li,.li-faq details,.li-g-card,.li-g-cardx{background:#f8fcff}.li-nav{background:#f7fbfe}.lh-door--svc{background:#eaf5fc}.lh-door--app{background:#284e68}.li-band{background:linear-gradient(125deg,#183a55,#305e7c)}}
@media(prefers-reduced-transparency:reduce){.li-card,.li-steps li,.li-faq details,.li-g-card,.li-g-cardx,.li-g-guides a,.li-nav,.lh-door,.li-band,.li-mbar{backdrop-filter:none;-webkit-backdrop-filter:none}.li-card,.li-steps li,.li-faq details{background:#f8fcff}.lh-door--svc{background:#eaf5fc}.lh-door--app{background:#284e68}}
@media(max-width:760px){.lh-b2b{padding-top:22px;padding-bottom:52px!important}.lh-door{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.li-card,.li-steps li,.li-faq details{backdrop-filter:none;-webkit-backdrop-filter:none;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(239,249,255,.9))}}
/* Keep supporting copy legible on the translucent dark surfaces. */
.li-band p,.lh-b2b-list span{color:#e6eef8}.lh-b2b-list li{background:rgba(7,31,51,.18)}
/* Liquid-glass controls: a clear hierarchy, specular edges and responsive light. */
:root{--lp-glass-edge:rgba(255,255,255,.58);--lp-button-ink:#133e59;--lp-blue-top:#246c96;--lp-blue-bottom:#155475;--lp-spring:cubic-bezier(.2,.8,.2,1.2)}
.lp-glass-button{position:relative;isolation:isolate;overflow:hidden;border-radius:999px!important;min-height:48px;border:1px solid var(--lp-glass-edge);background-clip:padding-box;backdrop-filter:blur(12px) saturate(135%);-webkit-backdrop-filter:blur(12px) saturate(135%);transition:transform .3s var(--lp-spring),box-shadow .3s ease,border-color .25s ease!important;-webkit-user-select:none;user-select:none;box-shadow:0 7px 18px rgba(12,52,78,.13),inset 0 1px 0 rgba(255,255,255,.6),inset 0 -1px 0 rgba(3,30,52,.12)}
.lp-glass-button::before{content:'';position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;background:radial-gradient(110px circle at var(--lp-light-x,50%) var(--lp-light-y,0%),rgba(255,255,255,.2),transparent 75%);opacity:0;transition:opacity .25s ease}
.lp-glass-button::after{content:'';position:absolute;inset:-80% -35%;z-index:0;pointer-events:none;opacity:.7;background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.3) 48%,rgba(255,255,255,.06) 52%,transparent 64%);transform:translateX(-155%)}
.lp-glass-button.lp-light-active::before{opacity:1}
.li-btn--primary.lp-glass-button,.li-nav-cta.lp-glass-button,.li-btn--dark.lp-glass-button,.li-g-cta a.primary.lp-glass-button,.li-g-card .plan-cta a.buy.lp-glass-button,.lh-form button.lp-glass-button,[data-li-form-api] button.lp-glass-button{color:#fff!important;border-color:rgba(191,228,248,.62);background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,0) 48%),linear-gradient(135deg,var(--lp-blue-top),var(--lp-blue-bottom));box-shadow:0 8px 22px rgba(12,57,85,.2),inset 0 1px 0 rgba(255,255,255,.5),inset 0 -1px 0 rgba(3,30,52,.17)}
.li-btn--wa.lp-glass-button{background:linear-gradient(180deg,rgba(255,255,255,.16),transparent 55%),linear-gradient(135deg,#168149,#096335);border-color:rgba(173,242,202,.6);box-shadow:0 7px 19px rgba(6,65,37,.16),inset 0 1px 0 rgba(255,255,255,.4);color:#fff}
.li-btn--light.lp-glass-button,.li-btn--ghost.lp-glass-button,.li-g-cta a.ghost.lp-glass-button{background:linear-gradient(135deg,rgba(255,255,255,.93),rgba(226,243,252,.8));border-color:rgba(255,255,255,.83);color:var(--lp-button-ink)!important;box-shadow:0 8px 22px rgba(8,37,59,.12),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(78,127,158,.16)}
.li-btn--outline-light.lp-glass-button{background:linear-gradient(145deg,rgba(238,250,255,.13),rgba(217,245,255,.055));border-color:rgba(222,245,255,.46);color:#f3faff;box-shadow:0 6px 18px rgba(9,37,59,.07),inset 0 1px 0 rgba(255,255,255,.22)}
.lp-glass-button:focus-visible{outline:3px solid #77c6ee;outline-offset:4px;box-shadow:0 0 0 6px rgba(15,61,90,.18),inset 0 1px rgba(255,255,255,.5)}
.lp-glass-button:active{transform:translateY(0) scale(.975)!important;transition-duration:.12s!important}
.lp-glass-button[disabled],.lp-glass-button[aria-disabled=true]{opacity:.55;cursor:default}
.lp-touch-light{position:absolute;width:100px;height:100px;border-radius:50%;pointer-events:none;z-index:1;background:radial-gradient(circle,rgba(255,255,255,.48),rgba(206,243,255,.16) 42%,transparent 70%)}
.lp-glass-surface{position:relative;isolation:isolate}
.lp-glass-surface::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;opacity:0;background:radial-gradient(300px circle at var(--lp-light-x,50%) var(--lp-light-y,0%),rgba(212,244,255,.14),transparent 70%);transition:opacity .4s ease}
.lp-glass-surface.lp-light-active::after{opacity:1}
.lh-door--svc.lp-glass-surface::after,.li-svc-card.lp-glass-surface::after{background:radial-gradient(250px circle at var(--lp-light-x,50%) var(--lp-light-y,0%),rgba(65,172,214,.08),transparent 70%)}
.lh-hero::before{opacity:.4}
.lh-hero{background:radial-gradient(ellipse at 83% 16%,rgba(85,163,208,.17),transparent 48%),radial-gradient(ellipse at 8% 70%,rgba(59,153,186,.09),transparent 50%),linear-gradient(180deg,#101d2d 0%,#1c3b54 68%,#3a586f 100%)}
.lh-b2b{background:linear-gradient(180deg,#3a586f 0%,#7897ac 38%,#c4d6e2 76%,#edf4f9 100%)}
.lh-door,.li-band{border-top-color:rgba(238,251,255,.58);box-shadow:0 16px 44px rgba(6,28,48,.1),inset 0 1px 0 rgba(255,255,255,.27),inset 1px 0 rgba(224,249,255,.1)}
.li-foot{position:relative;margin-top:120px}
.li-foot::before{content:'';position:absolute;inset:-120px 0 auto;height:120px;pointer-events:none;background:linear-gradient(180deg,rgba(48,78,102,0),rgba(48,78,102,.3) 50%,#304e66 100%)}
@media(hover:hover) and (pointer:fine){.lp-glass-button:hover{transform:translateY(-2px);filter:none;box-shadow:0 11px 26px rgba(12,57,85,.22),inset 0 1px rgba(255,255,255,.65),inset 0 -1px rgba(3,30,52,.14)}.lp-glass-button:hover::after{animation:lp-sheen .9s ease}}
/* The preview can demonstrate the same light state without activating a CTA. */
.lp-glass-button.lp-light-active::after{animation:lp-sheen 1.2s ease}
@media(max-width:760px){.lp-glass-button{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.li-foot{margin-top:88px}.li-foot::before{top:-88px;height:88px}}
@media(prefers-reduced-motion:reduce){.lp-glass-button,.lp-glass-button::before,.lp-glass-surface::after{transition:none!important}.lp-glass-button::after,.lp-touch-light{display:none!important;animation:none!important}.lp-glass-button:hover,.lp-glass-button:active{transform:none!important}.lp-glass-surface::after{display:none}}
@media(prefers-reduced-transparency:reduce){.lp-glass-button{backdrop-filter:none;-webkit-backdrop-filter:none}.li-btn--light.lp-glass-button,.li-btn--ghost.lp-glass-button{background:#edf7fc}.li-btn--outline-light.lp-glass-button{background:#284e68}.lp-glass-button::before,.lp-glass-surface::after{display:none}}
/* Specular light stays near the edges, keeping button labels at stable contrast. */
.lp-glass-button::before{mask-image:linear-gradient(#000,transparent 35%,transparent 65%,#000);-webkit-mask-image:linear-gradient(#000,transparent 35%,transparent 65%,#000)}
.lp-glass-button::after{opacity:.48}

/* Keep the company name and its technological roots together beside the logo. */
.li-nav-brand .lp-brand-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:3px;line-height:1.15}
.li-nav-brand .lp-brand-name{font-size:1.02rem;font-weight:800;letter-spacing:-.03em}
.li-nav-brand .lp-brand-tagline{font-size:.64rem;font-weight:500;letter-spacing:.035em;color:#456177;white-space:nowrap}
@media(max-width:600px){.li-nav-brand{gap:9px}.li-nav-brand .lp-brand-name{font-size:.94rem}.li-nav-brand .lp-brand-tagline{font-size:.59rem;letter-spacing:.015em}}

/* Carry the approved blue finish through contact and booking pages. */
.li-c{--accent:#17679c;background:radial-gradient(circle at 82% 0,rgba(57,150,201,.10),transparent 34%),linear-gradient(145deg,#f3f8fc,#edf5fa 50%,#f5f9fc)}
.li-book-page{background:radial-gradient(circle at 88% 0,rgba(85,189,232,.14),transparent 34%),radial-gradient(circle at 8% 92%,rgba(23,103,156,.08),transparent 36%),#f2f6fb}
.li-c-form,.li-c-info,.li-gf-card,.li-book{background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(239,248,253,.91));border-color:rgba(207,227,240,.8);box-shadow:0 16px 45px rgba(30,74,104,.075),inset 0 1px #fff}
.li-gf-plan,.li-c-quick-item .ico{background:rgba(23,103,156,.06)}
