:root{--bg:#071017;--bg2:#0b1720;--panel:#0e1c26;--ink:#eef8fb;--muted:#9fb2bd;--line:rgba(255,255,255,.11);--cyan:#56e6e0;--cyan2:#98fff6;--blue:#55a8ff;--magenta:#e56ccf;--shadow:0 30px 80px rgba(0,0,0,.34);--radius:26px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;overflow-x:hidden}.noise{position:fixed;inset:0;pointer-events:none;opacity:.05;z-index:50;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.site-header{position:fixed;top:0;left:0;right:0;height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,80px);z-index:40;background:linear-gradient(to bottom,rgba(7,16,23,.92),rgba(7,16,23,.68),transparent);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:13px;color:var(--ink);text-decoration:none}.brand-mark{width:43px;height:43px;border:1px solid rgba(86,230,224,.48);border-radius:12px;display:grid;place-items:center;font:700 15px/1 Space Grotesk;background:linear-gradient(145deg,rgba(86,230,224,.18),rgba(85,168,255,.06));box-shadow:0 0 24px rgba(86,230,224,.12)}.brand-copy{display:flex;flex-direction:column;line-height:1.1}.brand-copy strong{font:700 15px Space Grotesk}.brand-copy small{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:4px}.site-nav{display:flex;gap:25px;align-items:center}.site-nav a{color:#cad9df;text-decoration:none;font-size:13px;font-weight:600}.site-nav a:hover{color:white}.nav-cta{padding:10px 16px;border:1px solid rgba(86,230,224,.4);border-radius:999px;background:rgba(86,230,224,.07)}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:white;border-radius:10px;padding:9px 12px}.section-pad{padding:clamp(88px,10vw,150px) clamp(24px,7vw,110px)}.hero{min-height:100vh;display:flex;align-items:center;padding-top:130px;background:radial-gradient(circle at 80% 20%,rgba(85,168,255,.12),transparent 32%),radial-gradient(circle at 72% 58%,rgba(229,108,207,.08),transparent 34%),linear-gradient(180deg,#071017,#08131b 70%,#071017)}.hero-grid{width:100%;max-width:1450px;margin:auto;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,6vw,100px);align-items:center}.eyebrow{display:flex;align-items:center;gap:10px;color:#a9c5cf;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700;margin-bottom:22px}.eyebrow span{width:30px;height:1px;background:linear-gradient(90deg,var(--cyan),var(--blue))}.hero h1,.section-heading h2,.prompt-copy h2,.about-copy h2,.contact-card h2{font-family:Space Grotesk,sans-serif;letter-spacing:-.045em;line-height:.98;margin:0}.hero h1{font-size:clamp(49px,6.3vw,93px);max-width:900px}.hero h1 em,.section-heading h2 em,.prompt-copy h2 em,.about-copy h2 em,.contact-card h2 em{font-style:normal;background:linear-gradient(90deg,var(--cyan2),var(--blue) 55%,#c77ff0);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lede{max-width:760px;color:#afc0c8;font-size:clamp(16px,1.35vw,20px);margin:28px 0 34px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:0 20px;border-radius:12px;text-decoration:none;border:none;font-weight:800;font-size:13px;cursor:pointer;transition:.25s ease}.btn-primary{color:#042125;background:linear-gradient(135deg,var(--cyan2),#6bc6ff);box-shadow:0 10px 34px rgba(86,230,224,.18)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 42px rgba(86,230,224,.28)}.btn-secondary{border:1px solid var(--line);color:#d6e5ea;background:rgba(255,255,255,.03)}.btn-secondary:hover{background:rgba(255,255,255,.07)}.hero-proof{display:flex;gap:35px;margin-top:48px;padding-top:25px;border-top:1px solid var(--line);max-width:700px}.hero-proof div{display:flex;flex-direction:column}.hero-proof strong{font:700 12px Space Grotesk;text-transform:uppercase;letter-spacing:.08em}.hero-proof span{color:#748a95;font-size:11px;margin-top:3px}.hero-visual{min-height:600px;position:relative;display:flex;align-items:center;justify-content:center}.glass{background:linear-gradient(145deg,rgba(19,40,53,.78),rgba(9,23,33,.84));border:1px solid rgba(255,255,255,.11);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.browser-card{width:min(100%,650px);height:390px;border-radius:26px;overflow:hidden;transform:perspective(1300px) rotateY(-7deg) rotateX(3deg);position:relative;z-index:2}.browser-top{height:50px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:7px;padding:0 16px;color:#67818d;font-size:10px}.browser-top i{width:7px;height:7px;border-radius:50%;background:#56717d}.browser-top span{margin-left:8px;border:1px solid rgba(255,255,255,.06);border-radius:7px;padding:5px 10px;flex:1}.browser-body{display:grid;grid-template-columns:68px 1fr;height:340px}.mini-sidebar{border-right:1px solid var(--line);display:flex;flex-direction:column;gap:18px;padding:26px 20px}.mini-sidebar span{width:28px;height:7px;border-radius:20px;background:#36515e}.mini-sidebar .active{background:var(--cyan);box-shadow:0 0 14px rgba(86,230,224,.4)}.mini-page{padding:42px 48px;background:radial-gradient(circle at 70% 20%,rgba(86,230,224,.12),transparent 32%)}.mini-page span{display:block;border-radius:20px}.mini-kicker{width:90px;height:7px;background:#5edbd6;margin-bottom:17px}.mini-title{width:92%;height:18px;background:#e5f2f5;margin-bottom:10px}.mini-title.short{width:64%;margin-bottom:24px}.mini-copy{width:84%;height:6px;background:#42606e;margin-bottom:8px}.mini-copy.tiny{width:55%}.mini-buttons{display:flex;gap:10px;margin:26px 0}.mini-buttons b{width:95px;height:28px;border-radius:8px;background:linear-gradient(90deg,var(--cyan),var(--blue))}.mini-buttons b+ b{background:#1b3340;border:1px solid #32515d}.mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mini-cards i{height:70px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}.floating-card{position:absolute;z-index:3;border-radius:18px}.prompt-card{left:-10px;bottom:38px;padding:16px 18px;width:255px;transform:rotate(-2deg)}.card-label{display:block;font-size:9px;letter-spacing:.14em;color:var(--cyan);margin-bottom:11px}.prompt-card code{display:block;color:#91a8b2;font-size:10px;margin:6px 0}.prompt-card code b{color:#f0f8fa;margin-right:7px}.status-card{right:-10px;top:65px;padding:13px 15px;display:flex;align-items:center;gap:12px}.pulse-dot{width:9px;height:9px;border-radius:50%;background:#62f3b2;box-shadow:0 0 0 0 rgba(98,243,178,.5);animation:pulse 2s infinite}.status-card div{display:flex;flex-direction:column}.status-card strong{font-size:11px}.status-card small{font-size:9px;color:#78909a}.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.8}.orb-a{width:260px;height:260px;right:20px;bottom:55px;background:radial-gradient(circle,rgba(86,230,224,.2),transparent 68%)}.orb-b{width:240px;height:240px;left:10px;top:30px;background:radial-gradient(circle,rgba(229,108,207,.16),transparent 68%)}@keyframes pulse{70%{box-shadow:0 0 0 12px rgba(98,243,178,0)}100%{box-shadow:0 0 0 0 rgba(98,243,178,0)}}.trust-strip{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#08131a}.smart-marquee{position:relative;overflow:hidden;width:100%;height:48px}.smart-marquee-stage{position:relative;width:100%;height:100%}.smart-marquee-item{position:absolute;left:0;top:0;height:48px;display:flex;align-items:center;gap:34px;white-space:nowrap;will-change:transform;contain:layout style}.smart-marquee-label{text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:#78909b;font-weight:700;white-space:nowrap}.smart-marquee-dot{width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:var(--cyan)}.section-dark{background:#09151d}.section-heading{max-width:930px;margin-bottom:55px}.section-heading h2,.prompt-copy h2,.about-copy h2{font-size:clamp(39px,5vw,72px)}.section-heading p,.prompt-copy p,.about-copy p{color:var(--muted);font-size:16px;max-width:760px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.service-card{min-height:330px;padding:33px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));transition:.3s ease}.service-card:hover{transform:translateY(-4px);border-color:rgba(86,230,224,.3);background:linear-gradient(145deg,rgba(86,230,224,.07),rgba(255,255,255,.015))}.service-card .num{font:600 11px Space Grotesk;color:var(--cyan);letter-spacing:.12em}.service-card h3,.tool-card h3,.timeline-item h3,.fit-grid h3{font:600 24px Space Grotesk;margin:60px 0 13px}.service-card p,.tool-card p,.timeline-item p,.fit-grid p{color:#98acb6}.service-card ul{padding:0;margin:22px 0 0;list-style:none;color:#c4d3d9;font-size:12px}.service-card li{padding:7px 0;border-top:1px solid rgba(255,255,255,.07)}.process-section{background:linear-gradient(180deg,#071017,#0a1720)}.timeline{max-width:1050px;margin-left:auto}.timeline-item{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:35px 0;border-top:1px solid var(--line)}.timeline-item .step{font:600 12px Space Grotesk;color:var(--cyan);padding-top:8px}.timeline-item h3{margin:0 0 10px;font-size:27px}.timeline-item p{margin:0;max-width:720px}.toolkit-section{background:#dce8eb;color:#08141b}.toolkit-shell{max-width:1450px;margin:auto}.toolkit-section .eyebrow{color:#4d6771}.toolkit-section .section-heading p{color:#506a75}.toolkit-section .section-heading h2 em{background:linear-gradient(90deg,#087f86,#337ac9 55%,#8c4eb0);-webkit-background-clip:text;background-clip:text;color:transparent}.tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tool-card{background:#eff6f7;border:1px solid rgba(7,16,23,.1);border-radius:20px;padding:27px;min-height:300px}.tool-icon{width:49px;height:49px;border-radius:14px;background:#0f232e;color:#88fff7;display:grid;place-items:center;font:700 13px Space Grotesk}.tool-icon.ai{background:linear-gradient(135deg,#0f232e,#153f50)}.tool-card h3{margin:62px 0 10px;font-size:20px}.tool-card p{color:#56707b;font-size:13px}.prompt-section{background:radial-gradient(circle at 10% 40%,rgba(86,230,224,.08),transparent 30%),#071017}.prompt-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;max-width:1450px;margin:auto}.prompt-copy p{max-width:670px}.callout{margin-top:30px;padding:18px 20px;border-left:2px solid var(--cyan);background:rgba(86,230,224,.04);display:flex;flex-direction:column}.callout strong{font-size:13px}.callout span{color:#78919d;font-size:12px;margin-top:3px}.terminal{border:1px solid rgba(86,230,224,.2);border-radius:20px;overflow:hidden;background:#061019;box-shadow:0 35px 80px rgba(0,0,0,.35)}.terminal-top{height:49px;display:flex;align-items:center;gap:7px;padding:0 17px;border-bottom:1px solid var(--line);background:#0b1821}.terminal-top span{width:7px;height:7px;border-radius:50%;background:#405966}.terminal-top b{font:500 10px Space Grotesk;color:#667f8b;margin-left:8px}.terminal-body{padding:30px}.terminal-body p{font:500 11px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace;margin:10px 0;color:#a9bdc5}.terminal-body i{color:#4f6a76;margin-right:12px;font-style:normal}.terminal-body b{color:var(--cyan);display:inline-block;width:80px}.redacted{color:#2e4855!important;letter-spacing:.05em}.terminal-status{margin-top:26px;border-top:1px solid var(--line);padding-top:17px;color:#5ee7ae;font:600 9px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em}.about-section{background:#0a161e}.about-card{display:grid;grid-template-columns:260px 1fr;gap:60px;max-width:1250px;margin:auto;padding:48px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.03),rgba(255,255,255,.012))}.about-monogram{height:260px;border-radius:22px;display:grid;place-items:center;font:700 70px Space Grotesk;color:#8afff8;background:radial-gradient(circle at 40% 30%,rgba(86,230,224,.22),transparent 45%),linear-gradient(145deg,#102b38,#0b1821);border:1px solid rgba(86,230,224,.17);text-shadow:0 0 30px rgba(86,230,224,.25)}.about-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.about-tags span{padding:7px 10px;border-radius:999px;border:1px solid var(--line);font-size:10px;color:#8ca3ae}.fit-section{background:#08131a}.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fit-grid>div{min-height:280px;border-radius:22px;border:1px solid var(--line);padding:34px}.fit-good{background:linear-gradient(145deg,rgba(86,230,224,.07),rgba(255,255,255,.015))}.fit-boundary{background:linear-gradient(145deg,rgba(85,168,255,.06),rgba(255,255,255,.012))}.fit-grid h3{margin:100px 0 10px}.contact-section{background:linear-gradient(135deg,#46d8d3,#4a9eea 56%,#9b63c8);color:#061117;padding-top:90px;padding-bottom:90px}.contact-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;max-width:1400px;margin:auto}.contact-card h2{font-size:clamp(43px,5.2vw,74px)}.contact-card h2 em{background:none;color:#062934}.contact-card p{max-width:580px;color:#174753}.eyebrow.light{color:#0d4650}.eyebrow.light span{background:#0b4652}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;background:rgba(4,23,30,.12);border:1px solid rgba(4,23,30,.18);padding:24px;border-radius:22px;backdrop-filter:blur(8px)}.contact-form label{display:flex;flex-direction:column;gap:7px}.contact-form label span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#0b3e48}.contact-form input,.contact-form textarea{width:100%;border:none;outline:none;border-radius:10px;padding:14px 15px;background:rgba(240,255,255,.82);color:#07131b;font:500 13px Inter}.full{grid-column:1/-1}.btn-light{background:#07151d;color:#e7fbfd}.form-note{margin:0!important;color:#1e5360!important;font-size:10px!important}.site-footer{display:grid;grid-template-columns:1fr 1.5fr auto;gap:30px;align-items:center;padding:35px clamp(24px,7vw,110px);border-top:1px solid var(--line);background:#061017}.site-footer div{display:flex;flex-direction:column}.site-footer strong{font:700 15px Space Grotesk}.site-footer span,.site-footer p,.site-footer a{color:#6e8792;font-size:10px}.site-footer p{margin:0}.site-footer a{text-decoration:none}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:1100px){.hero-grid,.prompt-layout,.contact-card{grid-template-columns:1fr}.hero-visual{min-height:540px}.tool-grid{grid-template-columns:repeat(2,1fr)}.contact-card{gap:40px}.site-footer{grid-template-columns:1fr auto}.site-footer p{display:none}}@media(max-width:760px){.site-header{height:70px;padding:0 18px}.brand-copy small{display:none}.menu-toggle{display:block}.site-nav{position:absolute;top:65px;left:18px;right:18px;display:none;flex-direction:column;align-items:stretch;background:#0b1820;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow)}.site-nav.open{display:flex}.site-nav a{padding:10px}.section-pad{padding:78px 20px}.hero{padding-top:110px}.hero h1{font-size:clamp(44px,14vw,68px)}.hero-proof{gap:18px;flex-wrap:wrap}.hero-visual{min-height:430px}.browser-card{height:300px;transform:none}.browser-body{height:250px;grid-template-columns:48px 1fr}.mini-page{padding:28px 25px}.mini-sidebar{padding:20px 12px}.mini-sidebar span{width:22px}.prompt-card{bottom:15px;left:4px;width:210px}.status-card{right:0;top:25px}.service-grid,.fit-grid,.tool-grid{grid-template-columns:1fr}.service-card{min-height:280px}.service-card h3{margin-top:40px}.timeline{margin-left:0}.timeline-item{grid-template-columns:55px 1fr}.about-card{grid-template-columns:1fr;padding:24px}.about-monogram{height:190px}.contact-form{grid-template-columns:1fr}.contact-form>*{grid-column:1/-1}.site-footer{grid-template-columns:1fr;gap:12px}.site-footer a{justify-self:start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pulse-dot{animation:none}.reveal{opacity:1;transform:none;transition:none}}
.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-form button:disabled{opacity:.65;cursor:wait;transform:none}.form-note.success{color:#063f2e!important;font-weight:700}.form-note.error{color:#641f2b!important;font-weight:700}


/* ===== Marc Dynamic Experience v1.25.2 ===== */
.md-boot{position:fixed;inset:0;z-index:99999;background:#071014;color:#f5fbff;display:grid;place-items:center;overflow:hidden;transition:opacity .55s ease,visibility .55s ease}
.md-boot.is-done{opacity:0;visibility:hidden;pointer-events:none}
.md-boot-grid{position:absolute;inset:-20%;background-image:linear-gradient(rgba(81,230,219,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(81,230,219,.055) 1px,transparent 1px);background-size:44px 44px;transform:perspective(500px) rotateX(58deg) translateY(22%);mask-image:linear-gradient(to bottom,transparent,black 28%,black 70%,transparent)}
.md-boot-core{text-align:center;position:relative;padding:28px;min-width:min(620px,88vw)}
.md-boot-kicker{font:700 11px/1.2 Arial,sans-serif;letter-spacing:.42em;color:#62e8df;margin-bottom:16px;opacity:0;animation:mdBootIn .35s .05s forwards}
.md-boot-name{font:900 clamp(34px,8vw,86px)/.92 Arial Black,Arial,sans-serif;letter-spacing:-.045em;position:relative;opacity:0;animation:mdBootIn .45s .18s forwards;text-shadow:2px 0 rgba(255,72,176,.42),-2px 0 rgba(80,231,221,.42)}
.md-boot-name:before,.md-boot-name:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;opacity:.22}
.md-boot-name:before{transform:translateX(-3px);clip-path:inset(12% 0 58% 0);color:#59e8df;animation:mdGlitch 1.1s steps(2,end) infinite}
.md-boot-name:after{transform:translateX(3px);clip-path:inset(61% 0 12% 0);color:#ff5caf;animation:mdGlitch .9s steps(2,end) reverse infinite}
.md-boot-sub{font:700 clamp(10px,1.5vw,14px)/1.2 Arial,sans-serif;letter-spacing:.28em;margin-top:12px;opacity:0;animation:mdBootIn .35s .38s forwards}
.md-boot-line{height:2px;background:rgba(255,255,255,.09);margin:24px auto 12px;max-width:390px;overflow:hidden}
.md-boot-line span{display:block;height:100%;width:0;background:linear-gradient(90deg,#56e6dc,#ff5bab);animation:mdLoad 1.15s .25s cubic-bezier(.2,.8,.2,1) forwards}
.md-boot-status{font:600 9px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.2em;color:rgba(255,255,255,.58)}
@keyframes mdBootIn{to{opacity:1;transform:none}}
@keyframes mdLoad{to{width:100%}}
@keyframes mdGlitch{0%,86%,100%{transform:translateX(0)}88%{transform:translateX(-5px)}91%{transform:translateX(4px)}94%{transform:translateX(-2px)}}

.md-network{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.38}
body>*:not(.md-boot):not(.md-network):not(.md-cursor):not(.md-telemetry){position:relative;z-index:1}

.md-cursor{position:fixed;left:0;top:0;width:34px;height:34px;border:1px solid rgba(90,232,222,.62);border-radius:50%;z-index:99990;pointer-events:none;transform:translate(-50%,-50%);transition:width .18s,height .18s,border-color .18s,background .18s;display:none}
.md-cursor span{position:absolute;width:4px;height:4px;border-radius:50%;background:#ff62b2;left:50%;top:50%;transform:translate(-50%,-50%)}
.md-cursor.is-hot{width:58px;height:58px;background:rgba(85,231,220,.07);border-color:rgba(255,96,177,.72)}
@media (hover:hover) and (pointer:fine){.md-cursor{display:block}body{cursor:none}a,button,input,textarea,select{cursor:none}}

.md-telemetry{position:fixed;right:16px;bottom:16px;z-index:9990;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#eafcff}
.md-telemetry-toggle{display:flex;align-items:center;gap:8px;border:1px solid rgba(90,232,222,.25);background:rgba(5,14,18,.82);backdrop-filter:blur(12px);color:#dffefa;border-radius:999px;padding:9px 12px;font:700 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em}
.md-telemetry-toggle i{width:7px;height:7px;border-radius:50%;background:#67ebcf;box-shadow:0 0 12px rgba(103,235,207,.75);animation:mdPulse 1.8s infinite}
.md-telemetry-panel{display:none;margin-bottom:7px;width:218px;padding:12px;border:1px solid rgba(90,232,222,.2);border-radius:14px;background:rgba(5,14,18,.9);backdrop-filter:blur(14px)}
.md-telemetry.open .md-telemetry-panel{display:block}
.md-telemetry-panel div{display:flex;justify-content:space-between;gap:14px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.055)}
.md-telemetry-panel div:last-child{border-bottom:0}
.md-telemetry-panel span{font-size:9px;color:rgba(235,251,255,.48)}
.md-telemetry-panel b{font-size:10px;color:#72e8df;font-weight:700;text-align:right}
@keyframes mdPulse{50%{opacity:.4;transform:scale(.78)}}

.md-tilt{transform-style:preserve-3d;will-change:transform;transition:transform .18s ease,border-color .18s ease}
.md-tilt>*{transform:translateZ(8px)}
.md-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.md-reveal.md-visible{opacity:1;transform:none}

@media(max-width:600px){.md-telemetry{right:10px;bottom:10px}.md-telemetry-panel{width:200px}.md-network{opacity:.24}}
@media(prefers-reduced-motion:reduce){.md-boot{display:none}.md-network,.md-cursor{display:none!important}.md-reveal{opacity:1;transform:none;transition:none}.md-telemetry-toggle i{animation:none}}

/* ===== v1.25.2 Three-second welcome experience ===== */
.md-welcome{opacity:0;animation:mdWelcomeScreenIn .45s ease forwards}
.md-welcome .md-boot-core{transform:translateY(8px) scale(.985);opacity:0;animation:mdWelcomeCoreIn .65s .22s cubic-bezier(.2,.75,.2,1) forwards}
.md-welcome-small{font:800 10px/1 Arial,sans-serif;letter-spacing:.5em;color:#6de8df;margin:0 0 18px;opacity:.78}
.md-welcome-message{margin:18px auto 0;max-width:520px;font:500 clamp(12px,1.6vw,15px)/1.5 Arial,sans-serif;color:rgba(240,251,255,.7);letter-spacing:.04em}
.md-welcome .md-boot-line{margin-top:26px}
.md-welcome .md-boot-line span{animation:mdWelcomeLoad 2.35s .35s linear forwards}
.md-welcome-orb{position:absolute;width:38vw;max-width:520px;aspect-ratio:1;border-radius:50%;filter:blur(80px);opacity:.13;pointer-events:none}
.md-welcome-orb-a{left:-12%;top:-22%;background:#55e7dd;animation:mdWelcomeFloatA 3s ease-in-out infinite alternate}
.md-welcome-orb-b{right:-14%;bottom:-28%;background:#ff5bac;animation:mdWelcomeFloatB 3s ease-in-out infinite alternate}
.md-welcome.is-done{animation:none;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s ease}
@keyframes mdWelcomeScreenIn{to{opacity:1}}
@keyframes mdWelcomeCoreIn{to{opacity:1;transform:none}}
@keyframes mdWelcomeLoad{from{width:0}to{width:100%}}
@keyframes mdWelcomeFloatA{to{transform:translate(7%,8%) scale(1.08)}}
@keyframes mdWelcomeFloatB{to{transform:translate(-7%,-7%) scale(1.1)}}
@media(prefers-reduced-motion:reduce){
  .md-welcome{animation:none;opacity:1}
  .md-welcome .md-boot-core{animation:none;opacity:1;transform:none}
  .md-welcome-orb{animation:none}
}

/* ===== v1.25.2 Procedural website-build intro ===== */
.md-builder{
  position:fixed;inset:0;z-index:99999;background:#04090c;color:#eefcff;
  overflow:hidden;opacity:0;visibility:visible;
  animation:mdBuilderFadeIn 1.4s cubic-bezier(.2,.7,.2,1) forwards;
}
.md-builder.is-leaving{
  animation:none;opacity:1;
  transition:opacity 1.8s cubic-bezier(.4,0,.2,1),visibility 1.8s;
  opacity:0;visibility:hidden;pointer-events:none;
}
.md-matrix{position:absolute;inset:0;width:100%;height:100%;opacity:0;animation:mdMatrixReveal 1.2s .65s ease forwards}
.md-build-grid{
  position:absolute;inset:0;display:grid;
  grid-template-columns:repeat(var(--build-cols,12),1fr);
  grid-template-rows:repeat(var(--build-rows,8),1fr);
  gap:2px;padding:clamp(12px,2vw,28px);
  perspective:900px;
}
.md-build-block{
  border:1px solid rgba(89,232,221,.16);
  background:linear-gradient(135deg,rgba(88,231,220,.075),rgba(255,91,173,.025));
  opacity:0;transform:scale(.72) translateZ(-30px);
  box-shadow:inset 0 0 16px rgba(85,230,220,.025);
  transition:opacity .42s ease,transform .52s cubic-bezier(.15,.8,.2,1),border-color .45s ease;
}
.md-build-block.on{opacity:.68;transform:scale(1) translateZ(0);border-color:rgba(89,232,221,.26)}
.md-build-block.done{opacity:.13;border-color:rgba(255,255,255,.08);transition:opacity .8s ease}
.md-build-scan{
  position:absolute;left:0;right:0;height:90px;top:-100px;opacity:0;
  background:linear-gradient(to bottom,transparent,rgba(86,232,221,.09),rgba(86,232,221,.22),transparent);
  filter:blur(1px);pointer-events:none;
  animation:mdBuildScan 3.7s 1.25s cubic-bezier(.25,.55,.25,1) forwards;
}
.md-builder-center{
  position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:24px;pointer-events:none;
}
.md-builder-label{
  font:700 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.38em;
  color:#6de9df;opacity:0;transform:translateY(7px);
  transition:opacity .55s ease,transform .55s ease;
}
.md-builder-label.show{opacity:.78;transform:none}
.md-builder-name{
  margin-top:16px;font:900 clamp(38px,8vw,92px)/.9 Arial Black,Arial,sans-serif;
  letter-spacing:-.055em;opacity:0;filter:blur(12px);transform:scale(.96);
  text-shadow:2px 0 rgba(255,90,174,.32),-2px 0 rgba(85,231,220,.32);
  transition:opacity 1.05s ease,filter 1.15s ease,transform 1.15s cubic-bezier(.2,.8,.2,1);
}
.md-builder-name.show{opacity:1;filter:blur(0);transform:scale(1)}
.md-builder-sub{
  margin-top:12px;font:700 clamp(10px,1.5vw,14px)/1.2 Arial,sans-serif;letter-spacing:.28em;
  opacity:0;transform:translateY(7px);transition:opacity .8s ease,transform .8s ease;
}
.md-builder-sub.show{opacity:.76;transform:none}
.md-builder-ready{
  margin:24px auto 0;padding:9px 14px;border:1px solid rgba(104,236,209,.28);border-radius:999px;
  width:max-content;max-width:100%;font:800 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;
  letter-spacing:.22em;color:#78efd7;background:rgba(5,18,19,.5);
  opacity:0;transform:translateY(8px);transition:opacity .85s ease,transform .85s ease,box-shadow .85s ease;
}
.md-builder-ready.show{opacity:1;transform:none;box-shadow:0 0 28px rgba(91,233,216,.12)}
.md-builder-progress{
  position:absolute;left:50%;bottom:7%;transform:translateX(-50%);
  width:min(420px,72vw);height:2px;background:rgba(255,255,255,.07);overflow:hidden;border-radius:2px;
}
.md-builder-progress span{
  display:block;height:100%;width:0;background:linear-gradient(90deg,#58e7dd,#ff5bac);
  box-shadow:0 0 12px rgba(88,231,221,.38);transition:width .25s linear;
}
.md-page-enter{opacity:0;transform:scale(.992);filter:blur(5px)}
.md-page-enter.md-page-ready{
  opacity:1;transform:none;filter:none;
  transition:opacity 1.65s ease,transform 1.65s cubic-bezier(.2,.7,.2,1),filter 1.5s ease;
}
@keyframes mdBuilderFadeIn{from{opacity:0}to{opacity:1}}
@keyframes mdMatrixReveal{to{opacity:.52}}
@keyframes mdBuildScan{0%{top:-100px;opacity:0}12%{opacity:1}88%{opacity:.7}100%{top:100%;opacity:0}}
@media(max-width:600px){.md-build-grid{gap:1px;padding:9px}.md-builder-progress{bottom:5%}}
@media(prefers-reduced-motion:reduce){
 .md-builder{animation:none;opacity:1}.md-matrix,.md-build-grid,.md-build-scan{display:none}
 .md-builder-name,.md-builder-sub,.md-builder-ready,.md-builder-label{filter:none;transform:none}
}

/* ===== v1.25.2 Card hover stability fix ===== */
.md-tilt{
  transform:none !important;
  transform-style:flat !important;
  will-change:auto !important;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease !important;
}
.md-tilt > *{
  transform:none !important;
}
@media (hover:hover) and (pointer:fine){
  .md-tilt:hover{
    transform:translateY(-3px) !important;
    border-color:rgba(89,232,221,.32) !important;
    box-shadow:0 14px 34px rgba(0,0,0,.18),inset 0 0 0 1px rgba(89,232,221,.035);
    z-index:2;
  }
}

/* ===== v1.25.2 Robust 3D card interaction ===== */
.md-tilt{
  --rx:0deg;
  --ry:0deg;
  --lift:0px;
  --mx:50%;
  --my:50%;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  transform-style:preserve-3d !important;
  backface-visibility:hidden;
  contain:paint;
  transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(var(--lift)) translateZ(0) !important;
  transform-origin:center center;
  will-change:transform;
  transition:
    transform .18s cubic-bezier(.2,.75,.2,1),
    border-color .22s ease,
    box-shadow .22s ease !important;
}
.md-tilt::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(
      260px circle at var(--mx) var(--my),
      rgba(88,231,221,.11),
      rgba(255,91,172,.035) 42%,
      transparent 72%
    );
  transition:opacity .2s ease;
}
.md-tilt::after{
  content:"";
  position:absolute;
  inset:1px;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 26px rgba(88,231,221,.025);
}
.md-tilt > *{
  position:relative;
  z-index:1;
  transform:none !important;
  backface-visibility:hidden;
}
@media (hover:hover) and (pointer:fine){
  .md-tilt:hover{
    --lift:-4px;
    border-color:rgba(89,232,221,.36) !important;
    box-shadow:
      0 18px 38px rgba(0,0,0,.20),
      0 0 0 1px rgba(89,232,221,.04),
      inset 0 0 0 1px rgba(255,255,255,.018);
    z-index:3;
  }
  .md-tilt:hover::before{opacity:1}
}
@media (prefers-reduced-motion:reduce){
  .md-tilt{transform:none !important;will-change:auto}
}

/* ===== v1.25.2 Requested Visual Fixes ===== */

/* FOUR SERVICE PANELS: proper 3D mouse interaction */
.service-card.service-tilt-card{
  --svc-rx:0deg;
  --svc-ry:0deg;
  --svc-mx:50%;
  --svc-my:50%;
  position:relative;
  overflow:hidden;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  transform:perspective(1050px) rotateX(var(--svc-rx)) rotateY(var(--svc-ry));
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
  will-change:transform;
}
.service-card.service-tilt-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  opacity:.42;
  background:
    radial-gradient(circle at var(--svc-mx) var(--svc-my),
      rgba(104,238,230,.14),
      rgba(104,238,230,.035) 22%,
      transparent 44%);
}
.service-card.service-tilt-card:hover{
  transform:perspective(1050px) rotateX(var(--svc-rx)) rotateY(var(--svc-ry)) !important;
  border-color:rgba(91,231,223,.34) !important;
  box-shadow:0 22px 48px rgba(0,0,0,.27),0 0 28px rgba(73,218,211,.045) !important;
}

/* WHITE TOOLS SECTION -> DARK SITE PALETTE */
.toolkit-section{
  background:
    radial-gradient(circle at 16% 10%,rgba(42,167,177,.10),transparent 30%),
    radial-gradient(circle at 82% 82%,rgba(126,77,181,.07),transparent 34%),
    linear-gradient(180deg,#08131b 0%,#0a1720 48%,#08131a 100%) !important;
  color:#eef7f9 !important;
}
.toolkit-section .eyebrow{
  color:#a8c6cf !important;
}
.toolkit-section .section-heading h2{
  color:#f0f7f9 !important;
}
.toolkit-section .section-heading p{
  color:#9caeb7 !important;
}
.toolkit-section .section-heading h2 em{
  background:linear-gradient(90deg,var(--cyan2),var(--blue) 55%,#c77ff0) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.tool-card{
  background:
    linear-gradient(145deg,rgba(16,33,42,.96),rgba(7,20,28,.96)) !important;
  color:#eef7f9 !important;
  border:1px solid rgba(91,225,218,.13) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.20) !important;
}
.tool-card h3{
  color:#edf7f9 !important;
}
.tool-card p{
  color:#9aadb6 !important;
}
.tool-icon{
  background:#0b2732 !important;
  color:#72e8df !important;
  border:1px solid rgba(94,226,219,.17) !important;
}

/* CONTACT: completely still, no mouse reaction / tilt / lift */
#contact,
#contact .contact-card,
#contact .contact-form,
#contact form,
#contact article,
#contact [class*="card"]{
  transform:none !important;
  transition:none !important;
  will-change:auto !important;
}
#contact:hover,
#contact .contact-card:hover,
#contact .contact-form:hover,
#contact form:hover,
#contact article:hover,
#contact [class*="card"]:hover{
  transform:none !important;
}
#contact::before,
#contact::after,
#contact .contact-card::before,
#contact .contact-card::after,
#contact .contact-form::before,
#contact .contact-form::after{
  transform:none !important;
}

@media(max-width:760px){
  .service-card.service-tilt-card{
    transform:none !important;
    will-change:auto !important;
  }
}

.lang-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:38px;
  padding:0 10px;
  border:1px solid rgba(103,226,220,.18);
  border-radius:10px;
  color:#a9cbd2;
  text-decoration:none;
  font:700 11px/1 Space Grotesk,sans-serif;
  letter-spacing:.08em;
}
.lang-link:hover{
  border-color:rgba(103,226,220,.38);
  color:#e9fbfb;
  background:rgba(91,229,221,.05);
}

/* ===== v1.25.2 Language Choice + Cookie Notice ===== */
.language-gate{
  position:fixed;
  inset:0;
  z-index:100500;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  background:rgba(3,11,16,.96);
  transition:opacity .65s ease,visibility .65s ease;
}
.language-gate.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.language-gate-panel{
  width:min(560px,100%);
  padding:42px;
  text-align:center;
  border-radius:20px;
  border:1px solid rgba(89,230,222,.20);
  background:linear-gradient(145deg,#0b1d26,#07151d);
  box-shadow:0 28px 70px rgba(0,0,0,.42);
}
.language-gate-kicker,
.cookie-notice-kicker{
  margin-bottom:12px;
  color:#70e5dd;
  font:800 10px/1 Space Grotesk,sans-serif;
  letter-spacing:.18em;
}
.language-gate h2{
  margin:0;
  color:#eff8fa;
  font:700 clamp(28px,5vw,46px)/1 Space Grotesk,sans-serif;
  letter-spacing:-.035em;
}
.language-gate p{
  margin:16px auto 0;
  color:#9eb3bc;
}
.language-gate-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:30px;
}
.language-choice{
  min-height:56px;
  border:1px solid rgba(89,230,222,.24);
  border-radius:12px;
  background:#0c2631;
  color:#edf9fa;
  font-weight:800;
  cursor:pointer;
  transition:.18s ease;
}
.language-choice:hover,
.language-choice:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(89,230,222,.52);
  background:#103440;
  outline:none;
}

/* Bottom notification, not a full-screen cookie wall. */
.cookie-notice{
  position:fixed;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:100600;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  max-width:1180px;
  margin:0 auto;
  padding:20px 22px;
  border:1px solid rgba(91,229,221,.20);
  border-radius:16px;
  background:rgba(6,19,26,.98);
  color:#edf8fa;
  box-shadow:0 24px 60px rgba(0,0,0,.42);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(18px);
  transition:opacity .35s ease,transform .35s ease,visibility .35s ease;
}
.cookie-notice.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}
.cookie-notice h2{
  margin:0 0 7px;
  font:700 19px/1.15 Space Grotesk,sans-serif;
  color:#f2fafb;
}
.cookie-notice p{
  margin:0;
  max-width:900px;
  color:#9eb2bb;
  font-size:13px;
  line-height:1.55;
}
.cookie-details{
  margin-top:10px;
  color:#adc1c9;
  font-size:12px;
}
.cookie-details summary{
  color:#71e4dd;
  font-weight:800;
  cursor:pointer;
}
.cookie-details p{
  margin-top:8px;
  font-size:12px;
}
.cookie-ack{
  min-width:124px;
  min-height:48px;
  padding:0 18px;
  border:1px solid rgba(91,229,221,.34);
  border-radius:11px;
  background:linear-gradient(135deg,#68e7df,#67bfff);
  color:#042025;
  font-weight:900;
  cursor:pointer;
}
.cookie-ack:hover,
.cookie-ack:focus-visible{
  transform:translateY(-1px);
  outline:none;
}

body.language-choice-open{
  overflow:hidden !important;
}

@media(max-width:700px){
  .language-gate-actions{grid-template-columns:1fr;}
  .language-gate-panel{padding:32px 24px;}
  .cookie-notice{
    grid-template-columns:1fr;
    gap:14px;
    left:10px;
    right:10px;
    bottom:10px;
    padding:18px;
  }
  .cookie-ack{width:100%;}
}

/* ===== v1.25.2 Intro Language Selection Flow ===== */

/* Retire the old separate language overlay. */
.language-gate{display:none !important;}

/* Language selector lives directly inside the intro/loading experience. */
.md-intro-language{
  width:min(560px,88vw);
  margin:26px auto 0;
  opacity:0;
  visibility:hidden;
  transform:translateY(14px);
  pointer-events:none;
  transition:
    opacity 1.15s ease,
    transform 1.15s cubic-bezier(.2,.7,.2,1),
    visibility 1.15s ease;
}
.md-intro-language.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.md-intro-language.is-leaving{
  opacity:0;
  transform:translateY(-10px);
  pointer-events:none;
}
.md-intro-language-label{
  margin-bottom:14px;
  color:#78e9e0;
  font:800 10px/1 Space Grotesk,sans-serif;
  letter-spacing:.22em;
  text-align:center;
  opacity:.84;
}
.md-intro-language-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.md-intro-language-btn{
  min-height:56px;
  border:1px solid rgba(91,231,223,.28);
  border-radius:12px;
  background:
    linear-gradient(145deg,rgba(12,38,48,.94),rgba(7,25,33,.94));
  color:#edf9fa;
  font:800 14px/1 Space Grotesk,sans-serif;
  cursor:pointer;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 10px 28px rgba(0,0,0,.15);
  transition:
    transform .22s ease,
    border-color .22s ease,
    background .22s ease,
    box-shadow .22s ease;
}
.md-intro-language-btn:hover,
.md-intro-language-btn:focus-visible{
  transform:translateY(-3px);
  border-color:rgba(91,231,223,.62);
  background:
    linear-gradient(145deg,rgba(15,52,62,.98),rgba(8,31,40,.98));
  box-shadow:
    0 15px 34px rgba(0,0,0,.24),
    0 0 22px rgba(71,222,214,.07);
  outline:none;
}

/* The homepage remains hidden beneath intro until a language is chosen. */
body:not(.md-language-home-ready) .md-page-enter{
  pointer-events:none;
}

/* Smooth transition from intro into selected homepage. */
#mdBoot.md-language-exit{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:
    opacity 1.20s ease,
    visibility 1.20s ease !important;
}
#mdBoot.md-language-exit .md-boot-core{
  transform:scale(.985);
  opacity:.82;
  transition:
    transform 1.20s ease,
    opacity 1.20s ease;
}

/* Cookie notice fades in only after selected homepage is visible. */
.cookie-notice{
  transition:
    opacity .70s ease,
    transform .70s ease,
    visibility .70s ease !important;
}

@media(max-width:600px){
  .md-intro-language-actions{
    grid-template-columns:1fr;
  }
}

/* ===== v1.25.2 Language Prompt Reliability Polish ===== */
#mdIntroLanguage{
  position:relative;
  z-index:20;
}
#mdBoot.language-ready .md-intro-language{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
#mdBoot.language-ready .md-builder-ready,
#mdBoot.language-ready .md-boot-status{
  transition:opacity .45s ease;
}

/* ===== v1.25.2 Reliable Language Transition ===== */

/* The selector is a sibling of the visible builder center, not a decorative grid child. */
#mdIntroLanguage{
  position:relative !important;
  z-index:40 !important;
  width:min(560px,88vw) !important;
  margin:22px auto 0 !important;
}

.md-language-countdown{
  min-height:18px;
  margin-top:17px;
  color:#73e7df;
  font:800 11px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;
  letter-spacing:.17em;
  text-align:center;
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .42s ease,transform .42s ease,visibility .42s ease;
}
.md-language-countdown.is-visible{
  opacity:.9;
  visibility:visible;
  transform:translateY(0);
}

/* Gentle fade in after the 3-second countdown. */
#mdIntroLanguage{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(12px) scale(.992) !important;
  transition:
    opacity 1.15s ease,
    transform 1.15s cubic-bezier(.2,.7,.2,1),
    visibility 1.15s ease !important;
}
#mdIntroLanguage.is-visible,
#mdBoot.language-ready #mdIntroLanguage{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) scale(1) !important;
}
#mdIntroLanguage.is-leaving{
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(-8px) scale(.992) !important;
}

/* Selected website begins fading in underneath the intro. */
body.md-language-home-ready .md-page-enter{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  pointer-events:auto !important;
  transition:
    opacity 1.35s ease,
    transform 1.35s ease,
    filter 1.35s ease !important;
}

/* Then the intro dissolves away. */
#mdBoot.md-language-exit{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity 1.35s ease,visibility 1.35s ease !important;
}

/* Keep cookie notice after the selected page is established. */
.cookie-notice{
  transition:
    opacity .75s ease,
    transform .75s ease,
    visibility .75s ease !important;
}

/* ===== v1.25.2 Native Cursor + Lower Language Selector ===== */

/* Restore the operating-system cursor everywhere. */
html,
body{
  cursor:auto !important;
}
a,
button,
[role="button"],
summary{
  cursor:pointer !important;
}
input,
textarea,
select{
  cursor:text !important;
}
.md-cursor{
  display:none !important;
}

/* Put the language selector comfortably BELOW all loader content. */
#mdBoot #mdIntroLanguage{
  position:absolute !important;
  left:50% !important;
  top:calc(50% + 185px) !important;
  width:min(560px,86vw) !important;
  margin:0 !important;
  z-index:60 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate(-50%,18px) scale(.992) !important;
  transition:
    opacity 1.15s ease,
    transform 1.15s cubic-bezier(.2,.7,.2,1),
    visibility 1.15s ease !important;
}

