:root{
  --ink:#07152f;--ink2:#10254a;--muted:#66748b;--line:#e5eaf2;--bg:#f5f8fc;--card:#fff;
  --blue:#08a8df;--blue2:#0872c9;--orange:#ff7b19;--orange2:#ff9d24;--cyan:#0cc5e8;
  --shadow:0 18px 55px rgba(7,21,47,.11);--shadow-lg:0 28px 90px rgba(7,21,47,.16);
  font-family:"DM Sans",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;color:var(--ink);background:var(--bg);line-height:1.5;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 12%,rgba(8,168,223,.10),transparent 28%),radial-gradient(circle at 88% 24%,rgba(255,123,25,.08),transparent 26%),radial-gradient(circle at 50% 88%,rgba(12,197,232,.07),transparent 30%);z-index:-1;animation:ambientDrift 18s ease-in-out infinite alternate}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;background:linear-gradient(120deg,#f7fbff,#f3f8fc 42%,#fbf8f4 100%);opacity:.96}
a{text-decoration:none;color:inherit}button{font:inherit}.page-section{scroll-margin-top:108px}
.topbar{height:34px;background:#06132b;color:#dce6f8;display:flex;align-items:center;justify-content:space-between;padding:0 5%;font-size:11px;letter-spacing:.02em}.topbar span{color:#ff9d24;margin:0 5px}.topbar a{color:#fff;font-weight:700}
.site-header{height:82px;background:rgba(255,255,255,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(229,234,242,.85);display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;z-index:30;transition:box-shadow .25s}.site-header.scrolled{box-shadow:0 10px 30px rgba(7,21,47,.08)}
.brand{display:flex;align-items:center;gap:10px;min-width:240px}.brand img{width:58px;height:58px;object-fit:contain}.brand strong{display:block;letter-spacing:.09em;font:700 16px/1 "Space Grotesk",sans-serif}.brand span{display:block;color:var(--muted);font-size:10px;margin-top:5px}
nav{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:800}nav a{padding:10px 11px;border-radius:10px;transition:.2s}nav a:hover{color:var(--blue2);background:#eef8fd}nav a.active{background:#07152f;color:#fff;box-shadow:0 8px 20px rgba(7,21,47,.12)}nav a.tab-link{color:#0a6b98;background:linear-gradient(180deg,#effcff,#fff)}nav a.tab-link.active{color:#fff;background:linear-gradient(135deg,#079bd8,#0a6dbf)}.cart-button{border:0;background:var(--ink);color:#fff;padding:11px 14px;border-radius:11px;cursor:pointer;margin-left:4px}.cart-button span{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:99px;background:var(--orange);margin-left:6px;font-size:12px}.menu-toggle{display:none;border:0;background:#07152f;color:#fff;border-radius:10px;width:42px;height:42px}
main{max-width:1500px;margin:auto}.hero{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:48px;padding:68px 5% 58px;align-items:center;background:linear-gradient(135deg,#fff 0%,#f8fcff 55%,#eef7ff 100%);min-height:620px;overflow:hidden}.hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-100px;top:-120px;background:radial-gradient(circle,rgba(8,168,223,.13),transparent 68%);animation:pulseGlow 5s ease-in-out infinite}.hero-copy{position:relative;z-index:1}.live-view-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;margin-bottom:18px;border:1px solid rgba(8,114,201,.14);background:rgba(255,255,255,.78);backdrop-filter:blur(12px);border-radius:999px;box-shadow:0 10px 28px rgba(7,21,47,.06);font-size:10px;font-weight:800;color:#31506f}.live-view-pill b{font-size:14px;color:var(--blue2);min-width:20px}.live-view-pill small{font-size:9px;color:var(--muted)}.live-dot{width:7px;height:7px;border-radius:50%;background:#18b879;box-shadow:0 0 0 5px rgba(24,184,121,.10);animation:livePulse 1.8s ease-in-out infinite}.hero-logo-chip{width:150px;height:58px;margin-bottom:22px;border:1px solid rgba(8,168,223,.14);background:#fff;border-radius:16px;padding:6px 13px;box-shadow:0 10px 28px rgba(7,21,47,.07)}.hero-logo-chip img{width:100%;height:100%;object-fit:contain}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:900;color:var(--blue2);margin:0 0 11px}.hero h1{font:700 clamp(50px,6vw,82px)/.92 "Space Grotesk",sans-serif;margin:0 0 22px;letter-spacing:-.055em}.hero h1 span{color:var(--orange)}.hero-text{font-size:17px;color:#4f5d73;max-width:650px}.hero-actions{display:flex;gap:12px;margin:28px 0}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:13px 19px;font-weight:800;cursor:pointer;border:0;transition:transform .2s,box-shadow .2s,background .2s}.primary{background:linear-gradient(135deg,var(--blue2),var(--blue));color:#fff;box-shadow:0 10px 26px rgba(8,114,201,.24)}.primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(8,114,201,.28)}.secondary{background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 8px 20px rgba(7,21,47,.04)}.secondary:hover{transform:translateY(-2px);border-color:#c7d6e8}.hero-points{display:flex;gap:10px;flex-wrap:wrap}.hero-points div{background:rgba(255,255,255,.9);border:1px solid var(--line);padding:11px 13px;border-radius:12px;min-width:155px;box-shadow:0 8px 24px rgba(7,21,47,.04)}.hero-points b,.hero-points span{display:block}.hero-points b{font-size:12px}.hero-points span{font-size:10px;color:var(--muted)}
.hero-art{position:relative;background:#fff;border-radius:28px;padding:13px;box-shadow:var(--shadow-lg);overflow:hidden;transform:rotate(.2deg)}.hero-art img{width:100%;display:block;border-radius:20px;transition:transform .7s}.hero-art:hover img{transform:scale(1.025)}.hero-glow{position:absolute;inset:15% 12%;background:radial-gradient(circle,rgba(8,168,223,.16),transparent 66%);filter:blur(24px);z-index:0}.hero-art img{position:relative;z-index:1}.hero-floating-card{position:absolute;z-index:2;background:#fff;border:1px solid var(--line);border-radius:14px;padding:9px 12px;box-shadow:var(--shadow);display:flex;gap:8px;align-items:center;font-size:11px}.hero-floating-card b{font-size:17px;color:var(--orange)}.float-a{left:-10px;top:22%;animation:float 4s ease-in-out infinite}.float-b{right:-8px;bottom:14%;animation:float 4.7s ease-in-out infinite reverse}
.quote-strip{padding:30px 7%;display:flex;align-items:center;gap:18px;color:#fff;min-height:128px;position:relative;overflow:hidden}.quote-strip:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(7,21,47,.98),rgba(8,114,201,.96));z-index:0}.quote-strip>*{position:relative;z-index:1}.quote-mark{font:700 58px/1 "Space Grotesk";opacity:.35}.quote-strip p{font-size:21px;max-width:820px;margin:0}.quote-strip p strong{color:#fff}.quote-strip span{margin-left:auto;font-size:9px;letter-spacing:.18em;font-weight:900;opacity:.75;white-space:nowrap}.quote-two:before{background:linear-gradient(105deg,#10254a,#0872c9)}.quote-three:before{background:linear-gradient(105deg,#0a263d,#0a7185)}.quote-four:before{background:linear-gradient(105deg,#291a0b,#d86112)}
.innovation-wall{margin:0 5%;padding:58px 7%;border-radius:28px;background:linear-gradient(135deg,#07152f 0%,#0b3970 55%,#0872c9 100%);color:#fff;box-shadow:var(--shadow-lg);position:relative;overflow:hidden;text-align:center}
.innovation-wall:before,.innovation-wall:after{content:"";position:absolute;border-radius:50%;filter:blur(2px);opacity:.35}
.innovation-wall:before{width:260px;height:260px;left:-80px;top:-120px;background:radial-gradient(circle,rgba(12,197,232,.75),transparent 68%);animation:float 7s ease-in-out infinite}
.innovation-wall:after{width:320px;height:320px;right:-120px;bottom:-190px;background:radial-gradient(circle,rgba(255,157,36,.6),transparent 68%);animation:float 8s ease-in-out infinite reverse}
.innovation-label{position:relative;z-index:1;font-size:10px;letter-spacing:.22em;font-weight:900;color:#8fe7ff;margin-bottom:13px}
.innovation-quote{position:relative;z-index:1;font:600 clamp(24px,3.2vw,43px)/1.1 "Space Grotesk",sans-serif;max-width:950px;margin:auto;letter-spacing:-.03em;transition:opacity .35s,transform .35s}
.innovation-author{position:relative;z-index:1;margin-top:15px;font-size:11px;letter-spacing:.12em;color:#bcd8f2}

.trust-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-strip div{background:#fff;padding:20px 14px;display:flex;flex-direction:column;align-items:center;text-align:center}.trust-strip span{font-size:21px;color:var(--blue2);margin-bottom:4px}.trust-strip b{font-size:12px}.trust-strip small{color:var(--muted);font-size:10px}
.catalogue,.kits-section,.learning-page{padding:68px 5%}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:24px}.section-head h2,.contact-section h2{font:700 38px/1.03 "Space Grotesk",sans-serif;margin:0 0 9px;letter-spacing:-.035em}.section-head p:not(.eyebrow){margin:0;color:var(--muted)}.catalogue-controls{display:flex;gap:9px}.catalogue-controls input,.catalogue-controls select,.form-grid input,.form-grid textarea{border:1px solid var(--line);background:#fff;border-radius:11px;padding:12px 13px;outline:none;color:var(--ink)}.catalogue-controls input{min-width:270px}.catalogue-controls input:focus,.catalogue-controls select:focus,.form-grid input:focus,.form-grid textarea:focus{border-color:#8eb7ff;box-shadow:0 0 0 4px #eaf2ff}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 8px}.chip{border:1px solid var(--line);background:#fff;padding:8px 11px;border-radius:999px;font-size:12px;cursor:pointer;transition:.2s}.chip:hover{border-color:#a9c6df}.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}.results-note{font-size:12px;color:var(--muted);margin:12px 0}.image-status{color:#17845b;font-weight:700}.sku-status{color:#7b5c1c;font-weight:800;margin-left:4px}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.product-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:.25s}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product-img{aspect-ratio:1.15/1;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid #e8edf2}.product-img img{width:100%;height:220px;object-fit:contain;background:#fff}.product-body{padding:15px}.tag{display:inline-block;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue2);background:#edf8fd;padding:5px 7px;border-radius:7px;font-weight:900}.product-body h3{font-size:15px;line-height:1.2;margin:10px 0 6px}.product-body p{font-size:11px;color:var(--muted);margin:0 0 10px;min-height:50px}.sku-line{font-size:9px;font-weight:800;color:#7b8798;margin:7px 0 0;letter-spacing:.04em}.product-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:11px}.price{font-weight:900;color:var(--orange)}.card-actions{display:flex;gap:8px;margin-top:12px}.card-actions button{flex:1;padding:10px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:11px;font-weight:800}.card-actions .add{background:var(--blue2);color:#fff;border-color:var(--blue2)}
.learning-page{background:linear-gradient(180deg,#f9fcff,#f4f8fd)}.section-badge{border:1px solid #bce8f6;background:#eafaff;color:#0872a5;border-radius:999px;padding:10px 13px;font-size:10px;font-weight:900;letter-spacing:.08em;white-space:nowrap}.section-badge span{color:#16b879}.section-badge.orange{background:#fff3e8;border-color:#ffd7b1;color:#c65c10}.practical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.practical-card,.project-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 8px 25px rgba(7,21,47,.04);transition:.25s}.practical-card:hover,.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.practical-card img,.project-card img{width:100%;height:230px;object-fit:contain;background:#fff;border-bottom:1px solid var(--line)}.practical-body,.project-body{padding:18px}.practical-body h3,.project-body h3{font:700 20px/1.1 "Space Grotesk";margin:8px 0}.practical-body p,.project-body p{color:var(--muted);font-size:12px;margin:0 0 13px}.detail-list{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.detail-list span{font-size:9px;font-weight:800;background:#f2f6fa;border-radius:999px;padding:6px 8px;color:#536176}.project-feature{display:grid;grid-template-columns:1fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:24px}.project-feature-copy{padding:36px}.project-feature-copy h3{font:700 32px/1.04 "Space Grotesk";margin:11px 0}.project-feature-copy p{color:var(--muted);max-width:610px}.project-feature>img{width:100%;height:100%;min-height:340px;object-fit:contain;background:#fff}.project-mini-stats{display:flex;gap:10px;margin:24px 0}.project-mini-stats div{background:#f4f8fc;border-radius:13px;padding:11px 14px;min-width:90px}.project-mini-stats b,.project-mini-stats span{display:block}.project-mini-stats b{font:700 22px "Space Grotesk";color:var(--blue2)}.project-mini-stats span{font-size:9px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.kit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.kit-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.25s}.kit-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.kit-card img{width:100%;height:250px;object-fit:contain;background:#fff;border-bottom:1px solid var(--line)}.kit-card .kit-body{padding:16px}.kit-body h3{font-size:17px;margin:7px 0}.kit-body p{font-size:12px;color:var(--muted);min-height:55px}.kit-body button{width:100%;border:0;background:var(--ink);color:#fff;border-radius:10px;padding:10px;cursor:pointer;font-weight:800}
.contact-section{margin:10px 5% 70px;padding:38px;border-radius:24px;background:linear-gradient(135deg,#071329,#0b2e62);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:var(--shadow-lg);overflow:hidden;position:relative}.contact-section:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-70px;bottom:-120px;background:rgba(8,168,223,.22)}.contact-section>*{position:relative;z-index:1}.contact-section h2{color:#fff}.contact-section p:not(.eyebrow){max-width:700px;color:#b9c9e5}.contact-section .primary{background:var(--orange)}
footer{background:#061026;color:#c8d4e8;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 5%;font-size:12px}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand img{width:48px;height:42px;object-fit:contain}.footer-brand strong{display:block;color:#fff}.footer-brand span{display:block;color:#8395b5}
.modal-backdrop{position:fixed;inset:0;background:rgba(3,10,25,.66);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;z-index:50;padding:18px}.modal-backdrop.open{display:flex}.modal{background:#fff;border-radius:22px;max-width:920px;width:100%;max-height:92vh;overflow:auto;position:relative;padding:28px;box-shadow:0 30px 100px rgba(0,0,0,.25)}.close{position:absolute;right:14px;top:12px;border:0;background:#eef2f7;width:34px;height:34px;border-radius:50%;font-size:23px;line-height:1;cursor:pointer}.product-detail{display:grid;grid-template-columns:.95fr 1.05fr;gap:25px}.product-detail img{width:100%;border-radius:16px;border:1px solid var(--line);aspect-ratio:1/1;object-fit:contain;background:#fff}.detail h2{font:700 31px/1.05 "Space Grotesk";margin:8px 0}.detail p{color:var(--muted)}.detail h4{margin:18px 0 7px}.detail ul{padding-left:18px;color:#4f5d72;font-size:13px}.detail .add{margin-top:10px}
.cart-drawer{position:fixed;right:0;top:0;height:100vh;width:min(430px,94vw);background:#fff;z-index:60;box-shadow:-20px 0 70px rgba(0,0,0,.18);transform:translateX(110%);transition:.25s;display:flex;flex-direction:column}.cart-drawer.open{transform:translateX(0)}.drawer-head{padding:22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.drawer-head h3{margin:0}.cart-items{padding:15px;overflow:auto;flex:1}.cart-row{display:grid;grid-template-columns:64px 1fr auto;gap:11px;padding:12px 0;border-bottom:1px solid var(--line)}.cart-row img{width:72px;height:72px;border-radius:9px;object-fit:contain;background:#fff;border:1px solid var(--line)}.cart-row h4{margin:0 0 4px;font-size:12px}.cart-row p{margin:0;color:var(--muted);font-size:10px}.qty{display:flex;align-items:center;gap:7px;margin-top:7px}.qty button{border:1px solid var(--line);background:#fff;border-radius:6px;width:24px;height:24px;cursor:pointer}.cart-footer{padding:18px;border-top:1px solid var(--line)}.cart-summary{display:flex;justify-content:space-between;margin-bottom:12px}.full{width:100%}.tiny{font-size:10px;color:var(--muted);line-height:1.4}.empty{text-align:center;color:var(--muted);padding:40px 15px}
.checkout-modal{max-width:720px}.muted{color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800}.form-grid .wide{grid-column:1/-1}.form-grid textarea{resize:vertical}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}.float-a,.float-b{opacity:1!important;transform:none!important}.site-header.scrolled + main{}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes ambientDrift{0%{transform:translate3d(-1%,0,0) scale(1)}100%{transform:translate3d(1%,1%,0) scale(1.03)}}@keyframes livePulse{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(1.25);opacity:.55}}@keyframes pulseGlow{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.12);opacity:1}}
@media(max-width:1180px){nav{gap:2px}.product-grid{grid-template-columns:repeat(3,1fr)}.kit-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.hero-art{max-width:800px;width:100%;margin:auto}.practical-grid,.project-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.site-header{height:74px}.menu-toggle{display:block}nav{position:absolute;top:74px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(7,21,47,.1);padding:12px 5%;display:none;flex-direction:column;align-items:stretch}nav.open{display:flex}nav a,.cart-button{width:100%;text-align:left;margin:0}.cart-button{text-align:center}.brand{min-width:0}.brand strong{font-size:14px}.brand span{font-size:9px}.quote-strip{display:block;padding:28px 6%}.quote-mark{font-size:40px}.quote-strip p{font-size:18px}.quote-strip span{display:block;margin:10px 0 0}.section-head{align-items:start;flex-direction:column}.catalogue-controls{width:100%}.catalogue-controls input{flex:1}.project-feature{grid-template-columns:1fr}.project-feature>img{min-height:300px;order:-1}.project-feature-copy{padding:28px}}
@media(max-width:720px){.live-view-pill{margin-bottom:14px}.innovation-wall{margin:0 4%;padding:42px 6%}.topbar{padding:0 4%;font-size:9px}.topbar>div{display:none}.topbar{justify-content:flex-end}.site-header{padding:0 4%}.brand img{width:46px;height:46px}.brand strong{font-size:12px}.brand span{font-size:8px}.hero{padding:44px 4%;min-height:auto}.hero h1{font-size:50px}.hero-text{font-size:15px}.hero-logo-chip{width:125px;height:50px}.hero-actions{flex-direction:column}.hero-actions a{width:100%}.hero-floating-card{display:none}.trust-strip{grid-template-columns:repeat(2,1fr)}.trust-strip div:last-child{grid-column:1/-1}.catalogue,.kits-section,.learning-page{padding:48px 4%}.catalogue-controls{flex-direction:column}.catalogue-controls input{min-width:0;width:100%}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-body{padding:12px}.product-body p{min-height:66px}.product-img img{height:170px}.practical-grid,.project-grid,.kit-grid{grid-template-columns:1fr}.project-feature-copy h3{font-size:26px}.project-mini-stats{flex-wrap:wrap}.contact-section{margin:0 4% 45px;padding:25px;display:block}.contact-section .primary{margin-top:15px;width:100%}footer{display:block;padding:25px 4%}footer>div{margin-bottom:12px}.product-detail{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}


/* Premium interaction layer */
::selection{background:rgba(8,114,201,.16);color:var(--ink)}
body{background:linear-gradient(120deg,#f8fbff 0%,#f4f8fd 46%,#fbf8f4 100%);background-attachment:fixed}
.top-contact{display:flex;align-items:center;gap:16px}
.top-contact a,.footer-contacts a{display:inline-flex;align-items:center;gap:6px;transition:transform .2s ease,color .2s ease,opacity .2s ease}
.top-contact a:hover,.footer-contacts a:hover{transform:translateY(-1px);color:#8fe7ff}
.contact-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:900}
.top-contact .contact-icon{background:rgba(255,255,255,.1);color:#8fe7ff}
.footer-contacts{display:flex;flex-wrap:wrap;gap:16px}
.footer-contacts a{color:#dce6f8}

.primary,.secondary,.cart-button,.card-actions button,.chip,.close,.qty button,.project-card button,.practical-card button,.kit-card button{
  transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease,border-color .22s ease,background .22s ease,filter .22s ease;
}
.primary:hover,.secondary:hover,.cart-button:hover,.card-actions button:hover,.chip:hover,.close:hover,.qty button:hover{
  transform:translateY(-2px);
}
.primary:active,.secondary:active,.cart-button:active,.card-actions button:active,.chip:active,.close:active,.qty button:active{
  transform:translateY(0) scale(.97);
}
.primary:focus-visible,.secondary:focus-visible,.cart-button:focus-visible,.card-actions button:focus-visible,.chip:focus-visible,.close:focus-visible,.qty button:focus-visible,a:focus-visible{
  outline:3px solid rgba(8,168,223,.28);outline-offset:3px;
}
.primary{position:relative;overflow:hidden}
.primary:after{content:"";position:absolute;inset:-80% auto -80% -30%;width:28%;background:rgba(255,255,255,.35);transform:rotate(18deg) translateX(-240%);transition:transform .7s ease}
.primary:hover:after{transform:rotate(18deg) translateX(560%)}
.site-header{transition:box-shadow .35s ease,background .35s ease,transform .35s ease}
.site-header.scrolled{background:rgba(255,255,255,.97);box-shadow:0 14px 36px rgba(7,21,47,.1)}
.product-card,.practical-card,.project-card,.kit-card,.hero-art,.hero-points div,.innovation-wall,.contact-section{
  will-change:transform;
}
.product-card:hover,.practical-card:hover,.project-card:hover,.kit-card:hover{
  box-shadow:0 22px 52px rgba(7,21,47,.12);
}
.hero{background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,252,255,.94) 55%,rgba(238,247,255,.94));}
.quote-strip{background:linear-gradient(105deg,#07152f,#0872c9);box-shadow:0 12px 34px rgba(7,21,47,.08)}
.quote-strip:before{opacity:.88}
.innovation-wall{background:linear-gradient(135deg,#07152f 0%,#0b3970 55%,#0872c9 100%);border:1px solid rgba(255,255,255,.1)}
.live-view-pill{transition:transform .25s ease,box-shadow .25s ease}
.live-view-pill:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(7,21,47,.1)}
#liveViewCount{display:inline-grid;place-items:center;min-width:30px;height:28px;padding:0 6px;border-radius:9px;background:#edf8fd}
@media(max-width:720px){
  .top-contact{gap:8px}
  .top-contact a{font-size:0}
  .top-contact .contact-icon{width:28px;height:28px;font-size:13px}
  .footer-contacts{display:grid;gap:10px}
  .contact-actions{display:grid;gap:10px}
  .contact-actions .primary,.contact-actions .secondary{width:100%}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}


/* === Premium motion + interaction refresh === */
:root{
  --motion:cubic-bezier(.22,1,.36,1);
  --glass:rgba(255,255,255,.72);
}
body{
  background:
    radial-gradient(circle at 8% 18%,rgba(8,168,223,.08),transparent 24%),
    radial-gradient(circle at 92% 36%,rgba(255,123,25,.07),transparent 24%),
    linear-gradient(135deg,#f7fbff 0%,#f4f8fc 46%,#fffaf5 100%);
}
body:before{animation:ambientDrift 24s ease-in-out infinite alternate}
body:after{background:linear-gradient(120deg,#f7fbff,#f3f8fc 42%,#fbf8f4 100%);opacity:.72}
button,.primary,.secondary,.chip,.cart-button,.nav-link,.card-actions button,.kit-body button{
  transition:transform .28s var(--motion),box-shadow .28s var(--motion),background .28s var(--motion),border-color .28s var(--motion),color .28s var(--motion);
}
button:active,.primary:active,.secondary:active,.cart-button:active,.chip:active{transform:translateY(1px) scale(.98)!important}
.primary,.secondary,.cart-button,.card-actions button,.kit-body button{
  position:relative;overflow:hidden;
}
.primary:after,.secondary:after,.cart-button:after,.card-actions button:after,.kit-body button:after{
  content:"";position:absolute;inset:-60% auto -60% -25%;width:25%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);
  transform:translateX(-180%) rotate(18deg);transition:transform .65s var(--motion);pointer-events:none;
}
.primary:hover:after,.secondary:hover:after,.cart-button:hover:after,.card-actions button:hover:after,.kit-body button:hover:after{transform:translateX(700%) rotate(18deg)}
.primary:hover,.secondary:hover,.cart-button:hover{transform:translateY(-3px)}
.top-contact{display:flex;align-items:center;gap:7px}
.contact-action{
  width:28px;height:28px;display:inline-grid!important;place-items:center;border-radius:9px;
  color:#fff!important;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.13);
  font-size:13px;transition:all .25s var(--motion)!important;
}
.contact-action:hover{background:#fff;color:var(--ink)!important;transform:translateY(-2px) scale(1.05)}
.contact-action.whatsapp:hover{color:#138c52!important}.contact-action.email:hover{color:#c45125!important}.contact-action.call:hover{color:#0872c9!important}
.footer-contacts{display:flex;gap:10px;align-items:center}
.footer-contacts .contact-action{color:var(--ink)!important;background:#fff;border-color:var(--line);width:36px;height:36px}
.footer-contacts .contact-action:hover{box-shadow:0 10px 22px rgba(7,21,47,.12)}
.site-header{transition:box-shadow .35s var(--motion),background .35s var(--motion),transform .35s var(--motion)}
.site-header.scrolled{background:rgba(255,255,255,.82);box-shadow:0 16px 45px rgba(7,21,47,.11)}
.hero{background:
  radial-gradient(circle at 78% 18%,rgba(8,168,223,.12),transparent 24%),
  radial-gradient(circle at 20% 82%,rgba(255,157,36,.08),transparent 25%),
  linear-gradient(135deg,#fff 0%,#f8fcff 55%,#eef7ff 100%);}
.hero h1{font-weight:700;text-shadow:0 5px 30px rgba(7,21,47,.06)}
.hero-text{line-height:1.75}
.live-view-pill{animation:liveFloat 4s ease-in-out infinite}
.hero-floating-card{backdrop-filter:blur(12px);background:rgba(255,255,255,.82)}
.quote-strip{isolation:isolate}
.quote-strip p{font-family:"Space Grotesk",sans-serif;letter-spacing:-.02em}
.innovation-wall{background:
  radial-gradient(circle at 18% 20%,rgba(12,197,232,.16),transparent 26%),
  radial-gradient(circle at 84% 82%,rgba(255,157,36,.14),transparent 28%),
  linear-gradient(135deg,#07152f,#0b3970 55%,#0872c9);}
.product-card,.practical-card,.project-card,.kit-card,.hero-art{
  transition:transform .42s var(--motion),box-shadow .42s var(--motion),border-color .42s var(--motion);
}
.product-card:hover,.practical-card:hover,.project-card:hover,.kit-card:hover{
  transform:translateY(-8px);box-shadow:0 25px 60px rgba(7,21,47,.13);border-color:#d4e2f2
}
.product-card:hover .product-img img,.practical-card:hover img,.project-card:hover img,.kit-card:hover img{transform:scale(1.035)}
.product-img img,.practical-card img,.project-card img,.kit-card img{transition:transform .6s var(--motion)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--motion),transform .8s var(--motion)}
.reveal.visible{opacity:1;transform:none}
.chip:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(7,21,47,.07)}
.nav-link:hover{transform:translateY(-2px)}
@keyframes liveFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
}
@media (max-width:720px){
  .topbar{padding:0 4%;height:34px}.topbar>div:first-child{font-size:9px}.top-contact{gap:5px}
  .contact-action{width:26px;height:26px}
}

/* Professional contact controls and order export */
.top-contact,.footer-contacts,.header-contact-actions{display:flex;align-items:center;gap:10px}
.contact-action,.header-contact{
  width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(229,234,242,.95);background:#fff;box-shadow:0 7px 18px rgba(7,21,47,.08);
  transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer
}
.contact-action:hover,.header-contact:hover{transform:translateY(-2px);box-shadow:0 11px 24px rgba(7,21,47,.13)}
.contact-svg{width:20px;height:20px;fill:currentColor}
.contact-action.whatsapp,.header-contact.whatsapp{color:#138a55}
.contact-action.call,.header-contact.call{color:#0872c9}
.contact-action.email,.header-contact.gmail{color:#d64b3f}
.gmail-svg{stroke:currentColor;stroke-width:1.25}
.email-text{width:auto;padding:0 11px;font-size:11px;font-weight:800;color:#0872c9}
.topbar .contact-action{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);box-shadow:none}
.topbar .contact-action .contact-svg{width:18px;height:18px}
.header-contact-actions{margin-left:auto;margin-right:4px}
.cart-actions,.checkout-actions{display:grid;gap:9px}
.full{width:100%}
@media(max-width:1050px){
  .header-contact-actions{display:none}
}
@media(max-width:720px){
  .top-contact{gap:7px}
  .topbar .contact-action{width:32px;height:32px}
  .footer-contacts{gap:8px}
  .contact-action{width:36px;height:36px}
}


/* Focused upper-header contact: Gmail only */
.top-contact .contact-action.gmail,
.header-contact-actions .header-contact.gmail {
  color:#d93025;
}
.top-contact .contact-action.gmail:hover,
.header-contact-actions .header-contact.gmail:hover {
  color:#b3261e;
  background:#fff7f6;
  border-color:#f3c5c1;
}


/* Professional Gmail contact composer */
.email-composer-modal{width:min(620px,92vw);padding:28px;border:1px solid rgba(11,43,78,.10);box-shadow:0 28px 80px rgba(7,21,47,.20)}
.email-composer-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:20px}
.email-composer-head h2{margin:3px 0 6px;font-family:"Space Grotesk",sans-serif}
.email-composer-icon{width:46px;height:46px;flex:0 0 46px;border-radius:14px;display:grid;place-items:center;background:#fff1f0;color:#d93025;border:1px solid #f3c5c1;font-size:22px;font-weight:800}
.email-recipient-card{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;padding:14px 16px;margin-bottom:18px;border:1px solid #e7edf5;border-radius:14px;background:#f8fafc}
.email-recipient-card span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#6b7a90}
.email-recipient-card strong{font-size:15px;color:#0b2b4e}
.email-recipient-card small{grid-column:2;color:#718096;font-size:11px}
.email-composer-modal label{display:grid;gap:7px;margin-top:13px;font-size:12px;font-weight:800;color:#34445a}
.email-composer-modal input,.email-composer-modal textarea{width:100%;box-sizing:border-box;border:1px solid #dbe3ed;border-radius:12px;padding:12px 13px;font:inherit;font-size:14px;color:#14243a;background:#fff;outline:none;resize:vertical}
.email-composer-modal input:focus,.email-composer-modal textarea:focus{border-color:#9cc7f4;box-shadow:0 0 0 4px rgba(37,99,235,.08)}
.email-composer-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.email-composer-actions .primary,.email-composer-actions .secondary{flex:1;min-width:190px;text-align:center}
@media(max-width:600px){.email-composer-modal{padding:21px}.email-composer-actions{display:grid}}

/* === PREMIUM PROFESSIONAL EXPERIENCE === */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --premium-ink:#07152f;
  --premium-muted:#607089;
  --premium-glass:rgba(255,255,255,.72);
  --premium-border:rgba(255,255,255,.58);
}
html{scroll-behavior:smooth}
body{
  font-family:"Manrope","DM Sans",Inter,ui-sans-serif,system-ui,sans-serif;
  background:
    radial-gradient(circle at 8% 5%,rgba(0,178,255,.11),transparent 23%),
    radial-gradient(circle at 92% 18%,rgba(255,129,31,.09),transparent 22%),
    radial-gradient(circle at 50% 100%,rgba(88,82,255,.07),transparent 32%),
    #f6f9fd;
  color:var(--premium-ink);
}
body:before{
  background:
    radial-gradient(circle at 20% 30%,rgba(0,190,255,.09),transparent 22%),
    radial-gradient(circle at 80% 65%,rgba(255,154,43,.08),transparent 24%);
  animation:premiumAmbient 20s ease-in-out infinite alternate;
}
body:after{
  background-image:
    linear-gradient(rgba(7,21,47,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(7,21,47,.018) 1px,transparent 1px);
  background-size:42px 42px;
  opacity:.5;
}
h1,h2,h3,h4,.brand strong,nav a{font-family:"Manrope","DM Sans",sans-serif}
h2{letter-spacing:-.035em}
.hero{
  background:
    radial-gradient(circle at 82% 20%,rgba(20,196,255,.15),transparent 26%),
    radial-gradient(circle at 18% 85%,rgba(255,140,40,.08),transparent 24%),
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,250,255,.95));
}
.hero h1{
  font-family:"Space Grotesk",sans-serif;
  text-shadow:0 8px 35px rgba(7,21,47,.06);
}
.site-header{
  background:rgba(255,255,255,.78);
  border-bottom-color:rgba(255,255,255,.7);
  box-shadow:0 8px 30px rgba(7,21,47,.04);
}
.product-card,.kit-card,.practical-card,.project-card{
  transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .45s;
}
.product-card:hover,.kit-card:hover,.practical-card:hover,.project-card:hover{
  transform:translateY(-8px);
  box-shadow:0 28px 65px rgba(7,21,47,.14);
}
.primary,.secondary,button{transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,filter .28s}
.primary:hover,.secondary:hover,button:hover{filter:saturate(1.08)}
.quote-strip{
  box-shadow:inset 0 1px rgba(255,255,255,.12),inset 0 -1px rgba(0,0,0,.06);
}
.quote-strip:after{
  content:"";
  position:absolute;
  width:260px;height:260px;border-radius:50%;
  right:-80px;top:-120px;
  background:radial-gradient(circle,rgba(255,255,255,.15),transparent 68%);
  animation:quoteOrb 8s ease-in-out infinite;
}
.reveal{
  opacity:0;
  transform:translateY(24px) scale(.985);
  filter:blur(3px);
  transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1),filter .75s ease;
}
.reveal.visible{opacity:1;transform:none;filter:none}
@keyframes premiumAmbient{from{transform:scale(1) translate3d(0,0,0)}to{transform:scale(1.06) translate3d(1.5%,-1%,0)}}
@keyframes quoteOrb{0%,100%{transform:translate3d(0,0,0);opacity:.65}50%{transform:translate3d(-35px,28px,0);opacity:1}}
@media(max-width:720px){
  body:after{background-size:30px 30px}
}

/* === INSPIRATION QUOTE MOSAIC === */
.quote-gallery{
  margin:68px 5% 30px;
  padding:70px 5%;
  border-radius:34px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 10%,rgba(18,197,255,.16),transparent 25%),
    radial-gradient(circle at 85% 85%,rgba(255,150,38,.13),transparent 28%),
    linear-gradient(135deg,#06142d,#0b2852 52%,#123d70);
  color:#fff;
  box-shadow:0 30px 90px rgba(7,21,47,.22);
}
.quote-gallery:before{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1px);
  background-size:22px 22px;opacity:.25;
}
.quote-gallery-head,.quote-mosaic,.quote-progress{position:relative;z-index:1}
.quote-gallery-head{text-align:center;max-width:780px;margin:0 auto 35px}
.quote-gallery-head .eyebrow{color:#86e6ff}
.quote-gallery-head h2{font:700 clamp(32px,4.5vw,56px)/1.02 "Space Grotesk",sans-serif;margin:0 0 15px;letter-spacing:-.045em}
.quote-gallery-head>p:last-child{color:rgba(255,255,255,.72);font-size:15px}
.quote-mosaic{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:15px;
}
.quote-card{
  min-height:205px;
  padding:25px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
  backdrop-filter:blur(16px);
  box-shadow:0 18px 45px rgba(0,0,0,.14);
  display:flex;flex-direction:column;justify-content:space-between;
  overflow:hidden;position:relative;
  animation:quoteCardIn .75s cubic-bezier(.2,.8,.2,1) both;
}
.quote-card:before{
  content:"“";position:absolute;right:14px;top:-20px;
  font:700 130px/.8 "Space Grotesk";color:rgba(255,255,255,.055);
}
.quote-card:nth-child(1){grid-column:span 7;min-height:260px}
.quote-card:nth-child(2){grid-column:span 5}
.quote-card:nth-child(3){grid-column:span 4}
.quote-card:nth-child(4){grid-column:span 4}
.quote-card:nth-child(5){grid-column:span 4}
.quote-card:nth-child(6){grid-column:span 8}
.quote-card:nth-child(7){grid-column:span 4}
.quote-card:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.32);box-shadow:0 25px 55px rgba(0,0,0,.22)}
.quote-card .quote-index{font-size:10px;letter-spacing:.16em;font-weight:800;color:#8fe7ff}
.quote-card p{font:600 clamp(18px,2vw,26px)/1.28 "Manrope",sans-serif;max-width:95%;margin:20px 0}
.quote-card small{color:rgba(255,255,255,.6);font-size:10px;letter-spacing:.13em;font-weight:800;text-transform:uppercase}
.quote-progress{height:3px;margin:28px auto 0;max-width:560px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden}
.quote-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#55dfff,#ffab3d);animation:quoteProgress 10s linear infinite}
@keyframes quoteCardIn{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@keyframes quoteProgress{from{width:0}to{width:100%}}
@media(max-width:800px){
  .quote-gallery{margin:45px 4% 20px;padding:50px 5%}
  .quote-mosaic{grid-template-columns:1fr}
  .quote-card,.quote-card:nth-child(n){grid-column:1;min-height:190px}
}
@media(prefers-reduced-motion:reduce){
  .quote-card,.quote-progress span{animation:none!important}
}


/* === CREATIVE LEARNING UI REFINEMENT === */
:root{
  --cl-ease:cubic-bezier(.22,.8,.24,1);
  --cl-fast:220ms;
  --cl-smooth:520ms;
}

/* Larger, clearer brand presence */
.site-header .brand{gap:14px}
.site-header .brand img{width:76px;height:76px;filter:drop-shadow(0 8px 18px rgba(7,21,47,.10));transition:transform .55s var(--cl-ease),filter .55s var(--cl-ease)}
.site-header .brand:hover img{transform:scale(1.055) rotate(-1deg);filter:drop-shadow(0 12px 24px rgba(7,21,47,.16))}
.site-header .brand strong{font-size:17px;letter-spacing:.105em}
.site-header .brand span{font-size:10px}

.hero-logo-chip{
  width:220px;height:92px;padding:8px 16px;border-radius:20px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 14px 36px rgba(7,21,47,.08),0 0 0 1px rgba(8,168,223,.04);
  animation:logoFloat 5.5s var(--cl-ease) infinite;
}
.hero-logo-chip img{width:100%;height:100%;object-fit:contain;transition:transform .65s var(--cl-ease),filter .65s var(--cl-ease)}
.hero-logo-chip:hover img{transform:scale(1.045);filter:drop-shadow(0 10px 18px rgba(8,114,201,.14))}

/* Premium navigation/tab motion */
#mainNav{gap:7px}
#mainNav .nav-link{
  position:relative;isolation:isolate;overflow:hidden;
  padding:11px 13px;border-radius:12px;
  color:#17243a;background:transparent;
  transition:transform .32s var(--cl-ease),color .32s var(--cl-ease),background .32s var(--cl-ease),box-shadow .32s var(--cl-ease);
}
#mainNav .nav-link::before{
  content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;
  background:linear-gradient(135deg,rgba(8,168,223,.10),rgba(8,114,201,.035));
  opacity:0;transform:scale(.84);transition:opacity .35s var(--cl-ease),transform .35s var(--cl-ease);
}
#mainNav .nav-link::after{
  content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;border-radius:99px;
  background:linear-gradient(90deg,#08a8df,#ff7a18);
  transform:scaleX(0);transform-origin:center;transition:transform .4s var(--cl-ease);
}
#mainNav .nav-link:hover{transform:translateY(-3px);color:#0872c9;background:rgba(255,255,255,.78);box-shadow:0 10px 24px rgba(7,21,47,.07)}
#mainNav .nav-link:hover::before{opacity:1;transform:scale(1)}
#mainNav .nav-link:hover::after{transform:scaleX(1)}
#mainNav .nav-link.active{
  color:#fff;background:linear-gradient(135deg,#07152f,#123762);
  box-shadow:0 12px 26px rgba(7,21,47,.18);
  transform:translateY(-1px);
}
#mainNav .nav-link.active::before{opacity:0}
#mainNav .nav-link.active::after{transform:scaleX(.5);background:#ff8a2b;bottom:5px}
#mainNav .nav-link.active:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(7,21,47,.22)}
#mainNav .nav-link.tab-link{color:#0a6b98;background:transparent}
#mainNav .nav-link.tab-link.active{color:#fff;background:linear-gradient(135deg,#087fbe,#075e9e)}

/* Make section changes feel intentional and smooth */
#home,#products,#practical,#projects,#kits,#why-us,#inspiration{scroll-margin-top:100px}
.page-section,.quote-strip,.innovation-wall,.contact-section,.quote-gallery{scroll-margin-top:100px}

/* Consistent motion language across controls and content */
.primary,.secondary,.cart-button,.chip,.card-actions button,.kit-body button,.close,.menu-toggle{
  will-change:transform;transition:transform .32s var(--cl-ease),box-shadow .32s var(--cl-ease),background .32s var(--cl-ease),border-color .32s var(--cl-ease),filter .32s var(--cl-ease)
}
.primary:hover,.secondary:hover,.cart-button:hover,.chip:hover,.card-actions button:hover,.kit-body button:hover{transform:translateY(-3px)}
.primary:active,.secondary:active,.cart-button:active,.chip:active,.card-actions button:active,.kit-body button:active{transform:translateY(-1px) scale(.985)}
.product-card,.practical-card,.project-card,.kit-card,.hero-art,.hero-points div,.innovation-wall,.contact-section{
  will-change:transform;transition:transform .55s var(--cl-ease),box-shadow .55s var(--cl-ease),border-color .4s var(--cl-ease)
}
.product-card:hover,.practical-card:hover,.project-card:hover,.kit-card:hover{transform:translateY(-10px) scale(1.008)}
.hero-art:hover{transform:translateY(-5px) rotate(.2deg);box-shadow:0 34px 80px rgba(7,21,47,.17)}

/* Smoother reveal with subtle depth */
.reveal{transition:opacity .85s var(--cl-ease),transform .85s var(--cl-ease),filter .85s var(--cl-ease)}
.reveal.visible{animation:revealSettle .85s var(--cl-ease) both}
@keyframes revealSettle{0%{opacity:.15;transform:translateY(22px) scale(.985);filter:blur(2px)}70%{opacity:1;transform:translateY(-2px) scale(1.002);filter:blur(0)}100%{opacity:1;transform:none;filter:none}}
@keyframes logoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

/* Mobile: keep the larger logo without crowding the header */
@media(max-width:900px){
  .site-header .brand img{width:66px;height:66px}
  .site-header{height:76px}
  nav{top:76px}
  #mainNav .nav-link{padding:13px 14px}
  #mainNav .nav-link::after{left:18px;right:auto;width:34px;bottom:8px}
}
@media(max-width:720px){
  .site-header .brand img{width:58px;height:58px}
  .site-header .brand strong{font-size:12px}
  .site-header .brand span{font-size:8px}
  .hero-logo-chip{width:190px;height:78px}
}
@media(prefers-reduced-motion:reduce){
  .hero-logo-chip,.site-header .brand img{animation:none!important}
  #mainNav .nav-link,.primary,.secondary,.cart-button,.chip,.card-actions button,.kit-body button{transition:none!important}
}

.nav-link{overflow:hidden}.nav-ripple{position:absolute;width:10px;height:10px;border-radius:50%;pointer-events:none;background:rgba(255,255,255,.38);transform:translate(-50%,-50%) scale(0);animation:navRipple .52s ease-out forwards;z-index:3}.nav-link:not(.active) .nav-ripple{background:rgba(8,114,201,.12)}@keyframes navRipple{to{transform:translate(-50%,-50%) scale(18);opacity:0}}
.reveal[data-reveal-ready="1"]{transition-delay:var(--reveal-delay,0ms)}


/* Admin-uploaded media galleries */
.media-gallery{margin:12px 0 14px}
.media-strip{display:flex;gap:10px;overflow-x:auto;padding:3px 2px 9px;scroll-snap-type:x proximity;scrollbar-width:thin}
.media-strip img{width:150px;height:105px;flex:0 0 150px;object-fit:cover;border-radius:10px;border:1px solid rgba(31,55,80,.12);scroll-snap-align:start;background:#f5f8fb}
.media-pdf-link{display:inline-flex;align-items:center;gap:6px;margin-top:3px;padding:8px 11px;border-radius:9px;background:#edf4fa;color:#1d4f78;font-size:12px;font-weight:800;text-decoration:none}
.media-pdf-link:hover{background:#e1edf7}
.product-detail .media-gallery{margin-top:12px}
.product-detail .media-strip img{width:180px;height:125px;flex-basis:180px}
@media(max-width:600px){.media-strip img{width:125px;height:90px;flex-basis:125px}}

.media-pdf-frame{width:100%;height:360px;border:1px solid rgba(31,55,80,.12);border-radius:10px;margin:6px 0 8px;background:#fff}

/* Professional media interaction polish */
.media-gallery{display:grid;gap:10px}
.media-main-wrap{position:relative;overflow:hidden;border:1px solid rgba(31,55,80,.12);border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(18,45,72,.06)}
.media-main-image{display:block;width:100%;height:clamp(220px,32vw,390px);object-fit:contain;background:#fff;transition:transform .22s ease,opacity .22s ease}
.media-main-image.media-swap{animation:mediaSwap .28s ease}
@keyframes mediaSwap{0%{opacity:.35;transform:scale(.985)}100%{opacity:1;transform:scale(1)}}
.media-strip{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity;scrollbar-width:thin}
.media-thumb{appearance:none;border:1px solid rgba(31,55,80,.12);background:#fff;padding:0;border-radius:11px;overflow:hidden;width:92px;height:70px;flex:0 0 92px;cursor:pointer;scroll-snap-align:start;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.media-thumb:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(18,45,72,.10)}
.media-thumb.active{border-color:#0786d1;box-shadow:0 0 0 3px rgba(7,134,209,.12)}
.media-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.product-detail .media-main-image{height:315px}
.product-detail .media-thumb{width:88px;height:66px;flex-basis:88px}
.media-pdf-link,.media-pdf-inline{appearance:none;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 13px;border-radius:10px;background:#edf5fb;color:#12547f;font:800 12px/1 inherit;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.media-pdf-link:hover,.media-pdf-inline:hover{transform:translateY(-1px);background:#e1eef8;box-shadow:0 8px 18px rgba(18,84,127,.10)}
.pdf-icon,.pdf-badge{display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:900;letter-spacing:.04em;border-radius:5px;padding:3px 5px;background:#dcecf8;color:#0b5f91}
.media-pdf-inline{margin-top:-4px;background:#fff;border:1px solid #dbe7f0}
.media-pdf-frame{display:none}
.media-lightbox{position:fixed;inset:0;z-index:100;background:rgba(4,12,26,.78);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:18px}
.media-lightbox.open{display:flex;animation:lightboxIn .2s ease}
.media-lightbox-panel{position:relative;width:min(1100px,96vw);height:min(88vh,820px);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.35);display:flex;flex-direction:column}
.media-lightbox-head{display:flex;align-items:center;gap:9px;padding:12px 52px 12px 16px;border-bottom:1px solid #e6edf3;font-size:13px;color:#1c3047}
.media-lightbox-panel iframe{width:100%;height:100%;border:0;background:#f4f7fa}
.media-lightbox-close{z-index:2;right:10px;top:9px}
body.media-lightbox-open{overflow:hidden}
@keyframes lightboxIn{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
.add-animated{position:relative;overflow:hidden;transition:transform .16s ease,box-shadow .18s ease}
.add-animated:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,122,204,.22)}
.add-animated:active{transform:translateY(1px) scale(.98)}
.add-animated::after{content:"";position:absolute;inset:-40% auto -40% -30%;width:30%;transform:skewX(-18deg) translateX(-180%);background:rgba(255,255,255,.32);transition:transform .55s ease}
.add-animated:hover::after{transform:skewX(-18deg) translateX(500%)}
@media(max-width:600px){.product-detail .media-main-image{height:245px}.media-main-image{height:260px}.media-thumb{width:78px;height:60px;flex-basis:78px}.media-lightbox{padding:8px}.media-lightbox-panel{height:92vh;border-radius:14px}}
@media(prefers-reduced-motion:reduce){.media-main-image,.media-thumb,.media-pdf-link,.media-pdf-inline,.add-animated{transition:none}.media-main-image.media-swap,.media-lightbox.open{animation:none}.add-animated::after{display:none}}

/* Image frame refinement — clean, consistent catalogue presentation */
.kit-card > img,
.practical-card > img,
.project-card > img{
  display:block;
  width:100%;
  height:250px;
  padding:10px 12px;
  object-fit:contain;
  background:linear-gradient(180deg,#fbfdff 0%,#f6f9fc 100%);
  border:0;
  border-bottom:1px solid #e3eaf2;
  border-radius:0;
  box-shadow:none;
}

.kit-card .media-main-wrap,
.practical-card .media-main-wrap,
.project-card .media-main-wrap{
  border:1px solid #e2e9f1;
  border-radius:12px;
  background:#fff;
  box-shadow:0 6px 18px rgba(18,45,72,.05);
}

.kit-card .media-main-image,
.practical-card .media-main-image,
.project-card .media-main-image{
  height:210px;
  padding:8px;
  object-fit:contain;
  border-radius:11px;
  background:#fff;
}

.kit-card .media-thumb,
.practical-card .media-thumb,
.project-card .media-thumb{
  border:1px solid #dfe7ef;
  border-radius:10px;
  background:#fff;
  box-shadow:none;
}

.kit-card .media-thumb:hover,
.practical-card .media-thumb:hover,
.project-card .media-thumb:hover{
  border-color:#b8ccdf;
  box-shadow:0 6px 14px rgba(18,45,72,.08);
}

.kit-card .media-thumb.active,
.practical-card .media-thumb.active,
.project-card .media-thumb.active{
  border-color:#0786d1;
  box-shadow:0 0 0 2px rgba(7,134,209,.10);
}

/* ===== V9 PROFESSIONAL VISUAL SYSTEM ===== */
:root{
  --cl-bg:#eef4fa;
  --cl-surface:rgba(255,255,255,.82);
  --cl-surface-strong:#fff;
  --cl-text:#07152f;
  --cl-text-soft:#56677d;
  --cl-primary:#086fc7;
  --cl-primary-2:#08b2df;
  --cl-accent:#ff7b19;
  --cl-border:rgba(126,151,178,.22);
  --cl-ease:cubic-bezier(.2,.75,.2,1);
}
body{background:var(--cl-bg);color:var(--cl-text)}
body:after{background:linear-gradient(135deg,#f7fbff 0%,#eef5fb 45%,#fdf7f2 100%);opacity:1}
body:before{background:radial-gradient(circle at 8% 8%,rgba(8,178,223,.14),transparent 25%),radial-gradient(circle at 92% 18%,rgba(255,123,25,.11),transparent 23%),radial-gradient(circle at 52% 94%,rgba(8,111,199,.09),transparent 28%);animation:premiumAmbient 22s ease-in-out infinite alternate}
.site-header{background:rgba(255,255,255,.76);border-bottom-color:rgba(126,151,178,.18);box-shadow:0 4px 24px rgba(7,21,47,.04)}
.site-header.scrolled{box-shadow:0 14px 40px rgba(7,21,47,.10)}
.brand img{filter:drop-shadow(0 8px 12px rgba(8,111,199,.12));animation:logoFloat 5s ease-in-out infinite}
nav a{position:relative;overflow:hidden;transition:transform .25s var(--cl-ease),background .25s,color .25s,box-shadow .25s}
nav a:hover{transform:translateY(-2px)}
nav a.active{background:linear-gradient(135deg,#07152f,#12345b);box-shadow:0 10px 24px rgba(7,21,47,.16)}
nav a.tab-link.active{background:linear-gradient(135deg,#086fc7,#08b2df);box-shadow:0 10px 24px rgba(8,111,199,.22)}
.hero{background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(245,251,255,.92) 55%,rgba(234,245,255,.9));border-bottom:1px solid rgba(126,151,178,.14)}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(8,111,199,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(8,111,199,.035) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 90%);pointer-events:none}
.hero h1{animation:heroTextIn .9s var(--cl-ease) both}
.hero-text{color:var(--cl-text-soft)}
.hero-art{border:1px solid rgba(255,255,255,.7);box-shadow:0 28px 90px rgba(7,21,47,.17);transition:transform .5s var(--cl-ease),box-shadow .5s}
.hero-art:hover{transform:translateY(-6px) rotate(.2deg);box-shadow:0 34px 100px rgba(7,21,47,.22)}
.primary,.secondary,.cart-button,.card-actions button,.kit-body button,.project-card button{position:relative;overflow:hidden;transition:transform .28s var(--cl-ease),box-shadow .28s,filter .28s,background .28s}
.primary{background:linear-gradient(135deg,#075fae,#08b2df);box-shadow:0 14px 30px rgba(8,111,199,.22)}
.primary:hover{box-shadow:0 18px 38px rgba(8,111,199,.28);filter:saturate(1.12)}
.secondary{background:rgba(255,255,255,.9);border-color:rgba(126,151,178,.25)}
.cart-button{background:linear-gradient(135deg,#07152f,#12345b)}
.primary:after,.secondary:after,.cart-button:after,.card-actions button:after,.kit-body button:after,.project-card button:after{content:"";position:absolute;top:-80%;left:-35%;width:22%;height:260%;transform:skewX(-20deg) translateX(-180%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transition:transform .75s var(--cl-ease);pointer-events:none}
.primary:hover:after,.secondary:hover:after,.cart-button:hover:after,.card-actions button:hover:after,.kit-body button:hover:after,.project-card button:hover:after{transform:skewX(-20deg) translateX(700%)}
.product-card,.kit-card,.practical-card,.project-card{border-color:var(--cl-border);box-shadow:0 10px 30px rgba(7,21,47,.045);transition:transform .35s var(--cl-ease),box-shadow .35s,border-color .35s}
.product-card:hover,.kit-card:hover,.practical-card:hover,.project-card:hover{transform:translateY(-8px);box-shadow:0 24px 55px rgba(7,21,47,.13);border-color:rgba(8,111,199,.22)}
.chip{transition:transform .25s var(--cl-ease),background .25s,color .25s,border-color .25s,box-shadow .25s}.chip:hover{transform:translateY(-2px)}.chip.active{background:linear-gradient(135deg,#07152f,#12345b);box-shadow:0 8px 20px rgba(7,21,47,.13)}
.quote-strip{box-shadow:inset 0 1px rgba(255,255,255,.08),inset 0 -1px rgba(0,0,0,.08)}
.innovation-wall{box-shadow:0 30px 80px rgba(7,21,47,.20);animation:wallBreath 8s ease-in-out infinite alternate}
.reveal{opacity:0;transform:translateY(28px) scale(.985);filter:blur(2px);transition:opacity .8s var(--cl-ease),transform .8s var(--cl-ease),filter .8s var(--cl-ease)}
.reveal.visible{opacity:1;transform:none;filter:none}
.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}
@keyframes premiumAmbient{from{transform:scale(1) translate3d(0,0,0)}to{transform:scale(1.06) translate3d(1.5%,-1%,0)}}
@keyframes logoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes heroTextIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes wallBreath{from{transform:translateY(0)}to{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){body:before,.brand img,.innovation-wall,.hero h1{animation:none}.reveal{transition:none;filter:none}.primary:after,.secondary:after,.cart-button:after,.card-actions button:after,.kit-body button:after,.project-card button:after{display:none}}

/* V10 — Professional catalogue media system */
.catalogue-media{margin:-2px -2px 14px}
.media-gallery{gap:9px;margin:0}
.media-main-wrap{position:relative;border-radius:16px;border:1px solid #dce7f0;background:linear-gradient(145deg,#ffffff,#f5f9fc);box-shadow:0 14px 34px rgba(17,45,72,.08);overflow:hidden}
.media-main-open{display:block;width:100%;padding:0;border:0;border-radius:inherit;background:transparent;cursor:zoom-in;box-shadow:none!important;transform:none!important}
.media-main-open:hover{filter:none!important;transform:none!important}
.media-main-image{height:230px;padding:12px;object-fit:contain;background:linear-gradient(180deg,#ffffff,#f7fafc);transition:transform .35s cubic-bezier(.2,.75,.2,1),opacity .22s ease}
.media-main-open:hover .media-main-image{transform:scale(1.025)}
.media-count{position:absolute;right:10px;top:10px;padding:6px 9px;border-radius:999px;background:rgba(7,21,47,.82);color:#fff;font:800 10px/1 Inter,system-ui,sans-serif;letter-spacing:.03em;backdrop-filter:blur(8px)}
.media-strip{gap:8px;padding:1px 2px 4px}
.media-thumb{width:70px;height:54px;flex-basis:70px;border-radius:9px;background:#fff;box-shadow:0 4px 12px rgba(17,45,72,.06)}
.media-thumb.active{border-color:#087bc7;box-shadow:0 0 0 3px rgba(8,123,199,.12),0 5px 14px rgba(17,45,72,.08)}
.media-actions-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.media-pdf-link,.media-pdf-inline{min-height:34px;padding:8px 11px;border-radius:9px;font-size:11px}
.media-pdf-link{background:linear-gradient(135deg,#0a6fbe,#0786d1);color:#fff;box-shadow:0 7px 18px rgba(8,111,199,.16)}
.media-pdf-link:hover{background:linear-gradient(135deg,#095f9f,#087bc7);color:#fff}
.media-pdf-inline{border:1px solid #dbe6ef;background:#fff;color:#274b67}
.pdf-icon,.pdf-badge{background:#fff;color:#b42318;border:1px solid rgba(180,35,24,.12)}
.image-lightbox-panel{background:#07152f}
.image-lightbox-panel .media-lightbox-head{color:#fff;border-bottom-color:rgba(255,255,255,.12)}
.image-badge{background:#fff;color:#087bc7}
.image-preview-stage{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;padding:20px;background:radial-gradient(circle at center,rgba(8,178,223,.12),transparent 55%)}
.image-preview-stage img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.28);background:#fff}
.product-card .product-body,.kit-card .kit-body,.practical-card .practical-body,.project-card .project-body{padding-top:0}
@media(min-width:1100px){.media-main-image{height:245px}}
@media(max-width:600px){.media-main-image{height:220px}.media-thumb{width:64px;height:50px;flex-basis:64px}.media-count{font-size:9px;padding:5px 8px}}
@media(prefers-reduced-motion:reduce){.media-main-open .media-main-image{transition:none}.media-main-open:hover .media-main-image{transform:none}}

/* Hero artwork removed: keep the upper hero focused on the learning message. */
.hero{grid-template-columns:1fr;min-height:540px}.hero-copy{max-width:980px}

/* === REPOSITIONED PUBLIC QUOTES === */
.quote-gallery-new{margin:0 5% 48px;padding:0;background:transparent;color:var(--ink);overflow:visible}
.quote-gallery-new:before{display:none}
.quote-feature{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.45fr);gap:28px;align-items:stretch}
.quote-feature-copy{padding:38px 10px 38px 0;display:flex;flex-direction:column;justify-content:center}
.quote-feature-copy h2{font:700 clamp(34px,4.3vw,58px)/1.02 "Space Grotesk",sans-serif;margin:10px 0 15px;letter-spacing:-.045em;color:var(--ink)}
.quote-feature-copy h2 span{color:var(--orange)}
.quote-feature-copy>p{color:var(--muted);max-width:560px;line-height:1.7}
.quote-live-card{margin-top:24px;padding:24px;border-radius:22px;background:linear-gradient(145deg,#07152f,#0a71c9);color:#fff;box-shadow:0 20px 50px rgba(7,21,47,.16);position:relative;overflow:hidden}
.quote-live-card:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-60px;top:-65px;background:rgba(255,255,255,.08)}
.quote-live-label{font-size:9px;letter-spacing:.18em;font-weight:900;color:#8fe7ff}
.quote-live-card .innovation-quote{margin:16px 0 12px;font-size:clamp(21px,2.5vw,32px);max-width:100%;min-height:82px}
.quote-live-card .innovation-author{font-size:12px;font-weight:800;color:rgba(255,255,255,.75)}
.quote-feature-wall{border-radius:28px;padding:28px;background:#07152f;box-shadow:0 20px 55px rgba(7,21,47,.14);min-width:0}
.quote-feature-wall .quote-mosaic{margin:0;grid-template-columns:repeat(12,1fr);gap:12px}
.quote-feature-wall .quote-card{min-height:180px;padding:22px;border-radius:18px}
.quote-feature-wall .quote-card:nth-child(1){grid-column:span 7;min-height:230px}
.quote-feature-wall .quote-card:nth-child(2){grid-column:span 5}
.quote-feature-wall .quote-card:nth-child(3),.quote-feature-wall .quote-card:nth-child(4){grid-column:span 6}
.quote-feature-wall .quote-card:nth-child(n+5){grid-column:span 4}
.quote-feature-wall .quote-progress{margin:18px auto 0}
@media(max-width:900px){
  .quote-feature{grid-template-columns:1fr}
  .quote-feature-copy{padding:20px 0 0}
  .quote-feature-wall{padding:18px}
}
@media(max-width:620px){
  .quote-gallery-new{margin-left:4%;margin-right:4%}
  .quote-feature-wall .quote-mosaic{grid-template-columns:1fr}
  .quote-feature-wall .quote-card,.quote-feature-wall .quote-card:nth-child(n){grid-column:1;min-height:180px}
}

/* === PROFESSIONAL PUBLIC QUOTE WALL === */
.quote-gallery-new{
  margin:20px 5% 64px;
  padding:0;
}
.quote-feature{gap:34px;align-items:stretch}
.quote-feature-copy{padding:52px 8px 52px 0}
.quote-feature-copy h2{font-weight:800}
.quote-feature-copy>p{font-size:15px;color:#66758c;line-height:1.8}
.quote-live-card{
  background:linear-gradient(135deg,#f7fbff 0%,#edf5fb 100%);
  color:#10233f;
  border:1px solid #d8e6f1;
  box-shadow:0 18px 42px rgba(16,35,63,.10);
}
.quote-live-card:after{background:rgba(22,129,183,.10)}
.quote-live-label{color:#0b83b4}
.quote-live-card .innovation-quote{color:#10233f;font-weight:700}
.quote-live-card .innovation-author{color:#60738c}
.quote-feature-wall{
  border-radius:30px;
  padding:24px;
  background:linear-gradient(145deg,#f5f9fc,#e8f0f6);
  border:1px solid #d7e4ee;
  box-shadow:0 22px 60px rgba(16,35,63,.10);
}
.quote-feature-wall .quote-mosaic{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:88px;
  grid-auto-flow:dense;
  gap:13px;
}
.quote-feature-wall .quote-card{
  min-height:0;
  padding:22px;
  border-radius:20px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(20,52,82,.10);
  box-shadow:0 10px 26px rgba(20,52,82,.08);
  color:#142b48;
  animation:quotePublicIn .65s cubic-bezier(.2,.8,.2,1) var(--quote-delay,0ms) both;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.quote-feature-wall .quote-card:after{
  content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-46px;bottom:-58px;background:rgba(255,255,255,.50);
}
.quote-feature-wall .quote-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(20,52,82,.14);border-color:rgba(20,52,82,.18)}
.quote-feature-wall .quote-card .quote-index{color:#087da9;font-size:9px;letter-spacing:.16em;font-weight:900}
.quote-feature-wall .quote-card p{color:#18314f;font:650 clamp(17px,1.55vw,23px)/1.3 "Manrope",sans-serif;letter-spacing:-.02em;margin:16px 0 14px;max-width:92%;position:relative;z-index:1}
.quote-feature-wall .quote-card small{color:#65778d;font-size:10px;letter-spacing:.11em;font-weight:900;text-transform:uppercase;position:relative;z-index:1}
.quote-card--wide{grid-column:span 7;grid-row:span 2}
.quote-card--tall{grid-column:span 5;grid-row:span 3}
.quote-card--compact{grid-column:span 4;grid-row:span 2}
.quote-card--medium{grid-column:span 5;grid-row:span 2}
.quote-card--feature{grid-column:span 8;grid-row:span 3}
.quote-tone-1{background:linear-gradient(145deg,#ffffff,#edf6fb)}
.quote-tone-2{background:linear-gradient(145deg,#f3f8ff,#e6f0fb)}
.quote-tone-3{background:linear-gradient(145deg,#fffaf2,#f8eee0)}
.quote-tone-4{background:linear-gradient(145deg,#f4fbf8,#e5f3ee)}
.quote-tone-5{background:linear-gradient(145deg,#faf7ff,#eeeafb)}
.quote-tone-6{background:linear-gradient(145deg,#f5f8fa,#e9eef2)}
@keyframes quotePublicIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .quote-feature-wall .quote-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:110px}
  .quote-card--wide,.quote-card--tall,.quote-card--compact,.quote-card--medium,.quote-card--feature{grid-column:span 1;grid-row:span 2}
  .quote-card--feature{grid-row:span 3}
}
@media(max-width:620px){
  .quote-feature-wall{padding:15px;border-radius:22px}
  .quote-feature-wall .quote-mosaic{grid-template-columns:1fr;grid-auto-rows:auto;gap:11px}
  .quote-feature-wall .quote-card,.quote-card--wide,.quote-card--tall,.quote-card--compact,.quote-card--medium,.quote-card--feature{grid-column:1;grid-row:auto;min-height:175px}
  .quote-feature-copy{padding-top:25px}
}

/* === DISTRIBUTED PUBLIC QUOTE MOMENTS === */
.quote-gallery-anchor{
  margin:34px 5% 56px;
  padding:0;
  background:transparent;
  color:var(--ink);
  overflow:visible;
}
.quote-gallery-anchor:before{display:none}
.quote-hub-intro{
  max-width:880px;
  margin:0 auto;
  text-align:center;
  padding:46px 30px 20px;
}
.quote-hub-intro h2{
  margin:10px 0 14px;
  font:800 clamp(34px,4.5vw,58px)/1.02 "Space Grotesk",sans-serif;
  letter-spacing:-.05em;
  color:#0b1d38;
}
.quote-hub-intro h2 span{color:#f47721}
.quote-hub-intro p{max-width:650px;margin:0 auto;color:#687b91;line-height:1.8;font-size:15px}
.quote-hub-line{height:2px;width:130px;margin:24px auto 0;background:#dce7ef;overflow:hidden;border-radius:99px}
.quote-hub-line span{display:block;width:46px;height:100%;background:#f47721;margin-left:0}

.public-quote-moment{
  position:relative;
  margin:28px 5% 34px;
  padding:34px 42px;
  min-height:170px;
  display:flex;
  align-items:center;
  gap:24px;
  border-radius:26px;
  overflow:hidden;
  border:1px solid rgba(19,48,78,.10);
  box-shadow:0 18px 45px rgba(17,43,70,.09);
  isolation:isolate;
  transition:transform .28s ease,box-shadow .28s ease;
}
.public-quote-moment:hover{transform:translateY(-4px);box-shadow:0 25px 58px rgba(17,43,70,.13)}
.quote-moment--left{margin-right:17%}
.quote-moment--right{margin-left:17%}
.quote-moment--offset{min-height:190px}
.quote-moment--split{padding-left:62px}
.quote-moment--compact{max-width:860px}
.quote-moment-number{
  position:absolute;
  z-index:3;
  font:900 10px/1 "Space Grotesk",sans-serif;
  letter-spacing:.16em;
  color:currentColor;
  opacity:.42;
}
.quote-number--top{top:20px;right:24px}
.quote-number--side{left:24px;top:50%;transform:rotate(-90deg) translateX(-50%);transform-origin:left top}
.quote-number--bottom{right:28px;bottom:20px}
.quote-number--corner{left:26px;bottom:22px}
.quote-moment-mark{
  flex:0 0 auto;
  font:700 74px/.7 "Space Grotesk",sans-serif;
  opacity:.16;
  align-self:flex-start;
  margin-top:10px;
}
.quote-moment-copy{position:relative;z-index:2;max-width:900px;padding-right:24px}
.quote-moment-kicker{
  display:block;
  margin-bottom:11px;
  font-size:9px;
  letter-spacing:.2em;
  font-weight:900;
  text-transform:uppercase;
}
.quote-moment-copy p{
  margin:0 0 13px;
  font:650 clamp(22px,2.35vw,35px)/1.18 "Manrope",sans-serif;
  letter-spacing:-.035em;
  max-width:850px;
}
.quote-moment-author{
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:900;
  opacity:.68;
}
.quote-moment-accent{
  position:absolute;
  width:180px;height:180px;border-radius:50%;
  right:-70px;bottom:-85px;
  opacity:.65;
  z-index:0;
}
.quote-moment--blue{background:linear-gradient(135deg,#f5fbff,#e5f2fa);color:#102a46}
.quote-moment--blue .quote-moment-kicker{color:#087da9}
.quote-moment--blue .quote-moment-accent{background:#b9e5f4}
.quote-moment--orange{background:linear-gradient(135deg,#fffaf4,#f9ead9);color:#342314}
.quote-moment--orange .quote-moment-kicker{color:#d95f0b}
.quote-moment--orange .quote-moment-accent{background:#ffd2a8}
.quote-moment--mint{background:linear-gradient(135deg,#f5fbf8,#e3f1ea);color:#173a31}
.quote-moment--mint .quote-moment-kicker{color:#16826b}
.quote-moment--mint .quote-moment-accent{background:#bde2d3}
.quote-moment--sand{background:linear-gradient(135deg,#fffdf7,#f5efe0);color:#3a3428}
.quote-moment--sand .quote-moment-kicker{color:#9a7129}
.quote-moment--sand .quote-moment-accent{background:#ead8a9}
.quote-moment--ink{background:linear-gradient(135deg,#11233c,#183a5d);color:#fff;border-color:rgba(255,255,255,.08)}
.quote-moment--ink .quote-moment-kicker{color:#8fe7ff}
.quote-moment--ink .quote-moment-author{color:#d5e1ed}
.quote-moment--ink .quote-moment-accent{background:#245b86}
.quote-moment--paper{background:#fff;color:#18314f;border-left:5px solid #087da9}
.quote-moment--paper .quote-moment-kicker{color:#087da9}
.quote-moment--paper .quote-moment-accent{background:#e8f1f7}
@media(max-width:900px){
  .public-quote-moment,.quote-moment--left,.quote-moment--right{margin-left:5%;margin-right:5%}
  .public-quote-moment{padding:30px 28px}
}
@media(max-width:620px){
  .quote-hub-intro{padding:30px 10px 10px}
  .public-quote-moment{min-height:150px;padding:25px 22px;gap:14px;border-radius:20px}
  .quote-moment-mark{font-size:52px}
  .quote-moment-copy p{font-size:20px}
  .quote-moment--split{padding-left:22px}
}

/* Public quote reliability / final presentation */
.quote-gallery-new.quotes-ready{min-height:120px;display:block;visibility:visible;opacity:1}
.quote-gallery-new .quote-hub-intro{display:block;visibility:visible;opacity:1}
.public-quote-moment{opacity:1!important;visibility:visible!important;display:flex!important}
.quotes-empty-public{margin:20px auto 40px;max-width:1000px;padding:34px;border:1px solid #dbe6ef;border-radius:24px;background:#f7fbff;color:#536b82;text-align:center}
.quote-moment--wide{max-width:1100px}
.quote-moment--offset{max-width:960px}
.quote-moment--split{max-width:1040px}
.quote-moment--compact{max-width:820px}

/* KIT / PROJECT IMAGE BORDER — match the product catalogue frame exactly */
.kit-card .media-main-wrap,
.project-card .media-main-wrap{
  position:relative;
  border:1px solid #dce7f0;
  border-radius:16px;
  background:linear-gradient(145deg,#ffffff,#f5f9fc);
  box-shadow:0 14px 34px rgba(17,45,72,.08);
  padding:0;
  overflow:hidden;
}

.kit-card .media-main-image,
.project-card .media-main-image{
  display:block;
  width:100%;
  height:230px;
  border:0;
  border-radius:inherit;
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  padding:12px;
  object-fit:contain;
}

.kit-card .media-main-wrap::after,
.project-card .media-main-wrap::after{
  display:none;
}

.kit-card .media-thumb,
.project-card .media-thumb{
  border:1px solid #dfe7ef;
  border-radius:9px;
  background:#fff;
  box-shadow:0 4px 12px rgba(17,45,72,.06);
  box-shadow:0 3px 9px rgba(11,31,58,.06);
}

.kit-card .media-thumb.active,
.project-card .media-thumb.active{
  border-color:#087bc7;
  box-shadow:0 0 0 2px rgba(8,123,199,.14),0 5px 12px rgba(11,31,58,.08);
}

/* Final: make Project/KIT image frames match the Product image frame exactly */
.kit-card .media-main-wrap,
.project-card .media-main-wrap,
.practical-card .media-main-wrap{
  position:relative;
  width:100%;
  border:1px solid #dce7f0;
  border-radius:16px;
  background:linear-gradient(145deg,#ffffff,#f5f9fc);
  box-shadow:0 14px 34px rgba(17,45,72,.08);
  overflow:hidden;
  padding:0;
}
.kit-card .media-main-open,
.project-card .media-main-open,
.practical-card .media-main-open{
  display:block;
  width:100%;
  padding:0;
  border:0;
  border-radius:inherit;
  background:transparent;
  box-shadow:none!important;
}
.kit-card .media-main-image,
.project-card .media-main-image,
.practical-card .media-main-image{
  display:block;
  width:100%;
  height:230px;
  padding:12px;
  object-fit:contain;
  border:0;
  border-radius:inherit;
  background:linear-gradient(180deg,#ffffff,#f7fafc);
}
.kit-card .media-main-wrap::after,
.project-card .media-main-wrap::after,
.practical-card .media-main-wrap::after{display:none}
.kit-card .media-thumb,
.project-card .media-thumb,
.practical-card .media-thumb{
  border:1px solid #dfe7ef;
  border-radius:9px;
  background:#fff;
  box-shadow:0 4px 12px rgba(17,45,72,.06);
}
.kit-card .media-thumb.active,
.project-card .media-thumb.active,
.practical-card .media-thumb.active{
  border-color:#087bc7;
  box-shadow:0 0 0 3px rgba(8,123,199,.12),0 5px 14px rgba(17,45,72,.08);
}

/* === HERO BRAND SHOWCASE === */
.hero{
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
  gap:42px;
  min-height:540px;
}
.hero-copy{max-width:720px}
.hero-brand-showcase{
  min-height:420px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  isolation:isolate;
}
.hero-brand-orbit{
  position:absolute;
  width:410px;
  height:410px;
  border-radius:50%;
  background:
    radial-gradient(circle at 35% 28%,rgba(8,168,223,.16),transparent 45%),
    radial-gradient(circle at 72% 72%,rgba(255,126,26,.12),transparent 48%);
  filter:blur(2px);
  animation:heroBrandGlow 7s ease-in-out infinite;
}
.hero-brand-panel{
  position:relative;
  z-index:2;
  width:min(540px,100%);
  min-height:390px;
  padding:34px 42px 30px;
  border:1px solid rgba(255,255,255,.78);
  border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(245,250,253,.68));
  box-shadow:0 28px 70px rgba(7,21,47,.13),inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}
.hero-brand-panel:before{
  content:"";
  position:absolute;
  width:210px;height:210px;
  right:-95px;bottom:-110px;
  border-radius:50%;
  background:rgba(8,168,223,.11);
}
.hero-brand-panel:after{
  content:"";
  position:absolute;
  width:160px;height:160px;
  left:-100px;top:-85px;
  border-radius:50%;
  background:rgba(255,126,26,.08);
}
.hero-brand-kicker{
  position:relative;
  z-index:1;
  margin-bottom:8px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.25em;
  color:var(--blue2);
}
.hero-brand-panel img{
  position:relative;
  z-index:1;
  width:min(455px,100%);
  max-height:300px;
  object-fit:contain;
  filter:drop-shadow(0 18px 24px rgba(7,21,47,.12));
  transition:transform .7s cubic-bezier(.22,.8,.24,1),filter .7s ease;
}
.hero-brand-panel:hover img{
  transform:translateY(-4px) scale(1.018);
  filter:drop-shadow(0 24px 30px rgba(7,21,47,.16));
}
.hero-brand-panel p{
  position:relative;
  z-index:1;
  margin:4px 0 0;
  font-size:13px;
  font-weight:800;
  letter-spacing:.08em;
  color:#50647b;
}

.hero-brand-quote{
  position:relative;
  z-index:3;
  width:min(430px,100%);
  margin:18px auto 0;
  padding:14px 18px 13px;
  border:1px solid rgba(8,114,201,.12);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(238,248,255,.72));
  box-shadow:0 12px 28px rgba(7,21,47,.08),inset 0 1px 0 rgba(255,255,255,.95);
  text-align:left;
  backdrop-filter:blur(10px);
}
.hero-brand-quote-mark{
  position:absolute;
  left:12px;
  top:5px;
  font:700 34px/1 Georgia,serif;
  color:rgba(8,114,201,.16);
}
.hero-brand-quote p{
  margin:0 0 7px;
  padding-left:22px;
  font:700 clamp(12px,1.2vw,15px)/1.35 "Space Grotesk",sans-serif;
  letter-spacing:-.015em;
  color:#18314f;
}
.hero-brand-quote small{
  display:block;
  padding-left:22px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#6a7d92;
}
.hero-brand-quote.is-updating{animation:heroQuoteSwap .45s ease both}
@keyframes heroQuoteSwap{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes heroBrandGlow{
  0%,100%{transform:scale(.96);opacity:.78}
  50%{transform:scale(1.04);opacity:1}
}
@media(max-width:1180px){
  .hero{grid-template-columns:1fr;min-height:540px}
  .hero-copy{max-width:980px}
  .hero-brand-showcase{min-height:360px}
}
@media(max-width:720px){
  .hero-brand-showcase{min-height:300px}
  .hero-brand-panel{min-height:285px;padding:24px 20px;border-radius:26px}
  .hero-brand-orbit{width:290px;height:290px}
  .hero-brand-panel img{max-height:205px}
  .hero-brand-panel p{font-size:10px}
  .hero-brand-quote{margin-top:14px;padding:12px 14px}
  .hero-brand-quote p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  .hero-brand-orbit,.hero-brand-panel img{animation:none!important;transition:none!important}
}

/* === Final professional navigation polish === */
.site-header{
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(207,221,236,.75);
  box-shadow:0 8px 28px rgba(7,21,47,.045);
}
#mainNav{
  gap:6px;
  padding:5px;
  border-radius:16px;
  background:rgba(247,250,253,.72);
  border:1px solid rgba(219,229,239,.8);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(12px);
}
#mainNav .nav-link{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 13px;
  border-radius:11px;
  color:#10233f;
  background:transparent;
  font-size:12px;
  font-weight:800;
  letter-spacing:.01em;
  transition:color .3s cubic-bezier(.22,1,.36,1),background .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1),transform .3s cubic-bezier(.22,1,.36,1);
}
#mainNav .nav-link::before{
  content:"";
  position:absolute;
  inset:2px;
  border-radius:10px;
  background:linear-gradient(135deg,rgba(8,114,201,.10),rgba(8,168,223,.04));
  opacity:0;
  transform:scale(.92);
  transition:opacity .3s ease,transform .3s ease;
  z-index:-1;
}
#mainNav .nav-link::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:5px;
  width:22px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#0872c9,#08a8df);
  transform:translateX(-50%) scaleX(0);
  transform-origin:center;
  transition:transform .32s cubic-bezier(.22,1,.36,1);
}
#mainNav .nav-link:hover{
  color:#0872c9;
  transform:translateY(-2px);
  background:rgba(255,255,255,.92);
  box-shadow:0 8px 20px rgba(7,21,47,.07);
}
#mainNav .nav-link:hover::before{opacity:1;transform:scale(1)}
#mainNav .nav-link:hover::after{transform:translateX(-50%) scaleX(1)}
#mainNav .nav-link.active{
  color:#fff;
  background:linear-gradient(135deg,#0a2547 0%,#0b4e80 100%);
  box-shadow:0 9px 22px rgba(7,21,47,.18),inset 0 1px 0 rgba(255,255,255,.12);
  transform:translateY(-1px);
}
#mainNav .nav-link.active::before{display:none}
#mainNav .nav-link.active::after{
  width:20px;
  background:#ff8a2b;
  transform:translateX(-50%) scaleX(1);
}
#mainNav .nav-link.active:hover{
  background:linear-gradient(135deg,#0d3159 0%,#0a6fae 100%);
  transform:translateY(-3px);
  box-shadow:0 13px 28px rgba(7,21,47,.22);
}
#mainNav .nav-link.tab-link{color:#0872a8;background:transparent}
#mainNav .nav-link.tab-link.active{color:#fff;background:linear-gradient(135deg,#087fbe,#075e9e)}

.header-contact-actions .header-contact.gmail{
  width:38px;height:38px;border-radius:12px;
  background:linear-gradient(180deg,#fff,#f7fafc);
  border:1px solid #dfe7ef;
  color:#d44c3e;
  box-shadow:0 7px 18px rgba(7,21,47,.07);
  transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,color .3s ease,background .3s ease;
}
.header-contact-actions .header-contact.gmail:hover{
  transform:translateY(-3px) scale(1.03);
  color:#fff;
  background:linear-gradient(135deg,#e55b4e,#c93c35);
  box-shadow:0 12px 24px rgba(201,60,53,.22);
}
.cart-button{
  min-height:40px;
  padding:9px 12px 9px 14px;
  border-radius:13px;
  background:linear-gradient(135deg,#0a2547,#0a4f80);
  box-shadow:0 9px 22px rgba(7,21,47,.15);
  font-weight:800;
  letter-spacing:.01em;
  transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,background .3s ease;
}
.cart-button:hover{
  background:linear-gradient(135deg,#0d3159,#087fbe);
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(7,21,47,.22);
}
.cart-button span{
  background:linear-gradient(135deg,#ff9a3d,#ff6d17);
  box-shadow:0 3px 9px rgba(255,109,23,.28);
}
.cart-button:active,#mainNav .nav-link:active,.header-contact-actions .header-contact:active{
  transform:translateY(0) scale(.97)!important;
}
@media(max-width:900px){
  #mainNav{padding:10px;border-radius:0;background:#fff;border:0;box-shadow:0 18px 30px rgba(7,21,47,.1)}
  #mainNav .nav-link{justify-content:flex-start;border-radius:12px;min-height:44px}
  #mainNav .nav-link::after{left:18px;transform:scaleX(0);transform-origin:left}
  #mainNav .nav-link:hover::after,#mainNav .nav-link.active::after{transform:scaleX(1)}
}
@media(prefers-reduced-motion:reduce){
  #mainNav .nav-link,.cart-button,.header-contact-actions .header-contact{transition:none!important}
}

/* PUBLIC WEBSITE BUTTON SYSTEM — professional finish */
:root{
  --btn-navy:#071a36;
  --btn-blue:#0b7fc4;
  --btn-cyan:#08a8df;
  --btn-orange:#ff7a18;
  --btn-line:#d9e6f1;
  --btn-soft:#f4f9fd;
  --btn-ease:cubic-bezier(.22,1,.36,1);
}

/* Shared button feel */
#mainNav .nav-link,
.primary,.secondary,.cart-button,
.card-actions button,.kit-body button,
.project-card button,.practical-card button,
.chip,.contact-action,.header-contact,
.close,.qty button,.menu-toggle{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:
    transform .32s var(--btn-ease),
    box-shadow .32s var(--btn-ease),
    background .32s var(--btn-ease),
    border-color .32s var(--btn-ease),
    color .22s ease,
    filter .32s ease;
}

#mainNav .nav-link::after,
.primary::after,.secondary::after,.cart-button::after,
.card-actions button::after,.kit-body button::after,
.project-card button::after,.practical-card button::after,
.chip::after,.contact-action::after,.header-contact::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:42%; height:180%;
  left:-65%; top:-40%;
  transform:skewX(-22deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);
  transition:left .72s var(--btn-ease);
  pointer-events:none;
}
#mainNav .nav-link:hover::after,
.primary:hover::after,.secondary:hover::after,.cart-button:hover::after,
.card-actions button:hover::after,.kit-body button:hover::after,
.project-card button:hover::after,.practical-card button:hover::after,
.chip:hover::after,.contact-action:hover::after,.header-contact:hover::after{left:125%;}

#mainNav .nav-link{
  border:1px solid transparent;
  color:#18304e;
  background:transparent;
  box-shadow:0 0 0 transparent;
}
#mainNav .nav-link:hover{
  transform:translateY(-2px);
  color:var(--btn-blue);
  background:linear-gradient(180deg,#fff,#f2f9fd);
  border-color:#e0edf5;
  box-shadow:0 8px 20px rgba(7,26,54,.08);
}
#mainNav .nav-link.active{
  color:#fff;
  border-color:#10294b;
  background:linear-gradient(135deg,#071a36 0%,#123b68 100%);
  box-shadow:0 10px 24px rgba(7,26,54,.20);
}
#mainNav .nav-link.active:hover{color:#fff;transform:translateY(-2px);}

.primary,.secondary,.cart-button,.card-actions button,.kit-body button,.project-card button,.practical-card button{
  font-weight:850;
  letter-spacing:.01em;
  border-radius:12px;
}
.primary,.card-actions .add,.project-card .primary{
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(135deg,#0872c9 0%,#08a8df 100%);
  box-shadow:0 10px 24px rgba(8,114,201,.20),inset 0 1px 0 rgba(255,255,255,.18);
}
.primary:hover,.card-actions .add:hover,.project-card .primary:hover{
  color:#fff;
  transform:translateY(-3px);
  filter:saturate(1.08) brightness(1.02);
  box-shadow:0 16px 32px rgba(8,114,201,.28),inset 0 1px 0 rgba(255,255,255,.2);
}
.secondary,.card-actions button:not(.add){
  color:var(--btn-navy);
  border:1px solid var(--btn-line);
  background:linear-gradient(180deg,#fff,#f4f9fd);
  box-shadow:0 8px 20px rgba(7,26,54,.07);
}
.secondary:hover,.card-actions button:not(.add):hover{
  color:var(--btn-blue);
  transform:translateY(-3px);
  border-color:#b9d7e9;
  background:linear-gradient(180deg,#fff,#edf8fd);
  box-shadow:0 14px 28px rgba(7,26,54,.11);
}

.kit-body button,.practical-card button:not(.primary),.project-card button:not(.primary){
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(135deg,#071a36,#16416f);
  box-shadow:0 9px 22px rgba(7,26,54,.18),inset 0 1px 0 rgba(255,255,255,.10);
}
.kit-body button:hover,.practical-card button:not(.primary):hover,.project-card button:not(.primary):hover{
  transform:translateY(-3px);
  background:linear-gradient(135deg,#0a2b52,#087fc4);
  box-shadow:0 15px 30px rgba(7,26,54,.24);
}

.cart-button{
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(135deg,#071a36,#123b68);
  box-shadow:0 10px 24px rgba(7,26,54,.18),inset 0 1px 0 rgba(255,255,255,.10);
}
.cart-button:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(7,26,54,.25);}
.cart-button span{
  background:linear-gradient(135deg,#ff9a2e,#ff6b13);
  color:#fff;
  box-shadow:0 4px 10px rgba(255,122,24,.28);
  transition:transform .28s var(--btn-ease);
}
.cart-button:hover span{transform:scale(1.08);}

.chip{
  color:#28435f;
  border:1px solid var(--btn-line);
  background:linear-gradient(180deg,#fff,#f5f9fc);
  box-shadow:0 5px 14px rgba(7,26,54,.05);
}
.chip:hover{transform:translateY(-2px);color:var(--btn-blue);border-color:#b8d7e9;box-shadow:0 10px 20px rgba(7,26,54,.09);}
.chip.active{color:#fff;border-color:#123b68;background:linear-gradient(135deg,#071a36,#0b7fc4);box-shadow:0 10px 22px rgba(7,26,54,.18);}

.contact-action,.header-contact{
  border:1px solid #dbe8f1;
  background:linear-gradient(180deg,#fff,#f4f9fd);
  box-shadow:0 7px 18px rgba(7,26,54,.07);
}
.contact-action:hover,.header-contact:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 13px 25px rgba(7,26,54,.12);}
.header-contact.gmail:hover,.contact-action.email:hover{color:#d64b3f!important;border-color:#f1d1cd;background:#fff8f7;}
.contact-action.whatsapp:hover{border-color:#bce8d0;background:#f5fff9;}
.contact-action.call:hover{border-color:#bfdef2;background:#f5fbff;}

.close,.qty button,.menu-toggle{
  border:1px solid #dbe8f1;
  background:linear-gradient(180deg,#fff,#f2f7fb);
  color:#19314e;
  box-shadow:0 6px 16px rgba(7,26,54,.07);
}
.close:hover,.qty button:hover,.menu-toggle:hover{
  color:#087fc4;
  transform:translateY(-2px);
  border-color:#b8d7e9;
  box-shadow:0 10px 22px rgba(7,26,54,.12);
}
.menu-toggle{background:linear-gradient(135deg,#071a36,#123b68);color:#fff;border-color:#123b68;}
.menu-toggle:hover{color:#fff;background:linear-gradient(135deg,#0a2b52,#087fc4);}

button:focus-visible,
a:focus-visible{
  outline:3px solid rgba(8,168,223,.22);
  outline-offset:3px;
}

.primary:active,.secondary:active,.cart-button:active,
.card-actions button:active,.kit-body button:active,
.project-card button:active,.practical-card button:active,
.chip:active,.contact-action:active,.header-contact:active,
.close:active,.qty button:active,.menu-toggle:active{
  transform:translateY(0) scale(.975)!important;
}

@media(prefers-reduced-motion:reduce){
  #mainNav .nav-link,.primary,.secondary,.cart-button,.card-actions button,
  .kit-body button,.project-card button,.practical-card button,.chip,
  .contact-action,.header-contact,.close,.qty button,.menu-toggle{transition:none!important;}
  #mainNav .nav-link::after,.primary::after,.secondary::after,.cart-button::after,
  .card-actions button::after,.kit-body button::after,.project-card button::after,
  .practical-card button::after,.chip::after,.contact-action::after,.header-contact::after{display:none!important;}
}
