/* eSmartComp Neo — design system and components. Mobile first. */
@font-face{font-family:Geologica;font-style:normal;font-weight:300 900;font-display:swap;src:url(fonts/geologica-greek.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}
@font-face{font-family:Geologica;font-style:normal;font-weight:300 900;font-display:swap;src:url(fonts/geologica-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geologica;font-style:normal;font-weight:300 900;font-display:swap;src:url(fonts/geologica-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
 --ink:#072E30;--ink-2:#24474A;--muted:#4F6B6D;
 --teal:#0A8A8E;--teal-d:#07696C;--teal-dd:#05484A;--night:#04282A;
 --blue:#027A92;--aqua:#A5F3F5;--aqua-l:#E4F9F8;
 --lime:#8CC940;--neon:#C9F45B;--lime-l:#F0F8DF;
 --sun:#FFC24B;--peach:#FFD9CC;--lilac:#DCD2FF;--coral:#FF7E5F;
 --paper:#F7FAF6;--card:#FFFFFF;--line:#D5E5E1;--line-2:#B9D3CE;
 --r-s:12px;--r:20px;--r-l:30px;--r-xl:42px;
 --sh-1:0 1px 2px rgb(7 46 48/.06),0 10px 26px -12px rgb(7 46 48/.22);
 --sh-2:0 2px 6px rgb(7 46 48/.06),0 30px 60px -24px rgb(7 46 48/.38);
 --pop:4px 4px 0 var(--ink);--pop-l:7px 7px 0 var(--ink);
 --ease:cubic-bezier(.2,.8,.2,1);--spring:cubic-bezier(.34,1.56,.64,1);
 --wrap:1240px;--gut:clamp(18px,4.2vw,40px);
 --f:Geologica,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
 --t:clamp(1.0625rem,1rem + .22vw,1.1875rem);
 --t-l:clamp(1.125rem,1.04rem + .4vw,1.3125rem);
 --h-xl:clamp(2.55rem,1.55rem + 4.6vw,5.4rem);
 --h-l:clamp(2rem,1.35rem + 2.7vw,3.6rem);
 --h-m:clamp(1.5rem,1.2rem + 1.2vw,2.15rem);
 --h-s:clamp(1.22rem,1.12rem + .45vw,1.45rem);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;font-family:var(--f);font-size:var(--t);line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
body.neo{padding-top:0!important}
img,svg,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
button{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--f);margin:0;line-height:1.08;letter-spacing:-.025em;font-weight:800;color:inherit;text-wrap:balance}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:8px}
::selection{background:var(--neon);color:var(--ink)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:16px;top:-80px;z-index:200;background:var(--ink);color:#fff;padding:12px 18px;border-radius:12px;text-decoration:none;font-weight:700;transition:top .2s}
.skip:focus{top:16px}
#main{outline:none;display:block}
.ri{width:1.15em;height:1.15em;flex:none}
.wrap{width:100%;max-width:calc(var(--wrap) + var(--gut)*2);margin-inline:auto;padding-inline:var(--gut)}
.section{position:relative;padding:clamp(64px,9vw,128px) 0}
.section__head{max-width:860px;margin-bottom:clamp(32px,5vw,56px)}
.section__head .h-l{margin-top:14px}
.section__cta{margin-top:clamp(28px,4vw,44px);display:flex;justify-content:center}
.h-l{font-size:var(--h-l);line-height:1.04;letter-spacing:-.032em}
.h-m{font-size:var(--h-m)}
.grad{background:linear-gradient(100deg,var(--teal) 8%,var(--blue) 40%,var(--lime) 92%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.04em}
.prose{font-size:var(--t);color:var(--ink-2);max-width:68ch}
.prose>*:last-child{margin-bottom:0}
.prose b,.prose strong{color:var(--ink);font-weight:700}
.prose a{color:var(--teal-d);font-weight:600;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--teal) 45%,transparent);transition:color .2s,text-decoration-color .2s}
.prose a:hover{color:var(--ink);text-decoration-color:var(--lime)}
.prose ul,.prose ol{padding-left:0;margin:0 0 1.1em;list-style:none;display:grid;gap:.55em}
.prose li{position:relative;padding-left:1.65em}
.prose ul li::before{content:"";position:absolute;left:.15em;top:.5em;width:.62em;height:.62em;border-radius:3px;background:var(--lime);box-shadow:3px 3px 0 var(--teal);transform:rotate(12deg)}
.prose ol{counter-reset:n}
.prose ol li::before{counter-increment:n;content:counter(n);position:absolute;left:0;top:.1em;width:1.3em;height:1.3em;border-radius:50%;background:var(--aqua);font-size:.8em;font-weight:800;display:grid;place-items:center}
.prose h2,.prose h3,.prose h4{margin:1.6em 0 .55em;color:var(--ink)}
.prose h2{font-size:var(--h-m)}.prose h3{font-size:var(--h-s)}
.prose img{border-radius:var(--r);margin:1.4em 0}
.prose blockquote{margin:1.6em 0;padding:18px 22px;border-left:5px solid var(--lime);background:var(--lime-l);border-radius:0 var(--r) var(--r) 0;font-size:var(--t-l)}
.prose table{width:100%;border-collapse:collapse;font-size:.95em;margin:1.4em 0}
.prose th,.prose td{border:1px solid var(--line);padding:10px 12px;text-align:left}

/* Eyebrows, chips, stickers */
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 10px;border-radius:999px;background:#fff;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);line-height:1.2}
.eyebrow .ri{color:var(--teal);width:18px;height:18px}
.eyebrow--dark{background:var(--ink);color:var(--neon);box-shadow:3px 3px 0 var(--teal)}
.eyebrow--dark .ri{color:var(--neon)}
.eyebrow--neon{background:var(--neon);border-color:var(--neon);color:var(--ink);box-shadow:3px 3px 0 var(--teal)}
.eyebrow--neon .ri{color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;font-size:15px;font-weight:700;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;cursor:pointer;user-select:none;transition:transform .25s var(--spring),box-shadow .25s var(--ease)}
.chip .ri{width:18px;height:18px}
.chip--lime{background:var(--neon)}.chip--aqua{background:var(--aqua)}
.chip:hover{transform:translate(-2px,-2px) rotate(-2deg);box-shadow:5px 5px 0 var(--ink)}

/* Buttons: pressable, with a sliding icon and a sheen */
.btn{--bg:var(--neon);--fg:var(--ink);--bd:var(--ink);--sh:var(--ink);position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:8px 10px 8px 24px;border-radius:999px;background:var(--bg);color:var(--fg);border:2px solid var(--bd);box-shadow:4px 4px 0 var(--sh);font-size:17px;font-weight:700;line-height:1.15;letter-spacing:-.005em;text-decoration:none;cursor:pointer;overflow:hidden;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:transform .22s var(--ease),box-shadow .22s var(--ease),background-color .22s,color .22s}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgb(255 255 255/.55) 48%,transparent 66%);transform:translateX(-120%);transition:transform .6s var(--ease)}
.btn__icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--fg);color:var(--bg);transition:transform .35s var(--spring)}
.btn__icon .ri{width:20px;height:20px}
.btn:hover{transform:translate(-3px,-3px);box-shadow:7px 7px 0 var(--sh)}
.btn:hover::after{transform:translateX(120%)}
.btn:hover .btn__icon{transform:rotate(-45deg) scale(1.06)}
.btn:active{transform:translate(3px,3px);box-shadow:0 0 0 var(--sh);transition-duration:.08s}
.btn--dark{--bg:var(--ink);--fg:#fff;--bd:var(--ink);--sh:var(--teal)}
.btn--dark .btn__icon{background:var(--neon);color:var(--ink)}
.btn--ghost{--bg:#fff;--fg:var(--ink)}
.btn--ghost .btn__icon{background:var(--aqua);color:var(--ink)}
.btn--light{--bg:#fff;--fg:var(--ink);--bd:#fff;--sh:var(--neon)}
.btn--light .btn__icon{background:var(--ink);color:var(--neon)}
.btn--sm{min-height:46px;font-size:15px;padding:5px 6px 5px 18px;gap:10px;box-shadow:3px 3px 0 var(--sh)}
.btn--sm .btn__icon{width:32px;height:32px}
.btn--lg{min-height:60px;font-size:18px}
.btn--lg .btn__icon{width:42px;height:42px}
.btn.loading{pointer-events:none}
.btn.loading .btn__icon{animation:spin .8s linear infinite}
.btn.added .btn__icon{background:var(--teal);color:#fff}
.added_to_cart{display:none!important}

/* Pixel squares from the logo */
.px{position:absolute;width:var(--s,18px);height:var(--s,18px);border-radius:4px;background:var(--lime);box-shadow:3px 3px 0 var(--ink);cursor:pointer;animation:drift 7s ease-in-out infinite;z-index:3}
.px--2{--s:12px;background:var(--teal);animation-delay:-2s;animation-duration:9s}
.px--3{--s:22px;background:var(--neon);animation-delay:-4s;animation-duration:11s}
.px--4{--s:14px;background:var(--aqua);animation-delay:-1s}
.orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:float 16s ease-in-out infinite}
.orb--a{width:42vw;height:42vw;max-width:560px;max-height:560px;background:var(--aqua);top:-12%;right:-10%}
.orb--b{width:34vw;height:34vw;max-width:460px;max-height:460px;background:var(--lime-l);bottom:-20%;left:-12%;animation-delay:-5s;opacity:.9}
.orb--c{width:22vw;height:22vw;max-width:300px;max-height:300px;background:var(--neon);top:30%;left:38%;opacity:.25;animation-delay:-9s}

/* Header */
.loadbar{position:fixed;inset:0 0 auto;height:3px;z-index:120;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--teal),var(--neon),var(--teal));background-size:200% 100%;pointer-events:none;opacity:0;transition:opacity .2s}
.is-leaving .loadbar{opacity:1;animation:load 1.4s var(--ease) forwards,shimmer 1s linear infinite}
.hdr{position:sticky;top:0;z-index:90;padding:10px 0;transition:padding .3s var(--ease)}
.hdr__bar{display:flex;align-items:center;gap:10px;height:62px;padding:0 8px 0 14px;border-radius:999px;background:rgb(255 255 255/.82);-webkit-backdrop-filter:saturate(1.6) blur(16px);backdrop-filter:saturate(1.6) blur(16px);border:1.5px solid rgb(7 46 48/.1);box-shadow:var(--sh-1);transition:box-shadow .3s,border-color .3s,background-color .3s}
.is-scrolled .hdr__bar{background:rgb(255 255 255/.94);border-color:rgb(7 46 48/.16);box-shadow:var(--sh-2)}
.hdr__brand{display:flex;align-items:center;text-decoration:none;flex:none;border-radius:14px}
.logo{display:inline-flex;align-items:center;gap:8px;position:relative}
.logo__mark{width:auto;height:40px;transition:transform .5s var(--spring)}
.logo__word{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;font-weight:700;font-size:23px;letter-spacing:-.01em;color:var(--blue);line-height:1}
.logo__e,.logo__comp{color:var(--lime)}
.logo__px{position:absolute;left:28px;top:-2px;display:flex;gap:3px;pointer-events:none}
.logo__px i{width:5px;height:5px;background:var(--lime);border-radius:1px;opacity:0;transform:translateY(6px)}
.hdr__brand:hover .logo__mark{transform:rotate(-8deg) scale(1.06)}
.hdr__brand:hover .logo__px i{animation:pxup .7s var(--spring) forwards}
.hdr__brand:hover .logo__px i:nth-child(2){animation-delay:.08s}
.logo--light{background:#fff;padding:10px 16px;border-radius:18px}
.nav{display:none}
.hdr__actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.hdr__platform,.hdr__cta{display:none!important}
.lang{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;align-items:center;padding:3px;border-radius:999px;background:var(--aqua-l);border:1.5px solid var(--line-2);isolation:isolate}
.lang button{position:relative;z-index:1;border:0;background:none;padding:7px 10px;min-width:40px;font-size:14px;font-weight:800;letter-spacing:.04em;cursor:pointer;border-radius:999px;color:var(--muted);transition:color .25s}
.lang button[aria-pressed=true]{color:var(--ink)}
.lang__thumb{position:absolute;z-index:0;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:var(--neon);border:1.5px solid var(--ink);transition:transform .35s var(--spring)}
.lang[data-active=en] .lang__thumb{transform:translateX(100%)}
.lang--dark{background:rgb(255 255 255/.06);border-color:rgb(255 255 255/.18)}
.lang--dark button{color:#9FC9C6}.lang--dark button[aria-pressed=true]{color:var(--ink)}
.cartbtn{position:relative;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:2px solid var(--ink);background:#fff;cursor:pointer;flex:none;transition:transform .25s var(--spring),background-color .2s,box-shadow .25s;box-shadow:2px 2px 0 var(--ink)}
.cartbtn .ri{width:22px;height:22px;transition:transform .35s var(--spring)}
.cartbtn:hover{background:var(--neon);transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink)}
.cartbtn:hover .ri{transform:rotate(-12deg) scale(1.08)}
.cartbtn:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--ink)}
.neo-cart-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--ink);color:var(--neon);font-size:12.5px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
.cartbtn .neo-cart-count{position:absolute;top:-6px;right:-7px;border:2px solid #fff}
.neo-cart-count[data-count="0"]{background:var(--line-2);color:var(--ink)}
.is-bump{animation:bump .6s var(--spring)}
.burger{display:grid;place-content:center;gap:5px;width:46px;height:46px;border-radius:50%;border:2px solid var(--ink);background:var(--ink);cursor:pointer;flex:none;transition:transform .25s var(--spring),background-color .2s}
.burger span{display:block;width:20px;height:2.5px;border-radius:2px;background:#fff;transition:transform .35s var(--spring),opacity .2s,width .3s}
.burger span:nth-child(2){width:14px;margin-left:auto}
.burger:hover span:nth-child(2){width:20px}
.burger[aria-expanded=true]{background:var(--neon)}
.burger[aria-expanded=true] span{background:var(--ink)}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0;transform:scaleX(0)}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* Full-screen mobile menu */
.menu{position:fixed;inset:0;z-index:80;background:var(--night);color:#fff;overflow-y:auto;padding:104px var(--gut) 40px;opacity:0;transition:opacity .35s var(--ease)}
.menu::before{content:"";position:fixed;inset:0;background:radial-gradient(60% 40% at 90% 10%,rgb(201 244 91/.22),transparent 60%),radial-gradient(50% 40% at 0% 100%,rgb(10 138 142/.45),transparent 70%);pointer-events:none}
.menu.is-open{opacity:1}
.menu__panel{position:relative;max-width:640px;margin:0 auto;display:grid;gap:30px}
.menu__nav{display:grid;gap:2px}
.menu__nav a{display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid rgb(255 255 255/.12);text-decoration:none;font-size:clamp(1.9rem,1.4rem + 3vw,2.6rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;opacity:0;transform:translateY(24px);transition:color .2s}
.menu.is-open .menu__nav a{animation:rise .55s var(--ease) forwards;animation-delay:calc(var(--i)*.06s + .08s)}
.menu__nav small{font-size:14px;font-weight:700;color:var(--neon);letter-spacing:.06em;width:24px}
.menu__nav span{flex:1}
.menu__nav .ri{width:30px;height:30px;color:var(--neon);transition:transform .3s var(--spring)}
.menu__nav a:hover,.menu__nav a[aria-current]{color:var(--neon)}
.menu__nav a:hover .ri{transform:rotate(45deg)}
.menu__cta{display:grid;gap:12px}
.menu__cta .btn{width:100%;justify-content:space-between}
.menu__mail{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--r);background:rgb(255 255 255/.06);border:1px solid rgb(255 255 255/.12);text-decoration:none;font-size:18px;font-weight:600}
.menu__mail .ri{width:26px;height:26px;color:var(--neon)}
.menu__mail span{display:grid}
.menu__mail small{font-size:13px;letter-spacing:.08em;color:#9FC9C6}
html.menu-open,html.drawer-open{overflow:hidden}

/* Hero */
.hero{position:relative;padding:20px 0 clamp(56px,7vw,96px);overflow:clip}
.hero__bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.grid-dots{position:absolute;inset:0;background-image:radial-gradient(rgb(7 46 48/.14) 1.2px,transparent 1.2px);background-size:26px 26px;-webkit-mask-image:radial-gradient(70% 60% at 70% 40%,#000,transparent);mask-image:radial-gradient(70% 60% at 70% 40%,#000,transparent)}
.hero__grid{display:grid;gap:34px;align-items:center}
.hero__copy{position:relative;z-index:2}
.hero__title{font-size:var(--h-xl);line-height:1;letter-spacing:-.04em;font-weight:850;margin:20px 0 22px}
.hero__lead{font-size:var(--t-l);line-height:1.6;color:var(--ink-2);max-width:40ch}
.hero__lead p{margin:0}
.hero__lead b,.hero__lead strong{color:var(--ink);font-weight:700;background:linear-gradient(transparent 62%,rgb(201 244 91/.85) 62%,rgb(201 244 91/.85) 92%,transparent 92%)}
.hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero__cta .btn{flex:1 1 auto}
.hero__art{position:relative;width:100%;max-width:520px;margin-inline:auto;aspect-ratio:1/1.02;perspective:900px}
.hero__stage{position:absolute;inset:4% 6% 0;display:grid;place-items:end center;transform-style:preserve-3d;transition:transform .5s var(--ease)}
.hero__ring{position:absolute;inset:2% 0 8%;border-radius:50%;border:2px dashed rgb(10 138 142/.45);animation:spin 40s linear infinite}
.hero__ring::before{content:"";position:absolute;top:8%;left:12%;width:16px;height:16px;border-radius:50%;background:var(--neon);border:2px solid var(--ink)}
.hero__img{position:relative;z-index:1;width:100%;height:100%;border-radius:0;background:none}
.hero__img img{width:100%;height:100%;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 24px 30px rgb(7 46 48/.25))}
.sticker{position:absolute;z-index:4;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:20px;background:#fff;border:2px solid var(--ink);box-shadow:var(--pop);cursor:grab;user-select:none;touch-action:none;transition:box-shadow .2s,transform .2s var(--spring)}
.sticker:active{cursor:grabbing}
.sticker b{font-size:clamp(28px,4vw,40px);font-weight:900;letter-spacing:-.04em;line-height:1}
.sticker span{font-size:15px;font-weight:600;line-height:1.15;color:var(--ink-2)}
.sticker--count{left:-2%;top:40%;transform:rotate(-7deg);background:var(--neon)}
.sticker--skills{right:-1%;bottom:12%;transform:rotate(5deg)}
.sticker--skills .ri{width:24px;height:24px;color:var(--sun)}
.sticker--radar{right:2%;top:2%;flex-direction:column;gap:2px;padding:10px 12px 12px;transform:rotate(4deg);background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--teal)}
.sticker--radar strong{font-size:22px;font-weight:900;color:var(--neon)}
.sticker--radar strong span{font-size:14px;color:#cfe;font-weight:600}
.sticker.is-dragging{box-shadow:10px 14px 0 rgb(7 46 48/.35);z-index:6;transition:none}
.radar--mini{width:110px;height:auto}
.radar--mini .radar__label{font-size:46px;fill:#bfe}
.radar--mini .radar__ring{stroke:rgb(255 255 255/.18)}
.radar--mini .radar__axis{stroke:rgb(255 255 255/.14)}
.radar--mini .radar__dot{r:10;fill:var(--neon);stroke:var(--ink)}
.hero__art .px--1{left:8%;top:12%}.hero__art .px--2{left:16%;top:4%}.hero__art .px--3{right:22%;bottom:2%}
.hint{position:absolute;left:50%;bottom:-6px;z-index:5;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;border:2px solid var(--ink);color:var(--teal);transform:translateX(-50%);animation:nudge 2.4s ease-in-out infinite;pointer-events:none}
.hint .ri{width:20px;height:20px}
.has-dragged .hint{opacity:0;transition:opacity .4s}

/* Marquee */
.marquee{position:relative;z-index:3;overflow:hidden;background:var(--neon);border-block:2px solid var(--ink);transform:rotate(-1.6deg);margin:8px -12px 0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.marquee__track{display:flex;width:max-content;animation:marquee 34s linear infinite}
.marquee:hover .marquee__track,.marquee.is-paused .marquee__track{animation-play-state:paused}
.marquee__group{display:flex;align-items:center;flex:none}
.marquee__item{display:inline-flex;align-items:center;gap:12px;padding:16px 8px;font-size:clamp(1.25rem,1rem + 1.2vw,1.9rem);font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.marquee__item .ri{width:1.1em;height:1.1em;padding:6px;box-sizing:content-box;border-radius:12px;background:var(--ink);color:var(--neon)}
.marquee__sep{display:grid;place-items:center;padding:0 18px;color:var(--teal)}
.marquee__sep .ri{width:22px;height:22px;animation:spin 6s linear infinite}

/* Statement */
.statement{padding:clamp(72px,10vw,140px) 0 clamp(24px,4vw,40px)}
.statement__text{font-size:clamp(1.45rem,1.05rem + 2vw,2.6rem);font-weight:500;line-height:1.32;letter-spacing:-.02em;color:var(--ink-2);max-width:30em}
.statement__text p{margin:0}
.statement__text b,.statement__text strong{color:var(--ink);font-weight:800}

/* Highlight that draws itself when revealed */
[data-highlight] b,[data-highlight] strong{background:linear-gradient(var(--neon),var(--neon)) no-repeat 0 88%/0% 34%;transition:background-size 1s var(--ease);transition-delay:.25s}
[data-highlight].is-in b,[data-highlight].is-in strong,.no-js [data-highlight] b{background-size:100% 34%}

/* Method funnel */
.method__grid{display:grid;gap:40px;align-items:center}
.method__copy .h-l{margin:16px 0 22px}
.method__copy .prose{margin-bottom:28px}
.funnel{position:relative;isolation:isolate;overflow:hidden;display:grid;gap:12px;padding:clamp(22px,4vw,36px);border-radius:var(--r-xl);background:var(--night);color:#fff;box-shadow:var(--pop-l);border:2px solid var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent}
.funnel::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(400px circle at var(--mx,70%) var(--my,20%),rgb(201 244 91/.18),transparent 60%)}
.funnel__row{position:relative;display:flex;align-items:baseline;gap:14px;min-height:74px;padding:14px 20px;border-radius:22px;width:var(--w);min-width:min(100%,250px);background:linear-gradient(100deg,var(--teal-d),var(--teal) 60%,color-mix(in srgb,var(--teal) 55%,var(--lime)));transform-origin:left;transition:transform .8s var(--spring),width .8s var(--ease);transition-delay:calc(var(--i)*.12s)}
.funnel__row:last-of-type{background:linear-gradient(100deg,var(--lime),var(--neon));color:var(--ink)}
.funnel__row b{font-size:clamp(2rem,1.4rem + 2.6vw,3.3rem);font-weight:900;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}
.funnel__row span{font-size:16px;font-weight:600;line-height:1.2;opacity:.92}
.js .funnel:not(.is-in) .funnel__row{transform:scaleX(.2);opacity:.2}
.funnel__px{position:absolute;right:20px;top:20px;display:grid;grid-template-columns:repeat(2,14px);gap:6px}
.funnel__px i{width:14px;height:14px;border-radius:3px;background:var(--neon)}
.funnel__px i:nth-child(2){background:var(--aqua);grid-column:2}
.funnel__px i:nth-child(3){background:var(--teal);grid-column:1}
.funnel__tap{position:absolute;right:20px;bottom:18px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgb(255 255 255/.1);color:var(--neon);animation:tap 2.2s ease-in-out infinite}

/* Seven competencies */
.seven{background:var(--aqua-l);overflow:clip}
.seven::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgb(10 138 142/.07) 1px,transparent 1px),linear-gradient(90deg,rgb(10 138 142/.07) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);pointer-events:none}
.seven__grid{position:relative;display:grid;gap:28px;align-items:start}
.seven__radar{max-width:440px;width:100%;margin-inline:auto}
.radar{width:100%;height:auto;overflow:visible}
.radar__ring{fill:none;stroke:rgb(7 46 48/.14);stroke-width:1.5}
.radar__ring:first-of-type{fill:#fff;stroke:rgb(7 46 48/.25);stroke-width:2}
.radar__axis{stroke:rgb(7 46 48/.12);stroke-width:1.5;transition:stroke .3s,stroke-width .3s}
.radar__axis.is-on{stroke:var(--teal);stroke-width:3}
.radar__shape{fill:url(#neoRadarFill);stroke:var(--ink);stroke-width:2.5;stroke-linejoin:round}
.radar__dot{fill:#fff;stroke:var(--ink);stroke-width:2.5;transition:r .3s var(--spring),fill .3s}
.radar__dot.is-on{r:11;fill:var(--neon)}
.radar__label{font-family:var(--f);font-size:17px;font-weight:700;fill:var(--muted);transition:fill .3s}
.radar__label.is-on{fill:var(--ink);font-weight:800}
.seven__list{display:grid;gap:10px}
.skill{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 14px;width:100%;text-align:left;padding:14px 16px;border-radius:22px;border:2px solid transparent;background:#fff;box-shadow:var(--sh-1);cursor:pointer;transition:border-color .25s,box-shadow .25s,transform .25s var(--spring),background-color .25s;-webkit-tap-highlight-color:transparent}
.skill:hover{transform:translateX(4px);border-color:var(--line-2)}
.skill__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--aqua-l);color:var(--teal);transition:background-color .3s,color .3s,transform .4s var(--spring)}
.skill__icon .ri{width:24px;height:24px}
.skill__title{font-size:var(--h-s);font-weight:800;letter-spacing:-.02em;line-height:1.15}
.skill__no{font-size:14px;font-weight:800;color:var(--muted);letter-spacing:.04em}
.skill__body{grid-column:1/-1;display:grid;grid-template-rows:0fr;font-size:16.5px;line-height:1.55;color:var(--ink-2);transition:grid-template-rows .45s var(--ease),margin .45s var(--ease)}
.skill__body>*{overflow:hidden}
.skill__body p{margin:0}
.skill[aria-selected=true]{border-color:var(--ink);box-shadow:var(--pop);background:#fff}
.skill[aria-selected=true] .skill__icon{background:var(--ink);color:var(--neon);transform:rotate(-8deg)}
.skill[aria-selected=true] .skill__no{color:var(--teal)}
.skill[aria-selected=true] .skill__body{grid-template-rows:1fr;margin-top:8px}

/* Audience cards */
.audience__grid{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
.acard{position:relative;display:flex;flex-direction:column;border-radius:var(--r-l);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop);overflow:hidden;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s var(--ease);-webkit-tap-highlight-color:transparent}
.acard__media{position:relative;aspect-ratio:16/10;background:var(--acc,var(--lime-l));overflow:hidden;border-bottom:2px solid var(--ink)}
.acard__media .media{position:absolute;inset:0}
.acard__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease),filter .5s}
.acard__icon{position:absolute;left:16px;bottom:-1px;display:grid;place-items:center;width:54px;height:54px;border-radius:16px 16px 0 0;background:#fff;border:2px solid var(--ink);border-bottom:0;color:var(--teal);z-index:2}
.acard__icon .ri{width:26px;height:26px;transition:transform .5s var(--spring)}
.acard__body{padding:20px 20px 26px;display:grid;gap:8px}
.acard__body h3{font-size:var(--h-s);letter-spacing:-.02em}
.acard__tag{margin:0;font-weight:800;color:var(--teal-d);font-size:17px}
.acard__body p{margin:0;color:var(--ink-2);font-size:16.5px;line-height:1.58}
.acard__body b,.acard__body strong{color:var(--ink)}
.acard__arrow{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid var(--ink);transition:transform .35s var(--spring),background-color .25s;z-index:2}
.acard__arrow .ri{width:22px;height:22px}
.acard--0{--acc:var(--neon)}.acard--1{--acc:var(--aqua)}.acard--2{--acc:var(--peach)}.acard--3{--acc:var(--lilac)}
.acard:hover,.acard.is-active{transform:translate(-4px,-4px);box-shadow:var(--pop-l)}
.acard:hover .acard__media img,.acard.is-active .acard__media img{transform:scale(1.07)}
.acard:hover .acard__arrow,.acard.is-active .acard__arrow{transform:rotate(45deg);background:var(--acc)}
.acard:hover .acard__icon .ri,.acard.is-active .acard__icon .ri{transform:rotate(-12deg) scale(1.15)}

/* Why — bento on dark */
.why{background:var(--night);color:#fff;overflow:clip}
.why::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 40% at 100% 0%,rgb(10 138 142/.55),transparent 70%),radial-gradient(40% 40% at 0% 100%,rgb(201 244 91/.12),transparent 70%);pointer-events:none}
.why .h-l{color:#fff}
.why .grad{background:linear-gradient(100deg,var(--aqua),var(--neon));-webkit-background-clip:text;background-clip:text}
.bento{position:relative;display:grid;gap:16px}
.bento__card{position:relative;isolation:isolate;overflow:hidden;display:grid;align-content:start;gap:10px;padding:26px 24px 28px;border-radius:var(--r-l);background:rgb(255 255 255/.05);border:1.5px solid rgb(255 255 255/.12);cursor:pointer;transition:transform .35s var(--ease),border-color .3s,background-color .3s;-webkit-tap-highlight-color:transparent}
.bento__card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgb(201 244 91/.20),transparent 55%);transition:opacity .35s}
.bento__card:hover,.bento__card.is-active{border-color:rgb(201 244 91/.55);transform:translateY(-4px)}
.bento__card:hover::before,.bento__card.is-active::before{opacity:1}
.bento__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:var(--neon);color:var(--ink);margin-bottom:8px;box-shadow:4px 4px 0 var(--teal);transition:transform .45s var(--spring)}
.bento__icon .ri{width:28px;height:28px}
.bento__card:hover .bento__icon{transform:rotate(-10deg) scale(1.08)}
.bento__card h3{font-size:var(--h-s);color:#fff}
.bento__tag{margin:0;color:var(--neon);font-weight:700;font-size:17px}
.bento__card p{margin:0;color:#C3DEDB;font-size:16.5px;line-height:1.6}
.bento__card b,.bento__card strong{color:#fff}
.bento__art{display:block;width:min(220px,60%);margin:14px 0 0 auto}
.bento__art .media{background:none}
.bento__card--0{background:linear-gradient(150deg,rgb(10 138 142/.55),rgb(255 255 255/.04) 70%)}

/* Premium */
.premium{background:linear-gradient(180deg,var(--paper),var(--lime-l))}
.premium__grid{display:grid;gap:40px;align-items:center}
.premium__visual{position:relative;max-width:460px;width:100%;margin-inline:auto;perspective:900px}
.premium__card{position:relative;border-radius:var(--r-xl);overflow:hidden;border:2px solid var(--ink);box-shadow:var(--pop-l);background:#fff;transform-style:preserve-3d;transition:transform .5s var(--ease)}
.premium__card .media{display:block;aspect-ratio:1}
.premium__card img{width:100%;height:100%;object-fit:cover}
.premium__shine{position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgb(255 255 255/.45) 50%,transparent 65%);transform:translateX(-100%);animation:sheen 5s ease-in-out infinite;pointer-events:none}
.premium__price{position:absolute;right:-26px;top:-34px;z-index:3;display:grid;place-items:center;width:112px;height:112px;border-radius:50%;background:var(--neon);border:2px solid var(--ink);box-shadow:var(--pop);font-size:28px;font-weight:900;letter-spacing:-.04em;cursor:pointer;animation:wobble 6s ease-in-out infinite}
.premium__visual .px--1{left:-8px;bottom:18%}.premium__visual .px--2{left:12%;bottom:-8px}
.premium__copy .h-l{margin:16px 0 14px}
.premium__pricehtml{font-size:clamp(1.8rem,1.4rem + 1.4vw,2.5rem);font-weight:900;letter-spacing:-.03em;color:var(--teal-d);margin-bottom:16px}
.premium__pricehtml .esm-vat-label{display:inline-block;margin-left:8px;font-size:15px;font-weight:600;color:var(--muted);letter-spacing:0}
.premium__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

/* CTA band + footer */
.ctaband{padding:0 0 clamp(56px,8vw,96px)}
.ctaband__card{position:relative;isolation:isolate;overflow:hidden;display:grid;gap:26px;padding:clamp(34px,6vw,72px);border-radius:var(--r-xl);background:linear-gradient(135deg,var(--teal-d),var(--night) 70%);color:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l)}
.ctaband__card::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(460px circle at var(--mx,80%) var(--my,20%),rgb(201 244 91/.25),transparent 60%)}
.ctaband__title{font-size:var(--h-l);line-height:1.04;max-width:16em;letter-spacing:-.035em}
.ctaband__actions{display:flex;flex-wrap:wrap;gap:12px}
.ctaband__px{position:absolute;right:clamp(16px,5vw,64px);top:clamp(16px,4vw,48px);display:grid;grid-template-columns:repeat(3,18px);gap:8px;z-index:-1}
.ctaband__px i{width:18px;height:18px;border-radius:4px;background:var(--neon);opacity:.9;animation:blink 3s ease-in-out infinite}
.ctaband__px i:nth-child(2n){background:var(--aqua);animation-delay:-1s}
.ctaband__px i:nth-child(3n){background:var(--teal);animation-delay:-2s}
.ctaband__px i:nth-child(4),.ctaband__px i:nth-child(6){visibility:hidden}
.ftr{position:relative;overflow:hidden;background:var(--night);color:#CFE5E2;padding:clamp(56px,7vw,88px) 0 0}
.ftr__grid{display:grid;gap:34px}
.ftr__brand{display:grid;gap:22px;justify-items:start}
.ftr__logo{border-radius:20px;text-decoration:none}
.ftr__mail{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 12px;text-decoration:none;font-size:clamp(1.3rem,1.1rem + 1vw,1.9rem);font-weight:800;color:#fff;letter-spacing:-.02em}
.ftr__mail small{width:100%;font-size:13px;letter-spacing:.1em;color:var(--neon);font-weight:700}
.ftr__mail .ri{width:28px;height:28px;color:var(--neon);transition:transform .35s var(--spring)}
.ftr__mail:hover .ri{transform:rotate(45deg)}
.ftr__mail:hover span{text-decoration:underline;text-decoration-color:var(--neon)}
.ftr__col{display:grid;gap:4px;align-content:start}
.ftr__col a:not(.btn){display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:7px 0;text-decoration:none;font-size:17px;font-weight:500;transition:color .2s,transform .25s var(--spring)}
.ftr__col a:not(.btn)::before{content:"";width:0;height:3px;border-radius:2px;background:var(--neon);transition:width .3s var(--ease)}
.ftr__col a:not(.btn):hover{color:#fff;transform:translateX(2px)}
.ftr__col a:not(.btn):hover::before{width:14px}
.ftr__actions{gap:12px}
.ftr__actions a::before{display:none}
.ftr__actions .btn{width:100%;justify-content:space-between}
.ftr__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:44px;padding:22px 0;border-top:1px solid rgb(255 255 255/.12);font-size:15px;color:#9FC9C6}
.ftr__giant{font-size:clamp(4rem,19vw,17rem);font-weight:900;letter-spacing:-.06em;line-height:.8;white-space:nowrap;text-align:center;margin-bottom:-.12em;background:linear-gradient(180deg,rgb(165 243 245/.22),rgb(165 243 245/0) 85%);-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none;transform:translateX(var(--gx,0));will-change:transform}

/* Cart drawer + mini cart */
.drawer{position:fixed;inset:0;z-index:110}
.drawer__scrim{position:absolute;inset:0;background:rgb(4 40 42/.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;transition:opacity .35s}
.drawer__panel{position:absolute;right:0;top:0;bottom:0;width:min(440px,100%);display:flex;flex-direction:column;background:var(--paper);border-left:2px solid var(--ink);box-shadow:-20px 0 60px rgb(4 40 42/.3);transform:translateX(104%);transition:transform .45s var(--ease)}
.drawer.is-open .drawer__scrim{opacity:1}
.drawer.is-open .drawer__panel{transform:none}
.drawer__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 16px 22px;border-bottom:1.5px solid var(--line)}
.drawer__head h2{display:flex;align-items:center;gap:10px;font-size:24px}
.drawer__head h2 .ri{width:26px;height:26px;color:var(--teal)}
.drawer__close{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:2px solid var(--ink);background:#fff;cursor:pointer;transition:transform .35s var(--spring),background-color .2s}
.drawer__close:hover{transform:rotate(90deg);background:var(--neon)}
.drawer__close .ri{width:22px;height:22px}
.drawer__body{position:relative;flex:1;overflow-y:auto;padding:18px 22px 24px}
.skeleton-list{display:none;gap:14px}
.drawer.is-loading .skeleton-list{display:grid}
.drawer.is-loading .widget_shopping_cart_content{display:none}
.sk-row{display:flex;gap:14px;align-items:center;padding:12px;border-radius:18px;background:#fff;border:1.5px solid var(--line)}
.sk-row>span{flex:1;display:grid;gap:10px}
.sk{display:block;border-radius:10px;background:linear-gradient(90deg,#E7F0EE 25%,#F6FAF9 50%,#E7F0EE 75%);background-size:200% 100%;animation:shimmer 1.15s linear infinite}
.sk--thumb{width:72px;height:72px;border-radius:14px;flex:none}
.sk--line{height:14px}.sk--short{width:55%}
.woocommerce-mini-cart{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.woocommerce-mini-cart-item{position:relative;display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;padding:12px 48px 12px 12px;border-radius:18px;background:#fff;border:1.5px solid var(--line);transition:border-color .25s,transform .25s var(--ease),box-shadow .25s;animation:rise .5s var(--ease) both}
.woocommerce-mini-cart-item:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:var(--pop)}
.woocommerce-mini-cart-item>a:not(.remove){grid-row:1/3;display:contents;font-weight:700;font-size:16px;line-height:1.3;text-decoration:none}
.woocommerce-mini-cart-item img{grid-row:1/3;width:72px!important;height:72px!important;object-fit:cover;border-radius:14px;margin:0!important;transition:transform .4s var(--spring)}
.woocommerce-mini-cart-item:hover img{transform:rotate(-4deg) scale(1.05)}
.woocommerce-mini-cart-item .quantity{grid-column:2;font-size:15px;color:var(--muted);font-weight:600}
.woocommerce-mini-cart-item .quantity .amount{color:var(--ink);font-weight:800}
.woocommerce-mini-cart-item .remove{position:absolute;right:10px;top:50%;display:grid;place-items:center;width:32px;height:32px;margin-top:-16px;border-radius:50%;background:var(--paper);color:var(--ink)!important;text-decoration:none;font-size:22px;line-height:1;transition:transform .35s var(--spring),background-color .2s,color .2s}
.woocommerce-mini-cart-item .remove:hover{background:#FFE2DA;color:#B4351A!important;transform:rotate(90deg)}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;align-items:baseline;margin:20px 0 14px;padding:16px 4px 0;border-top:2px dashed var(--line-2);font-size:18px}
.woocommerce-mini-cart__total .amount{font-size:26px;font-weight:900;letter-spacing:-.03em}
.woocommerce-mini-cart__buttons{display:grid;gap:10px;margin:0}
.woocommerce-mini-cart__buttons .button{display:flex;align-items:center;justify-content:center;min-height:54px;border-radius:999px;border:2px solid var(--ink);background:#fff;color:var(--ink);font-weight:800;font-size:17px;text-decoration:none;box-shadow:3px 3px 0 var(--ink);transition:transform .2s var(--ease),box-shadow .2s,background-color .2s}
.woocommerce-mini-cart__buttons .button.checkout{background:var(--neon)}
.woocommerce-mini-cart__buttons .button:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.woocommerce-mini-cart__empty-message{display:grid;place-items:center;gap:12px;text-align:center;padding:48px 10px;font-size:18px;font-weight:600;color:var(--muted)}
.woocommerce-mini-cart__empty-message::before{content:"";width:84px;height:84px;border-radius:26px;background:var(--aqua-l) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230A8A8E'%3E%3Cpath d='M6.50488 2H17.5049C17.8196 2 18.116 2.14819 18.3049 2.4L21.0049 6V21C21.0049 21.5523 20.5572 22 20.0049 22H4.00488C3.4526 22 3.00488 21.5523 3.00488 21V6L5.70488 2.4C5.89374 2.14819 6.19013 2 6.50488 2ZM19.0049 8H5.00488V20H19.0049V8ZM18.5049 6L17.0049 4H7.00488L5.50488 6H18.5049ZM9.00488 10V12C9.00488 13.6569 10.348 15 12.0049 15C13.6617 15 15.0049 13.6569 15.0049 12V10H17.0049V12C17.0049 14.7614 14.7663 17 12.0049 17C9.24346 17 7.00488 14.7614 7.00488 12V10H9.00488Z'/%3E%3C/svg%3E") center/40px no-repeat;animation:wobble 4s ease-in-out infinite}

/* Media skeleton */
.media{position:relative;display:block;overflow:hidden;background:linear-gradient(90deg,#E4EFEC 25%,#F4F9F8 50%,#E4EFEC 75%);background-size:200% 100%;animation:shimmer 1.2s linear infinite}
.media.is-loaded{animation:none;background:transparent}
.media img{opacity:0;transition:opacity .6s var(--ease),transform .7s var(--ease)}
.media.is-loaded img,.no-js .media img{opacity:1}
.hero__img.media,.bento__art .media{background:none;animation:none}

/* Page hero */
.phero{position:relative;overflow:clip;padding:clamp(28px,5vw,64px) 0 clamp(44px,6vw,80px);background:linear-gradient(180deg,var(--aqua-l),var(--paper))}
.phero__bg{position:absolute;inset:0;pointer-events:none}
.phero__bg .px{pointer-events:auto}
.phero__bg .px--1{right:12%;top:26%}.phero__bg .px--2{right:20%;top:58%}.phero__bg .px--3{right:7%;bottom:18%}.phero__bg .px--4{left:46%;top:16%}
.phero__in{position:relative}
.phero__title{font-size:var(--h-xl);letter-spacing:-.04em;line-height:1;margin-top:16px;max-width:14em}
.phero__lead{margin-top:20px;font-size:var(--t-l);color:var(--ink-2);max-width:56ch}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:22px;font-size:15px;font-weight:600;color:var(--muted)}
.crumbs a{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;border:1.5px solid var(--line-2);text-decoration:none;transition:background-color .2s,transform .3s var(--spring)}
.crumbs a:hover{background:var(--neon);transform:rotate(-8deg)}
.crumbs .ri{width:18px;height:18px}
.crumbs [aria-current]{color:var(--ink)}

/* Split blocks for content pages */
.split{display:grid;gap:clamp(28px,5vw,64px);align-items:center}
.split__media{position:relative}
.split__media .media{border-radius:var(--r-xl);border:2px solid var(--ink);box-shadow:var(--pop-l);aspect-ratio:4/3.4}
.split__media img{width:100%;height:100%;object-fit:cover}
.split__media .px--1{left:-8px;top:-8px}.split__media .px--3{right:-10px;bottom:16%}
.split__copy .h-l{margin:14px 0 20px}
.split--flip .split__media{order:-1}
.stack{display:grid;gap:clamp(56px,8vw,112px)}
.card-grid{display:grid;gap:18px}
.icard{position:relative;display:flex;flex-direction:column;border-radius:var(--r-l);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop);overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s;cursor:pointer}
.icard .media{aspect-ratio:16/10;border-bottom:2px solid var(--ink)}
.icard img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.icard__body{padding:22px 22px 26px;display:grid;gap:10px}
.icard__body h3{font-size:var(--h-s)}
.icard__body p{margin:0;color:var(--ink-2);font-size:16.5px}
.icard:hover,.icard.is-active{transform:translate(-4px,-4px);box-shadow:var(--pop-l)}
.icard:hover img,.icard.is-active img{transform:scale(1.06)}
.icard__no{position:absolute;right:14px;top:14px;z-index:2;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--neon);border:2px solid var(--ink);font-weight:900}

/* Tabs */
.tabs{display:grid;gap:22px}
.tabs__list{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:4px 4px 8px;margin:0 -4px;scroll-snap-type:x mandatory}
.tabs__list::-webkit-scrollbar{display:none}
.tabs__btn{flex:none;scroll-snap-align:start;display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;border:2px solid var(--ink);background:#fff;font-size:16px;font-weight:700;cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:background-color .25s,transform .25s var(--spring),box-shadow .25s;max-width:86vw;white-space:normal;text-align:left;line-height:1.25}
.tabs__btn .ri{width:20px;height:20px;color:var(--teal);flex:none}
.tabs__btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.tabs__btn[aria-selected=true]{background:var(--ink);color:#fff}
.tabs__btn[aria-selected=true] .ri{color:var(--neon)}
.tabs__panel{border-radius:var(--r-xl);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l);padding:clamp(24px,4vw,48px);animation:rise .5s var(--ease)}
.tabs__panel h3{font-size:var(--h-m);margin-bottom:18px;letter-spacing:-.03em}

/* Contact */
.contact{display:grid;gap:32px;align-items:start}
.contact__mail{display:flex;align-items:center;gap:16px;margin-top:26px;padding:18px 20px;border-radius:var(--r-l);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop);text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s}
.contact__mail:hover{transform:translate(-3px,-3px);box-shadow:var(--pop-l)}
.contact__mail>.ri:first-child{width:52px;height:52px;padding:12px;border-radius:16px;background:var(--neon)}
.contact__mail span{display:grid;flex:1;font-size:20px;font-weight:800;line-height:1.2}
.contact__mail small{font-size:13px;letter-spacing:.1em;color:var(--muted);font-weight:700}
.contact__mail>.ri:last-child{width:26px;height:26px;transition:transform .3s var(--spring)}
.contact__mail:hover>.ri:last-child{transform:rotate(45deg)}
.contact__media{margin-top:26px}
.contact__media .media{border-radius:var(--r-l);border:2px solid var(--ink);aspect-ratio:16/10}
.contact__media img{width:100%;height:100%;object-fit:cover}
.formcard{border-radius:var(--r-xl);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l);padding:clamp(22px,4vw,40px)}
.wpcf7 form{display:grid;gap:4px}
.wpcf7 p{margin:0 0 14px}
.wpcf7 label{display:grid;gap:8px;font-weight:700;font-size:16px}
.wpcf7-form-control-wrap{display:block}
.wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]),.wpcf7 textarea,.wpcf7 select{width:100%}
.wpcf7 textarea{min-height:150px;resize:vertical}
.wpcf7 input[type=submit]{width:100%}
.wpcf7-not-valid-tip{margin-top:6px;font-size:14.5px;font-weight:600;color:#B4351A}
.wpcf7 form .wpcf7-response-output{margin:12px 0 0;padding:14px 16px;border-radius:14px;border:2px solid var(--ink);font-weight:600}
.wpcf7 form.sent .wpcf7-response-output{background:var(--lime-l)}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output{background:#FFF1EC;border-color:#B4351A}
.wpcf7-spinner{display:none}
.wpcf7 form.submitting input[type=submit]{background-image:linear-gradient(90deg,transparent,rgb(255 255 255/.6),transparent);background-size:200% 100%;animation:shimmer 1s linear infinite}

/* Form fields (shared with WooCommerce) */
.neo input[type=text],.neo input[type=email],.neo input[type=tel],.neo input[type=number],.neo input[type=password],.neo input[type=search],.neo input[type=url],.neo textarea,.neo select{min-height:54px;padding:13px 16px;border-radius:16px;border:2px solid var(--line-2);background:#fff;color:var(--ink);font:500 17px/1.4 var(--f);box-shadow:none;transition:border-color .2s,box-shadow .2s,background-color .2s;-webkit-appearance:none;appearance:none}
.neo select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23072E30'%3E%3Cpath d='M12 13.17 16.95 8.22 18.36 9.64 12 16 5.64 9.64 7.05 8.22z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:22px;padding-right:44px}
.neo input:hover,.neo textarea:hover,.neo select:hover{border-color:var(--teal)}
.neo input:focus,.neo textarea:focus,.neo select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 4px rgb(201 244 91/.7)}
html body.neo input[type=submit],html body.neo button.button,html body.neo .button,html body.neo #place_order{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:12px 26px;border-radius:999px;border:2px solid var(--ink)!important;background:var(--neon)!important;color:var(--ink)!important;font:800 17px/1.2 var(--f);box-shadow:4px 4px 0 var(--ink)!important;cursor:pointer;text-decoration:none;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background-color .2s}
html body.neo input[type=submit]:hover,html body.neo button.button:hover,html body.neo .button:hover,html body.neo #place_order:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)!important}
html body.neo input[type=submit]:active,html body.neo button.button:active,html body.neo .button:active,html body.neo #place_order:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--ink)!important}
html body.neo button.button:disabled,html body.neo button.button[disabled]{opacity:.55;cursor:not-allowed;transform:none!important}

/* Blog */
.posts{display:grid;gap:22px}
.pcard{position:relative;display:flex;flex-direction:column;border-radius:var(--r-l);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop);overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s}
.pcard__media{display:block;aspect-ratio:16/10;border-bottom:2px solid var(--ink)}
.pcard__media .media{width:100%;height:100%}
.pcard__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.pcard__ph{display:grid;place-items:center;height:100%;background:var(--aqua-l);color:var(--teal)}
.pcard__ph .ri{width:56px;height:56px}
.pcard__body{display:grid;gap:10px;padding:20px 20px 24px;flex:1;align-content:start}
.pcard__date{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:5px 12px;border-radius:999px;background:var(--aqua-l);font-size:14px;font-weight:700;color:var(--teal-d)}
.pcard__date .ri{width:16px;height:16px}
.pcard h2,.pcard h3{font-size:var(--h-s);line-height:1.2}
.pcard h2 a,.pcard h3 a{text-decoration:none}
.pcard h2 a::after,.pcard h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.pcard p{margin:0;color:var(--ink-2);font-size:16.5px}
.pcard__more{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-weight:800;color:var(--teal-d)}
.pcard__more .ri{transition:transform .3s var(--spring)}
.pcard:hover{transform:translate(-4px,-4px);box-shadow:var(--pop-l)}
.pcard:hover img{transform:scale(1.06)}
.pcard:hover .pcard__more .ri{transform:translateX(6px)}
.pager{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:40px}
.pager .page-numbers{display:grid;place-items:center;min-width:48px;height:48px;padding:0 14px;border-radius:999px;border:2px solid var(--ink);background:#fff;font-weight:800;text-decoration:none;transition:transform .2s var(--spring),background-color .2s}
.pager .page-numbers:hover{transform:translateY(-3px);background:var(--aqua)}
.pager .current{background:var(--ink);color:var(--neon)}
.article{max-width:780px;margin-inline:auto}
.article__media{margin:0 0 36px}
.article__media .media{border-radius:var(--r-xl);border:2px solid var(--ink);box-shadow:var(--pop-l);aspect-ratio:16/9}
.article__media img{width:100%;height:100%;object-fit:cover}
.article .prose{max-width:none;font-size:clamp(1.0625rem,1rem + .3vw,1.22rem);line-height:1.75}
.article__meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.related{margin-top:clamp(56px,8vw,96px)}
.related h2{font-size:var(--h-m);margin-bottom:24px}

/* Legal */
.legal{max-width:860px;margin-inline:auto;border-radius:var(--r-xl);background:#fff;border:1.5px solid var(--line);padding:clamp(22px,5vw,56px)}
.legal .prose{max-width:none}

/* 404 */
.nf{min-height:62vh;display:grid;place-items:center;text-align:center;padding:60px 0}
.nf__code{font-size:clamp(7rem,30vw,16rem);font-weight:900;letter-spacing:-.07em;line-height:.85;background:linear-gradient(120deg,var(--teal),var(--lime));-webkit-background-clip:text;background-clip:text;color:transparent;cursor:pointer;user-select:none}
.nf__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}

/* WooCommerce */
.shop-feature{display:grid;gap:32px;align-items:center;padding:clamp(20px,4vw,44px);border-radius:var(--r-xl);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l)}
.shop-feature__media{position:relative;max-width:420px;width:100%;margin-inline:auto}
.shop-feature__media .media{border-radius:var(--r-l);border:2px solid var(--ink);aspect-ratio:1}
.shop-feature__media img{width:100%;height:100%;object-fit:cover}
.shop-feature__media .premium__price{right:-12px;top:-12px;width:96px;height:96px;font-size:24px}
.shop-feature h2{font-size:var(--h-l);letter-spacing:-.035em;margin:12px 0}
.shop-feature .price{display:block;font-size:clamp(1.8rem,1.4rem + 1.4vw,2.5rem);font-weight:900;color:var(--teal-d);margin-bottom:16px}
.shop-feature .esm-vat-label{display:inline-block;margin-left:8px;font-size:15px;font-weight:600;color:var(--muted)}
.shop-feature__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.woocommerce-notices-wrapper:empty{display:none}
.neo .woocommerce-message,.neo .woocommerce-info,.neo .woocommerce-error,.neo .woocommerce-notice{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;list-style:none;margin:0 0 22px!important;padding:16px 20px 16px 58px!important;border-radius:18px;border:2px solid var(--ink)!important;background:var(--lime-l)!important;color:var(--ink)!important;font-weight:600;box-shadow:3px 3px 0 var(--ink);animation:rise .45s var(--ease)}
.neo .woocommerce-info{background:var(--aqua-l)!important}
.neo .woocommerce-error{background:#FFF1EC!important;border-color:#B4351A!important;box-shadow:3px 3px 0 #B4351A}
.neo .woocommerce-message::before,.neo .woocommerce-info::before,.neo .woocommerce-error::before{content:"";position:absolute;left:18px;top:17px;width:26px;height:26px;border-radius:8px;background:var(--neon) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23072E30'%3E%3Cpath d='M10 15.17 19.19 5.98 20.6 7.39 10 18 3.64 11.64 5.05 10.22z'/%3E%3C/svg%3E") center/18px no-repeat;border:1.5px solid var(--ink)}
.neo .woocommerce-info::before{background-color:var(--aqua);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23072E30'%3E%3Cpath d='M11 7h2v2h-2zm0 4h2v6h-2z'/%3E%3C/svg%3E")}
.neo .woocommerce-error::before{background-color:#FFC9B8;border-color:#B4351A;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23B4351A'%3E%3Cpath d='M11 7h2v6h-2zm0 8h2v2h-2z'/%3E%3C/svg%3E")}
.neo .woocommerce-error li{margin:0;list-style:none}
.neo .woocommerce-message .button,.neo .woocommerce-info .button{order:2;margin-left:auto;min-height:44px;padding:8px 18px;font-size:15px}
.neo .woocommerce-message a:not(.button),.neo .woocommerce-info a:not(.button){font-weight:800}
.woo-wrap{padding:clamp(28px,5vw,56px) 0 clamp(56px,8vw,96px)}

/* Single product */
.single-product div.product{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;position:relative}
.single-product div.product>*{min-width:0}
.single-product .woocommerce-product-gallery{position:relative;width:100%!important;float:none!important;margin:0!important;opacity:1!important}
.single-product .woocommerce-product-gallery__wrapper{margin:0;border-radius:var(--r-xl);overflow:hidden;border:2px solid var(--ink);box-shadow:var(--pop-l);background:#fff}
.single-product .woocommerce-product-gallery__image a{display:block}
.single-product .woocommerce-product-gallery img{width:100%;height:auto;transition:transform .6s var(--ease)}
.single-product .woocommerce-product-gallery:hover img{transform:scale(1.03)}
.single-product .woocommerce-product-gallery__trigger{position:absolute;right:16px;top:16px;z-index:3;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fff;border:2px solid var(--ink);font-size:0;text-decoration:none}
.single-product .woocommerce-product-gallery__trigger::before{content:"";width:22px;height:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23072E30'%3E%3Cpath d='M18.03 16.62 22.31 20.9 20.9 22.31 16.62 18.03A9 9 0 1 1 18.03 16.62ZM16.02 15.87A7 7 0 1 0 15.87 16.02L16.02 15.87ZM10 10V7H12V10H15V12H12V15H10V12H7V10H10Z'/%3E%3C/svg%3E") center/contain no-repeat}
.single-product .summary{width:100%!important;float:none!important;margin:0!important}
.single-product .product_title{font-size:var(--h-l);letter-spacing:-.035em;line-height:1.05;margin-bottom:16px}
.single-product .summary .price{display:block;font-size:clamp(2rem,1.5rem + 1.6vw,2.8rem);font-weight:900;color:var(--teal-d);letter-spacing:-.03em;margin:0 0 18px}
.single-product .summary .price .esm-vat-label{display:inline-block;margin-left:8px;font-size:16px;font-weight:600;color:var(--muted);letter-spacing:0}
.single-product .woocommerce-product-details__short-description{font-size:var(--t);color:var(--ink-2);margin-bottom:22px}
.single-product .summary .chips{margin:0 0 22px}
.single-product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin:0 0 22px}
.single-product form.cart .single_add_to_cart_button{flex:1 1 220px;min-height:60px;font-size:18px}
.single-product .product_meta{display:none}
.esm-save-product{display:none}
.neo div.quantity{position:relative;display:inline-flex;align-items:center;border:2px solid var(--ink);border-radius:999px;background:#fff;padding:4px;box-shadow:3px 3px 0 var(--ink)}
.quantity .qty{width:52px!important;min-height:44px!important;border:0!important;padding:0!important;text-align:center;font-weight:800!important;font-size:18px!important;box-shadow:none!important;-moz-appearance:textfield;background:none!important}
.quantity .qty::-webkit-outer-spin-button,.quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty-btn{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:0;background:var(--aqua-l);cursor:pointer;transition:background-color .2s,transform .25s var(--spring)}
.qty-btn:hover{background:var(--neon);transform:scale(1.08)}
.qty-btn:active{transform:scale(.92)}
.qty-btn .ri{width:20px;height:20px}
.woocommerce-tabs{grid-column:1/-1;margin-top:12px}
.woocommerce-tabs ul.tabs{display:flex;gap:8px;overflow-x:auto;list-style:none;margin:0 0 18px!important;padding:4px!important;border:0!important}
.woocommerce-tabs ul.tabs::before,.woocommerce-tabs ul.tabs::after{display:none!important}
.woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:0!important;background:none!important}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce-tabs ul.tabs li a{display:inline-flex;padding:12px 20px!important;border-radius:999px;border:2px solid var(--ink);background:#fff;font-weight:700;text-decoration:none;box-shadow:3px 3px 0 var(--ink);transition:transform .2s var(--spring),background-color .2s}
.woocommerce-tabs ul.tabs li a:hover{transform:translate(-2px,-2px)}
.woocommerce-tabs ul.tabs li.active a{background:var(--ink);color:#fff!important}
.woocommerce-tabs .panel{border-radius:var(--r-xl);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l);padding:clamp(22px,4vw,44px)!important;margin:0!important;font-size:var(--t);color:var(--ink-2)}
.woocommerce-tabs .panel>h2:first-child{font-size:var(--h-m);margin-bottom:16px;color:var(--ink)}
.related.products,.upsells.products{grid-column:1/-1}
.single-product .onsale{display:none}

/* Cart */
.woocommerce-cart-form{position:relative}
.neo table.shop_table{width:100%;border-collapse:separate;border-spacing:0 12px;border:0!important;margin:0!important;background:none}
.neo table.shop_table thead th{padding:6px 14px;font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;border:0}
.neo table.shop_table.cart tbody tr.cart_item td{background:#fff;padding:16px 14px;border-top:2px solid var(--line);border-bottom:2px solid var(--line);vertical-align:middle;transition:background-color .25s,border-color .25s}
.neo table.shop_table.cart tbody tr.cart_item td:first-child{border-left:2px solid var(--line);border-radius:22px 0 0 22px}
.neo table.shop_table.cart tbody tr.cart_item td:last-child{border-right:2px solid var(--line);border-radius:0 22px 22px 0}
.neo table.shop_table.cart tbody tr.cart_item:hover td{border-color:var(--ink);background:#FDFFF8}
.neo table.shop_table .product-thumbnail img{width:88px!important;height:88px;object-fit:cover;border-radius:16px;border:2px solid var(--ink);transition:transform .4s var(--spring)}
.neo table.shop_table tr:hover .product-thumbnail img{transform:rotate(-4deg) scale(1.06)}
.neo table.shop_table .product-name a{font-weight:800;font-size:17px;text-decoration:none;line-height:1.3}
.neo table.shop_table .product-name a:hover{color:var(--teal-d)}
.neo table.shop_table .product-price,.neo table.shop_table .product-subtotal{font-weight:800;font-size:18px;white-space:nowrap}
.neo table.shop_table a.remove{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--paper);border:2px solid var(--line-2);color:var(--ink)!important;font-size:24px;font-weight:400;line-height:1;text-decoration:none;transition:transform .35s var(--spring),background-color .2s,border-color .2s,color .2s}
.neo table.shop_table a.remove:hover{background:#FFE2DA;border-color:#B4351A;color:#B4351A!important;transform:rotate(90deg) scale(1.08)}
.neo table.shop_table td.actions{padding:18px 4px!important;background:none!important;border:0!important}
.neo .coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.neo .coupon label{display:none}
.neo .coupon .input-text{flex:1 1 200px;min-width:0;width:auto!important}
.neo .coupon .button{min-height:54px}
.neo button[name=update_cart]{float:right;background:#fff!important}
.cart-collaterals{margin-top:20px}
.cart_totals{width:100%!important;float:none!important;border-radius:var(--r-xl);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l);padding:clamp(20px,3.5vw,34px)}
.cart_totals h2{font-size:var(--h-s);margin-bottom:8px}
.cart_totals table.shop_table{border-spacing:0}
.cart_totals table.shop_table th,.cart_totals table.shop_table td{padding:14px 0!important;border:0!important;border-bottom:1.5px dashed var(--line-2)!important;background:none!important;font-size:17px;text-align:left}
.cart_totals table.shop_table td{text-align:right}
.cart_totals .order-total th,.cart_totals .order-total td{border-bottom:0!important;font-size:20px}
.cart_totals .order-total .amount{font-size:28px;font-weight:900;letter-spacing:-.03em}
.cart_totals small.includes_tax,.neo .includes_tax{display:block;font-size:14px;font-weight:500;color:var(--muted)}
.wc-proceed-to-checkout{padding:14px 0 0!important}
.wc-proceed-to-checkout .checkout-button{width:100%;min-height:62px!important;font-size:18px!important;gap:12px}
.wc-proceed-to-checkout .checkout-button::after{content:"";width:22px;height:22px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.17 11 10.81 5.64 12.22 4.22 20 12 12.22 19.78 10.81 18.36 16.17 13H4V11z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.17 11 10.81 5.64 12.22 4.22 20 12 12.22 19.78 10.81 18.36 16.17 13H4V11z'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .3s var(--spring)}
.wc-proceed-to-checkout .checkout-button:hover::after{transform:translateX(5px)}
.cart-empty.woocommerce-info{font-size:18px}
.return-to-shop .button{margin-top:4px}
.steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.steps span{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff;border:2px solid var(--line-2);font-size:15px;font-weight:700;color:var(--muted)}
.steps span b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--line);color:var(--ink);font-size:13px}
.steps span.is-on{border-color:var(--ink);color:var(--ink);background:var(--neon)}
.steps span.is-on b{background:var(--ink);color:var(--neon)}
.steps span.is-done b{background:var(--teal);color:#fff}

/* Checkout */
.neo form.checkout{display:grid;gap:22px;align-items:start}
.neo form.checkout::before,.neo form.checkout::after{display:none}
.neo #customer_details,.neo .woocommerce-checkout-review-order{border-radius:var(--r-xl);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l);padding:clamp(20px,3.5vw,36px)}
.neo #customer_details .col-1,.neo #customer_details .col-2{width:100%!important;float:none!important;max-width:none!important;padding:0!important}
.neo #customer_details .col-2:empty{display:none}
.neo .woocommerce-billing-fields h3,.neo #order_review_heading,.neo .woocommerce-additional-fields h3{font-size:var(--h-s);margin:0 0 14px}
.neo #order_review_heading{display:none}
.neo .woocommerce-billing-fields__field-wrapper,.neo .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.neo .woocommerce-billing-fields__field-wrapper>.form-row{grid-column:1/-1;width:auto!important;float:none!important;margin:0 0 16px!important;padding:0!important}
.neo .woocommerce-billing-fields__field-wrapper>.form-row-first{grid-column:1}
.neo .woocommerce-billing-fields__field-wrapper>.form-row-last{grid-column:2}
.neo .form-row label{display:block;margin-bottom:7px;font-weight:700;font-size:15.5px;line-height:1.3}
.neo .form-row .required{color:#B4351A;text-decoration:none;border:0}
.neo .form-row .optional{font-weight:500;color:var(--muted)}
.neo .form-row input.input-text,.neo .form-row select,.neo .form-row textarea{width:100%}
.neo .form-row.woocommerce-invalid input.input-text,.neo .form-row.woocommerce-invalid select{border-color:#B4351A;background:#FFF8F5}
.neo .form-row.woocommerce-validated input.input-text{border-color:var(--teal)}
.neo .select2-container .select2-selection--single{height:54px;border-radius:16px;border:2px solid var(--line-2)}
.neo .select2-container .select2-selection--single .select2-selection__rendered{line-height:50px;padding-left:16px;font-size:17px}
.neo .select2-container .select2-selection--single .select2-selection__arrow{height:50px;right:10px}
.select2-dropdown{border:2px solid var(--ink)!important;border-radius:14px!important;overflow:hidden}
.esm-checkout-note{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;margin:0 0 20px;border-radius:16px;background:var(--aqua-l);font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.esm-checkout-note::before{content:"";flex:none;width:22px;height:22px;margin-top:1px;background:var(--teal);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22C6.48 22 2 17.52 2 12S6.48 2 12 2s10 4.48 10 10-4.48 10-10 10zm-1-11v6h2v-6h-2zm0-4v2h2V7h-2z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22C6.48 22 2 17.52 2 12S6.48 2 12 2s10 4.48 10 10-4.48 10-10 10zm-1-11v6h2v-6h-2zm0-4v2h2V7h-2z'/%3E%3C/svg%3E") center/contain no-repeat}
.neo .woocommerce-checkout-review-order-table{border-spacing:0!important}
.neo .woocommerce-checkout-review-order-table th,.neo .woocommerce-checkout-review-order-table td{padding:14px 0!important;border:0!important;border-bottom:1.5px dashed var(--line-2)!important;background:none!important;font-size:16.5px;vertical-align:top}
.neo .woocommerce-checkout-review-order-table td:last-child,.neo .woocommerce-checkout-review-order-table th:last-child{text-align:right}
.neo .woocommerce-checkout-review-order-table thead th{font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.neo .woocommerce-checkout-review-order-table .order-total th,.neo .woocommerce-checkout-review-order-table .order-total td{border-bottom:0!important;font-size:19px}
.neo .woocommerce-checkout-review-order-table .order-total .amount{font-size:26px;font-weight:900}
.neo .woocommerce-checkout-review-order-table .product-name{font-weight:700}
.neo #payment{margin-top:18px;border-radius:22px!important;background:var(--paper)!important;border:1.5px solid var(--line)}
.neo #payment ul.payment_methods{list-style:none;margin:0;padding:16px!important;border:0!important}
.neo #payment ul.payment_methods li{margin:0;padding:0;font-weight:700}
.neo #payment ul.payment_methods li label{display:inline-flex;align-items:center;gap:10px;font-size:17px;cursor:pointer}
.neo #payment ul.payment_methods li img{max-height:28px;width:auto;display:inline-block;margin:0 0 0 6px}
.neo #payment div.payment_box{margin:12px 0 0!important;padding:14px 16px!important;border-radius:14px!important;background:#fff!important;color:var(--ink-2)!important;font-size:15.5px;font-weight:500}
.neo #payment div.payment_box::before{display:none!important}
.neo #payment div.payment_box p:last-child{margin:0}
.neo #payment .place-order{padding:16px!important;margin:0!important;border-top:1.5px solid var(--line)}
.neo #place_order{width:100%;min-height:62px;font-size:18px}
.woocommerce-terms-and-conditions-wrapper{font-size:15px;line-height:1.55;margin-bottom:16px;color:var(--ink-2)}
/* Immediate-supply declaration (plugin esmartcomp-checkout-consent) sits right after the terms wrapper: same look */
.esm-consent{font-size:15px;line-height:1.55;margin:-4px 0 16px;color:var(--ink-2)}
.woocommerce-privacy-policy-text p{margin:0 0 10px}
.woocommerce-form__label-for-checkbox{display:flex!important;gap:10px;align-items:flex-start;font-weight:600!important}
.woocommerce-form__input-checkbox{width:22px;height:22px;accent-color:var(--teal);flex:none;margin-top:1px}
.woocommerce-form-coupon-toggle .woocommerce-info{margin-bottom:14px!important}
.checkout_coupon{display:flex;flex-wrap:wrap;gap:10px;padding:16px!important;border-radius:18px!important;border:2px dashed var(--line-2)!important;margin:0 0 18px!important}
.checkout_coupon p{margin:0;flex:1 1 200px}
.checkout_coupon .form-row-last{flex:0 0 auto}
.checkout_coupon .input-text{width:100%}
.woocommerce-order{display:grid;gap:26px}
/* Order received: the thank-you note with its tick, four tiles in a row, then the order and the billing address as
   cards like the checkout ones */
.neo .woocommerce-order>.woocommerce-notice{margin:0!important;font-size:18px;font-weight:700}
.neo .woocommerce-order>.woocommerce-notice::before{content:"";position:absolute;left:18px;top:50%;translate:0 -50%;width:26px;height:26px;border-radius:8px;background:var(--neon) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23072E30'%3E%3Cpath d='M10 15.17 19.19 5.98 20.6 7.39 10 18 3.64 11.64 5.05 10.22z'/%3E%3C/svg%3E") center/18px no-repeat;border:1.5px solid var(--ink)}
.neo ul.woocommerce-order-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;list-style:none;padding:0!important;margin:0!important}
.neo ul.woocommerce-order-overview::before,.neo ul.woocommerce-order-overview::after{display:none!important}
.neo ul.woocommerce-order-overview li{float:none!important;margin:0!important;padding:18px 20px!important;border-radius:20px;background:#fff;border:2px solid var(--line)!important;font-size:13px!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);line-height:1.4}
.neo ul.woocommerce-order-overview li strong{display:block;margin-top:6px;font-size:20px;letter-spacing:0;text-transform:none;color:var(--ink);overflow-wrap:anywhere}
.neo ul.woocommerce-order-overview li.total strong{color:var(--teal-d)}
.neo .woocommerce-order-details,.neo .woocommerce-customer-details{border-radius:var(--r-xl);background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l);padding:clamp(20px,3.5vw,36px);margin:0!important}
.neo .woocommerce-order-details__title,.neo .woocommerce-column__title{margin:0 0 14px!important;font-size:clamp(22px,2.4vw,28px)}
.neo table.woocommerce-table--order-details{border-spacing:0!important}
.neo table.woocommerce-table--order-details th,.neo table.woocommerce-table--order-details td{padding:14px 0!important;border:0!important;border-bottom:1.5px dashed var(--line-2)!important;background:none!important;font-size:17px;text-align:left;vertical-align:top}
.neo table.woocommerce-table--order-details thead th{padding-top:0!important;font-size:13px;color:var(--muted)}
.neo table.woocommerce-table--order-details td:last-child,.neo table.woocommerce-table--order-details th:last-child{text-align:right}
.neo table.woocommerce-table--order-details tfoot tr:last-child th,.neo table.woocommerce-table--order-details tfoot tr:last-child td{border-bottom:0!important}
.neo table.woocommerce-table--order-details .product-name{font-weight:800}
.neo table.woocommerce-table--order-details .product-name a{color:var(--ink)}
.neo table.woocommerce-table--order-details .includes_tax{display:block;font-size:13px;font-weight:600;color:var(--muted)}
.neo .woocommerce-customer-details address{margin:0;padding:18px 20px;border-radius:18px;border:1.5px solid var(--line)!important;background:var(--paper);font-style:normal;font-size:17px;line-height:1.7}
.neo .woocommerce-customer-details address p{margin:8px 0 0;padding:0!important}
.neo .woocommerce-customer-details .woocommerce-customer-details--email::before{display:none}
@media (min-width:1024px){.neo .woocommerce-order:has(.woocommerce-customer-details){grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}.neo .woocommerce-order>:not(.woocommerce-order-details):not(.woocommerce-customer-details){grid-column:1/-1}}

/* WooCommerce busy states: shimmer instead of a white veil */
.neo .blockUI.blockOverlay{background:linear-gradient(100deg,rgb(247 250 246/0) 20%,rgb(247 250 246/.85) 50%,rgb(247 250 246/0) 80%)!important;background-size:220% 100%!important;opacity:1!important;animation:shimmer 1s linear infinite;border-radius:inherit;cursor:progress!important}
.neo .blockUI.blockOverlay::before{display:none!important}
.neo .processing{position:relative}
.neo .woocommerce .loader::before,.neo .blockUI .loader{display:none!important}

/* Cookie consent banner */
.cky-consent-container{font-family:var(--f)!important}
.cky-consent-container .cky-consent-bar{border-radius:24px!important;border:2px solid var(--ink)!important;box-shadow:var(--pop-l)!important;background:#fff!important;padding:18px 20px!important}
.cky-consent-container .cky-title{font-size:18px!important;font-weight:800!important;color:var(--ink)!important;margin-bottom:6px!important}
.cky-consent-container .cky-notice-des,.cky-consent-container .cky-notice-des *{font-size:15px!important;line-height:1.5!important;color:var(--ink-2)!important}
.cky-consent-container .cky-notice-btn-wrapper{gap:8px!important}
.cky-consent-container .cky-btn{border-radius:999px!important;font-weight:700!important;font-size:15px!important;min-height:46px;margin:0!important;border-width:2px!important}
.cky-consent-container .cky-btn-accept{background:var(--neon)!important;color:var(--ink)!important;border-color:var(--ink)!important}
.cky-consent-container .cky-btn-reject,.cky-consent-container .cky-btn-customize{background:#fff!important;color:var(--ink)!important;border-color:var(--ink)!important}
.cky-btn-revisit-wrapper{display:none!important}

/* GTranslate: the header switch drives it, so its floating UI and Google's bar stay hidden */
.gt_float_switcher,.gtranslate_wrapper .gt_float_switcher,#goog-gt-tt,.goog-te-banner-frame,.skiptranslate>iframe,iframe.skiptranslate{display:none!important}
body{top:0!important}
.goog-text-highlight{background:none!important;box-shadow:none!important}
font{vertical-align:inherit!important}

/* Reveal + interaction motion */
.js [data-reveal]:not(.is-in){opacity:0}
.js [data-reveal].is-in{animation:reveal .8s var(--ease) both;animation-delay:calc(var(--i,0)*.07s)}
@keyframes reveal{from{opacity:0;translate:0 22px;filter:blur(6px)}to{opacity:1;translate:0 0;filter:blur(0)}}
.is-pop{animation:pop .55s var(--spring)}
.burst{position:fixed;z-index:130;width:10px;height:10px;border-radius:2px;pointer-events:none;animation:burst .7s var(--ease) forwards}
.ripple{position:absolute;border-radius:50%;background:rgb(255 255 255/.45);transform:scale(0);animation:ripple .6s var(--ease) forwards;pointer-events:none}
@keyframes shimmer{to{background-position:-200% 0}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes drift{0%,100%{transform:translate(0,0) rotate(0)}33%{transform:translate(6px,-10px) rotate(12deg)}66%{transform:translate(-6px,6px) rotate(-8deg)}}
@keyframes float{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(4%,-6%) scale(1.08)}}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes pop{0%{transform:scale(1)}35%{transform:scale(1.16) rotate(-4deg)}65%{transform:scale(.94) rotate(3deg)}100%{transform:scale(1)}}
@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.45)}70%{transform:scale(.9)}100%{transform:scale(1)}}
@keyframes burst{to{transform:translate(var(--dx),var(--dy)) rotate(var(--dr)) scale(.3);opacity:0}}
@keyframes ripple{to{transform:scale(4);opacity:0}}
@keyframes pxup{to{opacity:1;transform:translateY(-8px)}}
@keyframes nudge{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-6px)}}
@keyframes tap{0%,100%{transform:scale(1)}50%{transform:scale(.86)}}
@keyframes sheen{0%,60%{transform:translateX(-100%)}80%,100%{transform:translateX(100%)}}
@keyframes wobble{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg) scale(1.04)}}
@keyframes blink{0%,100%{opacity:.95;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}
@keyframes load{from{transform:scaleX(0)}to{transform:scaleX(.85)}}


/* Pillar colours: each competency keeps one colour across radar, cards and marquee */
.skill--0{--pc:#C9F45B}.skill--1{--pc:#A5F3F5}.skill--2{--pc:#9BD3FF}.skill--3{--pc:#FFD24D}.skill--4{--pc:#FFB8D9}.skill--5{--pc:#C9B8FF}.skill--6{--pc:#FFB39E}
.skill .skill__icon{background:color-mix(in srgb,var(--pc,var(--aqua)) 40%,#fff);color:var(--ink)}
.skill[aria-selected=true] .skill__icon{background:var(--pc,var(--ink));color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.skill[aria-selected=true]{background:linear-gradient(90deg,color-mix(in srgb,var(--pc,#fff) 22%,#fff),#fff 60%)}

/* Mobile buy bar */
.buybar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:70;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 7px 7px 18px;border-radius:999px;background:var(--ink);color:#fff;border:2px solid var(--ink);box-shadow:0 16px 40px -10px rgb(4 40 42/.55);transform:translateY(160%);transition:transform .5s var(--spring)}
.buybar.is-on{transform:none}
.drawer-open .buybar,.menu-open .buybar{transform:translateY(160%)}
.buybar__info{display:grid;line-height:1.15}
.buybar__info b{font-size:13px;letter-spacing:.08em;color:var(--neon)}
.buybar__info span{font-size:19px;font-weight:900;letter-spacing:-.02em}
.buybar .btn{box-shadow:none;border-color:var(--neon)}
@media (min-width:1024px){.buybar{display:none}}
@media (max-width:1023px){.ftr{padding-bottom:84px}}

/* Small helpers */
.section--tight{padding-top:clamp(28px,4vw,48px)}
.media--contain{background:none;animation:none}
.split__media .media--contain{border:0;box-shadow:none;aspect-ratio:auto}
.split__media .media--contain img{object-fit:contain;height:auto}
.crumbs a.crumbs__text{display:inline;width:auto;height:auto;border:0;background:none;border-radius:0;text-decoration:underline;text-decoration-color:var(--line-2)}
.crumbs a.crumbs__text:hover{transform:none;background:none;color:var(--teal-d)}
.phero--compact{padding-bottom:clamp(20px,3vw,32px)}
.phero--compact .phero__title{font-size:var(--h-l)}
.phero--post .phero__title{font-size:var(--h-l);max-width:20em}
.phero__lead .steps{margin-top:4px}
.neo-fallback [data-reveal]{opacity:1!important;transform:none!important;filter:none!important}
.contact__media .premium__card{aspect-ratio:auto}
.contact__media .premium__card .media{aspect-ratio:4/3}
.contact__media{perspective:900px;margin-top:0}


/* Visual QA round 1 */
.sticker .radar--mini{width:112px}
.hdr__platform{white-space:nowrap}
.cartbtn,.burger{touch-action:manipulation}
body .cky-consent-container.cky-classic-bottom{box-sizing:border-box;left:24px!important;right:auto!important;bottom:24px!important;width:min(560px,calc(100% - 48px))!important;max-width:none!important;border-radius:24px;font-family:var(--f)!important}
body .cky-consent-container.cky-classic-bottom *{box-sizing:border-box}
body .cky-classic-bottom .cky-consent-bar{padding:18px 20px!important;border-radius:24px!important}
body .cky-classic-bottom .cky-notice-group{display:block!important}
body .cky-classic-bottom .cky-notice-des{max-height:120px;overflow-y:auto;padding-right:6px;margin-bottom:14px!important;-webkit-mask-image:linear-gradient(180deg,#000 75%,transparent);mask-image:linear-gradient(180deg,#000 75%,transparent)}
body .cky-classic-bottom .cky-notice-des p{margin:0 0 6px!important}
body .cky-classic-bottom .cky-notice-btn-wrapper{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;margin:0!important;padding:0!important}
body .cky-classic-bottom .cky-btn{width:100%!important;min-height:44px;padding:8px 12px!important;white-space:nowrap}
body .cky-classic-bottom .cky-btn-accept{grid-column:1/-1;order:-1}
@media (min-width:1024px){
 .hero__cta .btn{flex:0 0 auto}
}
@media (max-width:719px){
 body .cky-consent-container.cky-classic-bottom{left:10px!important;bottom:10px!important;width:calc(100% - 20px)!important}
 body .cky-classic-bottom .cky-consent-bar{padding:14px 14px 12px!important}
 body .cky-classic-bottom .cky-title{font-size:16px!important;margin-bottom:4px!important}
 body .cky-classic-bottom .cky-notice-des{max-height:84px}
 body .cky-classic-bottom .cky-notice-des,body .cky-classic-bottom .cky-notice-des *{font-size:14px!important}
 body .cky-classic-bottom .cky-btn{min-height:42px;font-size:14px!important}
}
@media (max-width:430px){
 .hdr__bar{gap:6px;padding:0 6px 0 10px;height:58px}
 .logo{gap:6px}
 .logo__mark{height:32px}
 .logo__word{font-size:18.5px}
 .logo__px{left:22px}
 .lang button{min-width:32px;padding:6px 7px;font-size:13px}
 .cartbtn,.burger{width:42px;height:42px}
 .cartbtn .ri{width:20px;height:20px}
 .burger span{width:18px}
 .burger span:nth-child(2){width:12px}
}


/* Radar labels: names on wide screens, numbers on phones */
.radar__label{font-size:19px}
.radar__num{display:none;font-family:var(--f);font-size:30px;font-weight:900;fill:var(--muted);transition:fill .3s}
.radar__num.is-on{fill:var(--teal)}
@media (max-width:1023px){
 .seven .radar{max-width:380px;margin-inline:auto}
 .seven .radar__label{display:none}
 .seven .radar__num{display:block}
}


/* Visual QA round 2 */
.prose[data-highlight] b,.prose[data-highlight] strong{background-position:0 100%;background-size:0% .22em;background-image:linear-gradient(var(--neon),var(--neon))}
.prose[data-highlight].is-in b,.prose[data-highlight].is-in strong{background-size:100% .22em}
.hero__title,.phero__title{padding-left:.05em}
.split{align-items:start}
.split__media .media--contain{max-height:520px}
.split__media .media--contain img{max-height:520px;width:auto;margin-inline:auto}
.tabs__panel{display:grid;gap:28px;align-items:center}
.tabs__art{position:relative;display:none;place-items:center;aspect-ratio:1;border-radius:36px;background:var(--aqua-l);border:2px solid var(--ink);box-shadow:var(--pop);cursor:pointer}
.tabs__art>.ri{width:44%;height:44%;color:var(--teal);animation:float 9s ease-in-out infinite}
.tabs__art .px--1{left:14%;top:14%}.tabs__art .px--2{right:16%;top:22%}.tabs__art .px--3{right:20%;bottom:14%}
@media (min-width:1024px){
 .split__media{position:sticky;top:112px}
 .tabs__panel{grid-template-columns:1fr 280px;gap:48px}
 .tabs__art{display:grid}
}
@media (max-width:719px){
 .phero__bg .px--2,.phero__bg .px--4{display:none}
 .phero__bg .px--1{right:18px;top:20px}
 .phero__bg .px--3{right:40px;top:14px;bottom:auto}
 .crumbs{margin-bottom:16px}
}


/* Visual QA round 3 — WooCommerce screens */
.hdr .logo .logo__mark,.ftr .logo .logo__mark{height:40px!important;width:auto!important;max-width:none!important;margin:0!important}
.quantity:has(input[type=hidden]),.quantity.hidden{display:none!important}
.single-product .summary p.price,.single-product .summary span.price{color:var(--teal-d)!important;font-size:clamp(2rem,1.5rem + 1.6vw,2.8rem)!important;font-weight:900!important}
.single-product .summary .price .amount,.single-product .summary .price bdi{color:inherit!important}
.shop-feature__media .premium__card{display:block}
.prose video,.woocommerce-Tabs-panel video,.wp-video video{width:100%!important;height:auto!important;border-radius:var(--r-l);border:2px solid var(--ink);background:#000}
.wp-video{width:100%!important;max-width:100%!important;margin:1.4em 0}
@media (max-width:430px){.hdr .logo .logo__mark{height:32px!important}}


/* Visual QA round 4 — cart & checkout */
.neo table.shop_table.cart td.product-name{min-width:220px}
.neo table.shop_table.cart td.product-thumbnail{width:112px}
.neo table.shop_table .product-thumbnail img{max-width:none!important}
.neo table.shop_table .product-thumbnail a{display:block;width:88px}
.esm-cart-quantity-value{display:inline-grid;place-items:center;min-width:46px;height:46px;padding:0 12px;border-radius:999px;border:2px solid var(--ink);background:var(--aqua-l);font-weight:800;font-size:17px;font-variant-numeric:tabular-nums;box-shadow:2px 2px 0 var(--ink)}
.neo .coupon{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;float:none!important;width:100%}
.neo .coupon .input-text,.neo .coupon #coupon_code{flex:none!important;width:100%!important;height:54px!important;min-height:54px!important;margin:0!important;float:none!important}
.neo .coupon .button{margin:0!important;float:none!important;white-space:nowrap}
.neo button[name=update_cart]{background:#fff!important}
.neo .includes_tax .amount,.neo .includes_tax bdi{font-size:inherit!important;font-weight:700!important;letter-spacing:0!important}
.cart_totals .includes_tax,.neo .woocommerce-checkout-review-order-table .includes_tax{display:block;margin-top:4px;font-size:14px!important;color:var(--muted)}
.woocommerce-mini-cart__buttons .button:not(.checkout){background:#fff!important}
.woocommerce-mini-cart-item .quantity{display:block;background:none;border:0;box-shadow:none;padding:0}
.neo #billing_country_field:has(input[type=hidden]){display:none!important}
.neo .woocommerce-billing-fields__field-wrapper{grid-auto-flow:row dense}
.neo #billing_state_field{order:1}
.neo #billing_email_field{order:2}
@media (max-width:719px){
 .neo .coupon{grid-template-columns:1fr}
 .neo .coupon .button{width:100%}
 .neo table.shop_table.cart td.product-name{min-width:0}
 .neo table.shop_table.cart td.product-thumbnail{width:auto}
}


/* Visual QA round 5 */
html body.neo .button,html body.neo button.button,html body.neo #place_order{border-radius:999px!important;gap:12px}
html body.neo .wc-proceed-to-checkout a.checkout-button{display:flex!important;width:100%}
.esm-cart-fixed-quantities button[name=update_cart]{display:none!important}
@media (max-width:719px){
 html body.neo .coupon .button{width:100%!important;float:none!important;white-space:normal}
 .neo table.shop_table.cart tbody tr.cart_item td.product-name{padding-right:48px!important}
 html body.neo #place_order{font-size:17px}
}


/* Icon motion: arrows turn, other icons hop */
.btn:hover .btn__icon{transform:translateY(-2px) rotate(-10deg) scale(1.08)}
.btn:hover .btn__icon--arrow{transform:rotate(-45deg) scale(1.06)}
.drawer__empty-cta{display:flex;justify-content:center;margin-top:8px}


.prose li>*:first-child{margin-top:0}
.prose li>p,.prose li>h3,.prose li>h4{margin-bottom:.4em}
@media (min-width:1024px){.premium__price{right:-46px;top:-44px}}


/* No sideways scrolling anywhere */
html{overflow-x:clip}
.hero__ring{inset:2% 3% 8%}
.prose,.prose a{overflow-wrap:anywhere}


@media (min-width:720px) and (max-width:1023px){.buybar{left:50%;right:auto;width:560px;margin-left:-280px}}

/* ===== Round 6: shapes, 3D hero, fireworks, ribbon, report, cards, FAQ, footer, language ===== */
[hidden]{display:none!important}
.neo-fallback [data-reveal]{animation:none!important}

/* Floating shapes */
.c-lime{--c:#C9F45B}.c-teal{--c:#0A8A8E}.c-aqua{--c:#7FE7EA}.c-sun{--c:#FFC24B}.c-pink{--c:#FF8FCB}.c-violet{--c:#8B7CF0}.c-coral{--c:#FF7E5F}
.shapes{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.section>.wrap,.statement>.wrap,.hero>.wrap,.phero>.wrap,.woo-wrap>.wrap{position:relative;z-index:1}
.ctaband__title,.ctaband__actions{position:relative;z-index:1}
.sh{position:absolute;left:var(--x);top:var(--y);display:block;width:var(--s);height:var(--s);pointer-events:auto;cursor:pointer;--c:var(--neon);animation:sh-float var(--t,10s) ease-in-out var(--d,0s) infinite;-webkit-tap-highlight-color:transparent}
.sh--sq{border-radius:5px;background:var(--c);box-shadow:3px 3px 0 var(--ink)}
.sh--dot{border-radius:50%;background:var(--c)}
.sh--ring{border-radius:50%;border:3px solid var(--c)}
.sh--plus::before,.sh--plus::after{content:"";position:absolute;background:var(--c);border-radius:3px}
.sh--plus::before{left:0;right:0;top:36%;bottom:36%}
.sh--plus::after{top:0;bottom:0;left:36%;right:36%}
.sh--star{background:var(--c);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
.sh--tri{background:var(--c);clip-path:polygon(50% 4%,100% 96%,0 96%)}
.sh--half{height:calc(var(--s) / 2);border-radius:var(--s) var(--s) 0 0;background:var(--c)}
.sh--squig{height:calc(var(--s) / 3);background:var(--c);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 20'%3E%3Cpath d='M3 10c6.5-8 11-8 17.5 0s11 8 17.5 0 11-8 17.5 0' fill='none' stroke='%23000' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 20'%3E%3Cpath d='M3 10c6.5-8 11-8 17.5 0s11 8 17.5 0 11-8 17.5 0' fill='none' stroke='%23000' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.why .sh--sq,.ftr .sh--sq{box-shadow:3px 3px 0 rgb(0 0 0/.35)}
.sh.is-pop{animation:sh-float var(--t,10s) ease-in-out var(--d,0s) infinite,sh-pop .5s var(--spring)}
@keyframes sh-float{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}25%{transform:translate3d(7px,-12px,0) rotate(20deg)}50%{transform:translate3d(-3px,-22px,0) rotate(-10deg)}75%{transform:translate3d(-9px,-9px,0) rotate(14deg)}}
@keyframes sh-pop{0%{scale:1}40%{scale:1.9}100%{scale:1}}

/* Hero: a complete shape behind the cut-out photo, in real 3D layers */
.hero__art{position:relative;width:100%;max-width:540px;margin-inline:auto;aspect-ratio:1/1.08;perspective:1100px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.hero__stage{position:absolute;inset:0;display:block;transform-style:preserve-3d;transition:transform .7s var(--ease);will-change:transform}
.hero__glow{position:absolute;left:12%;top:6%;width:76%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgb(201 244 91/.55),rgb(165 243 245/.32) 45%,transparent 70%);filter:blur(18px);transform:translateZ(-150px) scale(1.18);pointer-events:none}
.hero__ghost{position:absolute;left:11%;top:2%;width:78%;aspect-ratio:1;transform:translateZ(-90px);pointer-events:none}
.hero__ghost>i{position:absolute;inset:0;border-radius:30%;border:2.5px dashed rgb(10 138 142/.5);rotate:45deg;animation:ghost-spin 60s linear infinite}
.hero__diamond{position:absolute;left:18%;top:9%;width:64%;aspect-ratio:1;transform:translateZ(0);pointer-events:none}
.hero__diamond>i{position:absolute;inset:0;border-radius:26%;rotate:45deg;background:linear-gradient(135deg,#1FC6C2 0%,#0A9A9A 45%,#06787B 100%);box-shadow:inset 4px 4px 0 rgb(255 255 255/.2),10px 10px 0 var(--ink);animation:morph 13s ease-in-out infinite}
.hero__diamond>i::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(55% 55% at 28% 28%,rgb(255 255 255/.3),transparent 62%),radial-gradient(42% 42% at 78% 78%,rgb(201 244 91/.38),transparent 70%)}
.hero__ring{position:absolute;inset:auto;left:4%;top:3%;width:92%;aspect-ratio:1;border-radius:50%;border:2px dashed rgb(10 138 142/.42);transform:translateZ(30px);animation:ring-spin 46s linear infinite;pointer-events:none}
.hero__ring::before{content:"";position:absolute;top:9%;left:13%;width:16px;height:16px;border-radius:50%;background:var(--neon);border:2px solid var(--ink)}
.hero__girl{position:absolute;left:10%;bottom:0;width:78%;height:auto;max-width:none;transform:translateZ(64px);filter:drop-shadow(0 26px 22px rgb(4 40 42/.3));pointer-events:none;user-select:none;-webkit-user-drag:none}
.hz{position:absolute;transform:translateZ(var(--z,60px));pointer-events:none}
.hz .sh{position:relative;left:auto;top:auto}
.hz--1{left:3%;top:20%;--z:150px}.hz--1 .sh{--s:26px}
.hz--2{right:9%;top:31%;--z:-50px}.hz--2 .sh{--s:34px}
.hz--3{left:12%;bottom:26%;--z:100px}.hz--3 .sh{--s:22px}
.hz--4{right:30%;bottom:3%;--z:170px}.hz--4 .sh{--s:16px}
.hz--5{left:46%;top:1%;--z:40px}.hz--5 .sh{--s:14px}
.hz--6{right:2%;top:60%;--z:130px}.hz--6 .sh{--s:20px}
.hero__stage .sticker{transform:translateZ(115px) rotate(var(--rot,0deg))}
.hero__stage .sticker--count{--rot:-7deg;left:-3%;top:44%}
.hero__stage .sticker--skills{--rot:5deg;right:-2%;bottom:9%}
.hero__stage .sticker--radar{--rot:4deg;right:0;top:0}
.hero__stage.is-bounce{animation:stage-bounce .6s var(--spring)}
.hero__art .hint{bottom:-10px;z-index:7}
@keyframes morph{0%,100%{border-radius:26%;rotate:45deg;scale:1}33%{border-radius:32% 20% 30% 22%;rotate:49deg;scale:1.02}66%{border-radius:20% 30% 22% 32%;rotate:41deg;scale:.99}}
@keyframes ghost-spin{from{rotate:45deg}to{rotate:405deg}}
@keyframes ring-spin{to{rotate:360deg}}
@keyframes stage-sway{0%,100%{transform:rotateY(-8deg) rotateX(4deg)}50%{transform:rotateY(8deg) rotateX(-3deg)}}
@keyframes stage-bounce{0%{scale:1}35%{scale:1.05}100%{scale:1}}
@media (hover:none){
 .hero__stage{animation:stage-sway 9s ease-in-out infinite}
 .hero__stage.is-bounce{animation:stage-sway 9s ease-in-out infinite,stage-bounce .6s var(--spring)}
}

/* Fireworks canvas */
.fx{position:fixed;inset:0;width:100vw;height:100vh;z-index:150;pointer-events:none}

/* Ribbon: drag or flick it */
.marquee{touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.marquee.is-dragging{cursor:grabbing}
.marquee.is-live .marquee__track{animation:none;will-change:transform}
.marquee__item{transition:transform .3s var(--spring)}
.marquee__item:hover{transform:translateY(-3px) rotate(-2deg)}
.marquee__item.is-pop{animation:pop .5s var(--spring)}

/* Statement with the sample report */
.statement{position:relative;overflow:clip}
.statement__grid{display:grid;gap:clamp(36px,6vw,72px);align-items:center}
.report{position:relative;display:grid;gap:16px;width:100%;max-width:440px;margin-inline:auto;padding:22px 22px 26px;border-radius:30px;background:#fff;border:2px solid var(--ink);box-shadow:var(--pop-l);rotate:2deg;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:rotate .5s var(--spring),transform .4s var(--ease),box-shadow .3s}
.report:hover{rotate:0deg;transform:translateY(-5px);box-shadow:10px 12px 0 var(--ink)}
.js .report.is-in.is-pop{animation:pop .55s var(--spring)}
.report__head{display:flex;align-items:center;gap:10px}
.report__logo{width:34px;height:34px;object-fit:contain}
.report__name{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:18px;color:var(--blue)}
.report__pill{margin-left:auto;padding:5px 12px;border-radius:999px;background:var(--ink);color:var(--neon);font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.report__bars{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.report__bars li{display:grid;grid-template-columns:minmax(0,9.6em) minmax(0,1fr);align-items:center;gap:12px}
.report__label{font-size:14.5px;font-weight:700;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.report__track{height:13px;border-radius:999px;background:#EEF5F3;border:1.5px solid rgb(7 46 48/.14);overflow:hidden}
.report__fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--pc,var(--teal)) 55%,var(--teal)),var(--pc,var(--teal)));transform-origin:left;transform:scaleX(var(--v,.7));transition:transform 1.1s var(--spring)}
.js .report:not(.is-in) .report__fill{transform:scaleX(0)}
.report__tips{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;background:var(--lime-l)}
.report__tip-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:var(--neon);border:1.5px solid var(--ink)}
.report__tip-icon .ri{width:22px;height:22px}
.report__lines{flex:1;display:grid;gap:7px}
.report__lines i{display:block;height:9px;border-radius:6px;background:linear-gradient(90deg,#D6E8C4 25%,#F0F8E4 50%,#D6E8C4 75%);background-size:200% 100%;animation:shimmer 1.6s linear infinite}
.report__lines i:nth-child(2){width:82%}.report__lines i:nth-child(3){width:58%}
.report__chips{display:flex;flex-wrap:wrap;gap:8px}
.report__chips span{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1.5px solid var(--ink);background:#fff;font-size:14px;font-weight:700}
.report__chips .ri{width:16px;height:16px;color:var(--teal)}
.report__tap{position:absolute;right:-14px;bottom:-14px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--neon);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);animation:tap 2.2s ease-in-out infinite}
.report__tap .ri{width:20px;height:20px}
@media (min-width:1024px){.statement__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}}

/* Audience cards: the whole card reacts, no arrow */
.acard{transform-style:preserve-3d;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.acard:hover,.acard.is-active{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translate(-4px,-4px);box-shadow:var(--pop-l)}
.acard__body{position:relative;isolation:isolate;flex:1}
.acard__body::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--acc);transform:scaleY(0);transform-origin:bottom;transition:transform .55s var(--ease)}
.acard:hover .acard__body::before,.acard.is-active .acard__body::before{transform:scaleY(1)}
.acard__media::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(115deg,transparent 30%,rgb(255 255 255/.5) 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--ease);pointer-events:none}
.acard:hover .acard__media::after,.acard.is-active .acard__media::after{transform:translateX(120%)}
.acard__icon .ri{transition:transform .7s var(--spring)}
.acard:hover .acard__icon .ri,.acard.is-active .acard__icon .ri{transform:rotateY(360deg) scale(1.15)}
.acard:hover .acard__media img,.acard.is-active .acard__media img{transform:scale(1.08) rotate(-1deg)}
.acard__tag{transition:color .3s}

/* Services tabs: one panel at a time */
.tabs__panel:not([hidden]){animation:tab-in .5s var(--ease)}
@keyframes tab-in{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}

/* Product tabs: FAQ accordion and methodology cards */
.faq{display:grid;gap:12px}
.faq__item{border-radius:22px;background:#fff;border:2px solid var(--line);transition:border-color .25s,box-shadow .3s,transform .3s var(--ease)}
.faq__item:hover{border-color:var(--line-2);transform:translateY(-1px)}
.faq__item.is-open{border-color:var(--ink);box-shadow:var(--pop)}
.faq__q{margin:0;font-size:inherit;line-height:inherit}
.faq__q button{display:flex;align-items:center;gap:14px;width:100%;padding:15px 16px;border:0;border-radius:20px;background:none;text-align:left;font:700 clamp(1.02rem,.98rem + .3vw,1.15rem)/1.35 var(--f);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent}
.faq__no{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:13px;background:var(--aqua-l);font-size:14px;font-weight:800;color:var(--teal-d);transition:background-color .25s,color .25s,transform .45s var(--spring)}
.faq__item.is-open .faq__no{background:var(--neon);color:var(--ink);transform:rotate(-8deg)}
.faq__text{flex:1}
.faq__icon{position:relative;flex:none;width:34px;height:34px;border-radius:50%;border:2px solid var(--ink);transition:transform .45s var(--spring),background-color .25s}
.faq__icon::before,.faq__icon::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2.5px;margin:-1.25px 0 0 -6px;border-radius:2px;background:var(--ink);transition:transform .35s var(--ease)}
.faq__icon::after{transform:rotate(90deg)}
.faq__q button:hover .faq__icon{background:var(--aqua-l)}
.faq__item.is-open .faq__icon{background:var(--neon);transform:rotate(180deg)}
.faq__item.is-open .faq__icon::after{transform:rotate(0deg)}
.faq__a{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .45s var(--ease),visibility 0s .45s}
.faq__item.is-open .faq__a{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .45s var(--ease),visibility 0s}
.faq__inner{overflow:hidden;min-height:0}
.faq__inner .prose{max-width:none;padding:0 20px 20px 70px;font-size:16.5px}
.no-js .faq__a{grid-template-rows:1fr;visibility:visible}
.prose ul.faq__chips{display:flex;flex-wrap:wrap;gap:8px}
.prose ul.faq__chips li{padding:6px 14px;border-radius:999px;background:var(--aqua-l);font-weight:700;font-size:15px}
.prose ul.faq__chips li::before{display:none}
.tcards{display:grid;gap:18px}
.tcard{position:relative;padding:24px;border-radius:24px;background:var(--paper);border:2px solid var(--line);transition:border-color .25s,transform .3s var(--ease),box-shadow .3s}
.tcard:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:var(--pop)}
.tcard__icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:14px;border-radius:16px;background:var(--neon);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer}
.tcard__icon .ri{width:26px;height:26px}
.tcard h3{font-size:var(--h-s);margin-bottom:10px}
.woocommerce-tabs .panel .faq,.woocommerce-tabs .panel .tcards{margin-top:2px}
@media (min-width:720px){.tcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:719px){.faq__inner .prose{padding:0 16px 18px}.faq__q button{padding:13px 12px;gap:10px}.faq__no{width:34px;height:34px}}

/* Checkout: notices span the form, the two columns never shift */
.neo form.checkout{grid-template-columns:minmax(0,1fr)}
.neo form.checkout>.woocommerce-NoticeGroup,.neo form.checkout>.woocommerce-notices-wrapper{grid-column:1/-1}
/* WooCommerce's order attribution element holds only hidden inputs; as a block it took the cell next to the billing
   details and pushed the order column a row down (its inputs are still sent while hidden) */
.neo form.checkout>wc-order-attribution-inputs{display:none}
.woocommerce-NoticeGroup-checkout .woocommerce-error{margin:0!important}
.woocommerce-NoticeGroup-checkout.is-pop{animation:shake .45s var(--ease)}
.neo .woocommerce-invalid .woocommerce-form__label-for-checkbox,.neo .woocommerce-invalid .woocommerce-form__label-for-checkbox a{color:#B4351A!important}
.neo .esm-consent.woocommerce-invalid,.neo .woocommerce-terms-and-conditions-wrapper .woocommerce-invalid{padding:10px 12px;border-radius:14px;background:#FFF4F0;outline:2px solid #F3B3A3;animation:shake .45s var(--ease)}
.neo .checkout-inline-error-message{display:flex;align-items:center;gap:6px;margin:6px 0 0;font-size:14px;font-weight:600;color:#B4351A}
.neo .checkout-inline-error-message::before{content:"!";display:grid;place-items:center;flex:none;width:18px;height:18px;border-radius:50%;background:#B4351A;color:#fff;font-size:12px;font-weight:800}
@keyframes shake{0%,100%{translate:0 0}20%{translate:-6px 0}40%{translate:5px 0}60%{translate:-3px 0}80%{translate:2px 0}}
/* Two columns only where both fit: the order column is a little wider, so its terms and declaration wrap less */
@media (min-width:1200px){
 .neo form.checkout{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);align-items:stretch}
 .neo form.checkout>#customer_details{grid-column:1}
 .neo form.checkout>#order_review{grid-column:2}
 .neo .woocommerce-checkout-review-order-table .includes_tax{white-space:nowrap}
}
.neo #payment .woocommerce-terms-and-conditions-checkbox-text{line-height:1.5}
.neo #payment .woocommerce-terms-and-conditions-wrapper .form-row,.neo #payment .esm-consent{margin-bottom:12px}

/* Header: logo, centred navigation, cart and the main call to action */
@media (min-width:1024px){
 .hdr .nav{margin-inline:auto}
 .hdr .hdr__actions{margin-left:0}
 .hdr .nav__link{font-size:16px;padding:10px 15px}
 .ftr__bottom{padding-right:190px}
}

/* Footer: moving wave, rising pixels, rocket back to top */
.ftr{padding-top:clamp(84px,9vw,120px)}
.ftr__wave{position:absolute;left:0;right:0;top:-1px;height:64px;overflow:hidden;pointer-events:none}
.ftr__wave svg{display:block;width:200%;height:100%;max-width:none;animation:wave 16s linear infinite}
.ftr__wave-front{fill:var(--paper)}
.ftr__wave-back{fill:var(--teal);opacity:.75}
.ftr__wave svg .ftr__wave-back{animation:none}
@keyframes wave{to{transform:translateX(-50%)}}
.ftr__bubbles{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ftr__bubble{position:absolute;left:var(--x);bottom:-30px;width:var(--s);height:var(--s);border-radius:4px;background:var(--neon);opacity:0;animation:bubble-up var(--t) linear var(--d) infinite}
.ftr__bubble--1{border-radius:50%;background:var(--aqua)}
.ftr__bubble--2{border-radius:50%;background:transparent;border:2px solid var(--neon)}
.ftr__bubble--3{background:var(--teal)}
@keyframes bubble-up{0%{transform:translateY(0) rotate(0);opacity:0}12%{opacity:.75}80%{opacity:.45}100%{transform:translateY(-560px) rotate(220deg);opacity:0}}
.ftr>.wrap{position:relative;z-index:1}
.ftr__giant{display:none}
.ftr__bottom{padding-bottom:28px}

/* Footer: card and 3-D Secure marks (epay manual, section 8). Official files on white tiles, never recoloured or animated */
.ftr__pay{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;margin-top:44px;padding:22px 0;border-top:1px solid rgb(255 255 255/.12)}
.ftr__pay+.ftr__bottom{margin-top:0}
.ftr__pay-label{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:15px;font-weight:600;line-height:1.4;color:#CFE5E2}
.ftr__pay-label .ri{flex:none;width:22px;height:22px;color:var(--neon)}
.paymarks{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.paymarks__group{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.paymarks__group+.paymarks__group{padding-left:18px;border-left:1px solid rgb(255 255 255/.16)}
.paymark{display:grid;place-items:center;height:44px;padding:0 10px;border-radius:10px;background:#fff}
.paymark img{display:block;width:auto;height:var(--h,24px);max-width:none}
/* Footer: business details (same wording as section 1 of the terms) above the copyright */
.ftr__legal{display:grid;gap:6px}
.ftr__company{display:flex;flex-wrap:wrap;margin:0;font-size:14px;line-height:1.6;color:#9FC9C6}
.ftr__company span:not(:last-child)::after{content:"|";margin:0 8px;color:rgb(255 255 255/.35)}
.ftr__company a{color:inherit;text-decoration:none}
.ftr__company a:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--neon)}
@media (max-width:719px){
 .ftr__pay{flex-direction:column;align-items:flex-start}
 .paymarks__group+.paymarks__group{padding-left:0;border-left:0}
}
.totop{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;border:2px solid var(--neon);background:var(--neon);color:var(--ink);box-shadow:4px 4px 0 rgb(0 0 0/.4);cursor:pointer;transition:transform .3s var(--spring),box-shadow .3s}
.totop .ri{width:26px;height:26px;transition:transform .4s var(--spring)}
.totop:hover{transform:translateY(-4px)}
.totop:hover .ri{transform:translateY(-3px)}
.totop.is-launch .ri{animation:launch .9s var(--ease)}
@keyframes launch{0%{transform:none}40%{transform:translateY(-34px);opacity:0}41%{transform:translateY(30px);opacity:0}100%{transform:none;opacity:1}}

/* Language switch floats bottom-right, as before */
.langfab{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:76;padding:4px;border:2px solid var(--ink);background:rgb(255 255 255/.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:4px 4px 0 var(--ink);transition:bottom .45s var(--spring),opacity .3s,transform .3s var(--spring)}
.langfab:hover{transform:translateY(-2px)}
.langfab button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 12px 7px 8px;font-size:14px;color:var(--ink-2)}
.langfab img{width:22px;height:22px;border-radius:50%;object-fit:cover;border:1.5px solid rgb(7 46 48/.2)}
.has-buybar .langfab{bottom:calc(92px + env(safe-area-inset-bottom,0px))}
.menu-open .langfab,.drawer-open .langfab{opacity:0;pointer-events:none}
.langfab .lang__thumb{top:4px;bottom:4px;left:4px;width:calc(50% - 4px)}
@media (min-width:1024px){.has-buybar .langfab{bottom:calc(18px + env(safe-area-inset-bottom,0px))}}

@media (max-width:719px){
 .sh--desk{display:none}
 .sh{width:calc(var(--s) * .8);height:calc(var(--s) * .8)}
 .sh--half{height:calc(var(--s) * .4)}
 .sh--squig{height:calc(var(--s) * .27)}
 .hero__art{max-width:420px}
 .hero__girl{transform:translateZ(28px)}
 .hero__stage .sticker{transform:translateZ(84px) rotate(var(--rot,0deg))}
 .hero__stage .sticker--count{left:0;top:50%}
 .hero__stage .sticker--skills{right:6%;bottom:7%}
 .hero__stage .sticker--radar{right:6%;top:2%;padding:8px 10px 10px}
 .hero__stage .sticker--count{left:3%}
 .hero__stage .sticker b{font-size:26px}
 .sticker .radar--mini{width:64px}
 .sticker--radar strong{font-size:18px}
 .hz--1{left:1%}.hz--6{right:1%}
 .report{rotate:1deg}
 .report__bars li{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:10px}
 .report__label{font-size:14px;white-space:normal;line-height:1.2}
 .langfab{right:12px}
 .langfab button{padding:7px 9px;gap:0}
 .langfab button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .langfab img{width:26px;height:26px}
}

/* Ribbon pause control */
.marquee::after{content:"";position:absolute;right:0;top:0;bottom:0;z-index:2;width:120px;background:linear-gradient(90deg,rgb(201 244 91/0),var(--neon) 62%);pointer-events:none}
.marquee__pause{position:absolute;right:30px;top:50%;z-index:3;display:grid;place-items:center;width:42px;height:42px;margin-top:-21px;border-radius:50%;border:2px solid var(--ink);background:var(--ink);color:var(--neon);box-shadow:3px 3px 0 var(--teal);cursor:pointer;transition:transform .25s var(--spring),background-color .2s,color .2s}
.marquee__pause:hover{transform:scale(1.08)}
.marquee__pause .ri{width:20px;height:20px}
.marquee__pause .is-play,.marquee__pause[aria-pressed=true] .is-pause{display:none}
.marquee__pause[aria-pressed=true] .is-play{display:block}
.marquee__pause[aria-pressed=true]{background:var(--neon);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}

/* Product tabs wrap instead of hiding the last one off-screen */
html body.neo .woocommerce-tabs ul.tabs{display:flex!important;flex-wrap:wrap;gap:10px;overflow:visible!important;padding:4px 0 6px!important;margin:0 0 18px!important}
html body.neo .woocommerce-tabs ul.tabs li a{white-space:nowrap}

/* Additional services on the product page */
.extras{position:relative;display:grid;gap:14px;margin:6px 0 24px;padding:22px 20px 20px;border-radius:26px;background:linear-gradient(160deg,var(--lime-l),#fff 60%);border:2px solid var(--ink);box-shadow:var(--pop)}
.extras__title{display:flex;align-items:center;gap:10px;font-size:var(--h-s);letter-spacing:-.02em}
.extras__title .ri{width:24px;height:24px;color:var(--teal)}
.extras__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.extra{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 14px;padding:14px;border-radius:18px;background:#fff;border:1.5px solid var(--line);transition:border-color .25s,transform .3s var(--ease),box-shadow .3s}
.extra:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:3px 3px 0 var(--ink)}
.extra__icon{grid-row:span 2;display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--neon);border:2px solid var(--ink);cursor:pointer}
.extra__icon .ri{width:24px;height:24px}
.extra__text{font-size:16.5px;font-weight:700;line-height:1.4;color:var(--ink)}
.extra__value{justify-self:start;padding:4px 12px;border-radius:999px;background:var(--aqua-l);font-size:14.5px;font-weight:800;color:var(--teal-d)}
.extras__note{display:flex;gap:10px;align-items:flex-start;margin:2px 0 0;font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.extras__note .ri{flex:none;width:20px;height:20px;margin-top:2px;color:var(--teal)}
.btn--extras{justify-self:start;max-width:100%}
.btn--extras .btn__label{text-transform:none}
@media (max-width:719px){.btn--extras{justify-self:stretch;justify-content:space-between}}

/* Tablet */
@media (min-width:720px){
 .audience__grid,.card-grid,.posts{grid-template-columns:repeat(2,1fr)}
 .bento{grid-template-columns:repeat(2,1fr)}
 .ftr__grid{grid-template-columns:1.4fr 1fr 1fr}
 .ftr__actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,280px))}
 .menu__cta{grid-template-columns:1fr 1fr}
 .ctaband__actions .btn{min-width:240px}
 .shop-feature{grid-template-columns:.9fr 1.1fr}
}
/* Desktop */
@media (min-width:1024px){
 .hdr{padding:14px 0}
 .hdr__bar{height:70px;padding:0 10px 0 20px;gap:14px}
 .nav{position:relative;display:flex;align-items:center;gap:2px;margin-left:clamp(8px,2vw,28px);isolation:isolate}
 .nav__link{position:relative;z-index:1;padding:10px 13px;border-radius:999px;font-size:15.5px;font-weight:650;text-decoration:none;color:var(--ink-2);white-space:nowrap;transition:color .2s}
 .nav__link:hover,.nav__link[aria-current]{color:var(--ink)}
 .nav__link[aria-current]::after{content:"";position:absolute;left:50%;bottom:3px;width:6px;height:6px;margin-left:-3px;border-radius:2px;background:var(--lime)}
 .nav__blob{position:absolute;z-index:0;top:0;left:0;height:100%;border-radius:999px;background:var(--aqua-l);border:1.5px solid var(--line-2);opacity:0;transform:translateX(var(--bx,0));width:var(--bw,0);transition:transform .35s var(--spring),width .35s var(--spring),opacity .2s;pointer-events:none}
 .nav.has-blob .nav__blob{opacity:1}
 .hdr__cta{display:inline-flex!important}
 .hdr__platform{display:inline-flex!important;align-items:center;gap:7px;padding:10px 12px;border-radius:999px;font-size:15px;font-weight:700;text-decoration:none;color:var(--teal-d);transition:background-color .2s,color .2s}
 .hdr__platform .ri{width:19px;height:19px;transition:transform .35s var(--spring)}
 .hdr__platform:hover{background:var(--aqua-l);color:var(--ink)}
 .hdr__platform:hover .ri{transform:translate(2px,-2px) rotate(8deg)}
 .burger{display:none}
 .hero{padding-top:36px}
 .hero__grid{grid-template-columns:1.08fr .92fr;gap:48px}
 .hero__art{max-width:none}
 .method__grid{grid-template-columns:.95fr 1.05fr;gap:72px}
 .seven__grid{grid-template-columns:1fr 1fr;gap:56px}
 .seven__radar{position:sticky;top:120px;max-width:none}
 .audience__grid{grid-template-columns:repeat(4,1fr)}
 .bento{grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:auto auto}
 .bento__card--0{grid-row:span 2;padding:34px 32px}
 .bento__card--3{grid-column:2/4}
 .premium__grid{grid-template-columns:.9fr 1.1fr;gap:72px}
 .ctaband__card{grid-template-columns:1.5fr 1fr;align-items:end}
 .ctaband__actions{flex-direction:column;align-items:stretch}
 .ftr__grid{grid-template-columns:1.6fr 1fr 1fr 1.1fr}
 .ftr__actions{grid-column:auto;grid-template-columns:1fr}
 .split{grid-template-columns:1fr 1fr}
 .card-grid{grid-template-columns:repeat(3,1fr)}
 .posts{grid-template-columns:repeat(3,1fr)}
 .contact{grid-template-columns:1fr 1.05fr;gap:56px}
 .single-product div.product{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
 .woocommerce-cart .woocommerce{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}
 .woocommerce-cart .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
 .woocommerce-cart .cart-collaterals{margin-top:12px;position:sticky;top:110px}
 .woocommerce-cart .woocommerce>.cart-empty,.woocommerce-cart .woocommerce>.return-to-shop{grid-column:1/-1}
}
@media (min-width:1024px) and (max-width:1180px){
 .hdr__platform span{display:none}
 .nav__link{padding:10px 10px;font-size:15px}
}
/* Small phones */
@media (max-width:719px){
 .neo table.shop_table_responsive thead{display:none}
 .neo table.shop_table.cart{border-spacing:0}
 .neo table.shop_table.cart tbody tr.cart_item{position:relative;display:grid;grid-template-columns:88px 1fr;gap:4px 14px;padding:14px;margin-bottom:14px;border-radius:22px;background:#fff;border:2px solid var(--line);transition:border-color .25s}
 .neo table.shop_table.cart tbody tr.cart_item:hover{border-color:var(--ink)}
 .neo table.shop_table.cart tbody tr.cart_item td{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 0!important;border:0!important;border-radius:0!important;background:none!important;text-align:left!important}
 .neo table.shop_table.cart td.product-thumbnail{grid-row:1/5;grid-column:1;align-items:flex-start!important}
 .neo table.shop_table.cart td.product-remove{position:absolute;right:10px;top:10px;padding:0!important}
 .neo table.shop_table.cart td.product-name{padding-right:44px!important}
 .neo table.shop_table.cart td::before{content:attr(data-title);font-size:14px;font-weight:700;color:var(--muted)}
 .neo table.shop_table.cart td.product-name::before,.neo table.shop_table.cart td.product-thumbnail::before,.neo table.shop_table.cart td.product-remove::before{display:none}
 .neo table.shop_table.cart td.actions{display:block!important}
 .neo button[name=update_cart]{float:none;width:100%;margin-top:10px}
 .neo .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}
 .neo .woocommerce-billing-fields__field-wrapper>.form-row-first,.neo .woocommerce-billing-fields__field-wrapper>.form-row-last{grid-column:1}
 .hero__cta .btn{width:100%;justify-content:space-between}
 .premium__cta .btn,.shop-feature__cta .btn{width:100%;justify-content:space-between}
 .sticker{padding:9px 12px;border-radius:16px}
 .sticker span{font-size:13.5px}
 .radar--mini{width:84px}
 .premium__price{width:92px;height:92px;font-size:22px;right:-4px}
 .ftr__bottom{flex-direction:column;align-items:flex-start}
 .cky-consent-container{left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;max-width:none!important}
 .cky-consent-container .cky-notice-btn-wrapper{display:grid!important;grid-template-columns:1fr 1fr}
 .cky-consent-container .cky-btn-accept{grid-column:1/-1;order:-1}
}
@media (hover:none){
 .btn:hover{transform:none;box-shadow:4px 4px 0 var(--sh)}
 .btn:hover::after{transform:translateX(-120%)}
 .btn:hover .btn__icon{transform:none}
 .acard:hover:not(.is-active),.icard:hover:not(.is-active),.pcard:hover{transform:none;box-shadow:var(--pop)}
}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 /* Calmer, never frozen: reveals only fade, ambient pieces drift slower, no parallax or big 3D swings */
 .js [data-reveal].is-in{animation-name:reveal-fade;animation-duration:.6s}
 .sh{animation-duration:calc(var(--t,10s) * 1.8)}
 .orb{animation:none}
 .hero__ghost>i,.hero__ring{animation-duration:140s}
 .hero__diamond>i{animation-duration:26s}
 .ftr__wave svg{animation-duration:40s}
 .ftr__bubble{animation-duration:calc(var(--t) * 1.6)}
}
@media (prefers-reduced-motion:reduce) and (hover:none){
 .hero__stage{animation:stage-sway-soft 14s ease-in-out infinite}
 .hero__stage.is-bounce{animation:stage-sway-soft 14s ease-in-out infinite,stage-bounce .6s var(--spring)}
}
@keyframes reveal-fade{from{opacity:0}to{opacity:1}}
@keyframes stage-sway-soft{0%,100%{transform:rotateY(-4deg) rotateX(2deg)}50%{transform:rotateY(4deg) rotateX(-1.5deg)}}
@media (max-width:600px){.neo ul.woocommerce-order-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.neo ul.woocommerce-order-overview li{padding:14px 16px!important;font-size:11.5px!important}.neo ul.woocommerce-order-overview li strong{font-size:17px}}