#mdBoot #mdIntroLanguage.is-visible,
#mdBoot.language-ready #mdIntroLanguage{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translate(-50%,0) scale(1) !important;
}

#mdBoot #mdIntroLanguage.is-leaving{
  opacity:0 !important;
  pointer-events:none !important;
  transform:translate(-50%,-8px) scale(.992) !important;
}

/* Countdown sits below WEBSITE READY but above the selector. */
#mdLanguageCountdown{
  position:absolute !important;
  left:50% !important;
  top:calc(50% + 142px) !important;
  width:min(560px,86vw) !important;
  margin:0 !important;
  z-index:61 !important;
  transform:translate(-50%,6px) !important;
}

#mdLanguageCountdown.is-visible{
  transform:translate(-50%,0) !important;
}

@media(max-height:760px){
  #mdBoot #mdIntroLanguage{
    top:calc(50% + 150px) !important;
  }
  #mdLanguageCountdown{
    top:calc(50% + 113px) !important;
  }
}

@media(max-width:600px){
  #mdBoot #mdIntroLanguage{
    top:calc(50% + 165px) !important;
    width:min(420px,90vw) !important;
  }
  #mdLanguageCountdown{
    top:calc(50% + 125px) !important;
    width:min(420px,90vw) !important;
  }
}

