/* Webstart hero. Scoped to .ce-header and #home.ce-hero. */
.ce-header, #home.ce-hero { --ce-edge:#030814; --ce-center:#0a1a33; --ce-blue:#0b63f6; --ce-body:#c9d3e3; --ce-muted:#8fa3c0; color:#fff; font-family:Inter,Arial,sans-serif; }
.ce-header *, #home.ce-hero * { box-sizing:border-box; }
.ce-shell { width:min(1280px,calc(100% - 64px)); margin-inline:auto; }
.ce-header { position:relative; z-index:30; padding:0; background:#030814; border:0; }
.ce-header .ce-header-inner { display:flex; align-items:center; gap:24px; min-height:80px; }
.ce-header .ce-brand { display:block; width:184px; flex:0 0 auto; }
.ce-header .ce-brand img { display:block; width:100%; height:auto; }
.ce-header .ce-desktop-nav { display:flex; justify-content:center; flex:1; gap:32px; margin-left:35px; }
.ce-header .ce-desktop-nav a, .ce-header .ce-mobile-nav a { color:#c9d3e3; text-decoration:none; font-size:.9375rem; font-weight:500; line-height:1.5; }
.ce-header .ce-desktop-nav a { display:flex; align-items:center; min-height:44px; }
.ce-header .ce-desktop-nav a:hover, .ce-header .ce-mobile-nav a:hover { color:#fff; }
.ce-header .ce-header-actions { display:flex; align-items:center; gap:12px; margin-left:auto; }
.ce-header .language-switcher { position:relative; flex:0 0 auto; }
.ce-header .language-toggle { display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; border:1px solid #354660; border-radius:999px; padding:10px 13px; background:#071224; color:#fff; font:500 .875rem/1.3 Inter,Arial,sans-serif; cursor:pointer; }
.ce-header .language-current-flag { display:none; }
.ce-header .language-toggle svg { width:17px; height:17px; display:block; }
.ce-header .language-caret { display:flex; }
.ce-header .language-caret svg { width:13px; height:13px; }
.ce-header .language-options { position:absolute; top:calc(100% + 10px); right:0; z-index:40; min-width:184px; padding:8px; border:1px solid #354660; border-radius:12px; background:#0a1a33; box-shadow:0 16px 35px #0005; }
.ce-header .language-options button { display:flex; align-items:center; gap:12px; width:100%; min-height:44px; padding:8px 12px; border:0; border-radius:8px; background:none; color:#e3eaf5; font:500 .875rem/1.4 Inter,Arial,sans-serif; text-align:left; cursor:pointer; }
.ce-header .language-flag { display:inline-flex; width:22px; flex:0 0 22px; }
.ce-header .language-flag svg { width:22px; height:16px; }
.ce-header .language-options button:hover, .ce-header .language-options button[aria-pressed="true"] { color:white; background:#173151; }
.ce-header .ce-book { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 21px; border:1px solid #edf4ff; border-radius:999px; background:white; color:#071021; font-size:.875rem; font-weight:600; line-height:1.4; text-decoration:none; white-space:nowrap; }
.ce-header .ce-nav-toggle { display:none; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid #354660; border-radius:50%; background:#071224; color:white; }
.ce-header .ce-nav-toggle svg { width:20px; height:20px; }
.ce-header .ce-mobile-nav { padding:4px 0 20px; }
.ce-header .ce-mobile-nav a { display:block; padding:12px 8px; }
.ce-header [hidden], #home.ce-hero [hidden] { display:none!important; }
.ce-header a:focus-visible, .ce-header button:focus-visible, #home.ce-hero a:focus-visible, #home.ce-hero button:focus-visible, #home.ce-hero [tabindex]:focus-visible { outline:3px solid #38bdf8; outline-offset:5px; }
#home.ce-hero { position:relative; isolation:isolate; padding:24px 0 32px; min-height:680px; display:flex; align-items:center; overflow:clip; background:radial-gradient(ellipse at 65% 46%,#0a1a33 0%,#061123 48%,#030814 85%); }
#home .ce-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px; align-items:center; }
#home .ce-copy { grid-column:span 5; min-width:0; position:relative; z-index:2; }
/* Never hide or animate the H1: it is visible in the initial HTML. */

/* One live H1; the first line leads and the accent stays secondary. */
#home .ce-title { display:flex; flex-direction:column; align-items:flex-start; gap:8px; margin:0; color:#fff; letter-spacing:-.02em; }
#home .ce-title > span { display:block; }
/* Reduce all three headline size limits by 25%; keep the accent unchanged. */
#home .ce-title-main { font-size:clamp(36px,4.5vw,66px); font-weight:700; line-height:1; }
#home .ce-title .ce-title-accent { margin:0; color:#38bdf8; font-size:clamp(26px,3vw,44px); font-weight:600; line-height:1.1; background:linear-gradient(90deg,#3b82f6,#38bdf8); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
#home .ce-subtitle { margin:24px 0 0; max-width:510px; color:#c9d3e3; font-size:1.25rem; line-height:1.6; }
#home .ce-actions { display:flex; flex-wrap:wrap; align-items:stretch; gap:0; margin-top:30px; }
#home .ce-button { position:relative; isolation:isolate; display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:56px; padding:15px 22px; border:1px solid transparent; border-radius:999px; color:white; font:600 .9375rem/1.45 Inter,Arial,sans-serif; text-decoration:none; text-align:center; }
#home .ce-primary { background:#0b63f6; border-color:#4087ff; }
#home .ce-primary::before { content:""; position:absolute; z-index:-1; inset:0; border-radius:inherit; box-shadow:0 5px 28px 3px #0b63f6aa; opacity:.5; transition:opacity 180ms ease-out; pointer-events:none; }
#home .ce-primary:hover::before { opacity:1; }
#home .ce-primary svg { display:block; width:21px; height:21px; flex:0 0 auto; transition:transform 180ms ease-out; }
#home .ce-primary:hover svg { transform:translateX(4px); }
#home .ce-trust { display:flex; flex-wrap:wrap; gap:6px 9px; padding:0; margin:26px 0 0; color:#c9d3e3; font-size:.875rem; line-height:1.6; list-style:none; }
#home .ce-trust li { display:inline-flex; align-items:baseline; gap:7px; white-space:nowrap; }
#home .ce-trust li:not(:last-child)::after { content:"·"; margin-left:2px; color:#8fa3c0; }
#home .ce-check { color:#8eb6ff; }
#home .ce-visual { grid-column:span 7; position:relative; min-width:0; width:100%; aspect-ratio:720/620; isolation:isolate; }
#home .ce-stage { position:absolute; inset:0; }
#home .ce-glow { position:absolute; width:72%; height:61%; left:15%; top:29%; z-index:-1; border-radius:50%; background:#2f6be8; filter:blur(75px); opacity:.35; pointer-events:none; }
#home .ce-scene { position:absolute; left:15%; top:36%; width:68%; margin:0; transform-origin:50% 70%; }
#home .ce-scene img { display:block; width:100%; height:auto; aspect-ratio:3/2; }
#home .ce-connections { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
#home .ce-route { fill:none; stroke:#3b82f6; stroke-width:1.8; stroke-dasharray:1 7; stroke-linecap:round; vector-effect:non-scaling-stroke; }
#home .ce-route-mask { fill:none; stroke:white; stroke-width:10; stroke-dasharray:1; stroke-dashoffset:0; }
#home .ce-markets { padding:0; margin:0; list-style:none; }
#home .ce-market { position:absolute; width:168px; max-width:25%; list-style:none; text-align:center; transform:translateX(-50%); z-index:2; }
#home .ce-market--pl { left:52%; top:0; }
#home .ce-market--cz { left:22%; top:18%; }
#home .ce-market--sk { left:84%; top:18%; }
#home .ce-market--hu { left:0; top:57%; transform:none; }
#home .ce-market--ro { right:0; top:57%; transform:none; }
#home .ce-tile-float { width:100%; margin:auto; }
#home .ce-tile { display:block; width:100%; height:auto; aspect-ratio:3/2; }
#home .ce-market-label { display:flex; align-items:baseline; justify-content:center; gap:4px; width:max-content; max-width:none; margin:2px 0 0 50%; padding:5px 11px; border:1px solid #c2d8ff; border-radius:999px; transform:translateX(-50%); background:#fff; color:#102851; font-size:.875rem; line-height:1.4; white-space:nowrap; box-shadow:0 3px 16px #1257d426; }
#home .ce-market-label strong { font-weight:700; font-size:1.06em; }
/* Edge labels are anchored inside the art column, never over the copy. */
#home .ce-market--hu .ce-market-label { margin-left:0; transform:none; }
#home .ce-market--ro .ce-market-label { margin-left:auto; margin-right:0; transform:none; }
#home .ce-order-chip { position:absolute; top:45%; left:43%; z-index:3; max-width:54%; border:1px solid #4e76a3; border-radius:11px; padding:8px 12px; background:#071529f2; box-shadow:0 8px 24px #0003; opacity:0; transform:translateY(8px); pointer-events:none; transition:opacity 280ms ease-out,transform 280ms ease-out; }
#home .ce-order-chip.is-visible { opacity:1; transform:translateY(0); }
#home .ce-order-chip small { display:block; color:#8fa3c0; font-size:.6875rem; line-height:1.3; margin-bottom:3px; letter-spacing:.02em; }
#home .ce-order-chip > span { display:flex; align-items:center; gap:6px; color:#e9f1ff; font-size:.8125rem; line-height:1.4; white-space:nowrap; }
#home .ce-order-chip svg { width:14px; height:14px; color:#7dacff; }
#home .ce-motion-toggle { position:absolute; bottom:0; right:0; display:inline-flex; align-items:center; gap:7px; min-height:44px; padding:9px 11px; border:1px solid #30415b; border-radius:999px; background:#081528; color:#a9bdd8; font:500 .75rem/1.3 Inter,Arial,sans-serif; }
#home .ce-motion-toggle svg { width:14px; height:14px; }
.ce-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
@media (prefers-reduced-motion:no-preference) {
  #home .ce-reveal { animation:ce-rise 500ms ease-out both; animation-delay:calc(var(--ce-step,0)*80ms); }
  #home.ce-enhanced:not(.ce-ready) .ce-tile-enter, #home.ce-enhanced:not(.ce-ready) .ce-market-label { opacity:0; }
  #home.ce-enhanced:not(.ce-ready) .ce-connections { opacity:0; }
  #home.ce-ready .ce-scene { animation:ce-scene-in 600ms ease-out both; }
  #home.ce-ready .ce-tile-enter { animation:ce-pop 440ms cubic-bezier(.2,.8,.3,1.18) both; animation-delay:calc(600ms + var(--ce-order)*120ms); }
  #home.ce-ready .ce-market-label { animation:ce-label-in 300ms ease-out both; animation-delay:calc(840ms + var(--ce-order)*120ms); }
  #home.ce-ready .ce-tile-float { animation:ce-float var(--ce-float,6s) ease-in-out infinite; animation-delay:calc(1100ms + var(--ce-order)*290ms); }
  #home.ce-ready .ce-route-mask { animation:ce-draw 750ms ease-out both; animation-delay:calc(800ms + var(--ce-order)*120ms); }
  /* SVG dash offsets are the only exception to transform/opacity-only motion. */
  #home.ce-ready .ce-route { animation:ce-flow 4s linear infinite; animation-delay:calc(800ms + var(--ce-order)*120ms); }
  #home.ce-ready .ce-glow { animation:ce-breathe 5s ease-in-out infinite; }
  #home[data-ce-running="false"] *, #home[data-ce-running="false"] *::before { animation-play-state:paused!important; }
}
@keyframes ce-rise { from {opacity:0;transform:translateY(12px)} to {opacity:1;transform:translateY(0)} }
@keyframes ce-scene-in { from {opacity:0;transform:scale(.96)} to {opacity:1;transform:scale(1)} }
@keyframes ce-pop { 0% {opacity:0;transform:scale(.8)} 75% {opacity:1;transform:scale(1.045)} 100% {opacity:1;transform:scale(1)} }
@keyframes ce-label-in { from {opacity:0} to {opacity:1} }
@keyframes ce-float { 0%,100% {transform:translateY(-6px)} 50% {transform:translateY(6px)} }
@keyframes ce-draw { from {stroke-dashoffset:1} to {stroke-dashoffset:0} }
@keyframes ce-flow { from {stroke-dashoffset:0} to {stroke-dashoffset:-16} }
@keyframes ce-breathe { 0%,100% {opacity:.3} 50% {opacity:.45} }
@media (max-width:1199px) { .ce-header .ce-desktop-nav { gap:20px; margin-left:0; } .ce-header .ce-brand { width:160px; } #home .ce-button { padding-inline:18px; } }
@media (max-width:1023px) { .ce-header .ce-desktop-nav { display:none; } .ce-header .ce-nav-toggle { display:inline-flex; } #home.ce-hero { padding-block:40px; } #home .ce-grid { column-gap:28px; }  #home .ce-subtitle { font-size:1.125rem; } #home .ce-copy { grid-column:span 6; } #home .ce-visual { grid-column:span 6; } #home .ce-market-label { padding:5px 7px; } #home .ce-order-chip { left:30%; padding:7px; max-width:68%; } #home .ce-order-chip > span { font-size:.75rem; } }
@media (min-width:768px) and (max-width:1023px) {
  #home .ce-market-label { width:150px; max-width:150px; flex-wrap:wrap; row-gap:0; white-space:normal; }
  #home .ce-label-long { flex-basis:100%; line-height:1.2; }
}
@media (max-width:767px) {
  .ce-shell { width:calc(100% - 40px); }
  .ce-header .ce-header-inner { min-height:72px; gap:10px; }
  .ce-header .ce-brand { width:144px; }
  .ce-header .ce-header-actions { gap:8px; }
  .ce-header .ce-book { display:none; }
  .ce-header .language-toggle { padding-inline:10px; }
  #home.ce-hero { min-height:0; padding-block:36px 30px; }
  #home .ce-grid { display:flex; flex-direction:column; align-items:stretch; gap:24px; }
  #home .ce-copy { width:100%; }

  #home .ce-subtitle { margin-top:22px; font-size:1.125rem; max-width:620px; }
  #home .ce-actions { flex-direction:column; gap:0; margin-top:25px; }
  #home .ce-button { width:100%; min-height:54px; font-size:1rem; }
  #home .ce-trust { gap:6px 8px; font-size:.8125rem; margin-top:20px; }
  #home .ce-visual { width:100%; aspect-ratio:auto; padding-bottom:47px; }
  /* 90% × 1.15; the top space also contains the departing notification. */
  #home .ce-stage { position:relative; width:103.5%; margin:48px -1.75% 0; aspect-ratio:3/2; }
  #home .ce-scene { inset:0; width:100%; }
  #home .ce-glow { width:78%; height:70%; top:18%; left:11%; filter:blur(40px); }
  #home .ce-connections { display:none; }
  #home .ce-markets { display:flex; gap:8px; width:100%; max-width:100%; padding:10px 1px 15px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x proximity; scrollbar-width:thin; scrollbar-color:#355384 transparent; }
  #home .ce-market { position:static; flex:0 0 calc((100% - 32px)/5); min-width:84px; max-width:none; width:auto; transform:none; scroll-snap-align:start; padding:6px 8px 9px; border:1px solid #2d4260; border-radius:12px; background:#10203e; }
  #home .ce-tile-float { max-width:88px; }
  #home .ce-market-label, #home .ce-market--hu .ce-market-label, #home .ce-market--ro .ce-market-label { margin:2px auto 0; padding:0; border:0; transform:none; background:none; color:#fff; box-shadow:none; font-size:.875rem; }
  #home .ce-label-long { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  #home .ce-order-chip { left:auto; right:2%; top:33%; padding:7px 9px; max-width:90%; }
  #home .ce-order-chip > span { font-size:.75rem; }
  #home .ce-order-chip small { font-size:.6875rem; }
  #home .ce-motion-toggle { bottom:0; min-height:40px; }
}
@media (max-width:380px) { .ce-header .ce-brand { width:122px; } .ce-header .ce-header-inner, .ce-header .ce-header-actions { gap:6px; } }
@media (prefers-reduced-motion:reduce) {
  #home.ce-hero *, #home.ce-hero *::before { animation:none!important; transition:none!important; }
  #home .ce-reveal, #home .ce-tile-enter, #home .ce-market-label, #home .ce-scene { opacity:1!important; }
  #home .ce-reveal, #home .ce-scene, #home .ce-tile-enter, #home .ce-tile-float { transform:none!important; }
  #home .ce-route-mask { stroke-dashoffset:0!important; }
  #home .ce-order-chip, #home .ce-motion-toggle { display:none!important; }
  #home .ce-primary:hover svg { transform:none; }
}
@media (forced-colors:active) { #home .ce-title .ce-title-accent { background:none; -webkit-text-fill-color:currentColor; } }

/* Enlarge the current .85 composition by 15%: .85 × 1.15 = .9775. */
#home .ce-art { display:contents; }
#home .ce-stage { z-index:0; }
#home .ce-market { z-index:4; }
@media (min-width:768px) {
  #home .ce-grid { grid-template-columns:minmax(0,1fr) calc(48.875% - 13.685px); }
  #home .ce-copy, #home .ce-visual { grid-column:auto; }
  #home .ce-art { display:block; position:absolute; inset:0 auto auto 0; width:102.301790281%; height:102.301790281%; transform:scale(.9775); transform-origin:top left; }
}
@media (min-width:1024px) {
  /* Preserve the original art coordinates and the gap beside the copy. */
  #home .ce-grid { grid-template-columns:minmax(0,1fr) calc(57.020833333% - 9.775px); }
}
@media (min-width:1200px) {
  #home .ce-copy { display:flex; flex-direction:column; justify-content:space-between; align-self:stretch; }
  #home .ce-visual { transform:translateX(24px); }
  #home .ce-title > span { width:max-content; white-space:nowrap; }
}

/* Percent positions and cqw type scale with the unchanged 1536 × 1024 scene. */
#home .ce-scene { container-type:inline-size; }
#home .ce-bag-brand, #home .ce-product-page { position:absolute; transform-origin:0 0; pointer-events:none; color:#0a1a33; }
#home .ce-bag-brand { left:18.2%; top:54%; width:11%; font-size:3.15cqw; line-height:1.08; font-weight:800; text-align:center; transform:matrix(1,.365,-.049,1,0,0); }
#home .ce-product-page { left:52.4%; top:32%; width:16.6%; height:14.6%; display:flex; flex-direction:column; gap:1cqw; background:#fff; transform:matrix(1,.365,-.028,1,0,0); }
#home .ce-product-page strong { font-size:2.8cqw; line-height:1.15; font-weight:700; }
#home .ce-product-cart { display:flex; align-items:center; justify-content:center; width:100%; padding:.9cqw .4cqw; border-radius:999px; background:#0b63f6; color:#fff; font-size:1.8cqw; line-height:1.2; font-weight:600; white-space:nowrap; }

/* Raise the notification by 10% of the scene height; preserve label clearance. */
#home .ce-order-stack { position:absolute; left:59%; top:9%; z-index:1; display:grid; width:max-content; max-width:90%; transform:translate(-50%,calc(-50% + var(--ce-order-nudge,0px))); pointer-events:none; }
#home .ce-order-stack .ce-order-chip { position:relative; inset:auto; grid-area:1/1; align-self:start; max-width:none; opacity:1; transform:none; transition:none; }
@media (prefers-reduced-motion:no-preference) {
  #home .ce-order-chip.is-entering { animation:ce-order-enter 450ms ease-out both; }
  #home .ce-order-chip.is-leaving { animation:ce-order-leave 450ms ease-out both; }
}
@keyframes ce-order-enter { from {opacity:0;transform:translateY(16px)} to {opacity:1;transform:translateY(0)} }
@keyframes ce-order-leave { from {opacity:1;transform:translateY(0) scale(1)} to {opacity:0;transform:translateY(calc(0px - var(--ce-order-exit,calc(100% + 8px)))) scale(.95)} }
/* Override the earlier reduced-motion rule that hid the notification. */
@media (prefers-reduced-motion:reduce) {
  #home.ce-hero .ce-order-stack .ce-order-chip { display:block!important; opacity:1!important; transform:none!important; }
}
