:root{
  --ink:#081827;--ink-2:#0d253a;--ink-3:#14344d;
  --royal:#0155c4;--azure:#0299e2;--cyan:#24c8ee;--sky:#8edcf5;
  --white:#fff;--paper:#f7fbfe;--ice:#eef7fc;--mist:#dcecf6;
  --text:#102538;--muted:#5e7284;--line:#d6e5ef;--success:#0d9b73;
  --shadow-sm:0 10px 30px rgba(9,39,62,.08);--shadow:0 24px 70px rgba(9,39,62,.13);
  --radius:24px;--radius-sm:16px;--max:1220px;--header:76px;
  --ease:cubic-bezier(.2,.75,.25,1)
}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 24px)}body{font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;background:var(--paper);color:var(--text);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}body.nav-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}ul{list-style:none}::selection{background:rgba(2,153,226,.22);color:var(--ink)}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.section{padding:104px 0;position:relative}.section.compact{padding:72px 0}.section.alt{background:linear-gradient(180deg,#eff7fc 0%,#f8fcff 100%)}.section.dark{background:var(--ink);color:#fff;overflow:hidden}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:46px}.section-head>div{max-width:760px}.section-kicker{display:inline-flex;align-items:center;gap:9px;color:var(--royal);font-size:.77rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}.section-kicker:before{content:"";width:28px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--royal),var(--cyan))}.dark .section-kicker,.hero .section-kicker,.page-hero .section-kicker{color:#8ee7fb}.display{font-size:clamp(2.25rem,4.6vw,4.9rem);line-height:1.02;letter-spacing:-.055em;font-weight:850}.section-title{font-size:clamp(2rem,3.6vw,3.55rem);line-height:1.08;letter-spacing:-.045em;font-weight:850}.section-copy{font-size:1.04rem;color:var(--muted);max-width:690px;margin-top:17px}.dark .section-copy{color:#b8cbd8}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(2,153,226,.18);background:rgba(2,153,226,.07);border-radius:999px;color:var(--royal);font-size:.72rem;letter-spacing:.09em;font-weight:800;text-transform:uppercase}.chip{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:var(--ice);border:1px solid var(--line);font-size:.78rem;font-weight:750;color:var(--ink-2)}.muted{color:var(--muted)}
/* loader */
.site-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:var(--ink);color:#fff;transition:opacity .65s var(--ease),visibility .65s;overflow:hidden}.site-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.loader-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(142,220,245,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(142,220,245,.055) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,#000 10%,transparent 100%)}.loader-glow{position:absolute;width:48vw;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(2,153,226,.2),transparent 66%);filter:blur(10px);animation:loaderBreath 3.6s ease-in-out infinite}.loader-shell{position:relative;width:min(90vw,520px);text-align:center}.loader-mark{width:116px;height:116px;margin:0 auto 28px;position:relative;display:grid;place-items:center}.loader-mark:before,.loader-mark:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(142,220,245,.32);inset:-16px;animation:loaderSpin 7s linear infinite}.loader-mark:after{inset:-34px;border-style:dashed;animation-direction:reverse;animation-duration:11s}.loader-mark img{width:92px;height:92px;border-radius:25px;box-shadow:0 18px 55px rgba(0,0,0,.35),0 0 45px rgba(2,153,226,.2)}.loader-kicker{color:#88def5;font-size:.73rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.loader-title{font-size:clamp(1.65rem,4vw,2.6rem);line-height:1.12;letter-spacing:-.035em;margin:10px 0 9px}.loader-copy{color:#9fb7c8;font-size:.9rem}.loader-status{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px;font-size:.75rem;color:#a9bdcb}.loader-track{height:3px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden;margin-top:9px}.loader-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--royal),var(--cyan));box-shadow:0 0 16px rgba(36,200,238,.6);transition:width .2s linear}.loader-wave{position:absolute;left:50%;bottom:-150px;transform:translateX(-50%);width:900px;height:300px;border-radius:50%;border-top:1px solid rgba(36,200,238,.18);box-shadow:0 -30px 100px rgba(2,153,226,.12);animation:waveDrift 6s ease-in-out infinite alternate}@keyframes loaderSpin{to{transform:rotate(360deg)}}@keyframes loaderBreath{50%{transform:scale(1.12);opacity:.72}}@keyframes waveDrift{to{transform:translateX(-48%) rotate(2deg)}}
/* global motion */
.scroll-progress{position:fixed;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--royal),var(--cyan));z-index:2000}.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.visible{opacity:1;transform:none}.stagger>*{transition-delay:calc(var(--i,0)*70ms)}
/* header */
.site-header{height:var(--header);position:fixed;top:0;left:0;right:0;z-index:1000;color:#fff;transition:background .3s,border-color .3s,box-shadow .3s}.site-header.scrolled,.site-header.inner{background:rgba(8,24,39,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 30px rgba(3,16,28,.12)}.nav-wrap{height:100%;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:11px;min-width:max-content}.brand img{width:43px;height:43px;border-radius:12px}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-size:.96rem;letter-spacing:-.02em}.brand-copy small{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:#95b3c6;margin-top:5px}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:2px}.desktop-nav>a,.nav-drop>button{border:0;background:transparent;color:#c7d8e4;padding:10px 12px;font-size:.84rem;font-weight:700;border-radius:10px;transition:.2s}.desktop-nav>a:hover,.desktop-nav>a.active,.nav-drop>button:hover{color:#fff;background:rgba(255,255,255,.07)}.nav-drop{position:relative}.nav-drop>button{display:flex;align-items:center;gap:5px}.nav-drop>button svg{width:14px;transition:transform .2s}.nav-drop:hover>button svg,.nav-drop:focus-within>button svg{transform:rotate(180deg)}.drop-menu{position:absolute;top:calc(100% + 10px);right:0;width:250px;padding:10px;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s var(--ease)}.nav-drop:hover .drop-menu,.nav-drop:focus-within .drop-menu{opacity:1;visibility:visible;transform:none}.drop-menu a{display:block;padding:11px 12px;border-radius:10px;font-size:.85rem;font-weight:700}.drop-menu a:hover{background:var(--ice);color:var(--royal)}.header-actions{display:flex;align-items:center;gap:9px}.header-cta{padding:10px 16px;border-radius:12px;background:linear-gradient(135deg,var(--royal),var(--azure));color:#fff;font-size:.82rem;font-weight:800;box-shadow:0 10px 28px rgba(1,85,196,.22);transition:.25s}.header-cta:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(1,85,196,.35)}.menu-button{display:none;width:43px;height:43px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);border-radius:12px;color:#fff;place-items:center}.menu-button span,.menu-button:before,.menu-button:after{content:"";width:18px;height:2px;background:currentColor;border-radius:2px;transition:.25s;display:block}.menu-button{gap:4px}.nav-open .menu-button span{opacity:0}.nav-open .menu-button:before{transform:translateY(6px) rotate(45deg)}.nav-open .menu-button:after{transform:translateY(-6px) rotate(-45deg)}
/* language */
.language{position:relative}.language-button{min-width:128px;height:43px;padding:0 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:800}.language-button .flag{font-size:1rem}.language-button .lang-code{color:#d6e7f1}.language-button svg{margin-left:auto;width:14px;transition:transform .2s}.language.open .language-button svg{transform:rotate(180deg)}.language-menu{position:absolute;top:calc(100% + 10px);right:0;width:220px;padding:8px;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px) scale(.98);transform-origin:top right;transition:.2s var(--ease)}.language.open .language-menu{opacity:1;visibility:visible;transform:none}.language-menu button{width:100%;border:0;background:transparent;display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;padding:10px;border-radius:10px;text-align:left;color:var(--text)}.language-menu button:hover,.language-menu button.active{background:var(--ice)}.language-menu .native{font-size:.84rem;font-weight:800}.language-menu small{font-size:.69rem;color:var(--muted)}.language-menu .check{color:var(--royal);opacity:0}.language-menu button.active .check{opacity:1}
/* mobile nav */
.mobile-panel{position:fixed;inset:var(--header) 0 0 auto;width:min(88vw,390px);background:#fff;color:var(--text);z-index:999;padding:24px;transform:translateX(105%);transition:transform .35s var(--ease);box-shadow:-20px 0 60px rgba(3,16,28,.18);overflow:auto}.nav-open .mobile-panel{transform:none}.mobile-overlay{position:fixed;inset:var(--header) 0 0;background:rgba(3,15,26,.48);z-index:998;opacity:0;visibility:hidden;transition:.3s}.nav-open .mobile-overlay{opacity:1;visibility:visible}.mobile-panel nav{display:grid;gap:5px}.mobile-panel nav a{padding:13px 14px;border-radius:12px;font-weight:750}.mobile-panel nav a:hover,.mobile-panel nav a.active{background:var(--ice);color:var(--royal)}.mobile-label{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:800;margin:22px 14px 8px}.mobile-cta{margin-top:20px}
/* buttons */
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:14px;padding:0 19px;font-size:.86rem;font-weight:800;transition:transform .25s var(--ease),box-shadow .25s,background .25s}.button svg{width:18px;height:18px}.button.primary{background:linear-gradient(135deg,var(--royal),var(--azure));color:#fff;box-shadow:0 13px 34px rgba(1,85,196,.24)}.button.primary:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(1,85,196,.33)}.button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.button.secondary:hover{transform:translateY(-3px);border-color:#b7d8eb}.button.ghost{background:rgba(255,255,255,.07);color:#fff;border:1px solid rgba(255,255,255,.14)}.button.ghost:hover{background:rgba(255,255,255,.12)}.button.text{padding:0;min-height:auto;color:var(--royal);background:none}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
/* hero */
.hero{min-height:820px;padding:calc(var(--header) + 85px) 0 92px;background:var(--ink);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.hero:before,.page-hero:before,.dark:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(142,220,245,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(142,220,245,.045) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,#000,transparent 92%)}.hero:after{content:"";position:absolute;right:-12%;top:0;width:62%;height:90%;background:radial-gradient(circle at center,rgba(2,153,226,.22),transparent 66%);filter:blur(10px)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(440px,.98fr);gap:68px;align-items:center}.hero .display{max-width:790px}.hero .display span{background:linear-gradient(90deg,#fff 10%,#8fe5fa 58%,#48bde9);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-copy{font-size:1.08rem;color:#aec5d4;max-width:660px;margin:24px 0 30px}.hero-proof{display:flex;gap:24px;margin-top:34px;flex-wrap:wrap}.proof-item{display:flex;gap:9px;align-items:center;color:#c7d9e5;font-size:.8rem;font-weight:700}.proof-item i{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:rgba(36,200,238,.12);color:#75dff6;font-style:normal;font-size:.7rem}.hero-visual{position:relative;perspective:1000px}.studio-shell{position:relative;background:linear-gradient(145deg,rgba(16,45,67,.98),rgba(7,25,40,.98));border:1px solid rgba(142,220,245,.16);border-radius:28px;box-shadow:0 42px 100px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.08);overflow:hidden;transform:rotateY(-4deg) rotateX(2deg);animation:studioFloat 7s ease-in-out infinite}.studio-top{height:52px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between}.dots{display:flex;gap:6px}.dots i{width:7px;height:7px;border-radius:50%;background:#456175}.dots i:nth-child(2){background:#028fd4}.dots i:nth-child(3){background:#31c8e9}.studio-status{font-size:.67rem;color:#8fdff3;display:flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.studio-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#24d7aa;box-shadow:0 0 12px #24d7aa}.studio-body{padding:20px;display:grid;grid-template-columns:115px 1fr;gap:15px}.studio-side{display:grid;align-content:start;gap:8px}.studio-side span{height:34px;border-radius:9px;background:rgba(255,255,255,.045);display:flex;align-items:center;padding:0 10px;color:#7592a4;font-size:.64rem}.studio-side span.active{background:rgba(2,153,226,.13);color:#8ce2f7;border:1px solid rgba(2,153,226,.17)}.studio-main{display:grid;gap:13px}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric{padding:13px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.07);border-radius:13px}.metric small{font-size:.57rem;color:#7893a5;text-transform:uppercase;letter-spacing:.09em}.metric strong{display:block;font-size:1.02rem;margin-top:3px}.chart-card{height:172px;border-radius:15px;background:linear-gradient(180deg,rgba(2,153,226,.1),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.07);padding:16px;position:relative;overflow:hidden}.chart-grid{position:absolute;inset:16px;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:34px 28px}.chart-line{position:absolute;left:16px;right:16px;bottom:28px;height:92px}.chart-line svg{width:100%;height:100%;overflow:visible}.chart-line path{fill:none;stroke:url(#chartGradient);stroke-width:3;stroke-linecap:round;stroke-dasharray:450;stroke-dashoffset:450;animation:drawChart 3s var(--ease) forwards}.chart-line circle{fill:#54d7f3;filter:drop-shadow(0 0 5px #24c8ee)}.studio-bottom{display:grid;grid-template-columns:1.3fr .7fr;gap:10px}.mini-panel{height:72px;padding:12px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.045);border-radius:13px}.mini-panel b{font-size:.68rem}.bars{display:flex;align-items:end;gap:5px;height:33px;margin-top:5px}.bars i{flex:1;background:linear-gradient(var(--cyan),var(--royal));border-radius:4px 4px 2px 2px;animation:barPulse 2.8s ease-in-out infinite alternate}.bars i:nth-child(1){height:35%}.bars i:nth-child(2){height:70%;animation-delay:.2s}.bars i:nth-child(3){height:52%;animation-delay:.4s}.bars i:nth-child(4){height:88%;animation-delay:.6s}.bars i:nth-child(5){height:64%;animation-delay:.8s}.code-lines{display:grid;gap:5px;margin-top:8px}.code-lines i{height:3px;border-radius:99px;background:#35576d}.code-lines i:nth-child(2){width:70%;background:#087fc1}.code-lines i:nth-child(3){width:45%;background:#2ab9dd}.floating-badge{position:absolute;padding:11px 13px;border-radius:13px;background:#fff;color:var(--ink);box-shadow:var(--shadow);font-size:.72rem;font-weight:800;animation:badgeFloat 5s ease-in-out infinite}.floating-badge.one{left:-30px;top:20%}.floating-badge.two{right:-18px;bottom:14%;animation-delay:-2s}.floating-badge span{color:var(--royal)}@keyframes studioFloat{50%{transform:rotateY(-2deg) rotateX(1deg) translateY(-9px)}}@keyframes drawChart{to{stroke-dashoffset:0}}@keyframes barPulse{to{filter:brightness(1.25);transform:scaleY(.88)}}@keyframes badgeFloat{50%{transform:translateY(-9px)}}
/* strip */
.signal-strip{background:#fff;border-bottom:1px solid var(--line)}.signal-grid{display:grid;grid-template-columns:repeat(4,1fr)}.signal{padding:28px 25px;border-right:1px solid var(--line);display:flex;gap:13px;align-items:center}.signal:last-child{border-right:0}.signal-icon{width:40px;height:40px;border-radius:12px;background:var(--ice);color:var(--royal);display:grid;place-items:center;flex:0 0 auto}.signal-icon svg{width:20px}.signal strong{display:block;font-size:.84rem}.signal span{font-size:.73rem;color:var(--muted)}
/* cards */
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 1px 0 rgba(255,255,255,.7);position:relative;overflow:hidden;transition:transform .32s var(--ease),box-shadow .32s,border-color .32s}.card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:#b8d9eb}.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--royal),var(--cyan));transform:scaleX(0);transform-origin:left;transition:transform .35s}.card:hover:before{transform:scaleX(1)}.card-icon{width:49px;height:49px;border-radius:15px;background:linear-gradient(145deg,var(--ice),#fff);border:1px solid #d9eaf4;color:var(--royal);display:grid;place-items:center;margin-bottom:24px}.card-icon svg{width:24px;height:24px}.card h3{font-size:1.12rem;letter-spacing:-.025em;margin-bottom:9px}.card p{font-size:.9rem;color:var(--muted)}.card-link{display:inline-flex;align-items:center;gap:7px;color:var(--royal);font-size:.8rem;font-weight:800;margin-top:20px}.card-link svg{width:15px;transition:transform .2s}.card-link:hover svg{transform:translateX(4px)}
/* studio tabs */
.lab{display:grid;grid-template-columns:320px 1fr;gap:26px}.lab-nav{display:grid;gap:9px;align-content:start}.lab-tab{border:1px solid var(--line);background:#fff;border-radius:15px;padding:17px 18px;text-align:left;display:grid;grid-template-columns:37px 1fr;gap:12px;align-items:center;color:var(--text);transition:.25s}.lab-tab:hover{border-color:#afd5e9}.lab-tab.active{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:var(--shadow)}.lab-tab i{width:37px;height:37px;border-radius:11px;background:var(--ice);color:var(--royal);display:grid;place-items:center;font-style:normal;font-size:.78rem;font-weight:850}.lab-tab.active i{background:rgba(36,200,238,.13);color:#79def4}.lab-tab strong{display:block;font-size:.85rem}.lab-tab small{display:block;color:var(--muted);font-size:.69rem;margin-top:2px}.lab-tab.active small{color:#91aabb}.lab-stage{min-height:480px;background:var(--ink);border-radius:28px;color:#fff;padding:38px;position:relative;overflow:hidden}.lab-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:45px 45px}.lab-panel{display:none;position:relative;z-index:2;grid-template-columns:1fr .8fr;gap:35px;align-items:center;min-height:400px}.lab-panel.active{display:grid;animation:panelIn .45s var(--ease)}.lab-panel h3{font-size:clamp(1.8rem,3vw,3rem);line-height:1.08;letter-spacing:-.04em}.lab-panel p{color:#a9c0cf;margin:17px 0 24px;max-width:520px}.lab-list{display:grid;gap:10px}.lab-list li{display:flex;gap:9px;color:#d6e5ee;font-size:.83rem}.lab-list li:before{content:"✓";color:#60d9f2;font-weight:900}.tech-orbit{width:min(100%,310px);aspect-ratio:1;margin:auto;border-radius:50%;border:1px solid rgba(142,220,245,.14);position:relative;display:grid;place-items:center}.tech-orbit:before,.tech-orbit:after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(142,220,245,.14);inset:15%;animation:loaderSpin 14s linear infinite}.tech-orbit:after{inset:31%;animation-direction:reverse;animation-duration:9s}.orbit-core{width:76px;height:76px;border-radius:22px;background:linear-gradient(135deg,var(--royal),var(--azure));display:grid;place-items:center;box-shadow:0 0 55px rgba(2,153,226,.35);font-weight:900}.orbit-node{position:absolute;width:42px;height:42px;border-radius:13px;background:#102f47;border:1px solid rgba(142,220,245,.16);display:grid;place-items:center;font-size:.62rem;font-weight:800}.orbit-node.n1{top:6%;left:42%}.orbit-node.n2{right:7%;top:43%}.orbit-node.n3{bottom:7%;left:42%}.orbit-node.n4{left:7%;top:43%}@keyframes panelIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* media cards */
.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.media-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.3s var(--ease)}.media-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.media-card picture{display:block;height:220px;overflow:hidden;background:var(--mist)}.media-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.media-card:hover img{transform:scale(1.045)}.media-content{padding:24px}.media-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.media-content h3{font-size:1.16rem;line-height:1.25;letter-spacing:-.025em}.media-content p{font-size:.87rem;color:var(--muted);margin-top:9px}.concept{font-size:.67rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:var(--royal);padding:6px 9px;background:var(--ice);border-radius:999px}.filter-bar{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:32px}.filter-bar button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;color:var(--muted);font-size:.76rem;font-weight:800}.filter-bar button:hover,.filter-bar button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.filter-item.hidden{display:none}
/* process */
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:step}.process-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);counter-increment:step;position:relative}.process-card:before{content:"0" counter(step);display:block;color:var(--azure);font-size:.7rem;font-weight:900;letter-spacing:.13em;margin-bottom:34px}.process-card:after{content:"";position:absolute;top:28px;right:28px;width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 6px rgba(36,200,238,.1)}.process-card h3{font-size:1.08rem;margin-bottom:8px}.process-card p{font-size:.85rem;color:var(--muted)}
/* stats/cta */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.1);border-radius:24px;overflow:hidden;position:relative;z-index:2}.stat{padding:34px;border-right:1px solid rgba(255,255,255,.1)}.stat:last-child{border-right:0}.stat strong{display:block;font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.05em;background:linear-gradient(90deg,#fff,#65d8f2);-webkit-background-clip:text;color:transparent}.stat span{color:#9db5c4;font-size:.77rem}.cta-panel{padding:52px;border-radius:30px;background:linear-gradient(120deg,var(--ink),#103550 62%,#075785);color:#fff;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;overflow:hidden;position:relative}.cta-panel:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-130px;top:-190px;background:radial-gradient(circle,rgba(36,200,238,.25),transparent 66%)}.cta-panel h2{font-size:clamp(2rem,3.6vw,3.5rem);line-height:1.06;letter-spacing:-.045em;max-width:760px}.cta-panel p{color:#b3c8d6;margin-top:12px;max-width:650px}.cta-panel .actions{position:relative;z-index:2}
/* page hero */
.page-hero{padding:calc(var(--header) + 78px) 0 78px;background:var(--ink);color:#fff;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-220px;top:-240px;background:radial-gradient(circle,rgba(2,153,226,.22),transparent 68%)}.page-hero .container{position:relative;z-index:2}.page-hero .display{max-width:900px}.page-hero p{font-size:1.06rem;color:#abc1d0;max-width:720px;margin-top:22px}.breadcrumb{display:flex;gap:7px;align-items:center;color:#7f9aae;font-size:.72rem;margin-bottom:26px}.breadcrumb a:hover{color:#fff}
/* feature/list layouts */
.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.image-frame{border-radius:28px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:var(--mist);min-height:440px}.image-frame img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.image-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,24,39,.22),transparent 45%)}.feature-list{display:grid;gap:15px;margin-top:25px}.feature-list li{display:grid;grid-template-columns:34px 1fr;gap:12px}.feature-list i{width:34px;height:34px;border-radius:10px;background:var(--ice);color:var(--royal);display:grid;place-items:center;font-style:normal;font-weight:900}.feature-list strong{display:block;font-size:.9rem}.feature-list span{font-size:.8rem;color:var(--muted)}.wide-card{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden}.wide-card .copy{padding:42px}.wide-card picture{min-height:420px}.wide-card img{width:100%;height:100%;object-fit:cover}.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:21px}
/* tables */
.matrix{overflow:auto;border:1px solid var(--line);border-radius:22px;background:#fff}.matrix table{width:100%;border-collapse:collapse;min-width:760px}.matrix th,.matrix td{padding:17px 20px;text-align:left;border-bottom:1px solid var(--line);font-size:.82rem}.matrix th{background:var(--ice);color:var(--ink);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.matrix td:not(:first-child){text-align:center}.matrix tr:last-child td{border-bottom:0}.yes{color:var(--success);font-weight:900}
/* forms */
.form-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}.contact-card{padding:34px;background:var(--ink);color:#fff;border-radius:28px;position:relative;overflow:hidden}.contact-card:after{content:"";position:absolute;width:320px;height:320px;right:-140px;bottom:-150px;border-radius:50%;background:radial-gradient(circle,rgba(36,200,238,.23),transparent 67%)}.contact-card h2{font-size:2rem;line-height:1.15;letter-spacing:-.04em}.contact-card>p{color:#a9bfce;margin-top:13px}.contact-options{display:grid;gap:12px;margin-top:30px;position:relative;z-index:2}.contact-option{padding:15px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);border-radius:14px}.contact-option small{display:block;color:#86a2b4;font-size:.66rem;text-transform:uppercase;letter-spacing:.1em}.contact-option strong{font-size:.87rem}.social-row{display:flex;gap:9px;margin-top:22px;position:relative;z-index:2}.social-row a{width:39px;height:39px;border-radius:11px;border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;color:#d6e7f1}.social-row a:hover{background:#fff;color:var(--royal)}.social-row svg{width:18px;height:18px}.form-card{padding:34px;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-sm)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.74rem;font-weight:800;color:var(--ink-2)}.field input,.field select,.field textarea{width:100%;border:1px solid #cddfea;background:#fbfdff;border-radius:12px;padding:12px 13px;outline:none;color:var(--text);transition:.2s}.field textarea{min-height:132px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--azure);box-shadow:0 0 0 4px rgba(2,153,226,.1);background:#fff}.form-note{font-size:.7rem;color:var(--muted);margin-top:14px}.form-status{min-height:22px;font-size:.76rem;margin-top:12px}.form-status.success{color:var(--success)}.form-status.error{color:#c64040}.honeypot{position:absolute!important;left:-9999px!important}
/* faq */
.faq{display:grid;gap:10px}.faq-item{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.faq-question{width:100%;border:0;background:transparent;padding:19px 21px;display:flex;justify-content:space-between;gap:20px;text-align:left;color:var(--text);font-weight:800}.faq-question span:last-child{font-size:1.25rem;color:var(--royal);transition:transform .2s}.faq-item.open .faq-question span:last-child{transform:rotate(45deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}.faq-answer p{padding:0 21px 20px;color:var(--muted);font-size:.86rem}
/* footer */
.site-footer{background:#061421;color:#fff;padding:72px 0 25px;position:relative}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,.7fr);gap:50px}.footer-brand{max-width:340px}.footer-brand .brand{margin-bottom:18px}.footer-brand p{font-size:.83rem;color:#8fa8b9}.footer-title{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#6f8da1;font-weight:850;margin-bottom:16px}.footer-links{display:grid;gap:10px}.footer-links a{font-size:.8rem;color:#afc2cf}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:50px;padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#6f8da1;font-size:.7rem}.footer-bottom-links{display:flex;gap:18px;flex-wrap:wrap}
/* cookie/back top/toast */
.cookie{position:fixed;left:20px;bottom:20px;width:min(430px,calc(100% - 40px));z-index:1800;padding:20px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);transform:translateY(140%);transition:.4s var(--ease)}.cookie.show{transform:none}.cookie h3{font-size:.93rem}.cookie p{font-size:.75rem;color:var(--muted);margin:6px 0 14px}.cookie .actions{gap:8px}.cookie .button{min-height:40px;padding:0 13px;font-size:.72rem}.back-top{position:fixed;right:20px;bottom:20px;width:44px;height:44px;border-radius:13px;border:0;background:var(--ink);color:#fff;display:grid;place-items:center;z-index:800;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s}.back-top.show{opacity:1;visibility:visible;transform:none}.back-top svg{width:18px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,120px);padding:12px 17px;border-radius:12px;background:var(--ink);color:#fff;z-index:1900;font-size:.78rem;box-shadow:var(--shadow);transition:.35s var(--ease)}.toast.show{transform:translate(-50%,0)}
/* legal */
.legal{max-width:850px}.legal h2{font-size:1.45rem;margin:34px 0 10px;letter-spacing:-.025em}.legal p,.legal li{color:var(--muted);font-size:.9rem}.legal ul{list-style:disc;padding-left:22px;display:grid;gap:7px;margin-top:10px}.legal .updated{display:inline-flex;padding:7px 10px;border-radius:999px;background:var(--ice);font-size:.7rem;color:var(--royal);font-weight:800}
/* responsive */
@media(max-width:1080px){.desktop-nav{display:none}.header-cta{display:none}.menu-button{display:grid}.header-actions{margin-left:auto}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;gap:64px}.hero-copy{max-width:760px}.hero-visual{width:min(100%,720px);margin:auto}.studio-shell{transform:none}.card-grid,.media-grid{grid-template-columns:repeat(2,1fr)}.signal-grid{grid-template-columns:repeat(2,1fr)}.signal:nth-child(2){border-right:0}.signal:nth-child(-n+2){border-bottom:1px solid var(--line)}.lab{grid-template-columns:1fr}.lab-nav{grid-template-columns:repeat(4,1fr)}.lab-tab{grid-template-columns:1fr;padding:14px}.lab-tab i{display:none}.lab-tab small{display:none}.process-grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}.footer-grid{grid-template-columns:1.2fr repeat(2,.8fr)}.footer-grid>div:last-child{grid-column:2}.split{gap:38px}}
@media(max-width:780px){:root{--header:68px}.container{width:min(calc(100% - 28px),var(--max))}.section{padding:78px 0}.section.compact{padding:58px 0}.brand-copy{display:none}.language-button{min-width:52px;padding:0 10px}.language-button .lang-code{display:none}.language-menu{position:fixed;left:14px;right:14px;top:78px;width:auto}.hero{padding:calc(var(--header) + 60px) 0 68px}.hero-grid{gap:46px}.display{font-size:clamp(2.35rem,11vw,4rem)}.hero-copy{font-size:.98rem}.hero-proof{gap:13px 20px}.studio-body{grid-template-columns:1fr}.studio-side{display:none}.floating-badge{display:none}.section-head{display:block}.section-head .button{margin-top:20px}.card-grid,.media-grid{grid-template-columns:1fr}.lab-nav{grid-template-columns:repeat(2,1fr)}.lab-panel{grid-template-columns:1fr}.tech-orbit{max-width:260px}.page-hero{padding:calc(var(--header) + 55px) 0 58px}.split,.wide-card,.form-shell{grid-template-columns:1fr}.split .image-frame{order:-1}.image-frame{min-height:350px}.wide-card picture{min-height:320px}.wide-card .copy{padding:30px}.process-grid{grid-template-columns:1fr}.cta-panel{grid-template-columns:1fr;padding:36px 28px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom-links{margin-top:10px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}
@media(max-width:520px){.container{width:min(calc(100% - 22px),var(--max))}.section{padding:68px 0}.site-header .container{width:calc(100% - 20px)}.brand img{width:40px;height:40px}.header-actions{gap:6px}.language-button,.menu-button{width:41px;height:41px;min-width:41px}.hero{padding-bottom:58px}.hero .actions{display:grid;grid-template-columns:1fr}.hero .button{width:100%}.hero-proof{display:grid;grid-template-columns:1fr}.studio-shell{border-radius:20px}.studio-body{padding:13px}.metric-row{gap:6px}.metric{padding:9px}.metric strong{font-size:.82rem}.chart-card{height:140px}.studio-bottom{grid-template-columns:1fr}.studio-bottom .mini-panel:last-child{display:none}.signal-grid{grid-template-columns:1fr}.signal{border-right:0!important;border-bottom:1px solid var(--line)!important}.signal:last-child{border-bottom:0!important}.card,.media-content,.process-card{padding:22px}.lab-nav{display:flex;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}.lab-tab{min-width:140px}.lab-stage{padding:27px 22px;min-height:auto}.lab-panel{min-height:auto}.tech-orbit{margin-top:22px}.stats{grid-template-columns:1fr}.stat{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.1)!important}.stat:last-child{border-bottom:0!important}.cta-panel{border-radius:22px}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-grid>div:last-child{grid-column:auto}.form-card,.contact-card{padding:25px}.cookie{left:11px;bottom:11px;width:calc(100% - 22px)}.back-top{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.site-loader{display:none}}
.ambient-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.52;pointer-events:none}.hero>.container,.page-hero>.container{position:relative;z-index:2}.no-js .site-loader{display:none}.skip-link{position:fixed;left:15px;top:-70px;z-index:10000;background:#fff;color:var(--ink);padding:10px 14px;border-radius:10px;font-weight:800}.skip-link:focus{top:12px}.icon-svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Google Translate is powered by the hidden official widget; Obliqwave supplies the visible flag menu. */
.google-translate-element{position:fixed!important;left:-9999px!important;top:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.goog-te-banner-frame.skiptranslate,.goog-te-banner-frame{display:none!important}
body{top:0!important}
#goog-gt-tt,.goog-te-balloon-frame,.goog-te-spinner-pos{display:none!important}
.goog-text-highlight{background:transparent!important;box-shadow:none!important}
.translation-pending:after{content:"";position:fixed;inset:0;z-index:1750;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(51,195,255,.07),transparent);transform:translateX(-100%);animation:translationSweep 1.1s ease-in-out infinite}
@keyframes translationSweep{to{transform:translateX(100%)}}

/* ======================================================================
   OBLIQWAVE V7 — CLEAN FUTURE SYSTEM
   Visual language: precision navy, signal blue, luminous cyan, ice white.
   ====================================================================== */
:root{
  --ink:#071c2f;
  --ink-2:#0a2942;
  --ink-3:#103b59;
  --royal:#0d67ff;
  --azure:#10aef0;
  --cyan:#55dcff;
  --cyan-soft:#b9f2ff;
  --teal:#30dccf;
  --paper:#f6fbff;
  --ice:#eaf6fd;
  --mist:#d8eaf5;
  --surface:#ffffff;
  --surface-soft:#f0f8fd;
  --text:#0a2539;
  --muted:#587083;
  --line:#cfe3ef;
  --line-strong:#b7d5e5;
  --success:#0aa77e;
  --danger:#d84862;
  --shadow-sm:0 12px 34px rgba(4,38,61,.08);
  --shadow:0 28px 80px rgba(4,38,61,.15);
  --shadow-blue:0 22px 55px rgba(13,103,255,.22);
  --radius:26px;
  --radius-sm:17px;
  --max:1240px;
  --header:78px;
  --ease:cubic-bezier(.2,.8,.2,1);
}
html{background:var(--ink);}
body{
  background:
    radial-gradient(circle at 15% 8%,rgba(85,220,255,.08),transparent 22rem),
    linear-gradient(180deg,var(--paper),#fff 52%,var(--paper));
  color:var(--text);
  font-size:16px;
}
body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.42;
  background-image:linear-gradient(rgba(7,28,47,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(7,28,47,.025) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,#000,transparent 70%);
}
.container{width:min(calc(100% - 44px),var(--max));}
.section{padding:112px 0;}
.section.alt{background:linear-gradient(180deg,#edf8fe 0%,#f8fcff 100%);border-block:1px solid rgba(183,213,229,.45);}
.section.dark{
  background:
    radial-gradient(circle at 80% 20%,rgba(16,174,240,.13),transparent 28rem),
    linear-gradient(135deg,#061726,#0a2438 58%,#08243a);
}
.section.dark::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(85,220,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(85,220,255,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to bottom,#000,transparent);pointer-events:none;}
.section-head{align-items:flex-end;margin-bottom:52px;}
.section-title{font-weight:880;letter-spacing:-.052em;}
.section-copy{font-size:1.06rem;line-height:1.82;color:#587286;}
.section-kicker{color:var(--royal);font-weight:900;letter-spacing:.155em;}
.button{border-radius:14px;min-height:50px;padding:0 19px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:850;letter-spacing:-.01em;position:relative;overflow:hidden;isolation:isolate;}
.button::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.3) 48%,transparent 72%);transform:translateX(-130%);transition:transform .7s var(--ease);}
.button:hover::before{transform:translateX(130%);}
.button.primary{background:linear-gradient(135deg,#1559de 0%,#0c86e5 55%,#08b7e9 100%);box-shadow:0 14px 34px rgba(10,116,225,.25);border:1px solid rgba(255,255,255,.16);}
.button.primary:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(10,116,225,.34);}
.button.ghost{background:rgba(255,255,255,.055);border-color:rgba(188,231,249,.2);}
.button.secondary{background:#fff;border-color:var(--line);box-shadow:var(--shadow-sm);}

/* Loader — concise, premium and highly animated */
.site-loader{
  background:linear-gradient(135deg,#04131f 0%,#071f34 50%,#082942 100%);
  isolation:isolate;
  transition:opacity .7s var(--ease),visibility .7s;
}
.site-loader::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 48%,rgba(13,103,255,.16),transparent 28rem);}
.loader-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.8;}
.loader-grid{background-image:linear-gradient(rgba(85,220,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(85,220,255,.045) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(circle at center,#000 0,transparent 78%);animation:loaderGridDrift 12s linear infinite;}
.loader-aurora{position:absolute;width:44vw;aspect-ratio:1;border-radius:50%;filter:blur(90px);opacity:.18;animation:loaderAurora 7s ease-in-out infinite alternate;}
.loader-aurora-a{background:#0d67ff;left:-8vw;top:-18vw;}
.loader-aurora-b{background:#20d8f5;right:-12vw;bottom:-22vw;animation-delay:-3.5s;}
.loader-scan{position:absolute;inset:-20% 0 auto;height:30%;background:linear-gradient(to bottom,transparent,rgba(85,220,255,.07),transparent);animation:loaderScan 3.6s linear infinite;}
.loader-shell{width:min(90vw,610px);padding:38px 42px 34px;border:1px solid rgba(152,220,245,.13);border-radius:34px;background:linear-gradient(145deg,rgba(9,35,56,.78),rgba(5,22,36,.52));box-shadow:0 36px 110px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.05);backdrop-filter:blur(22px);overflow:hidden;}
.loader-shell::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,transparent 20%,rgba(85,220,255,.075),transparent 72%);animation:loaderSheen 4.8s ease-in-out infinite;}
.loader-brand-lockup{display:flex;align-items:center;justify-content:center;gap:22px;margin-bottom:27px;}
.loader-mark{width:104px;height:104px;margin:0;flex:0 0 104px;}
.loader-mark img{width:78px;height:78px;border-radius:0;object-fit:cover;clip-path:circle(47%);box-shadow:0 0 48px rgba(20,181,241,.26);animation:loaderLogoFloat 3.2s ease-in-out infinite;}
.loader-mark::before,.loader-mark::after{display:none;}
.loader-orbit{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(85,220,255,.28);}
.loader-orbit-a{animation:loaderSpin 7s linear infinite;border-style:dashed;}
.loader-orbit-b{inset:12px;border-color:rgba(13,103,255,.5);animation:loaderSpin 5s linear infinite reverse;}
.loader-orbit-c{inset:-12px;border-color:rgba(48,220,207,.18);animation:loaderPulseRing 2.7s ease-in-out infinite;}
.loader-node{position:absolute;width:7px;height:7px;border-radius:50%;background:#55dcff;box-shadow:0 0 18px #55dcff;}
.loader-node-a{left:4px;top:47px;animation:loaderNodeA 7s linear infinite;}
.loader-node-b{right:15px;top:13px;background:#0d67ff;box-shadow:0 0 18px #0d67ff;animation:loaderNodeB 5s linear infinite;}
.loader-node-c{left:49px;bottom:-15px;background:#30dccf;box-shadow:0 0 18px #30dccf;animation:loaderNodeC 4.4s linear infinite;}
.loader-wordmark{text-align:left;line-height:1;}
.loader-wordmark strong{display:block;font-size:clamp(1.15rem,3vw,1.75rem);letter-spacing:.11em;font-weight:950;color:#fff;}
.loader-wordmark span{display:block;margin-top:9px;color:#a8eaff;font-size:.72rem;font-weight:850;letter-spacing:.22em;}
.loader-kicker{color:#62def8;font-size:.7rem;letter-spacing:.2em;margin-bottom:11px;}
.loader-title{font-size:clamp(1.75rem,5vw,3rem);font-weight:880;letter-spacing:-.052em;margin:0 0 10px;min-height:1.15em;}
.loader-title span{display:block;animation:loaderHeadline .65s var(--ease);}
.loader-copy{color:#a8c1d1;line-height:1.65;}
.loader-terminal{margin-top:29px;padding:11px 13px;border:1px solid rgba(151,219,244,.12);border-radius:12px;background:rgba(2,14,24,.48);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:#b9cfdb;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem;text-align:left;}
.loader-terminal-dot{width:7px;height:7px;border-radius:50%;background:#30dccf;box-shadow:0 0 14px #30dccf;animation:statusPulse 1.1s ease-in-out infinite;}
.loader-terminal strong{color:#fff;font-size:.75rem;}
.loader-track{height:5px;background:rgba(255,255,255,.08);margin-top:12px;position:relative;}
.loader-track span{background:linear-gradient(90deg,#0d67ff,#10aef0,#55dcff);box-shadow:0 0 22px rgba(85,220,255,.68);transition:width .15s linear;position:relative;}
.loader-track span::after{content:"";position:absolute;right:-4px;top:50%;transform:translateY(-50%);width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 20px #55dcff;}
.loader-modules{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px;}
.loader-modules span{display:flex;align-items:center;justify-content:center;gap:7px;min-height:31px;border:1px solid rgba(160,224,247,.1);border-radius:9px;background:rgba(255,255,255,.025);font-size:.64rem;color:#86aabd;letter-spacing:.035em;}
.loader-modules i{width:5px;height:5px;border-radius:50%;background:#24465d;transition:.3s;}
.loader-modules span.ready{color:#c8f7ff;border-color:rgba(48,220,207,.22);background:rgba(48,220,207,.055);}
.loader-modules span.ready i{background:#30dccf;box-shadow:0 0 10px #30dccf;}
@keyframes loaderGridDrift{to{background-position:64px 64px}}
@keyframes loaderAurora{to{transform:translate(5vw,-3vw) scale(1.18);opacity:.28}}
@keyframes loaderScan{0%{transform:translateY(-30vh)}100%{transform:translateY(130vh)}}
@keyframes loaderSheen{0%,55%{transform:translateX(-130%)}100%{transform:translateX(130%)}}
@keyframes loaderLogoFloat{50%{transform:translateY(-5px) scale(1.025)}}
@keyframes loaderPulseRing{50%{transform:scale(1.08);opacity:.4}}
@keyframes loaderNodeA{to{transform:rotate(360deg) translateX(48px) rotate(-360deg)}}
@keyframes loaderNodeB{to{transform:rotate(-360deg) translateX(31px) rotate(360deg)}}
@keyframes loaderNodeC{50%{transform:translateY(-8px);opacity:.45}}
@keyframes loaderHeadline{from{opacity:0;transform:translateY(10px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@keyframes statusPulse{50%{opacity:.35;transform:scale(.72)}}

/* Header and brand */
.site-header{height:var(--header);}
.site-header.scrolled,.site-header.inner{background:rgba(5,23,38,.9);border-bottom-color:rgba(144,218,244,.12);box-shadow:0 10px 40px rgba(0,12,23,.16);}
.nav-wrap{gap:25px;}
.brand{gap:12px;}
.brand img{width:47px!important;height:47px!important;border-radius:0!important;object-fit:cover;clip-path:circle(47%);filter:drop-shadow(0 0 14px rgba(16,174,240,.18));}
.brand-copy strong{font-size:.94rem;font-weight:950;letter-spacing:.095em;text-transform:uppercase;color:#fff;}
.brand-copy small{font-size:.62rem;font-weight:850;letter-spacing:.18em;color:#c1e9f8;margin-top:6px;opacity:.9;}
.desktop-nav>a,.nav-drop>button{font-weight:780;color:#c5dbe8;}
.header-cta{border-radius:13px;background:linear-gradient(135deg,#1663ef,#08aee4);}

/* Language selector — one name, one flag, no duplicate labels */
.language-button{min-width:172px;height:48px;border-radius:14px;padding:0 12px 0 10px;background:rgba(255,255,255,.055);border-color:rgba(167,225,246,.14);gap:10px;}
.flag-badge{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);font-size:1rem;line-height:1;flex:0 0 auto;}
.language-current{display:flex;flex-direction:column;align-items:flex-start;line-height:1.03;min-width:0;}
.language-current small{font-size:.54rem;text-transform:uppercase;letter-spacing:.14em;color:#7facc4;font-weight:800;}
.language-current strong{font-size:.77rem;color:#effbff;font-weight:850;margin-top:5px;white-space:nowrap;}
.language-button svg{width:15px;stroke-width:2.2;}
.language-menu{width:270px;padding:9px;border-radius:19px;box-shadow:0 28px 80px rgba(2,25,42,.28);border-color:#cfe4ef;overflow:hidden;}
.language-menu-head{padding:9px 10px 12px;border-bottom:1px solid #e3eff5;margin-bottom:5px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.language-menu-head strong{font-size:.82rem;color:var(--ink);}
.language-menu-head span{font-size:.62rem;color:#6c8494;background:#eef7fb;border-radius:999px;padding:4px 7px;}
.language-menu button{grid-template-columns:34px 1fr auto;min-height:48px;padding:7px 9px;border-radius:12px;gap:10px;transition:.2s var(--ease);}
.language-menu button:hover{transform:translateX(3px);background:#eef8fd;}
.language-menu button.active{background:linear-gradient(90deg,#e7f5fe,#f5fbff);box-shadow:inset 3px 0 #0d67ff;}
.language-menu .native{font-size:.84rem;font-weight:850;color:#0a2539;}
.language-menu .check{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#0d67ff;color:#fff;font-size:.68rem;transform:scale(.75);transition:.2s;}
.language-menu button.active .check{transform:scale(1);}
.language-note{font-size:.62rem;line-height:1.45;color:#718796;padding:9px 10px 6px;border-top:1px solid #e3eff5;margin-top:5px;}

/* Hero — animated headline and living product interface */
.hero{min-height:760px;padding-top:calc(var(--header) + 70px);padding-bottom:82px;background:
  radial-gradient(circle at 82% 32%,rgba(18,137,215,.19),transparent 31rem),
  radial-gradient(circle at 20% 15%,rgba(13,103,255,.08),transparent 25rem),
  linear-gradient(135deg,#061726 0%,#071c2f 48%,#082942 100%);}
.hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(104,210,247,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(104,210,247,.04) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(to bottom,#000,transparent 93%);pointer-events:none;}
.hero-grid{grid-template-columns:minmax(0,.98fr) minmax(500px,1.02fr);gap:66px;position:relative;z-index:2;}
.hero-copy-block{padding-top:18px;}
.hero-headline{min-height:3.35em;display:flex;flex-direction:column;gap:.04em;overflow:visible;}
.headline-static{display:block;color:#fff;}
.headline-window{display:block;position:relative;min-height:1.15em;margin-top:.02em;overflow:hidden;padding-bottom:.05em;}
.headline-phrase{position:relative;display:inline-block;max-width:100%;background:linear-gradient(100deg,#effcff 0%,#9cecff 34%,#36c9f2 70%,#1684ff 100%);background-size:170% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;opacity:1;transform:none;filter:none;transition:opacity .45s var(--ease),transform .45s var(--ease),filter .45s var(--ease);will-change:opacity,transform;}
.headline-phrase.is-active{opacity:1;transform:none;filter:none;animation:headlineGradient 6s ease-in-out infinite alternate;}
.headline-phrase.is-switching{opacity:0;transform:translateY(14px);filter:blur(6px);}
@keyframes headlineGradient{to{background-position:100% 0}}
.hero-copy{font-size:1.08rem;line-height:1.78;color:#b5cad8;max-width:625px;}
.hero-proof{gap:20px;}
.proof-item{color:#d5e8f2;font-weight:760;}
.proof-item i{width:23px;height:23px;background:rgba(48,220,207,.11);color:#5ae8d6;border:1px solid rgba(48,220,207,.15);}
.hero-visual{perspective:1200px;transform-style:preserve-3d;}
.studio-shell{border-color:rgba(112,209,244,.2);background:linear-gradient(145deg,rgba(12,48,74,.96),rgba(6,31,50,.94));box-shadow:0 36px 90px rgba(0,8,18,.4),inset 0 1px rgba(255,255,255,.04);overflow:hidden;transform:translateZ(0);transition:transform .25s ease;}
.studio-shell::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 15%,rgba(80,216,255,.045),transparent 75%);animation:studioSheen 6.5s ease-in-out infinite;pointer-events:none;}
.studio-top{border-bottom-color:rgba(146,220,245,.11);}
.studio-status::before{content:"";width:7px;height:7px;border-radius:50%;background:#30dccf;box-shadow:0 0 14px #30dccf;margin-right:7px;display:inline-block;animation:statusPulse 1.2s ease-in-out infinite;}
.studio-side span{transition:.35s var(--ease);position:relative;overflow:hidden;}
.studio-side span.active{background:linear-gradient(90deg,rgba(13,103,255,.22),rgba(16,174,240,.11));box-shadow:inset 3px 0 #24cfff;transform:translateX(4px);}
.metric{position:relative;overflow:hidden;}
.metric::after{content:"";position:absolute;inset:auto 10px 0;height:2px;background:linear-gradient(90deg,#0d67ff,#55dcff);transform:scaleX(0);transform-origin:left;animation:metricLine 3.2s ease-in-out infinite;}
.metric strong{font-variant-numeric:tabular-nums;}
.chart-card{overflow:hidden;}
.chart-line path{fill:none;stroke:url(#chartGradient);stroke-width:3;vector-effect:non-scaling-stroke;stroke-dasharray:800;stroke-dashoffset:800;animation:drawChart 2.2s .8s var(--ease) forwards,chartGlow 2.4s 3s ease-in-out infinite alternate;}
.chart-line circle{fill:#55dcff;filter:drop-shadow(0 0 8px #55dcff);animation:chartPoint 1.4s ease-in-out infinite alternate;}
.bars i{transform-origin:bottom;animation:barPulse 2.4s ease-in-out infinite;}
.bars i:nth-child(2){animation-delay:-.4s}.bars i:nth-child(3){animation-delay:-.8s}.bars i:nth-child(4){animation-delay:-1.2s}.bars i:nth-child(5){animation-delay:-1.6s}
.code-lines i{animation:codeScan 2.8s ease-in-out infinite;}.code-lines i:nth-child(2){animation-delay:-.7s}.code-lines i:nth-child(3){animation-delay:-1.4s}
.floating-badge{animation:badgeFloat 4s ease-in-out infinite;box-shadow:0 18px 50px rgba(0,14,26,.3);}
.floating-badge.two{animation-delay:-2s;}
.studio-scan{position:absolute;left:0;right:0;height:64px;top:-80px;background:linear-gradient(to bottom,transparent,rgba(85,220,255,.085),transparent);animation:studioScan 5s linear infinite;pointer-events:none;}
.studio-corner{position:absolute;width:28px;height:28px;border-color:#55dcff;opacity:.55;}
.corner-a{left:14px;top:14px;border-left:1px solid;border-top:1px solid;}.corner-b{right:14px;bottom:14px;border-right:1px solid;border-bottom:1px solid;}
@keyframes studioSheen{0%,60%{transform:translateX(-125%)}100%{transform:translateX(125%)}}
@keyframes metricLine{0%,25%{transform:scaleX(0)}60%,100%{transform:scaleX(1)}}
@keyframes drawChart{to{stroke-dashoffset:0}}
@keyframes chartGlow{to{filter:drop-shadow(0 0 7px rgba(85,220,255,.7))}}
@keyframes chartPoint{to{r:6}}
@keyframes barPulse{50%{transform:scaleY(.65);filter:brightness(1.3)}}
@keyframes codeScan{50%{transform:scaleX(.65);opacity:.45}}
@keyframes badgeFloat{50%{transform:translateY(-9px)}}
@keyframes studioScan{to{transform:translateY(620px)}}

/* Signal strip and content cards */
.signal-strip{background:#fff;border-bottom:1px solid #dcebf3;box-shadow:0 10px 34px rgba(4,38,61,.04);}
.signal{transition:.3s var(--ease);}
.signal:hover{transform:translateY(-4px);}
.signal-icon{background:linear-gradient(145deg,#eaf7ff,#fff);border-color:#d0e7f2;box-shadow:0 10px 25px rgba(11,91,144,.08);}
.card,.media-card,.service-card,.solution-card,.industry-card,.process-card,.value-card{border-color:var(--line);box-shadow:0 18px 54px rgba(4,38,61,.07);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s;}
.card:hover,.media-card:hover,.service-card:hover,.solution-card:hover,.industry-card:hover,.process-card:hover,.value-card:hover{transform:translateY(-8px);box-shadow:0 28px 74px rgba(4,38,61,.14);border-color:#a9d6e9;}
.media-card img{transition:transform .8s var(--ease),filter .8s;}
.media-card:hover img{transform:scale(1.055);filter:saturate(1.08) contrast(1.03);}

/* Animated stats */
.stats{border-color:rgba(144,218,244,.16);background:rgba(255,255,255,.025);backdrop-filter:blur(14px);overflow:hidden;}
.stats::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,rgba(85,220,255,.04),transparent 75%);animation:statsSheen 7s ease-in-out infinite;pointer-events:none;}
.stat{position:relative;transition:.35s var(--ease);overflow:hidden;}
.stat::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#55dcff,transparent);transform:scaleX(0);transition:transform .55s var(--ease);}
.stat:hover{background:rgba(85,220,255,.045);transform:translateY(-4px);}
.stat:hover::after,.stats.is-counted .stat::after{transform:scaleX(1);}
.stat strong{display:block;background:linear-gradient(110deg,#fff,#b8f2ff 55%,#55dcff);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums;opacity:0;transform:translateY(16px);transition:.65s var(--ease);}
.stats.is-counted .stat strong{opacity:1;transform:none;}
.stats.is-counted .stat:nth-child(2) strong{transition-delay:.12s}.stats.is-counted .stat:nth-child(3) strong{transition-delay:.24s}.stats.is-counted .stat:nth-child(4) strong{transition-delay:.36s}
.stat span{opacity:.75;transform:translateY(8px);transition:.55s .25s var(--ease);}
.stats.is-counted .stat span{opacity:1;transform:none;}
.infinity-value{animation:infinityPulse 2.4s ease-in-out infinite;}
@keyframes statsSheen{0%,60%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@keyframes infinityPulse{50%{filter:drop-shadow(0 0 12px rgba(85,220,255,.55));transform:scale(1.07)}}

/* Social media — official platform colours */
.social-row{gap:10px;}
.social-row a{width:43px;height:43px;border-radius:13px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 20px rgba(4,38,61,.07);transition:.3s var(--ease);position:relative;overflow:hidden;}
.social-row a svg{width:20px;height:20px;position:relative;z-index:2;}
.social-row a::before{content:"";position:absolute;inset:0;opacity:.1;transition:.3s;}
.social-row a:hover{transform:translateY(-5px) rotate(-2deg);box-shadow:0 16px 34px rgba(4,38,61,.18);border-color:transparent;}
.social-row a:hover::before{opacity:1;}
.social-instagram svg{stroke:#e1306c!important;}.social-instagram::before{background:radial-gradient(circle at 30% 110%,#ffd600 0 22%,#ff7a00 34%,#ff0169 56%,#d300c5 72%,#7638fa 100%);}.social-instagram:hover svg{stroke:#fff!important;}
.social-facebook svg{stroke:#1877f2!important;}.social-facebook::before{background:#1877f2;}.social-facebook:hover svg{stroke:#fff!important;}
.social-linkedin svg{stroke:#0a66c2!important;}.social-linkedin::before{background:#0a66c2;}.social-linkedin:hover svg{stroke:#fff!important;}
.social-x svg{stroke:#101010!important;}.social-x::before{background:#050505;}.social-x:hover svg{stroke:#fff!important;}
.site-footer .social-row a{background:rgba(255,255,255,.05);border-color:rgba(190,229,244,.13);box-shadow:none;}
.site-footer .social-x svg{stroke:#fff!important;}

/* Page heroes and consistent inner-page flow */
.page-hero{background:
  radial-gradient(circle at 80% 22%,rgba(16,174,240,.17),transparent 30rem),
  linear-gradient(135deg,#061726,#081f34 58%,#0a2a43);min-height:470px;display:flex;align-items:center;position:relative;overflow:hidden;}
.page-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(85,220,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(85,220,255,.04) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,#000,transparent);pointer-events:none;}
.page-hero .container{position:relative;z-index:2;}
.page-hero .display{max-width:950px;}
.page-hero p{max-width:800px;color:#b9cfdd;font-size:1.08rem;line-height:1.8;}
.breadcrumb{color:#87a7ba;}
.breadcrumb a:hover{color:#55dcff;}
.cta-panel{background:linear-gradient(135deg,#081e32,#0a3150);box-shadow:0 28px 80px rgba(4,38,61,.2);border:1px solid rgba(129,216,247,.14);}

/* Project enquiry form */
.form-shell{grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);align-items:start;gap:30px;}
.contact-card{position:sticky;top:calc(var(--header) + 24px);background:linear-gradient(155deg,#071c2f,#0a2c48);color:#fff;border-color:rgba(137,220,248,.12);box-shadow:0 28px 80px rgba(4,38,61,.2);}
.contact-card h2{letter-spacing:-.035em;}
.contact-card p{color:#b9cfdd;}
.contact-option{background:rgba(255,255,255,.045);border-color:rgba(166,224,245,.12);}
.contact-option:hover{background:rgba(85,220,255,.075);border-color:rgba(85,220,255,.23);transform:translateX(5px);}
.form-card-premium{padding:0!important;border-radius:30px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 90px rgba(4,38,61,.13);overflow:hidden;}
.form-intro{padding:30px 32px;display:flex;align-items:flex-start;justify-content:space-between;gap:26px;background:linear-gradient(135deg,#071c2f,#0a3150);color:#fff;position:relative;overflow:hidden;}
.form-intro::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(85,220,255,.18),transparent 68%);right:-80px;top:-110px;}
.form-intro>div:first-child{position:relative;z-index:1;max-width:590px;}
.form-eyebrow{display:inline-block;color:#76e6ff;font-size:.69rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:9px;}
.form-intro h2{font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.12;letter-spacing:-.04em;}
.form-intro p{color:#b8cedb;margin-top:9px;line-height:1.65;font-size:.9rem;}
.form-progress{position:relative;z-index:1;width:94px;flex:0 0 94px;text-align:right;}
.form-progress strong{font-size:1.4rem;color:#fff;font-variant-numeric:tabular-nums;}
.form-progress>span{display:block;height:5px;margin:8px 0 5px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden;}
.form-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#0d67ff,#55dcff);transition:width .35s var(--ease);}
.form-progress small{font-size:.61rem;color:#8fb3c7;text-transform:uppercase;letter-spacing:.11em;font-weight:800;}
.form-section-head{display:flex;align-items:center;gap:13px;margin:30px 32px 17px;padding-bottom:13px;border-bottom:1px solid #e3eef4;}
.form-section-head>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,#0d67ff,#10aef0);color:#fff;font-size:.7rem;font-weight:900;box-shadow:0 9px 22px rgba(13,103,255,.2);}
.form-section-head div{display:flex;flex-direction:column;line-height:1.1;}
.form-section-head strong{font-size:.91rem;color:#09243a;}
.form-section-head small{font-size:.69rem;color:#708696;margin-top:5px;}
.form-card-premium>.form-grid,.form-card-premium>.project-choice-fieldset,.form-card-premium>.field.full{margin-inline:32px;}
.form-grid{gap:18px;}
.form-grid-spaced{margin-top:22px;}
.field label{font-size:.75rem;font-weight:850;color:#0b2a40;margin-bottom:8px;}
.field label em{font-style:normal;color:#0d67ff;}
.field input,.field select,.field textarea{border:1px solid #c9dfeb;background:#f9fcfe;color:#0a2539;border-radius:14px;min-height:53px;padding:13px 15px;font-size:.91rem;box-shadow:inset 0 1px 2px rgba(6,36,56,.025);transition:border-color .2s,box-shadow .2s,background .2s,transform .2s;}
.field textarea{min-height:160px;resize:vertical;line-height:1.65;}
.field input::placeholder,.field textarea::placeholder{color:#8194a1;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:#17a9e8;background:#fff;box-shadow:0 0 0 4px rgba(16,174,240,.11),0 12px 30px rgba(4,38,61,.07);transform:translateY(-1px);}
.field-icon{position:relative;}
.field-state{position:absolute;right:14px;bottom:15px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#0aa77e;color:#fff;font-size:.66rem;opacity:0;transform:scale(.6);transition:.2s;}
.field-icon:has(input:valid:not(:placeholder-shown)) .field-state{opacity:1;transform:scale(1);}
.field-icon input{padding-right:43px;}
.select-wrap{position:relative;}
.select-wrap::after{content:"⌄";position:absolute;right:16px;top:50%;transform:translateY(-55%);pointer-events:none;color:#0d67ff;font-size:1.2rem;font-weight:800;}
.select-wrap select{appearance:none;width:100%;padding-right:42px;}
.project-choice-fieldset{border:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.project-choice{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:11px;align-items:center;min-height:116px;padding:15px;border:1px solid #d3e4ed;border-radius:17px;background:linear-gradient(145deg,#fbfdff,#f3f9fd);cursor:pointer;transition:.28s var(--ease);overflow:hidden;}
.project-choice::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,103,255,.08),rgba(85,220,255,.09));opacity:0;transition:.25s;}
.project-choice:hover{transform:translateY(-4px);border-color:#8fcce5;box-shadow:0 16px 34px rgba(4,38,61,.09);}
.project-choice:has(input:checked){border-color:#16a9e8;box-shadow:0 0 0 3px rgba(16,174,240,.1),0 18px 38px rgba(4,38,61,.1);background:#fff;}
.project-choice:has(input:checked)::before{opacity:1;}
.project-choice input{position:absolute;opacity:0;pointer-events:none;}
.project-choice-icon{position:relative;z-index:1;grid-row:1/3;display:grid;place-items:center;width:41px;height:41px;border-radius:12px;background:#e7f4fc;color:#0d67ff;font-size:.63rem;font-weight:950;letter-spacing:.06em;transition:.25s;}
.project-choice:has(input:checked) .project-choice-icon{background:linear-gradient(135deg,#0d67ff,#10aef0);color:#fff;box-shadow:0 8px 20px rgba(13,103,255,.22);}
.project-choice strong,.project-choice small{position:relative;z-index:1;}
.project-choice strong{font-size:.8rem;line-height:1.2;color:#08243a;padding-right:21px;}
.project-choice small{font-size:.66rem;line-height:1.42;color:#6a8190;margin-top:5px;}
.project-choice>i{position:absolute;right:11px;top:11px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#0aa77e;color:#fff;font-size:.62rem;font-style:normal;opacity:0;transform:scale(.55);transition:.22s;}
.project-choice:has(input:checked)>i{opacity:1;transform:scale(1);}
.message-field{position:relative;}
.field-meta{display:flex;justify-content:space-between;gap:12px;color:#7b909e;font-size:.66rem;margin-top:7px;}
.field-meta b{color:#0d67ff;}
.upload-field{margin-top:20px;}
.upload-field>label:first-child span{font-weight:650;color:#8194a1;margin-left:5px;}
.upload-drop{min-height:93px!important;border:1.5px dashed #a9cfe0!important;border-radius:17px!important;background:#f5fbfe!important;display:flex!important;align-items:center;gap:14px;padding:16px!important;cursor:pointer;transition:.25s!important;}
.upload-drop:hover,.upload-drop.is-dragging{border-color:#10aef0!important;background:#eef9fe!important;box-shadow:0 12px 30px rgba(4,38,61,.06);}
.upload-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:#e4f4fc;color:#0d67ff;font-size:1.35rem;}
.upload-drop div{flex:1;display:flex;flex-direction:column;line-height:1.25;}
.upload-drop strong{font-size:.8rem;color:#0b2a40;}
.upload-drop small{font-size:.66rem;color:#718898;margin-top:6px;}
.upload-drop>b{padding:8px 11px;border-radius:10px;background:#fff;border:1px solid #cae0eb;color:#0d67ff;font-size:.7rem;}
.form-submit-area{margin-top:28px;padding:24px 32px 30px;border-top:1px solid #e1edf3;background:#f8fcfe;}
.form-trust{display:flex;align-items:flex-start;gap:10px;margin-bottom:17px;}
.form-trust>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e5f8f3;color:#0aa77e;font-size:.68rem;font-weight:900;flex:0 0 auto;}
.form-trust p{font-size:.69rem;line-height:1.55;color:#6f8492;}
.form-submit{width:100%;justify-content:space-between;padding-inline:21px;min-height:56px;}
.form-submit i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.15);font-style:normal;transition:.25s;}
.form-submit:hover i{transform:translateX(4px);background:rgba(255,255,255,.23);}
.form-submit.is-sending i{animation:submitSpin 1s linear infinite;}
.form-status{margin-top:12px;text-align:center;font-size:.76rem;font-weight:750;}
.form-status.success{color:#0a8a68;}.form-status.error{color:#c23b55;}
@keyframes submitSpin{to{transform:rotate(360deg)}}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}

/* Animated guide */
.site-guide{
  position:fixed;left:22px;bottom:22px;z-index:1800;
  font-family:Inter,"Segoe UI",sans-serif;
  opacity:1;visibility:visible;transform:translate3d(0,0,0) scale(1);
  transition:opacity .34s var(--ease),transform .42s var(--ease),visibility .34s;
  will-change:opacity,transform;
}
.site-guide.is-footer-hidden{
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translate3d(0,30px,0) scale(.94);
}
.guide-trigger{
  position:relative;isolation:isolate;display:flex;align-items:center;gap:12px;
  min-height:64px;padding:8px 14px 8px 8px;
  border:1px solid rgba(105,206,242,.24);border-radius:20px;
  background:
    radial-gradient(circle at 18% 15%,rgba(42,205,255,.15),transparent 34%),
    linear-gradient(135deg,rgba(5,24,42,.98),rgba(8,49,78,.97));
  color:#fff;box-shadow:0 20px 58px rgba(0,18,32,.34),inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(18px);overflow:visible;
  transition:transform .34s var(--ease),box-shadow .34s var(--ease),border-color .34s var(--ease);
}
.guide-trigger::before{
  content:"";position:absolute;inset:1px;border-radius:19px;pointer-events:none;z-index:-1;
  background:linear-gradient(112deg,transparent 15%,rgba(117,231,255,.08) 42%,transparent 68%);
  background-size:220% 100%;animation:guideTriggerSheen 7s ease-in-out infinite;
}
.guide-trigger:hover,.guide-trigger:focus-visible{
  transform:translateY(-5px);
  border-color:rgba(107,226,255,.42);
  box-shadow:0 28px 72px rgba(0,18,32,.44),0 0 0 1px rgba(85,220,255,.13),0 0 32px rgba(16,174,240,.11);
}
.guide-trigger:focus-visible{outline:2px solid #73e3ff;outline-offset:4px;}
.guide-avatar{
  position:relative;display:grid;place-items:center;width:48px;height:48px;
  border-radius:16px;flex:0 0 auto;overflow:visible;isolation:isolate;
  background:
    radial-gradient(circle at 38% 28%,rgba(48,220,255,.16),transparent 40%),
    linear-gradient(145deg,#0b2d49,#061a2c 70%);
  box-shadow:inset 0 0 0 1px rgba(139,229,255,.16),inset 0 -8px 18px rgba(0,15,32,.24),0 8px 20px rgba(0,15,30,.22);
}
.guide-avatar::before{
  content:"";position:absolute;inset:3px;z-index:0;pointer-events:none;
  background:#28d9ff;
  -webkit-mask:url("logo-mark.png") center/contain no-repeat;
  mask:url("logo-mark.png") center/contain no-repeat;
  filter:blur(7px);opacity:.22;transform:scale(.96);
  animation:guideLogoAura 3.8s ease-in-out infinite;
}
.guide-avatar::after{
  content:"";position:absolute;inset:3px;z-index:3;pointer-events:none;
  background:linear-gradient(108deg,transparent 10%,rgba(255,255,255,.08) 35%,rgba(196,248,255,.98) 49%,rgba(67,219,255,.24) 58%,transparent 78%);
  background-size:280% 100%;background-position:150% 0;
  -webkit-mask:url("logo-mark.png") center/contain no-repeat;
  mask:url("logo-mark.png") center/contain no-repeat;
  mix-blend-mode:screen;opacity:.72;
  animation:guideLogoLight 4.7s cubic-bezier(.4,0,.2,1) infinite;
}
.guide-avatar img{
  position:relative;z-index:2;width:43px;height:43px;object-fit:contain;border-radius:0;
  filter:drop-shadow(0 5px 7px rgba(0,53,133,.4)) drop-shadow(0 0 5px rgba(44,214,255,.2));
  animation:guideLogoFloat 5.2s ease-in-out infinite;
  transform-origin:50% 58%;
}
.guide-trigger:hover .guide-avatar img,.guide-trigger:focus-visible .guide-avatar img{animation-duration:2.6s;filter:drop-shadow(0 7px 10px rgba(0,52,145,.5)) drop-shadow(0 0 9px rgba(70,224,255,.46));}
.guide-trigger:hover .guide-avatar::after,.guide-trigger:focus-visible .guide-avatar::after{animation-duration:2.2s;opacity:.95;}
.guide-rings{
  position:absolute;left:8px;top:8px;width:48px;height:48px;border-radius:18px;
  border:1px solid rgba(85,220,255,.35);pointer-events:none;
  animation:guideRing 2.7s ease-out infinite;
}
.guide-rings::before,.guide-rings::after{
  content:"";position:absolute;inset:-1px;border-radius:inherit;border:1px solid rgba(95,218,255,.24);
  animation:guideRing 2.7s ease-out infinite;
}
.guide-rings::before{animation-delay:.9s}.guide-rings::after{animation-delay:1.8s}
.guide-trigger-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.08;}
.guide-trigger-copy small{color:#78e5fb;font-size:.56rem;text-transform:uppercase;letter-spacing:.14em;font-weight:850;}
.guide-trigger-copy strong{font-size:.8rem;margin-top:5px;white-space:nowrap;letter-spacing:.005em;}
.guide-chevron{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;background:rgba(255,255,255,.065);color:#8be8fb;font-size:.75rem;transition:.25s;}
.site-guide.open .guide-chevron{transform:rotate(180deg);}
.site-guide.attention .guide-trigger{animation:guideAttention 1.2s var(--ease) 2;}
.site-guide.attention .guide-avatar::before{opacity:.48;}
.guide-panel{
  position:absolute;left:0;bottom:82px;width:min(390px,calc(100vw - 28px));
  border:1px solid #c7e1ed;border-radius:24px;background:#fff;color:#0a2539;
  box-shadow:0 30px 100px rgba(0,24,42,.3);overflow:hidden;transform-origin:bottom left;
  opacity:0;transform:translateY(14px) scale(.95);
  transition:opacity .32s var(--ease),transform .32s var(--ease);
}
.guide-panel[hidden]{display:block;visibility:hidden;pointer-events:none;}
.site-guide.open .guide-panel{opacity:1;transform:none;visibility:visible;pointer-events:auto;}
.guide-head{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;background:linear-gradient(135deg,#071c2f,#0a3150);color:#fff;}
.guide-agent{display:flex;align-items:center;gap:10px;}
.guide-agent .guide-avatar{width:42px;height:42px;border-radius:13px;}
.guide-agent .guide-avatar img{width:37px;height:37px;animation-duration:6.2s;}
.guide-agent .guide-avatar::before,.guide-agent .guide-avatar::after{inset:2px;}
.guide-agent div{display:flex;flex-direction:column;line-height:1.15;}
.guide-agent strong{font-size:.82rem;}.guide-agent small{display:flex;align-items:center;gap:6px;color:#a9c7d6;font-size:.62rem;margin-top:5px;}
.guide-agent small i{width:6px;height:6px;border-radius:50%;background:#30dccf;box-shadow:0 0 10px #30dccf;animation:guideStatus 2s ease-in-out infinite;}
.guide-close{width:32px;height:32px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.06);color:#fff;font-size:1.2rem;line-height:1;}
.guide-body{padding:17px;}
.guide-message{border-radius:14px 14px 14px 4px;background:#eef8fd;border:1px solid #d7eaf3;padding:12px 13px;min-height:48px;display:flex;align-items:center;}
.guide-message p{font-size:.77rem;line-height:1.5;color:#17384e;}
.typing-dots{display:none;gap:4px;}.typing-dots i{width:5px;height:5px;border-radius:50%;background:#10aef0;animation:typingDot .8s infinite alternate;}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}
.guide-message.typing .typing-dots{display:flex;}.guide-message.typing p{display:none;}
.guide-actions{display:grid;gap:8px;margin-top:12px;}
.guide-actions a{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;min-height:59px;padding:9px 10px;border:1px solid #dceaf2;border-radius:13px;background:#fff;transition:.25s var(--ease);}
.guide-actions a:hover{transform:translateX(5px);border-color:#9fd6e9;background:#f5fbfe;box-shadow:0 10px 24px rgba(4,38,61,.07);}
.guide-actions>a>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e7f5fc;color:#0d67ff;font-size:.62rem;font-weight:900;}
.guide-actions div{display:flex;flex-direction:column;line-height:1.2;}.guide-actions strong{font-size:.74rem;color:#0a2539;}.guide-actions small{font-size:.61rem;color:#738997;margin-top:4px;}.guide-actions b{color:#0d67ff;font-size:.9rem;}
.guide-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-top:1px solid #e0edf3;background:#f8fcfe;font-size:.61rem;}.guide-foot a{color:#0d67ff;font-weight:800;}.guide-foot span{color:#7e929f;}
@keyframes guideRing{0%{transform:scale(.86);opacity:.78}72%,100%{transform:scale(1.72);opacity:0}}
@keyframes guideLogoFloat{0%,100%{transform:translate3d(0,0,0) rotate(-.7deg) scale(.98)}45%{transform:translate3d(0,-2px,0) rotate(.8deg) scale(1.025)}70%{transform:translate3d(0,-1px,0) rotate(.2deg) scale(1.01)}}
@keyframes guideLogoAura{0%,100%{opacity:.16;transform:scale(.92)}50%{opacity:.38;transform:scale(1.08)}}
@keyframes guideLogoLight{0%,18%{background-position:160% 0;opacity:.24}45%{opacity:.9}62%,100%{background-position:-90% 0;opacity:.24}}
@keyframes guideTriggerSheen{0%,35%{background-position:170% 0}70%,100%{background-position:-80% 0}}
@keyframes guideAttention{0%,100%{transform:translateY(0)}35%{transform:translateY(-7px)}65%{transform:translateY(-2px)}}
@keyframes guideStatus{0%,100%{opacity:.7;transform:scale(.9)}50%{opacity:1;transform:scale(1.2)}}
@keyframes typingDot{to{transform:translateY(-4px);opacity:.4}}

/* Footer and utility refinement */
.site-footer{background:linear-gradient(145deg,#051522,#071f33);border-top:1px solid rgba(118,210,244,.12);}
.footer-brand .brand-copy small{color:#bdefff;}
.footer-links a{transition:.2s;}.footer-links a:hover{color:#55dcff;transform:translateX(3px);}
.cookie{border-radius:22px;box-shadow:0 26px 80px rgba(0,21,37,.24);}
.toast{border-radius:14px;}
.back-top{border-radius:13px;}

/* Responsive quality */
@media(max-width:1120px){
  .hero-grid{grid-template-columns:1fr 1fr;gap:36px;}
  .hero-headline{font-size:clamp(2.5rem,5vw,4rem);}
  .project-choice-fieldset{grid-template-columns:repeat(2,1fr);}
  .language-button{min-width:148px;}
}
@media(max-width:960px){
  .section{padding:86px 0;}
  .hero{min-height:auto;padding-top:calc(var(--header) + 60px);}
  .hero-grid{grid-template-columns:1fr;gap:54px;}
  .hero-copy-block{max-width:760px;}
  .hero-headline{min-height:2.9em;}
  .hero-visual{max-width:760px;width:100%;margin-inline:auto;}
  .form-shell{grid-template-columns:1fr;}
  .contact-card{position:relative;top:auto;}
  .desktop-nav{display:none;}.menu-button{display:grid;}.header-cta{display:none;}
  .language-button{min-width:47px;width:47px;padding:0;justify-content:center;}
  .language-current,.language-button>svg{display:none;}
  .language-menu{right:-52px;}
}
@media(max-width:720px){
  :root{--header:70px;}
  .container{width:min(calc(100% - 28px),var(--max));}
  .section{padding:72px 0;}
  .section-head{display:block;margin-bottom:34px;}.section-head .button{margin-top:22px;}
  .display{font-size:clamp(2.25rem,11vw,3.65rem);}
  .section-title{font-size:clamp(1.9rem,9vw,2.8rem);}
  .section-copy,.hero-copy,.page-hero p{font-size:.98rem;line-height:1.72;}
  .brand img{width:42px!important;height:42px!important;}.brand-copy strong{font-size:.79rem;}.brand-copy small{font-size:.5rem;letter-spacing:.14em;}
  .nav-wrap{gap:10px;}.header-actions{margin-left:auto;}
  .hero{padding-top:calc(var(--header) + 44px);padding-bottom:64px;}
  .hero-headline{min-height:3.3em;}
  .headline-window{height:2.15em;}
  .actions{display:grid;grid-template-columns:1fr;}.actions .button{width:100%;}
  .hero-proof{display:grid;grid-template-columns:1fr;gap:10px;}
  .studio-shell{border-radius:23px;}.studio-side{display:none;}.studio-body{grid-template-columns:1fr;}.metric-row{grid-template-columns:repeat(3,1fr);gap:7px;}.metric{padding:10px 8px;}.metric small{font-size:.52rem;}.metric strong{font-size:.9rem;}.studio-bottom{grid-template-columns:1fr;}.floating-badge{font-size:.6rem;padding:8px 10px;}.floating-badge.one{left:-4px}.floating-badge.two{right:-4px;}
  .stats{grid-template-columns:repeat(2,1fr);}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}
  .loader-shell{padding:29px 21px 25px;border-radius:26px;}.loader-brand-lockup{gap:14px;}.loader-mark{width:82px;height:82px;flex-basis:82px;}.loader-mark img{width:62px;height:62px;}.loader-wordmark strong{font-size:1.05rem;}.loader-wordmark span{font-size:.56rem;letter-spacing:.16em;}.loader-modules{grid-template-columns:repeat(2,1fr);}.loader-title{font-size:1.75rem;}
  .form-intro{padding:25px 20px;}.form-progress{width:70px;flex-basis:70px;}.form-card-premium>.form-grid,.form-card-premium>.project-choice-fieldset,.form-card-premium>.field.full{margin-inline:20px;}.form-section-head{margin-inline:20px;}.project-choice-fieldset{grid-template-columns:1fr;}.form-grid{grid-template-columns:1fr!important;}.form-submit-area{padding:21px 20px 25px;}.upload-drop{align-items:flex-start!important;}.upload-drop>b{display:none;}
  .site-guide{left:12px;bottom:12px;}.guide-trigger-copy{display:none;}.guide-trigger{min-height:60px;padding:6px;border-radius:18px;}.guide-trigger .guide-avatar{width:48px;height:48px;}.guide-chevron{display:none;}.guide-panel{position:fixed;left:10px;right:10px;bottom:82px;width:auto;max-height:calc(100vh - 110px);overflow:auto;transform-origin:bottom center;}.guide-foot{flex-direction:column;align-items:flex-start;}
  .cookie{left:12px;right:12px;bottom:82px;width:auto;}
  .page-hero{min-height:430px;padding-top:var(--header);}
}
@media(max-width:420px){
  .brand-copy small{max-width:150px;white-space:nowrap;}
  .language-menu{position:fixed;left:10px;right:10px;top:calc(var(--header) + 8px);width:auto;}
  .metric-row{grid-template-columns:1fr;}.metric{display:flex;align-items:center;justify-content:space-between;}.metric::after{display:none;}
  .stats{grid-template-columns:1fr;}.stat{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.1)!important;}.stat:last-child{border-bottom:0!important;}
  .form-intro{display:block;}.form-progress{width:100%;text-align:left;margin-top:18px;}.form-progress strong{font-size:1rem;}
}
@media(prefers-reduced-motion:reduce){
  .loader-grid,.loader-aurora,.loader-scan,.loader-shell::before,.loader-mark img,.loader-orbit,.loader-node,.headline-phrase.is-active,.studio-shell::before,.chart-line path,.chart-line circle,.bars i,.code-lines i,.floating-badge,.studio-scan,.stats::before,.infinity-value,.guide-rings,.guide-rings::before,.guide-rings::after,.guide-trigger::before,.guide-avatar img,.guide-avatar::before,.guide-avatar::after,.guide-agent small i,.site-guide.attention .guide-trigger{animation:none!important;}
}
/* Keep the privacy panel and guide from competing for the same corner. */
@media(min-width:721px){.cookie{left:auto!important;right:22px!important;bottom:22px!important;}}
/* Reliable mobile menu icon and distraction-free open navigation. */
.menu-button{position:relative!important;display:none;place-items:center;}
.menu-button span,.menu-button::before,.menu-button::after{position:absolute!important;left:50%;width:19px;height:2px;margin:0!important;background:currentColor;border-radius:99px;transform:translateX(-50%);transition:.25s var(--ease);}
.menu-button span{top:50%;transform:translate(-50%,-50%);}
.menu-button::before{top:calc(50% - 6px);}.menu-button::after{top:calc(50% + 6px);}
.nav-open .menu-button span{opacity:0;}
.nav-open .menu-button::before{top:50%;transform:translate(-50%,-50%) rotate(45deg);}
.nav-open .menu-button::after{top:50%;transform:translate(-50%,-50%) rotate(-45deg);}
.nav-open .cookie,.nav-open .site-guide{opacity:0;visibility:hidden;pointer-events:none;}
@media(max-width:960px){.menu-button{display:grid!important;}}


/* Latest news and calmer hero rotation */
@media(max-width:780px){.hero-headline{min-height:3.5em}.headline-window{min-height:1.2em}}

.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.news-card{display:flex;flex-direction:column;background:#fff;border:1px solid #d9ebf4;border-radius:24px;overflow:hidden;box-shadow:0 18px 48px rgba(5,26,40,.08);transition:.28s var(--ease)}.news-card:hover{transform:translateY(-6px);box-shadow:0 26px 58px rgba(5,26,40,.14)}.news-card-media{height:220px;background:#dbeef6 center/cover no-repeat;position:relative}.news-card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,24,39,.18),transparent 55%)}.news-card-body{padding:24px}.news-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#6f8696;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.news-chip{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#e9f6fb;color:#0f6da7;font-weight:800;letter-spacing:.08em;font-size:.67rem}.news-card h3{font-size:1.3rem;line-height:1.18;letter-spacing:-.03em;margin:0 0 12px}.news-card p{color:#5f7788;line-height:1.7;margin:0 0 16px}.news-card .news-link{display:inline-flex;align-items:center;gap:8px;color:#0f6da7;font-weight:800}.news-card .news-link:hover{gap:12px}.news-empty{padding:28px;border:1px dashed #bdd8e7;border-radius:18px;background:#f5fbff;color:#648093;text-align:center}.news-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fff;border:1px solid #d9ebf4;border-radius:30px;overflow:hidden;box-shadow:0 24px 64px rgba(4,27,41,.08);margin-bottom:34px}.news-feature-media{min-height:360px;background:#dbeef6 center/cover no-repeat}.news-feature-copy{padding:34px 34px 30px}.news-feature-copy h2{font-size:clamp(2rem,3.1vw,3rem);line-height:1.06;letter-spacing:-.04em;margin:10px 0 14px}.news-feature-copy p{color:#5f7788;line-height:1.8}.news-feature-copy .news-content{white-space:pre-line;margin-top:18px}.news-feature-copy .actions{margin-top:24px}.news-admin-wrap{max-width:1220px}.news-admin-shell{display:grid;gap:28px}.news-admin-head{display:flex;justify-content:space-between;align-items:end;gap:24px}.news-login-card,.news-form-card,.news-preview-card,.news-list-card{background:#fff;border:1px solid #d9ebf4;border-radius:28px;box-shadow:0 18px 48px rgba(5,26,40,.08)}.news-login-card,.news-list-card{padding:24px 26px}.news-login-form label{display:block;font-weight:800;margin-bottom:10px}.news-login-row{display:flex;gap:12px;align-items:center}.news-login-row input{flex:1;height:52px;border-radius:14px;border:1px solid #c9dee9;padding:0 16px;font:inherit}.news-inline-note{margin:12px 0 0;color:#698092}.news-editor-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:start}.news-form-card{padding:26px}.news-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.news-form-grid .field{display:grid;gap:9px}.news-form-grid .field.full{grid-column:1/-1}.news-form-grid label{font-weight:800;color:#0a2539}.news-form-grid input,.news-form-grid textarea,.news-form-grid select{width:100%;min-height:52px;border-radius:14px;border:1px solid #c9dee9;background:#f8fcff;padding:14px 16px;font:inherit;color:#0a2539}.news-form-grid textarea{min-height:140px;resize:vertical}.news-checkbox-row label{display:inline-flex;align-items:center;gap:10px;font-weight:700}.news-form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.news-preview-card{padding:26px;position:sticky;top:calc(var(--header) + 18px)}.news-preview .news-card{box-shadow:none}.news-list{display:grid;gap:14px;margin-top:16px}.news-list-item{display:grid;grid-template-columns:120px 1fr auto;gap:16px;align-items:center;padding:14px;border:1px solid #d9ebf4;border-radius:18px}.news-list-thumb{width:120px;height:84px;border-radius:14px;background:#dbeef6 center/cover no-repeat}.news-list-copy h3{font-size:1rem;margin:0 0 6px}.news-list-copy p{margin:0;color:#60798a;font-size:.92rem;line-height:1.55}.news-list-actions{display:flex;gap:10px;flex-wrap:wrap}.news-list-actions button{border:0;border-radius:12px;padding:10px 14px;font:inherit;font-weight:800;cursor:pointer}.news-list-actions .edit{background:#e8f6ff;color:#0f6da7}.news-list-actions .delete{background:#fff1f1;color:#c84747}.news-pub-state{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#edf7f1;color:#28724a;font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.news-pub-state.draft{background:#f4f1ff;color:#6650c7}.news-feature-shell:empty{display:none}.news-note{margin-top:12px;color:#688192;font-size:.93rem}.news-admin-app .form-status,.news-login-card .form-status{margin-top:14px}.news-story-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}@media(max-width:1080px){.news-grid{grid-template-columns:repeat(2,1fr)}.news-feature,.news-editor-grid{grid-template-columns:1fr}.news-preview-card{position:static}.news-login-row{flex-direction:column;align-items:stretch}}@media(max-width:780px){.news-grid{grid-template-columns:1fr}.news-feature-copy{padding:26px}.news-feature-media{min-height:250px}.news-admin-head{display:block}.news-admin-head .button{margin-top:16px}.news-form-grid{grid-template-columns:1fr}.news-list-item{grid-template-columns:1fr}.news-list-thumb{width:100%;height:180px}.news-login-row input,.news-login-row .button{width:100%}}


/* Simpler premium loading experience */
.site-loader{background:radial-gradient(circle at 50% 18%,rgba(17,104,255,.14),transparent 28%),linear-gradient(160deg,#071a2c 0%,#081f33 48%,#0a2740 100%)}
.loader-canvas,.loader-grid,.loader-scan,.loader-aurora,.loader-orbit,.loader-node{display:none!important}
.loader-shell{width:min(90vw,500px);padding:34px 34px 28px;border-radius:28px;background:linear-gradient(180deg,rgba(10,33,52,.92),rgba(6,24,39,.88));border:1px solid rgba(135,214,242,.16);box-shadow:0 28px 90px rgba(0,0,0,.32)}
.loader-shell::before{display:none}
.loader-brand-lockup{justify-content:center;margin-bottom:10px}
.loader-mark{width:84px;height:84px;flex:0 0 84px;margin:0 auto 18px}
.loader-mark::before,.loader-mark::after{display:none}
.loader-mark img{width:64px;height:64px;border-radius:18px;box-shadow:0 14px 36px rgba(0,0,0,.3),0 0 26px rgba(36,200,238,.14)}
.loader-wordmark strong{font-size:1.22rem;letter-spacing:-.02em}
.loader-wordmark span{font-size:.62rem;letter-spacing:.22em;color:#86aabd}
.loader-kicker{margin-top:2px;color:#77d6ef;font-size:.68rem;letter-spacing:.22em}
.loader-title{font-size:clamp(1.5rem,4vw,2.35rem);margin:10px 0 8px;min-height:auto}
.loader-title span{animation:none!important}
.loader-copy{font-size:.93rem;color:#a9bfcd;max-width:360px;margin:0 auto}
.loader-terminal{margin-top:18px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(149,218,243,.09)}
.loader-terminal-dot{box-shadow:0 0 10px #30dccf}
.loader-track{height:6px;margin-top:14px;background:rgba(255,255,255,.07)}
.loader-track span{transition:width .22s ease}
.loader-track span::after{width:10px;height:10px;right:-2px}
.loader-modules{display:none!important}
@media(max-width:780px){.loader-shell{padding:28px 22px 24px}.loader-mark{width:72px;height:72px;flex-basis:72px}.loader-mark img{width:56px;height:56px}.loader-title{font-size:1.65rem}}


/* V10 — restrained premium loader */
.site-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#061625 0%,#071c2f 56%,#0a2942 100%);color:#fff;transition:opacity .55s var(--ease),visibility .55s}
.site-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.loader-clean-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(116,210,243,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(116,210,243,.045) 1px,transparent 1px);background-size:68px 68px;mask-image:radial-gradient(circle at center,#000 0,transparent 74%);animation:loaderCleanDrift 14s linear infinite}
.loader-clean-glow{position:absolute;width:min(70vw,760px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(16,174,240,.13),transparent 68%);filter:blur(10px);animation:loaderCleanBreathe 4s ease-in-out infinite}
.loader-clean-core{position:relative;width:min(88vw,430px);text-align:center;padding:34px 30px 28px;border:1px solid rgba(141,216,242,.12);border-radius:28px;background:linear-gradient(180deg,rgba(11,38,59,.72),rgba(6,25,41,.55));box-shadow:0 30px 90px rgba(0,0,0,.3);backdrop-filter:blur(18px)}
.loader-clean-logo{position:relative;width:86px;height:86px;margin:0 auto 17px;display:grid;place-items:center}
.loader-clean-logo img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 10px 22px rgba(0,0,0,.3));animation:loaderLogoFloat 2.6s ease-in-out infinite}
.loader-clean-ring{position:absolute;inset:7px;border:1px solid rgba(79,207,243,.25);border-radius:50%;animation:loaderRing 2.8s ease-in-out infinite}
.loader-clean-ring.ring-two{inset:-4px;border-color:rgba(32,144,255,.16);animation-delay:-1.4s}
.loader-clean-wordmark strong{display:block;font-size:1.18rem;letter-spacing:.055em}.loader-clean-wordmark span{display:block;margin-top:5px;color:#88aabd;font-size:.6rem;font-weight:800;letter-spacing:.24em}
.loader-clean-title{margin:20px 0 18px;color:#dff8ff;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}
.loader-clean-track{height:5px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.loader-clean-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d67ff,#17b9ee,#72e1f8);box-shadow:0 0 20px rgba(48,205,244,.55);transition:width .15s linear}
.loader-clean-meta{display:flex;justify-content:space-between;gap:18px;margin-top:10px;color:#83a4b8;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.loader-clean-meta strong{color:#dff8ff;font-variant-numeric:tabular-nums}
@keyframes loaderCleanDrift{to{transform:translate3d(34px,34px,0)}}@keyframes loaderCleanBreathe{50%{transform:scale(1.08);opacity:.72}}@keyframes loaderRing{50%{transform:scale(1.08);opacity:.42}}@keyframes loaderLogoFloat{50%{transform:translateY(-4px)}}

/* V10 — public news organisation */
.latest-news-home .section-head .actions{display:flex;align-items:center}.latest-news-home .section-head .actions:empty{display:none}
.news-feature-copy .news-content{color:#4f6878;line-height:1.82}

/* V10 — hidden content studio */
.studio-admin-page{min-height:100vh;background:linear-gradient(180deg,#edf7fc 0%,#f7fbfe 100%);color:#0a2539}
.studio-admin-header{height:78px;padding:0 max(24px,calc((100vw - 1220px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;background:#071c2f;border-bottom:1px solid rgba(255,255,255,.08)}
.studio-admin-brand{display:flex;align-items:center;gap:12px;color:#fff}.studio-admin-brand img{width:42px;height:42px}.studio-admin-brand span{display:flex;flex-direction:column}.studio-admin-brand strong{font-size:.92rem;letter-spacing:.04em}.studio-admin-brand small{margin-top:4px;color:#81a9bf;font-size:.56rem;font-weight:800;letter-spacing:.18em}
.studio-admin-main{width:min(calc(100% - 36px),1220px);margin:0 auto;padding:54px 0 80px}
.studio-lock{min-height:calc(100vh - 210px);display:grid;place-items:center}.studio-lock-card{width:min(100%,590px);padding:42px;border:1px solid #d5e9f3;border-radius:30px;background:#fff;box-shadow:0 24px 70px rgba(4,31,48,.1);text-align:center}.studio-lock-mark{width:72px;height:72px;margin:0 auto 20px;display:grid;place-items:center;border-radius:22px;background:#071c2f}.studio-lock-mark img{width:48px;height:48px}.studio-lock-card h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.045em}.studio-lock-card p{max-width:480px;margin:14px auto 24px;color:#60798a;line-height:1.75}.studio-login-form{text-align:left}.studio-login-form label{display:block;margin-bottom:9px;font-weight:800}.studio-login-row{display:flex;gap:12px}.studio-login-row input{flex:1;min-width:0;height:54px;padding:0 16px;border:1px solid #c8deea;border-radius:14px;background:#f8fcff;font:inherit}
.studio-dashboard-head{display:flex;justify-content:space-between;align-items:end;gap:34px;margin-bottom:24px}.studio-dashboard-head h1{font-size:clamp(2.4rem,5vw,4.3rem);line-height:1;letter-spacing:-.055em}.studio-dashboard-head p{max-width:660px;margin-top:14px;color:#60798a}.studio-head-actions{display:flex;gap:12px;flex-wrap:wrap}.studio-publish-note{margin-bottom:24px;padding:16px 18px;border:1px solid #cfe3ed;border-radius:16px;background:#f4fbff;color:#426174;line-height:1.65}.studio-publish-note code{padding:3px 7px;border-radius:7px;background:#e5f4fb;color:#0a4d75}
.studio-editor-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:start}.studio-editor-card,.studio-preview-card,.studio-list-card{background:#fff;border:1px solid #d6e9f2;border-radius:28px;box-shadow:0 18px 52px rgba(5,30,45,.08)}.studio-editor-card{padding:27px}.studio-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.studio-form-grid .field{display:grid;gap:9px}.studio-form-grid .field.full{grid-column:1/-1}.studio-form-grid label{font-weight:800}.studio-form-grid input,.studio-form-grid select,.studio-form-grid textarea{width:100%;min-height:52px;padding:14px 15px;border:1px solid #c9deea;border-radius:14px;background:#f8fcff;color:#0a2539;font:inherit}.studio-form-grid textarea{resize:vertical}.studio-check label{display:flex;align-items:center;gap:10px}.studio-check input{width:auto;min-height:auto}.studio-form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.studio-preview-card{position:sticky;top:24px;padding:25px}.studio-preview-card .news-card{box-shadow:none}.studio-list-card{margin-top:24px;padding:27px}.studio-list-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.studio-list-head h2{font-size:2rem;letter-spacing:-.04em}.studio-list-head>span{color:#60798a;font-weight:800}
@media(max-width:980px){.studio-editor-layout{grid-template-columns:1fr}.studio-preview-card{position:static}.studio-dashboard-head{display:block}.studio-head-actions{margin-top:20px}}
@media(max-width:680px){.studio-admin-header{height:auto;padding:14px 18px}.studio-admin-header .button{padding:11px 14px}.studio-admin-main{width:min(calc(100% - 22px),1220px);padding-top:28px}.studio-lock-card{padding:30px 22px}.studio-login-row{flex-direction:column}.studio-form-grid{grid-template-columns:1fr}.studio-form-grid .field.full{grid-column:auto}.studio-editor-card,.studio-preview-card,.studio-list-card{border-radius:22px;padding:21px}.studio-dashboard-head h1{font-size:2.6rem}.studio-head-actions .button{width:100%}.studio-list-head{display:block}.studio-list-head>span{display:block;margin-top:8px}}
@media(prefers-reduced-motion:reduce){.loader-clean-grid,.loader-clean-glow,.loader-clean-logo img,.loader-clean-ring{animation:none!important}}


/* ======================================================================
   OBLIQWAVE V11 — RESPONSIVE CLARITY & PROFESSIONAL CONTENT SYSTEM
   ====================================================================== */
:root{--content-readable:760px}
body{font-size:16px;line-height:1.68;text-rendering:optimizeLegibility}
p{max-width:72ch}
.section-copy,.hero-copy,.page-hero p{line-height:1.78}
.card p,.media-card p,.process-card p,.wide-card p,.contact-card p,.faq-answer p,.news-card p{line-height:1.72}
.card h3,.media-card h3,.process-card h3,.wide-card h3{line-height:1.23}
.section-head>div{max-width:800px}
.button{white-space:normal;text-align:center}

/* Brand remains fully visible at every screen size. */
.site-header .brand{min-width:0;flex:0 1 auto}
.site-header .brand img{flex:0 0 auto;object-fit:contain;border-radius:0}
.site-header .brand-copy{display:flex!important;min-width:0}
.site-header .brand-copy strong{white-space:nowrap}
.site-header .brand-copy small{white-space:nowrap}

/* A more informative and organised mobile navigation. */
.mobile-panel{padding:0 24px 28px;background:linear-gradient(180deg,#fff 0%,#f7fbfe 100%)}
.mobile-panel-brand{display:flex;align-items:flex-start;gap:13px;margin:0 -24px 18px;padding:22px 24px 20px;background:linear-gradient(135deg,#071c2f,#0b3554);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
.mobile-panel-brand img{width:45px;height:45px;object-fit:contain;flex:0 0 45px}
.mobile-panel-brand>div{min-width:0}
.mobile-panel-brand strong{display:block;font-size:.9rem;font-weight:950;letter-spacing:.09em;line-height:1.1}
.mobile-panel-brand small{display:block;margin-top:5px;color:#a8def1;font-size:.57rem;font-weight:850;letter-spacing:.17em}
.mobile-panel-brand p{margin-top:10px;color:#c8dce8;font-size:.74rem;line-height:1.5;max-width:270px}
.mobile-explore-label{margin-top:2px!important}
.mobile-panel nav a{min-height:47px;display:flex;align-items:center;border:1px solid transparent;font-size:.91rem}
.mobile-panel nav a:hover,.mobile-panel nav a.active{border-color:#d7eaf4;background:#eaf6fc}
.mobile-panel .mobile-cta{min-height:50px}

/* Tablet layouts stay organised without becoming cramped. */
@media (min-width:721px) and (max-width:1080px){
  .container{width:min(calc(100% - 56px),var(--max))}
  .section{padding:88px 0}
  .card-grid,.media-grid{gap:22px}
  .card,.media-content,.process-card{padding:26px}
  .section-head{gap:28px;margin-bottom:38px}
  .page-hero{padding-bottom:70px}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:38px}
}

/* Mobile clarity and spacing. */
@media(max-width:780px){
  :root{--header:72px}
  .site-header .container{width:calc(100% - 20px)}
  .site-header .nav-wrap{gap:8px}
  .site-header .brand{gap:8px;max-width:calc(100% - 96px)}
  .site-header .brand img{width:35px!important;height:35px!important}
  .site-header .brand-copy{line-height:1.02;overflow:hidden}
  .site-header .brand-copy strong{font-size:.67rem!important;letter-spacing:.065em!important;overflow:hidden;text-overflow:ellipsis}
  .site-header .brand-copy small{font-size:.43rem!important;letter-spacing:.105em!important;margin-top:4px!important;color:#bfe8f6!important;overflow:hidden;text-overflow:ellipsis}
  .header-actions{gap:5px!important;flex:0 0 auto}
  .language-button,.menu-button{width:39px!important;height:39px!important;min-width:39px!important;border-radius:11px!important}
  .language-button .flag-badge{font-size:.92rem}
  .menu-button span,.menu-button::before,.menu-button::after{width:17px}
  .mobile-panel{width:min(92vw,400px);padding-left:20px;padding-right:20px}
  .mobile-panel-brand{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}
  .container{width:min(calc(100% - 28px),var(--max))}
  .hero{padding-top:calc(var(--header) + 42px);padding-bottom:58px}
  .hero-grid{gap:42px}
  .hero-copy-block{padding-top:0}
  .section-kicker{font-size:.68rem;letter-spacing:.12em;margin-bottom:12px}
  .display{font-size:clamp(2.2rem,10.7vw,3.45rem);line-height:1.04;letter-spacing:-.047em}
  .hero-headline{min-height:3.15em!important}
  .headline-window{height:auto!important;min-height:1.35em!important;overflow:visible}
  .headline-phrase{line-height:1.05}
  .hero-copy,.page-hero p,.section-copy{font-size:1rem!important;line-height:1.72!important;color:#bcd0dc}
  .section:not(.dark):not(.alt) .section-copy,.section.alt .section-copy{color:#526b7d}
  .hero .actions{gap:11px}
  .hero .button,.cta-panel .button{min-height:50px}
  .hero-proof{margin-top:27px}
  .proof-item{font-size:.79rem}
  .section{padding:66px 0}
  .section.compact{padding:54px 0}
  .section-head{margin-bottom:30px}
  .section-title{font-size:clamp(1.85rem,8.5vw,2.65rem);line-height:1.12;letter-spacing:-.038em}
  .card-grid,.media-grid,.process-grid{gap:16px}
  .card,.media-content,.process-card{padding:23px!important;border-radius:20px}
  .card h3,.media-card h3,.process-card h3{font-size:1.2rem}
  .card p,.media-card p,.process-card p{font-size:.94rem;color:#526b7d}
  .signal{padding:22px 18px}
  .lab-stage{padding:25px 20px}
  .wide-card .copy{padding:25px 22px}
  .image-frame{min-height:280px}
  .page-hero{min-height:auto!important;padding:calc(var(--header) + 48px) 0 55px!important}
  .breadcrumb{margin-bottom:20px}
  .cta-panel{padding:31px 23px!important;border-radius:22px}
  .cta-panel h2{font-size:clamp(1.8rem,8.5vw,2.55rem);line-height:1.12}
  .cta-panel p{line-height:1.7}
  .stats{border-radius:20px}
  .stat{padding:26px 22px}
  .footer-brand{max-width:none}
  .site-footer{padding-top:56px}
  .footer-grid{gap:30px!important}
  .footer-brand p{font-size:.88rem;line-height:1.72;color:#a6bdca}
  .footer-title{margin-bottom:13px}
  .footer-links a{font-size:.86rem;min-height:32px;display:flex;align-items:center}
  .footer-bottom{margin-top:36px;line-height:1.6}
  .news-card-media{height:210px}
  .news-card-body{padding:22px}
  .news-card h3{font-size:1.23rem}
  .form-card,.contact-card{padding:23px!important;border-radius:22px}
  .field label{font-size:.79rem}
  .field input,.field select,.field textarea{font-size:16px;min-height:50px}
}

@media(max-width:430px){
  .site-header .brand{max-width:calc(100% - 88px);gap:7px}
  .site-header .brand img{width:32px!important;height:32px!important}
  .site-header .brand-copy strong{font-size:.61rem!important;letter-spacing:.052em!important}
  .site-header .brand-copy small{font-size:.39rem!important;letter-spacing:.08em!important}
  .language-button,.menu-button{width:37px!important;height:37px!important;min-width:37px!important}
  .container{width:calc(100% - 22px)}
  .display{font-size:clamp(2.05rem,10.8vw,2.8rem)}
  .hero-headline{min-height:3.35em!important}
  .section{padding:60px 0}
  .section-title{font-size:clamp(1.75rem,8.8vw,2.3rem)}
  .mobile-panel{width:100%;max-width:none}
  .guide-panel{bottom:76px!important}
  .cookie{bottom:76px!important}
}

@media(max-width:350px){
  .site-header .brand-copy small{display:block!important;font-size:.35rem!important;letter-spacing:.055em!important}
  .site-header .brand-copy strong{font-size:.56rem!important}
  .site-header .brand img{width:29px!important;height:29px!important}
  .language-button,.menu-button{width:34px!important;height:34px!important;min-width:34px!important}
}

/* V12 accessibility: preserve visibility changes without animated travel. */
@media(prefers-reduced-motion:reduce){.site-guide{transition:opacity .15s linear,visibility .15s!important}.site-guide.is-footer-hidden{transform:none!important}.guide-trigger,.guide-trigger:hover,.guide-trigger:focus-visible{transform:none!important}}

/* ================================================================
   V13 — Obliqwave animated digital assistant
   Original logo-led character with expressive eyes, holographic depth,
   responsive behaviour and footer-aware visibility.
================================================================ */
.site-guide{
  --guide-look-x:0px;
  --guide-look-y:0px;
  --guide-tilt-x:0deg;
  --guide-tilt-y:0deg;
  left:24px;
  bottom:20px;
  z-index:1800;
  width:auto;
  transform:translate3d(0,0,0) scale(1);
  filter:none;
}
.site-guide.is-footer-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate3d(0,34px,0) scale(.9);
}
.guide-companion{
  position:relative;
  display:flex;
  align-items:flex-end;
  min-height:108px;
  isolation:isolate;
}
.guide-trigger{
  position:relative;
  display:block;
  width:104px;
  height:108px;
  min-height:0;
  padding:0;
  border:0;
  border-radius:36px;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  isolation:isolate;
  backdrop-filter:none;
  transition:transform .32s var(--ease),filter .32s var(--ease);
  cursor:pointer;
}
.guide-trigger::before{display:none}
.guide-trigger:hover,.guide-trigger:focus-visible{
  transform:translateY(-4px) scale(1.025);
  border-color:transparent;
  box-shadow:none;
  filter:drop-shadow(0 18px 22px rgba(0,32,59,.22));
}
.guide-trigger:focus-visible{outline:2px solid #6ce3ff;outline-offset:5px}
.guide-character{
  position:absolute;
  inset:0;
  display:block;
  transform-style:preserve-3d;
  perspective:500px;
}
.guide-halo{
  position:absolute;
  left:8px;
  top:5px;
  width:88px;
  height:88px;
  border-radius:50%;
  background:
    radial-gradient(circle,rgba(69,218,255,.27) 0 28%,rgba(45,173,255,.11) 46%,transparent 72%);
  filter:blur(2px);
  opacity:.78;
  animation:guideAssistantAura 4s ease-in-out infinite;
}
.guide-halo::before,.guide-halo::after{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(111,231,255,.32);
  border-radius:50%;
  animation:guideAssistantRing 3.4s ease-out infinite;
}
.guide-halo::after{animation-delay:1.7s}
.guide-logo-body{
  position:absolute;
  left:8px;
  top:4px;
  z-index:4;
  width:88px;
  height:88px;
  display:grid;
  place-items:center;
  transform:
    rotateX(var(--guide-tilt-y))
    rotateY(var(--guide-tilt-x))
    translate3d(0,0,12px);
  transform-origin:50% 60%;
  transition:transform .16s ease-out;
  animation:guideAssistantFloat 5.4s ease-in-out infinite;
}
.guide-logo-body::before{
  content:"";
  position:absolute;
  inset:4px;
  z-index:-1;
  background:#39dfff;
  -webkit-mask:url("logo-mark.png") center/contain no-repeat;
  mask:url("logo-mark.png") center/contain no-repeat;
  opacity:.32;
  filter:blur(9px);
  transform:scale(.98);
}
.guide-logo-body::after{
  content:"";
  position:absolute;
  inset:3px;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(108deg,transparent 16%,rgba(255,255,255,.08) 31%,rgba(225,252,255,.98) 48%,rgba(90,230,255,.25) 61%,transparent 78%);
  background-size:290% 100%;
  background-position:160% 0;
  -webkit-mask:url("logo-mark.png") center/contain no-repeat;
  mask:url("logo-mark.png") center/contain no-repeat;
  mix-blend-mode:screen;
  opacity:.88;
  animation:guideAssistantLight 4.8s cubic-bezier(.4,0,.2,1) infinite;
}
.guide-logo-body img{
  width:86px;
  height:86px;
  display:block;
  object-fit:contain;
  filter:
    drop-shadow(0 12px 10px rgba(0,43,110,.34))
    drop-shadow(0 0 7px rgba(38,213,255,.24));
  user-select:none;
  pointer-events:none;
}
.guide-face{
  position:absolute;
  left:56px;
  top:42px;
  z-index:9;
  width:31px;
  height:27px;
  transform:translate3d(0,0,22px);
  pointer-events:none;
  filter:drop-shadow(0 2px 2px rgba(0,27,73,.32));
}
.guide-eye{
  position:absolute;
  top:1px;
  width:10px;
  height:12px;
  overflow:hidden;
  border:1px solid rgba(213,249,255,.9);
  border-radius:50% 50% 48% 48%;
  background:linear-gradient(180deg,#fff 0%,#d7f7ff 100%);
  box-shadow:inset 0 -2px 3px rgba(50,177,225,.18),0 0 5px rgba(191,248,255,.55);
  transform-origin:center;
  transition:height .09s linear,top .09s linear;
}
.guide-eye.eye-left{left:3px;transform:rotate(-3deg)}
.guide-eye.eye-right{right:3px;transform:rotate(3deg)}
.guide-eye i{
  position:absolute;
  left:3px;
  top:4px;
  width:4px;
  height:5px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 28%,#7cecff 0 14%,#083763 38%,#021526 76%);
  box-shadow:0 0 3px rgba(41,211,255,.8);
  transform:translate(var(--guide-look-x),var(--guide-look-y));
  transition:transform .12s ease-out;
}
.site-guide.is-blinking .guide-eye{
  top:7px;
  height:2px;
  border-radius:999px;
  background:#c7f5ff;
}
.site-guide.is-blinking .guide-eye i{opacity:0}
.guide-mouth{
  position:absolute;
  left:10px;
  top:18px;
  width:12px;
  height:6px;
  border-bottom:2px solid rgba(224,252,255,.98);
  border-radius:0 0 12px 12px;
  opacity:.95;
  transition:.18s ease;
}
.site-guide.is-speaking .guide-mouth{
  left:11px;
  top:18px;
  width:10px;
  height:8px;
  border:1px solid rgba(218,249,255,.9);
  border-top:0;
  border-radius:0 0 50% 50%;
  background:linear-gradient(180deg,rgba(8,45,84,.72),rgba(2,20,42,.92));
  animation:guideAssistantTalk .48s ease-in-out infinite alternate;
}
.guide-hologram{
  position:absolute;
  left:19px;
  bottom:4px;
  z-index:2;
  width:68px;
  height:15px;
  border:1px solid rgba(88,229,255,.42);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(38,206,255,.25),rgba(16,102,176,.08) 53%,transparent 72%);
  box-shadow:0 0 18px rgba(48,210,255,.22),inset 0 0 8px rgba(105,234,255,.16);
  animation:guideAssistantBase 3.3s ease-in-out infinite;
}
.guide-hologram::before{
  content:"";
  position:absolute;
  inset:3px 11px;
  border:1px solid rgba(116,237,255,.3);
  border-radius:50%;
}
.guide-particle{
  position:absolute;
  z-index:7;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#8ff2ff;
  box-shadow:0 0 8px #36dcff;
  opacity:.7;
  animation:guideAssistantParticle 3.8s ease-in-out infinite;
}
.particle-one{left:11px;top:24px}
.particle-two{right:8px;top:18px;animation-delay:1.2s;width:3px;height:3px}
.particle-three{left:25px;top:2px;animation-delay:2.1s;width:2px;height:2px}
.guide-greeting{
  position:absolute;
  left:88px;
  bottom:27px;
  z-index:12;
  width:232px;
  min-height:78px;
  padding:13px 34px 13px 17px;
  border:1px solid rgba(139,215,241,.72);
  border-radius:17px 17px 17px 5px;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(241,250,255,.97));
  color:#08283e;
  box-shadow:0 18px 48px rgba(0,35,61,.2),inset 0 1px 0 #fff;
  transform-origin:left bottom;
  transition:opacity .28s var(--ease),transform .32s var(--ease),visibility .28s;
  backdrop-filter:blur(16px);
}
.guide-greeting::before{
  content:"";
  position:absolute;
  left:-8px;
  bottom:15px;
  width:16px;
  height:16px;
  background:#f6fcff;
  border-left:1px solid rgba(139,215,241,.72);
  border-bottom:1px solid rgba(139,215,241,.72);
  transform:rotate(45deg);
}
.guide-greeting small{
  display:flex;
  align-items:center;
  gap:7px;
  color:#487185;
  font-size:.55rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.guide-greeting small i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#25d6b0;
  box-shadow:0 0 9px rgba(37,214,176,.8);
  animation:guideStatus 2s ease-in-out infinite;
}
.guide-greeting strong{
  display:block;
  margin-top:6px;
  color:#08263a;
  font-size:.9rem;
  line-height:1.2;
  letter-spacing:-.01em;
}
.guide-greeting>span{
  display:block;
  margin-top:4px;
  color:#688394;
  font-size:.63rem;
  line-height:1.4;
}
.guide-greeting-close{
  position:absolute;
  right:7px;
  top:7px;
  z-index:2;
  display:grid;
  place-items:center;
  width:23px;
  height:23px;
  border:0;
  border-radius:8px;
  background:#eaf5fa;
  color:#537083;
  font-size:1rem;
  line-height:1;
  cursor:pointer;
}
.guide-greeting-close:hover{background:#d9eef7;color:#0b5e87}
.site-guide.open .guide-greeting,
.site-guide.greeting-dismissed .guide-greeting{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(-10px) scale(.92);
}
.site-guide.attention .guide-character{animation:guideAssistantHello 1.35s var(--ease) 2}
.site-guide.attention .guide-greeting{animation:guideGreetingHello 1.35s var(--ease) 2}
.site-guide.open .guide-logo-body{animation-duration:3.4s}
.site-guide.open .guide-halo{opacity:1}
.site-guide.open .guide-character{filter:drop-shadow(0 0 13px rgba(56,221,255,.25))}

.guide-panel{
  left:0;
  bottom:118px;
  width:min(410px,calc(100vw - 30px));
  border:1px solid rgba(142,211,236,.76);
  border-radius:24px;
  background:rgba(255,255,255,.985);
  box-shadow:0 34px 110px rgba(0,26,45,.34),0 0 0 1px rgba(255,255,255,.48) inset;
  overflow:hidden;
  transform-origin:bottom left;
  opacity:0;
  transform:translateY(16px) scale(.94);
  transition:opacity .32s var(--ease),transform .34s var(--ease),visibility .32s;
  backdrop-filter:blur(22px);
}
.guide-panel[hidden]{display:block;visibility:hidden;pointer-events:none}
.site-guide.open .guide-panel{opacity:1;transform:none;visibility:visible;pointer-events:auto}
.guide-head{
  min-height:76px;
  padding:14px 15px;
  background:
    radial-gradient(circle at 14% 10%,rgba(45,210,255,.17),transparent 35%),
    linear-gradient(135deg,#061a2d,#0a3858);
}
.guide-agent{gap:11px}
.guide-agent-avatar{
  position:relative;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  flex:0 0 46px;
  border:1px solid rgba(128,226,255,.2);
  border-radius:15px;
  background:linear-gradient(145deg,rgba(20,83,122,.7),rgba(3,28,49,.85));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 18px rgba(0,12,28,.25);
}
.guide-agent-avatar::before{
  content:"";
  position:absolute;
  inset:4px;
  background:#36dbff;
  -webkit-mask:url("logo-mark.png") center/contain no-repeat;
  mask:url("logo-mark.png") center/contain no-repeat;
  filter:blur(5px);
  opacity:.25;
}
.guide-agent-avatar img{position:relative;z-index:1;width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 5px 5px rgba(0,34,84,.4))}
.guide-agent-avatar>i{
  position:absolute;
  right:-1px;
  bottom:-1px;
  z-index:2;
  width:11px;
  height:11px;
  border:2px solid #08263c;
  border-radius:50%;
  background:#2bd6ae;
  box-shadow:0 0 10px rgba(43,214,174,.75);
}
.guide-agent div{line-height:1.18}
.guide-agent strong{font-size:.82rem;letter-spacing:.005em}
.guide-agent small{font-size:.61rem;color:#b0cbd8;margin-top:5px}
.guide-close{width:34px;height:34px;border-radius:11px;cursor:pointer}
.guide-message{
  min-height:70px;
  padding:13px 14px;
  border-color:#d5e9f2;
  border-radius:15px 15px 15px 5px;
  background:linear-gradient(145deg,#eef9fe,#f8fcff);
}
.guide-message p{font-size:.78rem;line-height:1.56;color:#173a4e}
.guide-actions{gap:9px;margin-top:13px}
.guide-actions a{
  min-height:63px;
  grid-template-columns:34px 1fr auto;
  gap:11px;
  padding:10px 11px;
  border-radius:14px;
}
.guide-actions>a>span{width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#e3f6ff,#edf8ff);font-size:.62rem}
.guide-actions strong{font-size:.75rem;line-height:1.28}
.guide-actions small{font-size:.61rem;line-height:1.35}
.guide-foot{padding:12px 16px;font-size:.62rem}
.guide-foot a{display:inline-flex;align-items:center;gap:7px}
.guide-foot a::before{content:"";width:6px;height:6px;border-radius:50%;background:#2bd6ae;box-shadow:0 0 7px rgba(43,214,174,.65)}

@keyframes guideAssistantAura{
  0%,100%{opacity:.56;transform:scale(.92)}
  50%{opacity:.92;transform:scale(1.08)}
}
@keyframes guideAssistantRing{
  0%{opacity:.72;transform:scale(.72)}
  76%,100%{opacity:0;transform:scale(1.42)}
}
@keyframes guideAssistantFloat{
  0%,100%{margin-top:1px;filter:brightness(1)}
  44%{margin-top:-5px;filter:brightness(1.05)}
  70%{margin-top:-2px}
}
@keyframes guideAssistantLight{
  0%,20%{background-position:165% 0;opacity:.28}
  46%{opacity:1}
  64%,100%{background-position:-90% 0;opacity:.28}
}
@keyframes guideAssistantBase{
  0%,100%{transform:scaleX(.92);opacity:.55}
  50%{transform:scaleX(1.06);opacity:.95}
}
@keyframes guideAssistantParticle{
  0%,100%{opacity:0;transform:translate3d(0,8px,0) scale(.65)}
  25%{opacity:.85}
  70%{opacity:.35;transform:translate3d(4px,-18px,0) scale(1)}
}
@keyframes guideAssistantTalk{
  from{transform:scaleY(.62);opacity:.82}
  to{transform:scaleY(1.08);opacity:1}
}
@keyframes guideAssistantHello{
  0%,100%{transform:translateY(0) rotate(0)}
  28%{transform:translateY(-8px) rotate(-4deg)}
  56%{transform:translateY(-2px) rotate(3deg)}
}
@keyframes guideGreetingHello{
  0%,100%{transform:translateX(0) scale(1)}
  32%{transform:translateX(5px) scale(1.02)}
  60%{transform:translateX(1px) scale(1)}
}

@media(max-width:720px){
  .site-guide{left:10px;bottom:10px}
  .guide-companion{min-height:80px}
  .guide-trigger{width:76px;height:80px;border-radius:25px}
  .guide-halo{left:5px;top:3px;width:66px;height:66px}
  .guide-logo-body{left:5px;top:2px;width:66px;height:66px}
  .guide-logo-body img{width:65px;height:65px}
  .guide-face{left:42px;top:31px;width:24px;height:22px;transform:scale(.78);transform-origin:top left}
  .guide-hologram{left:14px;bottom:2px;width:50px;height:11px}
  .particle-one{left:7px;top:17px}.particle-two{right:5px;top:12px}.particle-three{left:18px;top:0}
  .guide-greeting{left:65px;bottom:17px;width:min(218px,calc(100vw - 92px));min-height:67px;padding:11px 31px 11px 14px;border-radius:15px 15px 15px 5px}
  .guide-greeting small{font-size:.49rem;letter-spacing:.09em}.guide-greeting strong{font-size:.78rem;margin-top:5px}.guide-greeting>span{font-size:.57rem}
  .guide-panel{position:fixed;left:10px;right:10px;bottom:91px;width:auto;max-height:calc(100vh - 112px);overflow:auto;transform-origin:bottom center}
  .guide-body{padding:15px}.guide-actions a{min-height:60px}.guide-foot{flex-direction:column;align-items:flex-start;gap:6px}
  .site-guide.is-settled:not(.open) .guide-greeting{opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-8px) scale(.92)}
}
@media(max-width:430px){
  .guide-panel{bottom:88px!important;border-radius:21px}
  .guide-head{min-height:70px;padding:12px 13px}
  .guide-agent-avatar{width:42px;height:42px;flex-basis:42px}.guide-agent-avatar img{width:36px;height:36px}
  .guide-agent strong{font-size:.76rem}.guide-agent small{font-size:.56rem}
  .guide-message p{font-size:.74rem}.guide-actions strong{font-size:.71rem}.guide-actions small{font-size:.58rem}
}
@media(max-width:350px){
  .guide-greeting{width:min(200px,calc(100vw - 88px));padding-right:28px}
  .guide-greeting>span{display:none}
}
@media(hover:none){
  .guide-trigger:hover{transform:none;filter:none}
}
@media(prefers-reduced-motion:reduce){
  .guide-halo,.guide-halo::before,.guide-halo::after,.guide-logo-body,.guide-logo-body::after,.guide-hologram,.guide-particle,.site-guide.attention .guide-character,.site-guide.attention .guide-greeting,.site-guide.is-speaking .guide-mouth,.guide-greeting small i{animation:none!important}
  .guide-logo-body{transform:none!important}
  .guide-eye i{transform:none!important}
}

/* ================================================================
   V14 — Premium Obliqwave Digital Concierge
   High-definition vector presentation, refined motion and a clearer,
   enterprise-grade assistance panel across desktop, tablet and mobile.
================================================================ */
.site-guide{
  --guide-tilt-x:0deg;
  --guide-tilt-y:0deg;
  --guide-shift-x:0px;
  --guide-shift-y:0px;
  left:24px;
  bottom:22px;
  z-index:1800;
  font-family:inherit;
}
.site-guide.is-footer-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate3d(0,28px,0) scale(.94);
}
.guide-companion{position:relative;display:flex;align-items:flex-end;min-height:112px;isolation:isolate}
.guide-trigger{
  position:relative;
  display:block;
  width:104px;
  height:104px;
  min-height:0;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  cursor:pointer;
  isolation:isolate;
  transition:transform .32s var(--ease),filter .32s var(--ease);
}
.guide-trigger::before,.guide-trigger::after{display:none!important}
.guide-trigger:hover,.guide-trigger:focus-visible{
  transform:translateY(-4px) scale(1.025);
  box-shadow:none;
  filter:drop-shadow(0 18px 22px rgba(1,29,57,.24));
}
.guide-trigger:focus-visible{outline:2px solid rgba(104,226,255,.95);outline-offset:6px}
.guide-character{
  position:absolute;
  inset:0;
  display:block;
  perspective:700px;
  transform-style:preserve-3d;
}
.guide-orb{filter:none}
.guide-glass{
  position:absolute;
  left:10px;
  top:8px;
  z-index:5;
  width:84px;
  height:84px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(151,230,255,.72);
  border-radius:50%;
  background:
    radial-gradient(circle at 30% 22%,rgba(255,255,255,.22),transparent 20%),
    radial-gradient(circle at 69% 74%,rgba(19,114,255,.24),transparent 40%),
    linear-gradient(145deg,rgba(6,39,68,.98),rgba(2,18,37,.99));
  box-shadow:
    0 18px 30px rgba(0,27,62,.34),
    0 0 0 4px rgba(25,133,216,.09),
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -12px 30px rgba(0,9,28,.34);
  transform:
    translate3d(var(--guide-shift-x),var(--guide-shift-y),18px)
    rotateX(var(--guide-tilt-y))
    rotateY(var(--guide-tilt-x));
  transform-origin:50% 55%;
  transition:transform .18s ease-out,box-shadow .28s ease;
  animation:guidePremiumFloat 5.8s ease-in-out infinite;
}
.guide-glass::before{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(158,235,255,.16);
  border-radius:50%;
  pointer-events:none;
}
.guide-glass-depth{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 48%,rgba(41,180,255,.16),transparent 48%),
    linear-gradient(120deg,transparent 0 42%,rgba(130,235,255,.06) 50%,transparent 58%);
  pointer-events:none;
}
.guide-logo-stage{
  position:relative;
  z-index:4;
  display:grid;
  place-items:center;
  width:66px;
  height:66px;
  transform:translateZ(22px);
  animation:guidePremiumLogo 7s ease-in-out infinite;
}
.guide-logo-stage::before{
  content:"";
  position:absolute;
  inset:5px;
  z-index:-1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(45,206,255,.22),transparent 68%);
  filter:blur(5px);
}
.guide-logo-stage img{
  width:64px;
  height:64px;
  display:block;
  object-fit:contain;
  image-rendering:auto;
  filter:
    drop-shadow(0 8px 7px rgba(0,20,72,.44))
    drop-shadow(0 0 4px rgba(72,220,255,.34));
  user-select:none;
  pointer-events:none;
}
.guide-glint{
  position:absolute;
  z-index:7;
  top:-28%;
  left:-54%;
  width:40%;
  height:160%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),rgba(148,238,255,.32),transparent);
  transform:rotate(18deg);
  opacity:.7;
  animation:guidePremiumGlint 5.8s cubic-bezier(.45,0,.2,1) infinite;
  pointer-events:none;
}
.guide-orbit{
  position:absolute;
  z-index:2;
  left:4px;
  top:2px;
  width:96px;
  height:96px;
  border-radius:50%;
  pointer-events:none;
}
.guide-orbit-primary{
  border:1px solid rgba(105,225,255,.4);
  transform:rotateX(67deg) rotateZ(12deg);
  animation:guidePremiumOrbitA 9s linear infinite;
}
.guide-orbit-secondary{
  left:8px;
  top:5px;
  width:88px;
  height:88px;
  border:1px solid rgba(47,134,255,.34);
  transform:rotateY(64deg) rotateZ(-18deg);
  animation:guidePremiumOrbitB 11s linear infinite reverse;
}
.guide-orbit-node{
  position:absolute;
  z-index:8;
  width:5px;
  height:5px;
  border:1px solid rgba(224,252,255,.9);
  border-radius:50%;
  background:#5be3ff;
  box-shadow:0 0 9px rgba(64,221,255,.85);
  pointer-events:none;
}
.guide-node-one{left:12px;top:28px;animation:guidePremiumNode 3.8s ease-in-out infinite}
.guide-node-two{right:9px;top:24px;animation:guidePremiumNode 4.4s ease-in-out .8s infinite}
.guide-node-three{right:24px;bottom:8px;width:4px;height:4px;animation:guidePremiumNode 4.1s ease-in-out 1.5s infinite}
.guide-status-badge{
  position:absolute;
  right:-2px;
  bottom:8px;
  z-index:12;
  display:flex;
  align-items:center;
  gap:5px;
  min-height:23px;
  padding:4px 8px;
  border:1px solid rgba(150,230,255,.72);
  border-radius:999px;
  background:rgba(4,30,51,.94);
  color:#dffaff;
  box-shadow:0 8px 18px rgba(0,25,47,.28),inset 0 1px 0 rgba(255,255,255,.1);
  font-size:10px;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1;
  backdrop-filter:blur(12px);
}
.guide-status-badge i{width:6px;height:6px;border-radius:50%;background:#31d7ad;box-shadow:0 0 8px rgba(49,215,173,.9);animation:guideStatus 2.2s ease-in-out infinite}
.guide-orb-shadow{
  position:absolute;
  left:22px;
  bottom:1px;
  z-index:1;
  width:62px;
  height:12px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(0,24,48,.38),transparent 70%);
  filter:blur(3px);
  animation:guidePremiumShadow 5.8s ease-in-out infinite;
}
.guide-greeting{
  position:absolute;
  left:94px;
  bottom:22px;
  z-index:15;
  width:286px;
  min-height:92px;
  padding:15px 39px 15px 18px;
  border:1px solid rgba(137,209,233,.74);
  border-radius:18px 18px 18px 6px;
  background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(242,250,254,.99));
  color:#08283e;
  box-shadow:0 22px 56px rgba(0,31,55,.2),inset 0 1px 0 rgba(255,255,255,.9);
  transform-origin:left bottom;
  transition:opacity .28s var(--ease),transform .32s var(--ease),visibility .28s;
  backdrop-filter:blur(18px);
}
.guide-greeting::before{
  content:"";
  position:absolute;
  left:-8px;
  bottom:17px;
  width:16px;
  height:16px;
  border-left:1px solid rgba(137,209,233,.74);
  border-bottom:1px solid rgba(137,209,233,.74);
  background:#f7fcff;
  transform:rotate(45deg);
}
.guide-greeting small{display:flex;align-items:center;gap:7px;color:#3c6d84;font-size:10px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.guide-greeting small i{width:6px;height:6px;border-radius:50%;background:#25d6b0;box-shadow:0 0 9px rgba(37,214,176,.8);animation:guideStatus 2.2s ease-in-out infinite}
.guide-greeting strong{display:block;margin-top:7px;color:#08263a;font-size:14px;line-height:1.28;letter-spacing:-.01em}
.guide-greeting>span{display:block;margin-top:5px;color:#5e798a;font-size:12px;line-height:1.45}
.guide-greeting-close{right:8px;top:8px;width:24px;height:24px;border-radius:8px;background:#eaf5fa;color:#527184;font-size:17px;cursor:pointer}
.guide-greeting-close:hover{background:#d9eef7;color:#0b5e87}
.site-guide.open .guide-greeting,.site-guide.greeting-dismissed .guide-greeting{opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-9px) scale(.94)}
.site-guide.attention .guide-glass{animation:guidePremiumHello 1.4s var(--ease) 2}
.site-guide.attention .guide-greeting{animation:guidePremiumGreeting 1.4s var(--ease) 2}
.site-guide.open .guide-glass{box-shadow:0 20px 36px rgba(0,28,62,.38),0 0 0 5px rgba(34,160,235,.1),0 0 24px rgba(48,209,255,.18),inset 0 1px 0 rgba(255,255,255,.28),inset 0 -12px 30px rgba(0,9,28,.34)}

.guide-panel{
  left:0;
  bottom:118px;
  width:min(430px,calc(100vw - 30px));
  border:1px solid rgba(133,203,228,.76);
  border-radius:24px;
  background:rgba(255,255,255,.99);
  box-shadow:0 34px 110px rgba(0,26,45,.32),0 0 0 1px rgba(255,255,255,.55) inset;
  overflow:hidden;
  transform-origin:bottom left;
  opacity:0;
  transform:translateY(15px) scale(.96);
  transition:opacity .32s var(--ease),transform .34s var(--ease),visibility .32s;
  backdrop-filter:blur(22px);
}
.guide-panel[hidden]{display:block;visibility:hidden;pointer-events:none}
.site-guide.open .guide-panel{opacity:1;transform:none;visibility:visible;pointer-events:auto}
.guide-head{
  min-height:82px;
  padding:15px 16px;
  background:
    radial-gradient(circle at 14% 8%,rgba(51,205,255,.17),transparent 34%),
    linear-gradient(135deg,#061a2d,#0b3b5c);
}
.guide-agent{display:flex;align-items:center;gap:12px}
.guide-agent-avatar{
  position:relative;
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  flex:0 0 50px;
  border:1px solid rgba(128,226,255,.24);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(20,83,122,.72),rgba(3,28,49,.88));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 9px 20px rgba(0,12,28,.28);
}
.guide-agent-avatar::before{content:"";position:absolute;inset:5px;border-radius:13px;background:radial-gradient(circle,rgba(45,205,255,.16),transparent 65%)}
.guide-agent-avatar img{position:relative;z-index:1;width:42px;height:42px;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 6px 5px rgba(0,26,75,.42))}
.guide-agent-avatar>i{position:absolute;right:-1px;bottom:-1px;z-index:2;width:12px;height:12px;border:2px solid #08263c;border-radius:50%;background:#2bd6ae;box-shadow:0 0 10px rgba(43,214,174,.75)}
.guide-agent div{display:flex;flex-direction:column;line-height:1.18}
.guide-agent strong{color:#fff;font-size:14px;letter-spacing:.004em}
.guide-agent small{display:flex;align-items:center;gap:7px;margin-top:6px;color:#b3cfdb;font-size:11px}
.guide-agent small i{width:6px;height:6px;border-radius:50%;background:#2bd6ae;box-shadow:0 0 8px rgba(43,214,174,.75)}
.guide-close{display:grid;place-items:center;width:35px;height:35px;border:1px solid rgba(255,255,255,.13);border-radius:11px;background:rgba(255,255,255,.07);color:#fff;font-size:20px;cursor:pointer}
.guide-close:hover{background:rgba(255,255,255,.13)}
.guide-body{padding:18px}
.guide-message{min-height:76px;padding:14px 15px;border:1px solid #d5e8f1;border-radius:16px 16px 16px 6px;background:linear-gradient(145deg,#eef9fe,#f9fcfe)}
.guide-message p{color:#173a4e;font-size:13px;line-height:1.58}
.guide-actions{display:grid;gap:10px;margin-top:14px}
.guide-actions a{
  display:grid;
  grid-template-columns:40px 1fr 22px;
  align-items:center;
  gap:12px;
  min-height:70px;
  padding:11px 12px;
  border:1px solid #dbe9f0;
  border-radius:15px;
  background:#fff;
  box-shadow:0 7px 20px rgba(0,34,58,.035);
  transition:transform .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease);
}
.guide-actions a:hover{transform:translateX(4px);border-color:#9dd4e8;background:#f8fcfe;box-shadow:0 12px 28px rgba(0,42,71,.08)}
.guide-action-icon{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border-radius:12px!important;background:linear-gradient(145deg,#e4f6ff,#edf8ff)!important;color:#0b67ea!important}
.guide-action-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.guide-actions div{display:flex;flex-direction:column;line-height:1.2}
.guide-actions strong{color:#0a293d;font-size:13px;line-height:1.3}
.guide-actions small{margin-top:4px;color:#6c8392;font-size:11px;line-height:1.42}
.guide-actions b{color:#0d67ff;font-size:17px;font-weight:700}
.guide-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 17px;border-top:1px solid #e0edf3;background:#f8fcfe;font-size:11px}
.guide-foot a{display:inline-flex;align-items:center;gap:7px;color:#0d67ff;font-weight:800}
.guide-foot a::before{content:"";width:6px;height:6px;border-radius:50%;background:#2bd6ae;box-shadow:0 0 7px rgba(43,214,174,.65)}
.guide-foot span{color:#718895}

@keyframes guidePremiumFloat{0%,100%{margin-top:1px}46%{margin-top:-5px}72%{margin-top:-2px}}
@keyframes guidePremiumLogo{0%,100%{transform:translateZ(22px) scale(.985)}50%{transform:translateZ(22px) scale(1.02)}}
@keyframes guidePremiumGlint{0%,22%{left:-54%;opacity:0}42%{opacity:.78}58%,100%{left:120%;opacity:0}}
@keyframes guidePremiumOrbitA{to{transform:rotateX(67deg) rotateZ(372deg)}}
@keyframes guidePremiumOrbitB{to{transform:rotateY(64deg) rotateZ(342deg)}}
@keyframes guidePremiumNode{0%,100%{opacity:.45;transform:scale(.78)}50%{opacity:1;transform:scale(1.18)}}
@keyframes guidePremiumShadow{0%,100%{transform:scaleX(.88);opacity:.62}50%{transform:scaleX(1.06);opacity:.38}}
@keyframes guidePremiumHello{0%,100%{transform:translate3d(var(--guide-shift-x),var(--guide-shift-y),18px) rotateX(var(--guide-tilt-y)) rotateY(var(--guide-tilt-x))}30%{transform:translate3d(var(--guide-shift-x),-8px,18px) rotateX(var(--guide-tilt-y)) rotateY(calc(var(--guide-tilt-x) - 6deg))}60%{transform:translate3d(var(--guide-shift-x),-2px,18px) rotateX(var(--guide-tilt-y)) rotateY(calc(var(--guide-tilt-x) + 4deg))}}
@keyframes guidePremiumGreeting{0%,100%{transform:translateX(0) scale(1)}32%{transform:translateX(5px) scale(1.015)}64%{transform:translateX(1px) scale(1)}}

@media(max-width:720px){
  .site-guide{left:12px;bottom:12px}
  .guide-companion{min-height:84px}
  .guide-trigger{width:78px;height:78px}
  .guide-glass{left:7px;top:6px;width:64px;height:64px}
  .guide-logo-stage{width:50px;height:50px}.guide-logo-stage img{width:49px;height:49px}
  .guide-orbit-primary{left:2px;top:1px;width:74px;height:74px}.guide-orbit-secondary{left:5px;top:4px;width:68px;height:68px}
  .guide-node-one{left:8px;top:22px}.guide-node-two{right:5px;top:18px}.guide-node-three{right:17px;bottom:5px}
  .guide-status-badge{right:-4px;bottom:4px;min-height:20px;padding:3px 6px;font-size:9px}.guide-status-badge i{width:5px;height:5px}
  .guide-orb-shadow{left:17px;bottom:0;width:46px;height:9px}
  .guide-greeting{left:70px;bottom:13px;width:min(258px,calc(100vw - 92px));min-height:80px;padding:13px 35px 13px 15px;border-radius:16px 16px 16px 5px}
  .guide-greeting small{font-size:9px;letter-spacing:.08em}.guide-greeting strong{font-size:12.5px;margin-top:6px}.guide-greeting>span{font-size:11px;line-height:1.4}
  .guide-panel{position:fixed;left:10px;right:10px;bottom:96px;width:auto;max-height:calc(100vh - 118px);overflow:auto;transform-origin:bottom center}
  .guide-body{padding:15px}.guide-actions a{min-height:66px;grid-template-columns:38px 1fr 18px;gap:10px;padding:10px}.guide-action-icon{width:38px!important;height:38px!important}
  .guide-foot{flex-direction:column;align-items:flex-start;gap:6px}
  .site-guide.is-settled:not(.open) .guide-greeting{opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-8px) scale(.94)}
}
@media(max-width:430px){
  .guide-panel{bottom:92px!important;border-radius:21px}
  .guide-head{min-height:74px;padding:13px 14px}.guide-agent-avatar{width:44px;height:44px;flex-basis:44px}.guide-agent-avatar img{width:38px;height:38px}
  .guide-agent strong{font-size:12.5px}.guide-agent small{font-size:10px}.guide-message p{font-size:12px}.guide-actions strong{font-size:12px}.guide-actions small{font-size:10.5px}
}
@media(max-width:350px){.guide-greeting{width:min(225px,calc(100vw - 88px))}.guide-greeting>span{display:none}}
@media(hover:none){.guide-trigger:hover{transform:none;filter:none}}
@media(prefers-reduced-motion:reduce){
  .guide-glass,.guide-logo-stage,.guide-glint,.guide-orbit-primary,.guide-orbit-secondary,.guide-orbit-node,.guide-status-badge i,.guide-orb-shadow,.site-guide.attention .guide-glass,.site-guide.attention .guide-greeting,.guide-greeting small i{animation:none!important}
  .guide-glass{transform:none!important}
}

/* ======================================================================
   V15 — Ocean-wave concierge refinement
   Cleaner, sharper and more professional motion inspired by flowing water.
   This block intentionally overrides older guide styles.
   ====================================================================== */
.site-guide{
  --guide-ocean-cyan:#6feeff;
  --guide-ocean-blue:#1798ff;
  --guide-ocean-deep:#06385f;
  --guide-ocean-navy:#031b31;
  --guide-ocean-shadow:rgba(0,24,52,.28);
  left:22px;
  bottom:20px;
}
.guide-companion{min-height:106px;align-items:flex-end;}
.guide-trigger{width:114px;height:92px;border-radius:22px;filter:none;}
.guide-trigger:hover,.guide-trigger:focus-visible{transform:translateY(-3px);filter:drop-shadow(0 20px 24px rgba(0,27,58,.16));}
.guide-character{inset:auto 0 0 0;height:92px;perspective:none;transform-style:flat;}
.guide-orbit,.guide-orbit-node,.guide-status-badge{display:none !important;}
.guide-glass{
  position:absolute;left:8px;top:4px;z-index:4;width:96px;height:72px;display:block;overflow:visible;
  border:0;border-radius:0;background:transparent;box-shadow:none;transform:none !important;
  animation:guideWaveBob 4.8s ease-in-out infinite;
}
.guide-glass::before{
  content:"";position:absolute;left:6px;right:6px;top:6px;bottom:10px;border-radius:28px;
  background:
    radial-gradient(ellipse at 28% 28%, rgba(255,255,255,.18), transparent 30%),
    radial-gradient(ellipse at 68% 72%, rgba(25,152,255,.10), transparent 32%),
    radial-gradient(ellipse at 50% 58%, rgba(50,205,255,.13), transparent 50%);
  filter:blur(8px);opacity:.95;
}
.guide-glass::after{
  content:"";position:absolute;left:10px;right:10px;top:12px;bottom:18px;border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,0) 42%);filter:blur(2px);opacity:.55;
}
.guide-glass-depth{
  position:absolute;left:16px;right:16px;bottom:-1px;height:16px;border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(96,230,255,.30), rgba(6,89,162,.04) 65%, transparent 72%);
  filter:blur(4px);opacity:.9;animation:guideWaveReflection 4.8s ease-in-out infinite;
}
.guide-logo-stage{position:absolute;left:8px;top:0;width:80px;height:80px;z-index:5;transform:none;animation:guideWaveLogo 4.8s ease-in-out infinite;}
.guide-logo-stage::before{content:"";position:absolute;inset:5px;border-radius:50%;background:radial-gradient(circle, rgba(74,222,255,.22), transparent 70%);filter:blur(7px);z-index:-1;}
.guide-logo-stage::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(102deg,transparent 18%,rgba(255,255,255,.10) 34%,rgba(215,250,255,.95) 48%,rgba(90,232,255,.24) 62%,transparent 78%);
  background-size:240% 100%;background-position:160% 0;
  -webkit-mask:url("logo-mark.png") center/contain no-repeat;mask:url("logo-mark.png") center/contain no-repeat;
  mix-blend-mode:screen;opacity:.88;animation:guideWaveSweep 5.6s cubic-bezier(.45,0,.22,1) infinite;
}
.guide-logo-stage img{width:80px;height:80px;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 10px 10px rgba(0,30,88,.24));transform-origin:52% 72%;}
.guide-glint{position:absolute;left:15px;bottom:2px;width:60px;height:10px;border-radius:50%;background:radial-gradient(ellipse at center, rgba(107,239,255,.52), rgba(20,111,194,.08) 60%, transparent 72%);filter:blur(6px);opacity:.9;animation:guideWavePulse 4.8s ease-in-out infinite;}
.guide-orb-shadow{
  position:absolute;left:18px;bottom:-1px;z-index:1;width:68px;height:16px;border-radius:50%;
  border:1px solid rgba(105,231,255,.35);
  background:radial-gradient(ellipse at center, rgba(54,216,255,.16), rgba(5,67,123,.03) 68%, transparent 72%);
  box-shadow:0 0 16px rgba(40,203,255,.10), inset 0 0 10px rgba(131,239,255,.08);
  animation:guideWaveRipple 3.8s ease-out infinite;
}
.guide-orb-shadow::before,.guide-orb-shadow::after{content:"";position:absolute;inset:-1px;border-radius:inherit;border:1px solid rgba(104,228,255,.26);opacity:.72;transform:scale(.88);animation:guideWaveRipple 3.8s ease-out infinite;}
.guide-orb-shadow::before{animation-delay:1.25s}.guide-orb-shadow::after{animation-delay:2.5s}
.site-guide.open .guide-glass,.site-guide.attention .guide-glass{box-shadow:none;}
.site-guide.attention .guide-glass{animation:guideWaveAttention 1.15s ease 2, guideWaveBob 4.8s ease-in-out infinite 0s}
.guide-greeting{left:98px;bottom:18px;}
.guide-agent-avatar,.guide-agent-avatar::before,.guide-agent-avatar img{border-radius:14px;}
.guide-agent-avatar{background:linear-gradient(145deg,#083055,#061b30)}
.guide-agent-avatar img{filter:drop-shadow(0 5px 6px rgba(0,32,86,.28))}
@keyframes guideWaveBob{0%,100%{transform:translate3d(0,0,0) rotate(-1.4deg)}22%{transform:translate3d(0,-1px,0) rotate(.8deg)}50%{transform:translate3d(0,-4px,0) rotate(1.6deg)}76%{transform:translate3d(0,-1px,0) rotate(-.4deg)}}
@keyframes guideWaveLogo{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}30%{transform:translate3d(1px,-1px,0) rotate(1.2deg)}52%{transform:translate3d(0,-3px,0) rotate(1.8deg)}76%{transform:translate3d(-1px,-1px,0) rotate(-.6deg)}}
@keyframes guideWaveReflection{0%,100%{opacity:.78;transform:scaleX(.88)}50%{opacity:1;transform:scaleX(1.04)}}
@keyframes guideWavePulse{0%,100%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}
@keyframes guideWaveSweep{0%,15%{background-position:155% 0;opacity:.18}42%{opacity:.96}62%,100%{background-position:-80% 0;opacity:.22}}
@keyframes guideWaveRipple{0%{transform:scale(.86);opacity:.8}76%,100%{transform:scale(1.7);opacity:0}}
@keyframes guideWaveAttention{0%,100%{transform:translate3d(0,0,0)}30%{transform:translate3d(0,-5px,0)}65%{transform:translate3d(0,-1px,0)}}
@media(max-width:720px){
  .site-guide{left:12px;bottom:12px}
  .guide-companion{min-height:84px}
  .guide-trigger{width:84px;height:70px;border-radius:18px}
  .guide-character{height:70px}
  .guide-glass{left:4px;top:2px;width:74px;height:56px}
  .guide-logo-stage{left:4px;width:62px;height:62px}
  .guide-logo-stage img{width:62px;height:62px}
  .guide-orb-shadow{left:14px;width:48px;height:12px;bottom:-1px}
  .guide-glint{left:12px;width:44px;height:8px}
  .guide-greeting{left:74px;bottom:10px;width:min(228px,calc(100vw - 98px))}
}
@media(max-width:430px){.guide-greeting{width:min(198px,calc(100vw - 92px));padding:11px 31px 11px 14px}.guide-greeting strong{font-size:13px}.guide-greeting>span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.guide-glass,.guide-glass-depth,.guide-logo-stage,.guide-logo-stage::after,.guide-glint,.guide-orb-shadow,.guide-orb-shadow::before,.guide-orb-shadow::after,.site-guide.attention .guide-glass{animation:none !important}}


/* ======================================================================
   V16 — Higher-quality ocean wave concierge
   Sharper rendering, more natural wave motion, and smoother premium polish.
   ====================================================================== */
.site-guide{
  left:22px;
  bottom:20px;
}
.guide-trigger{
  width:122px;
  height:96px;
  border-radius:24px;
}
.guide-character{
  height:96px;
  filter:drop-shadow(0 10px 18px rgba(0,33,73,.09));
}
.guide-glass,
.guide-logo-stage,
.guide-logo-stage img,
.guide-glint,
.guide-orb-shadow,
.guide-orb-shadow::before,
.guide-orb-shadow::after{
  will-change:transform,opacity;
  backface-visibility:hidden;
}
.guide-glass{
  left:8px;
  top:3px;
  width:102px;
  height:78px;
  animation:guideWaveCarrier 6.2s cubic-bezier(.42,0,.18,1) infinite;
}
.guide-glass::before{
  left:4px;
  right:4px;
  top:8px;
  bottom:12px;
  border-radius:34px;
  background:
    radial-gradient(ellipse at 26% 24%,rgba(255,255,255,.18),transparent 28%),
    radial-gradient(ellipse at 68% 70%,rgba(27,155,255,.12),transparent 36%),
    linear-gradient(125deg,rgba(111,239,255,.14),rgba(14,86,182,.03) 62%,transparent 75%);
  filter:blur(9px);
  opacity:.95;
}
.guide-glass::after{
  left:10px;
  right:10px;
  top:12px;
  bottom:22px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.02) 35%,rgba(255,255,255,0) 68%);
  opacity:.7;
}
.guide-glass-depth{
  left:18px;
  right:18px;
  bottom:0;
  height:15px;
  background:radial-gradient(ellipse at center, rgba(105,234,255,.34), rgba(6,89,162,.04) 66%, transparent 72%);
  filter:blur(5px);
  animation:guideWaveReflection2 6.2s cubic-bezier(.42,0,.18,1) infinite;
}
.guide-logo-stage{
  left:9px;
  top:-2px;
  width:86px;
  height:86px;
  animation:guideWaveStage 6.2s cubic-bezier(.42,0,.18,1) infinite;
}
.guide-logo-stage::before{
  inset:4px;
  background:radial-gradient(circle, rgba(78,226,255,.24), rgba(21,111,214,.08) 56%, transparent 72%);
  filter:blur(8px);
  animation:guideWaveAura 6.2s ease-in-out infinite;
}
.guide-logo-stage::after{
  background:linear-gradient(102deg,transparent 12%,rgba(255,255,255,.08) 26%,rgba(232,251,255,.92) 45%,rgba(99,234,255,.24) 58%,transparent 74%);
  background-size:230% 100%;
  animation:guideWaveSweep2 6.6s cubic-bezier(.45,0,.22,1) infinite;
}
.guide-logo-stage img{
  width:86px;
  height:86px;
  transform-origin:50% 76%;
  transform:translateZ(0);
  image-rendering:auto;
  filter:drop-shadow(0 12px 14px rgba(0,29,85,.24));
  animation:guideWaveCrest 6.2s cubic-bezier(.42,0,.18,1) infinite;
}
.guide-glint{
  left:15px;
  bottom:1px;
  width:64px;
  height:11px;
  background:radial-gradient(ellipse at center, rgba(116,241,255,.56), rgba(20,111,194,.10) 58%, transparent 72%);
  filter:blur(7px);
  animation:guideWavePulse2 6.2s ease-in-out infinite;
}
.guide-orb-shadow{
  left:20px;
  width:70px;
  height:16px;
  border-color:rgba(109,231,255,.28);
  background:radial-gradient(ellipse at center, rgba(58,219,255,.18), rgba(7,64,118,.03) 68%, transparent 74%);
  box-shadow:0 0 18px rgba(40,203,255,.10), inset 0 0 10px rgba(131,239,255,.07);
  animation:guideWaveRipple2 4.4s ease-out infinite;
}
.guide-orb-shadow::before,.guide-orb-shadow::after{
  border-color:rgba(112,231,255,.22);
  animation:guideWaveRipple2 4.4s ease-out infinite;
}
.guide-orb-shadow::before{animation-delay:1.45s}
.guide-orb-shadow::after{animation-delay:2.9s}
.site-guide.attention .guide-glass{
  animation:guideWaveAttention2 1.25s ease 2, guideWaveCarrier 6.2s cubic-bezier(.42,0,.18,1) infinite;
}
.site-guide.open .guide-character{filter:drop-shadow(0 16px 24px rgba(0,34,71,.12))}

@keyframes guideWaveCarrier{
  0%,100%{transform:translate3d(0,0,0) rotate(-1.2deg)}
  16%{transform:translate3d(2px,-1px,0) rotate(.8deg)}
  33%{transform:translate3d(4px,-4px,0) rotate(2.2deg)}
  50%{transform:translate3d(0,-7px,0) rotate(.6deg)}
  66%{transform:translate3d(-4px,-4px,0) rotate(-2.2deg)}
  82%{transform:translate3d(-2px,-1px,0) rotate(-.8deg)}
}
@keyframes guideWaveStage{
  0%,100%{transform:translate3d(0,0,0) rotate(-.8deg)}
  18%{transform:translate3d(2px,-1px,0) rotate(.9deg)}
  36%{transform:translate3d(3px,-5px,0) rotate(2.4deg)}
  50%{transform:translate3d(0,-8px,0) rotate(.3deg)}
  68%{transform:translate3d(-3px,-5px,0) rotate(-2.4deg)}
  84%{transform:translate3d(-2px,-1px,0) rotate(-.9deg)}
}
@keyframes guideWaveCrest{
  0%,100%{transform:translate3d(0,0,0) rotate(-.5deg) scale(1)}
  18%{transform:translate3d(1px,-1px,0) rotate(.9deg) scale(1.006)}
  36%{transform:translate3d(2px,-4px,0) rotate(2deg) scale(1.012)}
  50%{transform:translate3d(0,-6px,0) rotate(.2deg) scale(1.015)}
  68%{transform:translate3d(-2px,-4px,0) rotate(-2deg) scale(1.012)}
  84%{transform:translate3d(-1px,-1px,0) rotate(-.9deg) scale(1.006)}
}
@keyframes guideWaveAura{
  0%,100%{opacity:.7;transform:scale(.96)}
  50%{opacity:1;transform:scale(1.04)}
}
@keyframes guideWaveReflection2{
  0%,100%{opacity:.76;transform:scaleX(.88) translateY(0)}
  50%{opacity:1;transform:scaleX(1.08) translateY(1px)}
}
@keyframes guideWavePulse2{
  0%,100%{opacity:.42;transform:scale(.88) translateX(0)}
  50%{opacity:.98;transform:scale(1.12) translateX(1px)}
}
@keyframes guideWaveSweep2{
  0%,12%{background-position:155% 0;opacity:.14}
  34%{opacity:.88}
  58%{background-position:20% 0;opacity:.92}
  100%{background-position:-90% 0;opacity:.18}
}
@keyframes guideWaveRipple2{
  0%{transform:scale(.82);opacity:.84}
  72%,100%{transform:scale(1.78);opacity:0}
}
@keyframes guideWaveAttention2{
  0%,100%{transform:translate3d(0,0,0)}
  28%{transform:translate3d(3px,-6px,0) rotate(1deg)}
  62%{transform:translate3d(-2px,-2px,0) rotate(-.6deg)}
}
@media(max-width:720px){
  .guide-trigger{width:92px;height:74px}
  .guide-character{height:74px}
  .guide-glass{left:4px;top:2px;width:80px;height:60px}
  .guide-logo-stage{left:5px;top:-1px;width:67px;height:67px}
  .guide-logo-stage img{width:67px;height:67px}
  .guide-orb-shadow{left:15px;width:52px;height:12px}
  .guide-glint{left:12px;width:48px;height:9px}
}
@media(prefers-reduced-motion:reduce){
  .guide-glass,.guide-glass-depth,.guide-logo-stage,.guide-logo-stage::before,.guide-logo-stage::after,.guide-logo-stage img,.guide-glint,.guide-orb-shadow,.guide-orb-shadow::before,.guide-orb-shadow::after,.site-guide.attention .guide-glass{animation:none !important}
}

/* ======================================================================
   V17 — Premium project concierge panel
   Refined hierarchy, spacing, interaction and mobile clarity.
   ====================================================================== */
.guide-panel{
  width:min(446px,calc(100vw - 30px));
  border:1px solid rgba(130,201,229,.76);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(247,252,255,.995));
  box-shadow:
    0 34px 110px rgba(0,27,48,.28),
    0 0 0 1px rgba(255,255,255,.75) inset,
    0 18px 42px rgba(13,103,255,.06);
}
.guide-head{
  position:relative;
  min-height:82px;
  padding:16px 18px;
  overflow:hidden;
  background:
    radial-gradient(circle at 9% 5%,rgba(69,218,255,.22),transparent 35%),
    radial-gradient(circle at 92% 90%,rgba(13,103,255,.18),transparent 44%),
    linear-gradient(135deg,#06182b 0%,#082f4c 58%,#0a4667 100%);
}
.guide-head::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(111,232,255,.55),transparent);
}
.guide-agent{position:relative;z-index:1;gap:12px}
.guide-agent-avatar{
  width:50px;
  height:50px;
  flex-basis:50px;
  border:1px solid rgba(143,229,255,.30);
  border-radius:16px;
  background:
    radial-gradient(circle at 30% 22%,rgba(111,236,255,.18),transparent 34%),
    linear-gradient(145deg,rgba(17,80,119,.92),rgba(4,27,48,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 24px rgba(0,13,31,.28);
}
.guide-agent-avatar img{width:43px;height:43px}
.guide-agent strong{font-size:14px;letter-spacing:-.01em}
.guide-agent small{margin-top:5px;color:#b9d5e2;font-size:11px;line-height:1.35}
.guide-close{
  position:relative;
  z-index:1;
  width:36px;
  height:36px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:12px;
  background:rgba(255,255,255,.075);
  color:#e8faff;
  transition:.22s ease;
}
.guide-close:hover{background:rgba(255,255,255,.15);transform:rotate(4deg)}
.guide-body{
  padding:20px;
  background:
    radial-gradient(circle at 100% 0,rgba(38,194,255,.055),transparent 34%),
    linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
.guide-message{
  position:relative;
  min-height:82px;
  padding:16px 17px 16px 52px;
  border:1px solid #cfe5f0;
  border-radius:18px 18px 18px 7px;
  background:
    linear-gradient(135deg,rgba(233,248,255,.96),rgba(248,252,255,.98));
  box-shadow:inset 0 1px 0 #fff,0 10px 24px rgba(4,47,76,.045);
}
.guide-message::before{
  content:"";
  position:absolute;
  left:16px;
  top:17px;
  width:24px;
  height:24px;
  border-radius:9px;
  background:
    linear-gradient(145deg,#0d67ff,#20c9ee);
  box-shadow:0 8px 18px rgba(13,103,255,.20);
  -webkit-mask:url("logo-mark.png") center/19px 19px no-repeat;
  mask:url("logo-mark.png") center/19px 19px no-repeat;
}
.guide-message p{
  color:#15384e;
  font-size:13px;
  line-height:1.62;
  font-weight:530;
}
.guide-actions{
  display:grid;
  gap:11px;
  margin-top:15px;
}
.guide-actions a{
  position:relative;
  grid-template-columns:46px minmax(0,1fr) 30px;
  gap:12px;
  min-height:76px;
  padding:12px 13px;
  overflow:hidden;
  border:1px solid #d5e7f0;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#fbfdff);
  box-shadow:0 8px 22px rgba(4,38,61,.045),inset 0 1px 0 #fff;
  transition:transform .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease);
}
.guide-actions a::before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg,#20c9ee,#0d67ff);
  opacity:.72;
  transition:.25s ease;
}
.guide-actions a::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 0 42%,rgba(105,230,255,.08) 50%,transparent 58%);
  background-size:240% 100%;
  background-position:150% 0;
  opacity:0;
  transition:opacity .25s ease;
}
.guide-actions a:hover{
  transform:translateY(-2px);
  border-color:#9fd4e8;
  background:linear-gradient(145deg,#fff,#f5fbff);
  box-shadow:0 16px 32px rgba(0,55,91,.095),0 0 0 1px rgba(64,201,238,.05) inset;
}
.guide-actions a:hover::before{width:4px;opacity:1}
.guide-actions a:hover::after{opacity:1;animation:guideCardSheen 1.25s ease both}
.guide-action-icon{
  width:46px!important;
  height:46px!important;
  border:1px solid #d6ebf5;
  border-radius:14px!important;
  background:
    radial-gradient(circle at 30% 20%,rgba(255,255,255,.95),transparent 34%),
    linear-gradient(145deg,#e8f8ff,#edf4ff)!important;
  color:#0d67ff!important;
  box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(13,103,255,.07);
}
.guide-action-icon svg{width:21px;height:21px;stroke-width:1.8}
.guide-actions div{min-width:0}
.guide-actions strong{
  color:#092b41;
  font-size:13.5px;
  line-height:1.3;
  letter-spacing:-.01em;
}
.guide-actions small{
  margin-top:5px;
  color:#637e90;
  font-size:11px;
  line-height:1.48;
}
.guide-actions b{
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  border:1px solid #cfe5ef;
  border-radius:10px;
  background:#f4fbff;
  color:#0d67ff;
  font-size:15px;
  font-weight:760;
  transition:.22s ease;
}
.guide-actions a:hover b{
  transform:translateX(2px);
  border-color:#9bcfe3;
  background:#eaf7fd;
}
.guide-foot{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px 17px;
  border-top:1px solid #dcebf2;
  background:
    linear-gradient(180deg,#f8fcfe,#f3f9fc);
  font-size:11px;
}
.guide-foot a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:9px 13px;
  border:1px solid rgba(13,103,255,.18);
  border-radius:12px;
  background:linear-gradient(135deg,#0d67ff,#118ee8);
  color:#fff;
  font-weight:820;
  box-shadow:0 10px 22px rgba(13,103,255,.17);
  transition:.22s ease;
}
.guide-foot a::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#6ff1d0;
  box-shadow:0 0 9px rgba(111,241,208,.78);
}
.guide-foot a:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(13,103,255,.22)}
.guide-foot span{
  color:#567181;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
@keyframes guideCardSheen{
  from{background-position:150% 0}
  to{background-position:-80% 0}
}
@media(max-width:720px){
  .guide-panel{left:8px;right:8px;bottom:94px;border-radius:24px;max-height:calc(100vh - 108px)}
  .guide-head{min-height:76px;padding:14px 15px}
  .guide-agent-avatar{width:46px;height:46px;flex-basis:46px}.guide-agent-avatar img{width:40px;height:40px}
  .guide-agent strong{font-size:13px}.guide-agent small{font-size:10.5px}
  .guide-body{padding:15px}
  .guide-message{min-height:76px;padding:14px 14px 14px 47px}
  .guide-message::before{left:14px;top:15px;width:22px;height:22px}
  .guide-message p{font-size:12.2px;line-height:1.57}
  .guide-actions{gap:9px;margin-top:12px}
  .guide-actions a{grid-template-columns:42px minmax(0,1fr) 28px;min-height:70px;padding:10px 11px;border-radius:16px}
  .guide-action-icon{width:42px!important;height:42px!important;border-radius:13px!important}
  .guide-action-icon svg{width:19px;height:19px}
  .guide-actions strong{font-size:12.5px}.guide-actions small{font-size:10.4px;line-height:1.42}
  .guide-actions b{width:27px;height:27px;border-radius:9px}
  .guide-foot{grid-template-columns:1fr;gap:8px;padding:12px 14px}
  .guide-foot a{width:100%;min-height:40px}
  .guide-foot span{text-align:center;white-space:normal}
}
@media(max-width:390px){
  .guide-panel{left:6px;right:6px}
  .guide-body{padding:13px}
  .guide-actions a{grid-template-columns:39px minmax(0,1fr) 26px;gap:9px;padding:9px}
  .guide-action-icon{width:39px!important;height:39px!important}
  .guide-actions strong{font-size:12px}.guide-actions small{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .guide-actions a:hover::after{animation:none}
}


/* ======================================================================
   V18 — Concierge clarity and premium layout refinement
   Prevent clipping, improve readability, and sharpen logo presentation.
   ====================================================================== */
.guide-panel{
  width:min(460px,calc(100vw - 28px));
  border-color:rgba(146,211,234,.88);
  border-radius:30px;
  overflow:hidden;
}
.guide-head{
  min-height:88px;
  padding:18px 20px;
}
.guide-agent{align-items:center;gap:14px}
.guide-agent-avatar{
  width:54px;
  height:54px;
  flex-basis:54px;
  border-radius:18px;
  border:1px solid rgba(151,233,255,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 14px 28px rgba(0,13,31,.22);
}
.guide-agent-avatar::before{inset:4px;border-radius:14px}
.guide-agent-avatar img{
  width:46px;
  height:46px;
  image-rendering:auto;
  filter:drop-shadow(0 6px 7px rgba(0,26,75,.24));
}
.guide-agent strong{
  font-size:15px;
  letter-spacing:-.012em;
}
.guide-agent small{
  font-size:11.5px;
  color:#c7deea;
}
.guide-close{
  width:38px;
  height:38px;
  border-radius:13px;
}
.guide-body{
  padding:22px;
}
.guide-message{
  min-height:96px;
  padding:18px 18px 18px 56px;
  border-radius:20px 20px 20px 8px;
}
.guide-message::before{
  left:17px;
  top:18px;
  width:26px;
  height:26px;
  -webkit-mask-size:20px 20px;
  mask-size:20px 20px;
}
.guide-message p{
  color:#14354a;
  font-size:14px;
  line-height:1.68;
  font-weight:550;
  letter-spacing:-.005em;
}
.guide-actions{gap:12px;margin-top:16px}
.guide-actions a{
  grid-template-columns:52px minmax(0,1fr) 34px;
  gap:14px;
  min-height:82px;
  padding:14px 15px;
  border-radius:20px;
}
.guide-actions a::before{top:12px;bottom:12px;width:4px}
.guide-action-icon{
  width:52px!important;
  height:52px!important;
  border-radius:16px!important;
  box-shadow:inset 0 1px 0 #fff,0 10px 20px rgba(13,103,255,.08);
}
.guide-action-icon svg{width:22px;height:22px;stroke-width:1.9}
.guide-actions strong{
  display:block;
  color:#0a2f47;
  font-size:15px;
  line-height:1.32;
  letter-spacing:-.012em;
}
.guide-actions small{
  display:block;
  margin-top:6px;
  color:#5f7889;
  font-size:12.2px;
  line-height:1.55;
}
.guide-actions b{
  width:31px;
  height:31px;
  border-radius:11px;
  font-size:15px;
}
.guide-foot{
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  padding:16px 18px;
}
.guide-foot a{
  min-height:42px;
  padding:10px 14px;
  border-radius:13px;
  font-size:12.5px;
}
.guide-foot span{
  color:#4d697b;
  font-size:12px;
  font-weight:800;
}

@media(max-width:720px){
  .guide-panel{
    left:8px;
    right:8px;
    top:max(8px, env(safe-area-inset-top));
    bottom:86px;
    width:auto;
    max-height:calc(100dvh - 96px - max(8px, env(safe-area-inset-top)));
    display:flex;
    flex-direction:column;
    border-radius:24px;
  }
  .guide-head{
    min-height:78px;
    padding:14px 15px;
    flex:0 0 auto;
  }
  .guide-agent{gap:11px}
  .guide-agent-avatar{width:48px;height:48px;flex-basis:48px;border-radius:15px}
  .guide-agent-avatar img{width:40px;height:40px}
  .guide-agent strong{font-size:13.5px}
  .guide-agent small{font-size:10.5px;line-height:1.3}
  .guide-close{width:34px;height:34px}
  .guide-body{
    flex:1 1 auto;
    overflow:auto;
    padding:14px;
  }
  .guide-message{
    min-height:82px;
    padding:14px 14px 14px 46px;
    border-radius:18px;
  }
  .guide-message::before{left:14px;top:15px;width:21px;height:21px;-webkit-mask-size:16px 16px;mask-size:16px 16px}
  .guide-message p{font-size:13px;line-height:1.58}
  .guide-actions{gap:10px;margin-top:13px}
  .guide-actions a{
    grid-template-columns:44px minmax(0,1fr) 28px;
    gap:11px;
    min-height:76px;
    padding:11px 12px;
    border-radius:18px;
  }
  .guide-action-icon{width:44px!important;height:44px!important;border-radius:14px!important}
  .guide-action-icon svg{width:19px;height:19px}
  .guide-actions strong{font-size:13px;line-height:1.28}
  .guide-actions small{font-size:11px;line-height:1.45;margin-top:5px}
  .guide-actions b{width:28px;height:28px;border-radius:10px;font-size:14px}
  .guide-foot{
    flex:0 0 auto;
    grid-template-columns:1fr;
    gap:9px;
    padding:12px 14px;
  }
  .guide-foot a{width:100%;font-size:12px}
  .guide-foot span{text-align:center;white-space:normal;font-size:11.5px}
}
@media(max-width:390px){
  .guide-panel{left:6px;right:6px;bottom:82px;border-radius:22px;max-height:calc(100dvh - 90px - max(8px, env(safe-area-inset-top)))}
  .guide-body{padding:12px}
  .guide-message p{font-size:12.5px}
  .guide-actions a{grid-template-columns:40px minmax(0,1fr) 26px;gap:9px;padding:10px}
  .guide-action-icon{width:40px!important;height:40px!important}
  .guide-actions strong{font-size:12.3px}
  .guide-actions small{font-size:10.5px;line-height:1.4}
}


/* ======================================================================
   V19 — Concierge readability, fit and wave refinement
   Improves greeting clarity, prevents clipping, and gives the live guide
   a calmer, more realistic ocean-wave motion.
   ====================================================================== */
.site-guide{z-index:1200}

/* Calm, readable greeting bubble */
.guide-greeting{
  left:96px;
  bottom:22px;
  width:min(320px,calc(100vw - 118px));
  min-height:104px;
  padding:16px 42px 16px 18px;
  border-radius:20px 20px 20px 8px;
  border:1px solid rgba(181,221,237,.98);
  background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(245,251,254,.98));
  box-shadow:0 18px 42px rgba(5,26,49,.24), 0 2px 0 rgba(255,255,255,.78) inset;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.guide-greeting::before{
  content:"";
  position:absolute;
  left:-9px;
  bottom:16px;
  width:22px;
  height:22px;
  border-radius:0 0 0 7px;
  background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(243,250,254,.98));
  border-left:1px solid rgba(181,221,237,.98);
  border-bottom:1px solid rgba(181,221,237,.98);
  transform:rotate(45deg);
  box-shadow:-6px 8px 14px rgba(5,26,49,.08);
}
.guide-greeting small{color:#37667f;font-size:10px;letter-spacing:.12em;font-weight:900}
.guide-greeting strong{margin-top:8px;color:#07283e;font-size:17px;line-height:1.24;letter-spacing:-.018em}
.guide-greeting>span{margin-top:7px;color:#557687;font-size:12.5px;line-height:1.52;font-weight:600}
.guide-greeting-close{
  right:10px;top:10px;width:26px;height:26px;border-radius:9px;
  background:#eef7fb;color:#44697b;border:1px solid rgba(188,220,232,.95);
}
.guide-greeting-close:hover{background:#e3f2f8;color:#123a52}

/* Cleaner, more premium open panel */
.guide-panel{
  width:min(470px,calc(100vw - 24px));
  border-radius:28px;
  border:1px solid rgba(176,217,233,.96);
  background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(249,252,254,.99));
  box-shadow:0 26px 72px rgba(4,22,44,.30),0 1px 0 rgba(255,255,255,.92) inset;
}
.guide-head{
  min-height:84px;
  padding:16px 18px;
  background:linear-gradient(135deg,#08263f 0%,#0d4269 58%,#0a6ca8 100%);
}
.guide-agent-avatar{
  width:56px;height:56px;flex-basis:56px;border-radius:19px;
  border:1px solid rgba(177,235,255,.38);
  background:radial-gradient(circle at 35% 30%,rgba(21,170,255,.28),rgba(6,40,73,.96) 70%);
  box-shadow:0 14px 28px rgba(0,17,38,.24), inset 0 1px 0 rgba(255,255,255,.10);
}
.guide-agent-avatar::before{inset:4px;border-radius:15px;background:radial-gradient(circle at 45% 35%,rgba(111,239,255,.22),transparent 68%)}
.guide-agent-avatar img{width:46px;height:46px;filter:drop-shadow(0 6px 9px rgba(0,21,58,.22))}
.guide-agent strong{font-size:15px;line-height:1.2;letter-spacing:-.014em}
.guide-agent small{font-size:11px;color:#d1e6f0}
.guide-close{
  width:38px;height:38px;border-radius:13px;border:1px solid rgba(186,221,237,.16);
  background:rgba(255,255,255,.10);color:#e9f8ff;
}
.guide-close:hover{background:rgba(255,255,255,.16);color:#fff}
.guide-body{padding:18px}
.guide-message{
  min-height:88px;
  padding:16px 16px 16px 50px;
  border:1px solid #d3e7f1;
  border-radius:18px 18px 18px 8px;
  background:linear-gradient(180deg,#f8fcfe,#eef8fd);
  box-shadow:0 1px 0 rgba(255,255,255,.85) inset;
}
.guide-message::before{
  left:16px;top:17px;width:22px;height:22px;
  background:linear-gradient(180deg,#1db7ff,#0e63ff);
  box-shadow:0 8px 16px rgba(14,99,255,.16);
}
.guide-message p{color:#15384c;font-size:13.5px;line-height:1.62;font-weight:620}
.guide-actions{gap:11px;margin-top:15px}
.guide-actions a{
  min-height:84px;
  grid-template-columns:50px minmax(0,1fr) 30px;
  gap:14px;
  padding:14px 15px;
  border-radius:20px;
  border:1px solid #d7e8f1;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdfe 100%);
  box-shadow:0 8px 20px rgba(8,36,62,.05);
}
.guide-actions a::before{top:14px;bottom:14px;width:4px;background:linear-gradient(180deg,#67e7ff,#0c6cff)}
.guide-actions a:hover{transform:translateY(-1px);border-color:#bfdced;box-shadow:0 14px 24px rgba(8,36,62,.08)}
.guide-action-icon{
  width:50px!important;height:50px!important;border-radius:16px!important;
  background:linear-gradient(180deg,#eff8fd,#e5f0f8)!important;
  border:1px solid #cfe2ee;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92), 0 10px 18px rgba(13,103,255,.08);
}
.guide-action-icon svg{width:22px;height:22px;stroke-width:1.9}
.guide-actions strong{color:#0b2f46;font-size:14.5px;line-height:1.28;letter-spacing:-.012em}
.guide-actions small{margin-top:5px;color:#627c8c;font-size:12px;line-height:1.5;font-weight:550}
.guide-actions b{
  width:30px;height:30px;border-radius:11px;
  border:1px solid #c9ddea;background:linear-gradient(180deg,#f7fbfd,#edf5fa);
  color:#1b6dff;font-size:14px;box-shadow:none;
}
.guide-foot{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px 16px 16px;
  border-top:1px solid #dfedf4;
  background:linear-gradient(180deg,#fbfdff,#f4f9fc);
}
.guide-foot a{
  justify-content:center;
  min-height:44px;
  padding:10px 14px;
  border-radius:14px;
  font-size:12.5px;
  text-align:center;
}
.guide-foot span{color:#506c7d;font-size:12.5px;font-weight:800;white-space:nowrap}

/* Refined ocean-wave movement and sharper trigger quality */
.guide-trigger{
  width:116px;height:92px;border-radius:24px;
  background:linear-gradient(180deg,rgba(6,31,52,.58),rgba(7,37,62,.38));
  border:1px solid rgba(110,208,247,.18);
  box-shadow:none;
}
.guide-trigger:hover,.guide-trigger:focus-visible{transform:translateY(-2px);filter:drop-shadow(0 16px 24px rgba(0,27,58,.12))}
.guide-character{height:94px}
.guide-glass{
  left:8px;top:4px;width:102px;height:76px;
  animation:guideOceanCarrier 8.6s cubic-bezier(.45,.02,.18,.98) infinite;
}
.guide-glass::before{
  left:6px;right:6px;top:6px;bottom:10px;border-radius:32px;
  background:
    radial-gradient(ellipse at 26% 28%,rgba(255,255,255,.14),transparent 28%),
    radial-gradient(ellipse at 74% 72%,rgba(29,183,255,.10),transparent 34%),
    linear-gradient(135deg,rgba(111,239,255,.12),rgba(14,86,182,.02) 65%,transparent 80%);
  filter:blur(7px);opacity:.9;
}
.guide-glass::after{
  left:10px;right:10px;top:11px;bottom:18px;border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.17),rgba(255,255,255,.01) 40%,rgba(255,255,255,0) 70%);
  opacity:.66;
}
.guide-glass-depth{
  left:18px;right:18px;bottom:1px;height:14px;
  animation:guideOceanReflection 8.6s ease-in-out infinite;
}
.guide-logo-stage{
  left:9px;top:-1px;width:84px;height:84px;
  animation:guideOceanSway 8.6s cubic-bezier(.45,.02,.18,.98) infinite;
}
.guide-logo-stage::before{inset:3px;filter:blur(7px);opacity:.8;animation:guideOceanGlow 8.6s ease-in-out infinite}
.guide-logo-stage::after{
  background:linear-gradient(104deg,transparent 14%,rgba(255,255,255,.05) 28%,rgba(238,252,255,.8) 45%,rgba(102,233,255,.18) 57%,transparent 72%);
  background-size:210% 100%;
  animation:guideOceanSweep 8.8s cubic-bezier(.4,0,.24,1) infinite;
}
.guide-logo-stage img{
  width:84px;height:84px;object-fit:contain;image-rendering:auto;
  filter:drop-shadow(0 7px 10px rgba(0,23,56,.16));
  animation:guideOceanCrest 8.6s cubic-bezier(.45,.02,.18,.98) infinite;
}
.guide-glint{
  left:15px;bottom:2px;width:62px;height:10px;filter:blur(6px);
  animation:guideOceanPulse 8.6s ease-in-out infinite;
}
.guide-orb-shadow{
  left:20px;width:68px;height:15px;
  animation:guideOceanRipple 5.4s ease-out infinite;
}
.guide-orb-shadow::before,.guide-orb-shadow::after{animation:guideOceanRipple 5.4s ease-out infinite}
.guide-orb-shadow::before{animation-delay:1.8s}
.guide-orb-shadow::after{animation-delay:3.6s}
.site-guide.attention .guide-glass{animation:guideOceanAttention 1.35s ease 2, guideOceanCarrier 8.6s cubic-bezier(.45,.02,.18,.98) infinite}

@keyframes guideOceanCarrier{
  0%,100%{transform:translate3d(0,0,0) rotate(-.9deg)}
  20%{transform:translate3d(3px,-2px,0) rotate(.8deg)}
  40%{transform:translate3d(6px,-5px,0) rotate(1.8deg)}
  50%{transform:translate3d(0,-6px,0) rotate(.4deg)}
  60%{transform:translate3d(-5px,-4px,0) rotate(-1.7deg)}
  80%{transform:translate3d(-3px,-1px,0) rotate(-.7deg)}
}
@keyframes guideOceanSway{
  0%,100%{transform:translate3d(0,0,0) rotate(-.5deg)}
  22%{transform:translate3d(3px,-1px,0) rotate(1deg)}
  42%{transform:translate3d(4px,-4px,0) rotate(1.8deg)}
  50%{transform:translate3d(0,-5px,0) rotate(.2deg)}
  64%{transform:translate3d(-4px,-4px,0) rotate(-1.8deg)}
  82%{transform:translate3d(-2px,-1px,0) rotate(-.9deg)}
}
@keyframes guideOceanCrest{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  25%{transform:translate3d(1px,-1px,0) scale(1.008)}
  50%{transform:translate3d(0,-4px,0) scale(1.013)}
  75%{transform:translate3d(-1px,-1px,0) scale(1.008)}
}
@keyframes guideOceanGlow{
  0%,100%{opacity:.62;transform:scale(.96)}
  50%{opacity:.92;transform:scale(1.03)}
}
@keyframes guideOceanReflection{
  0%,100%{opacity:.72;transform:scaleX(.88) translateY(0)}
  50%{opacity:1;transform:scaleX(1.08) translateY(1px)}
}
@keyframes guideOceanPulse{
  0%,100%{opacity:.42;transform:scale(.9)}
  50%{opacity:.95;transform:scale(1.08)}
}
@keyframes guideOceanSweep{
  0%,18%{background-position:150% 0;opacity:.08}
  46%{opacity:.84}
  62%{background-position:18% 0;opacity:.9}
  100%{background-position:-85% 0;opacity:.14}
}
@keyframes guideOceanRipple{
  0%{transform:scale(.82);opacity:.76}
  74%,100%{transform:scale(1.72);opacity:0}
}
@keyframes guideOceanAttention{
  0%,100%{transform:translate3d(0,0,0)}
  32%{transform:translate3d(3px,-5px,0)}
  64%{transform:translate3d(-2px,-2px,0)}
}

/* Mobile and short-height fit rules */
@media(max-width:720px){
  .guide-trigger{width:88px;height:72px;border-radius:19px}
  .guide-character{height:72px}
  .guide-glass{left:5px;top:2px;width:76px;height:58px}
  .guide-logo-stage{left:4px;top:-1px;width:62px;height:62px}
  .guide-logo-stage img{width:62px;height:62px}
  .guide-orb-shadow{left:14px;width:50px;height:11px}
  .guide-glint{left:11px;width:46px;height:8px}
  .guide-greeting{left:72px;bottom:12px;width:min(250px,calc(100vw - 90px));min-height:86px;padding:13px 34px 13px 14px;border-radius:16px 16px 16px 6px}
  .guide-greeting::before{left:-8px;bottom:14px;width:18px;height:18px}
  .guide-greeting strong{font-size:14px}.guide-greeting>span{font-size:11.5px;line-height:1.45}
  .guide-panel{left:8px;right:8px;top:max(10px, env(safe-area-inset-top));bottom:92px;width:auto;max-height:none;display:flex;flex-direction:column;border-radius:24px}
  .guide-head{min-height:76px;padding:14px 15px}
  .guide-agent-avatar{width:48px;height:48px;flex-basis:48px;border-radius:16px}.guide-agent-avatar img{width:40px;height:40px}
  .guide-agent strong{font-size:13px}.guide-agent small{font-size:10px}
  .guide-body{flex:1 1 auto;overflow:auto;padding:14px}
  .guide-message{min-height:78px;padding:14px 14px 14px 44px}.guide-message::before{left:14px;top:15px;width:19px;height:19px}.guide-message p{font-size:12.5px;line-height:1.56}
  .guide-actions a{min-height:78px;grid-template-columns:42px minmax(0,1fr) 26px;gap:10px;padding:11px;border-radius:18px}
  .guide-action-icon{width:42px!important;height:42px!important;border-radius:14px!important}.guide-action-icon svg{width:18px;height:18px}
  .guide-actions strong{font-size:12.6px}.guide-actions small{font-size:10.8px;line-height:1.42}
  .guide-actions b{width:27px;height:27px;border-radius:10px}
  .guide-foot{grid-template-columns:1fr;gap:9px;padding:12px 14px 14px}.guide-foot a{width:100%;font-size:12px}.guide-foot span{text-align:center;white-space:normal;font-size:11.5px}
}
@media(max-width:390px){
  .guide-panel{left:6px;right:6px;bottom:84px;border-radius:22px}
  .guide-greeting{width:min(222px,calc(100vw - 84px));padding-right:30px}.guide-greeting>span{display:none}
  .guide-message p{font-size:12px}
}
@media(max-height:860px){
  .guide-panel{top:max(12px, env(safe-area-inset-top));bottom:96px;max-height:none;display:flex;flex-direction:column}
  .guide-body{flex:1 1 auto;overflow:auto}
}
@media(max-height:700px){
  .guide-panel{top:max(8px, env(safe-area-inset-top));bottom:84px;border-radius:22px}
  .guide-head{min-height:72px;padding:13px 14px}
  .guide-body{padding:14px}
  .guide-message{min-height:72px;padding:13px 13px 13px 42px}.guide-message::before{left:13px;top:14px;width:18px;height:18px}
  .guide-actions a{min-height:74px;padding:11px}.guide-actions strong{font-size:12.8px}.guide-actions small{font-size:10.8px}
}
@media(prefers-reduced-motion:reduce){
  .guide-glass,.guide-glass-depth,.guide-logo-stage,.guide-logo-stage::before,.guide-logo-stage::after,.guide-logo-stage img,.guide-glint,.guide-orb-shadow,.guide-orb-shadow::before,.guide-orb-shadow::after,.site-guide.attention .guide-glass,.guide-greeting small i{animation:none !important}
}

/* ======================================================================
   V20 — Final concierge reliability, fit and ocean-motion system
   ====================================================================== */

/* The floating guide remains above site content, while every visible part
   of the logo stays inside one reliable button hit area. */
.site-guide{
  left:22px!important;
  bottom:18px!important;
  z-index:1900!important;
}
.guide-companion{
  position:relative;
  min-height:94px!important;
  display:flex;
  align-items:flex-end;
  isolation:isolate;
}
.guide-trigger{
  position:relative!important;
  z-index:4!important;
  display:block!important;
  width:104px!important;
  height:88px!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:24px!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  overflow:visible!important;
  cursor:pointer!important;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.guide-trigger::before,.guide-trigger::after{display:none!important}
.guide-trigger:hover,.guide-trigger:focus-visible{
  transform:translateY(-2px)!important;
  filter:drop-shadow(0 14px 20px rgba(0,31,69,.16))!important;
}
.guide-trigger:focus-visible{outline:3px solid rgba(96,225,255,.92)!important;outline-offset:5px!important}
.guide-character,.guide-character *{pointer-events:none!important}
.guide-character{
  position:absolute!important;
  inset:0!important;
  height:88px!important;
  display:block!important;
  overflow:visible!important;
  filter:none!important;
  perspective:none!important;
  transform-style:flat!important;
}
.guide-orbit,.guide-orbit-node,.guide-status-badge{display:none!important}

/* No dark globe or square: the high-resolution logo floats naturally. */
.guide-glass{
  position:absolute!important;
  left:7px!important;
  top:1px!important;
  width:90px!important;
  height:78px!important;
  display:block!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  animation:owOceanDrift 10.8s cubic-bezier(.45,.03,.18,.98) infinite!important;
  will-change:transform;
  backface-visibility:hidden;
}
.guide-glass::before{
  content:""!important;
  position:absolute!important;
  inset:12px 8px 8px!important;
  border:0!important;
  border-radius:46%!important;
  background:radial-gradient(ellipse at center,rgba(46,198,255,.18),rgba(10,92,190,.05) 54%,transparent 73%)!important;
  filter:blur(8px)!important;
  opacity:.8!important;
  pointer-events:none!important;
}
.guide-glass::after{
  content:""!important;
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:6px!important;
  height:11px!important;
  border:0!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at center,rgba(103,232,255,.34),rgba(18,103,190,.06) 62%,transparent 74%)!important;
  filter:blur(5px)!important;
  opacity:.78!important;
  pointer-events:none!important;
  animation:owOceanReflection 10.8s ease-in-out infinite!important;
}
.guide-glass-depth{display:none!important}
.guide-logo-stage{
  position:absolute!important;
  left:3px!important;
  top:-4px!important;
  z-index:4!important;
  width:84px!important;
  height:84px!important;
  display:grid!important;
  place-items:center!important;
  transform:none!important;
  animation:none!important;
  will-change:auto!important;
}
.guide-logo-stage::before{
  content:""!important;
  position:absolute!important;
  inset:9px!important;
  z-index:-1!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(40,196,255,.18),transparent 70%)!important;
  filter:blur(7px)!important;
  opacity:.72!important;
  animation:owOceanAura 10.8s ease-in-out infinite!important;
}
.guide-logo-stage::after{
  content:""!important;
  position:absolute!important;
  inset:4px!important;
  background:linear-gradient(105deg,transparent 17%,rgba(255,255,255,.03) 31%,rgba(235,252,255,.62) 47%,rgba(93,231,255,.14) 59%,transparent 74%)!important;
  background-size:220% 100%!important;
  background-position:155% 0!important;
  -webkit-mask:url("logo-mark.png") center/contain no-repeat!important;
  mask:url("logo-mark.png") center/contain no-repeat!important;
  mix-blend-mode:screen!important;
  opacity:.65!important;
  animation:owOceanLight 11.4s cubic-bezier(.4,0,.24,1) infinite!important;
  pointer-events:none!important;
}
.guide-logo-stage img{
  position:relative!important;
  z-index:2!important;
  width:84px!important;
  height:84px!important;
  display:block!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  transform:none!important;
  animation:none!important;
  filter:drop-shadow(0 8px 9px rgba(0,29,76,.20))!important;
  user-select:none!important;
}
.guide-glint{display:none!important}
.guide-orb-shadow{
  position:absolute!important;
  left:18px!important;
  bottom:0!important;
  z-index:1!important;
  width:60px!important;
  height:12px!important;
  border:1px solid rgba(98,226,255,.30)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at center,rgba(66,215,255,.12),transparent 69%)!important;
  box-shadow:none!important;
  filter:none!important;
  opacity:.7!important;
  animation:owOceanRipple 6.3s ease-out infinite!important;
}
.guide-orb-shadow::before,.guide-orb-shadow::after{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  border:1px solid rgba(107,229,255,.22)!important;
  border-radius:inherit!important;
  animation:owOceanRipple 6.3s ease-out infinite!important;
}
.guide-orb-shadow::before{animation-delay:2.1s!important}
.guide-orb-shadow::after{animation-delay:4.2s!important}
.site-guide.attention .guide-glass{
  animation:owOceanWelcome 1.45s ease 2,owOceanDrift 10.8s cubic-bezier(.45,.03,.18,.98) infinite!important;
}
.site-guide.open .guide-character{filter:none!important}

/* The compact greeting is solid, readable and can also open the guide. */
.guide-greeting{
  position:absolute!important;
  left:88px!important;
  bottom:17px!important;
  z-index:12!important;
  width:min(302px,calc(100vw - 112px))!important;
  min-height:102px!important;
  padding:15px 40px 15px 18px!important;
  border:1px solid rgba(180,219,235,.98)!important;
  border-radius:20px 20px 20px 7px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(244,250,253,.995))!important;
  color:#082b42!important;
  box-shadow:0 18px 42px rgba(1,26,48,.22),inset 0 1px 0 #fff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.guide-greeting::before{
  content:""!important;
  position:absolute!important;
  left:-9px!important;
  bottom:17px!important;
  width:20px!important;
  height:20px!important;
  border-left:1px solid rgba(180,219,235,.98)!important;
  border-bottom:1px solid rgba(180,219,235,.98)!important;
  border-radius:0 0 0 6px!important;
  background:#f7fcfe!important;
  transform:rotate(45deg)!important;
}
.guide-greeting small{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  color:#35647c!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.guide-greeting small i{width:6px!important;height:6px!important;background:#2dd5ae!important;box-shadow:0 0 8px rgba(45,213,174,.66)!important}
.guide-greeting strong{
  display:block!important;
  margin-top:8px!important;
  color:#092d44!important;
  font-size:17px!important;
  line-height:1.23!important;
  font-weight:850!important;
  letter-spacing:-.018em!important;
}
.guide-greeting>span{
  display:block!important;
  margin-top:6px!important;
  color:#587485!important;
  font-size:12.5px!important;
  line-height:1.5!important;
  font-weight:600!important;
}
.guide-greeting-close{
  position:absolute!important;
  right:9px!important;
  top:9px!important;
  z-index:3!important;
  width:27px!important;
  height:27px!important;
  border:1px solid #d7e8f0!important;
  border-radius:9px!important;
  background:#edf6fa!important;
  color:#456a7d!important;
  font-size:17px!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.guide-greeting-close:hover{background:#e1f0f6!important;color:#143d55!important}
.site-guide.open .guide-greeting,.site-guide.greeting-dismissed .guide-greeting{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateX(-8px) scale(.96)!important;
}

/* A fixed panel prevents the top/bottom clipping caused by an absolutely
   positioned panel inside the small floating-guide container. */
.guide-panel{
  position:fixed!important;
  left:22px!important;
  right:auto!important;
  top:auto!important;
  bottom:122px!important;
  z-index:1905!important;
  width:min(468px,calc(100vw - 44px))!important;
  max-height:calc(100dvh - 144px)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border:1px solid rgba(170,214,232,.98)!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 30px 80px rgba(1,24,45,.30),inset 0 1px 0 #fff!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(12px) scale(.97)!important;
  transform-origin:bottom left!important;
  transition:opacity .26s ease,transform .3s ease,visibility .26s ease!important;
}
.guide-panel[hidden]{display:flex!important;visibility:hidden!important;pointer-events:none!important}
.site-guide.open .guide-panel{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
}
.guide-head{
  position:relative!important;
  flex:0 0 auto!important;
  min-height:82px!important;
  padding:14px 16px!important;
  background:linear-gradient(135deg,#08243b 0%,#0d3f63 58%,#0875b5 100%)!important;
  color:#fff!important;
}
.guide-head::after{height:1px!important;background:linear-gradient(90deg,transparent,rgba(139,233,255,.50),transparent)!important}
.guide-agent{gap:12px!important;min-width:0!important}
.guide-agent-avatar{
  width:52px!important;
  height:52px!important;
  flex:0 0 52px!important;
  border:1px solid rgba(158,232,255,.35)!important;
  border-radius:17px!important;
  background:radial-gradient(circle at 34% 24%,rgba(46,190,255,.25),rgba(5,34,60,.96) 72%)!important;
  box-shadow:0 10px 22px rgba(0,17,37,.22),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
.guide-agent-avatar::before{inset:4px!important;border-radius:14px!important;background:radial-gradient(circle,rgba(81,220,255,.16),transparent 70%)!important}
.guide-agent-avatar img{
  width:45px!important;
  height:45px!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  filter:drop-shadow(0 5px 7px rgba(0,24,65,.18))!important;
}
.guide-agent-avatar>i{width:11px!important;height:11px!important;border-width:2px!important}
.guide-agent div{min-width:0!important}
.guide-agent strong{color:#fff!important;font-size:14.5px!important;line-height:1.2!important;font-weight:850!important;letter-spacing:-.012em!important}
.guide-agent small{margin-top:5px!important;color:#d0e5ee!important;font-size:10.8px!important;line-height:1.35!important}
.guide-close{
  flex:0 0 auto!important;
  width:36px!important;
  height:36px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.10)!important;
  color:#eefaff!important;
  cursor:pointer!important;
}
.guide-close:hover{background:rgba(255,255,255,.17)!important;transform:none!important}
.guide-body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  padding:17px!important;
  background:linear-gradient(180deg,#ffffff,#f9fcfe)!important;
  scrollbar-width:thin;
  scrollbar-color:#bbdbe9 transparent;
}
.guide-body::-webkit-scrollbar{width:7px}
.guide-body::-webkit-scrollbar-thumb{border-radius:999px;background:#bddce9}
.guide-message{
  min-height:84px!important;
  padding:15px 15px 15px 48px!important;
  border:1px solid #d4e7f0!important;
  border-radius:18px 18px 18px 7px!important;
  background:linear-gradient(180deg,#f8fcfe,#eef8fc)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
.guide-message::before{
  left:15px!important;
  top:16px!important;
  width:21px!important;
  height:21px!important;
  border-radius:8px!important;
  background:#1787ff!important;
  box-shadow:0 6px 13px rgba(23,135,255,.15)!important;
  -webkit-mask:url("logo-mark.png") center/17px 17px no-repeat!important;
  mask:url("logo-mark.png") center/17px 17px no-repeat!important;
}
.guide-message p{color:#15384c!important;font-size:13.2px!important;line-height:1.6!important;font-weight:620!important}
.guide-actions{gap:10px!important;margin-top:13px!important}
.guide-actions a{
  position:relative!important;
  grid-template-columns:48px minmax(0,1fr) 29px!important;
  gap:12px!important;
  min-height:78px!important;
  padding:12px 13px!important;
  border:1px solid #d7e7ef!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#fff,#fbfdfe)!important;
  box-shadow:0 6px 16px rgba(5,36,58,.045)!important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
.guide-actions a::before{left:0!important;top:13px!important;bottom:13px!important;width:3px!important;background:linear-gradient(180deg,#5be3ff,#176dff)!important;opacity:.9!important}
.guide-actions a::after{display:none!important}
.guide-actions a:hover{transform:translateY(-1px)!important;border-color:#bad9e8!important;background:#fff!important;box-shadow:0 11px 22px rgba(4,39,64,.075)!important}
.guide-action-icon{
  width:48px!important;
  height:48px!important;
  border:1px solid #d0e4ee!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#eff8fd,#e7f2f8)!important;
  color:#116eff!important;
  box-shadow:inset 0 1px 0 #fff,0 7px 15px rgba(13,103,255,.06)!important;
}
.guide-action-icon svg{width:20px!important;height:20px!important;stroke-width:1.9!important}
.guide-actions div{min-width:0!important}
.guide-actions strong{display:block!important;color:#0b3047!important;font-size:13.7px!important;line-height:1.28!important;font-weight:850!important;letter-spacing:-.01em!important}
.guide-actions small{display:block!important;margin-top:5px!important;color:#617b8b!important;font-size:11.3px!important;line-height:1.46!important;font-weight:550!important}
.guide-actions b{
  display:grid!important;
  place-items:center!important;
  width:29px!important;
  height:29px!important;
  border:1px solid #cbdfea!important;
  border-radius:10px!important;
  background:#f1f8fc!important;
  color:#176dff!important;
  font-size:14px!important;
  box-shadow:none!important;
}
.guide-actions a:hover b{transform:translateX(1px)!important;background:#eaf5fb!important}
.guide-foot{
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:13px 15px!important;
  border-top:1px solid #dfedf3!important;
  background:linear-gradient(180deg,#fafcfe,#f3f9fc)!important;
}
.guide-foot a{
  display:inline-flex!important;
  justify-content:center!important;
  align-items:center!important;
  min-height:42px!important;
  padding:9px 13px!important;
  border:0!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#146eff,#10aee9)!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:850!important;
  text-align:center!important;
  box-shadow:0 9px 19px rgba(13,103,255,.16)!important;
}
.guide-foot a::before{width:7px!important;height:7px!important;background:#6ff1d0!important;box-shadow:0 0 8px rgba(111,241,208,.7)!important}
.guide-foot a:hover{transform:translateY(-1px)!important}
.guide-foot span{color:#506d7e!important;font-size:11.5px!important;font-weight:800!important;white-space:nowrap!important}
body.guide-open .cookie{opacity:0!important;visibility:hidden!important;pointer-events:none!important}

@keyframes owOceanDrift{
  0%,100%{transform:translate3d(0,0,0) rotate(-.65deg)}
  18%{transform:translate3d(2px,-1px,0) rotate(.45deg)}
  38%{transform:translate3d(4px,-4px,0) rotate(1.25deg)}
  50%{transform:translate3d(0,-5px,0) rotate(.15deg)}
  63%{transform:translate3d(-4px,-4px,0) rotate(-1.2deg)}
  82%{transform:translate3d(-2px,-1px,0) rotate(-.4deg)}
}
@keyframes owOceanAura{0%,100%{opacity:.56;transform:scale(.97)}50%{opacity:.82;transform:scale(1.025)}}
@keyframes owOceanReflection{0%,100%{opacity:.58;transform:scaleX(.9)}50%{opacity:.9;transform:scaleX(1.08)}}
@keyframes owOceanLight{0%,20%{background-position:155% 0;opacity:.05}48%{opacity:.58}65%{background-position:12% 0;opacity:.65}100%{background-position:-85% 0;opacity:.09}}
@keyframes owOceanRipple{0%{transform:scale(.82);opacity:.68}72%,100%{transform:scale(1.68);opacity:0}}
@keyframes owOceanWelcome{0%,100%{transform:translate3d(0,0,0)}34%{transform:translate3d(3px,-5px,0)}66%{transform:translate3d(-2px,-2px,0)}}

/* Tablet and mobile: the panel is pinned within the viewport and only its
   middle section scrolls, so neither the header nor footer can be cut off. */
@media(max-width:720px){
  .site-guide{left:11px!important;bottom:11px!important}
  .guide-companion{min-height:78px!important}
  .guide-trigger{width:82px!important;height:70px!important;border-radius:20px!important}
  .guide-character{height:70px!important}
  .guide-glass{left:3px!important;top:0!important;width:72px!important;height:62px!important}
  .guide-logo-stage{left:0!important;top:-3px!important;width:66px!important;height:66px!important}
  .guide-logo-stage img{width:66px!important;height:66px!important}
  .guide-orb-shadow{left:13px!important;bottom:0!important;width:46px!important;height:10px!important}
  .guide-greeting{
    left:68px!important;
    bottom:9px!important;
    width:min(244px,calc(100vw - 84px))!important;
    min-height:86px!important;
    padding:12px 33px 12px 14px!important;
    border-radius:17px 17px 17px 6px!important;
  }
  .guide-greeting::before{left:-8px!important;bottom:14px!important;width:18px!important;height:18px!important}
  .guide-greeting small{font-size:8.7px!important;letter-spacing:.10em!important}
  .guide-greeting strong{margin-top:6px!important;font-size:13.5px!important;line-height:1.25!important}
  .guide-greeting>span{margin-top:4px!important;font-size:10.8px!important;line-height:1.42!important}
  .guide-greeting-close{right:7px!important;top:7px!important;width:24px!important;height:24px!important;font-size:15px!important}
  .guide-panel{
    position:fixed!important;
    left:7px!important;
    right:7px!important;
    top:max(8px,env(safe-area-inset-top))!important;
    bottom:84px!important;
    width:auto!important;
    max-height:none!important;
    border-radius:23px!important;
    transform-origin:bottom center!important;
  }
  .guide-head{min-height:74px!important;padding:12px 13px!important}
  .guide-agent{gap:10px!important}
  .guide-agent-avatar{width:45px!important;height:45px!important;flex-basis:45px!important;border-radius:15px!important}
  .guide-agent-avatar img{width:39px!important;height:39px!important}
  .guide-agent strong{font-size:12.7px!important}
  .guide-agent small{font-size:9.8px!important;line-height:1.3!important}
  .guide-close{width:33px!important;height:33px!important;border-radius:11px!important}
  .guide-body{padding:12px!important}
  .guide-message{min-height:72px!important;padding:12px 12px 12px 41px!important;border-radius:16px!important}
  .guide-message::before{left:12px!important;top:13px!important;width:18px!important;height:18px!important;-webkit-mask-size:14px 14px!important;mask-size:14px 14px!important}
  .guide-message p{font-size:11.8px!important;line-height:1.53!important}
  .guide-actions{gap:8px!important;margin-top:10px!important}
  .guide-actions a{grid-template-columns:39px minmax(0,1fr) 25px!important;gap:9px!important;min-height:68px!important;padding:9px 10px!important;border-radius:15px!important}
  .guide-actions a::before{top:10px!important;bottom:10px!important}
  .guide-action-icon{width:39px!important;height:39px!important;border-radius:12px!important}
  .guide-action-icon svg{width:17px!important;height:17px!important}
  .guide-actions strong{font-size:11.8px!important;line-height:1.25!important}
  .guide-actions small{margin-top:3px!important;font-size:9.7px!important;line-height:1.38!important}
  .guide-actions b{width:25px!important;height:25px!important;border-radius:8px!important;font-size:12px!important}
  .guide-foot{grid-template-columns:1fr!important;gap:7px!important;padding:10px 12px!important}
  .guide-foot a{width:100%!important;min-height:38px!important;font-size:11.2px!important}
  .guide-foot span{text-align:center!important;white-space:normal!important;font-size:10.5px!important}
  body.guide-open{overflow:hidden!important}
}
@media(max-width:390px){
  .guide-panel{left:5px!important;right:5px!important;bottom:80px!important;border-radius:21px!important}
  .guide-greeting{width:min(215px,calc(100vw - 80px))!important;padding-right:29px!important}
  .guide-greeting>span{display:none!important}
  .guide-actions a{grid-template-columns:37px minmax(0,1fr) 24px!important;gap:8px!important;padding:8px 9px!important}
  .guide-action-icon{width:37px!important;height:37px!important}
  .guide-actions strong{font-size:11.3px!important}
  .guide-actions small{font-size:9.3px!important}
}
@media(min-width:721px) and (max-height:820px){
  .guide-panel{
    position:fixed!important;
    left:16px!important;
    top:10px!important;
    bottom:96px!important;
    width:min(456px,calc(100vw - 32px))!important;
    max-height:none!important;
  }
  .guide-head{min-height:76px!important;padding:12px 14px!important}
  .guide-body{padding:13px!important}
  .guide-message{min-height:70px!important;padding:12px 13px 12px 43px!important}
  .guide-message::before{left:13px!important;top:13px!important;width:18px!important;height:18px!important}
  .guide-message p{font-size:12px!important;line-height:1.5!important}
  .guide-actions{gap:8px!important;margin-top:10px!important}
  .guide-actions a{min-height:69px!important;grid-template-columns:41px minmax(0,1fr) 25px!important;gap:9px!important;padding:9px 10px!important;border-radius:15px!important}
  .guide-action-icon{width:41px!important;height:41px!important;border-radius:13px!important}
  .guide-action-icon svg{width:18px!important;height:18px!important}
  .guide-actions strong{font-size:12px!important}
  .guide-actions small{font-size:9.8px!important;line-height:1.38!important;margin-top:3px!important}
  .guide-actions b{width:25px!important;height:25px!important;border-radius:8px!important;font-size:12px!important}
  .guide-foot{padding:10px 12px!important}
  .guide-foot a{min-height:38px!important;font-size:11px!important}
  .guide-foot span{font-size:10.5px!important}
}
@media(prefers-reduced-motion:reduce){
  .guide-glass,.guide-logo-stage::before,.guide-logo-stage::after,.guide-glass::after,.guide-orb-shadow,.guide-orb-shadow::before,.guide-orb-shadow::after,.site-guide.attention .guide-glass{animation:none!important}
  .guide-trigger,.guide-trigger:hover,.guide-trigger:focus-visible{transform:none!important}
}

/* Explicit viewport heights for constrained screens. Using a calculated
   height avoids browser differences when both top and bottom are set. */
.guide-panel{height:auto!important}
@media(max-width:720px){
  .guide-panel{
    top:max(8px,env(safe-area-inset-top))!important;
    bottom:auto!important;
    height:calc(100dvh - 92px)!important;
    max-height:calc(100dvh - 92px)!important;
  }
}
@media(max-width:390px){
  .guide-panel{height:calc(100dvh - 88px)!important;max-height:calc(100dvh - 88px)!important}
}
@media(min-width:721px) and (max-height:820px){
  .guide-panel{
    top:10px!important;
    bottom:auto!important;
    height:calc(100dvh - 106px)!important;
    max-height:calc(100dvh - 106px)!important;
  }
}

/* A transformed ancestor makes fixed descendants behave like absolute
   descendants. Keep the visible guide untransformed so the panel is truly
   fixed to the browser viewport. */
.site-guide{transform:none!important}
.site-guide.is-footer-hidden{transform:translate3d(0,24px,0) scale(.95)!important}
.site-guide{will-change:opacity!important}

/* Natural panel height when content fits; max-height handles shorter screens. */
.site-guide.open .guide-trigger{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(8px) scale(.94)!important;
}
@media(max-width:720px){
  .guide-panel{
    top:auto!important;
    bottom:80px!important;
    height:auto!important;
    max-height:calc(100dvh - 88px)!important;
  }
}
@media(max-width:390px){
  .guide-panel{
    top:auto!important;
    bottom:76px!important;
    height:auto!important;
    max-height:calc(100dvh - 84px)!important;
  }
}
@media(min-width:721px) and (max-height:820px){
  .guide-panel{
    top:auto!important;
    bottom:12px!important;
    height:auto!important;
    max-height:calc(100dvh - 92px)!important;
  }
}

/* V21 mobile brand-only adjustment
   Based directly on V20. No other layout, content, script, guide, or design
   changes are included in this package. */
@media(max-width:780px){
  .site-header .brand{gap:9px}
  .site-header .brand img{width:38px!important;height:38px!important}
  .site-header .brand-copy strong{font-size:.72rem!important;letter-spacing:.068em!important}
  .site-header .brand-copy small{font-size:.45rem!important;letter-spacing:.105em!important}
}
@media(max-width:430px){
  .site-header .brand{gap:8px}
  .site-header .brand img{width:35px!important;height:35px!important}
  .site-header .brand-copy strong{font-size:.66rem!important;letter-spacing:.055em!important}
  .site-header .brand-copy small{font-size:.42rem!important;letter-spacing:.082em!important}
}
@media(max-width:350px){
  .site-header .brand img{width:31px!important;height:31px!important}
  .site-header .brand-copy strong{font-size:.59rem!important}
  .site-header .brand-copy small{font-size:.37rem!important;letter-spacing:.06em!important}
}

/* ======================================================================
   V22 — Requested floating-control alignment and larger mobile branding
   ====================================================================== */
/* Align the visual centre of the wave concierge with the back-to-top button. */
.site-guide{bottom:-6px!important}
.back-top{bottom:22px!important}

/* Make the mobile header brand noticeably larger while preserving space for
   the language and menu controls. */
@media(max-width:780px){
  .site-header .brand{gap:10px!important;min-width:0}
  .site-header .brand img{width:48px!important;height:48px!important;flex:0 0 48px!important}
  .site-header .brand-copy{min-width:0}
  .site-header .brand-copy strong{font-size:.90rem!important;line-height:1.05!important;letter-spacing:.065em!important}
  .site-header .brand-copy small{margin-top:4px!important;font-size:.54rem!important;line-height:1!important;letter-spacing:.11em!important}
  .site-guide{bottom:-5px!important}
  .back-top{bottom:13px!important}
}
@media(max-width:430px){
  .site-header .brand{gap:9px!important}
  .site-header .brand img{width:45px!important;height:45px!important;flex-basis:45px!important}
  .site-header .brand-copy strong{font-size:.84rem!important;letter-spacing:.055em!important}
  .site-header .brand-copy small{font-size:.50rem!important;letter-spacing:.09em!important}
}
@media(max-width:350px){
  .site-header .brand{gap:8px!important}
  .site-header .brand img{width:40px!important;height:40px!important;flex-basis:40px!important}
  .site-header .brand-copy strong{font-size:.75rem!important;letter-spacing:.045em!important}
  .site-header .brand-copy small{font-size:.44rem!important;letter-spacing:.07em!important}
}


/* V24 — Expanded multilingual selector */
.language-menu{max-height:min(72vh,610px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a9cfdf transparent;}
.language-menu::-webkit-scrollbar{width:8px}.language-menu::-webkit-scrollbar-track{background:transparent}.language-menu::-webkit-scrollbar-thumb{background:#bdd8e4;border-radius:999px;border:2px solid #fff}
@media(max-width:780px){.language-menu{max-height:calc(100dvh - var(--header) - 28px);overflow-y:auto;}}