/* ===== v1.25.2 Simplified Language Flow + Fixed Cookie Notice ===== */
.md-language-countdown,
#mdLanguageCountdown{display:none !important;}

#mdBoot #mdIntroLanguage{
  position:absolute !important;
  left:50% !important;
  top:calc(50% + 175px) !important;
  width:min(560px,86vw) !important;
  margin:0 !important;
  z-index:80 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate(-50%,16px) scale(.994) !important;
  transition:
    opacity 1.10s ease,
    transform 1.10s cubic-bezier(.2,.7,.2,1),
    visibility 1.10s ease !important;
}
#mdBoot #mdIntroLanguage.is-visible,
#mdBoot.language-ready #mdIntroLanguage{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translate(-50%,0) scale(1) !important;
}
#mdBoot #mdIntroLanguage.is-leaving{
  opacity:0 !important;
  pointer-events:none !important;
  transform:translate(-50%,-8px) scale(.994) !important;
}

#cookieNotice.cookie-notice{
  position:fixed !important;
  left:50% !important;
  right:auto !important;
  top:auto !important;
  bottom:max(16px, env(safe-area-inset-bottom)) !important;
  width:min(1180px,calc(100% - 32px)) !important;
  max-width:1180px !important;
  margin:0 !important;
  z-index:2147483000 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate(-50%,24px) !important;
  transition:
    opacity .55s ease,
    transform .55s ease,
    visibility .55s ease !important;
}
#cookieNotice.cookie-notice.is-visible{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translate(-50%,0) !important;
}
#cookieNotice.cookie-notice.is-visible,
#cookieNotice.cookie-notice.is-visible *{
  pointer-events:auto !important;
}
#cookieAcknowledge{
  position:relative !important;
  z-index:5 !important;
  cursor:pointer !important;
  touch-action:manipulation;
}

