﻿:root{--radius:1rem;--background:#100c0a;--foreground:#f8ece6;--surface:#15100d;--surface-2:#18110e;--card:#17100d;--card-foreground:#f8ece6;--popover:#120d0b;--popover-foreground:#f8ece6;--primary:#ff8a3d;--primary-foreground:#100c0a;--primary-glow:#ff7568;--accent:#ff7568;--accent-foreground:#100c0a;--brand-orange:#ff5722;--brand-red:#f44336;--secondary:#18110e;--secondary-foreground:#f8ece6;--muted:#18110e;--muted-foreground:#c9b8b0;--destructive:#8f1010;--destructive-foreground:#fff;--border:rgb(248 236 230 / 14%);--input:rgb(248 236 230 / 20%);--ring:#ff8a3d;--gradient-hero:radial-gradient(120% 90% at 50% -10%,color-mix(in oklab,var(--brand-orange) 28%,transparent) 0%,transparent 60%),radial-gradient(70% 60% at 85% 20%,color-mix(in oklab,var(--brand-red) 18%,transparent) 0%,transparent 65%);--gradient-accent:linear-gradient(120deg,var(--primary),var(--primary-glow) 55%,var(--accent));--gradient-surface:linear-gradient(160deg,color-mix(in oklab,var(--surface-2) 90%,transparent),color-mix(in oklab,var(--background) 92%,transparent));--shadow-soft:inset 0 1px 0 color-mix(in oklab,white 6%,transparent),0 20px 50px -30px oklch(0 0 0 / .9);--shadow-elevated:inset 0 1px 0 color-mix(in oklab,white 8%,transparent),0 40px 90px -40px oklch(0 0 0 / .95);--shadow-glow:0 0 0 1px color-mix(in oklab,var(--primary) 30%,transparent),0 30px 80px -40px color-mix(in oklab,var(--primary) 75%,transparent);--transition-smooth:260ms cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box;border-color:var(--border)}html{scroll-behavior:smooth;color-scheme:dark}body{margin:0;background:var(--background);color:var(--foreground);font-family:"Manrope",ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}h1,h2,h3,h4,p,ul,ol,dl,figure,blockquote{margin-top:0}h1,h2,h3,h4{font-family:"Sora",ui-sans-serif,system-ui,sans-serif;letter-spacing:-.025em}h1,h2,h3,p{margin-bottom:0}ul,ol{padding-left:0;margin-bottom:0;list-style:none}svg{width:1.25rem;height:1.25rem;display:block}.site-shell{min-height:100vh;display:flex;flex-direction:column}.site-shell>main{flex:1}.container{width:100%;max-width:1200px;margin-inline:auto;padding-inline:1.25rem}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.inset-0{inset:0}.grid{display:grid}.flex{display:flex}.inline-flex{display:inline-flex}.block{display:block}.hidden{display:none}[hidden]{display:none!important}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.place-items-center{place-items:center}.w-full{width:100%}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.mt-auto{margin-top:auto}.text-center{text-align:center}.text-left{text-align:left}.text-accent{color:var(--accent)}.text-muted-foreground{color:var(--muted-foreground)}.text-foreground{color:var(--foreground)}.uppercase{text-transform:uppercase}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-semibold{font-weight:600}.font-medium{font-weight:500}.font-bold{font-weight:700}.font-display{font-family:"Sora",sans-serif}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-7xl{font-size:4.5rem}.leading-relaxed{line-height:1.65}.rounded-full{border-radius:999px}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.border{border:1px solid var(--border)}.border-t{border-top:1px solid var(--border)}.border-b{border-bottom:1px solid var(--border)}.bg-surface-gradient,.panel,.pricing-card,.feature-card,.testimonial,.comparison{background:var(--gradient-surface)}.bg-surface{background:var(--surface)}.bg-popover{background:var(--popover)}.bg-accent-gradient{background:var(--gradient-accent)}.bg-hero-glow,.hero-glow{background-image:var(--gradient-hero)}.bg-grid,.hero-grid{background-image:linear-gradient(to right,rgb(255 255 255 / 4%) 1px,transparent 1px),linear-gradient(to bottom,rgb(255 255 255 / 4%) 1px,transparent 1px);background-size:64px 64px}.glass{background:rgb(25 17 14 / 70%);backdrop-filter:blur(18px) saturate(150%);border:1px solid var(--border)}.glass-strong{background:rgb(25 17 14 / 91%);backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--border)}.text-gradient{background:var(--gradient-accent);-webkit-background-clip:text;background-clip:text;color:transparent}.shadow-soft{box-shadow:var(--shadow-soft)}.shadow-elevated{box-shadow:var(--shadow-elevated)}.shadow-glow{box-shadow:var(--shadow-glow)}.hairline,.divider{background:linear-gradient(90deg,transparent,rgb(255 138 61 / 48%),transparent)}
.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-7{gap:1.75rem}.gap-8{gap:2rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-12{margin-top:3rem}.mb-3{margin-bottom:.75rem}.my-10{margin-block:2.5rem}.py-16{padding-block:4rem}.py-20{padding-block:5rem}.py-24{padding-block:6rem}.pb-24{padding-bottom:6rem}.pt-0{padding-top:0}.pt-4{padding-top:1rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-3{padding-inline:.75rem}.px-4{padding-inline:1rem}.px-5{padding-inline:1.25rem}.px-6{padding-inline:1.5rem}.px-7{padding-inline:1.75rem}.px-9{padding-inline:2.25rem}.py-1{padding-block:.25rem}.py-2{padding-block:.5rem}.py-3{padding-block:.75rem}.py-4{padding-block:1rem}.py-5{padding-block:1.25rem}.h-9{height:2.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.size-1\.5{width:.375rem;height:.375rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-9{width:2.25rem;height:2.25rem}.size-10{width:2.5rem;height:2.5rem}.size-11{width:2.75rem;height:2.75rem}.size-12{width:3rem;height:3rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;border:1px solid transparent;font-size:.875rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:transform .2s,filter .2s,border-color .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-hero{background:var(--gradient-accent);color:#140906;box-shadow:var(--shadow-glow)}.btn-hero:hover{filter:brightness(1.08)}.btn-glass{background:rgb(25 17 14 / 70%);color:var(--foreground);border-color:var(--border);backdrop-filter:blur(18px)}.btn-outline{background:transparent;color:var(--foreground);border-color:var(--border)}.btn-outline:hover,.btn-glass:hover{border-color:rgb(255 138 61 / 55%);background:rgb(36 23 19 / 78%)}
.site-header{position:sticky;top:0;z-index:50;width:100%;transition:background .3s,box-shadow .3s,border .3s;border-bottom:1px solid transparent}.site-header.scrolled{background:rgb(25 17 14 / 91%);backdrop-filter:blur(24px) saturate(160%);border-bottom-color:var(--border);box-shadow:var(--shadow-soft)}.header-row{height:4rem}.site-logo{display:inline-flex;align-items:center;gap:.625rem}.logo-mark{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.75rem;background:var(--gradient-accent);box-shadow:var(--shadow-glow);color:#140906}.logo-text{font-size:1.05rem}.desktop-nav{display:none}.nav-link,.mega-trigger,.language-trigger{transition:color .2s,border-color .2s}.nav-link:hover,.mega-trigger:hover,.nav-link.active{color:var(--foreground)}.mega-panel{left:0;transform:none;width:min(46rem,90vw)}.mega-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.mega-link:hover,.language-menu a:hover,.mobile-nav a:hover,.mobile-nav a.active{background:var(--surface-2);color:var(--foreground)}.language-menu{min-width:11rem}.language-menu .current{color:var(--accent)}.mobile-nav{background:rgb(25 17 14 / 97%)}.skip-link:focus{position:fixed;top:.75rem;left:1rem;z-index:100;background:var(--primary);color:#140906;padding:.5rem 1rem;border-radius:999px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.php-section{position:relative;padding-block:5rem}.section-heading{display:flex;flex-direction:column;gap:1rem;max-width:42rem;margin-inline:auto;align-items:center;text-align:center}.section-heading.left{margin-inline:0;align-items:flex-start;text-align:left}.section-heading h2{font-size:clamp(1.875rem,4vw,2.75rem);line-height:1.1}.section-heading p{font-size:clamp(1rem,2vw,1.125rem);line-height:1.65}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border);background:rgb(25 17 14 / 65%);padding:.375rem .875rem;border-radius:999px;color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.eyebrow-dot,.status-dot{background:var(--accent);animation:soft-pulse 3.2s ease-in-out infinite}.home-hero,.page-hero{position:relative;overflow:hidden}.home-hero .container{padding-top:5rem;padding-bottom:5rem}.home-hero .hero-image{width:100%;height:100%;object-fit:cover;opacity:.4;mask-image:linear-gradient(to bottom,#000,transparent 85%)}.hero-copy{position:relative;display:flex;flex-direction:column;gap:1.5rem;max-width:48rem}.home-copy{margin-inline:auto;align-items:center;text-align:center;gap:1.75rem}.home-copy h1{font-size:clamp(2.5rem,7vw,4.25rem);line-height:1.03}.page-hero{padding-block:4rem}.page-hero h1{font-size:clamp(2.25rem,6vw,3.75rem);line-height:1.05}.hero-glow,.hero-grid{pointer-events:none}.trusted{background:rgb(25 17 14 / 45%)}.trusted ul,.stats-grid,.feature-grid,.pricing-grid,.testimonials,.performance-list,.steps{display:grid}.trusted ul{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:1fr}.stat-card,.feature-card,.pricing-card,.testimonial,.panel{border:1px solid var(--border);background:var(--gradient-surface);box-shadow:var(--shadow-soft)}.stat-card,.feature-card,.pricing-card,.testimonial,.panel{border-radius:1.5rem}.stat-card{padding:1.5rem}.feature-grid{grid-template-columns:1fr;gap:1.25rem}.feature-card{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;overflow:hidden}.feature-icon{display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);border-radius:1rem;color:var(--accent)}.panel{padding:1.5rem}.card-hover{transition:transform 260ms cubic-bezier(.22,1,.36,1),border-color 260ms,box-shadow 260ms}.card-hover:hover{transform:translateY(-3px);border-color:rgb(255 138 61 / 50%);box-shadow:var(--shadow-elevated)}.split-grid{display:grid}.large-panel,.cta-panel{border-radius:2rem;border:1px solid var(--border);background:var(--gradient-surface);box-shadow:var(--shadow-elevated)}.dashboard-preview{background:rgb(25 17 14 / 72%)}.meter{height:6rem}.meter span{display:block;flex:1;border-radius:999px;background:var(--gradient-accent);opacity:.72}.performance-list{grid-template-columns:1fr}.performance-list li{background:rgb(25 17 14 / 60%)}.feature-list li{line-height:1.5}.pricing-grid{grid-template-columns:1fr;gap:1.5rem}.pricing-card{display:flex;flex-direction:column;gap:1.5rem;padding:1.75rem;position:relative}.pricing-card.highlighted{border-color:rgb(255 138 61 / 55%);box-shadow:var(--shadow-glow)}.popular{position:absolute;top:-.75rem;left:1.75rem;background:var(--gradient-accent);color:#140906}.testimonials{grid-template-columns:1fr}.testimonial{display:flex;flex-direction:column;gap:1.5rem;padding:1.75rem}.testimonial blockquote{line-height:1.65}.avatar{display:grid;place-items:center}.faq{max-width:48rem}.faq-item{background:var(--gradient-surface)}.faq-trigger{border:0;background:transparent;cursor:pointer;color:var(--foreground)}.faq-trigger svg{transition:transform .2s}.faq-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.faq-content{overflow:hidden}.newsletter .panel{position:relative;padding:2rem}.newsletter-grid{display:grid}.cta-copy{max-width:42rem;margin-inline:auto}.cta-panel{padding:3.5rem 1.5rem}.cta-copy h2{font-size:clamp(1.875rem,5vw,2.75rem)}.comparison{overflow:hidden}.comparison>div{overflow-x:auto}.comparison table{width:100%;min-width:52rem;border-collapse:collapse;text-align:left;font-size:.875rem}.comparison th,.comparison td{padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.comparison thead th{padding-block:1.25rem}.comparison .highlight{color:var(--accent)}.comparison .highlight-cell{background:rgb(36 23 19 / 50%)}.infrastructure-panel>img{width:100%;height:100%;object-fit:cover;opacity:.3}.infrastructure-panel>div{padding:2rem}.contact-grid{display:grid}.contact-form label{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;font-weight:500}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea,.newsletter input{width:100%;border:1px solid var(--input);background:rgb(16 12 10 / 68%);color:var(--foreground);outline:none}.contact-form input:not([type=checkbox]),.contact-form select{height:3rem;border-radius:1rem;padding-inline:1rem}.contact-form textarea{border-radius:1rem;padding:1rem;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.newsletter input:focus{border-color:var(--ring)}.contact-form .consent{display:flex;flex-direction:row;align-items:flex-start}.contact-form .consent input{margin-top:.25rem;accent-color:var(--primary)}.hours div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.hours dd{margin:0;font-weight:600}.map-placeholder{min-height:22rem}.legal-grid{display:grid}.legal-nav a{display:block;padding:.5rem .75rem;border-radius:.75rem;color:var(--muted-foreground)}.legal-nav a:hover{background:var(--surface-2);color:var(--foreground)}.legal-article>section{padding-block:2rem;border-bottom:1px solid var(--border);scroll-margin-top:7rem}.legal-article h2{font-size:clamp(1.25rem,3vw,1.5rem)}.legal-body{display:flex;flex-direction:column;gap:1rem;margin-top:1rem;color:var(--muted-foreground);font-size:.95rem;line-height:1.65}.site-footer{background:rgb(25 17 14 / 42%)}.footer-grid{display:grid}.footer-links{display:grid}.footer-links nav>p{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-foreground)}.footer-links ul{display:flex;flex-direction:column;gap:.625rem;margin-top:.75rem}.footer-links a{font-size:.875rem;color:var(--muted-foreground)}.footer-links a:hover{color:var(--foreground)}.social-list a:hover{border-color:rgb(255 138 61 / 55%);color:var(--foreground)}.back-to-top{opacity:0;pointer-events:none;transform:translateY(.75rem);transition:.3s;color:var(--foreground);cursor:pointer}.back-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.cookie-banner{left:1rem;right:1rem;max-width:48rem}.cookie-inner{box-shadow:var(--shadow-elevated)}.error-page{min-height:70vh}.error-page>div{max-width:28rem}
@keyframes rise-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-pulse{0%,100%{opacity:.5}50%{opacity:1}}.animate-rise{animation:rise-in .6s cubic-bezier(.22,1,.36,1) both}.cookie-banner.show,.mega-panel.show,.language-menu.show,.mobile-nav.show{animation:rise-in .35s cubic-bezier(.22,1,.36,1) both}
@media(min-width:640px){.container{padding-inline:2rem}.sm\:block{display:block}.sm\:inline-flex{display:inline-flex}.sm\:flex-row{flex-direction:row}.sm\:grid-cols-2,.stats-grid,.feature-grid,.performance-list,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3,.trusted ul,.footer-links{grid-template-columns:repeat(3,minmax(0,1fr))}.home-hero .container{padding-top:7rem;padding-bottom:7rem}.page-hero{padding-top:6rem;padding-bottom:5rem}.php-section{padding-block:6rem}.panel{padding:2rem}.feature-card{padding:1.75rem}.newsletter .panel{padding:3rem}.cta-panel{padding:5rem 3rem}.infrastructure-panel>div{padding:3rem}.header-row{height:4.5rem}}
@media(min-width:768px){.md\:grid-cols-2,.pricing-grid,.testimonials{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.lg\:flex,.desktop-nav{display:flex}.lg\:hidden,.mobile-trigger{display:none!important}.header-actions>.btn-hero{display:inline-flex}.feature-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid.cols-4,.steps{grid-template-columns:repeat(4,minmax(0,1fr))}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.trusted ul{grid-template-columns:repeat(5,minmax(0,1fr))}.split-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}.testimonials{grid-template-columns:repeat(3,minmax(0,1fr))}.newsletter-grid{grid-template-columns:1.1fr 1fr;align-items:center}.footer-grid{grid-template-columns:1.4fr 2fr}.contact-grid{grid-template-columns:1.15fr .85fr}.legal-grid{grid-template-columns:16rem 1fr;gap:4rem}.legal-nav{position:sticky;top:6rem;align-self:start}.infrastructure-panel>div{padding:4rem}.php-section{padding-block:7rem}}
@media(min-width:1280px){.pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Keep PHP-only helper classes on the exact React design tokens. */
.btn-hero,.logo-mark,.skip-link:focus,.popular{color:#0b0908}
.glass{background:color-mix(in oklab,var(--surface) 55%,transparent)}
.glass-strong{background:color-mix(in oklab,var(--surface) 85%,transparent)}
.bg-grid,.hero-grid{background-image:linear-gradient(to right,color-mix(in oklab,white 4%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in oklab,white 4%,transparent) 1px,transparent 1px)}
.card-hover{transition:transform var(--transition-smooth),border-color var(--transition-smooth),box-shadow var(--transition-smooth),background-color var(--transition-smooth)}
.card-hover:hover{border-color:color-mix(in oklab,var(--primary) 45%,transparent)}
.hairline,.divider{background:linear-gradient(90deg,transparent,color-mix(in oklab,var(--primary) 45%,transparent),transparent)}

/* Royale-inspired footer hierarchy with SonicPanel orange/red styling and explicit current/legacy compliance states. */
.site-footer{isolation:isolate;overflow:hidden;background:linear-gradient(180deg,rgb(20 13 11 / 32%) 0%,rgb(15 10 8 / 94%) 18%,#0b0807 100%)}
.site-footer-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 7%,rgb(255 87 34 / 15%),transparent 30rem),radial-gradient(circle at 90% 26%,rgb(244 67 54 / 10%),transparent 28rem)}
.footer-container{position:relative;z-index:1}
.footer-cta{position:relative;display:grid;align-items:center;gap:2rem;overflow:hidden;border:1px solid rgb(255 138 61 / 28%);border-radius:2rem;padding:clamp(1.5rem,4vw,3rem);background:linear-gradient(125deg,rgb(43 25 19 / 96%),rgb(25 16 13 / 98%) 56%,rgb(45 18 16 / 94%));box-shadow:var(--shadow-elevated),inset 0 1px rgb(255 255 255 / 5%)}
.footer-cta:before{content:"";position:absolute;width:26rem;height:26rem;right:-10rem;top:-15rem;border-radius:999px;background:radial-gradient(circle,rgb(255 87 34 / 28%),transparent 67%);filter:blur(6px)}
.footer-cta:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(to right,rgb(255 255 255 / 6%) 1px,transparent 1px),linear-gradient(to bottom,rgb(255 255 255 / 6%) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(90deg,transparent 20%,#000);mask-image:linear-gradient(90deg,transparent 20%,#000)}
.footer-cta>*{position:relative;z-index:1}.footer-cta-copy{max-width:46rem}
.footer-cta-eyebrow{display:inline-flex;align-items:center;gap:.55rem;color:var(--primary);font-size:.6875rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.footer-cta-eyebrow>span{width:.45rem;height:.45rem;border-radius:999px;background:var(--gradient-accent);box-shadow:0 0 0 .3rem rgb(255 87 34 / 11%)}
.footer-cta-title{max-width:44rem;margin-top:.9rem;color:var(--foreground);font-size:clamp(1.7rem,4vw,2.6rem);font-weight:650;line-height:1.08;text-wrap:balance}
.footer-cta-text{max-width:42rem;margin-top:1rem;color:var(--muted-foreground);font-size:.9375rem;line-height:1.7;text-wrap:pretty}
.footer-cta-actions{display:flex;min-width:min(100%,12rem);flex-direction:column;gap:.75rem}.footer-cta-actions .btn{width:100%}
.footer-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:2.5rem;margin-top:clamp(3.5rem,8vw,6rem);padding-bottom:clamp(2.75rem,6vw,4.5rem)}
.footer-column{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:1.15rem}
.footer-heading{display:flex;align-items:center;gap:.65rem;color:var(--foreground);font-size:.6875rem;font-weight:800;letter-spacing:.16em;line-height:1.35;text-transform:uppercase}
.footer-heading:before{content:"";width:1.25rem;height:2px;flex:0 0 auto;border-radius:999px;background:var(--gradient-accent)}
.footer-brand-logo .site-logo{transform-origin:left center}.footer-brand-description{max-width:24rem;color:var(--muted-foreground);font-size:.875rem;line-height:1.75}
.footer-contact-list{display:flex;min-width:0;flex-direction:column;gap:.6rem}.footer-contact-list a{display:inline-flex;min-width:0;align-items:center;gap:.65rem;color:var(--muted-foreground);font-size:.8125rem;line-height:1.5;transition:color var(--transition-smooth)}.footer-contact-list a svg{flex:0 0 auto;color:var(--primary)}.footer-contact-list a span{min-width:0;overflow-wrap:anywhere}.footer-contact-list a:hover{color:var(--foreground)}
.footer-nav ul{display:flex;flex-direction:column;gap:.75rem}.footer-nav a{display:inline-flex;align-items:center;gap:.5rem;color:var(--muted-foreground);font-size:.875rem;line-height:1.5;text-underline-offset:.2em;transition:color var(--transition-smooth),transform var(--transition-smooth)}.footer-nav a:before{content:"";width:.3rem;height:.3rem;flex:0 0 auto;border-radius:999px;background:var(--border);transition:background-color var(--transition-smooth),box-shadow var(--transition-smooth)}.footer-nav a:hover{color:var(--foreground);transform:translateX(.2rem)}.footer-nav a:hover:before{background:var(--primary);box-shadow:0 0 .65rem rgb(255 87 34 / 60%)}
.footer-lower-band{display:grid;gap:1.75rem;border:1px solid var(--border);border-radius:1.75rem;padding:clamp(1rem,3vw,1.5rem);background:linear-gradient(135deg,rgb(35 23 19 / 82%),rgb(22 15 13 / 90%));box-shadow:inset 0 1px rgb(255 255 255 / 4%)}
.footer-identity{min-width:0}.footer-legal-name{margin-top:.9rem;color:var(--foreground);font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-size:1.25rem;font-weight:650;letter-spacing:-.02em}
.company-details{margin-top:.75rem;color:var(--muted-foreground);font-size:.75rem;font-style:normal;line-height:1.6}.company-details p+p{margin-top:.35rem}.company-details span{color:var(--foreground)}.company-details a{color:var(--accent);text-underline-offset:.2em;overflow-wrap:anywhere}.company-details a:hover{text-decoration:underline}
.footer-compliance{display:flex;min-width:0;flex-direction:column;gap:1.25rem;padding:0}.footer-compliance-copy{max-width:38rem}
.consumer-badges{display:grid;grid-template-columns:minmax(0,250px);justify-content:start;gap:1rem}.consumer-badge-card{display:flex;width:250px;max-width:100%;min-width:0;flex-direction:column;gap:.625rem}.consumer-badge-header{display:flex;min-height:1.5rem;align-items:center;justify-content:space-between;gap:.75rem;color:var(--foreground);font-size:.75rem;font-weight:700;letter-spacing:.04em}.consumer-badge-status{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;padding:.2rem .55rem;font-size:.625rem;font-weight:800;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.consumer-badge-status.is-active{border-color:rgb(255 138 61 / 42%);background:rgb(255 138 61 / 12%);color:var(--primary)}.consumer-badge-status.is-closed{border-color:rgb(244 67 54 / 42%);background:rgb(244 67 54 / 12%);color:#ff9a90}.consumer-badge-link{display:grid;width:250px;min-height:62px;max-width:100%;overflow:hidden;place-items:center;border:1px solid rgb(248 236 230 / 22%);border-radius:.5rem;background:#fff;transition:transform var(--transition-smooth),border-color var(--transition-smooth),box-shadow var(--transition-smooth)}.consumer-badge-link:hover{transform:translateY(-2px);border-color:rgb(255 138 61 / 55%);box-shadow:var(--shadow-glow)}.consumer-badge-image{display:block;width:250px;max-width:100%;height:auto;background:#fff}.consumer-badge-image.is-odr-legacy{filter:grayscale(1);opacity:.72}.consumer-badge-caption{color:var(--muted-foreground);font-size:.6875rem;line-height:1.45}
.footer-cta-actions a:focus-visible,.footer-nav a:focus-visible,.footer-contact-list a:focus-visible,.consumer-badge-link:focus-visible,.company-details a:focus-visible{outline:3px solid var(--ring);outline-offset:3px}
.footer-bottom{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;border-top:1px solid var(--border);padding-top:1.5rem;color:var(--muted-foreground);font-size:.75rem;line-height:1.55}.footer-status{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.footer-status>span:first-child{display:inline-flex;align-items:center;gap:.5rem}.footer-status .status-dot{width:.4rem;height:.4rem;border-radius:999px;background:var(--accent);box-shadow:0 0 .75rem rgb(255 138 61 / 70%);animation:soft-pulse 3.2s ease-in-out infinite}
@media(min-width:640px){.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.consumer-badges{grid-template-columns:repeat(2,minmax(0,250px))}.footer-bottom{flex-direction:row;align-items:center;justify-content:space-between}.footer-status{justify-content:flex-end}}
@media(min-width:768px){.footer-cta{grid-template-columns:minmax(0,1fr) auto}}
@media(min-width:1024px){.footer-columns{grid-template-columns:minmax(0,1.45fr) minmax(0,.72fr) minmax(0,.72fr) minmax(0,1.05fr);gap:2.5rem}.footer-lower-band{grid-template-columns:minmax(18rem,.8fr) minmax(0,1.45fr);align-items:start}.footer-identity{border-right:1px solid var(--border);padding-right:1.75rem}}
@media(max-width:639px){.header-actions>a,.header-actions>.language{display:none!important}.header-actions>.mobile-trigger{display:grid!important}}
@media(max-width:359px){.site-footer .footer-container{padding-inline:1rem}.footer-cta{border-radius:1.5rem;padding:1.125rem}.footer-lower-band{border-radius:1.25rem;padding:.75rem}.consumer-badge-header{gap:.4rem}}
html,body{overflow-x:clip}
/* Contact form security UI and no-scroll responsive comparison layout. */
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.contact-form{min-width:0}.contact-form input,.contact-form select,.contact-form textarea{min-width:0;max-width:100%}.form-feedback{display:flex;gap:.875rem;margin-top:1.25rem;border:1px solid var(--border);border-radius:1rem;padding:1rem;line-height:1.5}.form-feedback.success{border-color:rgb(255 138 61 / 45%);background:rgb(255 138 61 / 10%)}.form-feedback.error,.form-configuration-notice{border:1px solid rgb(244 67 54 / 45%);background:rgb(143 16 16 / 22%);color:#ffd8d4}.form-feedback-icon{display:grid;width:2rem;height:2rem;flex:0 0 2rem;place-items:center;border-radius:.75rem;background:var(--surface);color:var(--accent)}.form-feedback.error .form-feedback-icon{color:#ff9a90}.form-feedback ul{margin:.5rem 0 0;padding-left:1.25rem;list-style:disc}.form-feedback li+li{margin-top:.25rem}.form-configuration-notice{border-radius:1rem;padding:.875rem 1rem;font-size:.8125rem;line-height:1.55}.contact-form button[disabled]{cursor:not-allowed;opacity:.55;box-shadow:none}.recaptcha-shell{width:100%;max-width:304px;min-width:0;height:78px;overflow:hidden}.recaptcha-scaler{width:304px;height:78px;transform-origin:left top}.recaptcha-disclosure{max-width:34rem}.map-label{max-width:100%;overflow-wrap:anywhere}.map-label span{min-width:0;overflow-wrap:anywhere}.contact-details{min-width:0}.contact-details li>span:last-child{min-width:0;overflow-wrap:anywhere}.hours dd{min-width:0;text-align:right;overflow-wrap:anywhere}.comparison>.comparison-viewport{overflow:visible}
@media(max-width:899px){.comparison table{display:block;width:100%;min-width:0}.comparison thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.comparison tbody{display:grid}.comparison tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--border)}.comparison tbody tr:last-child{border-bottom:0}.comparison th[scope=row]{display:block;grid-column:1/-1;padding:1rem;border-bottom:1px solid var(--border);background:rgb(25 17 14 / 62%);color:var(--foreground);font-size:.875rem}.comparison td{display:flex;min-width:0;min-height:4.5rem;flex-direction:column;justify-content:center;gap:.4rem;padding:.875rem 1rem;border-bottom:0;overflow-wrap:anywhere}.comparison td:before{content:attr(data-label);color:var(--muted-foreground);font-size:.625rem;font-weight:700;letter-spacing:.08em;line-height:1.35;text-transform:uppercase}.comparison td:nth-of-type(even){border-left:1px solid var(--border)}}
@media(max-width:479px){.comparison tbody tr{grid-template-columns:minmax(0,1fr)}.comparison td:nth-of-type(even){border-left:0}.comparison td+td{border-top:1px solid var(--border)}}
@media(min-width:1024px){.mega-panel{position:absolute!important;top:100%!important;left:0!important;right:auto!important;translate:none!important;transform:none!important;width:min(46rem,calc(100vw - 2.5rem))!important;padding-top:.85rem}.mega-panel .mega-inner{max-height:min(70vh,32rem);overflow:auto}}
@media(max-width:359px){.contact-form-panel{padding:1rem!important}}

/* Persistent EU cookie preferences dialog and floating settings control. */
html.consent-open,html.consent-open body{overflow:hidden}
.cookie-preferences-trigger{position:fixed;right:1.25rem;bottom:1.25rem;z-index:46;display:grid;width:3.5rem;height:3.5rem;place-items:center;border:1px solid rgb(255 138 61 / 48%);border-radius:1.15rem;background:var(--gradient-accent);color:#100c0a;cursor:pointer;box-shadow:var(--shadow-glow),0 18px 45px -22px rgb(0 0 0 / 90%);transition:transform var(--transition-smooth),filter var(--transition-smooth),box-shadow var(--transition-smooth)}
.cookie-preferences-trigger:before{content:"";position:absolute;inset:-.35rem;z-index:-1;border:1px solid rgb(255 138 61 / 18%);border-radius:1.45rem;background:rgb(16 12 10 / 58%);backdrop-filter:blur(12px)}
.cookie-preferences-trigger:hover{transform:translateY(-3px) scale(1.02);filter:brightness(1.06)}
.cookie-preferences-trigger__label{position:absolute;right:calc(100% + .8rem);max-width:15rem;border:1px solid var(--border);border-radius:.75rem;padding:.5rem .75rem;background:rgb(21 16 13 / 96%);color:var(--foreground);font-size:.75rem;font-weight:700;line-height:1.25;white-space:nowrap;opacity:0;pointer-events:none;transform:translateX(.35rem);box-shadow:var(--shadow-soft);transition:opacity var(--transition-smooth),transform var(--transition-smooth)}
.cookie-preferences-trigger:hover .cookie-preferences-trigger__label,.cookie-preferences-trigger:focus-visible .cookie-preferences-trigger__label{opacity:1;transform:translateX(0)}
.back-to-top{right:1.25rem!important;bottom:5.65rem!important}.consent-open .cookie-preferences-trigger,.consent-open .back-to-top{opacity:0!important;pointer-events:none!important}
.cookie-consent{position:fixed;inset:auto 0 1rem;z-index:90;width:min(calc(100% - 2rem),48rem);max-width:none;max-height:calc(100dvh - 2rem);margin:0 auto;padding:0;overflow:hidden;border:1px solid rgb(255 138 61 / 30%);border-radius:1.75rem;background:linear-gradient(145deg,rgb(37 23 18 / 99%),rgb(16 11 9 / 99%));color:var(--foreground);box-shadow:var(--shadow-elevated),var(--shadow-glow)}
.cookie-consent:not([open]){display:none}.cookie-consent[open]{display:block;animation:rise-in .35s cubic-bezier(.22,1,.36,1) both}.cookie-consent::backdrop{background:rgb(8 5 4 / 64%);backdrop-filter:blur(3px)}
.cookie-consent__glow{position:absolute;width:24rem;height:24rem;right:-11rem;top:-15rem;border-radius:999px;background:radial-gradient(circle,rgb(255 87 34 / 28%),transparent 68%);pointer-events:none}
.cookie-consent__body{position:relative;max-height:calc(100dvh - 2rem);overflow-y:auto;overscroll-behavior:contain;padding:clamp(1.25rem,3vw,1.75rem)}
.cookie-consent__header{display:flex;align-items:center;gap:1rem}.cookie-consent__icon{display:grid;width:3rem;height:3rem;flex:0 0 3rem;place-items:center;border:1px solid rgb(255 138 61 / 32%);border-radius:1rem;background:rgb(255 138 61 / 11%);color:var(--primary);box-shadow:inset 0 1px rgb(255 255 255 / 5%)}
.cookie-consent__eyebrow{color:var(--primary);font-size:.6875rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.cookie-consent h2{margin-top:.3rem;font-size:clamp(1.35rem,4vw,1.75rem);line-height:1.15}
.cookie-consent__description{margin-top:1rem;color:var(--muted-foreground);font-size:.875rem;line-height:1.65}.cookie-consent__description a{color:var(--accent);font-weight:700;text-decoration:underline;text-decoration-color:rgb(255 117 104 / 35%);text-underline-offset:.2rem}
.cookie-consent__notice{margin-top:.75rem;border-left:2px solid var(--primary);padding-left:.8rem;color:var(--foreground);font-size:.75rem;line-height:1.55}
.cookie-consent__details{margin-top:1rem;border:1px solid var(--border);border-radius:1rem;background:rgb(16 12 10 / 48%)}.cookie-consent__details summary{padding:.8rem 1rem;color:var(--foreground);font-size:.8125rem;font-weight:700;cursor:pointer}.cookie-consent__details summary::marker{color:var(--primary)}
.cookie-consent__inventory{border-top:1px solid var(--border);padding:1rem}.cookie-consent__category-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.cookie-consent__category-heading strong{font-size:.8125rem}.cookie-consent__category-heading span{border:1px solid rgb(255 138 61 / 30%);border-radius:999px;padding:.2rem .55rem;background:rgb(255 138 61 / 10%);color:var(--primary);font-size:.625rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.cookie-consent__list{display:grid;gap:.65rem;margin-top:.85rem}.cookie-consent__list>div{display:grid;grid-template-columns:minmax(9rem,.7fr) minmax(0,1.7fr);gap:.75rem;border-top:1px solid rgb(248 236 230 / 8%);padding-top:.65rem}.cookie-consent__list dt{min-width:0;color:var(--foreground);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;font-weight:700;overflow-wrap:anywhere}.cookie-consent__list dd{min-width:0;margin:0;color:var(--muted-foreground);font-size:.6875rem;line-height:1.5;overflow-wrap:anywhere}
.cookie-consent__external-note{margin-top:.85rem;border-top:1px solid rgb(248 236 230 / 8%);padding-top:.75rem;color:var(--muted-foreground);font-size:.6875rem;line-height:1.5}
.cookie-consent__actions{display:grid;grid-template-columns:minmax(0,1fr);gap:.7rem;margin-top:1rem}.cookie-consent__choice{min-height:3rem;border:1px solid rgb(248 236 230 / 22%);border-radius:999px;padding:.7rem 1rem;background:rgb(36 23 19 / 74%);color:var(--foreground);font-size:.8125rem;font-weight:800;line-height:1.25;white-space:normal;cursor:pointer;transition:transform var(--transition-smooth),border-color var(--transition-smooth),background-color var(--transition-smooth),box-shadow var(--transition-smooth)}.cookie-consent__choice:hover{transform:translateY(-2px);border-color:rgb(255 138 61 / 62%);background:rgb(48 28 22 / 92%);box-shadow:0 12px 28px -20px rgb(255 87 34 / 75%)}.cookie-consent__choice[aria-pressed=true]{border-color:var(--primary);background:rgb(255 138 61 / 14%);box-shadow:inset 0 0 0 1px rgb(255 138 61 / 20%)}
@media(min-width:768px){.cookie-consent__actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:359px){.cookie-preferences-trigger{right:.75rem;bottom:.75rem;width:3.25rem;height:3.25rem;border-radius:1rem}.cookie-preferences-trigger__label{display:none}.back-to-top{right:.75rem!important;bottom:4.85rem!important}.cookie-consent{bottom:.5rem;width:calc(100% - 1rem);max-height:calc(100dvh - 1rem);border-radius:1.25rem}.cookie-consent__body{max-height:calc(100dvh - 1rem);padding:1rem}.cookie-consent__header{gap:.75rem}.cookie-consent__list>div{grid-template-columns:minmax(0,1fr);gap:.3rem}}
@media(hover:none){.cookie-preferences-trigger__label{display:none}}
/* ==========================================================================
   SonicPanel 2026 Visual System â€” premium infrastructure redesign layer
   Content/SEO untouched; presentation only. Overrides earlier component look.
   ========================================================================== */

:root{
  --background:#0b0908;
  --foreground:#f7ece6;
  --surface:#12100e;
  --surface-2:#171310;
  --card:#14110f;
  --card-foreground:#f7ece6;
  --popover:#100d0b;
  --popover-foreground:#f7ece6;
  --primary:#ff8a3d;
  --primary-foreground:#0b0908;
  --primary-glow:#ff7568;
  --accent:#ff7568;
  --accent-foreground:#0b0908;
  --brand-orange:#ff5722;
  --brand-red:#f44336;
  --secondary:#171310;
  --secondary-foreground:#f7ece6;
  --muted:#171310;
  --muted-foreground:#c4b3ab;
  --destructive:#8f1010;
  --destructive-foreground:#fff;
  --border:rgb(248 236 230 / 12%);
  --input:rgb(248 236 230 / 18%);
  --ring:#ff8a3d;
  --radius:.875rem;
  --gradient-hero:
    radial-gradient(90% 70% at 12% -8%, color-mix(in oklab, var(--brand-orange) 24%, transparent) 0%, transparent 58%),
    radial-gradient(70% 55% at 92% 8%, color-mix(in oklab, var(--brand-red) 16%, transparent) 0%, transparent 62%),
    radial-gradient(50% 40% at 50% 100%, color-mix(in oklab, var(--primary) 10%, transparent) 0%, transparent 70%);
  --gradient-accent:linear-gradient(125deg, var(--primary) 0%, var(--brand-orange) 48%, var(--primary-glow) 100%);
  --gradient-surface:linear-gradient(165deg, color-mix(in oklab, var(--surface-2) 92%, #2a1a14) 0%, color-mix(in oklab, var(--background) 94%, transparent) 100%);
  --gradient-border:linear-gradient(135deg, rgb(255 138 61 / 55%), rgb(248 236 230 / 8%) 42%, rgb(244 67 54 / 35%));
  --shadow-soft:inset 0 1px 0 rgb(255 255 255 / 5%), 0 18px 48px -34px rgb(0 0 0 / .92);
  --shadow-elevated:inset 0 1px 0 rgb(255 255 255 / 7%), 0 36px 90px -42px rgb(0 0 0 / .96);
  --shadow-glow:0 0 0 1px color-mix(in oklab, var(--primary) 28%, transparent), 0 24px 70px -36px color-mix(in oklab, var(--primary) 55%, transparent);
  --transition-smooth:280ms cubic-bezier(.22,1,.36,1);
  --section-space:clamp(4.5rem, 8vw, 7.5rem);
}

body{
  background:
    radial-gradient(1200px 600px at 10% -10%, rgb(255 87 34 / 8%), transparent 55%),
    radial-gradient(900px 500px at 100% 0%, rgb(244 67 54 / 6%), transparent 50%),
    var(--background);
  background-attachment:fixed;
}

/* ---------- Buttons ---------- */
.btn{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  border-radius:.85rem;
  letter-spacing:.01em;
  transition:transform var(--transition-smooth), filter var(--transition-smooth), border-color var(--transition-smooth), background-color var(--transition-smooth), box-shadow var(--transition-smooth);
}
.btn::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent 20%, rgb(255 255 255 / 18%), transparent 80%);
  transform:translateX(-120%);
  transition:transform .55s cubic-bezier(.22,1,.36,1);
  pointer-events:none;
  z-index:-1;
}
.btn:hover::after{transform:translateX(120%)}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.985)}
.btn:focus-visible{outline:3px solid var(--ring); outline-offset:3px}
.btn-hero{
  background:var(--gradient-accent);
  color:#0b0908;
  box-shadow:var(--shadow-glow), inset 0 1px 0 rgb(255 255 255 / 28%);
}
.btn-hero:hover{filter:brightness(1.07) saturate(1.05)}
.btn-glass{
  background:rgb(22 16 13 / 72%);
  border-color:rgb(248 236 230 / 16%);
  backdrop-filter:blur(18px) saturate(140%);
  box-shadow:inset 0 1px 0 rgb(255 255 255 / 4%);
}
.btn-outline{
  background:rgb(18 14 12 / 35%);
  border-color:rgb(248 236 230 / 16%);
}
.btn-outline:hover,.btn-glass:hover{
  border-color:rgb(255 138 61 / 58%);
  background:rgb(40 24 18 / 78%);
  box-shadow:0 16px 40px -28px rgb(255 87 34 / 55%);
}

/* ---------- Header ---------- */
.site-header{
  border-bottom:1px solid transparent;
  background:linear-gradient(180deg, rgb(11 9 8 / 72%), rgb(11 9 8 / 28%));
  backdrop-filter:blur(10px);
}
.site-header.scrolled{
  background:rgb(14 11 9 / 88%);
  backdrop-filter:blur(22px) saturate(150%);
  border-bottom-color:rgb(248 236 230 / 10%);
  box-shadow:0 18px 50px -36px rgb(0 0 0 / .85);
}
.nav-link,.mega-trigger{
  position:relative;
  color:rgb(196 179 171 / 88%);
}
.nav-link::after,.mega-trigger::after{
  content:"";
  position:absolute;
  left:14px; right:14px; bottom:6px;
  height:2px;
  border-radius:999px;
  background:var(--gradient-accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform var(--transition-smooth);
  opacity:.85;
}
.nav-link:hover,.mega-trigger:hover,.nav-link.active{color:var(--foreground)}
.nav-link:hover::after,.nav-link.active::after,.mega-trigger[aria-expanded=true]::after{transform:scaleX(1)}
.mega-inner{
  border-radius:1.25rem;
  background:linear-gradient(160deg, rgb(28 20 16 / 96%), rgb(16 12 10 / 98%));
  box-shadow:var(--shadow-elevated), 0 0 0 1px rgb(255 138 61 / 12%);
}
.mega-link{
  border:1px solid transparent;
  transition:border-color var(--transition-smooth), background-color var(--transition-smooth), transform var(--transition-smooth);
}
.mega-link:hover{
  border-color:rgb(255 138 61 / 28%);
  background:rgb(255 138 61 / 8%);
  transform:translateY(-1px);
}
.logo-mark{
  border-radius:.9rem;
  transition:transform var(--transition-smooth), box-shadow var(--transition-smooth);
}
.site-logo:hover .logo-mark{transform:scale(1.04)}
.mobile-trigger{
  border-radius:.9rem;
  background:rgb(22 16 13 / 65%);
}

/* ---------- Atmosphere / backgrounds ---------- */
.hero-atmosphere{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
}
.hero-orb{
  position:absolute;
  border-radius:999px;
  filter:blur(40px);
  opacity:.55;
}
.hero-orb-a{width:28rem;height:28rem;left:-8rem;top:-10rem;background:radial-gradient(circle, rgb(255 87 34 / 42%), transparent 68%)}
.hero-orb-b{width:22rem;height:22rem;right:-6rem;top:10%;background:radial-gradient(circle, rgb(244 67 54 / 32%), transparent 70%)}
.hero-orb-c{width:18rem;height:18rem;left:35%;bottom:-6rem;background:radial-gradient(circle, rgb(255 138 61 / 22%), transparent 70%)}
.hero-mesh{
  position:absolute;
  inset:0;
  opacity:.35;
  background-image:
    radial-gradient(circle at 1px 1px, rgb(255 255 255 / 12%) 1px, transparent 0);
  background-size:28px 28px;
  mask-image:radial-gradient(ellipse at center, #000 20%, transparent 75%);
}
.hero-scan{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent, rgb(255 138 61 / 6%), transparent);
  background-size:100% 220%;
  animation:hero-scan 9s linear infinite;
  opacity:.4;
}
@keyframes hero-scan{
  0%{background-position:0 -40%}
  100%{background-position:0 140%}
}

/* ---------- Home hero ---------- */
.home-hero{
  min-height:min(92vh, 54rem);
  display:flex;
  align-items:center;
  border-bottom:1px solid rgb(248 236 230 / 8%);
}
.home-hero .hero-image{
  opacity:.28;
  filter:saturate(.85) contrast(1.05);
  mask-image:linear-gradient(to bottom, #000 10%, transparent 92%);
}
.home-hero-layout{
  display:grid;
  gap:2.5rem;
  align-items:center;
}
.home-copy{
  margin-inline:0;
  align-items:flex-start;
  text-align:left;
}
.home-copy h1{
  font-size:clamp(2.35rem, 6.4vw, 4.1rem);
  letter-spacing:-.035em;
}
.hero-meta{
  padding-top:.25rem;
  border-top:1px solid rgb(248 236 230 / 10%);
  max-width:32rem;
  line-height:1.55;
}
.hero-infra{
  position:relative;
  min-height:18rem;
  display:none;
}
.infra-svg{
  width:100%;
  height:auto;
  max-height:28rem;
  filter:drop-shadow(0 30px 60px rgb(0 0 0 / .45));
}
.infra-path{
  stroke-dasharray:8 10;
  animation:infra-flow 4.8s linear infinite;
}
.infra-path:nth-child(2){animation-duration:5.6s; animation-delay:-1s}
.infra-path:nth-child(3){animation-duration:4.2s; animation-delay:-.5s}
.infra-ping{
  transform-origin:center;
  animation:infra-ping 2.8s ease-out infinite;
  opacity:0;
}
@keyframes infra-flow{to{stroke-dashoffset:-120}}
@keyframes infra-ping{
  0%{transform:scale(.85); opacity:.55}
  100%{transform:scale(1.7); opacity:0}
}
.page-hero{
  border-bottom:1px solid rgb(248 236 230 / 8%);
}
.page-hero h1{letter-spacing:-.03em}

@media(min-width:1024px){
  .home-hero-layout{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:2rem;
  }
  .hero-infra{display:block}
}

/* ---------- Sections ---------- */
.php-section{padding-block:var(--section-space)}
.php-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(50% 40% at 0% 0%, rgb(255 87 34 / 5%), transparent 60%),
    radial-gradient(40% 35% at 100% 100%, rgb(244 67 54 / 4%), transparent 55%);
  opacity:0;
}
.section-why::before,
.section-panel::before,
.section-pricing::before,
.section-streaming::before{opacity:1}
.section-heading h2{letter-spacing:-.03em}
.eyebrow{
  background:rgb(255 138 61 / 8%);
  border-color:rgb(255 138 61 / 22%);
  box-shadow:inset 0 1px 0 rgb(255 255 255 / 4%);
}

/* ---------- Cards ---------- */
.stat-card,
.feature-card,
.pricing-card,
.testimonial,
.panel,
.comparison,
.trusted,
.large-panel,
.cta-panel{
  border-radius:1.25rem;
  background:
    linear-gradient(165deg, rgb(30 21 17 / 88%), rgb(16 12 10 / 92%)),
    var(--gradient-surface);
  border-color:rgb(248 236 230 / 11%);
  box-shadow:var(--shadow-soft);
}
.feature-card,
.pricing-card,
.testimonial,
.stat-card{
  position:relative;
  overflow:hidden;
}
.feature-card::before,
.pricing-card::before,
.stat-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:1px;
  background:linear-gradient(90deg, transparent, rgb(255 138 61 / 55%), transparent);
  opacity:.7;
}
.feature-card-beam{
  position:absolute;
  width:9rem;
  height:9rem;
  right:-3rem;
  top:-4rem;
  border-radius:999px;
  background:radial-gradient(circle, rgb(255 87 34 / 18%), transparent 70%);
  pointer-events:none;
  transition:opacity var(--transition-smooth), transform var(--transition-smooth);
}
.feature-card:hover .feature-card-beam{opacity:1; transform:translate(-.5rem,.75rem) scale(1.1)}
.feature-icon{
  width:2.75rem;
  height:2.75rem;
  border-radius:.9rem;
  background:linear-gradient(160deg, rgb(255 138 61 / 12%), rgb(20 14 11 / 80%));
  border-color:rgb(255 138 61 / 22%);
  color:var(--primary);
  transition:transform var(--transition-smooth), border-color var(--transition-smooth), box-shadow var(--transition-smooth);
}
.card-hover:hover .feature-icon{
  transform:translateY(-2px);
  border-color:rgb(255 138 61 / 45%);
  box-shadow:0 10px 28px -18px rgb(255 87 34 / 70%);
}
.card-hover{
  transition:transform var(--transition-smooth), border-color var(--transition-smooth), box-shadow var(--transition-smooth), background-color var(--transition-smooth);
}
.card-hover:hover{
  transform:translateY(-4px);
  border-color:rgb(255 138 61 / 42%);
  box-shadow:var(--shadow-elevated), 0 0 0 1px rgb(255 138 61 / 8%);
}
[data-spotlight]{
  --spot-x:50%;
  --spot-y:0%;
}
[data-spotlight]::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  transition:opacity .35s ease;
  background:radial-gradient(420px circle at var(--spot-x) var(--spot-y), rgb(255 138 61 / 12%), transparent 45%);
}
[data-spotlight]:hover::after{opacity:1}

/* ---------- Stats / trusted ---------- */
.trusted{
  margin-top:-1.5rem;
  position:relative;
  z-index:2;
  backdrop-filter:blur(14px);
  background:linear-gradient(160deg, rgb(28 20 16 / 78%), rgb(16 12 10 / 82%));
}
.trusted-name{
  position:relative;
  padding:.35rem 0;
  transition:color var(--transition-smooth);
}
.trusted:hover .trusted-name{color:rgb(247 236 230 / 72%)}
.stat-card dt{
  font-size:clamp(1.5rem, 3vw, 2rem);
  background:var(--gradient-accent);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* ---------- Pricing ---------- */
.pricing-card{
  gap:1.35rem;
  padding:1.85rem 1.6rem 1.6rem;
  background:
    linear-gradient(180deg, rgb(32 22 18 / 80%) 0%, rgb(15 11 9 / 92%) 100%);
}
.pricing-price{
  padding-bottom:1rem;
  border-bottom:1px solid rgb(248 236 230 / 10%);
}
.pricing-price .font-display,
.pricing-card .font-display.text-3xl{
  font-size:clamp(1.85rem, 3vw, 2.15rem);
  letter-spacing:-.03em;
}
.pricing-card.highlighted{
  border-color:rgb(255 138 61 / 48%);
  box-shadow:var(--shadow-glow), var(--shadow-elevated);
  background:
    linear-gradient(180deg, rgb(48 28 20 / 88%) 0%, rgb(20 13 11 / 96%) 100%);
  transform:translateY(-2px);
}
.pricing-card.highlighted:hover{transform:translateY(-6px)}
.popular{
  border:1px solid rgb(255 255 255 / 18%);
  box-shadow:0 10px 30px -16px rgb(255 87 34 / 80%);
}
.pricing-card .feature-list li{
  padding:.15rem 0;
}
.pricing-card .btn{border-radius:.85rem}

/* ---------- Dashboard / meter ---------- */
.dashboard-preview{
  border:1px solid rgb(255 138 61 / 18%);
  background:
    linear-gradient(165deg, rgb(28 20 16 / 88%), rgb(14 10 9 / 94%));
  box-shadow:inset 0 1px 0 rgb(255 255 255 / 5%), 0 24px 60px -36px rgb(0 0 0 / .85);
}
.meter span{
  border-radius:4px;
  opacity:.78;
  animation:meter-pulse 2.4s ease-in-out infinite;
}
.meter span:nth-child(odd){animation-delay:.2s}
.meter span:nth-child(3n){animation-delay:.45s}
@keyframes meter-pulse{
  0%,100%{opacity:.45; transform:scaleY(.92)}
  50%{opacity:.95; transform:scaleY(1)}
}

/* ---------- FAQ / testimonials ---------- */
.faq-item{
  background:linear-gradient(160deg, rgb(28 20 16 / 82%), rgb(15 11 9 / 92%));
  border-radius:1rem;
  transition:border-color var(--transition-smooth), box-shadow var(--transition-smooth);
}
.faq-item:has(.faq-trigger[aria-expanded=true]){
  border-color:rgb(255 138 61 / 40%);
  box-shadow:0 18px 40px -30px rgb(255 87 34 / 45%);
}
.faq-trigger{gap:1rem}
.faq-trigger span{text-wrap:pretty}
.testimonial{
  background:linear-gradient(165deg, rgb(30 21 17 / 88%), rgb(14 10 9 / 94%));
}
.testimonial-mark{display:inline-flex}
.testimonial blockquote{
  font-size:.95rem;
  color:rgb(247 236 230 / 88%);
}
.avatar{
  background:linear-gradient(160deg, rgb(255 138 61 / 16%), rgb(20 14 11 / 90%));
  border-color:rgb(255 138 61 / 28%);
}

/* ---------- CTA / performance ---------- */
.cta-panel,.large-panel{
  border-radius:1.75rem;
  border-color:rgb(255 138 61 / 22%);
}
.cta-orbits{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
}
.cta-orbits span{
  position:absolute;
  border-radius:999px;
  filter:blur(36px);
  opacity:.45;
}
.cta-orbits span:first-child{
  width:18rem;height:18rem;left:-4rem;top:-5rem;
  background:radial-gradient(circle, rgb(255 87 34 / 35%), transparent 70%);
}
.cta-orbits span:last-child{
  width:16rem;height:16rem;right:-3rem;bottom:-4rem;
  background:radial-gradient(circle, rgb(244 67 54 / 28%), transparent 70%);
}
.performance-shell{
  position:relative;
  overflow:hidden;
}
.performance-shell::before{
  content:"";
  position:absolute;
  inset:auto -10% -40%;
  height:70%;
  background:radial-gradient(circle, rgb(255 87 34 / 14%), transparent 65%);
  pointer-events:none;
}
.performance-list li{
  background:rgb(18 13 11 / 72%);
  border-color:rgb(248 236 230 / 12%);
  transition:border-color var(--transition-smooth), transform var(--transition-smooth);
}
.performance-list li:hover{
  border-color:rgb(255 138 61 / 35%);
  transform:translateY(-2px);
}

/* ---------- Comparison / infrastructure ---------- */
.comparison{
  background:linear-gradient(180deg, rgb(28 20 16 / 88%), rgb(14 10 9 / 94%));
}
.comparison thead th{
  background:rgb(255 138 61 / 6%);
  font-size:.75rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.comparison .highlight-cell{
  background:rgb(255 138 61 / 8%);
}
.infrastructure-panel{
  border-radius:1.75rem;
  border:1px solid rgb(255 138 61 / 20%);
  overflow:hidden;
}
.infrastructure-panel>img{
  opacity:.22;
  filter:saturate(.8);
}
.infrastructure-panel .glass{
  background:rgb(16 12 10 / 72%);
  border-color:rgb(248 236 230 / 14%);
  transition:border-color var(--transition-smooth), transform var(--transition-smooth);
}
.infrastructure-panel .glass:hover{
  border-color:rgb(255 138 61 / 40%);
  transform:translateY(-2px);
}

/* ---------- Contact / forms ---------- */
.contact-form-panel{
  background:linear-gradient(165deg, rgb(30 21 17 / 90%), rgb(14 10 9 / 95%));
}
.contact-form input:not([type=checkbox]),
.contact-form select,
.contact-form textarea,
.newsletter input{
  border-radius:.85rem;
  background:rgb(12 9 8 / 72%);
  border-color:rgb(248 236 230 / 16%);
  transition:border-color var(--transition-smooth), box-shadow var(--transition-smooth);
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus,
.newsletter input:focus{
  border-color:rgb(255 138 61 / 55%);
  box-shadow:0 0 0 3px rgb(255 138 61 / 15%);
}

/* ---------- Steps / legal / 404 ---------- */
.steps .panel{height:100%}
.steps .panel span.font-display,
.steps .text-accent{
  letter-spacing:.08em;
}
.legal-nav a{
  border:1px solid transparent;
  transition:background-color var(--transition-smooth), border-color var(--transition-smooth), color var(--transition-smooth);
}
.legal-nav a:hover{
  border-color:rgb(255 138 61 / 22%);
}
.legal-article>section{
  scroll-margin-top:6.5rem;
}
.error-page{
  position:relative;
  overflow:hidden;
}
.error-page::before{
  content:"";
  position:absolute;
  width:28rem;height:28rem;
  left:50%; top:20%;
  translate:-50% -50%;
  border-radius:999px;
  background:radial-gradient(circle, rgb(255 87 34 / 18%), transparent 70%);
  pointer-events:none;
}

/* ---------- Reveals ---------- */
.reveal,
.reveal-stagger{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
  will-change:opacity, transform;
}
.reveal.is-visible,
.reveal-stagger.is-visible{
  opacity:1;
  transform:none;
}
.reveal-stagger.is-visible > *{
  animation:rise-in .65s cubic-bezier(.22,1,.36,1) both;
}
.reveal-stagger.is-visible > *:nth-child(1){animation-delay:.02s}
.reveal-stagger.is-visible > *:nth-child(2){animation-delay:.08s}
.reveal-stagger.is-visible > *:nth-child(3){animation-delay:.14s}
.reveal-stagger.is-visible > *:nth-child(4){animation-delay:.2s}
.reveal-stagger.is-visible > *:nth-child(5){animation-delay:.26s}
.reveal-stagger.is-visible > *:nth-child(6){animation-delay:.32s}
.reveal-stagger.is-visible > *:nth-child(7){animation-delay:.38s}
.reveal-stagger.is-visible > *:nth-child(8){animation-delay:.44s}

/* ---------- Divider / misc ---------- */
.divider{
  height:1px;
  margin-block:.5rem;
  background:linear-gradient(90deg, transparent, rgb(255 138 61 / 42%), transparent);
}
.feature-list li svg{color:var(--primary)}
.section-heading.left{max-width:36rem}

@media(min-width:640px){
  .trusted{margin-top:-2rem}
}
@media(min-width:1024px){
  .pricing-card.highlighted{transform:translateY(-8px) scale(1.01)}
  .pricing-card.highlighted:hover{transform:translateY(-12px) scale(1.01)}
}

@media (prefers-reduced-motion: reduce){
  .reveal,.reveal-stagger{
    opacity:1;
    transform:none;
    transition:none;
  }
  .reveal-stagger.is-visible > *{animation:none}
  .infra-path,.infra-ping,.hero-scan,.meter span{animation:none}
  .btn::after{display:none}
}

/* Mobile hero rhythm + nav polish */
@media (max-width: 1023px) {
  .home-hero { min-height: auto; }
  .home-copy { align-items: flex-start; text-align: left; }
  .home-hero .container { padding-top: 4.5rem; padding-bottom: 4.5rem; }
}
.mobile-nav a {
  border: 1px solid transparent;
  transition: background-color var(--transition-smooth), border-color var(--transition-smooth), color var(--transition-smooth);
}
.mobile-nav a:hover,
.mobile-nav a.active {
  background: rgb(255 138 61 / 8%);
  border-color: rgb(255 138 61 / 22%);
  color: var(--foreground);
}
.language-menu {
  background: linear-gradient(165deg, rgb(28 20 16 / 98%), rgb(14 10 9 / 99%));
  border-color: rgb(248 236 230 / 12%);
}
.text-gradient {
  background: var(--gradient-accent);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.bg-grid, .hero-grid {
  mask-image: radial-gradient(ellipse at 50% 30%, #000 15%, transparent 75%);
}

/* Mega menu: never clip the Solutions dropdown */
.site-header,
.site-header .container,
.header-row,
.desktop-nav,
.mega {
  overflow: visible;
}
.mega-panel[hidden] {
  display: none !important;
}
.mega-panel:not([hidden]) {
  display: block;
  pointer-events: auto;
}