html,body{cursor:auto !important;}
button,a,[role="button"],summary{cursor:pointer !important;}
input,textarea,select{cursor:text !important;}

@media(max-height:760px){
  #mdBoot #mdIntroLanguage{top:calc(50% + 145px) !important;}
}
@media(max-width:700px){
  #cookieNotice.cookie-notice{
    width:calc(100% - 20px) !important;
    bottom:max(10px, env(safe-area-inset-bottom)) !important;
  }
  #mdBoot #mdIntroLanguage{
    top:calc(50% + 155px) !important;
    width:min(420px,90vw) !important;
  }
}

/* ===== v1.25.2 Single-Pass Language Transition ===== */

/* Once language is chosen, legacy page/reveal/materialization animations
   are not allowed to fire a second time. */
html.md-single-entry,
body.md-single-entry,
html.md-language-home-ready,
body.md-language-home-ready{
  animation:none !important;
}

body.md-single-entry .md-page-enter,
body.md-single-entry .md-page-ready,
body.md-single-entry .md-reveal,
body.md-single-entry .md-visible,
body.md-single-entry .holo-materializing,
body.md-single-entry .holo-generated,
html.md-single-entry .md-page-enter,
html.md-single-entry .md-page-ready{
  animation:none !important;
  filter:none !important;
  clip-path:none !important;
}

body.md-language-home-ready .md-page-enter,
body.md-language-home-ready .md-page-ready,
body.md-language-home-ready main{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
}

/* The intro itself owns the only visible transition. */
#mdBoot.md-language-exit{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:
    opacity 1.35s ease,
    visibility 1.35s ease !important;
}

/* Homepage begins at final geometry and only fades once. */
body:not(.md-language-home-ready) > header,
body:not(.md-language-home-ready) > main,
body:not(.md-language-home-ready) > footer{
  opacity:0;
}

body.md-language-home-ready > header,
body.md-language-home-ready > main,
body.md-language-home-ready > footer{
  opacity:1 !important;
  transition:opacity .75s ease !important;
}

/* Do not let old reveal rules replay on children after homepage appears. */
body.md-language-home-ready .reveal,
body.md-language-home-ready .md-reveal,
body.md-language-home-ready article,
body.md-language-home-ready section{
  animation:none !important;
}

/* Cross-language ?intro=done destination is immediately stable to avoid
   a second 'page loaded' flash. */
html.md-single-entry body > header,
html.md-single-entry body > main,
html.md-single-entry body > footer{
  opacity:1 !important;
  transition:none !important;
}

/* ===== v1.25.2 Cookie Interaction Reliability Fix ===== */

/* Banner remains a fully interactive fixed layer while visible. */
#cookieNotice.cookie-notice{
  pointer-events:none !important;
}

#cookieNotice.cookie-notice.is-visible,
#cookieNotice.cookie-notice.is-visible.is-interactive{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translate(-50%,0) !important;
}

/* Every child, especially the action area/button, remains clickable. */
#cookieNotice.cookie-notice.is-visible .cookie-notice-copy,
#cookieNotice.cookie-notice.is-visible .cookie-notice-actions,
#cookieNotice.cookie-notice.is-visible button,
#cookieNotice.cookie-notice.is-visible details,
#cookieNotice.cookie-notice.is-visible summary{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

#cookieNotice .cookie-notice-actions{
  display:flex !important;
  align-items:center;
  justify-content:flex-end;
  min-width:max-content;
}

#cookieAcknowledge{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:124px;
  min-height:48px;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  position:relative !important;
  z-index:20 !important;
}

/* Only after a real click do we animate the entire banner out together. */
#cookieNotice.cookie-notice.is-leaving{
  opacity:0 !important;
  transform:translate(-50%,18px) !important;
  pointer-events:none !important;
}

#cookieNotice.cookie-notice.is-leaving *{
  pointer-events:none !important;
}

/* Prevent legacy entrance/reveal rules from touching cookie controls. */
body.md-single-entry #cookieNotice,
body.md-language-home-ready #cookieNotice,
body.md-single-entry #cookieNotice *,
body.md-language-home-ready #cookieNotice *{
  animation:none !important;
  filter:none !important;
  clip-path:none !important;
}

/* Keep action button accessible on narrow screens. */
@media(max-width:700px){
  #cookieNotice .cookie-notice-actions{
    width:100%;
  }
  #cookieAcknowledge{
    width:100%;
  }
}


/* ===== v1.25.2 Atluscan-style cookie banner ===== */
.cookie-banner[hidden],
.cookie-details-panel[hidden]{display:none!important}

.cookie-banner{
  position:fixed;
  left:50%;
  bottom:18px;
  z-index:2147483000;
  width:min(980px,calc(100vw - 28px));
  display:flex;
  align-items:center;
  gap:18px;
  padding:16px 16px 16px 19px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:#071729;
  color:#fff;
  box-shadow:0 20px 55px rgba(0,0,0,.46);
  opacity:0;
  transform:translate(-50%,22px);
  pointer-events:none;
  transition:opacity .65s ease,transform .65s cubic-bezier(.22,.7,.25,1);
}
.cookie-banner.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.cookie-banner.hide{opacity:0;transform:translate(-50%,14px);pointer-events:none}

.cookie-banner-copy{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;gap:5px}
.cookie-banner-copy strong{font-size:1rem;letter-spacing:.02em}
.cookie-banner-copy span{color:#c9d8e6;font-size:.88rem;line-height:1.5}
.cookie-banner-actions{flex:0 0 auto;display:flex;align-items:center;gap:9px}

.cookie-details-btn,.cookie-banner-ok,.cookie-details-done{
  min-height:44px;padding:10px 15px;border-radius:8px;font-weight:850;cursor:pointer
}
.cookie-details-btn{border:1px solid rgba(255,255,255,.24);background:transparent;color:#fff}
.cookie-banner-ok,.cookie-details-done{border:1px solid #56e6df;background:#56e6df;color:#042125}
.cookie-details-btn:hover,.cookie-details-btn:focus-visible{background:rgba(255,255,255,.08)}
.cookie-banner-ok:hover,.cookie-banner-ok:focus-visible,.cookie-details-done:hover,.cookie-details-done:focus-visible{background:#79eee8}
.cookie-details-btn:focus-visible,.cookie-banner-ok:focus-visible,.cookie-details-done:focus-visible,.cookie-details-close:focus-visible{
  outline:2px solid #fff;outline-offset:2px
}

.cookie-details-panel{
  position:fixed;inset:0;z-index:2147483001;display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(0,7,15,.72)
}
.cookie-details-card{
  position:relative;width:min(680px,94vw);border:1px solid rgba(255,255,255,.16);
  border-radius:16px;background:#071729;color:#fff;padding:30px;box-shadow:0 28px 80px rgba(0,0,0,.48)
}
.cookie-details-card h2{margin:0 42px 14px 0;font-size:clamp(1.6rem,4vw,2.4rem)}
.cookie-details-card p{color:#c9d8e6;line-height:1.65}
.cookie-details-warning{padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}
.cookie-details-close{
  position:absolute;top:15px;right:15px;width:40px;height:40px;
  border:1px solid rgba(255,255,255,.16);border-radius:8px;background:transparent;
  color:#fff;font-size:1.5rem;cursor:pointer
}
.cookie-details-done{margin-top:8px}

@media(max-width:760px){
  .cookie-banner{bottom:10px;width:calc(100vw - 18px);flex-direction:column;align-items:stretch;gap:12px;padding:14px}
  .cookie-banner-actions{width:100%}
  .cookie-details-btn,.cookie-banner-ok{flex:1 1 0}
}
@media(max-width:430px){
  .cookie-banner-actions{flex-direction:column}
  .cookie-details-btn,.cookie-banner-ok{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .cookie-banner,.cookie-banner.show,.cookie-banner.hide{transition:none!important;transform:translate(-50%,0)!important}
}

/* ===== v1.25.2 Mobile/iPad cookie visibility hardening ===== */
#cookieBanner.cookie-banner{
  position:fixed !important;
  left:50% !important;
  right:auto !important;
  top:auto !important;
  bottom:max(12px, env(safe-area-inset-bottom)) !important;
  z-index:2147483000 !important;
  max-height:calc(100dvh - 24px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}

#cookieBanner.cookie-banner.show{
  display:flex !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

#cookieBanner.cookie-banner.show *,
#cookieDetailsPanel:not([hidden]) *{
  pointer-events:auto;
}

#cookieDetailsPanel.cookie-details-panel:not([hidden]){
  display:flex !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

@supports not (height:100dvh){
  #cookieBanner.cookie-banner{
    max-height:calc(100vh - 24px);
  }
}

@media(max-width:760px){
  #cookieBanner.cookie-banner{
    bottom:max(8px, env(safe-area-inset-bottom)) !important;
    width:calc(100vw - 18px) !important;
    max-height:calc(100dvh - 16px);
  }
}

/* ===== v1.25.2 Inline expandable cookie details ===== */
#cookieBanner.cookie-banner{flex-direction:column;align-items:stretch;overflow:hidden}
#cookieBanner .cookie-banner-main{width:100%;display:flex;align-items:center;gap:18px}
#cookieBanner .cookie-banner-copy{min-width:0;flex:1 1 auto}
#cookieBanner .cookie-details-inline[hidden]{display:none!important}
#cookieBanner .cookie-details-inline{
  width:100%;display:grid;gap:12px;padding:16px 2px 2px;
  border-top:1px solid rgba(255,255,255,.14);
  animation:mdCookieDetailsIn .28s ease both
}
#cookieBanner .cookie-detail-row{display:grid;grid-template-columns:minmax(155px,220px) 1fr;gap:16px;align-items:start}
#cookieBanner .cookie-detail-row strong{color:#fff;font-size:.9rem}
#cookieBanner .cookie-detail-row p{margin:0;color:#c9d8e6;font-size:.86rem;line-height:1.55}
#cookieBanner .cookie-detail-note{
  margin-top:2px;padding:11px 13px;border:1px solid rgba(86,230,223,.22);
  border-radius:9px;background:rgba(86,230,223,.06);color:#c9d8e6;font-size:.82rem;line-height:1.5
}
#cookieBanner .cookie-details-btn[aria-expanded="true"]{border-color:rgba(86,230,223,.65);background:rgba(86,230,223,.09)}
@keyframes mdCookieDetailsIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){
  #cookieBanner .cookie-banner-main{flex-direction:column;align-items:stretch;gap:12px}
  #cookieBanner .cookie-detail-row{grid-template-columns:1fr;gap:4px}
}
@media(prefers-reduced-motion:reduce){#cookieBanner .cookie-details-inline{animation:none!important}}

/* ===== v1.25.2 Continuous Matrix Background ===== */
#mdNetwork.md-network{
  display:block!important;position:fixed!important;inset:0!important;
  width:100%!important;height:100%!important;opacity:1!important;
  visibility:visible!important;pointer-events:none!important;
  animation:none!important;transition:none!important;
}
body.md-language-home-ready #mdNetwork,
body.md-single-entry #mdNetwork,
html.md-language-home-ready #mdNetwork{
  display:block!important;opacity:1!important;visibility:visible!important;
}

/* ===== v1.25.2 Contact: new website invitation ===== */
.contact-alt-line{
  display:block;
  margin-top:.45em;
  font-size:.42em;
  line-height:1.15;
  font-weight:800;
  letter-spacing:-.02em;
}
