/*
Theme Name: DCC Trading v135
Theme URI: https://dcc-mena.com/
Author: Dune Crest Core Trading LLC
Description: Custom WordPress theme converted from the approved DCC V123 design.
Version: 135.0
Text Domain: dcc-trading
*/


:root{
  --navy-950:#080808;
  --navy-900:#0d0d0d;
  --navy-850:#121212;
  --navy-800:#181818;
  --navy-750:#202020;
  --line:#343434;
  --line-soft:rgba(255,255,255,.10);
  --text:#f5f5f3;
  --muted:#a5a5a2;
  --muted2:#747472;
  --blue:#f5bd00;
  --blue2:#ffc400;
  --ice:#fff3c2;
  --success:#66d1a6;
  --max:1460px;
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--navy-950);color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.026;
  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='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")
}
a{text-decoration:none;color:inherit}
button,input,select{font:inherit}
button,a{outline-offset:4px}
.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--blue2)}
.header{
  position:fixed;top:0;left:0;right:0;z-index:50;transition:.35s;
  background:linear-gradient(to bottom,rgba(3,8,22,.88),rgba(3,8,22,.25));
  backdrop-filter:blur(12px);
}
.header.scrolled{background:rgba(3,8,22,.94);border-bottom:1px solid var(--line-soft)}
.header-in{height:84px;display:flex;align-items:center;gap:36px}
.logo{display:flex;align-items:center;gap:12px;min-width:150px}
.logo-mark{
  width:42px;height:42px;border:1px solid rgba(245,189,0,.55);border-radius:11px;
  display:grid;place-items:center;font-weight:900;letter-spacing:-.08em;
  background:linear-gradient(145deg,#242424,#101010);box-shadow:inset 0 0 25px rgba(245,189,0,.08)
}
.logo-copy strong{display:block;font-size:15px;letter-spacing:.18em}
.logo-copy small{display:block;color:var(--muted2);font-size:8px;letter-spacing:.16em;margin-top:4px}
.nav{display:flex;gap:27px;align-items:center;font-size:13px;color:#c7d4e2}
.nav a:hover{color:#fff}
.header-actions{margin-left:auto;display:flex;gap:9px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:999px;padding:12px 17px;font-size:12px;font-weight:750;cursor:pointer;background:rgba(7,19,35,.62);color:#fff;transition:.2s}
.btn:hover{transform:translateY(-1px);border-color:#396a9d}
.btn.primary{background:linear-gradient(135deg,#c89400,#f5bd00);border-color:#f5bd00;box-shadow:0 10px 35px rgba(47,125,211,.2)}
.btn.ghost{background:rgba(7,19,35,.45)}
.mobile-menu{display:none}

.hero{min-height:100vh;position:relative;display:flex;align-items:end;overflow:hidden}
.hero-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 75% 37%,rgba(120,91,0,.18),transparent 27%),
    radial-gradient(circle at 17% 80%,rgba(86,67,0,.12),transparent 30%),
    linear-gradient(115deg,#030816 0%,#101010 47%,#181818 100%);
}
.hero-grid{
 position:absolute;inset:0;opacity:.23;
 background-image:linear-gradient(rgba(245,189,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(245,189,0,.05) 1px,transparent 1px);
 background-size:76px 76px;mask-image:linear-gradient(to bottom,transparent 10%,#000 55%,transparent 100%);
 transform:perspective(1000px) rotateX(66deg) scale(1.4) translateY(20%);
 transform-origin:center bottom;
}
.orbit{
 position:absolute;border:1px solid rgba(245,189,0,.12);border-radius:50%;
 width:630px;height:630px;right:-80px;top:14%;animation:spin 26s linear infinite
}
.orbit:before,.orbit:after{content:"";position:absolute;border:1px solid rgba(245,189,0,.08);border-radius:50%;inset:72px}
.orbit:after{inset:145px}
.orbit-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:#6eb5ff;top:66px;left:175px;box-shadow:0 0 35px rgba(245,189,0,.65)}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-inner{position:relative;z-index:2;padding-top:155px;padding-bottom:88px}
.hero h1{font-size:clamp(54px,7.2vw,112px);line-height:.91;letter-spacing:-.055em;margin:17px 0 25px;max-width:1100px;font-weight:780}
.hero h1 .soft{color:#8e8e8e}
.hero-copy{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:end}
.hero-copy p{max-width:760px;color:#b2c0cf;font-size:17px;line-height:1.65}
.hero-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.hero-meta{display:flex;gap:25px;margin-top:48px;color:#969696;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.hero-meta span{display:flex;align-items:center;gap:8px}
.hero-meta i{width:5px;height:5px;border-radius:50%;background:var(--blue2);display:inline-block}

.marquee{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);overflow:hidden;background:#0b0b0b}
.marquee-track{display:flex;width:max-content;animation:marquee 36s linear infinite;padding:18px 0}
.marquee-track span{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#a0a0a0;margin-right:56px}
.marquee-track b{color:#fff;font-weight:800}
@keyframes marquee{to{transform:translateX(-50%)}}
/* V113 — complete DCC brand marquee, slightly slower for easier reading */
@media (hover:hover){.marquee:hover .marquee-track{animation-play-state:paused}}

.section{padding:118px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:52px}
.section-head h2{font-size:clamp(38px,5vw,72px);letter-spacing:-.045em;line-height:.98;margin:10px 0 0;max-width:860px}
.section-head p{max-width:500px;color:var(--muted);line-height:1.65;margin:0}
.solutions{background:linear-gradient(180deg,#030816,#101010)}
.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.solution{
 min-height:510px;border:1px solid var(--line-soft);border-radius:var(--radius);padding:28px;position:relative;overflow:hidden;
 background:linear-gradient(180deg,rgba(16,39,67,.48),rgba(4,10,20,.95));transition:.35s;display:flex;flex-direction:column;justify-content:flex-end
}
.solution:hover{transform:translateY(-7px);border-color:rgba(245,189,0,.32)}
.solution:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 18%,rgba(139,107,0,.18),transparent 28%);opacity:.7;transition:.35s}
.solution:hover:before{transform:scale(1.12)}
.solution .num{position:absolute;top:26px;left:27px;font-size:11px;color:#7f7f7f}
.solution .glyph{
 position:absolute;right:22px;top:36px;width:130px;height:130px;border-radius:50%;border:1px solid rgba(245,189,0,.11);
 box-shadow:inset 0 0 45px rgba(47,125,211,.07)
}
.solution .glyph:after{content:"";position:absolute;inset:28px;border:1px solid rgba(245,189,0,.14);border-radius:50%}
.solution h3{position:relative;margin:0 0 12px;font-size:28px;letter-spacing:-.03em}
.solution p{position:relative;color:#a0a0a0;line-height:1.55;font-size:13px}
.link{position:relative;color:#cce5ff;font-size:12px;font-weight:800;margin-top:16px;display:inline-flex;gap:8px;align-items:center}

.portal-section{background:#111111;position:relative;overflow:hidden}
.portal-section:before{content:"";position:absolute;width:700px;height:700px;border-radius:50%;background:rgba(117,90,0,.10);filter:blur(80px);right:-250px;top:-100px}
.portal-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}
.portal-copy h2{font-size:clamp(42px,5vw,76px);line-height:.98;letter-spacing:-.045em;margin:12px 0 24px}
.portal-copy p{color:#a8a8a8;line-height:1.7}
.checks{display:grid;gap:13px;margin:26px 0 31px}
.check{font-size:13px;color:#d7e3ef;display:flex;gap:12px;align-items:center}
.check i{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#29230f;color:#ffe18a;font-style:normal;font-size:11px}
.dashboard{
 position:relative;border:1px solid #21496f;border-radius:22px;background:linear-gradient(180deg,#1a1a1a,#111111);
 box-shadow:0 45px 90px rgba(0,0,0,.38);padding:17px;transform:perspective(1200px) rotateY(-5deg) rotateX(2deg);
 transition:.4s
}
.dashboard:hover{transform:none}
.dash-top{height:44px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;gap:8px;padding:0 8px}
.dot{width:7px;height:7px;border-radius:50%;background:#294963}
.dash-grid{display:grid;grid-template-columns:170px 1fr;min-height:430px}
.dash-side{border-right:1px solid var(--line-soft);padding:18px 8px}
.sideitem{padding:11px 12px;color:#888888;font-size:11px;border-radius:8px;margin-bottom:5px}
.sideitem.on{background:#1d1b14;color:#dfeeff}
.dash-main{padding:24px}
.dash-welcome{font-size:23px;font-weight:770;margin-bottom:6px}
.dash-sub{color:#898989;font-size:11px}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}
.metric{border:1px solid var(--line-soft);background:#171717;border-radius:12px;padding:14px}
.metric small{color:#818181;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.metric strong{display:block;font-size:20px;margin-top:7px}
.order-table{margin-top:15px;border:1px solid var(--line-soft);border-radius:12px;overflow:hidden}
.row{display:grid;grid-template-columns:1.4fr .75fr .7fr;gap:10px;padding:13px 14px;border-bottom:1px solid var(--line-soft);font-size:10px;color:#a4a4a4}
.row:last-child{border-bottom:0}.row.head{color:#777777;text-transform:uppercase;letter-spacing:.09em;background:#131313}.status{color:#7adab0}
.counts{padding:78px 0;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:#0b0b0b}
.count-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.count{padding:0 34px;border-right:1px solid var(--line-soft)}.count:first-child{padding-left:0}.count:last-child{border:0}
.count strong{font-size:44px;letter-spacing:-.04em;display:block}.count span{font-size:11px;color:#898989;text-transform:uppercase;letter-spacing:.12em}

.brands{background:#030816}
.brand-wall{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line-soft);border-left:1px solid var(--line-soft)}
.brand{min-height:155px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);display:grid;place-items:center;color:#899eb3;letter-spacing:.08em;font-weight:800;transition:.25s;text-align:center;padding:20px}
.brand:hover{background:#181818;color:#fff}
.brand small{display:block;font-size:9px;font-weight:500;letter-spacing:.12em;color:#707070;margin-top:7px}

.steps{background:#101010}
.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.step{padding:34px;border:1px solid var(--line-soft);border-radius:16px;background:#151515}
.step-no{font-size:11px;color:#7b7b7b;margin-bottom:40px}.step h3{font-size:24px;margin:0 0 10px}.step p{font-size:13px;color:#969696;line-height:1.6}

.cta-section{padding:105px 0;background:radial-gradient(circle at 75% 50%,rgba(129,98,0,.14),transparent 32%),#111111}
.cta-box{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;border:1px solid #4b4030;border-radius:24px;padding:55px;background:linear-gradient(145deg,rgba(16,43,73,.72),rgba(5,15,28,.92))}
.cta-box h2{font-size:46px;letter-spacing:-.04em;margin:8px 0}.cta-box p{color:#9c9c9c;max-width:680px}

.footer{background:#020611;border-top:1px solid var(--line-soft);padding:62px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:45px}
.footer h4{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#d7e5f3;margin:0 0 16px}
.footer a,.footer p{font-size:12px;color:#7f7f7f;line-height:1.9;display:block}
.footer-bottom{border-top:1px solid var(--line-soft);margin-top:45px;padding-top:20px;color:#666666;font-size:10px;display:flex;justify-content:space-between}

/* catalogue */
.subhero{padding:170px 0 70px;background:radial-gradient(circle at 75% 10%,rgba(31,104,172,.25),transparent 32%),#0c0c0c;border-bottom:1px solid var(--line-soft)}
.subhero h1{font-size:clamp(48px,6vw,86px);margin:12px 0 15px;letter-spacing:-.05em}.subhero p{max-width:720px;color:#a0a0a0;line-height:1.65}
.toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:28px 0}
.search{flex:1;max-width:520px;border:1px solid var(--line);background:#151515;color:#fff;border-radius:12px;padding:14px 16px}
.catalog-shell{display:grid;grid-template-columns:240px 1fr;gap:32px;padding:50px 0 90px}
.filters{border-right:1px solid var(--line-soft);padding-right:25px}
.filter-group{padding:18px 0;border-bottom:1px solid var(--line-soft)}
.filter-group h4{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#7b7b7b;margin:0 0 12px}
.filter{width:100%;border:0;background:transparent;color:#9eb0c2;display:flex;justify-content:space-between;padding:10px 9px;border-radius:8px;text-align:left;cursor:pointer}
.filter.on,.filter:hover{background:#26220f;color:#fff}
.product-head{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line-soft);padding-bottom:17px}.product-head h2{margin:0;font-size:30px}.results{font-size:11px;color:#7790a9}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
.product-card{border:1px solid var(--line-soft);border-radius:15px;overflow:hidden;background:#151515;transition:.25s}.product-card:hover{border-color:#80691c;transform:translateY(-4px)}
.product-visual{height:220px;display:grid;place-items:center;background:radial-gradient(circle at 60% 20%,rgba(50,112,176,.22),transparent 30%),#101010;border-bottom:1px solid var(--line-soft)}
.product-device{width:78%;height:82px;border:1px solid #6b5a1b;border-radius:7px;background:linear-gradient(#252525,#07111e);box-shadow:0 22px 38px rgba(0,0,0,.38);display:flex;align-items:center;padding:15px;color:#7f9bb7;font-size:9px;letter-spacing:.16em;position:relative}
.product-device:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:#f5bd00;right:12px;bottom:11px;box-shadow:0 0 18px #f5bd00}
.product-body{padding:18px}.brandline{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#a18b47}.product-body h3{font-size:17px;line-height:1.25;margin:8px 0 8px;min-height:42px}.product-body p{font-size:11.5px;line-height:1.55;color:#919191;min-height:54px}
.price{border-top:1px solid var(--line-soft);padding-top:13px;margin-top:14px}.price small{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#7f7c70}.price strong{display:block;margin-top:4px;font-size:13px}.product-actions{display:flex;gap:7px;margin-top:13px}.product-actions .btn{flex:1;padding:10px 9px}

/* dealer */
.login-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#030816}
.login-brand{padding:55px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 30% 70%,rgba(31,102,169,.36),transparent 35%),linear-gradient(145deg,#101010,#1c1c1c);border-right:1px solid var(--line-soft)}
.login-brand h1{font-size:66px;line-height:.95;letter-spacing:-.055em;margin:20px 0}.login-brand p{color:#a2b3c3;max-width:550px;line-height:1.65}
.login-panel{display:grid;place-items:center;padding:45px}.formbox{width:min(500px,100%)}.formbox h2{font-size:36px;margin:0 0 8px}.formbox .lead{color:#8c8c8c;margin-bottom:32px}
.field{margin-bottom:15px}.field label{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#888888;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;background:#151515;border:1px solid var(--line);border-radius:10px;padding:14px;color:#fff;font:inherit}.field textarea{min-height:104px;resize:vertical;line-height:1.5}.field .optional-label{font-weight:400;color:#686868;letter-spacing:.06em}
.tabs{display:flex;gap:7px;margin-bottom:30px}.tab{padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:#101010;color:#8299af;cursor:pointer}.tab.on{background:#332b14;color:#fff;border-color:#7c650d}.hidden{display:none}
.form-note{font-size:10px;color:#777777;line-height:1.5;margin-top:16px}

.reveal{opacity:0;transform:translateY(25px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}

@media(max-width:1100px){
 .nav{display:none}.solution-grid{grid-template-columns:repeat(2,1fr)}.portal-grid{grid-template-columns:1fr;gap:45px}.product-grid{grid-template-columns:repeat(2,1fr)}
 .brand-wall{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
 .wrap{width:min(100% - 34px,var(--max))}.header-in{height:72px}.header-actions .ghost{display:none}.mobile-menu{display:block}
 .hero-inner{padding-top:125px;padding-bottom:55px}.hero h1{font-size:53px}.hero-copy{grid-template-columns:1fr;gap:20px}.hero-actions{justify-content:flex-start}.orbit{opacity:.45;width:420px;height:420px;right:-210px}
 .section{padding:80px 0}.section-head{align-items:flex-start;flex-direction:column}.solution-grid,.step-grid,.count-grid{grid-template-columns:1fr}
 .solution{min-height:400px}.count{padding:20px 0;border-right:0;border-bottom:1px solid var(--line-soft)}
 .brand-wall{grid-template-columns:repeat(2,1fr)}.portal-grid{gap:30px}.dashboard{transform:none}.dash-grid{grid-template-columns:1fr}.dash-side{display:none}.metrics{grid-template-columns:1fr}
 .cta-box{grid-template-columns:1fr;padding:34px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.catalog-shell{grid-template-columns:1fr}.filters{border-right:0;border-bottom:1px solid var(--line-soft);padding-right:0}.product-grid{grid-template-columns:1fr}
 .login-shell{grid-template-columns:1fr}.login-brand{min-height:470px}.login-brand h1{font-size:50px}.login-panel{padding:38px 22px}
}

/* Moving editorial / latest updates */
.updates{
  padding:34px 0 92px;
  background:
    radial-gradient(circle at 12% 35%,rgba(126,95,0,.10),transparent 26%),
    linear-gradient(180deg,#030405 0%,#07090c 100%);
  overflow:hidden;
}
.updates-top{
  width:min(var(--max),calc(100% - 64px));margin:0 auto 26px;
  display:flex;align-items:end;justify-content:space-between;gap:28px
}
.updates-top h2{font-size:clamp(31px,4vw,54px);letter-spacing:-.045em;margin:8px 0 0}
.updates-top p{color:#818a94;max-width:520px;line-height:1.6;font-size:13px;margin:0}
.news-window{overflow:hidden}
.news-track{
  display:flex;gap:16px;width:max-content;
  animation:newsFlow 42s linear infinite;
  padding:0 16px 10px;
}
.news-window:hover .news-track{animation-play-state:paused}
@keyframes newsFlow{to{transform:translateX(calc(-50% - 8px))}}
.news-card{
  width:min(700px,72vw);height:430px;border:1px solid var(--line-soft);border-radius:18px;
  overflow:hidden;position:relative;background:#0b0d10;flex:0 0 auto;
  box-shadow:0 25px 65px rgba(0,0,0,.28);
}
.news-card.wide{width:min(820px,78vw)}
.news-card.small{width:min(520px,64vw)}
.news-art{position:absolute;inset:0;overflow:hidden}
.news-art:before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(0deg,rgba(2,3,4,.93) 2%,rgba(2,3,4,.45) 48%,rgba(2,3,4,.08) 100%),
    radial-gradient(circle at 74% 25%,rgba(158,120,0,.16),transparent 26%),
    linear-gradient(135deg,#1b1b1b,#07090c 63%);
}
.news-art.lines:after{
  content:"";position:absolute;inset:0;opacity:.26;
  background-image:linear-gradient(rgba(255,196,0,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,196,0,.08) 1px,transparent 1px);
  background-size:105px 105px;
}
.news-shape{
  position:absolute;right:9%;top:15%;width:45%;height:42%;
  border:1px solid #3d3d3b;border-radius:8px;background:linear-gradient(145deg,#282828,#101010);
  box-shadow:0 25px 65px rgba(0,0,0,.6);transform:perspective(900px) rotateY(-10deg)
}
.news-shape:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;right:15px;bottom:13px;background:#f5bd00}
.news-logo{
  position:absolute;top:26px;left:28px;font-size:11px;font-weight:850;letter-spacing:.17em;color:#c8d0d8;
  text-transform:uppercase
}
.news-content{position:absolute;left:30px;right:30px;bottom:29px}
.news-tag{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#e2b52a;margin-bottom:10px;font-weight:800}
.news-content h3{font-size:clamp(27px,3vw,45px);line-height:1.02;letter-spacing:-.04em;margin:0 0 12px;max-width:620px}
.news-content p{max-width:590px;color:#a1a8af;line-height:1.5;font-size:13px;margin:0 0 16px}
.news-link{font-size:11px;font-weight:800;color:#fff0b2}
.news-controls{display:flex;gap:8px}
.round-control{width:39px;height:39px;border-radius:50%;border:1px solid #3a3a38;background:#121212;color:#dce2e8;cursor:pointer}
.round-control:hover{background:#222220}
@media(max-width:760px){
 .updates-top{width:min(100% - 34px,var(--max));align-items:flex-start;flex-direction:column}
 .news-card,.news-card.wide,.news-card.small{width:84vw;height:380px}
 .news-content{left:22px;right:22px;bottom:23px}.news-shape{width:52%;height:36%}
}
@media(prefers-reduced-motion:reduce){
 .news-track,.marquee-track,.orbit{animation:none}
 .reveal{opacity:1;transform:none}
}

/* V3: first-land-page editorial priority + DCC yellow */
.hero{min-height:58vh;align-items:end}
.hero-inner{padding-top:132px;padding-bottom:42px}
.hero h1{font-size:clamp(46px,6.2vw,88px);max-width:1050px}
.hero-copy p{font-size:15px;max-width:700px}
.hero-meta{margin-top:28px}
.updates{
  padding:24px 0 52px;
  border-top:1px solid rgba(245,189,0,.20);
}
.updates-top{margin-bottom:18px}
.updates-top h2{font-size:clamp(27px,3.4vw,45px)}
.news-card{height:340px}
.news-card.wide{width:min(690px,70vw)}
.news-card.small{width:min(470px,58vw)}
.news-content h3{font-size:clamp(25px,2.6vw,38px)}
.news-content p{font-size:12px}
.eyebrow{color:#f5bd00}
.btn.primary{color:#090909;background:linear-gradient(135deg,#d9a700,#f5bd00);border-color:#ffc400;box-shadow:0 10px 35px rgba(245,189,0,.12)}
.btn.primary:hover{background:#ffc400}
.logo-mark{border-color:rgba(245,189,0,.48)}
.hero-meta i,.product-device:after{background:#f5bd00;box-shadow:0 0 18px rgba(245,189,0,.55)}
.orbit-dot{background:#f5bd00;box-shadow:0 0 35px rgba(245,189,0,.45)}
.news-link{color:#f6d56b}
.marquee-track b{color:#f5bd00}
@media(min-width:900px) and (min-height:780px){
 .hero{min-height:55vh}
}
@media(max-width:760px){
 .hero{min-height:auto}
 .hero-inner{padding-top:115px;padding-bottom:35px}
 .hero-meta{display:none}
 .news-card,.news-card.wide,.news-card.small{height:335px}
}

/* V4 graphite theme */
.hero-bg{
  background:
    radial-gradient(circle at 75% 37%,rgba(80,80,80,.22),transparent 28%),
    radial-gradient(circle at 17% 80%,rgba(55,55,55,.18),transparent 31%),
    linear-gradient(115deg,#080808 0%,#101010 48%,#181818 100%) !important;
}
.hero-grid{
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) !important;
}
.hero h1 .soft{color:#8f8f8f}
.header{
  background:linear-gradient(to bottom,rgba(7,7,7,.92),rgba(7,7,7,.38));
}
.header.scrolled{background:rgba(8,8,8,.96)}
.orbit,.orbit:before,.orbit:after{border-color:rgba(245,189,0,.12)}
.solution,.dashboard,.product-card,.step{
  background:linear-gradient(180deg,rgba(30,30,30,.88),rgba(13,13,13,.97));
}
.portal-section,.solutions,.brands,.steps{background:#0d0d0d}
.portal-section:before{background:rgba(90,90,90,.10)}
.subhero{
 background:radial-gradient(circle at 75% 10%,rgba(85,85,85,.15),transparent 32%),#0b0b0b;
}
.login-brand{
 background:radial-gradient(circle at 30% 70%,rgba(85,85,85,.18),transparent 35%),linear-gradient(145deg,#0d0d0d,#1a1a1a);
}
.news-art:before{
 background:
   linear-gradient(0deg,rgba(5,5,5,.94) 2%,rgba(5,5,5,.48) 48%,rgba(5,5,5,.08) 100%),
   radial-gradient(circle at 74% 25%,rgba(105,105,105,.18),transparent 26%),
   linear-gradient(135deg,#1a1a1a,#090909 63%);
}
.cta-section{
 background:radial-gradient(circle at 75% 50%,rgba(95,95,95,.13),transparent 32%),#101010;
}
.cta-box{background:linear-gradient(145deg,rgba(35,35,35,.9),rgba(12,12,12,.96))}

/* V5 GCC market SEO section */
.markets{padding:96px 0;background:#090909;border-top:1px solid var(--line-soft)}
.markets-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.markets h2{font-size:clamp(38px,4.6vw,64px);letter-spacing:-.045em;margin:10px 0 18px}
.markets-intro{color:#969696;line-height:1.7;max-width:580px;font-size:14px}
.market-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.market{
 border:1px solid var(--line-soft);border-radius:13px;padding:19px 20px;background:#111;
 display:flex;align-items:center;gap:15px;transition:.22s
}
.market:hover{background:#171717;border-color:rgba(245,189,0,.34);transform:translateY(-2px)}
.flag{
  width:38px;
  height:28px;
  flex:0 0 38px;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.flag img{
  display:block;
  width:36px;
  height:27px;
  object-fit:cover;
  border-radius:4px;
  box-shadow:0 0 0 1px rgba(255,255,255,.16),0 5px 14px rgba(0,0,0,.24);
}
.market strong{display:block;font-size:16px}.market span{display:block;color:#777;font-size:10px;margin-top:4px;text-transform:uppercase;letter-spacing:.1em}
.market-copy{margin-top:25px;padding-top:22px;border-top:1px solid var(--line-soft);color:#858585;font-size:12.5px;line-height:1.7}
.market-copy strong{color:#d8d8d8}
@media(max-width:760px){.markets-grid{grid-template-columns:1fr;gap:32px}.market-list{grid-template-columns:1fr}.markets{padding:72px 0}}

/* V6 flexible pricing + stock availability */
.stockline{display:flex;align-items:center;gap:7px;margin-top:11px;font-size:10px;font-weight:750;letter-spacing:.04em}
.stockdot{width:7px;height:7px;border-radius:50%;display:inline-block}
.stock-in{color:#8fc8a9}.stock-in .stockdot{background:#5fc68e}
.stock-low{color:#e2c56b}.stock-low .stockdot{background:#f5bd00}
.stock-order{color:#aaa}.stock-order .stockdot{background:#777}
.public-price{font-size:18px!important;color:#f2f2f2}
.trade-note{font-size:9px;color:#777;margin-top:4px}
.quote-price{color:#d7bc62}

/* V8 real DCC logo */
.logo{min-width:auto}
.dcc-logo-img{
  display:block;
  width:128px;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:center;
  border-radius:10px;
  image-rendering:auto;
  -webkit-font-smoothing:antialiased;
  backface-visibility:hidden;
}
.header .dcc-logo-img{width:128px;height:auto}
.footer .dcc-logo-img{width:145px;height:auto}
.login-brand .dcc-logo-img{width:150px;height:auto}
@media(max-width:760px){
 .header .dcc-logo-img{width:105px;height:auto}
}

/* V9 certifications & expertise */
.certifications{padding:104px 0;background:#0b0b0b;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.cert-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.certifications h2{font-size:clamp(40px,5vw,68px);letter-spacing:-.045em;line-height:.98;margin:10px 0 18px}
.certifications .lead{color:#9a9a96;line-height:1.75;max-width:620px;font-size:14px}
.certifications .support-note{margin-top:23px;padding:18px 20px;border-left:3px solid #f5bd00;background:#111;color:#c9c9c5;font-size:13px;line-height:1.65}
.cert-groups{display:grid;gap:18px}
.cert-card{border:1px solid var(--line-soft);border-radius:16px;background:#121212;padding:24px}
.cert-card h3{margin:0 0 15px;font-size:15px;letter-spacing:.02em}
.cert-badges{display:flex;flex-wrap:wrap;gap:9px}
.cert-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid #333;border-radius:999px;padding:10px 13px;background:#0d0d0d;color:#e7e7e2;font-size:12px;font-weight:720}
.cert-badge:before{content:"✓";color:#f5bd00;font-weight:900}
.cert-card p{margin:12px 0 0;color:#7f7f7b;font-size:11.5px;line-height:1.6}
@media(max-width:760px){.cert-grid{grid-template-columns:1fr;gap:34px}.certifications{padding:76px 0}}

/* V11 Home Cinema Demo CTA */
.demo-nav{
  position:relative;
  padding:12px 17px!important;
  border:1px solid #f5bd00!important;
  border-radius:999px;
  color:#fff!important;
  background:rgba(245,189,0,.06);
  font-weight:800!important;
  white-space:nowrap;
  box-shadow:0 0 0 1px rgba(245,189,0,.08),0 0 22px rgba(245,189,0,.22),inset 0 0 16px rgba(245,189,0,.05);
  animation:demoGlow 2.6s ease-in-out infinite;
}
.demo-nav:before{content:"";position:absolute;inset:-1px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(255,210,45,.22),transparent);opacity:.55;pointer-events:none}
.demo-nav:hover{background:#f5bd00!important;color:#090909!important;box-shadow:0 0 34px rgba(245,189,0,.42)}
@keyframes demoGlow{0%,100%{box-shadow:0 0 0 1px rgba(245,189,0,.08),0 0 16px rgba(245,189,0,.16)}50%{box-shadow:0 0 0 1px rgba(245,189,0,.18),0 0 30px rgba(245,189,0,.32)}}

/* Demo booking page */
.demo-page{min-height:100vh;background:radial-gradient(circle at 76% 18%,rgba(245,189,0,.10),transparent 24%),#080808}
.demo-hero{padding:155px 0 68px;border-bottom:1px solid var(--line-soft)}
.demo-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:end}
.demo-hero h1{font-size:clamp(48px,6.5vw,92px);line-height:.92;letter-spacing:-.055em;margin:13px 0 20px}
.demo-hero h1 span{color:#8f8f8f}
.demo-hero p{color:#a0a09b;line-height:1.7;max-width:700px}
.demo-highlight{border:1px solid rgba(245,189,0,.25);border-radius:18px;padding:27px;background:#111;box-shadow:0 0 55px rgba(245,189,0,.06)}
.demo-highlight strong{display:block;font-size:23px;margin-bottom:10px}.demo-highlight p{font-size:12px;margin:0;color:#858581}
.demo-booking{padding:72px 0 100px}
.booking-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;align-items:start}
.demo-features{display:grid;gap:13px;margin-top:28px}
.demo-feature{border-top:1px solid var(--line-soft);padding:16px 0}
.demo-feature strong{font-size:13px}.demo-feature span{display:block;color:#777;font-size:11px;margin-top:5px;line-height:1.55}
.booking-form{border:1px solid var(--line-soft);border-radius:20px;padding:32px;background:#111}
.booking-form h2{margin:0 0 8px;font-size:30px}.booking-form .intro{color:#7f7f7b;font-size:12px;margin-bottom:25px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.booking-form textarea{width:100%;min-height:110px;resize:vertical;background:#0c0c0c;border:1px solid #343434;border-radius:10px;padding:14px;color:#fff;font:inherit}
.booking-success{display:none;margin-top:16px;border:1px solid rgba(95,198,142,.35);background:rgba(95,198,142,.06);padding:14px;border-radius:10px;color:#9fd6b8;font-size:12px}
@media(max-width:1100px){.demo-nav{font-size:11px;padding:10px 12px!important}}
@media(max-width:760px){.demo-hero-grid,.booking-grid,.form-row{grid-template-columns:1fr}.demo-hero{padding-top:115px}.demo-nav{display:none}}

/* V12 unified footer + social */
.footer{padding:54px 0 58px;background:#080808;border-top:1px solid var(--line-soft)}
.footer-grid{display:grid;grid-template-columns:1.55fr .8fr .85fr 1.1fr;gap:58px;align-items:start}
.footer-brand p{color:#7e7e7b;max-width:500px;line-height:1.7;font-size:12px;margin:16px 0 0}
.footer h4{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#d9d9d5;margin:4px 0 18px}
.footer-grid>div:not(.footer-brand)>a,.footer-grid>div:not(.footer-brand)>span{display:block;color:#777773;font-size:12px;margin:0 0 11px;line-height:1.45}
.footer-grid>div:not(.footer-brand)>a:hover{color:#f5bd00}
.social-links{display:flex;gap:9px;margin-top:20px;flex-wrap:wrap}
.social-link{display:inline-flex!important;align-items:center;gap:8px!important;border:1px solid #2e2e2e;border-radius:999px;padding:9px 12px!important;color:#aaa!important;font-size:11px!important;margin:0!important;background:#0d0d0d}
.social-link:hover{border-color:rgba(245,189,0,.4);color:#f5bd00!important;background:#12110b}
.social-icon{display:inline-flex!important;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid #444;border-radius:5px;color:#e8e8e5!important;font-size:10px!important;font-weight:900;margin:0!important}
.footer-demo-link{color:#d6b33d!important;margin-top:19px!important}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:38px}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}.footer{padding:45px 0}}

/* V13 smooth header fade near footer */
.header{
  transition:opacity .55s cubic-bezier(.22,.61,.36,1),
             transform .55s cubic-bezier(.22,.61,.36,1),
             background-color .3s ease,
             box-shadow .3s ease;
  will-change:opacity,transform;
}
.header.footer-near{
  opacity:0;
  transform:translateY(-18px);
  pointer-events:none;
}

/* V14 certification logo presentation */
.cert-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:end;margin-bottom:34px}.cert-head .eyebrow{grid-column:1/-1}
.cert-head h2{font-size:clamp(38px,4.7vw,64px);line-height:1;letter-spacing:-.045em;margin:10px 0 0}.cert-head p{color:#8d8d89;line-height:1.7;font-size:13px;margin:0;max-width:650px}
.cert-logo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.cert-logo-card{border:1px solid #292929;border-radius:16px;background:#111;overflow:hidden;transition:.25s ease}
.cert-logo-card:hover{transform:translateY(-4px);border-color:rgba(245,189,0,.32);box-shadow:0 18px 45px rgba(0,0,0,.26)}.cert-logo-stage{height:145px;background:#f6f6f4;display:flex;align-items:center;justify-content:center;padding:22px}
.cert-logo-stage img{max-width:100%;max-height:92px;width:auto;height:auto;object-fit:contain}.cert-logo-meta{padding:17px 18px 19px}.cert-logo-meta strong{display:block;color:#f2f2ef;font-size:14px;margin-bottom:5px}.cert-logo-meta span{display:block;color:#70706d;font-size:10px;line-height:1.45}
.cert-platform{margin-top:16px;border:1px solid #292929;border-radius:17px;background:#111;padding:28px;display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center}.cert-platform h3{font-size:25px;letter-spacing:-.025em;margin:7px 0 9px}.cert-platform p{color:#7e7e7a;font-size:11.5px;line-height:1.65;margin:0}
.platform-tags{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end}.platform-tags span{border:1px solid #333;border-radius:999px;background:#0b0b0b;padding:10px 13px;color:#d9d9d5;font-size:11px}.platform-tags b{color:#f5bd00;font-size:9px;text-transform:uppercase;letter-spacing:.06em;margin-left:5px}.cert-support-note{margin-top:16px!important;border-radius:0 12px 12px 0}
@media(max-width:1100px){.cert-logo-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.cert-head,.cert-platform{grid-template-columns:1fr;gap:20px}.cert-logo-grid{grid-template-columns:1fr 1fr}.platform-tags{justify-content:flex-start}}@media(max-width:480px){.cert-logo-grid{grid-template-columns:1fr}}

/* V15 advanced platform logo presentation */
.advanced-platform{margin-top:18px;border:1px solid #292929;border-radius:18px;background:#101010;padding:30px}
.advanced-head{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:end;margin-bottom:23px}
.advanced-head h3{font-size:27px;line-height:1.12;letter-spacing:-.03em;margin:7px 0 0}.advanced-head p{color:#7f7f7b;font-size:11.5px;line-height:1.7;margin:0}
.advanced-logo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.advanced-logo-card{border:1px solid #292929;border-radius:13px;background:#0b0b0b;overflow:hidden;transition:.24s ease}
.advanced-logo-card:hover{transform:translateY(-3px);border-color:rgba(245,189,0,.35);box-shadow:0 15px 35px rgba(0,0,0,.28)}
.advanced-logo-stage{height:112px;background:#f7f7f5;display:flex;align-items:center;justify-content:center;padding:18px}
.advanced-logo-stage.dark-stage{background:#050505}.advanced-logo-stage img{max-width:100%;max-height:76px;width:auto;height:auto;object-fit:contain}
.advanced-logo-meta{padding:13px 14px 14px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.advanced-logo-meta strong{font-size:12px;color:#e8e8e4}.advanced-logo-meta span{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#f5bd00;border:1px solid rgba(245,189,0,.28);border-radius:999px;padding:5px 7px}
@media(max-width:1100px){.advanced-logo-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.advanced-head{grid-template-columns:1fr;gap:15px}.advanced-logo-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.advanced-logo-grid{grid-template-columns:1fr}}

/* V16 — more compact Certifications + Advanced Brands */
.certifications{padding:62px 0!important}

.cert-head{
  gap:34px!important;
  margin-bottom:22px!important;
}
.cert-head h2{
  font-size:clamp(30px,3.5vw,48px)!important;
}
.cert-head p{
  font-size:11.5px!important;
  line-height:1.55!important;
}

.cert-logo-grid{gap:9px!important}
.cert-logo-card{border-radius:12px!important}
.cert-logo-stage{
  height:98px!important;
  padding:15px!important;
}
.cert-logo-stage img{
  max-height:62px!important;
}
.cert-logo-meta{
  padding:11px 13px 13px!important;
}
.cert-logo-meta strong{
  font-size:12px!important;
  margin-bottom:3px!important;
}
.cert-logo-meta span{
  font-size:9px!important;
  line-height:1.35!important;
}

.advanced-platform{
  margin-top:12px!important;
  padding:20px!important;
  border-radius:14px!important;
}
.advanced-head{
  gap:32px!important;
  margin-bottom:16px!important;
}
.advanced-head h3{
  font-size:21px!important;
  margin-top:5px!important;
}
.advanced-head p{
  font-size:10.5px!important;
  line-height:1.55!important;
}
.advanced-logo-grid{gap:8px!important}
.advanced-logo-card{border-radius:10px!important}
.advanced-logo-stage{
  height:78px!important;
  padding:12px!important;
}
.advanced-logo-stage img{
  max-height:51px!important;
}
.advanced-logo-meta{
  padding:9px 10px 10px!important;
}
.advanced-logo-meta strong{font-size:10.5px!important}
.advanced-logo-meta span{
  font-size:7px!important;
  padding:4px 6px!important;
}
.cert-support-note{
  margin-top:12px!important;
  padding-top:13px!important;
  padding-bottom:13px!important;
  font-size:10.5px!important;
}

@media(max-width:760px){
  .certifications{padding:48px 0!important}
  .cert-logo-stage{height:90px!important}
  .advanced-logo-stage{height:74px!important}
}

/* V17 — tighter, cleaner alignment for Certifications + Advanced Platforms */
.certifications{
  padding:50px 0!important;
}
.cert-head{
  grid-template-columns: .78fr 1.22fr!important;
  gap:44px!important;
  align-items:end!important;
  margin-bottom:18px!important;
}
.cert-head h2{
  font-size:clamp(28px,3vw,42px)!important;
  line-height:1.03!important;
  max-width:600px!important;
}
.cert-head p{
  max-width:650px!important;
  justify-self:end!important;
  margin-bottom:2px!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}

.cert-logo-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
}
.cert-logo-card{
  display:grid!important;
  grid-template-rows:82px 1fr!important;
  min-height:132px!important;
}
.cert-logo-stage{
  height:82px!important;
  min-height:82px!important;
  padding:11px 14px!important;
}
.cert-logo-stage img{
  width:auto!important;
  height:auto!important;
  max-width:88%!important;
  max-height:52px!important;
  object-fit:contain!important;
}
.cert-logo-meta{
  min-height:50px!important;
  padding:9px 12px 10px!important;
}
.cert-logo-meta strong{
  font-size:11px!important;
  line-height:1.1!important;
}
.cert-logo-meta span{
  font-size:8.3px!important;
  line-height:1.3!important;
  margin-top:3px!important;
}

.advanced-platform{
  margin-top:10px!important;
  padding:18px 20px 20px!important;
}
.advanced-head{
  grid-template-columns:1fr 1fr!important;
  gap:44px!important;
  align-items:end!important;
  margin-bottom:14px!important;
}
.advanced-head h3{
  font-size:19px!important;
  line-height:1.15!important;
  max-width:570px!important;
}
.advanced-head p{
  justify-self:end!important;
  max-width:650px!important;
  font-size:9.8px!important;
  line-height:1.5!important;
}
.advanced-logo-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
}
.advanced-logo-card{
  display:grid!important;
  grid-template-rows:66px 34px!important;
}
.advanced-logo-stage{
  height:66px!important;
  min-height:66px!important;
  padding:9px 12px!important;
}
.advanced-logo-stage img{
  max-width:88%!important;
  max-height:43px!important;
}
.advanced-logo-meta{
  height:34px!important;
  min-height:34px!important;
  padding:7px 10px!important;
}
.advanced-logo-meta strong{
  font-size:9.5px!important;
}
.advanced-logo-meta span{
  font-size:6.5px!important;
  padding:3px 6px!important;
}

.cert-support-note{
  margin-top:10px!important;
  min-height:auto!important;
  padding:11px 16px!important;
  font-size:9.5px!important;
  line-height:1.4!important;
}

@media(max-width:1100px){
  .cert-head,.advanced-head{grid-template-columns:1fr!important;gap:12px!important}
  .cert-head p,.advanced-head p{justify-self:start!important}
  .cert-logo-grid,.advanced-logo-grid{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:700px){
  .cert-logo-grid,.advanced-logo-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:470px){
  .cert-logo-grid,.advanced-logo-grid{grid-template-columns:1fr!important}
}

/* V18 — unified visual language for Certifications and Advanced Platforms */
.advanced-platform{
  margin-top:12px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
}
.advanced-head{
  display:grid!important;
  grid-template-columns:.78fr 1.22fr!important;
  gap:44px!important;
  align-items:end!important;
  margin:0 0 18px!important;
}
.advanced-head .eyebrow{
  grid-column:1/-1!important;
}
.advanced-head h3{
  font-size:clamp(28px,3vw,42px)!important;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
  max-width:620px!important;
  margin:10px 0 0!important;
}
.advanced-logo-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
}
.advanced-logo-card{
  display:grid!important;
  grid-template-rows:82px 1fr!important;
  min-height:132px!important;
  border:1px solid #292929!important;
  border-radius:12px!important;
  background:#111!important;
  overflow:hidden!important;
}
.advanced-logo-stage{
  height:82px!important;
  min-height:82px!important;
  padding:11px 14px!important;
  background:#f6f6f4!important;
}
.advanced-logo-stage.dark-stage{
  background:#050505!important;
}
.advanced-logo-stage img{
  max-width:88%!important;
  max-height:52px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
.advanced-logo-meta{
  min-height:50px!important;
  height:auto!important;
  padding:9px 12px 10px!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.advanced-logo-meta strong{
  font-size:11px!important;
  line-height:1.1!important;
}
.advanced-logo-meta span{
  font-size:7px!important;
  line-height:1!important;
  padding:4px 6px!important;
  margin-top:0!important;
}
.cert-support-note{
  margin-top:12px!important;
}

@media(max-width:1100px){
  .advanced-head{grid-template-columns:1fr!important;gap:12px!important}
  .advanced-logo-grid{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:700px){
  .advanced-logo-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:470px){
  .advanced-logo-grid{grid-template-columns:1fr!important}
}

/* V19 — smaller credential headings + clearer separation */
.cert-head h2{
  font-size:clamp(24px,2.35vw,34px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  max-width:540px!important;
}

.advanced-platform{
  margin-top:34px!important;
  padding-top:30px!important;
  border-top:1px solid #242424!important;
}

.advanced-head h3{
  font-size:clamp(22px,2.15vw,32px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  max-width:560px!important;
}

/* keep the section gap noticeable without making it oversized */
@media(max-width:760px){
  .advanced-platform{
    margin-top:27px!important;
    padding-top:24px!important;
  }
}

/* V24 — Basalte normalization to match other advanced brand cards */
.advanced-logo-card:first-child .advanced-logo-stage{
  background:#f6f6f4!important;
}
.advanced-logo-card:first-child .basalte-logo-fixed{
  filter:invert(1)!important;
  mix-blend-mode:multiply;
  max-width:78%!important;
  max-height:46px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}

/* V25 — Basalte: true black logo on white, same treatment as peers */
.advanced-logo-card:first-child .advanced-logo-stage{
  background:#f6f6f4!important;
}
.advanced-logo-card:first-child .basalte-logo-fixed{
  filter:none!important;
  mix-blend-mode:normal!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:82%!important;
  max-height:52px!important;
  object-fit:contain!important;
  opacity:1!important;
}

/* V28 brand/product artwork */
.brand-logo-card{padding:18px 18px 14px;gap:12px;justify-content:center}
.brand-logo-card img{display:block;max-width:82%;max-height:72px;width:auto;height:auto;object-fit:contain;margin:auto}
.brand-logo-card.brand-dark{background:#0d0d0d}
.brand-logo-card.brand-dark img{max-height:82px}
.product-image{width:100%;height:100%;object-fit:contain;padding:22px;background:#f4f4f2}

.catalogue-product-image{max-width:82%;max-height:175px;object-fit:contain;display:block}.product-detail-page{padding:128px 0 90px;background:#090909;min-height:100vh}.product-breadcrumb{display:flex;gap:9px;color:#777;font-size:10px;margin:18px 0 30px}.product-breadcrumb strong{color:#aaa}.product-detail-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:58px}.product-main-image{height:540px;border:1px solid #292929;border-radius:18px;background:#f5f5f3;display:grid;place-items:center;padding:34px;overflow:hidden}.product-main-image img{max-width:100%;max-height:100%;object-fit:contain}.product-placeholder-detail{width:72%;height:130px;border:1px solid #5b4c16;border-radius:10px;background:linear-gradient(#292929,#111);color:#aaa;place-items:center;letter-spacing:.18em}.product-info{padding-top:16px}.product-info h1{font-size:clamp(44px,5vw,72px);line-height:.96;letter-spacing:-.05em;margin:10px 0 20px}.product-long-desc{color:#999;line-height:1.7;font-size:14px}.detail-status-row{display:flex;gap:10px;margin:25px 0}.detail-status,.detail-category{border:1px solid #303030;border-radius:999px;padding:9px 12px;font-size:10px;display:inline-flex;align-items:center;gap:7px}.detail-status i{width:7px;height:7px;border-radius:50%}.detail-status.in{color:#78c99e}.detail-status.in i{background:#5fc68e}.detail-status.low{color:#e1c157}.detail-status.low i{background:#f5bd00}.detail-status.order{color:#aaa}.detail-status.order i{background:#777}.detail-price-card{border-top:1px solid #2b2b2b;border-bottom:1px solid #2b2b2b;padding:22px 0;margin:9px 0 22px}.detail-price-card small{display:block;color:#777;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.detail-price-card strong{display:block;font-size:25px;margin:6px 0}.detail-price-card span{font-size:10px;color:#777}.detail-actions{display:flex;gap:9px}.detail-support{margin-top:26px;border-left:3px solid #f5bd00;background:#111;padding:18px 20px}.detail-support p{color:#777;font-size:10.5px}.detail-support a{color:#e1b525;font-size:10px;font-weight:800}.product-detail-lower{display:grid;grid-template-columns:1.1fr 1fr .9fr;gap:12px;margin-top:65px}.detail-panel{border:1px solid #292929;border-radius:15px;background:#101010;padding:25px}.detail-panel h2{font-size:22px}.detail-panel p{color:#858585;font-size:11.5px;line-height:1.7}.spec-row{display:flex;justify-content:space-between;border-bottom:1px solid #252525;padding:10px 0;font-size:10px}.spec-row span{color:#777}.resource-row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #252525;color:#aaa;font-size:10px}.related-products{padding-top:75px}.related-products .section-head{margin-bottom:25px}.related-products .section-head h2{font-size:38px}.product-not-found{padding:100px 0}@media(max-width:1000px){.product-detail-grid,.product-detail-lower{grid-template-columns:1fr}.product-main-image{height:460px}}@media(max-width:620px){.product-main-image{height:330px}.detail-actions{flex-direction:column}}

/* V33 — Dark / Light theme selector */
:root{
  color-scheme:dark;
}
.theme-toggle{
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 13px;
  border:1px solid #343434;
  border-radius:999px;
  background:#0c0c0c;
  color:#cfcfca;
  font:inherit;
  font-size:10px;
  font-weight:750;
  cursor:pointer;
  transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
}
.theme-toggle:hover{
  border-color:rgba(245,189,0,.45);
  color:#f5bd00;
  transform:translateY(-1px);
}
.theme-icon{font-size:13px;line-height:1}
.theme-label{letter-spacing:.04em}

/* Smooth theme transition */
html.theme-animate body,
html.theme-animate .header,
html.theme-animate .product-card,
html.theme-animate .detail-panel,
html.theme-animate .advanced-logo-card,
html.theme-animate .cert-logo-card{
  transition:background-color .32s ease,color .32s ease,border-color .32s ease;
}

/* LIGHT THEME */
html[data-theme="light"]{
  color-scheme:light;
}
html[data-theme="light"] body{
  background:#f5f5f2;
  color:#181818;
}
html[data-theme="light"] .header{
  background:rgba(255,255,255,.92);
  border-bottom:1px solid #deded8;
  box-shadow:0 8px 30px rgba(0,0,0,.04);
}
html[data-theme="light"] .header.scrolled{
  background:rgba(255,255,255,.96);
}
html[data-theme="light"] .nav a{
  color:#4b4b48;
}
html[data-theme="light"] .nav a:hover{
  color:#111;
}
html[data-theme="light"] .theme-toggle{
  background:#f1f1ed;
  border-color:#d7d7d1;
  color:#333;
}
html[data-theme="light"] .btn.ghost{
  background:#fff;
  color:#222;
  border-color:#d5d5cf;
}
html[data-theme="light"] .btn.ghost:hover{
  border-color:#f5bd00;
}
html[data-theme="light"] .hero,
html[data-theme="light"] .subhero,
html[data-theme="light"] .updates,
html[data-theme="light"] .solutions,
html[data-theme="light"] .portal-section,
html[data-theme="light"] .brands,
html[data-theme="light"] .certifications,
html[data-theme="light"] .markets,
html[data-theme="light"] .steps,
html[data-theme="light"] .cta-section,
html[data-theme="light"] .product-detail-page,
html[data-theme="light"] .demo-page,
html[data-theme="light"] .demo-booking{
  background:#f5f5f2!important;
}
html[data-theme="light"] .hero-bg{
  background:
    radial-gradient(circle at 75% 37%,rgba(245,189,0,.11),transparent 28%),
    radial-gradient(circle at 17% 80%,rgba(0,0,0,.035),transparent 31%),
    linear-gradient(115deg,#f9f9f6 0%,#f0f0ec 52%,#e8e8e2 100%)!important;
}
html[data-theme="light"] .hero-grid{
  background-image:
    linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px)!important;
}
html[data-theme="light"] .hero h1,
html[data-theme="light"] .section-head h2,
html[data-theme="light"] .cert-head h2,
html[data-theme="light"] .advanced-head h3,
html[data-theme="light"] .markets h2,
html[data-theme="light"] .product-info h1,
html[data-theme="light"] .demo-hero h1,
html[data-theme="light"] .booking-form h2{
  color:#161616;
}
html[data-theme="light"] .hero h1 .soft{
  color:#777;
}
html[data-theme="light"] .hero-copy p,
html[data-theme="light"] .section-head p,
html[data-theme="light"] .cert-head p,
html[data-theme="light"] .advanced-head p,
html[data-theme="light"] .markets-intro,
html[data-theme="light"] .product-long-desc,
html[data-theme="light"] .demo-hero p{
  color:#666662;
}
html[data-theme="light"] .eyebrow{
  color:#b68400;
}
html[data-theme="light"] .news-card,
html[data-theme="light"] .solution,
html[data-theme="light"] .dashboard,
html[data-theme="light"] .product-card,
html[data-theme="light"] .step,
html[data-theme="light"] .market,
html[data-theme="light"] .cert-logo-card,
html[data-theme="light"] .advanced-logo-card,
html[data-theme="light"] .advanced-platform,
html[data-theme="light"] .detail-panel,
html[data-theme="light"] .detail-support,
html[data-theme="light"] .booking-form,
html[data-theme="light"] .demo-highlight,
html[data-theme="light"] .cta-box{
  background:#fff!important;
  border-color:#deded8!important;
  box-shadow:0 14px 40px rgba(0,0,0,.04);
}
html[data-theme="light"] .product-card h3,
html[data-theme="light"] .solution h3,
html[data-theme="light"] .market strong,
html[data-theme="light"] .cert-logo-meta strong,
html[data-theme="light"] .advanced-logo-meta strong,
html[data-theme="light"] .detail-panel h2{
  color:#1f1f1d;
}
html[data-theme="light"] .product-card p,
html[data-theme="light"] .solution p,
html[data-theme="light"] .cert-logo-meta span,
html[data-theme="light"] .advanced-logo-meta span,
html[data-theme="light"] .detail-panel p,
html[data-theme="light"] .market span{
  color:#777771;
}
html[data-theme="light"] .filters{
  border-color:#dcdcd6;
}
html[data-theme="light"] .filter{
  color:#4d4d49;
}
html[data-theme="light"] .filter.on{
  background:rgba(245,189,0,.15);
  color:#191919;
}
html[data-theme="light"] .toolbar,
html[data-theme="light"] .search,
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{
  background:#fff!important;
  color:#222!important;
  border-color:#d9d9d2!important;
}
html[data-theme="light"] .brandline,
html[data-theme="light"] .trade-note,
html[data-theme="light"] .detail-category,
html[data-theme="light"] .spec-row span{
  color:#777;
}
html[data-theme="light"] .product-body,
html[data-theme="light"] .advanced-logo-meta,
html[data-theme="light"] .cert-logo-meta{
  background:#fff!important;
}
html[data-theme="light"] .product-visual{
  background:linear-gradient(180deg,#f4f4f0,#ededE8)!important;
}
html[data-theme="light"] .product-main-image{
  background:#fff;
  border-color:#deded8;
}
html[data-theme="light"] .detail-price-card,
html[data-theme="light"] .spec-row,
html[data-theme="light"] .resource-row{
  border-color:#ddddD7;
}
html[data-theme="light"] .footer{
  background:#ededE8;
  border-top-color:#d5d5cf;
}
html[data-theme="light"] .footer h4{
  color:#333;
}
html[data-theme="light"] .footer-grid>div:not(.footer-brand)>a,
html[data-theme="light"] .footer-grid>div:not(.footer-brand)>span,
html[data-theme="light"] .footer-brand p{
  color:#6e6e69;
}
html[data-theme="light"] .social-link{
  background:#f8f8f5;
  border-color:#d8d8d2;
  color:#555!important;
}
html[data-theme="light"] .marquee{
  background:#efefe9;
  border-color:#d9d9d3;
}
html[data-theme="light"] .brand{
  background:#fff;
  color:#222;
  border-color:#deded8;
}
html[data-theme="light"] .brand small{
  color:#777;
}
html[data-theme="light"] .product-breadcrumb,
html[data-theme="light"] .product-breadcrumb strong{
  color:#777;
}
html[data-theme="light"] .detail-status,
html[data-theme="light"] .detail-category{
  background:#fff;
  border-color:#d8d8d2;
}
html[data-theme="light"] .news-art:before{
  background:
    linear-gradient(0deg,rgba(255,255,255,.96) 2%,rgba(255,255,255,.60) 48%,rgba(255,255,255,.04) 100%),
    radial-gradient(circle at 74% 25%,rgba(245,189,0,.12),transparent 26%),
    linear-gradient(135deg,#f0f0ec,#e6e6e1 63%)!important;
}
html[data-theme="light"] .news-content h3,
html[data-theme="light"] .news-logo{
  color:#20201e;
}
html[data-theme="light"] .news-content p{
  color:#666;
}
html[data-theme="light"] .news-shape{
  background:linear-gradient(145deg,#ddd,#bbb);
  border-color:#ccc;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
}
html[data-theme="light"] .orbit{
  opacity:.45;
}
@media(max-width:900px){
  .theme-label{display:none}
  .theme-toggle{width:40px;padding:0}
}

/* V34 — WhatsApp product enquiry */
.whatsapp-btn{background:#25D366!important;color:#fff!important;border-color:#25D366!important;box-shadow:0 8px 22px rgba(37,211,102,.18)}
.whatsapp-btn:hover{background:#20bd5a!important;border-color:#20bd5a!important;color:#fff!important;transform:translateY(-1px)}
html[data-theme="light"] .whatsapp-btn{background:#25D366!important;color:#fff!important;border-color:#25D366!important}

/* V35 — catalogue: product image opens detail page; action buttons removed */
.product-visual-link{display:block;text-decoration:none;cursor:pointer}
.product-visual-link .product-image{transition:transform .22s ease,filter .22s ease}
.product-visual-link:hover .product-image{transform:scale(1.015);filter:brightness(1.03)}

/* V36 — simplified product page actions/resources */
.detail-actions{
  display:flex;
  gap:9px;
}
.detail-actions .whatsapp-btn{
  min-width:190px;
}
.detail-support{
  display:none!important;
}

/* V37 — Dark only */
.theme-toggle{display:none!important}

/* V37 — Demo page refresh */
.demo-hero{
  padding:145px 0 72px!important;
  background:
    radial-gradient(circle at 78% 22%,rgba(245,189,0,.10),transparent 23%),
    linear-gradient(180deg,#090909,#0b0b0b)!important;
}
.demo-hero-grid-v37{grid-template-columns:1fr 1.08fr!important;gap:52px!important;align-items:center!important}
.demo-hero-copy h1{font-size:clamp(46px,5.7vw,82px)!important;line-height:.94!important;letter-spacing:-.05em!important;margin:13px 0 18px!important}
.demo-hero-copy p{color:#979792!important;line-height:1.7!important;max-width:680px!important;font-size:13px!important}
.demo-visual-card{position:relative;min-height:430px;border:1px solid #292929;border-radius:20px;overflow:hidden;background:#050505;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.demo-room-image{width:100%;height:100%;min-height:430px;object-fit:cover;display:block}
.demo-visual-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.84) 100%);pointer-events:none}
.demo-visual-overlay{position:absolute;left:22px;right:22px;bottom:20px;z-index:2}
.demo-visual-overlay span{display:block;color:#f5bd00;font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;margin-bottom:5px}
.demo-visual-overlay strong{font-size:22px;color:#fff}
.demo-experience-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}
.experience-badge{display:grid;grid-template-columns:76px 1fr;gap:13px;align-items:center;min-height:88px;border:1px solid #292929;border-radius:14px;background:#111;padding:11px 13px}
.experience-badge img{width:76px;height:62px;object-fit:contain;border-radius:8px;background:#fff}
.experience-badge:first-child img{background:#2f2b2b}
.experience-badge strong{display:block;font-size:11px;color:#efefeb;margin-bottom:4px}
.experience-badge span{display:block;color:#73736f;font-size:9px;line-height:1.4}
.vox-badge img{padding:10px}
@media(max-width:1000px){.demo-hero-grid-v37{grid-template-columns:1fr!important}.demo-visual-card,.demo-room-image{min-height:360px}}
@media(max-width:620px){.demo-experience-strip{grid-template-columns:1fr}.demo-visual-card,.demo-room-image{min-height:280px}}

/* V39 — Branded social buttons */
.social-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.social-link{
  display:inline-flex!important;align-items:center;gap:8px;
  padding:7px 11px!important;border:1px solid #2b2b2b;border-radius:10px;
  color:#e8e8e5!important;background:#121212;
  font-size:11px!important;font-weight:700;text-decoration:none!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.social-link:hover{transform:translateY(-2px);color:#fff!important}
.social-link .social-icon{width:25px;height:25px;border-radius:7px;display:grid;place-items:center;flex:0 0 25px}
.social-link .social-icon svg{width:16px;height:16px;display:block}
.social-instagram .social-icon{
  background:radial-gradient(circle at 30% 105%,#ffd600 0 20%,#ff7a00 31%,#ff0169 52%,#d300c5 72%,#7638fa 100%);
  box-shadow:0 0 16px rgba(255,1,105,.18)
}
.social-instagram .social-icon svg{fill:none;stroke:#fff;stroke-width:1.8}
.social-instagram .social-icon .ig-dot{fill:#fff;stroke:none}
.social-instagram:hover{border-color:#d62976;background:rgba(214,41,118,.08);box-shadow:0 8px 24px rgba(214,41,118,.10)}
.social-linkedin .social-icon{background:#0A66C2;box-shadow:0 0 16px rgba(10,102,194,.18)}
.social-linkedin .social-icon svg{fill:#fff}
.social-linkedin .social-icon .li-cut{fill:#0A66C2;stroke:#fff;stroke-width:0}
.social-linkedin:hover{border-color:#0A66C2;background:rgba(10,102,194,.09);box-shadow:0 8px 24px rgba(10,102,194,.11)}

/* V43 — Epson visibility + dynamically generated catalogue filters */
.brand-wall .brand-logo-card img[src*="epson-pro-cinema"]{
  width:72%;
  max-height:86px;
  object-fit:contain;
}
#brandFilters,#categoryFilters{display:contents}

/* V44: secondary demo CTA */
.cta-box .cta-actions{display:flex;flex-direction:column;align-items:stretch;gap:16px;min-width:245px}
.cta-box .cta-actions .btn{width:100%;justify-content:center}
.cta-box .demo-secondary{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 17px;border:1px solid rgba(245,189,0,.4);border-radius:999px;background:rgba(245,189,0,.035);color:#f3f0e8;font-size:11px;font-weight:750;text-decoration:none;transition:.2s ease}
.cta-box .demo-secondary-icon{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#f5bd00;color:#090909;font-size:8px;padding-left:1px}
.cta-box .demo-secondary b{color:#f5bd00;font-size:14px;margin-left:auto}
.cta-box .demo-secondary:hover{background:rgba(245,189,0,.09);border-color:#f5bd00;transform:translateY(-1px);box-shadow:0 10px 28px rgba(245,189,0,.08)}
@media(max-width:760px){.cta-box .cta-actions{width:100%;min-width:0;margin-top:10px}}

/* V45 — prominent footer Home Cinema Demo link */
.footer-demo-pop{
  position:relative;
  display:inline-flex!important;
  align-items:center;
  gap:9px;
  margin-top:14px;
  padding:11px 14px!important;
  border:1px solid rgba(245,189,0,.55);
  border-radius:999px;
  background:linear-gradient(90deg,rgba(245,189,0,.09),rgba(245,189,0,.025));
  color:#ffd321!important;
  font-weight:800!important;
  letter-spacing:.01em;
  text-decoration:none!important;
  overflow:visible;
  isolation:isolate;
  box-shadow:0 0 0 rgba(245,189,0,0);
  animation:demoPulse 2.8s ease-in-out infinite;
}
.footer-demo-pop::before{
  content:"";
  position:absolute;
  inset:-3px;
  border-radius:999px;
  border:1px solid rgba(245,189,0,.23);
  opacity:0;
  z-index:-1;
  animation:demoRing 2.8s ease-out infinite;
}
.footer-demo-pop::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
  background:linear-gradient(110deg,transparent 0 35%,rgba(255,255,255,.22) 48%,transparent 60% 100%);
  transform:translateX(-135%);
  animation:demoShine 4.2s ease-in-out infinite;
  pointer-events:none;
}
.demo-pop-icon{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  flex:0 0 24px;
  border-radius:50%;
  background:#f5bd00;
  color:#090909;
  font-size:8px;
  box-shadow:0 0 14px rgba(245,189,0,.28);
}
.demo-pop-arrow{
  font-size:15px;
  transition:transform .2s ease;
}
.footer-demo-pop:hover{
  transform:translateY(-2px) scale(1.015);
  border-color:#ffd321;
  background:rgba(245,189,0,.12);
  box-shadow:0 10px 32px rgba(245,189,0,.16),0 0 24px rgba(245,189,0,.10);
}
.footer-demo-pop:hover .demo-pop-arrow{transform:translateX(3px)}

.demo-spark{
  position:absolute;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#ffd321;
  box-shadow:0 0 8px #ffd321;
  opacity:0;
  pointer-events:none;
}
.demo-spark-1{right:12%;top:-7px;animation:sparkOne 3.2s ease-in-out infinite}
.demo-spark-2{right:-5px;top:35%;animation:sparkTwo 3.2s .55s ease-in-out infinite}
.demo-spark-3{left:18%;bottom:-7px;animation:sparkThree 3.2s 1.05s ease-in-out infinite}
.demo-spark-4{left:-4px;top:22%;animation:sparkFour 3.2s 1.5s ease-in-out infinite}

@keyframes demoPulse{
  0%,100%{box-shadow:0 0 0 rgba(245,189,0,0)}
  50%{box-shadow:0 0 24px rgba(245,189,0,.14)}
}
@keyframes demoRing{
  0%,58%{opacity:0;transform:scale(.98)}
  70%{opacity:.75}
  100%{opacity:0;transform:scale(1.09)}
}
@keyframes demoShine{
  0%,65%{transform:translateX(-135%)}
  78%,100%{transform:translateX(135%)}
}
@keyframes sparkOne{
  0%,68%,100%{opacity:0;transform:translate(0,5px) scale(.4)}
  76%{opacity:1;transform:translate(5px,-4px) scale(1)}
  88%{opacity:0;transform:translate(10px,-10px) scale(.2)}
}
@keyframes sparkTwo{
  0%,68%,100%{opacity:0;transform:translate(-4px,0) scale(.4)}
  76%{opacity:1;transform:translate(4px,-4px) scale(1)}
  88%{opacity:0;transform:translate(10px,-8px) scale(.2)}
}
@keyframes sparkThree{
  0%,68%,100%{opacity:0;transform:translate(0,-4px) scale(.4)}
  76%{opacity:1;transform:translate(-4px,5px) scale(1)}
  88%{opacity:0;transform:translate(-9px,10px) scale(.2)}
}
@keyframes sparkFour{
  0%,68%,100%{opacity:0;transform:translate(4px,0) scale(.4)}
  76%{opacity:1;transform:translate(-4px,-4px) scale(1)}
  88%{opacity:0;transform:translate(-10px,-8px) scale(.2)}
}
@media (prefers-reduced-motion: reduce){
  .footer-demo-pop,.footer-demo-pop::before,.footer-demo-pop::after,.demo-spark{animation:none!important}
}

/* V46 — clean, highly visible footer demo CTA; no animation, shine or moving background */
.footer-demo-pop{display:none!important}
.footer-demo-strong{
  position:relative;
  display:flex!important;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  width:min(100%,300px);
  margin-top:18px;
  padding:14px 17px!important;
  border:1px solid #f5bd00!important;
  border-radius:12px!important;
  background:#f5bd00!important;
  color:#080808!important;
  text-decoration:none!important;
  box-shadow:0 10px 30px rgba(245,189,0,.12);
  overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.footer-demo-strong::before,
.footer-demo-strong::after{display:none!important;content:none!important}
.footer-demo-label{
  display:block;
  color:rgba(0,0,0,.58);
  font-size:8px;
  line-height:1;
  letter-spacing:.16em;
  font-weight:900;
}
.footer-demo-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
  color:#080808;
  font-size:12px;
  line-height:1.25;
  font-weight:900;
}
.footer-demo-main b{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  flex:0 0 26px;
  border-radius:50%;
  background:#080808;
  color:#f5bd00;
  font-size:15px;
}
.footer-demo-strong:hover{
  transform:translateY(-2px);
  background:#ffd21a!important;
  box-shadow:0 14px 34px rgba(245,189,0,.18);
}
/* Explicitly kill the previous V45 animations/effects */
.footer-demo-strong,
.footer-demo-strong *,
.footer-demo-strong::before,
.footer-demo-strong::after{
  animation:none!important;
}

/* V47 — refined translucent neon footer CTA */
.footer-demo-strong{display:none!important}

.footer-demo-neon{
  position:relative;
  display:grid!important;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:10px;
  width:min(100%,285px);
  margin-top:17px;
  padding:10px 13px!important;
  border:1px solid rgba(245,189,0,.28)!important;
  border-radius:12px!important;
  background:
    linear-gradient(135deg,rgba(245,189,0,.065),rgba(255,255,255,.018))!important;
  color:#fff!important;
  text-decoration:none!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:
    inset 0 0 18px rgba(245,189,0,.025),
    0 0 0 1px rgba(255,255,255,.012);
  overflow:hidden;
  transition:
    border-color .22s ease,
    box-shadow .22s ease,
    background .22s ease,
    transform .22s ease;
}

.footer-demo-neon::before{
  content:"";
  position:absolute;
  left:14%;
  right:14%;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,#f5bd00,transparent);
  box-shadow:0 0 10px rgba(245,189,0,.8);
  opacity:.72;
}

.footer-demo-neon::after{
  content:"";
  position:absolute;
  top:-35%;
  left:-20%;
  width:38%;
  height:170%;
  background:linear-gradient(90deg,transparent,rgba(255,215,55,.09),transparent);
  transform:skewX(-18deg);
  opacity:.6;
  pointer-events:none;
}

.demo-neon-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#f5bd00;
  box-shadow:
    0 0 6px #f5bd00,
    0 0 15px rgba(245,189,0,.7);
}

.demo-neon-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
  gap:2px;
}

.demo-neon-copy small{
  color:rgba(245,189,0,.72);
  font-size:7px;
  line-height:1.1;
  letter-spacing:.15em;
  font-weight:850;
}

.demo-neon-copy strong{
  color:#f5f5f0;
  font-size:11px;
  line-height:1.2;
  font-weight:760;
  white-space:nowrap;
}

.demo-neon-arrow{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:50%;
  border:1px solid rgba(245,189,0,.35);
  color:#f5bd00;
  background:rgba(245,189,0,.035);
  box-shadow:inset 0 0 10px rgba(245,189,0,.025);
  font-size:14px;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}

.footer-demo-neon:hover{
  transform:translateY(-1px);
  border-color:rgba(245,189,0,.62)!important;
  background:
    linear-gradient(135deg,rgba(245,189,0,.095),rgba(255,255,255,.025))!important;
  box-shadow:
    0 0 18px rgba(245,189,0,.09),
    inset 0 0 20px rgba(245,189,0,.035);
}

.footer-demo-neon:hover .demo-neon-arrow{
  transform:translateX(2px);
  background:rgba(245,189,0,.075);
  box-shadow:0 0 12px rgba(245,189,0,.11);
}

/* keep it calm — no pulsing, no sweeping animation */
.footer-demo-neon,
.footer-demo-neon *,
.footer-demo-neon::before,
.footer-demo-neon::after{
  animation:none!important;
}

@media(max-width:700px){
  .footer-demo-neon{width:100%;max-width:310px}
  .demo-neon-copy strong{white-space:normal}
}

/* V48 — Approved neon demo CTA with directional arrow */
.footer-demo-neon{display:none!important}

.footer-demo-wrap{
  position:relative;
  display:flex;
  align-items:center;
  margin-top:18px;
  padding-left:58px;
  width:min(100%,360px);
}

.footer-demo-neon-v48{
  position:relative;
  display:grid!important;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:14px;
  width:100%;
  min-height:62px;
  padding:12px 13px 12px 17px!important;
  border:1px solid rgba(245,189,0,.78)!important;
  border-radius:14px!important;
  background:
    linear-gradient(135deg,rgba(245,189,0,.105),rgba(20,20,20,.72) 52%,rgba(245,189,0,.035))!important;
  color:#fff!important;
  text-decoration:none!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:
    0 0 10px rgba(245,189,0,.20),
    0 0 28px rgba(245,189,0,.10),
    inset 0 0 22px rgba(245,189,0,.045);
  overflow:hidden;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease;
}

.footer-demo-neon-v48::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:
    inset 0 0 0 1px rgba(255,220,80,.05),
    inset 0 0 18px rgba(245,189,0,.04);
}

.footer-demo-neon-v48::after{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,#ffd21a 22%,#f5bd00 76%,transparent);
  box-shadow:0 0 10px rgba(245,189,0,.95);
  opacity:.9;
}

.demo-neon-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}

.demo-neon-copy small{
  color:#f5bd00;
  font-size:7px;
  line-height:1;
  font-weight:900;
  letter-spacing:.18em;
  text-shadow:0 0 8px rgba(245,189,0,.28);
}

.demo-neon-copy strong{
  color:#f7f5ef;
  font-size:12px;
  line-height:1.15;
  font-weight:800;
  white-space:nowrap;
}

.demo-neon-arrow{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:50%;
  border:1px solid rgba(245,189,0,.78);
  background:rgba(10,10,10,.78);
  color:#f5bd00;
  font-size:17px;
  box-shadow:
    0 0 10px rgba(245,189,0,.16),
    inset 0 0 10px rgba(245,189,0,.035);
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}

.footer-demo-neon-v48:hover{
  transform:translateY(-2px);
  border-color:#ffd21a!important;
  background:
    linear-gradient(135deg,rgba(245,189,0,.15),rgba(20,20,20,.76) 50%,rgba(245,189,0,.06))!important;
  box-shadow:
    0 0 14px rgba(245,189,0,.28),
    0 0 36px rgba(245,189,0,.14),
    inset 0 0 24px rgba(245,189,0,.055);
}

.footer-demo-neon-v48:hover .demo-neon-arrow{
  transform:translateX(3px);
  background:rgba(245,189,0,.07);
  box-shadow:0 0 15px rgba(245,189,0,.24);
}

/* Curved neon pointer to the left */
.demo-neon-pointer{
  position:absolute;
  left:0;
  top:50%;
  width:52px;
  height:48px;
  transform:translateY(-50%);
  pointer-events:none;
  filter:drop-shadow(0 0 5px rgba(245,189,0,.55));
}

.pointer-curve{
  position:absolute;
  left:4px;
  top:5px;
  width:38px;
  height:29px;
  border-left:3px solid #f5bd00;
  border-bottom:3px solid #f5bd00;
  border-radius:0 0 0 28px;
  transform:rotate(-10deg);
  box-shadow:
    -2px 2px 7px rgba(245,189,0,.55),
    inset 0 -2px 5px rgba(245,189,0,.35);
}

.pointer-head{
  position:absolute;
  right:-2px;
  bottom:1px;
  color:#ffd21a;
  font-size:22px;
  line-height:1;
  text-shadow:
    0 0 5px #f5bd00,
    0 0 11px rgba(245,189,0,.85);
  transform:rotate(4deg);
}

/* Small neon accent rays near the arrow tip */
.pointer-spark{
  position:absolute;
  display:block;
  width:3px;
  height:13px;
  border-radius:999px;
  background:#ffd21a;
  box-shadow:0 0 6px #f5bd00,0 0 11px rgba(245,189,0,.7);
  transform-origin:center;
}
.ps1{right:7px;top:-5px;transform:rotate(-22deg)}
.ps2{right:-1px;top:1px;transform:rotate(15deg);height:10px}
.ps3{right:15px;top:-8px;transform:rotate(-48deg);height:9px}

/* Controlled neon flicker — attention-grabbing but not constant movement */
.footer-demo-neon-v48,
.demo-neon-pointer{
  animation:demoNeonFlicker 4.8s linear infinite;
}

@keyframes demoNeonFlicker{
  0%,18%,22%,24%,55%,100%{opacity:1}
  19%{opacity:.82}
  20%{opacity:1}
  21%{opacity:.9}
  56%{opacity:.93}
  57%{opacity:1}
}

@media (prefers-reduced-motion:reduce){
  .footer-demo-neon-v48,.demo-neon-pointer{animation:none!important}
}

@media(max-width:700px){
  .footer-demo-wrap{padding-left:46px;width:100%;max-width:355px}
  .demo-neon-pointer{transform:translateY(-50%) scale(.82);transform-origin:left center}
  .demo-neon-copy strong{white-space:normal}
}

/* V49 — refined neon demo CTA with proper arrow spacing and stronger flicker */
.footer-demo-neon-v48{display:none!important}

.footer-demo-wrap{
  position:relative;
  display:flex;
  align-items:center;
  width:min(100%,410px);
  margin-top:20px;
  padding-left:118px; /* dedicated space for the arrow */
}

.footer-demo-neon-v49{
  position:relative;
  display:grid!important;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:18px;
  width:100%;
  min-height:68px;
  padding:14px 15px 14px 20px!important;
  border:1px solid rgba(255,205,0,.82)!important;
  border-radius:17px!important;
  background:
    linear-gradient(135deg,rgba(255,196,0,.09),rgba(18,18,18,.78) 48%,rgba(255,196,0,.028))!important;
  color:#fff!important;
  text-decoration:none!important;
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
  box-shadow:
    0 0 13px rgba(255,190,0,.25),
    0 0 34px rgba(255,190,0,.13),
    inset 0 0 24px rgba(255,190,0,.05);
  overflow:hidden;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
  animation:ctaFlicker 3.4s steps(1,end) infinite;
}

.footer-demo-neon-v49::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:
    inset 0 0 0 1px rgba(255,225,110,.05),
    inset 0 0 18px rgba(255,205,0,.04);
}

.footer-demo-neon-v49::after{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,#ffd400 20%,#ffbd00 80%,transparent);
  box-shadow:0 0 12px rgba(255,196,0,.95);
  opacity:.95;
}

.demo-neon-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.demo-neon-copy small{
  color:#ffc400;
  font-size:8px;
  line-height:1;
  font-weight:900;
  letter-spacing:.19em;
  text-shadow:0 0 9px rgba(255,196,0,.36);
}
.demo-neon-copy strong{
  color:#f6f5f0;
  font-size:13px;
  line-height:1.15;
  font-weight:820;
  white-space:nowrap;
}

.footer-demo-neon-v49 .demo-neon-arrow{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:50%;
  border:1px solid rgba(255,202,0,.95);
  background:rgba(9,9,9,.82);
  color:#ffc400;
  font-size:19px;
  box-shadow:
    0 0 12px rgba(255,196,0,.18),
    inset 0 0 10px rgba(255,196,0,.04);
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}

.footer-demo-neon-v49:hover{
  transform:translateY(-2px);
  border-color:#ffd400!important;
  background:linear-gradient(135deg,rgba(255,196,0,.13),rgba(17,17,17,.80) 48%,rgba(255,196,0,.045))!important;
  box-shadow:
    0 0 16px rgba(255,196,0,.34),
    0 0 42px rgba(255,196,0,.17),
    inset 0 0 26px rgba(255,196,0,.06);
}
.footer-demo-neon-v49:hover .demo-neon-arrow{
  transform:translateX(3px);
  box-shadow:0 0 17px rgba(255,196,0,.27);
}

/* Arrow sits clearly away from the CTA */
.demo-neon-pointer{
  position:absolute;
  left:2px;
  top:50%;
  width:90px;
  height:74px;
  transform:translateY(-50%);
  pointer-events:none;
  filter:drop-shadow(0 0 6px rgba(255,196,0,.60));
  animation:pointerFlicker 2.25s steps(1,end) infinite;
}

.pointer-arc{
  position:absolute;
  left:6px;
  top:6px;
  width:60px;
  height:49px;
  border-left:4px solid #ffc400;
  border-bottom:4px solid #ffc400;
  border-radius:0 0 0 42px;
  transform:rotate(-11deg);
  box-shadow:
    -2px 3px 7px rgba(255,196,0,.58),
    inset 0 -2px 5px rgba(255,196,0,.35);
}

.pointer-head{
  position:absolute;
  right:1px;
  bottom:3px;
  color:#ffd21a;
  font-size:39px;
  line-height:1;
  text-shadow:
    0 0 5px #ffc400,
    0 0 13px rgba(255,196,0,.94),
    0 0 23px rgba(255,196,0,.55);
  transform:rotate(4deg);
}

.pointer-ray{
  position:absolute;
  display:block;
  width:4px;
  border-radius:999px;
  background:#ffd21a;
  box-shadow:0 0 7px #ffc400,0 0 13px rgba(255,196,0,.78);
}
.pr1{right:16px;top:1px;height:16px;transform:rotate(-24deg)}
.pr2{right:3px;top:12px;height:13px;transform:rotate(18deg)}
.pr3{right:31px;top:-1px;height:11px;transform:rotate(-52deg)}

@keyframes pointerFlicker{
  0%,14%,18%,22%,47%,51%,72%,100%{opacity:1}
  15%{opacity:.35}
  16%{opacity:1}
  19%{opacity:.58}
  20%{opacity:1}
  48%{opacity:.5}
  49%{opacity:1}
  73%{opacity:.72}
  74%{opacity:1}
}
@keyframes ctaFlicker{
  0%,32%,36%,67%,70%,100%{filter:brightness(1)}
  33%{filter:brightness(.72)}
  34%{filter:brightness(1.22)}
  35%{filter:brightness(.92)}
  68%{filter:brightness(.83)}
  69%{filter:brightness(1.15)}
}

@media (prefers-reduced-motion:reduce){
  .footer-demo-neon-v49,.demo-neon-pointer{animation:none!important}
}
@media(max-width:700px){
  .footer-demo-wrap{padding-left:86px;width:100%;max-width:390px}
  .demo-neon-pointer{transform:translateY(-50%) scale(.78);transform-origin:left center}
  .demo-neon-copy strong{white-space:normal}
}

/* V50 — exact-style premium neon CTA */
.footer-demo-wrap,
.footer-demo-neon-v49,
.footer-demo-neon-v48,
.footer-demo-neon-v47,
.footer-demo-neon,
.footer-demo-strong,
.footer-demo-pop{
  display:none!important;
}

.footer-demo-wrap-v51{
  position:relative;
  display:flex;
  align-items:center;
  width:min(100%,520px);
  margin-top:24px;
  padding-left:150px;
  min-height:92px;
}

.footer-demo-v51{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  width:100%;
  min-height:82px;
  padding:17px 18px 17px 28px!important;
  border:1.5px solid rgba(255,198,0,.92)!important;
  border-radius:22px!important;
  background:
    linear-gradient(135deg,rgba(255,196,0,.075),rgba(10,10,10,.78) 52%,rgba(255,196,0,.025))!important;
  color:#fff!important;
  text-decoration:none!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:
    0 0 12px rgba(255,194,0,.30),
    0 0 28px rgba(255,194,0,.14),
    inset 0 0 22px rgba(255,194,0,.04);
  overflow:visible!important;
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    border-color .2s ease,
    background .2s ease;
  animation:demoBoxFlickerV50 4.1s steps(1,end) infinite;
}

/* clean edge only — nothing sweeps over the text */
.footer-demo-v51::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:
    0 0 9px rgba(255,201,0,.38),
    0 0 22px rgba(255,201,0,.12);
}

.footer-demo-v51::after{
  content:none!important;
  display:none!important;
}

.demo-copy-v51{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
}

.demo-copy-v51 small{
  color:#ffc400;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.20em;
  white-space:nowrap;
  text-shadow:0 0 8px rgba(255,196,0,.30);
}

.demo-copy-v51 strong{
  color:#f8f7f3;
  font-size:18px;
  line-height:1.12;
  font-weight:820;
  white-space:nowrap;
  letter-spacing:-.015em;
  text-shadow:none!important;
}

.demo-action-v51{
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  flex:0 0 54px;
  border-radius:50%;
  border:1.5px solid rgba(255,201,0,.95);
  background:rgba(5,5,5,.86);
  color:#ffc400;
  font-size:29px;
  line-height:1;
  box-shadow:
    0 0 11px rgba(255,196,0,.22),
    inset 0 0 10px rgba(255,196,0,.03);
  transition:transform .2s ease,box-shadow .2s ease;
}

.footer-demo-v51:hover{
  transform:translateY(-2px);
  border-color:#ffd21a!important;
  background:
    linear-gradient(135deg,rgba(255,196,0,.11),rgba(10,10,10,.82) 52%,rgba(255,196,0,.04))!important;
  box-shadow:
    0 0 16px rgba(255,194,0,.42),
    0 0 38px rgba(255,194,0,.18),
    inset 0 0 24px rgba(255,194,0,.055);
}

.footer-demo-v51:hover .demo-action-v51{
  transform:translateX(3px);
  box-shadow:0 0 16px rgba(255,196,0,.32);
}

/* Large separated curved arrow, matching the approved reference */
.demo-pointer-v51{
  position:absolute;
  left:0;
  top:50%;
  width:120px;
  height:94px;
  transform:translateY(-50%);
  pointer-events:none;
  filter:drop-shadow(0 0 7px rgba(255,195,0,.72));
  animation:demoArrowFlickerV50 2.15s steps(1,end) infinite;
}

.demo-pointer-arc-v51{
  position:absolute;
  left:5px;
  top:5px;
  width:92px;
  height:68px;
  border-left:5px solid #ffc400;
  border-bottom:5px solid #ffc400;
  border-radius:0 0 0 66px;
  transform:rotate(-12deg);
  box-shadow:
    -2px 3px 7px rgba(255,196,0,.72),
    inset 0 -2px 4px rgba(255,196,0,.35);
}

.demo-pointer-head-v51{
  position:absolute;
  right:0;
  bottom:7px;
  width:42px;
  height:42px;
  transform:rotate(-43deg);
  border-right:7px solid #ffc400;
  border-bottom:7px solid #ffc400;
  filter:
    drop-shadow(0 0 5px #ffc400)
    drop-shadow(0 0 11px rgba(255,196,0,.85));
}

/* subtle neon burst near arrow head */
.demo-pointer-v51::before,
.demo-pointer-v51::after{
  content:"";
  position:absolute;
  right:18px;
  top:5px;
  width:4px;
  height:18px;
  border-radius:999px;
  background:#ffc400;
  box-shadow:0 0 7px #ffc400,0 0 13px rgba(255,196,0,.75);
}
.demo-pointer-v51::before{transform:rotate(-28deg)}
.demo-pointer-v51::after{right:1px;top:15px;height:15px;transform:rotate(18deg)}

@keyframes demoArrowFlickerV50{
  0%,10%,14%,18%,39%,43%,72%,100%{opacity:1;filter:drop-shadow(0 0 7px rgba(255,195,0,.72))}
  11%{opacity:.35;filter:drop-shadow(0 0 2px rgba(255,195,0,.25))}
  12%{opacity:1}
  15%{opacity:.55}
  16%{opacity:1}
  40%{opacity:.42}
  41%{opacity:1}
  73%{opacity:.70}
  74%{opacity:1}
}
@keyframes demoBoxFlickerV50{
  0%,30%,34%,60%,63%,100%{filter:brightness(1)}
  31%{filter:brightness(.82)}
  32%{filter:brightness(1.16)}
  33%{filter:brightness(.94)}
  61%{filter:brightness(.88)}
  62%{filter:brightness(1.10)}
}

@media (prefers-reduced-motion:reduce){
  .footer-demo-v51,.demo-pointer-v51{animation:none!important}
}

@media(max-width:900px){
  .footer-demo-wrap-v51{padding-left:118px;width:100%;max-width:520px}
  .demo-pointer-v51{transform:translateY(-50%) scale(.82);transform-origin:left center}
}
@media(max-width:620px){
  .footer-demo-wrap-v51{padding-left:0;padding-top:72px}
  .demo-pointer-v51{
    left:16px;
    top:10px;
    transform:scale(.68);
    transform-origin:left top;
  }
  .demo-copy-v51 strong{white-space:normal;font-size:16px}
  .demo-copy-v51 small{white-space:normal}
}

/* V51 — corrected footer cinema CTA */
.footer-demo-wrap-v51,
.footer-demo-v51,
.demo-pointer-v51{display:none!important}

.footer-demo-wrap-v51{
  position:relative;
  width:100%;
  max-width:390px;
  margin-top:26px;
}

/* The arrow is outside the box, with a real visual gap */
.demo-pointer-v51{
  position:absolute;
  right:calc(100% + 20px);
  top:50%;
  width:92px;
  height:64px;
  transform:translateY(-50%);
  pointer-events:none;
  overflow:visible;
  filter:drop-shadow(0 0 4px rgba(255,196,0,.70))
         drop-shadow(0 0 10px rgba(255,196,0,.34));
  animation:arrowFlickerV51 2.4s steps(1,end) infinite;
}
.demo-pointer-v51 svg{
  width:100%;
  height:100%;
  overflow:visible;
}
.demo-pointer-path-v51,
.demo-pointer-head-v51{
  fill:none;
  stroke:#ffc400;
  stroke-width:5.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.demo-pointer-head-v51{
  stroke-width:6;
}

.footer-demo-v51{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 44px;
  align-items:center;
  gap:18px;
  width:100%;
  min-height:76px;
  box-sizing:border-box;
  padding:15px 16px 15px 22px!important;
  border:1.5px solid rgba(255,198,0,.84)!important;
  border-radius:18px!important;
  background:
    linear-gradient(135deg,rgba(255,196,0,.07),rgba(12,12,12,.82) 55%,rgba(255,196,0,.025))!important;
  color:#fff!important;
  text-decoration:none!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:
    0 0 10px rgba(255,194,0,.22),
    0 0 24px rgba(255,194,0,.09),
    inset 0 0 18px rgba(255,194,0,.035);
  overflow:hidden;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease;
  animation:boxFlickerV51 5.2s steps(1,end) infinite;
}
.footer-demo-v51::before,
.footer-demo-v51::after{
  content:none!important;
  display:none!important;
}

.demo-copy-v51{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.demo-copy-v51 small{
  color:#ffc400;
  font-size:7.5px;
  line-height:1.1;
  font-weight:900;
  letter-spacing:.17em;
  white-space:nowrap;
  text-shadow:0 0 7px rgba(255,196,0,.24);
}
.demo-copy-v51 strong{
  color:#f6f5f1;
  font-size:14px;
  line-height:1.15;
  font-weight:800;
  letter-spacing:-.01em;
  white-space:nowrap;
  text-shadow:none!important;
  position:relative;
  z-index:2;
}

.demo-action-v51{
  position:relative;
  z-index:3;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  border:1.5px solid rgba(255,201,0,.92);
  background:#080808;
  color:#ffc400;
  font-size:22px;
  line-height:1;
  box-shadow:0 0 9px rgba(255,196,0,.14);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}

.footer-demo-v51:hover{
  transform:translateY(-2px);
  border-color:#ffd21a!important;
  background:
    linear-gradient(135deg,rgba(255,196,0,.10),rgba(12,12,12,.86) 55%,rgba(255,196,0,.035))!important;
  box-shadow:
    0 0 14px rgba(255,194,0,.30),
    0 0 30px rgba(255,194,0,.13),
    inset 0 0 20px rgba(255,194,0,.04);
}
.footer-demo-v51:hover .demo-action-v51{
  transform:translateX(2px);
  box-shadow:0 0 13px rgba(255,196,0,.24);
}

/* Flicker is now attention-grabbing but controlled */
@keyframes arrowFlickerV51{
  0%,8%,12%,16%,34%,38%,63%,67%,100%{opacity:1}
  9%{opacity:.24}
  10%{opacity:1}
  13%{opacity:.48}
  14%{opacity:1}
  35%{opacity:.34}
  36%{opacity:1}
  64%{opacity:.62}
  65%{opacity:1}
}
@keyframes boxFlickerV51{
  0%,46%,50%,77%,80%,100%{filter:brightness(1)}
  47%{filter:brightness(.86)}
  48%{filter:brightness(1.10)}
  49%{filter:brightness(.95)}
  78%{filter:brightness(.90)}
  79%{filter:brightness(1.07)}
}

@media (prefers-reduced-motion:reduce){
  .demo-pointer-v51,.footer-demo-v51{animation:none!important}
}

/* Tablet/mobile: keep it clean, no overlap */
@media(max-width:1050px){
  .demo-pointer-v51{
    right:calc(100% + 12px);
    width:72px;
    transform:translateY(-50%) scale(.88);
    transform-origin:right center;
  }
}
@media(max-width:760px){
  .footer-demo-wrap-v51{max-width:100%;margin-top:24px}
  .demo-pointer-v51{display:none}
  .footer-demo-v51{grid-template-columns:minmax(0,1fr) 42px}
  .demo-copy-v51 strong{white-space:normal}
  .demo-copy-v51 small{white-space:normal}
}

/* V52 — align neon arrow precisely with CTA center */
.footer-demo-wrap-v51{
  position:relative;
  width:100%;
  max-width:390px;
  margin-top:26px;
}
.demo-pointer-v51{
  position:absolute!important;
  right:calc(100% + 24px)!important;
  left:auto!important;
  top:50%!important;
  width:94px!important;
  height:64px!important;
  transform:translateY(-50%)!important;
  transform-origin:center center!important;
  margin:0!important;
}
.demo-pointer-v51 svg{
  display:block;
  width:100%;
  height:100%;
}
.footer-demo-v51{
  margin:0!important;
}

/* Keep arrow centered on the box at desktop footer sizes */
@media(min-width:761px){
  .footer-demo-wrap-v51{
    display:block!important;
  }
  .demo-pointer-v51{
    top:50%!important;
    right:calc(100% + 24px)!important;
    transform:translateY(-50%)!important;
  }
}

/* V53 — final micro-alignment: arrow slightly higher and closer */
@media(min-width:761px){
  .demo-pointer-v51{
    top:46%!important;
    right:calc(100% + 17px)!important;
    transform:translateY(-50%)!important;
  }
}

/* V54 — use the supplied neon arrow artwork exactly */
.demo-pointer-v51{display:none!important}

.footer-demo-wrap-v51{
  position:relative;
  width:100%;
  max-width:390px;
  margin-top:26px;
}

.demo-pointer-image-v54{
  position:absolute;
  right:calc(100% + 18px);
  top:50%;
  width:116px;
  height:82px;
  transform:translateY(-50%);
  pointer-events:none;
  overflow:hidden;
  border-radius:0;
  mix-blend-mode:screen;
  filter:
    brightness(1.12)
    contrast(1.08)
    drop-shadow(0 0 5px rgba(255,190,0,.38));
  animation:userArrowFlickerV54 2.45s steps(1,end) infinite;
}

.demo-pointer-image-v54 img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

@keyframes userArrowFlickerV54{
  0%,12%,16%,20%,46%,50%,72%,100%{
    opacity:1;
    filter:brightness(1.12) contrast(1.08) drop-shadow(0 0 5px rgba(255,190,0,.38));
  }
  13%{opacity:.52;filter:brightness(.84) contrast(1.04) drop-shadow(0 0 2px rgba(255,190,0,.18))}
  14%{opacity:1}
  17%{opacity:.72}
  18%{opacity:1}
  47%{opacity:.58}
  48%{opacity:1}
  73%{opacity:.82}
  74%{opacity:1}
}

@media (prefers-reduced-motion:reduce){
  .demo-pointer-image-v54{animation:none!important}
}

@media(max-width:1050px){
  .demo-pointer-image-v54{
    right:calc(100% + 14px);
    width:100px;
    height:71px;
  }
}

@media(max-width:760px){
  .demo-pointer-image-v54{display:none!important}
}

/* V55 — transparent arrow artwork: no visible image rectangle */
.demo-pointer-image-v54{
  background:transparent!important;
  mix-blend-mode:normal!important;
  overflow:visible!important;
  filter:drop-shadow(0 0 5px rgba(255,190,0,.45))!important;
}
.demo-pointer-image-v54 img{
  background:transparent!important;
}

/* V56 — new supplied transparent curved neon arrow */
.demo-pointer-image-v54{
  right:calc(100% + 18px)!important;
  top:50%!important;
  width:128px!important;
  height:86px!important;
  transform:translateY(-50%)!important;
  background:transparent!important;
  overflow:visible!important;
  mix-blend-mode:normal!important;
  filter:drop-shadow(0 0 5px rgba(255,190,0,.38))!important;
}
.demo-pointer-image-v54 img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:transparent!important;
}
@media(max-width:1050px){
  .demo-pointer-image-v54{
    right:calc(100% + 14px)!important;
    width:110px!important;
    height:74px!important;
  }
}

/* V58 — About DCC */
.about-dcc-page{background:#080909;color:#f5f4ef}
.about-hero-v58{padding:190px 0 120px;min-height:650px;display:flex;align-items:center;background:radial-gradient(circle at 78% 30%,rgba(255,196,0,.10),transparent 32%),linear-gradient(135deg,#111313,#070808 70%)}
.about-hero-v58 h1{font-size:clamp(56px,7vw,108px);line-height:.94;letter-spacing:-.055em;margin:20px 0 30px;max-width:1000px}
.about-hero-v58 p{max-width:790px;font-size:20px;line-height:1.65;color:#a8a8a4}
.about-intro-v58,.about-pillars-v58,.about-expertise-v58,.about-cert-v58,.about-dealer-v58,.about-gcc-v58{padding:110px 0;border-top:1px solid rgba(255,255,255,.08)}
.about-split-v58{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.about-split-v58 h2,.about-expertise-v58 h2,.about-cert-v58 h2,.about-gcc-v58 h2,.about-cta-v58 h2{font-size:clamp(38px,4.2vw,68px);line-height:1.02;letter-spacing:-.04em;margin:18px 0}
.about-copy-v58 p,.about-lead-v58{font-size:18px;line-height:1.8;color:#a6a6a2}
.about-grid-v58{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.about-grid-v58 article{padding:32px 26px;min-height:285px;border:1px solid rgba(255,196,0,.20);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,196,0,.025))}
.about-grid-v58 article>span{color:#ffc400;font-size:12px;letter-spacing:.18em}
.about-grid-v58 h3{font-size:23px;margin:55px 0 14px}
.about-grid-v58 p{color:#92928e;line-height:1.65}
.expertise-tags-v58,.gcc-list-v58{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}
.expertise-tags-v58 span,.gcc-list-v58 span{border:1px solid rgba(255,196,0,.30);border-radius:999px;padding:13px 20px;color:#d7d6d1;background:rgba(255,196,0,.035)}
.cert-logo-grid-v58{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px}
.cert-logo-grid-v58>div{min-height:150px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#0d0e0e;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px}
.cert-logo-grid-v58 img{max-width:110px;max-height:58px;object-fit:contain;filter:grayscale(1);opacity:.9}
.cert-logo-grid-v58 span{font-size:11px;letter-spacing:.18em;color:#aaa}
.dealer-flow-v58{border-top:1px solid rgba(255,255,255,.1)}
.dealer-flow-v58 div{display:grid;grid-template-columns:52px 1fr;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:18px}
.dealer-flow-v58 b{color:#ffc400;font-size:11px;letter-spacing:.12em}
.about-cta-v58{padding:100px 0;background:radial-gradient(circle at 75% 50%,rgba(255,196,0,.12),transparent 35%),#0d0e0e}
.about-cta-v58 .wrap{display:flex;justify-content:space-between;gap:50px;align-items:center}
.about-cta-v58 p{color:#9d9d99;font-size:18px}
.about-cta-actions-v58{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.nav a.active{color:#ffc400}
@media(max-width:950px){
 .about-split-v58{grid-template-columns:1fr;gap:35px}
 .about-grid-v58{grid-template-columns:1fr 1fr}
 .cert-logo-grid-v58{grid-template-columns:repeat(3,1fr)}
 .about-cta-v58 .wrap{display:block}
 .about-cta-actions-v58{justify-content:flex-start;margin-top:30px}
}
@media(max-width:620px){
 .about-hero-v58{padding:145px 0 80px;min-height:auto}
 .about-grid-v58,.cert-logo-grid-v58{grid-template-columns:1fr}
 .about-intro-v58,.about-pillars-v58,.about-expertise-v58,.about-cert-v58,.about-dealer-v58,.about-gcc-v58{padding:75px 0}
}

/* V59 — About DCC refinement */
.about-hero-v58{padding:165px 0 95px;min-height:510px}
.about-hero-v58 h1{font-size:clamp(38px,4.4vw,70px);line-height:1.02;letter-spacing:-.045em;max-width:900px;margin:18px 0 26px}
.about-platforms-v59{margin-top:72px;padding-top:58px;border-top:1px solid rgba(255,255,255,.08)}
.about-platforms-v59 h3{font-size:clamp(30px,3vw,46px);line-height:1.08;letter-spacing:-.035em;margin:16px 0 34px;max-width:850px}
.about-advanced-grid-v59{margin-top:10px}
.header{transition:opacity .42s ease,transform .42s ease,visibility .42s ease,background-color .3s ease}
.header.footer-near{opacity:0;transform:translateY(-18px);visibility:hidden;pointer-events:none}
@media(max-width:620px){
 .about-hero-v58{padding:135px 0 68px;min-height:auto}
 .about-hero-v58 h1{font-size:clamp(36px,11vw,52px)}
 .about-platforms-v59{margin-top:52px;padding-top:42px}
}


/* V61 — About DCC cleanup */
.about-demo-shift-v61{
  display:flex;
  align-items:center;
  gap:22px;
  margin-left:auto;
  min-width:430px;
  justify-content:flex-end;
}
.about-demo-arrow-v61{
  width:115px;
  max-height:90px;
  object-fit:contain;
  transform:rotate(-2deg);
  filter:drop-shadow(0 0 10px rgba(255,196,0,.35));
}
.about-demo-card-v61{
  min-width:330px;
  max-width:390px;
  margin:0;
}
.about-cta-v58 .wrap{
  align-items:center;
}
@media(max-width:950px){
  .about-demo-shift-v61{
    margin:30px 0 0;
    justify-content:flex-start;
    min-width:0;
  }
}
@media(max-width:620px){
  .about-demo-shift-v61{gap:8px}
  .about-demo-arrow-v61{width:70px}
  .about-demo-card-v61{min-width:0;width:100%}
}


/* V62 — exact premium cinema CTA on About page */
.about-demo-shift-v61{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:24px;
  margin-left:auto;
  min-width:520px;
}
.about-demo-arrow-v61{
  width:118px;
  height:auto;
  object-fit:contain;
  flex:0 0 auto;
}
.about-premium-demo-v62{
  width:330px;
  min-height:82px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:17px 18px 17px 22px;
  border:1px solid #ffc400;
  border-radius:18px;
  background:rgba(8,9,9,.76);
  box-shadow:0 0 18px rgba(255,196,0,.24), inset 0 0 18px rgba(255,196,0,.025);
  color:#fff;
  text-decoration:none;
}
.about-premium-demo-copy-v62{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:7px;
  min-width:0;
}
.about-premium-demo-copy-v62 span{
  display:block;
  color:#ffc400;
  font-size:9px;
  font-weight:800;
  letter-spacing:.09em;
  line-height:1;
  white-space:nowrap;
}
.about-premium-demo-copy-v62 strong{
  display:block;
  color:#f5f4ef;
  font-size:14px;
  font-weight:800;
  line-height:1.15;
  white-space:nowrap;
}
.about-premium-demo-icon-v62{
  width:42px;
  height:42px;
  flex:0 0 42px;
  border:1px solid #ffc400;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ffc400;
  font-size:20px;
  line-height:1;
}
.about-premium-demo-v62:hover{
  box-shadow:0 0 26px rgba(255,196,0,.38), inset 0 0 20px rgba(255,196,0,.04);
}
@media(max-width:950px){
  .about-demo-shift-v61{min-width:0;margin:30px 0 0;justify-content:flex-start}
}
@media(max-width:560px){
  .about-demo-shift-v61{gap:10px}
  .about-demo-arrow-v61{width:72px}
  .about-premium-demo-v62{width:min(330px,calc(100vw - 120px));padding-left:14px}
  .about-premium-demo-copy-v62 strong{font-size:12px;white-space:normal}
  .about-premium-demo-copy-v62 span{font-size:7px;white-space:normal}
}


/* V65 — Our Team / Certifications */
.team-cert-head-v65{
  max-width:1120px;
  margin-bottom:8px;
}
.team-cert-head-v65 h2{
  font-size:clamp(48px,5.6vw,88px);
  line-height:.98;
  letter-spacing:-.045em;
  margin:18px 0 28px;
  max-width:1050px;
}
.cert-word-v65{
  position:relative;
  display:inline-block;
  color:#ffc400;
  min-width:7.8em;
  transition:opacity .26s ease, transform .26s ease, filter .26s ease;
}
.cert-word-v65::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-9px;
  height:1px;
  background:linear-gradient(90deg,#ffc400,rgba(255,196,0,.15),transparent);
  box-shadow:0 0 12px rgba(255,196,0,.3);
}
.cert-word-v65.is-changing{
  opacity:0;
  transform:translateY(8px);
  filter:blur(4px);
}
.team-cert-head-v65 .about-lead-v58{
  max-width:1180px;
  margin-bottom:44px;
}
@media(max-width:700px){
  .team-cert-head-v65 h2{font-size:clamp(42px,11vw,64px)}
  .cert-word-v65{min-width:0}
}

/* V66 — About hero memberships */
.about-hero-layout-v66{width:100%;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:70px;align-items:center}
.about-hero-copy-v66{min-width:0}
.about-hero-v66 .about-hero-copy-v66 h1{font-size:clamp(48px,4.7vw,72px);line-height:.98;max-width:720px}
.about-hero-v66 .about-hero-copy-v66 p{max-width:830px;font-size:18px}
.about-memberships-v66{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;padding:35px 20px;border-left:1px solid rgba(255,196,0,.18)}
.about-memberships-v66 img{display:block;object-fit:contain;max-width:100%;height:auto}
.cedia-member-v66{width:330px;max-height:135px}
.avixa-member-v66{width:300px;max-height:95px}
.member-line-v66{width:70%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,196,0,.5),transparent)}
@media(max-width:950px){.about-hero-layout-v66{grid-template-columns:1fr;gap:40px}.about-memberships-v66{border-left:0;border-top:1px solid rgba(255,196,0,.18);flex-direction:row}.member-line-v66{width:1px;height:70px;background:linear-gradient(180deg,transparent,rgba(255,196,0,.5),transparent)}}
@media(max-width:620px){.about-memberships-v66{flex-direction:column}.member-line-v66{width:70%;height:1px}}


/* V67 — About hero spacing + equal membership logo sizing */
.about-hero-v66 .wrap.about-hero-layout-v66{
  max-width:1500px;
  margin:0 auto;
  padding-left:72px;
  padding-right:72px;
  box-sizing:border-box;
}
.about-hero-copy-v66{
  padding-left:0;
  max-width:860px;
}
.about-hero-v66 .about-hero-copy-v66 p{
  max-width:820px;
}

.about-memberships-v66{
  min-height:350px;
  padding:36px 48px;
  box-sizing:border-box;
}
.about-memberships-v66 img{
  width:300px !important;
  height:110px !important;
  object-fit:contain !important;
}
.cedia-member-v66,
.avixa-member-v66{
  width:300px !important;
  height:110px !important;
  max-width:300px !important;
  max-height:110px !important;
}
.member-line-v66{
  width:78%;
}

@media(max-width:1100px){
  .about-hero-v66 .wrap.about-hero-layout-v66{
    padding-left:40px;
    padding-right:40px;
  }
}
@media(max-width:700px){
  .about-hero-v66 .wrap.about-hero-layout-v66{
    padding-left:24px;
    padding-right:24px;
  }
  .about-memberships-v66 img,
  .cedia-member-v66,
  .avixa-member-v66{
    width:240px !important;
    height:90px !important;
    max-width:240px !important;
    max-height:90px !important;
  }
}


/* V68 — rebalance CEDIA / AVIXA visual sizing */
.cedia-member-v66{
  width:270px !important;
  height:100px !important;
  max-width:270px !important;
  max-height:100px !important;
  object-fit:contain !important;
}

.avixa-member-v66{
  width:360px !important;
  height:110px !important;
  max-width:360px !important;
  max-height:110px !important;
  object-fit:contain !important;
}

@media(max-width:700px){
  .cedia-member-v66{
    width:230px !important;
    height:88px !important;
    max-width:230px !important;
    max-height:88px !important;
  }
  .avixa-member-v66{
    width:300px !important;
    height:96px !important;
    max-width:300px !important;
    max-height:96px !important;
  }
}


/* V69 — user-supplied CEDIA + AVIXA artwork, equal display boxes */
.about-memberships-v66{
  gap:24px;
}
.about-memberships-v66 .cedia-member-v66,
.about-memberships-v66 .avixa-member-v66{
  width:340px !important;
  height:125px !important;
  max-width:340px !important;
  max-height:125px !important;
  object-fit:contain !important;
  object-position:center !important;
}
@media(max-width:700px){
  .about-memberships-v66 .cedia-member-v66,
  .about-memberships-v66 .avixa-member-v66{
    width:270px !important;
    height:100px !important;
    max-width:270px !important;
    max-height:100px !important;
  }
}


/* V72 — compact team certification heading + updated certification artwork */
.team-cert-head-v65{
  max-width:980px;
}
.team-cert-head-v65 h2{
  font-size:clamp(30px,3vw,46px) !important;
  line-height:1.05 !important;
  letter-spacing:-.025em !important;
  margin:12px 0 20px !important;
  max-width:760px !important;
}
.cert-word-v65{
  min-width:7.6em;
}
.team-cert-head-v65 .about-lead-v58{
  max-width:1000px;
  margin-bottom:36px;
}

.cert-logo-grid-v72{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch;
}
.cert-logo-grid-v72 > div{
  min-width:0;
  padding:16px 12px 14px !important;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  gap:9px;
}
.cert-stage-v72{
  width:100%;
  height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.cert-stage-v72 img{
  width:100% !important;
  height:100% !important;
  max-width:150px !important;
  max-height:140px !important;
  object-fit:contain !important;
  object-position:center !important;
}
.cert-logo-grid-v72 > div:nth-child(2) .cert-stage-v72 img,
.cert-logo-grid-v72 > div:nth-child(3) .cert-stage-v72 img{
  max-width:165px !important;
}
.cert-logo-grid-v72 > div > span{
  text-align:center;
  line-height:1.2;
}

@media(max-width:1150px){
  .cert-logo-grid-v72{grid-template-columns:repeat(3,1fr) !important}
}
@media(max-width:650px){
  .cert-logo-grid-v72{grid-template-columns:repeat(2,1fr) !important}
  .team-cert-head-v65 h2{font-size:32px !important}
}


/* V73 — preserve original full-color certification artwork */
.cert-logo-grid-v72 .cert-stage-v72 img,
.cert-logo-grid-v72 > div img{
  filter:none !important;
  -webkit-filter:none !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
}
.cert-logo-grid-v72 > div:hover img{
  filter:none !important;
  -webkit-filter:none !important;
  opacity:1 !important;
}

/* V74 — DCC logo returns to top of current page */
html { scroll-behavior: smooth; }
.footer-logo-top{
  display:inline-block;
  line-height:0;
  text-decoration:none;
}
.footer-logo-top .dcc-logo-img{
  display:block;
}


/* V75 — more restrained About hero title */
.about-hero-v58 .about-copy-v58 h1,
.about-hero-v66 .about-copy-v58 h1{
  font-size:clamp(42px,4.1vw,68px) !important;
  line-height:1.02 !important;
  max-width:760px !important;
}


/* V76 — Homepage typography refinement */

/* Main homepage hero: make "Reference-grade home cinema." much more restrained */
.hero h1,
.hero-copy h1,
.hero-title,
#latest .hero h1{
  font-size:clamp(42px,4.2vw,68px) !important;
  line-height:0.98 !important;
  letter-spacing:-0.035em !important;
  max-width:760px !important;
}

/* Latest from DCC — smaller, cleaner editorial cards */
#latest .section-label,
.latest-section .section-label{
  font-size:12px !important;
  letter-spacing:.16em !important;
}

#latest .story-card h2,
#latest .story-card h3,
#latest article h2,
#latest article h3,
.latest-section .story-card h2,
.latest-section .story-card h3{
  font-size:clamp(22px,1.65vw,30px) !important;
  line-height:1.08 !important;
  letter-spacing:-.018em !important;
  max-width:90% !important;
  margin-top:10px !important;
  margin-bottom:12px !important;
}

#latest .story-card p,
#latest article p,
.latest-section .story-card p{
  font-size:13px !important;
  line-height:1.55 !important;
  max-width:88% !important;
}

#latest .story-card .eyebrow,
#latest article .eyebrow,
.latest-section .story-card .eyebrow{
  font-size:10px !important;
  letter-spacing:.13em !important;
  line-height:1.3 !important;
}

#latest .story-card a,
#latest article a,
.latest-section .story-card a{
  font-size:12px !important;
}

/* More breathing room inside Latest cards */
#latest .story-card,
#latest article,
.latest-section .story-card{
  padding:28px 26px !important;
}

@media(max-width:700px){
  .hero h1,
  .hero-copy h1,
  .hero-title{
    font-size:40px !important;
  }
}

/* V78 show card */
.show-card-v78{overflow:hidden}.show-card-image-v78{position:absolute;inset:0;opacity:.24}.show-card-image-v78:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,8,.95) 0%,rgba(5,7,8,.55) 55%,rgba(5,7,8,.25) 100%)}
.show-card-image-v78 img{width:100%;height:100%;object-fit:cover;display:block}.show-card-v78 .news-logo,.show-card-v78 .news-content{position:relative;z-index:2}


/* V80 — standardized article image, richer event details, manual latest navigation */

/* Article image frame */
.article-cover-frame-v80{
  width:min(760px,100%);
  aspect-ratio:16/10;
  margin:0 0 44px;
  border:1px solid rgba(246,196,0,.28);
  border-radius:18px;
  padding:10px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.025),rgba(246,196,0,.025)),
    #0b0d0e;
  box-shadow:0 18px 50px rgba(0,0,0,.28);
  overflow:hidden;
}
.article-cover-frame-v80 .article-cover-v78{
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  border:0 !important;
  border-radius:11px !important;
  object-fit:cover !important;
  object-position:center !important;
}

/* Event details */
.event-box-v80{
  padding:26px !important;
  background:
    radial-gradient(circle at 88% 15%,rgba(246,196,0,.10),transparent 32%),
    rgba(255,255,255,.018) !important;
}
.event-box-head-v80{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.event-kicker-v80{
  display:block;
  color:#f6c400;
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
  margin-bottom:7px;
}
.event-box-head-v80 h2{
  margin:0 !important;
  font-size:23px !important;
}
.event-badge-v80{
  min-width:74px;
  height:48px;
  padding:0 16px;
  border-radius:14px;
  border:1px solid rgba(246,196,0,.55);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#f6c400;
  font-size:20px;
  font-weight:900;
  letter-spacing:.06em;
  background:rgba(246,196,0,.045);
}
.event-cards-v80{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.event-card-v80{
  display:grid;
  grid-template-columns:44px 1fr;
  align-items:center;
  gap:14px;
  min-height:84px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:14px;
  background:rgba(0,0,0,.18);
}
.event-icon-v80{
  width:40px;
  height:40px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#f6c400;
  border:1px solid rgba(246,196,0,.28);
  font-size:18px;
  font-weight:800;
  background:rgba(246,196,0,.035);
}
.event-card-v80:last-child .event-icon-v80{
  font-size:9px;
  letter-spacing:.08em;
}
.event-card-v80 strong{
  display:block;
  color:#fff;
  font-size:12px;
  margin-bottom:4px;
}
.event-card-v80 span{
  display:block;
  color:#aeb3b7;
  font-size:14px;
  line-height:1.35;
}

/* Latest from DCC controls */
.latest-controls-v80{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  width:min(1440px,calc(100% - 64px));
  margin:-34px auto 14px;
  position:relative;
  z-index:5;
}
.latest-arrow-v80{
  width:38px;
  height:38px;
  border-radius:50%;
  border:1px solid rgba(246,196,0,.45);
  background:#0c0e0f;
  color:#f6c400;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.latest-arrow-v80:hover{
  transform:translateY(-1px);
  border-color:#f6c400;
  box-shadow:0 0 18px rgba(246,196,0,.18);
}
#newsTrack{
  scroll-behavior:smooth;
}

@media(max-width:700px){
  .article-cover-frame-v80{width:100%;aspect-ratio:4/5}
  .event-cards-v80{grid-template-columns:1fr}
  .latest-controls-v80{
    width:calc(100% - 34px);
    margin:-18px auto 12px;
  }
}


/* V83 — standardized article images */
.article-cover-frame-v80,
.article-cover-frame-v83{
  width:min(760px,100%);
  aspect-ratio:16 / 10;
  box-sizing:border-box;
  margin:0 0 44px;
  padding:10px;
  border:1px solid rgba(246,196,0,.30);
  border-radius:18px;
  background:#090b0c;
  overflow:hidden;
  box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.article-cover-frame-v80 .article-cover-v78,
.article-cover-frame-v83 img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  display:block;
  margin:0 !important;
  border:0 !important;
  border-radius:11px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#050607;
}

/* V84 Latest from DCC: centered manual arrow controls below the article carousel */
.latest-controls-v80{
  display:none !important;
}

.latest-nav-v83{
  width:min(1440px,calc(100% - 64px));
  margin:18px auto 0;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  position:relative;
  z-index:20;
}

.latest-nav-btn-v83{
  appearance:none;
  -webkit-appearance:none;
  width:42px;
  height:42px;
  padding:0;
  border-radius:50%;
  border:1px solid rgba(246,196,0,.48);
  background:#0b0d0e;
  color:#f6c400;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 0 0 rgba(246,196,0,0);
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.latest-nav-btn-v83 span{
  display:block;
  font-size:31px;
  font-family:Arial,Helvetica,sans-serif;
  font-weight:300;
  line-height:34px;
  transform:translateY(-1px);
}

.latest-nav-btn-v83:hover{
  border-color:#f6c400;
  background:rgba(246,196,0,.055);
  box-shadow:0 0 18px rgba(246,196,0,.18);
  transform:translateY(-1px);
}

#newsTrack{
  scroll-behavior:smooth;
}

@media(max-width:700px){
  .article-cover-frame-v80,
  .article-cover-frame-v83{
    width:100%;
    aspect-ratio:4 / 3;
  }
  .latest-nav-v83{
    width:calc(100% - 34px);
    margin:16px auto 0;
  }
}


/* V85 — Homepage neural-engine hero background
   Smooth gold energy filaments replace the old orbit/circle treatment. */
.hero{
  isolation:isolate;
  background:#050607;
}
.hero-bg{
  z-index:0;
  background:
    radial-gradient(ellipse at 82% 46%,rgba(246,196,0,.075),transparent 30%),
    radial-gradient(ellipse at 68% 58%,rgba(246,196,0,.035),transparent 38%),
    linear-gradient(112deg,#05080c 0%,#080a0c 45%,#10100f 100%) !important;
}
.hero-neural-canvas{
  position:absolute;
  inset:-4%;
  width:108%;
  height:108%;
  z-index:1;
  display:block;
  pointer-events:none;
  opacity:.98;
  transform:translateZ(0);
}
.hero-neural-vignette{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(4,7,10,.98) 0%,
      rgba(4,7,10,.93) 18%,
      rgba(4,7,10,.76) 34%,
      rgba(4,7,10,.30) 53%,
      rgba(4,7,10,.06) 72%,
      rgba(4,7,10,.10) 100%),
    linear-gradient(180deg,
      rgba(0,0,0,.28) 0%,
      transparent 26%,
      transparent 76%,
      rgba(0,0,0,.34) 100%);
}
.hero-inner{z-index:3}

/* The retired V1 orbit/grid remain in the stylesheet for backward compatibility,
   but are intentionally removed from the homepage markup in V85. */

@media(max-width:760px){
  .hero-neural-canvas{inset:-2%;width:104%;height:104%;opacity:.80}
  .hero-neural-vignette{
    background:
      linear-gradient(90deg,rgba(4,7,10,.96) 0%,rgba(4,7,10,.82) 52%,rgba(4,7,10,.28) 100%),
      linear-gradient(180deg,rgba(0,0,0,.24),transparent 28%,transparent 72%,rgba(0,0,0,.32));
  }
}

/* V86 — full-screen premium neural-engine landing experience */
.hero{
  min-height:100svh !important;
  height:100svh;
  align-items:center !important;
  isolation:isolate;
  background:#030405 !important;
  border-bottom:1px solid rgba(246,196,0,.12);
}
.hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(ellipse 62% 70% at 83% 48%,rgba(246,196,0,.085),transparent 58%),
    radial-gradient(ellipse 44% 55% at 66% 72%,rgba(181,126,0,.035),transparent 65%),
    linear-gradient(112deg,#020509 0%,#050708 42%,#0b0a08 72%,#080807 100%) !important;
}
.hero-neural-canvas{
  position:absolute;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:1;
  display:block;
  pointer-events:none;
  opacity:1;
  transform:translateZ(0);
  filter:saturate(1.08) contrast(1.03);
}
.hero-neural-vignette{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(2,5,8,.99) 0%,
      rgba(2,5,8,.96) 20%,
      rgba(2,5,8,.76) 38%,
      rgba(2,5,8,.34) 55%,
      rgba(2,5,8,.08) 72%,
      rgba(2,5,8,.03) 100%),
    linear-gradient(180deg,
      rgba(0,0,0,.42) 0%,
      transparent 20%,
      transparent 76%,
      rgba(0,0,0,.50) 100%);
}
.hero-neural-vignette:after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 78% 52%,rgba(255,203,28,.055),transparent 27%);
  mix-blend-mode:screen;
}
.hero-inner{
  z-index:3 !important;
  width:min(var(--max),calc(100% - 64px));
  padding-top:118px !important;
  padding-bottom:72px !important;
  margin:auto;
}
.hero .eyebrow{
  text-shadow:0 0 26px rgba(246,196,0,.16);
}
.hero h1,
.hero-copy h1,
.hero-title{
  max-width:760px !important;
  font-size:clamp(58px,5.45vw,94px) !important;
  line-height:.94 !important;
  letter-spacing:-.052em !important;
  margin:20px 0 30px !important;
  text-wrap:balance;
}
.hero h1 .soft{
  color:#969696 !important;
}
.hero-copy{
  display:block !important;
}
.hero-copy p{
  max-width:700px !important;
  color:#aeb7bf !important;
  font-size:16px !important;
  line-height:1.72 !important;
  text-shadow:0 1px 20px rgba(0,0,0,.45);
}
.hero-meta{
  margin-top:42px !important;
  gap:28px !important;
}
.hero-meta i{
  box-shadow:0 0 16px rgba(246,196,0,.8) !important;
}

/* Portfolio now follows Latest from DCC on the homepage. */
#latest + .marquee{
  margin-top:0;
}
#brands{
  padding-top:92px;
  padding-bottom:98px;
}

@media(max-width:760px){
  .hero{
    min-height:100svh !important;
    height:auto;
    align-items:center !important;
  }
  .hero-inner{
    padding-top:126px !important;
    padding-bottom:62px !important;
  }
  .hero h1,
  .hero-copy h1,
  .hero-title{
    font-size:clamp(46px,13vw,68px) !important;
    max-width:96% !important;
  }
  .hero-neural-vignette{
    background:
      linear-gradient(90deg,rgba(2,5,8,.96) 0%,rgba(2,5,8,.80) 55%,rgba(2,5,8,.24) 100%),
      linear-gradient(180deg,rgba(0,0,0,.34),transparent 24%,transparent 72%,rgba(0,0,0,.44));
  }
  .hero-neural-canvas{opacity:.90}
}


/* V87 — Lightweight cinematic neural field
   Six visual strands only. SVG + compositor-friendly CSS replaces the V86
   canvas renderer to keep scrolling and interaction responsive. */
.hero{
  width:100% !important;
  min-height:clamp(590px,68vh,690px) !important;
  height:clamp(590px,68vh,690px) !important;
  align-items:center !important;
  overflow:hidden;
  isolation:isolate;
  background:#030405 !important;
}
.hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(ellipse 38% 58% at 83% 50%,rgba(224,168,0,.060),transparent 68%),
    radial-gradient(ellipse 58% 92% at 105% 48%,rgba(116,80,0,.055),transparent 72%),
    linear-gradient(108deg,#020509 0%,#050708 46%,#0b0a08 76%,#070706 100%) !important;
}
.hero-neural-field{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
  contain:layout paint;
}
.hero-neural-svg{
  position:absolute;
  inset:-1.5% -2.5%;
  width:105%;
  height:103%;
  display:block;
  overflow:visible;
  shape-rendering:geometricPrecision;
  text-rendering:geometricPrecision;
}
.neural-strand{
  transform-box:fill-box;
  transform-origin:center;
  will-change:transform,opacity;
}
.neural-strand-main{
  animation:neuralDriftMain 18s ease-in-out infinite alternate;
}
.neural-strand-secondary{
  opacity:.62;
  animation:neuralDriftSecondary 24s ease-in-out infinite alternate;
}
.neural-line,
.neural-halo{
  fill:none;
  stroke:url(#neuralGoldA);
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.neural-halo{
  stroke-width:6;
  opacity:.07;
}
.neural-line{
  stroke-width:1.05;
  opacity:.58;
}
.neural-line-soft{
  stroke:url(#neuralGoldB);
  stroke-width:.72;
  opacity:.56;
}
.neural-nodes{
  opacity:.76;
}
.neural-node-dim{
  opacity:.60;
}
@keyframes neuralDriftMain{
  0%{transform:translate3d(-.7%,.5%,0) scaleY(.985)}
  50%{transform:translate3d(.45%,-.55%,0) scaleY(1.018)}
  100%{transform:translate3d(1.0%,.35%,0) scaleY(.993)}
}
@keyframes neuralDriftSecondary{
  0%{transform:translate3d(.55%,-.65%,0) scaleY(1.012)}
  50%{transform:translate3d(-.35%,.55%,0) scaleY(.987)}
  100%{transform:translate3d(-.9%,-.20%,0) scaleY(1.008)}
}
.hero-neural-vignette{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(2,5,8,.995) 0%,
      rgba(2,5,8,.97) 21%,
      rgba(2,5,8,.82) 37%,
      rgba(2,5,8,.42) 52%,
      rgba(2,5,8,.10) 69%,
      rgba(2,5,8,.03) 100%),
    linear-gradient(180deg,rgba(0,0,0,.34) 0%,transparent 22%,transparent 78%,rgba(0,0,0,.40) 100%);
}
.hero-neural-vignette:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 32% 48% at 79% 49%,rgba(246,196,0,.035),transparent 72%),
    linear-gradient(180deg,transparent 0%,rgba(0,0,0,.05) 100%);
}
.hero-inner{
  z-index:3 !important;
  width:min(var(--max),calc(100% - 64px));
  padding-top:108px !important;
  padding-bottom:52px !important;
  margin:auto;
}
.hero h1,
.hero-copy h1,
.hero-title{
  max-width:750px !important;
  font-size:clamp(52px,4.9vw,82px) !important;
  line-height:.95 !important;
  margin:18px 0 26px !important;
}
.hero-copy p{
  max-width:690px !important;
  font-size:15px !important;
  line-height:1.68 !important;
}
.hero-meta{
  margin-top:34px !important;
}

/* Retire V86 canvas visually even if an older cached page still contains it. */
.hero-neural-canvas{display:none !important}

@media(max-width:900px){
  .hero{
    min-height:600px !important;
    height:auto !important;
  }
  .hero-inner{
    padding-top:118px !important;
    padding-bottom:56px !important;
  }
  .hero-neural-svg{
    left:-18%;
    width:124%;
    opacity:.78;
  }
  .hero-neural-vignette{
    background:
      linear-gradient(90deg,rgba(2,5,8,.98) 0%,rgba(2,5,8,.88) 50%,rgba(2,5,8,.30) 100%),
      linear-gradient(180deg,rgba(0,0,0,.32),transparent 24%,transparent 74%,rgba(0,0,0,.40));
  }
}
@media(max-width:760px){
  .hero{
    min-height:570px !important;
    height:auto !important;
  }
  .hero-inner{
    width:min(var(--max),calc(100% - 34px));
    padding-top:112px !important;
    padding-bottom:48px !important;
  }
  .hero h1,
  .hero-copy h1,
  .hero-title{
    font-size:clamp(42px,12vw,58px) !important;
  }
  .hero-neural-svg{
    left:-34%;
    width:145%;
    opacity:.64;
  }
  .neural-strand-secondary{opacity:.38}
  .neural-nodes{opacity:.58}
}
@media(prefers-reduced-motion:reduce){
  .neural-strand-main,.neural-strand-secondary{animation:none !important}
  .neural-nodes{display:none}
}

/* Subtle dark material plane behind the neural strands — adds depth without extra rendering loops. */
.hero-neural-field:before{
  content:"";
  position:absolute;
  width:72%;
  height:78%;
  right:-9%;
  bottom:-43%;
  border-radius:50%;
  transform:rotate(-7deg);
  background:
    radial-gradient(ellipse at 46% 0%,rgba(255,255,255,.030) 0%,rgba(255,255,255,.008) 27%,rgba(0,0,0,.18) 55%,rgba(0,0,0,.58) 78%),
    linear-gradient(180deg,rgba(12,14,15,.80),rgba(2,3,4,.18));
  border-top:1px solid rgba(246,196,0,.055);
  box-shadow:0 -24px 90px rgba(0,0,0,.36);
  opacity:.82;
}

/* V90 — Latest event article card: foreground image, no text overlay */
.show-card-v78{
  display:grid;
  grid-template-columns:minmax(0,1fr) 248px;
  grid-template-rows:auto 1fr;
  column-gap:18px;
  padding:0;
  background:
    radial-gradient(circle at 72% 20%,rgba(245,189,0,.055),transparent 34%),
    linear-gradient(135deg,#0b0d10 0%,#080a0c 100%);
}
.show-card-v78 .show-card-image-v78{
  position:relative;
  inset:auto;
  grid-column:2;
  grid-row:1 / 3;
  margin:16px 16px 16px 0;
  opacity:1;
  overflow:hidden;
  border:1px solid rgba(245,189,0,.28);
  border-radius:12px;
  background:#07090b;
  box-shadow:0 18px 45px rgba(0,0,0,.34);
}
.show-card-v78 .show-card-image-v78:after{display:none}
.show-card-v78 .show-card-image-v78 img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  background:#07090b;
}
.show-card-v78 .news-logo{
  position:static;
  grid-column:1;
  grid-row:1;
  margin:24px 0 0 28px;
  z-index:2;
}
.show-card-v78 .news-content{
  position:static;
  grid-column:1;
  grid-row:2;
  align-self:end;
  margin:0 0 25px 28px;
  padding-right:4px;
  z-index:2;
}
.show-card-v78 .news-content h3{
  max-width:390px;
  font-size:clamp(24px,2.15vw,34px);
  line-height:1.04;
}
.show-card-v78 .news-content p{max-width:390px}

@media(max-width:760px){
  .show-card-v78{
    width:84vw !important;
    height:auto !important;
    min-height:520px;
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
    row-gap:0;
  }
  .show-card-v78 .show-card-image-v78{
    grid-column:1;
    grid-row:1;
    height:250px;
    margin:14px 14px 0;
  }
  .show-card-v78 .news-logo{
    grid-column:1;
    grid-row:2;
    margin:18px 22px 0;
  }
  .show-card-v78 .news-content{
    grid-column:1;
    grid-row:3;
    margin:14px 22px 22px;
    padding-right:0;
  }
  .show-card-v78 .news-content h3{font-size:26px;max-width:none}
  .show-card-v78 .news-content p{max-width:none}
}


/* V91 — standard foreground media layout for every Latest from DCC card.
   Article media is visually separate from the copy. Cards without their own
   artwork use the DCC logo panel as a clean fallback. */
.article-card-v92{
  display:grid;
  grid-template-columns:minmax(0,1fr) 248px;
  grid-template-rows:auto 1fr;
  column-gap:18px;
  padding:0;
  background:
    radial-gradient(circle at 72% 20%,rgba(245,189,0,.045),transparent 34%),
    linear-gradient(135deg,#0b0d10 0%,#080a0c 100%);
}
.article-card-v92 .article-card-media-v92{
  position:relative;
  grid-column:2;
  grid-row:1 / 3;
  margin:16px 16px 16px 0;
  overflow:hidden;
  border:1px solid rgba(245,189,0,.25);
  border-radius:12px;
  background:#07090b;
  box-shadow:0 18px 45px rgba(0,0,0,.34);
  min-width:0;
}
.article-card-v92 .article-card-media-v92 img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center;
  background:#07090b;
}
.article-card-v92 .article-card-logo-v92{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f8c116;
  padding:24px;
}
.article-card-v92 .article-card-logo-v92 img{
  width:88%;
  height:auto;
  max-height:88%;
  object-fit:contain;
  background:transparent;
}
.article-card-v92 .news-logo{
  position:static;
  grid-column:1;
  grid-row:1;
  margin:24px 0 0 28px;
  z-index:2;
}
.article-card-v92 .news-content{
  position:static;
  grid-column:1;
  grid-row:2;
  align-self:end;
  margin:0 0 25px 28px;
  padding-right:4px;
  z-index:2;
}
.article-card-v92 .news-content h3{
  max-width:390px;
  font-size:clamp(24px,2.15vw,34px);
  line-height:1.04;
}
.article-card-v92 .news-content p{max-width:390px}

@media(max-width:760px){
  .article-card-v92{
    width:84vw !important;
    height:auto !important;
    min-height:520px;
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
  }
  .article-card-v92 .article-card-media-v92{
    grid-column:1;
    grid-row:1;
    height:250px;
    margin:14px 14px 0;
  }
  .article-card-v92 .article-card-logo-v92{padding:34px}
  .article-card-v92 .news-logo{
    grid-column:1;
    grid-row:2;
    margin:18px 22px 0;
  }
  .article-card-v92 .news-content{
    grid-column:1;
    grid-row:3;
    margin:14px 22px 22px;
    padding-right:0;
  }
  .article-card-v92 .news-content h3{font-size:26px;max-width:none}
  .article-card-v92 .news-content p{max-width:none}
}


/* V92 — User-supplied high-resolution brand artwork */
.brand-wall .brand-logo-card img[src*="acurus.png"]{
  max-width:82%;
  max-height:70px;
}
.brand-wall .brand-logo-card img[src*="mag-theatron.png"]{
  max-width:84%;
  max-height:72px;
}
.brand-wall .brand-logo-card img[src*="screen-excellence.png"]{
  max-width:90%;
  max-height:66px;
}

/* V93 — refined article fallback card + updated Acurus / BAS-IP brand artwork */
.article-card-v92 .article-card-media-v92.article-card-logo-v92{
  width:190px;
  height:190px;
  align-self:center;
  justify-self:center;
  margin:0 16px 0 0;
  border-color:rgba(245,189,0,.18);
  background:rgba(248,193,22,.60);
  box-shadow:0 14px 34px rgba(0,0,0,.28);
}
.article-card-v92 .article-card-media-v92.article-card-logo-v92 img{
  width:78%;
  max-height:78%;
}
.brand-wall .brand-logo-card img[src*="acurus.png"]{
  max-width:88%;
  max-height:68px;
}
.brand-wall .brand-logo-card img[src*="bas-ip.png"]{
  max-width:88%;
  max-height:66px;
}
@media(max-width:760px){
  .article-card-v92 .article-card-media-v92.article-card-logo-v92{
    width:180px;
    height:180px;
    margin:18px auto 0;
    justify-self:center;
  }
}

/* V94 — user-supplied Epson, Sony and Juke Audio brand artwork */
.brand-wall .brand-logo-card img[src*="epson.png"]{
  max-width:86%;
  max-height:68px;
}
.brand-wall .brand-logo-card img[src*="sony.png"]{
  max-width:78%;
  max-height:66px;
}
.brand-wall .brand-logo-card img[src*="juke-audio.png"]{
  max-width:76%;
  max-height:84px;
}

/* V95 — Homepage typography scale refinement
   Bring the oversized homepage display headings down to the same restrained
   premium scale as “Ready to build better systems?” without affecting
   article, product, About or dealer-page typography. */
body.home-page .hero h1,
body.home-page .hero-copy h1,
body.home-page .hero-title{
  font-size:clamp(40px,3.55vw,54px) !important;
  line-height:1.00 !important;
  letter-spacing:-.038em !important;
  max-width:700px !important;
  margin:16px 0 24px !important;
}

body.home-page #brands .section-head h2,
body.home-page #solutions .section-head h2,
body.home-page .steps .section-head h2,
body.home-page .portal-copy h2,
body.home-page .markets h2{
  font-size:clamp(34px,3vw,46px) !important;
  line-height:1.04 !important;
  letter-spacing:-.035em !important;
}

body.home-page #brands .section-head h2,
body.home-page #solutions .section-head h2,
body.home-page .steps .section-head h2{
  max-width:720px !important;
}

body.home-page .portal-copy h2{
  max-width:540px !important;
  margin:10px 0 20px !important;
}

body.home-page .markets h2{
  max-width:560px !important;
  margin:10px 0 16px !important;
}

/* Keep the CTA as the visual reference size requested by the client. */
body.home-page .cta-box h2{
  font-size:46px !important;
  line-height:1.04 !important;
}

@media(max-width:760px){
  body.home-page .hero h1,
  body.home-page .hero-copy h1,
  body.home-page .hero-title{
    font-size:clamp(38px,10vw,48px) !important;
  }

  body.home-page #brands .section-head h2,
  body.home-page #solutions .section-head h2,
  body.home-page .steps .section-head h2,
  body.home-page .portal-copy h2,
  body.home-page .markets h2,
  body.home-page .cta-box h2{
    font-size:clamp(31px,8.8vw,40px) !important;
  }
}

/* V96 — tighter DCC article fallback, updated Sony/Juke logos, aligned solution copy */
.article-card-v92 .article-card-media-v92.article-card-logo-v92{
  width:182px;
  height:102px;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(248,193,22,.60);
  align-self:center;
  justify-self:center;
}
.article-card-v92 .article-card-media-v92.article-card-logo-v92 img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

/* Keep all four “What we deliver” text stacks on the same horizontal rhythm. */
.solution h3{
  min-height:68px;
  margin:0 0 12px;
  display:block;
}
.solution p{
  min-height:62px;
  margin:0;
}
.solution .link{
  margin-top:16px;
}

/* Latest supplied artwork — keep proportional and visually balanced. */
.brand-wall .brand-logo-card img[src*="sony.png"]{
  max-width:84%;
  max-height:62px;
}
.brand-wall .brand-logo-card img[src*="juke-audio.png"]{
  max-width:82%;
  max-height:78px;
}

@media(max-width:760px){
  .article-card-v92 .article-card-media-v92.article-card-logo-v92{
    width:170px;
    height:96px;
    margin:18px auto 0;
    padding:8px 10px;
  }
  .solution h3,
  .solution p{
    min-height:0;
  }
}

/* V97 — refined homepage section labels */
body.home-page .eyebrow{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  width:max-content;
  max-width:100%;
  gap:8px;
  margin-bottom:1px;
  color:rgba(245,189,0,.88);
  font-size:10.5px;
  font-weight:500;
  line-height:1;
  letter-spacing:.155em;
  text-transform:uppercase;
  text-shadow:none;
}
body.home-page .eyebrow::after{
  content:"";
  display:block;
  width:34px;
  height:1px;
  background:linear-gradient(90deg,rgba(245,189,0,.95),rgba(245,189,0,.18),transparent);
  box-shadow:0 0 8px rgba(245,189,0,.16);
  transform-origin:left center;
}
body.home-page .hero .eyebrow{
  color:rgba(245,189,0,.9);
  font-weight:500;
  letter-spacing:.145em;
}
body.home-page .hero .eyebrow::after{
  width:42px;
}
@media(max-width:760px){
  body.home-page .eyebrow{
    font-size:10px;
    gap:7px;
    letter-spacing:.14em;
  }
  body.home-page .eyebrow::after{width:30px}
  body.home-page .hero .eyebrow::after{width:36px}
}

/* V98 — refined section labels across About, Demo and all internal pages */
body:not(.home-page) .eyebrow{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  width:max-content;
  max-width:100%;
  gap:8px;
  margin-bottom:1px;
  color:rgba(245,189,0,.88);
  font-size:10.5px;
  font-weight:500;
  line-height:1;
  letter-spacing:.155em;
  text-transform:uppercase;
  text-shadow:none;
}
body:not(.home-page) .eyebrow::after{
  content:"";
  display:block;
  width:34px;
  height:1px;
  background:linear-gradient(90deg,rgba(245,189,0,.95),rgba(245,189,0,.18),transparent);
  box-shadow:0 0 8px rgba(245,189,0,.16);
  transform-origin:left center;
}
/* Slightly wider rule for major page-intro labels */
.about-hero-v58 .eyebrow::after,
.demo-hero .eyebrow::after,
.subhero .eyebrow::after,
.login-brand .eyebrow::after{
  width:42px;
}
@media(max-width:760px){
  body:not(.home-page) .eyebrow{
    font-size:10px;
    gap:7px;
    letter-spacing:.14em;
  }
  body:not(.home-page) .eyebrow::after{width:30px}
  .about-hero-v58 .eyebrow::after,
  .demo-hero .eyebrow::after,
  .subhero .eyebrow::after,
  .login-brand .eyebrow::after{width:36px}
}

/* V99 — align About DCC and Book Demo hero typography with homepage hero */
.about-dcc-page .about-hero-v58 h1,
.about-dcc-page .about-hero-v66 .about-hero-copy-v66 h1,
.demo-page .demo-hero h1,
.demo-page .demo-hero-copy h1{
  font-size:clamp(40px,3.55vw,54px) !important;
  line-height:1.00 !important;
  letter-spacing:-.038em !important;
  max-width:700px !important;
  margin:16px 0 24px !important;
}

@media(max-width:760px){
  .about-dcc-page .about-hero-v58 h1,
  .about-dcc-page .about-hero-v66 .about-hero-copy-v66 h1,
  .demo-page .demo-hero h1,
  .demo-page .demo-hero-copy h1{
    font-size:clamp(38px,10vw,48px) !important;
    line-height:1.00 !important;
  }
}

/* V100 — responsive mobile navigation */
.mobile-menu-toggle{
  display:none;
  width:44px;
  height:44px;
  flex:0 0 44px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  padding:0;
  border:1px solid rgba(245,189,0,.34);
  border-radius:12px;
  background:rgba(12,12,12,.72);
  color:#fff;
  cursor:pointer;
  box-shadow:inset 0 0 18px rgba(245,189,0,.035);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
  -webkit-tap-highlight-color:transparent;
}
.mobile-menu-toggle:hover{border-color:rgba(245,189,0,.7);background:rgba(20,20,20,.92)}
.mobile-menu-toggle span{
  display:block;
  width:19px;
  height:1.5px;
  border-radius:999px;
  background:#f3f1e9;
  transform-origin:center;
  transition:transform .28s ease,opacity .2s ease,width .25s ease,background .25s ease;
}
.header.mobile-nav-open .mobile-menu-toggle{border-color:rgba(245,189,0,.72);background:rgba(28,24,12,.95)}
.header.mobile-nav-open .mobile-menu-toggle span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.header.mobile-nav-open .mobile-menu-toggle span:nth-child(2){opacity:0;width:10px}
.header.mobile-nav-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

.mobile-nav-panel{
  position:absolute;
  top:100%;
  left:0;
  right:0;
  z-index:49;
  max-height:0;
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-8px);
  border-top:1px solid transparent;
  border-bottom:1px solid transparent;
  background:rgba(7,7,7,.975);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  transition:max-height .42s cubic-bezier(.22,.61,.36,1),opacity .25s ease,transform .32s ease,visibility .32s ease,border-color .25s ease;
}
.header.mobile-nav-open .mobile-nav-panel{
  max-height:calc(100dvh - 84px);
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:none;
  border-color:rgba(255,255,255,.08);
  overflow:auto;
}
.mobile-nav-inner{
  width:min(var(--max),calc(100% - 34px));
  margin:0 auto;
  padding:11px 0 22px;
}
.mobile-nav-links{display:grid}
.mobile-nav-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:49px;
  padding:0 4px;
  border-bottom:1px solid rgba(255,255,255,.07);
  color:#d9d9d6;
  font-size:14px;
  font-weight:500;
  letter-spacing:.01em;
  transition:color .2s ease,padding-left .2s ease;
}
.mobile-nav-link:after{
  content:'→';
  color:rgba(245,189,0,.58);
  font-size:12px;
  transform:translateX(-2px);
}
.mobile-nav-link:hover,.mobile-nav-link.active{color:#fff;padding-left:8px}
.mobile-nav-link.demo-nav{
  margin:12px 0 3px;
  min-height:50px;
  padding:0 15px;
  border:1px solid rgba(245,189,0,.52);
  border-radius:13px;
  color:#fff;
  background:linear-gradient(90deg,rgba(245,189,0,.07),rgba(245,189,0,.015));
}
.mobile-nav-link.demo-nav:after{content:'→';color:#f5bd00}
.mobile-nav-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  padding-top:11px;
}
.mobile-nav-actions .btn{min-height:46px;width:100%;padding:10px 12px}
body.mobile-nav-lock{overflow:hidden}

@media(max-width:1100px){
  .header-in{gap:16px}
  .mobile-menu-toggle{display:flex;margin-left:8px}
  .header-actions{margin-left:auto}
}
@media(max-width:760px){
  .header-actions{display:none}
  .mobile-menu-toggle{margin-left:auto}
  .header{background:rgba(5,5,5,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .mobile-nav-panel{max-height:calc(100dvh - 72px)}
  .mobile-nav-inner{padding-top:8px}
  .mobile-nav-link{font-size:15px;min-height:51px}
}
@media(max-width:390px){
  .header .dcc-logo-img{width:94px}
  .mobile-menu-toggle{width:42px;height:42px;flex-basis:42px}
  .mobile-nav-actions{grid-template-columns:1fr}
}

/* V101 — premium frosted-glass mobile header inspired by the Galtech reference */
@media (max-width:760px){
  .header{
    background:linear-gradient(180deg,rgba(8,8,8,.58) 0%,rgba(8,8,8,.34) 100%) !important;
    -webkit-backdrop-filter:blur(24px) saturate(145%) !important;
    backdrop-filter:blur(24px) saturate(145%) !important;
    border-bottom:1px solid rgba(255,255,255,.07);
    box-shadow:0 12px 36px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025);
  }
  .header.scrolled{
    background:linear-gradient(180deg,rgba(8,8,8,.70) 0%,rgba(8,8,8,.48) 100%) !important;
    border-bottom-color:rgba(255,255,255,.08);
    box-shadow:0 14px 40px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.03);
  }
  .header.mobile-nav-open{
    background:linear-gradient(180deg,rgba(8,8,8,.78),rgba(8,8,8,.60)) !important;
    -webkit-backdrop-filter:blur(28px) saturate(150%) !important;
    backdrop-filter:blur(28px) saturate(150%) !important;
  }
  .header-in{
    height:68px;
  }
  .header .dcc-logo-img{
    width:98px;
  }
  .mobile-menu-toggle{
    width:42px;
    height:42px;
    flex-basis:42px;
    border-color:rgba(245,189,0,.28);
    background:rgba(255,255,255,.025);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.015),0 7px 20px rgba(0,0,0,.12);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
  }
  .mobile-menu-toggle:hover{
    background:rgba(255,255,255,.05);
  }
  .mobile-nav-panel{
    background:linear-gradient(180deg,rgba(8,8,8,.82),rgba(8,8,8,.72));
    -webkit-backdrop-filter:blur(28px) saturate(145%);
    backdrop-filter:blur(28px) saturate(145%);
    border-bottom-color:rgba(255,255,255,.08);
    box-shadow:0 24px 50px rgba(0,0,0,.32);
  }
}


/* V109 — iPhone status-bar shield moved into the actual unsafe area.
   iOS/WhatsApp can position the CSS layout viewport below the hardware status
   bar while still visually showing page content behind the time / Wi-Fi / battery.
   Move only the status-bar part of the fixed header upward, while keeping the
   DCC logo/menu row at the highest usable layout position. Android is untouched. */
@supports (-webkit-touch-callout:none){
  @media (max-width:760px){
    :root{
      /* iPhone 15 Pro Max uses ~59px; env() wins on devices that report more. */
      --dcc-status-top:max(env(safe-area-inset-top, 0px),59px);
      --dcc-mobile-bar:64px;
    }

    html,body{background:#000 !important;}

    .header{
      /* Critical change: push the status-bar shield UP into the iPhone unsafe area.
         Padding then returns the useful DCC header row to y=0 of the page viewport. */
      top:calc(-1 * var(--dcc-status-top)) !important;
      padding-top:var(--dcc-status-top) !important;
      box-sizing:border-box;
      overflow:visible;
      background:linear-gradient(180deg,rgba(8,8,8,.60) 0%,rgba(8,8,8,.36) 100%) !important;
    }

    /* This black layer now sits physically behind the iPhone status icons. */
    .header::before{
      content:"";
      position:absolute;
      top:0;
      left:0;
      right:0;
      height:var(--dcc-status-top);
      background:#000;
      z-index:0;
      pointer-events:none;
    }

    /* DCC logo + hamburger stay at the maximum usable top position. */
    .header-in{
      position:relative;
      z-index:1;
      height:var(--dcc-mobile-bar) !important;
    }

    .header .dcc-logo-img{width:96px !important;}
    .mobile-menu-toggle{width:40px !important;height:40px !important;flex-basis:40px !important;}

    /* Panel opens immediately below the visible 64px DCC header row. */
    .mobile-nav-panel{
      max-height:calc(100dvh - var(--dcc-mobile-bar)) !important;
    }
    .header.mobile-nav-open .mobile-nav-panel{
      max-height:calc(100dvh - var(--dcc-mobile-bar)) !important;
    }
  }
}

/* V110 — opaque mobile navigation when opened.
   Keep the normal V101/V109 frosted header while browsing, but once the
   hamburger menu is opened the navigation becomes fully solid so page copy,
   forms and images underneath can never reduce menu readability. */
@media (max-width:760px){
  .header.mobile-nav-open{
    background:#070707 !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    box-shadow:0 14px 34px rgba(0,0,0,.34) !important;
  }

  .header.mobile-nav-open .mobile-nav-panel{
    background:#070707 !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    box-shadow:0 24px 50px rgba(0,0,0,.46) !important;
    opacity:1 !important;
  }

  .header.mobile-nav-open .mobile-nav-inner{
    background:#070707;
  }

  .header.mobile-nav-open .mobile-nav-link{
    color:#f0f0ed;
  }

  .header.mobile-nav-open .mobile-nav-link:not(.demo-nav){
    background:#070707;
  }

  .header.mobile-nav-open .mobile-menu-toggle{
    background:#101010 !important;
  }
}

/* V111 — premium polished background system
   Removes the old global fractal-noise overlay and heavy section glows that could
   show banding / blocky distortion on some displays. The site now uses a clean,
   neutral graphite palette with very small tonal steps and fine separators. */
html{
  background:#060708;
  color-scheme:dark;
}
body{
  background:#08090a !important;
  background-image:none !important;
  text-rendering:optimizeLegibility;
}
/* Retire the fixed noise texture entirely. */
body::before{
  content:none !important;
  display:none !important;
  background:none !important;
}

/* Smooth, consistent page canvases — no large radial blobs or visible gradient seams. */
.updates{
  background:#08090a !important;
  background-image:none !important;
  border-top:1px solid rgba(255,255,255,.045) !important;
  border-bottom:1px solid rgba(255,255,255,.025);
}
.brands,
.portal-section,
.steps,
.certifications{
  background:#0a0b0c !important;
  background-image:none !important;
}
.solutions,
.markets,
.counts,
.cta-section{
  background:#08090a !important;
  background-image:none !important;
}
.portal-section::before{
  content:none !important;
  display:none !important;
}

/* Give sections a subtle architectural separation instead of texture. */
.brands,
.solutions,
.portal-section,
.markets,
.steps,
.certifications,
.counts,
.cta-section{
  border-top-color:rgba(255,255,255,.045) !important;
  border-bottom-color:rgba(255,255,255,.025) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.012);
}

/* Internal-page hero canvases: premium matte graphite, no blue/grey glow patches. */
.subhero,
.about-hero-v58,
.about-hero-v66,
.demo-hero{
  background:#0a0b0c !important;
  background-image:none !important;
}
.about-dcc-page,
.demo-page,
.product-detail-page,
.demo-booking,
.article-page-v77,
.article-show-v78{
  background:#08090a !important;
  background-image:none !important;
}
.about-cta-v58,
.about-cta-v66{
  background:#0a0b0c !important;
  background-image:none !important;
}

/* Keep the footer slightly deeper so the page has a deliberate finish. */
.footer{
  background:#060708 !important;
  background-image:none !important;
  border-top-color:rgba(255,255,255,.055) !important;
}
.marquee{
  background:#070809 !important;
  background-image:none !important;
  border-top-color:rgba(255,255,255,.045) !important;
  border-bottom-color:rgba(255,255,255,.045) !important;
}

/* Refine the larger neutral card surfaces without changing their layout. */
.solution,
.dashboard,
.product-card,
.step,
.market,
.cert-card,
.detail-panel,
.booking-form{
  background:#111214 !important;
  background-image:none !important;
  border-color:rgba(255,255,255,.095) !important;
  box-shadow:0 16px 42px rgba(0,0,0,.14);
}
.solution::before{
  background:radial-gradient(circle at 62% 18%,rgba(245,189,0,.045),transparent 34%) !important;
  opacity:.55 !important;
}

/* Keep the lightweight neural hero untouched; only soften the transition beneath it. */
.home-page .hero + .updates{
  box-shadow:inset 0 1px 0 rgba(245,189,0,.08);
}

/* Mobile: keep the status/overscroll canvas black for iOS, while the actual page
   remains the polished graphite tone. Android keeps the normal graphite canvas. */
@supports (-webkit-touch-callout:none){
  @media(max-width:760px){
    html{background:#000 !important;}
    body{background:#08090a !important;background-image:none !important;}
  }
}


/* V112 — WhatsApp joins footer social row: Instagram · LinkedIn · WhatsApp */
.social-whatsapp .social-icon{background:#25D366;box-shadow:0 0 16px rgba(37,211,102,.16)}
.social-whatsapp .social-icon svg{fill:none;stroke:#fff;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.social-whatsapp .social-icon svg path:first-child{fill:none}
.social-whatsapp .social-icon svg path:last-child{fill:#fff;stroke:none}
.social-whatsapp:hover{border-color:#25D366;background:rgba(37,211,102,.08);box-shadow:0 8px 24px rgba(37,211,102,.10)}

/* V114 — contact icons, copyright/legal bar and premium cookie consent */
.footer-contact{display:flex;flex-direction:column;gap:10px}
.footer-contact h4{margin-bottom:4px}
.contact-row{display:flex;align-items:flex-start;gap:10px;color:var(--muted);text-decoration:none;line-height:1.45;transition:color .22s ease}
.contact-row:hover{color:#f1f1ee}
.contact-icon{width:18px;height:18px;flex:0 0 18px;margin-top:1px;display:grid;place-items:center;color:rgba(245,189,0,.9)}
.contact-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}

.footer-legal{margin-top:34px;padding:18px 0 2px;border-top:1px solid rgba(255,255,255,.065);display:flex;align-items:center;justify-content:space-between;gap:24px;color:rgba(255,255,255,.44);font-size:12px;letter-spacing:.01em}
.footer-legal p{margin:0;color:inherit}
.footer-legal-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.footer-legal-links a,.cookie-settings-link{font:inherit;color:rgba(255,255,255,.48);background:none;border:0;padding:0;cursor:pointer;text-decoration:none;transition:color .2s ease}
.footer-legal-links a:hover,.cookie-settings-link:hover{color:var(--yellow)}
.standalone-legal{background:#060708;border-top:1px solid rgba(255,255,255,.055);padding:0 24px 18px}
.standalone-legal .footer-legal{margin-top:0}

/* Privacy & Cookies page */
.legal-page{background:#08090a;min-height:70vh}
.legal-hero{padding:150px 0 64px;border-bottom:1px solid rgba(255,255,255,.05);background:#0a0b0c}
.legal-hero h1{margin:12px 0 14px;max-width:780px;font-size:clamp(40px,5.2vw,68px);line-height:.98;letter-spacing:-.045em}
.legal-hero p{max-width:720px;color:var(--muted);font-size:17px;line-height:1.7}
.legal-content{padding:70px 0 92px}
.legal-content-grid{display:grid;grid-template-columns:minmax(0,820px) 1fr;gap:70px}
.legal-copy h2{margin:42px 0 12px;font-size:28px;letter-spacing:-.025em}
.legal-copy h2:first-child{margin-top:0}
.legal-copy h3{margin:28px 0 8px;font-size:18px}
.legal-copy p{max-width:780px;color:var(--muted);line-height:1.75}
.legal-copy a{color:var(--yellow);text-decoration:none}
.legal-note{margin-top:42px;padding:16px 18px;border:1px solid rgba(245,189,0,.16);border-left:2px solid rgba(245,189,0,.65);border-radius:10px;background:rgba(245,189,0,.035);font-size:13px}

/* Cookie banner */
.cookie-consent{position:fixed;left:50%;bottom:22px;transform:translate(-50%,18px);width:min(calc(100% - 40px),1180px);z-index:6000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s ease,transform .28s ease,visibility .28s ease}
.cookie-consent.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.cookie-consent-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:20px 22px 20px 24px;border:1px solid rgba(255,255,255,.105);border-radius:16px;background:rgba(8,9,10,.96);box-shadow:0 22px 70px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.025);-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%)}
.cookie-copy{min-width:0}
.cookie-kicker{display:block;margin-bottom:5px;color:var(--yellow);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.cookie-copy strong{display:block;margin-bottom:5px;color:#f4f4f1;font-size:17px;letter-spacing:-.01em}
.cookie-copy p{margin:0;max-width:760px;color:rgba(255,255,255,.62);font-size:13px;line-height:1.55}
.cookie-copy a{color:#d9d9d4;text-underline-offset:3px}
.cookie-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.cookie-btn{appearance:none;border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:10px 15px;background:#111316;color:#f4f4f1;font:600 12px/1.1 inherit;cursor:pointer;white-space:nowrap;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}
.cookie-btn:hover{transform:translateY(-1px);border-color:rgba(245,189,0,.4)}
.cookie-btn.primary{background:var(--yellow);border-color:var(--yellow);color:#080808}
.cookie-btn.ghost{background:transparent;color:#d8d8d3}
.cookie-btn.text{border-color:transparent;background:transparent;color:#aaa;padding-inline:7px}
.cookie-btn.text:hover{color:var(--yellow);transform:none}

/* Preferences dialog */
.cookie-modal{position:fixed;inset:0;z-index:6100;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.cookie-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.cookie-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.cookie-modal-panel{position:relative;width:min(100%,620px);max-height:min(86vh,760px);overflow:auto;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#0b0c0e;box-shadow:0 34px 90px rgba(0,0,0,.58)}
.cookie-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 24px 17px;border-bottom:1px solid rgba(255,255,255,.07)}
.cookie-modal-head .cookie-kicker{margin-bottom:7px}
.cookie-modal-head h2{margin:0;font-size:26px;letter-spacing:-.03em}
.cookie-close{width:38px;height:38px;border:1px solid rgba(255,255,255,.1);border-radius:50%;background:#111315;color:#fff;font-size:22px;line-height:1;cursor:pointer}
.cookie-modal-body{padding:18px 24px 6px}
.cookie-intro{margin:0 0 16px;color:rgba(255,255,255,.58);font-size:13px;line-height:1.65}
.cookie-category{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:17px 0;border-top:1px solid rgba(255,255,255,.06)}
.cookie-category:first-of-type{border-top:0}
.cookie-category strong{display:block;margin-bottom:5px;font-size:14px}
.cookie-category p{margin:0;color:rgba(255,255,255,.52);font-size:12px;line-height:1.55}
.cookie-switch{position:relative;width:46px;height:26px;align-self:center}
.cookie-switch input{position:absolute;opacity:0;pointer-events:none}
.cookie-switch-ui{position:absolute;inset:0;border-radius:999px;background:#24272a;border:1px solid rgba(255,255,255,.1);transition:.22s ease}
.cookie-switch-ui::after{content:"";position:absolute;width:20px;height:20px;left:2px;top:2px;border-radius:50%;background:#d8d8d3;transition:.22s ease}
.cookie-switch input:checked + .cookie-switch-ui{background:rgba(245,189,0,.9);border-color:rgba(245,189,0,.9)}
.cookie-switch input:checked + .cookie-switch-ui::after{transform:translateX(20px);background:#090909}
.cookie-switch input:disabled + .cookie-switch-ui{opacity:.72}
.cookie-modal-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;padding:18px 24px 24px;border-top:1px solid rgba(255,255,255,.07)}
body.cookie-modal-lock{overflow:hidden}

@media(max-width:760px){
  .footer-contact{gap:11px}
  .contact-row{font-size:13px}
  .footer-legal{margin-top:26px;padding-top:16px;flex-direction:column;align-items:flex-start;gap:10px;font-size:11px}
  .footer-legal-links{gap:14px}
  .standalone-legal{padding-inline:17px}
  .standalone-legal .footer-legal{align-items:center;text-align:center}
  .standalone-legal .footer-legal-links{justify-content:center}
  .legal-hero{padding:112px 0 48px}
  .legal-hero h1{font-size:clamp(38px,12vw,52px)}
  .legal-content{padding:48px 0 72px}
  .legal-content-grid{display:block}
  .cookie-consent{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;transform:translateY(14px)}
  .cookie-consent.is-visible{transform:none}
  .cookie-consent-card{display:block;padding:17px;border-radius:14px;background:#090a0b;-webkit-backdrop-filter:none;backdrop-filter:none}
  .cookie-copy strong{font-size:16px}
  .cookie-copy p{font-size:12px}
  .cookie-actions{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .cookie-btn{min-height:42px;padding:10px 12px}
  .cookie-btn.text{grid-column:1/-1;min-height:auto;padding:7px}
  .cookie-modal{padding:12px;padding-top:max(12px,env(safe-area-inset-top))}
  .cookie-modal-panel{max-height:calc(100dvh - 24px - env(safe-area-inset-top));border-radius:15px}
  .cookie-modal-head{padding:20px 18px 15px}
  .cookie-modal-body{padding:14px 18px 4px}
  .cookie-modal-actions{padding:15px 18px 19px;display:grid;grid-template-columns:1fr 1fr}
}


/* V115 — cleaner legal footer + perfectly aligned contact details */
.footer-contact .contact-row{
  display:grid !important;
  grid-template-columns:18px minmax(0,1fr);
  align-items:center;
  column-gap:10px;
  min-height:22px;
  margin:0 !important;
  padding:0 !important;
  line-height:1.35 !important;
}
.footer-contact .contact-row .contact-icon{
  width:18px;
  height:18px;
  margin:0;
  align-self:center;
  justify-self:center;
}
.footer-contact .contact-row > span:last-child{
  display:block;
  margin:0;
  line-height:1.35;
  align-self:center;
}
.footer-contact{gap:11px}
.footer-legal-links{gap:0}
.footer-legal-links:empty{display:none}

@media(max-width:760px){
  .footer-contact .contact-row{
    grid-template-columns:17px minmax(0,1fr);
    column-gap:9px;
    min-height:21px;
  }
  .footer-contact .contact-row .contact-icon{width:17px;height:17px}
}

/* V116 — footer contact typography consistency */
.footer-contact .contact-row{
  font-size:12px !important;
}
.footer-contact .contact-row > span:last-child{
  font-size:inherit !important;
}
@media(max-width:760px){
  .footer-contact .contact-row{
    font-size:12px !important;
  }
}

/* V117 — brighter premium graphite palette
   Raises the overall site luminance by a controlled amount while preserving
   the dark cinema identity, black iPhone status-bar treatment and neural hero. */
html{
  background:#090a0b;
}
body{
  background:#151719 !important;
  background-image:none !important;
}

/* Main content canvases */
.updates,
.solutions,
.markets,
.counts,
.cta-section,
.legal-page,
.demo-page,
.product-detail-page,
.demo-booking,
.article-page-v77,
.article-show-v78{
  background:#151719 !important;
  background-image:none !important;
}

/* Alternating sections create gentle depth without obvious stripes. */
.brands,
.portal-section,
.steps,
.certifications,
.subhero,
.about-hero-v58,
.about-hero-v66,
.demo-hero,
.about-cta-v58,
.about-cta-v66,
.legal-hero{
  background:#1a1c1e !important;
  background-image:none !important;
}

/* Refined elevated surfaces */
.solution,
.dashboard,
.product-card,
.step,
.market,
.cert-card,
.detail-panel,
.booking-form,
.demo-highlight,
.experience-badge,
.cookie-modal-panel{
  background:#202225 !important;
  background-image:none !important;
  border-color:rgba(255,255,255,.105) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.16);
}

/* Keep secondary details one step darker than cards. */
.detail-support,
.metric,
.cookie-btn{
  background-color:#191b1d;
}

/* Keep marquee/header/footer deliberately deeper for visual framing. */
.marquee{
  background:#101214 !important;
  border-color:rgba(255,255,255,.055) !important;
}
.footer,
.standalone-legal{
  background:#0b0c0e !important;
  background-image:none !important;
}

/* Softer separators on the brighter graphite canvas. */
.brands,
.solutions,
.portal-section,
.markets,
.steps,
.certifications,
.counts,
.cta-section,
.updates{
  border-top-color:rgba(255,255,255,.055) !important;
  border-bottom-color:rgba(0,0,0,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
}

/* Product/detail backgrounds that used to remain near-black. */
.product-visual,
.product-placeholder-detail,
.product-device,
.booking-form textarea,
.field input,
.field select,
.field textarea,
.search{
  background-color:#1b1d20 !important;
}

/* Preserve the hero/neural engine's cinematic black canvas. */
.home-page .hero,
.home-page .hero-bg,
.neural-hero,
.neural-stage,
.neural-canvas{
  /* intentionally not brightened */
}

/* Mobile/iOS: page becomes brighter, but html and the existing fixed status
   shield remain black so nothing shows behind iPhone time/Wi-Fi/battery. */
@supports (-webkit-touch-callout:none){
  @media(max-width:760px){
    html{background:#000 !important;}
    body{background:#151719 !important;background-image:none !important;}
  }
}

/* V118 — unified premium brand wall + live form feedback */
.home-page .brands{
  background:#1a1c1e !important;
  background-image:none !important;
}
.home-page .brand-wall{
  border-color:rgba(255,255,255,.075) !important;
  background:#141618 !important;
}
.home-page .brand-wall .brand-logo-card,
.home-page .brand-wall .brand-logo-card.brand-dark{
  background:#151719 !important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.012),rgba(255,255,255,0)) !important;
  border-color:rgba(255,255,255,.075) !important;
}
.home-page .brand-wall .brand-logo-card:hover,
.home-page .brand-wall .brand-logo-card.brand-dark:hover{
  background:#1b1e21 !important;
  border-color:rgba(245,189,0,.24) !important;
}
.form-status{
  display:none;
  margin-top:14px;
  padding:11px 13px;
  border-radius:10px;
  font-size:11px;
  line-height:1.5;
  border:1px solid transparent;
}
.form-status.success{
  display:block;
  color:#dcefe4;
  background:rgba(55,125,82,.13);
  border-color:rgba(93,188,125,.24);
}
.form-status.error{
  display:block;
  color:#f1d8d8;
  background:rgba(148,58,58,.14);
  border-color:rgba(205,93,93,.25);
}
#dealer-submit:disabled,
.booking-form button[type="submit"]:disabled{opacity:.7;cursor:wait;transform:none}
.booking-success.error{color:#f1d8d8;border-color:rgba(205,93,93,.25);background:rgba(148,58,58,.14)}


/* V119 — Netlify Forms + dealer-page legal alignment */
.netlify-honeypot{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  margin:-1px !important;
  padding:0 !important;
  border:0 !important;
}

/* Keep dealer legal copy visually anchored under the left-side pricing/quotes/orders area. */
.dealer-page .standalone-legal{
  padding:0;
}
.dealer-page .standalone-legal .footer-legal{
  width:50%;
  max-width:none;
  margin:0;
  padding:18px 55px 20px;
  box-sizing:border-box;
  justify-content:flex-start;
  align-items:center;
  gap:20px;
  text-align:left;
}
.dealer-page .standalone-legal .footer-legal-links{
  margin-left:auto;
}

@media(max-width:760px){
  .dealer-page .standalone-legal{
    padding:0;
  }
  .dealer-page .standalone-legal .footer-legal{
    width:100%;
    padding:17px 35px calc(18px + env(safe-area-inset-bottom));
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:8px;
    text-align:left;
  }
  .dealer-page .standalone-legal .footer-legal-links{
    margin-left:0;
    justify-content:flex-start;
  }
}


/* V120 — About demo CTA uses the same controlled neon flicker as the main-page demo CTA */
.about-premium-demo-v62{
  animation:boxFlickerV51 5.2s steps(1,end) infinite;
}
.about-demo-arrow-v61{
  animation:arrowFlickerV51 2.4s steps(1,end) infinite;
}
@media (prefers-reduced-motion:reduce){
  .about-premium-demo-v62,
  .about-demo-arrow-v61{animation:none!important}
}


/* V123 — lightweight on-page CAPTCHA verification for Dealer + Demo forms */
.captcha-field{
  margin-top:0;
}
.captcha-row{
  display:grid;
  grid-template-columns:minmax(120px,1fr) 42px minmax(110px,.7fr);
  gap:8px;
  align-items:stretch;
}
.captcha-challenge{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  background:linear-gradient(180deg,#202225,#1b1d20);
  color:#f5f5f1;
  font-size:15px;
  font-weight:600;
  letter-spacing:.04em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.captcha-refresh{
  min-height:48px;
  border:1px solid rgba(245,189,0,.24);
  border-radius:10px;
  background:#17191b;
  color:var(--yellow);
  font-size:20px;
  line-height:1;
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.captcha-refresh:hover{
  border-color:rgba(245,189,0,.55);
  background:#1c1e20;
  transform:translateY(-1px);
}
.captcha-row input{
  min-width:0;
  height:48px;
  margin:0 !important;
}
.captcha-help{
  margin-top:7px;
  color:rgba(255,255,255,.42);
  font-size:10px;
  line-height:1.45;
}
@media(max-width:760px){
  .captcha-row{
    grid-template-columns:minmax(0,1fr) 42px 92px;
    gap:7px;
  }
  .captcha-challenge{font-size:14px}
  .captcha-help{font-size:10px}
}
@media(max-width:430px){
  .captcha-row{
    grid-template-columns:minmax(0,1fr) 42px;
  }
  .captcha-row input{
    grid-column:1/-1;
  }
}


/* WordPress build-preview fixes — v1.1.0
   Keep the DCC site header visible while logged into WordPress/GoDaddy.
   GoDaddy's Coming Soon strip is inserted above the theme; using sticky positioning
   for authenticated previews lets that strip stay in normal flow instead of covering
   our fixed navigation. Public visitors keep the normal fixed DCC header. */
body.admin-bar .header{
  position:sticky !important;
  top:var(--wp-admin--admin-bar--height,32px) !important;
  z-index:99990 !important;
}
@media screen and (max-width:782px){
  body.admin-bar .header{top:46px !important;}
}

/* Premium uniform Portfolio wall.
   Use one continuous graphite canvas so no brand tile looks accidentally lighter
   or blacker than the next. Fine borders preserve structure without checkerboarding. */
.home-page .brands{
  background:#1a1c1e !important;
  background-image:none !important;
}
.home-page .brand-wall{
  background:#1a1c1e !important;
  border-color:rgba(255,255,255,.075) !important;
}
.home-page .brand-wall .brand,
.home-page .brand-wall .brand-logo-card,
.home-page .brand-wall .brand-logo-card.brand-dark{
  background:#1a1c1e !important;
  background-image:none !important;
  border-color:rgba(255,255,255,.075) !important;
  box-shadow:none !important;
}
.home-page .brand-wall .brand:hover,
.home-page .brand-wall .brand-logo-card:hover,
.home-page .brand-wall .brand-logo-card.brand-dark:hover{
  background:#202326 !important;
  border-color:rgba(245,189,0,.24) !important;
}

/* Main premium graphite background reference supplied for the WordPress build. */
.home-page .updates,
.home-page .solutions,
.home-page .portal-section,
.home-page .markets,
.home-page .counts,
.home-page .cta-section{
  background:#1a1c1e !important;
  background-image:none !important;
}


/* WordPress v3 — definitive uniform Portfolio card treatment.
   Legacy brand-dark classes were removed from the homepage markup as well.
   Keep every brand tile on one continuous premium graphite canvas. */
#brands .brand-wall,
#brands .brand-wall .brand,
#brands .brand-wall .brand-logo-card,
#brands .brand-wall .brand-logo-card.brand-dark{
  background-color:#1a1c1e !important;
  background-image:none !important;
  box-shadow:none !important;
}
#brands .brand-wall .brand:hover,
#brands .brand-wall .brand-logo-card:hover,
#brands .brand-wall .brand-logo-card.brand-dark:hover{
  background-color:#202326 !important;
  background-image:none !important;
}


/* WordPress v4 — robust header visibility on internal pages.
   The header may hide only when the footer is actually near AND the visitor
   has scrolled away from the top. This prevents short article/product pages
   from loading with the navigation already hidden. */
.header{visibility:visible;}
.header:not(.footer-near){opacity:1;transform:none;pointer-events:auto;}
body.dcc-header-force-visible .header{opacity:1!important;transform:none!important;visibility:visible!important;pointer-events:auto!important;}

/* Keep internal-page content clear of the fixed navigation for public visitors. */
body:not(.admin-bar) .article-page-v77{padding-top:110px;}
body:not(.admin-bar) .product-detail-page{padding-top:110px;}
@media(max-width:1100px){
  body:not(.admin-bar) .article-page-v77{padding-top:96px;}
  body:not(.admin-bar) .product-detail-page{padding-top:96px;}
}


/* V125 / WordPress v5 — align dealer copyright with Dealer Pricing anchor */
.dealer-legal{
  padding:0 !important;
}
.dealer-legal .footer-legal{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:18px 55px 20px !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  text-align:left !important;
}
.dealer-legal .footer-legal p{
  margin:0 !important;
}
.dealer-legal .footer-legal-links{
  margin-left:auto !important;
}
@media(max-width:760px){
  .dealer-legal .footer-legal{
    padding:17px 22px calc(18px + env(safe-area-inset-bottom)) !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }
  .dealer-legal .footer-legal-links{
    margin-left:0 !important;
    justify-content:flex-start !important;
  }
}


/* WordPress v6 — premium article reading layout
   Constrains article content to a deliberate editorial column, restores generous
   separation below the fixed navigation, and makes the return-to-Latest action
   visually distinct from the article body. */
.article-page-v77,
.article-show-v78{
  padding:168px 0 104px !important;
  background:#151719 !important;
  background-image:none !important;
  min-height:70vh;
}
.article-wrap-v77,
.article-wrap-v78{
  width:min(1120px,calc(100% - 64px));
  margin:0 auto;
}
.article-kicker-v77,
.article-kicker-v78{
  color:#f6c400;
  font-size:11px;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.article-page-v77 h1,
.article-show-v78 h1{
  max-width:960px;
  margin:0 0 22px;
  font-size:clamp(42px,4.6vw,68px);
  line-height:1.03;
  letter-spacing:-.042em;
  color:#f5f5f3;
}
.article-meta-v78{
  margin:0 0 28px;
  color:#858b90;
  font-size:13px;
  letter-spacing:.01em;
}
.article-deck-v77,
.article-deck-v78{
  max-width:820px;
  margin:0 0 52px;
  color:#aeb3b7;
  font-size:17px;
  line-height:1.72;
}
.article-cover-frame-v80,
.article-cover-frame-v83{
  width:min(820px,100%) !important;
  margin:0 0 58px !important;
}
.article-body-v77,
.article-body-v78{
  width:100%;
  max-width:840px !important;
  padding-top:42px;
  border-top:1px solid rgba(255,255,255,.10);
}
.article-body-v77 section{
  margin:0 0 42px;
}
.article-body-v77 h2,
.article-body-v78 h2{
  margin:0 0 12px;
  color:#f3f3f0;
  font-size:clamp(22px,2vw,27px);
  line-height:1.22;
  letter-spacing:-.02em;
}
.article-body-v77 p,
.article-body-v78 p{
  max-width:820px;
  margin:0 0 26px;
  color:#aeb3b7;
  font-size:16px;
  line-height:1.82;
}

/* Event information belongs to the reading column, not the full viewport. */
.event-box-v78.event-box-v80,
.event-box-v80{
  width:min(100%,820px) !important;
  max-width:820px !important;
  margin:46px 0 50px !important;
  padding:24px !important;
  border-radius:18px !important;
}
.event-box-head-v80{
  margin-bottom:20px !important;
}
.event-cards-v80{
  gap:12px !important;
}
.event-card-v80{
  min-height:82px !important;
}

/* Deliberate end-of-article treatment. */
.article-back-v77,
.article-back-v78{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:42px !important;
  padding:11px 17px !important;
  border:1px solid rgba(246,196,0,.34);
  border-radius:999px;
  background:rgba(246,196,0,.045);
  color:#f6c400 !important;
  font-size:13px;
  font-weight:700;
  line-height:1;
  text-decoration:none !important;
  transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.article-back-v77:hover,
.article-back-v78:hover{
  background:rgba(246,196,0,.09);
  border-color:rgba(246,196,0,.65);
  transform:translateY(-1px);
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}

/* Logged-in GoDaddy/WordPress preview: the sticky header already occupies its own
   vertical space, so keep a premium gap beneath it without double-counting 84px. */
body.admin-bar .article-page-v77,
body.admin-bar .article-show-v78{
  padding-top:68px !important;
}

@media(max-width:760px){
  .article-page-v77,
  .article-show-v78{
    padding:126px 0 76px !important;
  }
  body.admin-bar .article-page-v77,
  body.admin-bar .article-show-v78{
    padding-top:42px !important;
  }
  .article-wrap-v77,
  .article-wrap-v78{
    width:calc(100% - 34px);
  }
  .article-page-v77 h1,
  .article-show-v78 h1{
    font-size:clamp(36px,11vw,46px);
    margin-bottom:18px;
  }
  .article-deck-v77,
  .article-deck-v78{
    margin-bottom:38px;
    font-size:16px;
  }
  .article-body-v77,
  .article-body-v78{
    padding-top:32px;
  }
  .article-cover-frame-v80,
  .article-cover-frame-v83{
    margin-bottom:42px !important;
  }
  .event-box-v78.event-box-v80,
  .event-box-v80{
    padding:18px !important;
    margin:38px 0 42px !important;
  }
  .event-box-head-v80{
    gap:14px;
  }
  .event-badge-v80{
    min-width:64px;
    height:44px;
    padding:0 12px;
    font-size:17px;
  }
  .event-cards-v80{
    grid-template-columns:1fr !important;
  }
  .article-back-v77,
  .article-back-v78{
    margin-top:32px !important;
  }
}

/* WordPress v7 — restrained, balanced display-heading scale
   Keep the small gold eyebrow as the visual anchor and reduce oversized
   display copy across the public site for a calmer premium hierarchy. */

/* Homepage hero */
body.home-page .hero h1,
body.home-page .hero-copy h1,
body.home-page .hero-title{
  font-size:clamp(38px,3.0vw,48px) !important;
  line-height:1.02 !important;
  letter-spacing:-.034em !important;
  max-width:650px !important;
  margin:14px 0 22px !important;
}

/* Homepage major section titles */
body.home-page #brands .section-head h2,
body.home-page #solutions .section-head h2,
body.home-page .steps .section-head h2,
body.home-page .portal-copy h2,
body.home-page .markets h2,
body.home-page .cta-box h2{
  font-size:clamp(30px,2.45vw,39px) !important;
  line-height:1.06 !important;
  letter-spacing:-.03em !important;
}
body.home-page #brands .section-head h2,
body.home-page #solutions .section-head h2,
body.home-page .steps .section-head h2{
  max-width:650px !important;
}
body.home-page .portal-copy h2{
  max-width:470px !important;
  margin:10px 0 18px !important;
}
body.home-page .markets h2{
  max-width:520px !important;
}
body.home-page .cta-box h2{
  max-width:560px !important;
}

/* About + Demo primary heroes */
.about-dcc-page .about-hero-v58 h1,
.about-dcc-page .about-hero-v66 .about-hero-copy-v66 h1,
.demo-page .demo-hero h1,
.demo-page .demo-hero-copy h1{
  font-size:clamp(38px,3.0vw,48px) !important;
  line-height:1.02 !important;
  letter-spacing:-.034em !important;
  max-width:650px !important;
  margin:14px 0 22px !important;
}

/* Demo content title directly under “What you'll experience” */
.demo-page .demo-main h2,
.demo-page .demo-content h2,
.demo-page .demo-layout h2,
.demo-page h2[style*="font-size:40px"]{
  font-size:clamp(30px,2.45vw,38px) !important;
  line-height:1.06 !important;
  letter-spacing:-.03em !important;
}

/* About page major content headings */
.about-dcc-page .about-split-v58 h2,
.about-dcc-page .about-expertise-v58 h2,
.about-dcc-page .about-cert-v58 h2,
.about-dcc-page .about-gcc-v58 h2,
.about-dcc-page .about-cta-v58 h2,
.about-dcc-page .team-cert-head-v65 h2,
.about-dcc-page .about-platforms-v59 h3{
  font-size:clamp(30px,2.45vw,39px) !important;
  line-height:1.06 !important;
  letter-spacing:-.03em !important;
}

/* Products catalogue and legal-page intro headings */
.products-page .subhero h1,
.catalogue-page .subhero h1,
.legal-page .legal-hero h1{
  font-size:clamp(36px,3vw,48px) !important;
  line-height:1.03 !important;
  letter-spacing:-.034em !important;
  max-width:820px !important;
}

/* Dealer page display title */
.dealer-page .login-brand h1{
  font-size:clamp(38px,3vw,48px) !important;
  line-height:1.02 !important;
  letter-spacing:-.034em !important;
  max-width:720px !important;
}

/* Keep section-title spacing compact so the eyebrow and heading read as one unit. */
body.home-page .section-head h2,
body.home-page .portal-copy h2,
body.home-page .cta-box h2,
.about-dcc-page h2,
.demo-page h2,
.products-page .subhero h1,
.dealer-page .login-brand h1{
  margin-top:12px !important;
}

@media(max-width:760px){
  body.home-page .hero h1,
  body.home-page .hero-copy h1,
  body.home-page .hero-title,
  .about-dcc-page .about-hero-v58 h1,
  .about-dcc-page .about-hero-v66 .about-hero-copy-v66 h1,
  .demo-page .demo-hero h1,
  .demo-page .demo-hero-copy h1,
  .products-page .subhero h1,
  .catalogue-page .subhero h1,
  .legal-page .legal-hero h1,
  .dealer-page .login-brand h1{
    font-size:clamp(34px,9.2vw,42px) !important;
    line-height:1.03 !important;
  }

  body.home-page #brands .section-head h2,
  body.home-page #solutions .section-head h2,
  body.home-page .steps .section-head h2,
  body.home-page .portal-copy h2,
  body.home-page .markets h2,
  body.home-page .cta-box h2,
  .demo-page .demo-main h2,
  .demo-page .demo-content h2,
  .demo-page .demo-layout h2,
  .demo-page h2[style*="font-size:40px"],
  .about-dcc-page .about-split-v58 h2,
  .about-dcc-page .about-expertise-v58 h2,
  .about-dcc-page .about-cert-v58 h2,
  .about-dcc-page .about-gcc-v58 h2,
  .about-dcc-page .about-cta-v58 h2,
  .about-dcc-page .team-cert-head-v65 h2,
  .about-dcc-page .about-platforms-v59 h3{
    font-size:clamp(28px,7.7vw,35px) !important;
    line-height:1.08 !important;
  }
}


/* WordPress v8 — unified premium title scale
   Client reference: About DCC hero. All major public display titles now use
   the same restrained visual hierarchy, with section titles one step smaller. */

/* Primary page / hero titles */
.hero h1,
.hero-copy h1,
.hero-title,
.demo-hero h1,
.demo-hero-copy h1,
.subhero h1,
.login-brand h1,
.product-info h1,
.article-page-v77 h1,
.article-show-v78 h1{
  font-size:clamp(36px,2.75vw,46px) !important;
  line-height:1.04 !important;
  letter-spacing:-.032em !important;
  margin-top:14px !important;
}

/* Keep About DCC exactly as the approved reference scale. */
.about-dcc-page .about-hero-v58 h1,
.about-dcc-page .about-hero-v66 .about-hero-copy-v66 h1{
  font-size:clamp(36px,2.75vw,46px) !important;
  line-height:1.04 !important;
  letter-spacing:-.032em !important;
  max-width:680px !important;
  margin:14px 0 22px !important;
}

/* Homepage and major section display titles */
#brands .section-head h2,
#solutions .section-head h2,
.steps .section-head h2,
.portal-copy h2,
.markets h2,
.cta-box h2,
.related-products .section-head h2,
.product-head h2{
  font-size:clamp(32px,2.35vw,42px) !important;
  line-height:1.06 !important;
  letter-spacing:-.028em !important;
}

/* Constrain line lengths so the title + eyebrow read as one balanced block. */
.hero h1,
.hero-copy h1,
.hero-title{max-width:620px !important}
#brands .section-head h2,
#solutions .section-head h2,
.steps .section-head h2{max-width:640px !important}
.portal-copy h2{max-width:500px !important}
.markets h2,.cta-box h2{max-width:560px !important}
.subhero h1{max-width:760px !important}
.demo-hero h1,.demo-hero-copy h1{max-width:650px !important}
.login-brand h1{max-width:650px !important}
.article-page-v77 h1,.article-show-v78 h1{max-width:820px !important}
.product-info h1{max-width:620px !important}

/* Secondary internal section headings stay clearly subordinate. */
.demo-page .demo-main h2,
.demo-page .demo-content h2,
.demo-page .demo-layout h2,
.demo-page h2[style*="font-size:40px"],
.about-dcc-page .about-split-v58 h2,
.about-dcc-page .about-expertise-v58 h2,
.about-dcc-page .about-cert-v58 h2,
.about-dcc-page .about-gcc-v58 h2,
.about-dcc-page .about-cta-v58 h2,
.about-dcc-page .team-cert-head-v65 h2,
.about-dcc-page .about-platforms-v59 h3{
  font-size:clamp(30px,2.1vw,38px) !important;
  line-height:1.08 !important;
  letter-spacing:-.025em !important;
}

@media(max-width:760px){
  .hero h1,
  .hero-copy h1,
  .hero-title,
  .demo-hero h1,
  .demo-hero-copy h1,
  .subhero h1,
  .login-brand h1,
  .product-info h1,
  .article-page-v77 h1,
  .article-show-v78 h1,
  .about-dcc-page .about-hero-v58 h1,
  .about-dcc-page .about-hero-v66 .about-hero-copy-v66 h1{
    font-size:clamp(32px,8.8vw,38px) !important;
    line-height:1.05 !important;
  }
  #brands .section-head h2,
  #solutions .section-head h2,
  .steps .section-head h2,
  .portal-copy h2,
  .markets h2,
  .cta-box h2,
  .related-products .section-head h2,
  .product-head h2,
  .demo-page .demo-main h2,
  .demo-page .demo-content h2,
  .demo-page .demo-layout h2,
  .demo-page h2[style*="font-size:40px"]{
    font-size:clamp(28px,7.4vw,34px) !important;
  }
}


/* WordPress v9 — keep the closing demo phrase together */
.demo-hero-copy h1 span{
  display:inline-block !important;
  white-space:nowrap !important;
}

@media(max-width:760px){
  .demo-hero-copy h1 span{
    white-space:normal !important;
  }
}


/* V10 — make Accept All the unmistakable primary cookie action */
.cookie-consent .cookie-btn.primary,
.cookie-modal-actions .cookie-btn.primary{
  background:linear-gradient(135deg,#ffd43a 0%,#f5bd00 58%,#e9aa00 100%) !important;
  border:1px solid #ffd43a !important;
  color:#070707 !important;
  font-weight:800 !important;
  min-height:46px;
  padding:12px 20px;
  box-shadow:
    0 0 0 1px rgba(255,210,35,.16),
    0 0 28px rgba(245,189,0,.30),
    0 10px 26px rgba(0,0,0,.24) !important;
  text-shadow:none;
}
.cookie-consent .cookie-btn.primary{
  min-width:150px;
  animation:dccCookiePrimaryGlow 3.2s ease-in-out infinite;
}
.cookie-consent .cookie-btn.primary:hover,
.cookie-modal-actions .cookie-btn.primary:hover{
  background:linear-gradient(135deg,#ffe06b 0%,#ffc400 58%,#f5bd00 100%) !important;
  border-color:#ffe06b !important;
  box-shadow:
    0 0 0 1px rgba(255,224,107,.22),
    0 0 36px rgba(245,189,0,.42),
    0 12px 30px rgba(0,0,0,.28) !important;
  transform:translateY(-1px);
}
.cookie-consent .cookie-btn.primary:focus-visible,
.cookie-modal-actions .cookie-btn.primary:focus-visible{
  outline:3px solid rgba(255,214,56,.35);
  outline-offset:3px;
}
.cookie-consent .cookie-btn.ghost{
  background:#151719 !important;
  border-color:rgba(255,255,255,.12) !important;
  color:rgba(255,255,255,.78) !important;
  box-shadow:none !important;
}
.cookie-consent .cookie-btn.text{
  color:rgba(255,255,255,.56) !important;
}
@keyframes dccCookiePrimaryGlow{
  0%,100%{box-shadow:0 0 0 1px rgba(255,210,35,.14),0 0 20px rgba(245,189,0,.22),0 10px 26px rgba(0,0,0,.24)}
  50%{box-shadow:0 0 0 1px rgba(255,210,35,.20),0 0 34px rgba(245,189,0,.38),0 10px 28px rgba(0,0,0,.26)}
}
@media(max-width:760px){
  .cookie-actions{grid-template-columns:1fr 1fr !important}
  .cookie-consent .cookie-btn.primary{
    grid-column:1/-1;
    min-height:50px;
    font-size:13px;
    order:-1;
  }
  .cookie-consent .cookie-btn.ghost{grid-column:1/2}
  .cookie-consent .cookie-btn.text{
    grid-column:2/3;
    min-height:42px;
    padding:10px 8px;
  }
}
@media(prefers-reduced-motion:reduce){
  .cookie-consent .cookie-btn.primary{animation:none}
}


/* WordPress v11 — calmer dealer application form on iPhone/mobile.
   Keep the optional Message field visually empty and give the registration form
   more breathing room without making it feel oversized or excessively long. */
@media(max-width:760px){
  .dealer-page .login-panel{
    padding:42px 26px 54px !important;
    align-items:start;
  }
  .dealer-page .formbox{
    width:100%;
    max-width:560px;
    margin:0 auto;
  }
  .dealer-page .tabs{
    margin-bottom:28px;
    gap:8px;
  }
  .dealer-page .tab{
    padding:10px 14px;
  }
  .dealer-page .formbox h2{
    font-size:30px;
    line-height:1.08;
    margin-bottom:8px;
  }
  .dealer-page .formbox .lead{
    margin-bottom:28px;
    line-height:1.55;
  }
  .dealer-page .field{
    margin-bottom:18px;
  }
  .dealer-page .field label{
    margin-bottom:7px;
    font-size:9.5px;
    letter-spacing:.12em;
  }
  .dealer-page .field input,
  .dealer-page .field select,
  .dealer-page .field textarea{
    min-height:50px;
    padding:13px 15px !important;
    border-radius:12px;
    font-size:16px;
    line-height:1.4;
  }
  .dealer-page .field textarea{
    min-height:118px;
    padding-top:15px !important;
  }
  .dealer-page .captcha-field{
    margin-top:6px;
    margin-bottom:20px;
  }
  .dealer-page .captcha-row{
    grid-template-columns:minmax(0,1fr) 48px 112px !important;
    gap:9px;
    align-items:stretch;
  }
  .dealer-page .captcha-challenge,
  .dealer-page .captcha-refresh,
  .dealer-page .captcha-row input{
    min-height:50px;
    height:50px;
    border-radius:12px;
  }
  .dealer-page .captcha-row input{
    grid-column:auto !important;
    padding:12px 13px !important;
    text-align:center;
  }
  .dealer-page .captcha-help{
    margin-top:8px;
    line-height:1.5;
  }
  .dealer-page #dealer-submit{
    min-height:54px;
    margin-top:4px !important;
    border-radius:999px;
  }
  .dealer-page .form-note{
    margin-top:20px;
    line-height:1.65;
  }
}
@media(max-width:370px){
  .dealer-page .login-panel{
    padding-left:20px !important;
    padding-right:20px !important;
  }
  .dealer-page .captcha-row{
    grid-template-columns:minmax(0,1fr) 46px !important;
  }
  .dealer-page .captcha-row input{
    grid-column:1/-1 !important;
    text-align:left;
  }
}


/* WordPress v12 — Android/mobile cookie banner alignment.
   Prevent CSS Grid intrinsic button widths from forcing the primary action
   outside the consent card on narrower Android viewports. */
@media(max-width:760px){
  .cookie-consent{
    box-sizing:border-box;
    max-width:calc(100vw - 24px);
  }
  .cookie-consent-card,
  .cookie-actions{
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .cookie-actions{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    overflow:hidden;
  }
  .cookie-consent .cookie-btn{
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0 !important;
    margin:0 !important;
  }
  .cookie-consent .cookie-btn.primary{
    grid-column:1/-1;
    justify-self:stretch;
  }
  .cookie-consent .cookie-btn.ghost,
  .cookie-consent .cookie-btn.text{
    overflow:hidden;
    text-overflow:ellipsis;
  }
}
@media(max-width:390px){
  .cookie-actions{
    grid-template-columns:1fr !important;
  }
  .cookie-consent .cookie-btn.primary,
  .cookie-consent .cookie-btn.ghost,
  .cookie-consent .cookie-btn.text{
    grid-column:1/-1 !important;
  }
}

/* =========================================================
   v15 — compact product detail + multi-image gallery
   ========================================================= */
.product-detail-page{
  padding:104px 0 54px !important;
}
.product-detail-page>.wrap{
  width:min(1440px,calc(100% - 56px));
}
.product-breadcrumb{
  margin:10px 0 16px !important;
  font-size:9px !important;
}
.product-detail-grid{
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr) !important;
  gap:34px !important;
  align-items:start;
}
.product-gallery{min-width:0}
.product-main-image{
  height:390px !important;
  padding:20px !important;
  border-radius:14px !important;
}
.product-main-image img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.product-thumbs{
  display:flex;
  gap:8px;
  margin-top:10px;
  overflow-x:auto;
  padding:1px 1px 3px;
  scrollbar-width:thin;
}
.product-thumb{
  width:68px;
  height:54px;
  flex:0 0 68px;
  border:1px solid #303030;
  border-radius:8px;
  background:#f5f5f3;
  padding:4px;
  cursor:pointer;
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.product-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.product-thumb:hover,.product-thumb.active{
  border-color:#d8aa00;
  box-shadow:0 0 0 1px rgba(245,189,0,.15);
  transform:translateY(-1px);
}
.product-info{padding-top:2px !important}
.product-info .eyebrow{margin-bottom:5px}
.product-info h1{
  font-size:clamp(34px,3.15vw,48px) !important;
  line-height:1 !important;
  margin:7px 0 12px !important;
  max-width:100% !important;
}
.product-long-desc{
  font-size:12px !important;
  line-height:1.55 !important;
  margin:0 !important;
  max-width:620px;
}
.detail-status-row{
  margin:15px 0 13px !important;
  gap:7px !important;
}
.detail-status,.detail-category{
  padding:7px 10px !important;
  font-size:9px !important;
}
.detail-price-card{
  padding:13px 0 !important;
  margin:5px 0 14px !important;
}
.detail-price-card strong{
  font-size:21px !important;
  margin:3px 0 !important;
}
.detail-price-card span{font-size:9px !important}
.detail-actions .btn{
  padding:11px 18px !important;
  min-width:170px;
}
.product-detail-lower{
  grid-template-columns:.95fr 1.3fr .75fr !important;
  gap:10px !important;
  margin-top:22px !important;
  align-items:stretch;
}
.detail-panel{
  padding:17px 18px !important;
  border-radius:12px !important;
}
.detail-panel .eyebrow{font-size:8px !important;margin-bottom:7px}
.detail-panel h2{
  font-size:17px !important;
  margin:0 0 8px !important;
}
.detail-panel p{
  font-size:10.5px !important;
  line-height:1.55 !important;
  margin:0 !important;
}
.detail-panel-specs .spec-table{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:18px;
}
.spec-row{
  padding:6px 0 !important;
  font-size:9px !important;
  gap:10px;
}
.spec-row strong{text-align:right}
.resource-row{
  padding:8px 0 !important;
  font-size:9px !important;
}
.related-products{
  padding-top:42px !important;
}
.related-products .section-head{margin-bottom:15px !important}
.related-products .section-head h2{font-size:29px !important}

@media(max-width:1000px){
  .product-detail-page>.wrap{width:min(100% - 36px,920px)}
  .product-detail-grid{grid-template-columns:1fr !important;gap:22px !important}
  .product-main-image{height:360px !important}
  .product-detail-lower{grid-template-columns:1fr 1fr !important}
  .product-detail-lower .detail-panel:first-child{grid-column:1/-1}
}
@media(max-width:620px){
  .product-detail-page{padding-top:88px !important;padding-bottom:38px !important}
  .product-detail-page>.wrap{width:calc(100% - 28px)}
  .product-breadcrumb{margin:7px 0 12px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .product-main-image{height:270px !important;padding:12px !important;border-radius:12px !important}
  .product-thumbs{gap:7px;margin-top:8px}
  .product-thumb{width:60px;height:48px;flex-basis:60px}
  .product-info h1{font-size:34px !important;margin:5px 0 10px !important}
  .product-long-desc{font-size:11.5px !important}
  .detail-status-row{margin:12px 0 10px !important;flex-wrap:wrap}
  .detail-price-card{padding:11px 0 !important;margin:3px 0 12px !important}
  .detail-actions{flex-direction:row !important}
  .detail-actions .btn{width:100%;min-width:0}
  .product-detail-lower{grid-template-columns:1fr !important;margin-top:16px !important}
  .product-detail-lower .detail-panel:first-child{grid-column:auto}
  .detail-panel{padding:15px !important}
  .detail-panel-specs .spec-table{grid-template-columns:1fr 1fr;column-gap:14px}
  .spec-row{display:block !important;padding:6px 0 !important}
  .spec-row span,.spec-row strong{display:block;text-align:left}
  .spec-row strong{margin-top:2px}
  .related-products{padding-top:32px !important}
}

/* =========================================================
   v16 — brand routing + product resources
   ========================================================= */
.brand-link{
  cursor:pointer;
  position:relative;
  text-decoration:none;
}
.brand-link:focus-visible{
  outline:2px solid #f5bd00;
  outline-offset:-3px;
  z-index:2;
}
.brand-link:after{
  content:"View products →";
  position:absolute;
  left:18px;
  right:18px;
  bottom:10px;
  font-size:8px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#d8aa00;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .2s ease,transform .2s ease;
}
.brand-link-has-intro:after{content:"Discover brand →"}
.brand-link:hover:after,.brand-link:focus-visible:after{opacity:1;transform:none}
.brand-link:hover small,.brand-link:focus-visible small{transform:translateY(-5px)}
.brand-link small{transition:transform .2s ease}

.product-breadcrumb a#crumbBrand{color:#aaa;transition:color .2s ease}
.product-breadcrumb a#crumbBrand:hover{color:#f5bd00}

@media(max-width:760px){
  .brand-link:after{display:none}
  .brand-link:hover small,.brand-link:focus-visible small{transform:none}
}


/* =========================================================
   v17 — product specs + gallery arrows + tighter product CMS
   ========================================================= */
.product-main-image{
  position:relative;
  isolation:isolate;
}
.product-main-image img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
.product-gallery-arrow{
  position:absolute;
  top:50%;
  z-index:4;
  width:42px;
  height:42px;
  border:1px solid rgba(245,189,0,.55);
  border-radius:999px;
  background:rgba(7,7,7,.78);
  color:#f5bd00;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  cursor:pointer;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease,background .18s ease,border-color .18s ease,transform .18s ease;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.product-gallery-arrow.visible{opacity:1;pointer-events:auto}
.product-gallery-arrow:hover{background:#111;border-color:#f5bd00;transform:translateY(-50%) scale(1.04)}
.product-gallery-arrow.prev{left:14px}
.product-gallery-arrow.next{right:14px}
.product-gallery-arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.product-image-count{
  position:absolute;
  right:13px;
  bottom:12px;
  z-index:3;
  display:none;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(7,7,7,.74);
  color:#d3d3cf;
  border:1px solid rgba(255,255,255,.12);
  font-size:9px;
  letter-spacing:.08em;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.product-image-count.visible{display:block}
.product-thumbs{
  justify-content:flex-start;
  align-items:center;
}
.product-thumb{
  background:#f5f5f3 !important;
  overflow:hidden;
}
.product-thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
}
.detail-panel-specs .spec-table:empty:after{
  content:"Technical specifications will be added shortly.";
  display:block;
  color:#777;
  font-size:10px;
  line-height:1.5;
  padding-top:4px;
}
.detail-panel-specs .spec-row{
  min-width:0;
}
.detail-panel-specs .spec-row span,
.detail-panel-specs .spec-row strong{
  overflow-wrap:anywhere;
}
@media(max-width:620px){
  .product-gallery-arrow{width:38px;height:38px}
  .product-gallery-arrow.prev{left:8px}
  .product-gallery-arrow.next{right:8px}
  .product-image-count{right:9px;bottom:9px}
}
\n\n/* v18 — robust product gallery + specification presentation */\n.product-gallery{min-width:0}\n.product-main-image{position:relative !important;height:400px !important;padding:20px !important;background:#f5f5f3 !important}\n.product-main-image img{width:100% !important;height:100% !important;max-width:100% !important;max-height:100% !important;object-fit:contain !important;object-position:center !important}\n.product-thumbs{display:flex;gap:10px;margin-top:10px;overflow-x:auto;padding:2px 1px 4px;scrollbar-width:thin}\n.product-thumb{flex:0 0 74px;width:74px;height:60px;border:1px solid #303030;border-radius:8px;background:#161616;padding:5px;display:grid;place-items:center;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}\n.product-thumb img{width:100%;height:100%;object-fit:contain;display:block}\n.product-thumb:hover,.product-thumb.active{border-color:#f5bd00;background:#202020}\n.product-thumb.active{box-shadow:0 0 0 1px rgba(245,189,0,.2) inset}\n.product-gallery-arrow{z-index:4}\n.product-image-count{z-index:4}\n.detail-panel-specs .spec-table:empty::after{content:'Technical specifications have not been entered yet.';display:block;color:#777;font-size:11px;line-height:1.6;padding-top:2px}\n.spec-row{gap:18px;align-items:flex-start}\n.spec-row strong{text-align:right;color:#eee}\n@media(max-width:1000px){.product-main-image{height:350px !important}}\n@media(max-width:620px){.product-main-image{height:280px !important;padding:12px !important}.product-thumb{flex-basis:64px;width:64px;height:54px}}\n

/* v21 — VAT exclusivity note on public pricing */
.detail-price-card .vat-exclusive{display:block;margin:0 0 2px;color:#777;font-size:9px;line-height:1.45}
.price .vat-exclusive{display:block;margin-top:4px}


/* =========================================================
   v22 — full-image gallery fit + simplified public price note
   ========================================================= */
.product-main-image{
  position:relative !important;
  display:block !important;
  height:400px !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#f5f5f3 !important;
}
.product-main-image > img#mainImage{
  position:absolute !important;
  inset:24px !important;
  width:calc(100% - 48px) !important;
  height:calc(100% - 48px) !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
}
.product-main-image .product-placeholder-detail{
  position:absolute;
  inset:24px;
  width:auto;
  height:auto;
  margin:0;
}
.product-thumbs .product-thumb{
  padding:6px !important;
  background:#f5f5f3 !important;
}
.product-thumbs .product-thumb img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
.detail-price-card .vat-exclusive{
  display:block !important;
  margin-top:3px !important;
  color:#777 !important;
  font-size:9px !important;
  line-height:1.45 !important;
}
@media(max-width:1000px){
  .product-main-image{height:350px !important}
  .product-main-image > img#mainImage{inset:20px !important;width:calc(100% - 40px) !important;height:calc(100% - 40px) !important}
}
@media(max-width:620px){
  .product-main-image{height:280px !important}
  .product-main-image > img#mainImage{inset:12px !important;width:calc(100% - 24px) !important;height:calc(100% - 24px) !important}
  .product-main-image .product-placeholder-detail{inset:12px}
}

/* WordPress v25 — scalable CMS-driven Portfolio wall. */
#brands .brand-wall{
  grid-template-columns:repeat(5,minmax(0,1fr));
  width:100%;
}
#brands .brand-wall .brand{
  min-width:0;
  min-height:150px;
  padding:20px 16px;
  overflow:hidden;
}
#brands .brand-wall .brand img{
  display:block;
  max-width:min(82%,230px);
  max-height:72px;
  width:auto;
  height:auto;
  object-fit:contain;
  margin:auto;
}
#brands .brand-wall .brand small{
  max-width:100%;
  white-space:normal;
  line-height:1.35;
}
@media(max-width:1200px){#brands .brand-wall{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:900px){#brands .brand-wall{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:640px){
  #brands .brand-wall{grid-template-columns:repeat(2,minmax(0,1fr));}
  #brands .brand-wall .brand{min-height:132px;padding:16px 10px;}
  #brands .brand-wall .brand img{max-width:82%;max-height:60px;}
}


/* v27: brands remain visible in Products even before products are published */
.product-empty{
  grid-column:1/-1;
  min-height:210px;
  border:1px solid var(--line-soft);
  border-radius:18px;
  background:rgba(255,255,255,.018);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:10px;
  padding:34px;
}
.product-empty strong{font-size:24px;line-height:1.15;color:var(--text)}
.product-empty p{max-width:650px;margin:0 0 8px;color:var(--muted);line-height:1.65}
@media(max-width:700px){
  .product-empty{min-height:180px;padding:24px;border-radius:14px}
  .product-empty strong{font-size:20px}
}


/* =========================================================
   v28 — flexible technical specification rows
   Plain lines render as compact technical features while
   Label | Value and Label: Value continue to render as pairs.
   ========================================================= */
.detail-panel-specs .spec-row-feature{
  position:relative;
  justify-content:flex-start !important;
  padding-left:12px !important;
}
.detail-panel-specs .spec-row-feature:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#f5bd00;
  transform:translateY(-50%);
}
.detail-panel-specs .spec-row-feature strong{
  text-align:left !important;
  color:#e9e9e6;
  font-weight:600;
  line-height:1.35;
}
@media(max-width:620px){
  .detail-panel-specs .spec-row-feature{padding-left:12px !important}
}

/* =========================================================
   v29 — DCC Articles CMS / editorial SEO pages
   ========================================================= */
.latest-view-all{display:inline-flex;align-items:center;color:#a9a9a6;font-size:12px;font-weight:650;letter-spacing:.02em;transition:.2s ease}.latest-view-all:hover{color:#f5bd00;transform:translateX(2px)}
.dcc-article-cms-main,.dcc-article-archive-main{background:#151719;min-height:100vh;padding-top:132px}
.dcc-article-cms-wrap{width:min(1080px,calc(100% - 64px));margin:0 auto;padding:54px 0 82px}
.dcc-article-cms-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;align-items:center;color:#777b80;font-size:11px;margin-bottom:34px}.dcc-article-cms-breadcrumb a:hover{color:#f5bd00}.dcc-article-cms-breadcrumb span{color:#606469}
.dcc-article-cms-kicker{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#f5bd00;margin-bottom:16px}.dcc-article-cms-kicker span{opacity:.6;margin:0 5px}
.dcc-article-cms-wrap>h1{max-width:920px;margin:0;color:#f5f5f3;font-size:clamp(38px,5vw,68px);line-height:.98;letter-spacing:-.045em;font-weight:830}
.dcc-article-cms-meta{margin-top:20px;color:#777b80;font-size:12px;letter-spacing:.02em}.dcc-article-cms-deck{max-width:820px;margin:22px 0 0;color:#a8abae;font-size:18px;line-height:1.65}
.dcc-article-cms-cover{width:min(920px,100%);min-height:260px;max-height:610px;margin:38px 0 42px;border:1px solid rgba(245,189,0,.28);border-radius:18px;overflow:hidden;background:#0c0d0e;display:flex;align-items:center;justify-content:center}.dcc-article-cms-cover img{display:block;width:100%;height:100%;max-height:610px;object-fit:contain}.dcc-article-cms-cover.is-logo{height:310px;padding:60px;background:linear-gradient(135deg,#17191b,#0d0e0f)}.dcc-article-cms-cover.is-logo img{width:min(320px,70%);height:auto;max-height:180px;object-fit:contain}
.dcc-article-cms-body{width:min(840px,100%);color:#d3d4d3;font-size:16px;line-height:1.78}.dcc-article-cms-body>p,.dcc-article-cms-body>ul,.dcc-article-cms-body>ol,.dcc-article-cms-body>blockquote,.dcc-article-cms-body>figure,.dcc-article-cms-body>.wp-block-group{margin-top:0;margin-bottom:26px}.dcc-article-cms-body h2{margin:48px 0 14px;color:#f2f2ef;font-size:27px;line-height:1.15;letter-spacing:-.025em}.dcc-article-cms-body h3{margin:34px 0 12px;color:#f2f2ef;font-size:21px;line-height:1.25}.dcc-article-cms-body a:not(.btn){color:#f5bd00;text-decoration:underline;text-underline-offset:3px}.dcc-article-cms-body ul,.dcc-article-cms-body ol{padding-left:22px}.dcc-article-cms-body li{margin:8px 0}.dcc-article-cms-body blockquote{margin-left:0;padding:18px 22px;border-left:3px solid #f5bd00;background:#1b1d1f;border-radius:0 12px 12px 0}.dcc-article-cms-body img{max-width:100%;height:auto;border-radius:12px}.dcc-article-cms-body table{width:100%;border-collapse:collapse;margin:26px 0}.dcc-article-cms-body th,.dcc-article-cms-body td{padding:12px 14px;border:1px solid #333;text-align:left}.dcc-article-cms-body th{background:#202225;color:#f5bd00}
.dcc-article-cms-body .event-box-v78{width:100%;margin:38px 0}
.dcc-article-cms-back{display:inline-flex;align-items:center;margin-top:58px;padding:12px 17px;border:1px solid rgba(245,189,0,.36);border-radius:999px;color:#f5bd00;font-size:12px;font-weight:750;transition:.2s ease}.dcc-article-cms-back:hover{background:rgba(245,189,0,.08);border-color:#f5bd00;transform:translateX(-2px)}
.dcc-article-archive-hero{border-bottom:1px solid #303235;padding:66px 0 48px}.dcc-article-archive-hero h1{max-width:900px;margin:14px 0 12px;font-size:clamp(42px,5.2vw,72px);line-height:.98;letter-spacing:-.045em}.dcc-article-archive-hero p{max-width:720px;margin:0;color:#9c9f9f;font-size:17px;line-height:1.65}
.dcc-article-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-top:42px;padding-bottom:42px}.dcc-article-archive-card{min-width:0;border:1px solid #303235;border-radius:18px;overflow:hidden;background:#17191b;display:flex;flex-direction:column}.dcc-article-archive-image{height:240px;background:#0b0c0d;display:flex;align-items:center;justify-content:center;overflow:hidden}.dcc-article-archive-image img{width:100%;height:100%;object-fit:cover}.dcc-article-archive-image.is-logo{padding:55px;background:linear-gradient(135deg,#1a1c1f,#0d0e0f)}.dcc-article-archive-image.is-logo img{object-fit:contain;max-width:280px}.dcc-article-archive-copy{padding:24px;display:flex;flex-direction:column;flex:1}.dcc-article-archive-source{font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#c5c7c8}.dcc-article-archive-kicker{margin-top:7px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#f5bd00}.dcc-article-archive-copy h2{margin:14px 0 12px;font-size:27px;line-height:1.08;letter-spacing:-.03em}.dcc-article-archive-copy p{color:#9b9e9f;line-height:1.58;font-size:14px;margin:0 0 22px}.dcc-article-archive-copy .news-link{margin-top:auto}.dcc-article-pagination{padding:0 0 72px}.dcc-article-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}.dcc-article-pagination .page-numbers{padding:9px 13px;border:1px solid #343638;border-radius:999px;color:#aaa}.dcc-article-pagination .page-numbers.current,.dcc-article-pagination .page-numbers:hover{border-color:#f5bd00;color:#f5bd00}
@media(max-width:1050px){.dcc-article-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.latest-view-all{font-size:11px}.dcc-article-cms-main,.dcc-article-archive-main{padding-top:104px}.dcc-article-cms-wrap{width:calc(100% - 38px);padding:38px 0 60px}.dcc-article-cms-breadcrumb{margin-bottom:26px}.dcc-article-cms-wrap>h1{font-size:clamp(34px,10vw,48px);line-height:1.02}.dcc-article-cms-deck{font-size:16px;line-height:1.58}.dcc-article-cms-cover{margin:28px 0 32px;min-height:190px;border-radius:14px}.dcc-article-cms-cover.is-logo{height:220px;padding:44px}.dcc-article-cms-body{font-size:15px;line-height:1.72}.dcc-article-cms-body h2{font-size:23px;margin-top:38px}.dcc-article-cms-back{margin-top:44px}.dcc-article-archive-hero{padding:44px 0 36px}.dcc-article-archive-hero h1{font-size:42px}.dcc-article-archive-grid{grid-template-columns:1fr;gap:16px;padding-top:28px}.dcc-article-archive-image{height:220px}}


/* V30 — CMS article carousel CTA visibility + article body media polish */
#latest .article-card-v92 .news-content{
  min-height:0;
  overflow:visible;
}
#latest .article-card-v92 .news-content p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:5;
  overflow:hidden;
  margin-bottom:14px !important;
}
#latest .article-card-v92 .news-link{
  display:inline-flex !important;
  align-items:center;
  width:max-content;
  max-width:100%;
  flex:0 0 auto;
  margin-top:0 !important;
  color:#f5bd00 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  position:relative;
  z-index:5;
}
#latest .article-card-v92 .news-link:hover{color:#ffd84d !important}

/* Gutenberg images inserted inside DCC CMS articles */
.dcc-article-cms-body .wp-block-image{
  width:100%;
  margin:34px 0;
}
.dcc-article-cms-body .wp-block-image img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  margin-left:auto;
  margin-right:auto;
  border-radius:14px;
}
.dcc-article-cms-body .wp-block-image figcaption{
  margin:9px auto 0;
  color:#858887;
  font-size:12px;
  line-height:1.5;
  text-align:center;
  max-width:720px;
}
@media(max-width:760px){
  #latest .article-card-v92 .news-content p{-webkit-line-clamp:4}
  #latest .article-card-v92 .news-link{font-size:12px !important;margin-top:2px !important}
  .dcc-article-cms-body .wp-block-image{margin:26px 0}
}


/* V105 — slightly reduced single-article title scale for a more balanced hero */
.dcc-article-cms-wrap>h1{
  max-width:820px !important;
  font-size:clamp(34px,2.9vw,46px) !important;
  line-height:1.03 !important;
  letter-spacing:-.032em !important;
}
@media(max-width:760px){
  .dcc-article-cms-wrap>h1{
    max-width:100% !important;
    font-size:clamp(29px,8vw,36px) !important;
    line-height:1.06 !important;
  }
}

/* =========================================================
   v32 — stable Latest from DCC card alignment
   Keep source, kicker, title, summary and CTA in one controlled
   copy column so variable CMS text can never overlap itself.
   ========================================================= */
#latest .article-card-v92{
  grid-template-columns:minmax(0,1fr) 248px !important;
  grid-template-rows:1fr !important;
  height:360px !important;
  padding:0 !important;
}
#latest .article-card-v92 .article-card-media-v92{
  grid-column:2 !important;
  grid-row:1 !important;
  height:auto !important;
  min-height:0 !important;
  margin:16px 16px 16px 0 !important;
}
#latest .article-card-v92 .article-card-copy-v32{
  grid-column:1;
  grid-row:1;
  min-width:0;
  min-height:0;
  padding:26px 20px 24px 28px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
#latest .article-card-v92 .article-card-copy-v32 .news-logo{
  position:static !important;
  margin:0 !important;
  padding:0 !important;
  flex:0 0 auto;
  font-size:10px !important;
  line-height:1.2 !important;
  letter-spacing:.18em !important;
}
#latest .article-card-v92 .article-card-copy-v32 .news-content{
  position:static !important;
  margin:14px 0 0 !important;
  padding:0 !important;
  min-width:0;
  min-height:0;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  align-self:stretch !important;
  overflow:hidden !important;
}
#latest .article-card-v92 .article-card-copy-v32 .news-tag{
  margin:0 0 10px !important;
  flex:0 0 auto;
  font-size:9px !important;
  line-height:1.25 !important;
}
#latest .article-card-v92 .article-card-copy-v32 h3{
  margin:0 0 10px !important;
  max-width:100% !important;
  font-size:clamp(22px,1.55vw,29px) !important;
  line-height:1.08 !important;
  letter-spacing:-.022em !important;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
  flex:0 0 auto;
}
#latest .article-card-v92 .article-card-copy-v32 p{
  margin:0 0 12px !important;
  max-width:100% !important;
  font-size:12px !important;
  line-height:1.52 !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:3 !important;
  overflow:hidden !important;
  flex:0 1 auto;
}
#latest .article-card-v92 .article-card-copy-v32 .news-link{
  margin-top:auto !important;
  flex:0 0 auto;
  padding-top:2px;
}

@media(max-width:760px){
  #latest .article-card-v92{
    width:84vw !important;
    height:auto !important;
    min-height:535px !important;
    grid-template-columns:1fr !important;
    grid-template-rows:250px auto !important;
  }
  #latest .article-card-v92 .article-card-media-v92{
    grid-column:1 !important;
    grid-row:1 !important;
    height:236px !important;
    margin:14px 14px 0 !important;
  }
  #latest .article-card-v92 .article-card-copy-v32{
    grid-column:1;
    grid-row:2;
    padding:18px 22px 22px;
    overflow:visible;
  }
  #latest .article-card-v92 .article-card-copy-v32 .news-content{
    margin-top:12px !important;
    overflow:visible !important;
  }
  #latest .article-card-v92 .article-card-copy-v32 h3{
    font-size:25px !important;
    -webkit-line-clamp:4;
  }
  #latest .article-card-v92 .article-card-copy-v32 p{
    -webkit-line-clamp:3 !important;
    font-size:12.5px !important;
  }
}


/* =========================================================
   v36 — Latest from DCC title descender / baseline fix
   Give multi-line card titles enough vertical leading so letters
   such as g, y, p and q are never clipped by the line clamp.
   ========================================================= */
#latest .article-card-v92 .article-card-copy-v32 h3{
  line-height:1.16 !important;
  letter-spacing:-.018em !important;
}

/* Keep the text column vertically comfortable after the increased leading. */
#latest .article-card-v92 .article-card-copy-v32 .news-tag{
  margin-bottom:9px !important;
}
#latest .article-card-v92 .article-card-copy-v32 p{
  line-height:1.56 !important;
}

@media(max-width:760px){
  #latest .article-card-v92 .article-card-copy-v32 h3{
    line-height:1.15 !important;
  }
}


/* WordPress v37 — Dealer portal viewport fit.
   Keep both Dealer Login and Apply for Account comfortably within one desktop viewport,
   including the copyright/legal bar, instead of requiring a small final scroll. */
@media (min-width:761px){
  body.dealer-page{
    min-height:100dvh;
    height:100dvh;
    display:flex;
    flex-direction:column;
    overflow:hidden;
  }
  body.dealer-page .login-shell{
    flex:1 1 auto;
    min-height:0 !important;
    height:auto !important;
    overflow:hidden;
  }
  body.dealer-page .standalone-legal.dealer-legal{
    flex:0 0 42px;
    min-height:42px;
    padding:0 !important;
  }
  body.dealer-page .dealer-legal .footer-legal{
    min-height:42px;
    padding:10px 55px !important;
    border-top:0;
    font-size:10px;
    line-height:1.25;
  }

  /* Left presentation panel: retain the premium open feeling, but use the available
     viewport more efficiently so the legal line remains visible. */
  body.dealer-page .login-brand{
    min-height:0;
    padding:38px 48px 30px;
  }
  body.dealer-page .login-brand .dcc-logo-img{
    max-height:70px;
    width:auto;
  }
  body.dealer-page .login-brand h1{
    font-size:clamp(38px,3.15vw,54px) !important;
    line-height:.98;
    margin:14px 0 14px;
  }
  body.dealer-page .login-brand p{
    font-size:14px;
    line-height:1.55;
    margin:0;
  }
  body.dealer-page .hero-meta{
    margin-top:18px;
  }

  /* Right panel */
  body.dealer-page .login-panel{
    min-height:0;
    padding:30px 44px;
    overflow:hidden;
  }
  body.dealer-page .formbox{
    max-width:520px;
  }
  body.dealer-page .tabs{
    margin-bottom:20px;
  }
  body.dealer-page .formbox h2{
    font-size:31px;
    line-height:1.05;
    margin:0 0 6px;
  }
  body.dealer-page .formbox .lead{
    margin-bottom:20px;
    font-size:14px;
  }
  body.dealer-page .field{
    margin-bottom:11px;
  }
  body.dealer-page .field label{
    margin-bottom:5px;
    font-size:9px;
  }
  body.dealer-page .field input,
  body.dealer-page .field select,
  body.dealer-page .field textarea{
    min-height:44px;
    padding:10px 13px;
    border-radius:9px;
    font-size:14px;
  }
  body.dealer-page .field textarea{
    min-height:72px;
  }

  /* Registration uses a compact two-column desktop layout. */
  body.dealer-page #register:not(.hidden){
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    column-gap:12px;
    row-gap:0;
    align-items:start;
  }
  body.dealer-page #register > h2,
  body.dealer-page #register > .lead,
  body.dealer-page #register > .captcha-field,
  body.dealer-page #register > #dealer-submit,
  body.dealer-page #register > .form-status,
  body.dealer-page #register > .form-note{
    grid-column:1 / -1;
  }
  body.dealer-page #register > .lead{
    margin-bottom:14px;
  }
  body.dealer-page #register .field:has(textarea){
    grid-column:1 / -1;
  }
  body.dealer-page #register .field textarea{
    min-height:58px;
    max-height:70px;
  }
  body.dealer-page #register .captcha-field{
    margin:0 0 10px;
  }
  body.dealer-page #register .captcha-row{
    grid-template-columns:minmax(150px,1fr) 42px minmax(120px,.7fr);
  }
  body.dealer-page #register .captcha-challenge,
  body.dealer-page #register .captcha-refresh,
  body.dealer-page #register .captcha-row input{
    min-height:42px;
    height:42px;
  }
  body.dealer-page #register .captcha-help{
    margin-top:5px;
  }
  body.dealer-page #dealer-submit{
    min-height:44px;
    margin-top:0 !important;
  }
  body.dealer-page .form-note{
    margin-top:9px;
    font-size:9px;
    line-height:1.4;
  }
  body.dealer-page .form-status{
    margin-top:8px;
    padding:8px 10px;
  }
}

/* Smaller desktop/laptop heights: tighten just enough to preserve a single-screen page. */
@media (min-width:761px) and (max-height:760px){
  body.dealer-page .login-brand{padding-top:26px;padding-bottom:22px}
  body.dealer-page .login-panel{padding-top:20px;padding-bottom:20px}
  body.dealer-page .tabs{margin-bottom:14px}
  body.dealer-page .formbox h2{font-size:28px}
  body.dealer-page .formbox .lead{margin-bottom:13px}
  body.dealer-page .field{margin-bottom:8px}
  body.dealer-page .field input,
  body.dealer-page .field select{min-height:40px;padding:8px 11px}
  body.dealer-page #register .field textarea{min-height:50px}
  body.dealer-page #register .captcha-challenge,
  body.dealer-page #register .captcha-refresh,
  body.dealer-page #register .captcha-row input{min-height:38px;height:38px}
  body.dealer-page .dealer-legal .footer-legal{padding-top:8px!important;padding-bottom:8px!important}
}

/* WordPress v38 — dealer portal true single-viewport layout.
   The previous 100dvh body rule did not account for WordPress's logged-in admin bar,
   so the legal strip was pushed just below the viewport. v38 uses a dedicated
   viewport wrapper and a reliable two-column registration grid. */
@media (min-width:761px){
  body.dealer-page{
    min-height:0 !important;
    height:auto !important;
    display:block !important;
    overflow:hidden !important;
  }

  body.dealer-page .dealer-viewport{
    height:100dvh;
    min-height:0;
    display:grid;
    grid-template-rows:minmax(0,1fr) 38px;
    overflow:hidden;
    background:#030816;
  }
  body.admin-bar.dealer-page .dealer-viewport{
    height:calc(100dvh - 32px);
  }

  body.dealer-page .login-shell{
    min-height:0 !important;
    height:100% !important;
    overflow:hidden !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  }

  body.dealer-page .standalone-legal.dealer-legal{
    height:38px !important;
    min-height:38px !important;
    padding:0 !important;
    overflow:hidden;
    background:#080a0d;
  }
  body.dealer-page .dealer-legal .footer-legal{
    height:38px !important;
    min-height:38px !important;
    padding:0 46px !important;
    display:flex !important;
    align-items:center !important;
    line-height:1 !important;
  }

  body.dealer-page .login-brand{
    min-height:0 !important;
    height:100%;
    padding:30px 46px 22px !important;
  }
  body.dealer-page .login-brand .dcc-logo-img{
    max-height:64px !important;
  }
  body.dealer-page .login-brand h1{
    font-size:clamp(34px,2.65vw,46px) !important;
    margin:10px 0 12px !important;
  }
  body.dealer-page .login-brand p{
    max-width:520px;
    font-size:13px !important;
    line-height:1.5 !important;
  }
  body.dealer-page .hero-meta{
    margin-top:12px !important;
  }

  body.dealer-page .login-panel{
    min-height:0 !important;
    height:100%;
    padding:22px 40px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }
  body.dealer-page .formbox{
    width:min(520px,100%) !important;
    max-width:520px !important;
  }
  body.dealer-page .tabs{
    margin-bottom:14px !important;
  }
  body.dealer-page .tab{
    padding:8px 13px !important;
    font-size:13px;
  }
  body.dealer-page .formbox h2{
    font-size:28px !important;
    margin:0 0 5px !important;
    line-height:1.05 !important;
  }
  body.dealer-page .formbox .lead{
    margin-bottom:14px !important;
    font-size:13px !important;
    line-height:1.4;
  }
  body.dealer-page .field{
    margin-bottom:8px !important;
  }
  body.dealer-page .field label{
    margin-bottom:4px !important;
    font-size:8px !important;
  }
  body.dealer-page .field input,
  body.dealer-page .field select,
  body.dealer-page .field textarea{
    min-height:40px !important;
    padding:8px 11px !important;
    font-size:13px !important;
  }

  /* Dedicated field grid: this is more reliable than making the form itself a grid. */
  body.dealer-page #register:not(.hidden){
    display:block !important;
  }
  body.dealer-page #register .register-fields{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    column-gap:10px;
    row-gap:0;
  }
  body.dealer-page #register .register-message{
    grid-column:1 / -1;
  }
  body.dealer-page #register .register-message textarea{
    min-height:48px !important;
    height:48px !important;
    max-height:48px !important;
    resize:none;
  }
  body.dealer-page #register .captcha-field{
    margin:0 0 7px !important;
  }
  body.dealer-page #register .captcha-row{
    grid-template-columns:minmax(130px,1fr) 38px minmax(105px,.7fr) !important;
    gap:7px !important;
  }
  body.dealer-page #register .captcha-challenge,
  body.dealer-page #register .captcha-refresh,
  body.dealer-page #register .captcha-row input{
    min-height:38px !important;
    height:38px !important;
  }
  body.dealer-page #register .captcha-help{
    margin-top:3px !important;
    font-size:8px !important;
    line-height:1.3;
  }
  body.dealer-page #dealer-submit{
    min-height:40px !important;
    height:40px;
    margin-top:0 !important;
  }
  body.dealer-page .form-note{
    margin-top:6px !important;
    font-size:8px !important;
    line-height:1.35 !important;
  }
  body.dealer-page .form-status{
    margin-top:6px !important;
    padding:6px 9px !important;
    font-size:9px !important;
  }
}

/* WordPress switches the logged-in admin bar to 46px around this width. */
@media (min-width:761px) and (max-width:782px){
  body.admin-bar.dealer-page .dealer-viewport{
    height:calc(100dvh - 46px);
  }
}

/* Short laptop windows get one more compact pass while retaining readable controls. */
@media (min-width:761px) and (max-height:720px){
  body.dealer-page .dealer-viewport{grid-template-rows:minmax(0,1fr) 34px}
  body.dealer-page .standalone-legal.dealer-legal,
  body.dealer-page .dealer-legal .footer-legal{height:34px!important;min-height:34px!important}
  body.dealer-page .login-brand{padding-top:20px!important;padding-bottom:16px!important}
  body.dealer-page .login-panel{padding-top:14px!important;padding-bottom:14px!important}
  body.dealer-page .tabs{margin-bottom:10px!important}
  body.dealer-page .formbox h2{font-size:25px!important}
  body.dealer-page .formbox .lead{margin-bottom:9px!important}
  body.dealer-page .field{margin-bottom:6px!important}
  body.dealer-page .field input,
  body.dealer-page .field select{min-height:36px!important;height:36px!important;padding:6px 10px!important}
  body.dealer-page #register .register-message textarea{min-height:40px!important;height:40px!important;max-height:40px!important}
  body.dealer-page #register .captcha-challenge,
  body.dealer-page #register .captcha-refresh,
  body.dealer-page #register .captcha-row input{min-height:34px!important;height:34px!important}
  body.dealer-page #dealer-submit{min-height:36px!important;height:36px!important}
}

@media(max-width:760px){
  /* Mobile remains scrollable: fitting an application form into a short phone viewport
     would make the controls too small. */
  body.dealer-page{overflow-x:hidden}
  body.dealer-page .dealer-viewport{min-height:100dvh}
  body.dealer-page #register .register-fields{display:block}
}


/* =========================================================
   WordPress v39 — dealer portal hard single-screen fit.
   The dealer experience is pinned to the visible desktop viewport so the
   copyright/legal strip is always visible without scrolling. This also uses
   WordPress's actual page-template classes as a fallback in case a custom body
   class is unavailable.
   ========================================================= */
@media (min-width:761px){
  body.dealer-page,
  body.page-template-page-dealer,
  body.page-template-page-dealer-php{
    overflow:hidden !important;
  }

  body.dealer-page .dealer-viewport,
  body.page-template-page-dealer .dealer-viewport,
  body.page-template-page-dealer-php .dealer-viewport{
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:auto !important;
    min-height:0 !important;
    display:grid !important;
    grid-template-rows:minmax(0,1fr) 36px !important;
    overflow:hidden !important;
    z-index:1;
    background:#030816;
  }

  body.admin-bar.dealer-page .dealer-viewport,
  body.admin-bar.page-template-page-dealer .dealer-viewport,
  body.admin-bar.page-template-page-dealer-php .dealer-viewport{
    top:32px !important;
  }

  body.dealer-page .login-shell,
  body.page-template-page-dealer .login-shell,
  body.page-template-page-dealer-php .login-shell{
    min-height:0 !important;
    height:100% !important;
    overflow:hidden !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  }

  body.dealer-page .standalone-legal.dealer-legal,
  body.page-template-page-dealer .standalone-legal.dealer-legal,
  body.page-template-page-dealer-php .standalone-legal.dealer-legal{
    height:36px !important;
    min-height:36px !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
  }

  body.dealer-page .dealer-legal .footer-legal,
  body.page-template-page-dealer .dealer-legal .footer-legal,
  body.page-template-page-dealer-php .dealer-legal .footer-legal{
    height:36px !important;
    min-height:36px !important;
    padding:0 46px !important;
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    font-size:10px !important;
    line-height:1 !important;
  }

  body.dealer-page .login-brand,
  body.page-template-page-dealer .login-brand,
  body.page-template-page-dealer-php .login-brand{
    min-height:0 !important;
    height:100% !important;
    padding:24px 42px 18px !important;
  }
  body.dealer-page .login-brand .dcc-logo-img,
  body.page-template-page-dealer .login-brand .dcc-logo-img,
  body.page-template-page-dealer-php .login-brand .dcc-logo-img{
    max-height:62px !important;
    width:auto !important;
  }
  body.dealer-page .login-brand h1,
  body.page-template-page-dealer .login-brand h1,
  body.page-template-page-dealer-php .login-brand h1{
    font-size:clamp(30px,2.35vw,42px) !important;
    line-height:1 !important;
    margin:9px 0 10px !important;
  }
  body.dealer-page .login-brand p,
  body.page-template-page-dealer .login-brand p,
  body.page-template-page-dealer-php .login-brand p{
    font-size:12.5px !important;
    line-height:1.45 !important;
    margin:0 !important;
  }
  body.dealer-page .hero-meta,
  body.page-template-page-dealer .hero-meta,
  body.page-template-page-dealer-php .hero-meta{
    margin-top:8px !important;
    gap:22px !important;
    font-size:9px !important;
  }

  body.dealer-page .login-panel,
  body.page-template-page-dealer .login-panel,
  body.page-template-page-dealer-php .login-panel{
    min-height:0 !important;
    height:100% !important;
    padding:16px 38px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }
  body.dealer-page .formbox,
  body.page-template-page-dealer .formbox,
  body.page-template-page-dealer-php .formbox{
    width:min(500px,100%) !important;
    max-width:500px !important;
  }
  body.dealer-page .tabs,
  body.page-template-page-dealer .tabs,
  body.page-template-page-dealer-php .tabs{
    margin-bottom:10px !important;
  }
  body.dealer-page .tab,
  body.page-template-page-dealer .tab,
  body.page-template-page-dealer-php .tab{
    padding:7px 12px !important;
    font-size:12px !important;
  }
  body.dealer-page .formbox h2,
  body.page-template-page-dealer .formbox h2,
  body.page-template-page-dealer-php .formbox h2{
    font-size:26px !important;
    line-height:1.04 !important;
    margin:0 0 4px !important;
  }
  body.dealer-page .formbox .lead,
  body.page-template-page-dealer .formbox .lead,
  body.page-template-page-dealer-php .formbox .lead{
    margin-bottom:10px !important;
    font-size:12.5px !important;
    line-height:1.35 !important;
  }
  body.dealer-page .field,
  body.page-template-page-dealer .field,
  body.page-template-page-dealer-php .field{
    margin-bottom:6px !important;
  }
  body.dealer-page .field label,
  body.page-template-page-dealer .field label,
  body.page-template-page-dealer-php .field label{
    margin-bottom:3px !important;
    font-size:7.5px !important;
    line-height:1.2 !important;
  }
  body.dealer-page .field input,
  body.dealer-page .field select,
  body.dealer-page .field textarea,
  body.page-template-page-dealer .field input,
  body.page-template-page-dealer .field select,
  body.page-template-page-dealer .field textarea,
  body.page-template-page-dealer-php .field input,
  body.page-template-page-dealer-php .field select,
  body.page-template-page-dealer-php .field textarea{
    min-height:35px !important;
    height:35px !important;
    padding:6px 10px !important;
    border-radius:8px !important;
    font-size:12px !important;
  }

  /* Registration: two columns so the complete application is visible at once. */
  body.dealer-page #register:not(.hidden) .register-fields,
  body.page-template-page-dealer #register:not(.hidden) .register-fields,
  body.page-template-page-dealer-php #register:not(.hidden) .register-fields{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    column-gap:9px !important;
    row-gap:0 !important;
  }
  body.dealer-page #register .register-message,
  body.page-template-page-dealer #register .register-message,
  body.page-template-page-dealer-php #register .register-message{
    grid-column:1/-1 !important;
  }
  body.dealer-page #register .register-message textarea,
  body.page-template-page-dealer #register .register-message textarea,
  body.page-template-page-dealer-php #register .register-message textarea{
    min-height:38px !important;
    height:38px !important;
    max-height:38px !important;
    resize:none !important;
  }
  body.dealer-page #register .captcha-field,
  body.page-template-page-dealer #register .captcha-field,
  body.page-template-page-dealer-php #register .captcha-field{
    margin:0 0 5px !important;
  }
  body.dealer-page #register .captcha-row,
  body.page-template-page-dealer #register .captcha-row,
  body.page-template-page-dealer-php #register .captcha-row{
    grid-template-columns:minmax(120px,1fr) 34px minmax(100px,.72fr) !important;
    gap:6px !important;
  }
  body.dealer-page #register .captcha-challenge,
  body.dealer-page #register .captcha-refresh,
  body.dealer-page #register .captcha-row input,
  body.page-template-page-dealer #register .captcha-challenge,
  body.page-template-page-dealer #register .captcha-refresh,
  body.page-template-page-dealer #register .captcha-row input,
  body.page-template-page-dealer-php #register .captcha-challenge,
  body.page-template-page-dealer-php #register .captcha-refresh,
  body.page-template-page-dealer-php #register .captcha-row input{
    min-height:34px !important;
    height:34px !important;
    font-size:11px !important;
  }
  body.dealer-page #register .captcha-help,
  body.page-template-page-dealer #register .captcha-help,
  body.page-template-page-dealer-php #register .captcha-help{
    margin-top:2px !important;
    font-size:7.5px !important;
    line-height:1.25 !important;
  }
  body.dealer-page #dealer-submit,
  body.page-template-page-dealer #dealer-submit,
  body.page-template-page-dealer-php #dealer-submit{
    min-height:35px !important;
    height:35px !important;
    margin-top:0 !important;
    padding:6px 12px !important;
    font-size:11px !important;
  }
  body.dealer-page .form-note,
  body.page-template-page-dealer .form-note,
  body.page-template-page-dealer-php .form-note{
    margin-top:4px !important;
    font-size:7.5px !important;
    line-height:1.25 !important;
  }
  body.dealer-page .form-status,
  body.page-template-page-dealer .form-status,
  body.page-template-page-dealer-php .form-status{
    margin-top:4px !important;
    padding:5px 8px !important;
    font-size:8px !important;
  }
}

/* WordPress mobile admin bar is 46px tall. */
@media (min-width:761px) and (max-width:782px){
  body.admin-bar.dealer-page .dealer-viewport,
  body.admin-bar.page-template-page-dealer .dealer-viewport,
  body.admin-bar.page-template-page-dealer-php .dealer-viewport{
    top:46px !important;
  }
}

/* Extra-tight laptop viewport, e.g. browser + WordPress admin chrome visible. */
@media (min-width:761px) and (max-height:820px){
  body.dealer-page .dealer-viewport,
  body.page-template-page-dealer .dealer-viewport,
  body.page-template-page-dealer-php .dealer-viewport{
    grid-template-rows:minmax(0,1fr) 32px !important;
  }
  body.dealer-page .standalone-legal.dealer-legal,
  body.dealer-page .dealer-legal .footer-legal,
  body.page-template-page-dealer .standalone-legal.dealer-legal,
  body.page-template-page-dealer .dealer-legal .footer-legal,
  body.page-template-page-dealer-php .standalone-legal.dealer-legal,
  body.page-template-page-dealer-php .dealer-legal .footer-legal{
    height:32px !important;
    min-height:32px !important;
  }
  body.dealer-page .login-brand,
  body.page-template-page-dealer .login-brand,
  body.page-template-page-dealer-php .login-brand{
    padding-top:18px !important;
    padding-bottom:14px !important;
  }
  body.dealer-page .login-panel,
  body.page-template-page-dealer .login-panel,
  body.page-template-page-dealer-php .login-panel{
    padding-top:10px !important;
    padding-bottom:10px !important;
  }
  body.dealer-page .formbox h2,
  body.page-template-page-dealer .formbox h2,
  body.page-template-page-dealer-php .formbox h2{font-size:23px !important}
  body.dealer-page .formbox .lead,
  body.page-template-page-dealer .formbox .lead,
  body.page-template-page-dealer-php .formbox .lead{margin-bottom:7px !important}
  body.dealer-page .field,
  body.page-template-page-dealer .field,
  body.page-template-page-dealer-php .field{margin-bottom:4px !important}
  body.dealer-page .field input,
  body.dealer-page .field select,
  body.page-template-page-dealer .field input,
  body.page-template-page-dealer .field select,
  body.page-template-page-dealer-php .field input,
  body.page-template-page-dealer-php .field select{
    min-height:32px !important;
    height:32px !important;
  }
  body.dealer-page #register .register-message textarea,
  body.page-template-page-dealer #register .register-message textarea,
  body.page-template-page-dealer-php #register .register-message textarea{
    min-height:32px !important;
    height:32px !important;
    max-height:32px !important;
  }
  body.dealer-page #register .captcha-challenge,
  body.dealer-page #register .captcha-refresh,
  body.dealer-page #register .captcha-row input,
  body.page-template-page-dealer #register .captcha-challenge,
  body.page-template-page-dealer #register .captcha-refresh,
  body.page-template-page-dealer #register .captcha-row input,
  body.page-template-page-dealer-php #register .captcha-challenge,
  body.page-template-page-dealer-php #register .captcha-refresh,
  body.page-template-page-dealer-php #register .captcha-row input{
    min-height:31px !important;
    height:31px !important;
  }
  body.dealer-page #dealer-submit,
  body.page-template-page-dealer #dealer-submit,
  body.page-template-page-dealer-php #dealer-submit{
    min-height:32px !important;
    height:32px !important;
  }
}


/* =========================================================
   v40 — CMS-controlled article date
   The article date is intentionally quieter than the CTA so the
   action remains primary while every card still carries a clear date.
   ========================================================= */
#latest .article-card-v92 .article-card-date-v40,
.dcc-article-archive-card .article-card-date-v40{
  display:block;
  margin-top:8px;
  color:#7f8385;
  font-size:10px;
  line-height:1.25;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-variant-numeric:tabular-nums;
}
#latest .article-card-v92 .article-card-copy-v32 .news-link{
  margin-top:auto !important;
}
#latest .article-card-v92 .article-card-copy-v32 .article-card-date-v40{
  flex:0 0 auto;
}
.dcc-article-archive-card .dcc-article-archive-copy .article-card-date-v40{
  margin-top:9px;
}
@media(max-width:760px){
  #latest .article-card-v92 .article-card-date-v40{font-size:9.5px;margin-top:7px}
}


/* =========================================================
   v42 — technical specifications: every item uses the same
   half-width cell rhythm. Label/value rows no longer span the
   entire panel, so Frequency response + THD align as a pair.
   ========================================================= */
.detail-panel-specs .spec-table{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  column-gap:28px !important;
  row-gap:0 !important;
  align-items:stretch;
}
.detail-panel-specs .spec-row{
  grid-column:auto !important;
  min-width:0;
  min-height:34px;
  margin:0 !important;
  padding:8px 0 !important;
  border-bottom:1px solid #292929 !important;
  box-sizing:border-box;
}
/* Label/value specification lives inside one grid cell. */
.detail-panel-specs .spec-row:not(.spec-row-feature){
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:12px !important;
}
.detail-panel-specs .spec-row:not(.spec-row-feature) span{
  display:block !important;
  min-width:0;
  color:#777 !important;
  text-align:left !important;
  line-height:1.35 !important;
  overflow-wrap:anywhere;
}
.detail-panel-specs .spec-row:not(.spec-row-feature) strong{
  display:block !important;
  margin:0 !important;
  color:#f2f2ef !important;
  text-align:right !important;
  line-height:1.35 !important;
  white-space:nowrap;
}
/* Plain feature items use the same cell dimensions. */
.detail-panel-specs .spec-row-feature{
  display:flex !important;
  align-items:center !important;
  position:relative;
  padding-left:14px !important;
}
.detail-panel-specs .spec-row-feature:before{
  left:1px !important;
}
.detail-panel-specs .spec-row-feature strong{
  display:block !important;
  margin:0 !important;
  min-width:0;
  line-height:1.35 !important;
  overflow-wrap:anywhere;
}
@media(max-width:700px){
  .detail-panel-specs .spec-table{
    grid-template-columns:1fr !important;
    column-gap:0 !important;
  }
  .detail-panel-specs .spec-row{
    grid-column:1 / -1 !important;
  }
  .detail-panel-specs .spec-row:not(.spec-row-feature){
    grid-template-columns:minmax(110px,1fr) auto !important;
    gap:12px !important;
  }
  .detail-panel-specs .spec-row:not(.spec-row-feature) strong{
    white-space:normal;
  }
}

/* =========================================================
   v43 — deterministic technical-spec rows
   JS now groups matching spec types into explicit visual rows so an
   odd feature count cannot push Frequency Response / THD out of line.
   ========================================================= */
.detail-panel-specs .spec-table{
  display:block !important;
}
.detail-panel-specs .spec-layout-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:28px;
  align-items:stretch;
}
.detail-panel-specs .spec-layout-row + .spec-layout-row{
  margin-top:0;
}
.detail-panel-specs .spec-cell-empty{
  min-height:34px;
  border-bottom:1px solid #292929;
}
.detail-panel-specs .spec-layout-row .spec-row{
  grid-column:auto !important;
  width:100%;
  min-width:0;
  min-height:34px;
  margin:0 !important;
  padding:8px 0 !important;
  border-bottom:1px solid #292929 !important;
  box-sizing:border-box;
}
.detail-panel-specs .spec-layout-data .spec-row-data{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:12px !important;
}
.detail-panel-specs .spec-layout-data .spec-row-data span{
  display:block !important;
  min-width:0;
  color:#777 !important;
  text-align:left !important;
  line-height:1.35 !important;
  overflow-wrap:anywhere;
}
.detail-panel-specs .spec-layout-data .spec-row-data strong{
  display:block !important;
  margin:0 !important;
  color:#f2f2ef !important;
  text-align:right !important;
  line-height:1.35 !important;
  white-space:nowrap;
}
.detail-panel-specs .spec-layout-feature .spec-row-feature{
  display:flex !important;
  align-items:center !important;
  position:relative;
  padding-left:14px !important;
}
.detail-panel-specs .spec-layout-feature .spec-row-feature:before{
  left:1px !important;
}
.detail-panel-specs .spec-layout-feature .spec-row-feature strong{
  display:block !important;
  margin:0 !important;
  min-width:0;
  line-height:1.35 !important;
  overflow-wrap:anywhere;
}
@media(max-width:700px){
  .detail-panel-specs .spec-layout-row{
    grid-template-columns:1fr;
    column-gap:0;
  }
  .detail-panel-specs .spec-cell-empty{display:none}
  .detail-panel-specs .spec-layout-data .spec-row-data{
    grid-template-columns:minmax(110px,1fr) auto !important;
    gap:12px !important;
  }
  .detail-panel-specs .spec-layout-data .spec-row-data strong{
    white-space:normal;
  }
}


/* =========================================================
   v44 — simplified label/value technical specifications
   Keep measurement rows visually identical: same text color,
   inline label + value, and no artificial space between them.
   ========================================================= */
.detail-panel-specs .spec-layout-data .spec-row-data{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:4px !important;
}
.detail-panel-specs .spec-layout-data .spec-row-data span,
.detail-panel-specs .spec-layout-data .spec-row-data strong{
  display:inline !important;
  width:auto !important;
  min-width:0 !important;
  margin:0 !important;
  color:#f2f2ef !important;
  font-size:10px !important;
  font-weight:600 !important;
  line-height:1.35 !important;
  text-align:left !important;
  white-space:normal !important;
}
.detail-panel-specs .spec-layout-data .spec-row-data span:after{
  content:":";
}
@media(max-width:700px){
  .detail-panel-specs .spec-layout-data .spec-row-data{
    display:flex !important;
    gap:4px !important;
  }
}
\n\n/* =========================================================\n   v45 — unified auto-flow technical specifications\n   Every specification is an identical bullet cell. CSS grid fills\n   the next available cell automatically, eliminating blank gaps.\n   ========================================================= */\n.detail-panel-specs .spec-table{\n  display:grid !important;\n  grid-template-columns:repeat(2,minmax(0,1fr)) !important;\n  grid-auto-flow:row !important;\n  column-gap:28px !important;\n  row-gap:0 !important;\n  align-items:stretch !important;\n}\n.detail-panel-specs .spec-layout-row,\n.detail-panel-specs .spec-cell-empty{\n  display:none !important;\n}\n.detail-panel-specs .spec-row.spec-row-unified{\n  display:flex !important;\n  align-items:center !important;\n  position:relative !important;\n  min-width:0 !important;\n  min-height:34px !important;\n  margin:0 !important;\n  padding:8px 0 8px 14px !important;\n  border-bottom:1px solid #292929 !important;\n  box-sizing:border-box !important;\n}\n.detail-panel-specs .spec-row.spec-row-unified::before{\n  content:"" !important;\n  position:absolute !important;\n  left:1px !important;\n  top:50% !important;\n  width:4px !important;\n  height:4px !important;\n  margin-top:-2px !important;\n  border-radius:50% !important;\n  background:#f5bd00 !important;\n}\n.detail-panel-specs .spec-row.spec-row-unified strong{\n  display:block !important;\n  min-width:0 !important;\n  margin:0 !important;\n  color:#f2f2ef !important;\n  font-size:10px !important;\n  font-weight:600 !important;\n  line-height:1.35 !important;\n  text-align:left !important;\n  white-space:normal !important;\n  overflow-wrap:anywhere !important;\n}\n@media(max-width:700px){\n  .detail-panel-specs .spec-table{\n    grid-template-columns:1fr !important;\n    column-gap:0 !important;\n  }\n}\n

/* =========================================================
   v46 — final unified technical specification renderer
   Every specification is a simple yellow-dot bullet item.
   No label/value row gets special alignment or empty columns.
   ========================================================= */
#specTable.detail-panel-specs,
.detail-panel-specs #specTable{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  column-gap:34px !important;
  row-gap:0 !important;
  margin-top:14px !important;
  align-items:stretch !important;
}
.detail-panel-specs #specTable > .dcc-tech-spec{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-width:0 !important;
  min-height:38px !important;
  margin:0 !important;
  padding:8px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.055) !important;
  box-sizing:border-box !important;
  color:#f3f3f3 !important;
  text-align:left !important;
}
.detail-panel-specs #specTable > .dcc-tech-spec .dcc-tech-dot{
  display:block !important;
  width:5px !important;
  height:5px !important;
  min-width:5px !important;
  flex:0 0 5px !important;
  border-radius:50% !important;
  background:#f4c400 !important;
}
.detail-panel-specs #specTable > .dcc-tech-spec .dcc-tech-text{
  display:block !important;
  min-width:0 !important;
  margin:0 !important;
  color:#f3f3f3 !important;
  font-size:10px !important;
  line-height:1.45 !important;
  font-weight:600 !important;
  text-align:left !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}
/* Neutralize all older spec-row layout rules if stale cached markup exists. */
.detail-panel-specs #specTable > .spec-row,
.detail-panel-specs #specTable > .spec-layout-row,
.detail-panel-specs #specTable > .spec-cell-empty{
  display:none !important;
}
@media(max-width:700px){
  .detail-panel-specs #specTable{
    grid-template-columns:1fr !important;
    column-gap:0 !important;
  }
}


/* =========================================================
   v49 — optional 2–3 image product showcase
   Sits between product information panels and related products.
   ========================================================= */
.product-showcase{
  display:none;
  margin-top:18px;
  margin-bottom:34px;
}
.product-showcase.visible{display:block}
.product-showcase-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.product-showcase-grid.count-1{grid-template-columns:minmax(0,1fr)}
.product-showcase-grid.count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.product-showcase-card{
  margin:0;
  min-width:0;
  height:260px;
  padding:14px;
  border:1px solid rgba(245,189,0,.34);
  border-radius:15px;
  background:linear-gradient(145deg,#202020 0%,#151515 100%);
  overflow:hidden;
  display:grid;
  place-items:center;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018);
}
.product-showcase-card img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  border-radius:9px;
}
@media(max-width:1000px){
  .product-showcase-card{height:220px;padding:12px}
}
@media(max-width:720px){
  .product-showcase{margin-top:14px;margin-bottom:26px}
  .product-showcase-grid,
  .product-showcase-grid.count-2,
  .product-showcase-grid.count-3{grid-template-columns:1fr;gap:10px}
  .product-showcase-card{height:230px;padding:10px;border-radius:12px}
}

/* =========================================================
   v51 — showcase image fit + click-to-enlarge lightbox
   ========================================================= */
.product-showcase-grid{
  align-items:stretch;
}
.product-showcase-card{
  position:relative;
  width:100%;
  height:auto !important;
  aspect-ratio:16 / 9;
  padding:12px !important;
  border:1px solid rgba(245,189,0,.48);
  border-radius:15px;
  background:#171717;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  cursor:zoom-in;
  appearance:none;
  -webkit-appearance:none;
  color:inherit;
  font:inherit;
  text-align:inherit;
}
.product-showcase-card:hover{
  border-color:rgba(245,189,0,.78);
  background:#1b1b1b;
}
.product-showcase-card:focus-visible{
  outline:2px solid #f5bd00;
  outline-offset:3px;
}
.product-showcase-card img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:8px;
  margin:auto !important;
  flex:0 1 auto;
}
.product-showcase-zoom{
  position:absolute;
  right:10px;
  bottom:10px;
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(10,10,10,.78);
  border:1px solid rgba(245,189,0,.55);
  color:#f5bd00;
  font-size:15px;
  line-height:1;
  opacity:.88;
  transition:opacity .18s ease,transform .18s ease;
}
.product-showcase-card:hover .product-showcase-zoom{opacity:1;transform:scale(1.05)}
body.dcc-lightbox-open{overflow:hidden}
.product-showcase-lightbox{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  background:rgba(0,0,0,.92);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.product-showcase-lightbox.open{display:flex}
.product-showcase-lightbox-dialog{
  position:relative;
  width:min(1480px,96vw);
  height:min(900px,92vh);
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 58px;
  align-items:center;
  gap:10px;
}
.product-showcase-lightbox-stage{
  position:relative;
  min-width:0;
  min-height:0;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border:1px solid rgba(245,189,0,.36);
  border-radius:16px;
  background:#111;
  overflow:hidden;
}
.product-showcase-lightbox-image{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
}
.product-showcase-lightbox-close,
.product-showcase-lightbox-arrow{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(245,189,0,.55);
  background:rgba(20,20,20,.94);
  color:#f5bd00;
  cursor:pointer;
  display:grid;
  place-items:center;
}
.product-showcase-lightbox-close{
  position:absolute;
  z-index:3;
  right:4px;
  top:4px;
  width:44px;
  height:44px;
  border-radius:50%;
  font-size:30px;
  font-weight:300;
  line-height:1;
}
.product-showcase-lightbox-arrow{
  width:50px;
  height:50px;
  border-radius:50%;
  font-size:35px;
  line-height:1;
}
.product-showcase-lightbox-close:hover,
.product-showcase-lightbox-arrow:hover{background:#242424;border-color:#f5bd00}
.product-showcase-lightbox-close:focus-visible,
.product-showcase-lightbox-arrow:focus-visible{outline:2px solid #fff;outline-offset:3px}
.product-showcase-lightbox-count{
  position:absolute;
  right:16px;
  bottom:14px;
  min-width:52px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,0,0,.72);
  color:#fff;
  font-size:12px;
  font-weight:700;
  text-align:center;
}
@media(max-width:720px){
  .product-showcase-card{aspect-ratio:16 / 10;padding:9px !important}
  .product-showcase-zoom{width:28px;height:28px;right:8px;bottom:8px}
  .product-showcase-lightbox{padding:12px}
  .product-showcase-lightbox-dialog{
    width:100%;
    height:88vh;
    grid-template-columns:42px minmax(0,1fr) 42px;
    gap:5px;
  }
  .product-showcase-lightbox-stage{padding:8px;border-radius:12px}
  .product-showcase-lightbox-arrow{width:38px;height:38px;font-size:28px}
  .product-showcase-lightbox-close{right:2px;top:2px;width:40px;height:40px;font-size:27px}
}

/* =========================================================
   v51 — optional YouTube tile in product showcase
   The video fills one of the same 3 showcase slots and matches
   the image-card proportions and DCC frame treatment.
   ========================================================= */
.product-showcase-video-card{
  position:relative;
  width:100%;
  aspect-ratio:16 / 9;
  min-width:0;
  padding:12px;
  border:1px solid rgba(245,189,0,.48);
  border-radius:15px;
  background:#171717;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018);
}
.product-showcase-video-card iframe,
.product-showcase-video-card video{
  display:block;
  width:100%;
  height:100%;
  border:0;
  border-radius:8px;
  background:#000;
}
.product-showcase-video-card video{
  object-fit:contain;
}
@media(max-width:720px){
  .product-showcase-video-card{
    aspect-ratio:16 / 10;
    padding:9px;
    border-radius:12px;
  }
}


/* =========================================================
   v52 — responsive footer demo CTA repair
   Prevent the demo action circle from covering the CTA copy
   and stop the neon arrow from colliding with adjacent footer
   columns on medium desktop / tablet widths.
   ========================================================= */
@media (max-width:1180px){
  .footer .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:34px 42px!important;
  }
  .footer .footer-grid > .footer-brand{
    grid-column:1 / -1!important;
  }
  .footer .footer-contact{
    grid-column:1 / -1!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px 28px!important;
    align-items:start!important;
  }
  .footer .footer-contact > h4{
    grid-column:1 / -1!important;
    margin-bottom:2px!important;
  }
  .footer .footer-contact .footer-demo-wrap-v51{
    grid-column:1 / -1!important;
    width:min(100%,430px)!important;
    max-width:430px!important;
    margin-top:12px!important;
    padding-left:0!important;
  }
  .footer .footer-contact .demo-pointer-image-v54{
    display:none!important;
  }
  .footer .footer-contact .footer-demo-v51{
    width:100%!important;
    grid-template-columns:minmax(0,1fr) 40px!important;
    gap:12px!important;
    min-height:68px!important;
    padding:12px 13px 12px 18px!important;
  }
  .footer .footer-contact .demo-copy-v51 small{
    white-space:normal!important;
    font-size:7px!important;
    line-height:1.25!important;
  }
  .footer .footer-contact .demo-copy-v51 strong{
    white-space:normal!important;
    font-size:13px!important;
    line-height:1.2!important;
  }
  .footer .footer-contact .demo-action-v51{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    font-size:20px!important;
    margin:0!important;
  }
}

@media (max-width:620px){
  .footer .footer-grid{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }
  .footer .footer-grid > .footer-brand,
  .footer .footer-contact{
    grid-column:auto!important;
  }
  .footer .footer-contact{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .footer .footer-contact > h4,
  .footer .footer-contact .footer-demo-wrap-v51{
    grid-column:auto!important;
  }
  .footer .footer-contact .footer-demo-wrap-v51{
    width:100%!important;
    max-width:100%!important;
    margin-top:12px!important;
  }
  .footer .footer-contact .footer-demo-v51{
    grid-template-columns:minmax(0,1fr) 38px!important;
    gap:10px!important;
    padding:12px 12px 12px 15px!important;
  }
  .footer .footer-contact .demo-action-v51{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
  }
}


/* =========================================================
   v53 — homepage cinema CTA + brand visibility polish
   The homepage now uses the same dedicated cinema CTA layout
   as About DCC instead of squeezing it inside the footer.
   ========================================================= */
.home-demo-cta-v53{
  padding:78px 0;
  border-top:1px solid rgba(255,255,255,.055);
  border-bottom:1px solid rgba(255,255,255,.045);
}
.home-demo-cta-v53 .wrap{
  max-width:var(--max);
}
.home-demo-cta-v53 h2{
  font-size:clamp(36px,3.4vw,56px);
  line-height:1.04;
  letter-spacing:-.035em;
  margin:16px 0 16px;
  max-width:760px;
}
.home-demo-cta-v53 p{
  margin:0;
  max-width:760px;
}
@media(max-width:950px){
  .home-demo-cta-v53{padding:64px 0}
}
@media(max-width:620px){
  .home-demo-cta-v53{padding:52px 0}
  .home-demo-cta-v53 h2{font-size:clamp(32px,9vw,44px)}
}


/* v55 — CMS-managed Advanced Platform Knowledge cards */
.about-advanced-grid-v59{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
}
.dcc-platform-hidden-note{display:none}
@media(max-width:1100px){.about-advanced-grid-v59{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:700px){.about-advanced-grid-v59{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:470px){.about-advanced-grid-v59{grid-template-columns:1fr!important}}


/* v56 — Product pages use the exact same dedicated Experience DCC CTA layout as Home/About.
   The obsolete demo CTA embedded inside the Products footer Contact column is removed,
   preventing the circular action icon from overlapping the copy at narrower desktop widths. */
.products-demo-cta-v56{
  position:relative;
  z-index:1;
}


/* =========================================================
   v57 — pure white product gallery canvas
   Match stock product images that use #FFFFFF backgrounds.
   ========================================================= */
.product-main-image,
.product-main-image > img#mainImage,
.product-main-image .product-placeholder-detail{
  background-color:#ffffff !important;
}
.product-main-image > img#mainImage{
  /* Keep the full stock image visible while the surrounding canvas
     matches its native pure-white background exactly. */
  object-fit:contain !important;
  object-position:center center !important;
}
.product-thumbs .product-thumb{
  background:#ffffff !important;
}
.product-thumbs .product-thumb img{
  background:#ffffff !important;
  object-fit:contain !important;
  object-position:center center !important;
}


/* V58 — catalogue image canvas matches stock-image white background.
   Product-detail gallery was already pure white in v57; this applies the
   exact same #fff canvas to cards shown in the Trade Catalogue and related
   product cards so white-background manufacturer images blend seamlessly. */
.catalogue-page .product-card .product-visual,
.catalogue-page .product-card .product-visual-link,
.product-grid .product-card .product-visual,
.related-products .product-card .product-visual{
  background:#ffffff !important;
  background-image:none !important;
}
.catalogue-page .product-card .product-image,
.product-grid .product-card .product-image,
.related-products .product-card .catalogue-product-image,
.related-products .product-card .product-image{
  background:#ffffff !important;
  background-image:none !important;
  object-fit:contain !important;
  object-position:center !important;
}
/* Keep the image stage white even while hovering; only the image itself may
   receive the existing subtle scale effect. */
.catalogue-page .product-card:hover .product-visual,
.product-grid .product-card:hover .product-visual,
.related-products .product-card:hover .product-visual{
  background:#ffffff !important;
}


/* v60 — brand-first catalogue navigation.
   Selecting a brand now reveals only that brand's product families/categories.
   MAG Theatron keeps its familiar family order: AVALON, Main Speakers,
   Subwoofers, Surround Speakers, Amplifiers and Accessories. */
.filters .filter-group + .filter-group{margin-top:24px}
#categoryFilterTitle{transition:color .2s ease}
@media (max-width:760px){
  .filters .filter-group + .filter-group{margin-top:18px}
}


/* v106 — image-led MAG Theatron category landing.
   Each category card now uses a dedicated cinematic product image with a
   right-weighted hero composition, dark fade to the left, and responsive
   text-safe layout for desktop, tablet and mobile. */

.catalog-title-accent{
  color:#f5bd00;
}
.catalog-back-wrap{
  margin:0 0 18px;
  scroll-margin-top:130px;
}
.catalog-back-button{
  appearance:none;
  border:1px solid rgba(245,189,0,.72);
  background:linear-gradient(180deg,rgba(245,189,0,.15),rgba(245,189,0,.055));
  color:#fff4c2;
  border-radius:999px;
  padding:12px 18px;
  font:inherit;
  font-size:11px;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(245,189,0,.08);
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.catalog-back-button:hover,
.catalog-back-button:focus-visible{
  outline:none;
  transform:translateY(-1px);
  border-color:#f5bd00;
  background:linear-gradient(180deg,rgba(245,189,0,.23),rgba(245,189,0,.09));
  box-shadow:0 14px 30px rgba(245,189,0,.13);
}
.category-landing-mode{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch;
}
.brand-category-card{
  appearance:none;
  width:100%;
  min-height:170px;
  border:1.2px solid rgba(245,189,0,.52);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(10,12,18,.96) 0%,rgba(8,10,14,.99) 100%);
  color:var(--text);
  padding:0;
  text-align:left;
  display:flex;
  align-items:stretch;
  cursor:pointer;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:border-color .24s ease,transform .24s ease,box-shadow .24s ease,background .24s ease;
  box-shadow:0 12px 28px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.02);
}
.brand-category-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(90deg,rgba(6,8,12,.96) 0%,rgba(6,8,12,.93) 27%,rgba(6,8,12,.66) 44%,rgba(6,8,12,.18) 62%,rgba(6,8,12,0) 78%),
    linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0) 18%,rgba(0,0,0,.10) 100%);
  z-index:2;
}
.brand-category-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045), inset 0 0 0 1px rgba(255,255,255,.015);
  z-index:4;
}
.brand-category-card:hover,
.brand-category-card:focus-visible{
  outline:none;
  transform:translateY(-4px);
  border-color:rgba(245,189,0,.78);
  box-shadow:0 22px 40px rgba(0,0,0,.28),0 0 0 1px rgba(245,189,0,.12);
}
.brand-category-media,
.brand-category-media-glow,
.brand-category-content{position:relative;z-index:3;}
.brand-category-media{
  position:absolute;
  inset:0;
  background-repeat:no-repeat;
  background-size:cover;
  background-position:right center;
  opacity:.97;
  transform:scale(1.005);
  transition:transform .35s ease,opacity .28s ease,filter .28s ease;
  z-index:1;
}
.brand-category-media-glow{
  position:absolute;
  inset:auto 4% 8% auto;
  width:46%;
  height:74%;
  border-radius:999px;
  background:radial-gradient(circle at 55% 50%,rgba(245,189,0,.13),rgba(245,189,0,.04) 36%,rgba(245,189,0,0) 72%);
  filter:blur(16px);
  opacity:.82;
  z-index:1;
}
.brand-category-card:hover .brand-category-media,
.brand-category-card:focus-visible .brand-category-media{
  transform:scale(1.025);
  opacity:1;
  filter:brightness(1.04);
}
.brand-category-content{
  position:relative;
  z-index:3;
  width:min(52%,330px);
  min-height:170px;
  padding:18px 18px 16px 20px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-start;
}
.brand-category-dash{
  width:62px;
  height:2px;
  border-radius:999px;
  background:#f5bd00;
  box-shadow:0 0 14px rgba(245,189,0,.22);
  margin-top:0;
}
.brand-category-body{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:7px;
  margin:8px 0 10px;
}
.brand-category-card strong{
  font-size:clamp(20px,1.7vw,28px);
  line-height:1.02;
  letter-spacing:.065em;
  text-transform:uppercase;
  font-weight:520;
  margin:0;
  max-width:100%;
}
.brand-category-description{
  display:block;
  font-size:10px;
  line-height:1.35;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(239,243,255,.74);
}
.brand-category-meta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#f5bd00;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:10px;
  font-weight:760;
}
.brand-category-meta b{
  font-size:20px;
  font-weight:400;
  line-height:1;
  transform:translateY(-1px);
}
@media(max-width:1320px){
  .category-landing-mode{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:18px !important;}
}
@media(max-width:920px){
  .brand-category-card{min-height:156px;}
  .brand-category-content{width:min(56%,300px);min-height:156px;padding:16px 16px 14px 18px;}
  .brand-category-card strong{font-size:clamp(18px,3.2vw,24px);}
  .brand-category-dash{width:52px;}
}
@media(max-width:680px){
  .catalog-back-wrap{margin-bottom:14px;scroll-margin-top:105px;}
  .catalog-back-button{width:100%;justify-content:center;display:inline-flex;}
  .category-landing-mode{grid-template-columns:1fr !important;gap:12px !important;}
  .brand-category-card{min-height:150px;border-radius:16px;}
  .brand-category-card::before{
    background:
      linear-gradient(90deg,rgba(6,8,12,.95) 0%,rgba(6,8,12,.90) 33%,rgba(6,8,12,.55) 55%,rgba(6,8,12,.10) 74%,rgba(6,8,12,0) 88%),
      linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0) 18%,rgba(0,0,0,.10) 100%);
  }
  .brand-category-content{width:min(60%,255px);min-height:150px;padding:14px 14px 13px 15px;}
  .brand-category-dash{width:40px;}
  .brand-category-body{gap:6px;margin:6px 0 8px;}
  .brand-category-card strong{font-size:17px;letter-spacing:.055em;}
  .brand-category-description{font-size:7.8px;letter-spacing:.11em;line-height:1.3;}
  .brand-category-meta{font-size:7.9px;gap:6px;}
  .brand-category-meta b{font-size:17px;}
}
/* =========================================================
   v66 — more visible product breadcrumbs
   ========================================================= */
.product-breadcrumb{
  font-size:13px !important;
  gap:11px !important;
  margin:12px 0 20px !important;
  align-items:center;
  line-height:1.35;
}
.product-breadcrumb a{
  color:#b7b7b3 !important;
  font-weight:600;
  text-decoration:none;
}
.product-breadcrumb a:hover{
  color:#f5bd00 !important;
}
.product-breadcrumb span{
  color:#6f6f6b;
  font-size:15px;
  line-height:1;
}
.product-breadcrumb strong{
  color:#f2f2ef !important;
  font-size:13.5px;
  font-weight:800;
}
@media(max-width:620px){
  .product-breadcrumb{
    font-size:11.5px !important;
    gap:8px !important;
    margin:8px 0 14px !important;
  }
  .product-breadcrumb span{font-size:13px;}
  .product-breadcrumb strong{font-size:12px;}
}


/* v67 — Products hero brand rail */
.products-catalog-hero{
  padding:132px 0 34px !important;
}
.products-catalog-hero h1{
  margin-top:0 !important;
}
.products-catalog-hero p{
  max-width:820px !important;
  margin-bottom:0;
}
.products-brand-rail-shell{
  margin-top:30px;
  width:100%;
  overflow:hidden;
}
.products-brand-rail{
  display:flex;
  flex-wrap:nowrap;
  gap:0;
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  padding:0 0 8px;
  scrollbar-width:thin;
  scrollbar-color:rgba(245,189,0,.35) transparent;
  scroll-snap-type:x proximity;
}
.products-brand-rail::-webkit-scrollbar{height:5px}
.products-brand-rail::-webkit-scrollbar-track{background:transparent}
.products-brand-rail::-webkit-scrollbar-thumb{background:rgba(245,189,0,.32);border-radius:999px}

.products-brand-more{
  display:none;
  margin:8px auto 0;
  min-height:32px;
  border:0;
  background:transparent;
  color:#f5bd00;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:4px 10px;
  font:inherit;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
  opacity:0;
  transform:translateY(-2px);
  transition:opacity .2s ease,transform .2s ease,color .2s ease;
}
.products-brand-more b{
  font-size:21px;
  line-height:1;
  font-weight:400;
}
.products-brand-more.is-visible{
  display:flex;
  opacity:1;
  transform:translateY(0);
}
.products-brand-more:hover,
.products-brand-more:focus-visible{
  outline:none;
  color:#ffd85a;
}
.products-brand-chip{
  flex:1 0 172px;
  min-width:172px;
  height:108px;
  border:1px solid rgba(255,255,255,.12);
  border-right:0;
  background:#151719;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:15px 18px;
  scroll-snap-align:start;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.products-brand-chip:first-child{border-radius:13px 0 0 13px}
.products-brand-chip:last-child{border-right:1px solid rgba(255,255,255,.12);border-radius:0 13px 13px 0}
.products-brand-chip:hover,
.products-brand-chip.is-active{
  background:#1c1c1c;
  border-color:rgba(245,189,0,.58);
  box-shadow:inset 0 -2px 0 rgba(245,189,0,.85);
}
.products-brand-chip-logo{
  width:100%;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.products-brand-chip-logo img{
  display:block;
  width:auto;
  height:auto;
  max-width:140px;
  max-height:50px;
  object-fit:contain;
}
.products-brand-chip-logo strong{
  font-size:17px;
  line-height:1.1;
  text-align:center;
  color:#f3f3ef;
}
.products-brand-chip-subtitle{
  font-size:8px;
  line-height:1.2;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#7d7d79;
  white-space:nowrap;
  max-width:145px;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media(max-width:900px){
  .products-catalog-hero{padding:118px 0 28px !important;}
  .products-brand-rail{scrollbar-width:none;padding-bottom:2px;}
  .products-brand-rail::-webkit-scrollbar{display:none;}
  .products-brand-rail-shell{margin-top:24px;}
  .products-brand-chip{flex-basis:150px;min-width:150px;height:96px;padding:12px 14px;}
  .products-brand-chip-logo{height:48px;}
  .products-brand-chip-logo img{max-width:122px;max-height:44px;}
}
@media(max-width:620px){
  .products-catalog-hero{padding:106px 0 24px !important;}
  .products-catalog-hero h1{font-size:38px !important;}
  .products-catalog-hero p{font-size:13px;line-height:1.55;}
  .products-brand-chip{flex-basis:138px;min-width:138px;height:90px;}
  .products-brand-chip-logo img{max-width:112px;max-height:40px;}
  .products-brand-chip-subtitle{font-size:7px;max-width:118px;}
}


/* =========================================================
   v69 — mobile product catalogue cleanup
   - Desktop keeps the full brand/category sidebar.
   - Mobile removes the duplicate sidebar filters entirely.
   - MAG category heading stays on one line.
   - MAG category cards are shorter with clearer spacing.
   ========================================================= */
@media(max-width:760px){
  .catalog-shell{
    grid-template-columns:1fr !important;
    gap:0 !important;
    padding-top:30px !important;
  }
  .catalog-shell > .filters{
    display:none !important;
  }
}

@media(max-width:680px){
  .product-head.is-category-landing{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:end;
    padding-bottom:13px;
  }
  .product-head.is-category-landing .eyebrow{
    margin-bottom:5px;
  }
  .product-head.is-category-landing #catalogTitle{
    font-size:23px !important;
    line-height:1.05 !important;
    letter-spacing:-.035em !important;
    white-space:nowrap !important;
  }
  .product-head.is-category-landing .results{
    font-size:9px !important;
    line-height:1.2;
    white-space:nowrap;
    padding-bottom:2px;
  }

  .category-landing-mode{
    gap:16px !important;
    margin-top:18px !important;
  }
  .brand-category-card{
    height:112px !important;
    min-height:112px !important;
    max-height:112px !important;
    padding:9px 14px 10px !important;
    border-radius:14px !important;
    justify-content:center !important;
    gap:6px !important;
  }
  .brand-category-dash{
    width:32px !important;
    height:2px !important;
    margin:0 0 2px !important;
    flex:0 0 auto;
  }
  .brand-category-body{
    gap:3px !important;
    margin:0 !important;
    flex:0 0 auto;
  }
  .brand-category-card strong{
    font-size:15px !important;
    line-height:1.05 !important;
    letter-spacing:.055em !important;
  }
  .brand-category-description{
    font-size:7px !important;
    line-height:1.15 !important;
    letter-spacing:.12em !important;
  }
  .brand-category-meta{
    font-size:7.5px !important;
    gap:6px !important;
    margin-top:2px;
    flex:0 0 auto;
  }
  .brand-category-meta b{
    font-size:16px !important;
  }
}

@media(max-width:390px){
  .product-head.is-category-landing #catalogTitle{
    font-size:21px !important;
  }
  .product-head.is-category-landing .results{
    font-size:8px !important;
  }
}


/* =========================================================
   v71 — compact 2-up MAG category tiles on phones
   - Two square category tiles per row on modern phones.
   - Softer yellow stroke for a more premium, lower-contrast look.
   ========================================================= */
@media(max-width:680px){
  .category-landing-mode{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    margin-top:16px !important;
  }

  .brand-category-card{
    aspect-ratio:1 / 1 !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding:12px 8px 10px !important;
    border:1px solid rgba(245,189,0,.40) !important;
    border-radius:15px !important;
    justify-content:space-between !important;
    gap:5px !important;
    box-shadow:0 6px 18px rgba(0,0,0,.14),inset 0 0 0 1px rgba(255,255,255,.012) !important;
  }

  .brand-category-card:hover,
  .brand-category-card:focus-visible{
    border-color:rgba(245,189,0,.62) !important;
    transform:translateY(-2px) !important;
    box-shadow:0 10px 22px rgba(0,0,0,.18) !important;
  }

  .brand-category-dash{
    width:28px !important;
    height:2px !important;
    opacity:.82;
    margin:1px 0 0 !important;
  }

  .brand-category-body{
    gap:5px !important;
    margin:0 !important;
  }

  .brand-category-card strong{
    font-size:clamp(12px,3.45vw,15px) !important;
    line-height:1.08 !important;
    letter-spacing:.045em !important;
    max-width:100% !important;
  }

  .brand-category-description{
    font-size:clamp(6px,1.7vw,7px) !important;
    line-height:1.18 !important;
    letter-spacing:.09em !important;
    max-width:15ch;
  }

  .brand-category-meta{
    font-size:7px !important;
    gap:5px !important;
    margin-top:0 !important;
    letter-spacing:.09em !important;
  }

  .brand-category-meta b{
    font-size:15px !important;
  }
}

@media(max-width:360px){
  .category-landing-mode{
    gap:9px !important;
  }
  .brand-category-card{
    padding:10px 6px 9px !important;
  }
  .brand-category-card strong{
    font-size:11px !important;
  }
  .brand-category-description{
    font-size:5.8px !important;
  }
}


/* =========================================================
   v72 — two product cards per row on mobile catalogue
   - Keeps the product catalogue compact on phones.
   - Preserves image visibility and essential product info.
   ========================================================= */
@media(max-width:760px){
  .catalog-shell .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    margin-top:16px !important;
  }

  .catalog-shell .product-card{
    border-radius:13px !important;
    min-width:0;
  }

  .catalog-shell .product-card .product-visual,
  .catalog-shell .product-card .product-visual-link{
    height:152px !important;
    min-height:152px !important;
  }

  .catalog-shell .product-card .product-image,
  .catalog-shell .product-card .catalogue-product-image{
    max-width:88% !important;
    max-height:132px !important;
    padding:10px !important;
  }

  .catalog-shell .product-card .product-body{
    padding:12px 11px 13px !important;
  }

  .catalog-shell .product-card .brandline{
    font-size:6.8px !important;
    line-height:1.35 !important;
    letter-spacing:.10em !important;
    white-space:normal;
  }

  .catalog-shell .product-card .product-body h3{
    font-size:13px !important;
    line-height:1.18 !important;
    min-height:0 !important;
    margin:7px 0 8px !important;
  }

  .catalog-shell .product-card .product-body p{
    font-size:9px !important;
    line-height:1.42 !important;
    min-height:0 !important;
    margin:0 0 10px !important;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  .catalog-shell .product-card .stock,
  .catalog-shell .product-card .stock-row,
  .catalog-shell .product-card [class*="stock-"]{
    font-size:8px !important;
  }

  .catalog-shell .product-card .price{
    padding-top:10px !important;
    margin-top:10px !important;
  }

  .catalog-shell .product-card .price small{
    font-size:6.8px !important;
  }

  .catalog-shell .product-card .price strong{
    font-size:11px !important;
    line-height:1.25 !important;
  }
}

@media(max-width:390px){
  .catalog-shell .product-grid{
    gap:8px !important;
  }
  .catalog-shell .product-card .product-visual,
  .catalog-shell .product-card .product-visual-link{
    height:138px !important;
    min-height:138px !important;
  }
  .catalog-shell .product-card .product-image,
  .catalog-shell .product-card .catalogue-product-image{
    max-height:118px !important;
  }
  .catalog-shell .product-card .product-body{
    padding:10px 9px 11px !important;
  }
  .catalog-shell .product-card .product-body h3{
    font-size:12px !important;
  }
  .catalog-shell .product-card .product-body p{
    font-size:8.4px !important;
  }
}


/* =========================================================
   v73 — cleaner category/product view
   - Hide catalogue search + dealer-login toolbar on desktop and mobile.
   - Pull the category back button closer to the brand rail/hero.
   ========================================================= */
.products-catalog-hero + main.wrap > .toolbar{
  display:none !important;
}

.products-catalog-hero + main.wrap .catalog-shell{
  padding-top:28px !important;
}

.catalog-back-wrap:not(:empty){
  margin-top:-12px !important;
  margin-bottom:16px !important;
}

@media(max-width:760px){
  .products-catalog-hero + main.wrap .catalog-shell{
    padding-top:20px !important;
  }
  .catalog-back-wrap:not(:empty){
    margin-top:-8px !important;
    margin-bottom:14px !important;
  }
}


/* =========================================================
   v74 — mobile spacing refinement for MAG category pages
   - More breathing room below the category back button.
   - Clearer spacing between the MAG Theatron eyebrow and page title.
   ========================================================= */
@media(max-width:760px){
  .catalog-back-wrap:not(:empty){
    margin-bottom:28px !important;
  }

  .product-head > div:first-child > .eyebrow,
  .product-head.is-category-landing .eyebrow{
    display:block;
    margin-bottom:11px !important;
  }

  .product-head:not(.is-category-landing){
    padding-top:0 !important;
  }
}

/* =========================================================
   v77 — complete generated Screen Excellence previews
   Fixed screens are drawn as lightweight HTML/CSS diagrams.
   Motorised masking and retractable models animate on hover/tap.
   No catalogue image upload is required for these preview modes.
   ========================================================= */
.product-visual-link:has(.dcc-motion-preview){
  padding:0 !important;
  overflow:hidden;
}
.dcc-motion-preview{
  position:relative;
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 50% 38%,rgba(255,255,255,.98),rgba(244,244,241,.98) 72%,rgba(235,235,231,.98) 100%);
}
.dcc-motion-preview:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.026;
  pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E");
}
.dcc-screen-demo{
  position:relative;
  z-index:1;
  width:min(82%,440px);
  aspect-ratio:var(--dcc-screen-ratio,1.7778);
  display:block;
  filter:drop-shadow(0 12px 20px rgba(0,0,0,.16));
  transition:transform .28s ease;
}
.product-visual-link:hover .dcc-screen-demo,
.product-visual-link:focus-visible .dcc-screen-demo{
  transform:translateY(-2px);
}
.dcc-screen-frame{
  position:absolute;
  inset:0;
  display:block;
  overflow:hidden;
  background:#050505;
  border:clamp(5px,1.1vw,10px) solid #090909;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 0 0 1px rgba(0,0,0,.15);
}
.dcc-screen-surface{
  position:absolute;
  inset:0;
  z-index:1;
  display:block;
  background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.99),rgba(246,246,243,.98) 72%,rgba(235,235,231,.98) 100%);
}
.dcc-screen-surface:after,
.dcc-retract-surface:after{
  content:"";
  position:absolute;
  inset:0;
  opacity:.05;
  pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E");
}

/* Fixed-frame visual identities. */
.dcc-frame-reference{border-width:clamp(8px,1.45vw,14px)}
.dcc-frame-discovery{border-width:clamp(6px,1.05vw,10px)}
.dcc-frame-slim{border-width:clamp(2px,.42vw,4px)}
.dcc-frame-full{border:1.5px solid rgba(10,10,10,.72);background:#f4f4f1;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.dcc-frame-elegance{border:0;background:transparent;box-shadow:none}
.dcc-frame-elegance .dcc-surface-elegance{
  inset:0;
  background:linear-gradient(180deg,#999 0%,#5c5c5c 48%,#292929 100%);
}
.dcc-frame-curve{
  border:0;
  background:#050505;
  clip-path:polygon(0 5%,22% 2%,50% 0,78% 2%,100% 5%,100% 95%,78% 92%,50% 90%,22% 92%,0 95%);
  box-shadow:none;
}
.dcc-frame-curve .dcc-screen-surface{
  inset:7%;
  clip-path:polygon(0 4%,22% 1.5%,50% 0,78% 1.5%,100% 4%,100% 96%,78% 93.5%,50% 92%,22% 93.5%,0 96%);
}
.dcc-frame-curve .dcc-mask-left,
.dcc-frame-curve .dcc-mask-right{top:7%;bottom:7%}

/* Mask panels. */
.dcc-mask-panel{
  position:absolute;
  z-index:3;
  display:block;
  background:linear-gradient(90deg,#050505 0%,#0c0c0c 55%,#050505 100%);
  transition:transform var(--dcc-mask-speed,900ms) cubic-bezier(.16,.84,.32,1);
  will-change:transform;
  pointer-events:none;
}
.dcc-mask-left,.dcc-mask-right{
  top:0;
  bottom:0;
  width:var(--dcc-mask-travel,18%);
}
.dcc-mask-left{left:0;border-right:1px solid rgba(255,255,255,.06)}
.dcc-mask-right{right:0;border-left:1px solid rgba(255,255,255,.06)}
.dcc-mask-top,.dcc-mask-bottom{
  left:0;
  right:0;
  height:var(--dcc-mask-travel,18%);
  background:linear-gradient(#050505 0%,#0c0c0c 55%,#050505 100%);
}
.dcc-mask-top{top:0;border-bottom:1px solid rgba(255,255,255,.06)}
.dcc-mask-bottom{bottom:0;border-top:1px solid rgba(255,255,255,.06)}
.dcc-mask-full{width:50.2% !important}

/* Lateral opening: TAM 2L, TAM 2FC, Absolute, TAM 4 and MFR masking. */
.product-visual-link:hover :is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-left,
.product-visual-link:focus-visible :is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-left,
:is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr).is-motion-open .dcc-mask-left,
.product-motion-detail-stage:hover :is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-left{
  transform:translateX(-103%);
}
.product-visual-link:hover :is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-right,
.product-visual-link:focus-visible :is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-right,
:is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr).is-motion-open .dcc-mask-right,
.product-motion-detail-stage:hover :is(.dcc-motion-lr,.dcc-motion-lrfull,.dcc-motion-absolutefull,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-right{
  transform:translateX(103%);
}

/* Vertical opening: TAM 1, TAM 2TB, TAM 4 and MFR masking. */
.product-visual-link:hover :is(.dcc-motion-top,.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-top,
.product-visual-link:focus-visible :is(.dcc-motion-top,.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-top,
:is(.dcc-motion-top,.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr).is-motion-open .dcc-mask-top,
.product-motion-detail-stage:hover :is(.dcc-motion-top,.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-top{
  transform:translateY(-103%);
}
.product-visual-link:hover :is(.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-bottom,
.product-visual-link:focus-visible :is(.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-bottom,
:is(.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr).is-motion-open .dcc-mask-bottom,
.product-motion-detail-stage:hover :is(.dcc-motion-tb,.dcc-motion-four,.dcc-motion-retract-mfr) .dcc-mask-bottom{
  transform:translateY(103%);
}

/* Retractable screen diagrams. */
.dcc-retract-demo{
  position:relative;
  z-index:1;
  width:min(78%,430px);
  height:74%;
  display:block;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.15));
}
.dcc-retract-case{
  position:absolute;
  z-index:5;
  top:4%;
  left:4%;
  width:92%;
  height:10%;
  display:block;
  background:linear-gradient(#eee,#cfcfcb);
  border:2px solid #111;
  box-shadow:0 2px 0 rgba(0,0,0,.12);
}
.dcc-retract-case-line{
  position:absolute;
  left:4%;right:4%;bottom:-8px;height:8px;
  background:#0a0a0a;
}
.dcc-retract-drop{
  position:absolute;
  z-index:2;
  left:11%;
  top:18%;
  width:78%;
  height:72%;
  display:block;
  overflow:hidden;
  transform-origin:50% 0;
  transform:scaleY(.08);
  transition:transform var(--dcc-mask-speed,900ms) cubic-bezier(.16,.84,.32,1);
  background:#050505;
  border-left:3px solid #090909;
  border-right:3px solid #090909;
  box-shadow:0 0 0 1px rgba(0,0,0,.12);
}
.dcc-retract-blackdrop{
  position:absolute;
  z-index:2;
  left:0;right:0;top:0;height:18%;
  background:#080808;
}
.dcc-retract-surface{
  position:absolute;
  z-index:1;
  left:0;right:0;top:18%;bottom:6%;
  overflow:hidden;
  background:radial-gradient(circle at 50% 42%,#fff 0%,#f5f5f2 78%,#e7e7e2 100%);
}
.dcc-retract-bottom-bar{
  position:absolute;
  z-index:4;
  left:-2%;right:-2%;bottom:0;height:6%;
  background:#0a0a0a;
}
.dcc-tension{
  position:absolute;
  z-index:3;
  top:22%;bottom:7%;
  width:1px;
  background:rgba(30,30,30,.7);
  transform-origin:50% 0;
  transform:scaleY(.08);
  transition:transform var(--dcc-mask-speed,900ms) cubic-bezier(.16,.84,.32,1);
}
.dcc-tension-left{left:9%}.dcc-tension-right{right:9%}
.dcc-motion-retract-rts .dcc-retract-surface{background:linear-gradient(180deg,#fff,#f5f5f3)}
.dcc-motion-retract-mfr .dcc-retract-drop{border-left-width:5px;border-right-width:5px}
.dcc-motion-retract-mfr .dcc-retract-drop .dcc-mask-left,
.dcc-motion-retract-mfr .dcc-retract-drop .dcc-mask-right{top:18%;bottom:6%}
.dcc-motion-retract-mfr .dcc-retract-drop .dcc-mask-top{top:18%;left:0;right:0}
.dcc-motion-retract-mfr .dcc-retract-drop .dcc-mask-bottom{bottom:6%;left:0;right:0}
.dcc-motion-retract-mfr .dcc-mask-panel{transition-delay:120ms}
.product-visual-link:hover :is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr) .dcc-retract-drop,
.product-visual-link:focus-visible :is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr) .dcc-retract-drop,
:is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr).is-motion-open .dcc-retract-drop,
.product-motion-detail-stage:hover :is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr) .dcc-retract-drop,
.product-visual-link:hover :is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr) .dcc-tension,
.product-visual-link:focus-visible :is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr) .dcc-tension,
:is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr).is-motion-open .dcc-tension,
.product-motion-detail-stage:hover :is(.dcc-motion-retract-mediatime,.dcc-motion-retract-rts,.dcc-motion-retract-mfr) .dcc-tension{
  transform:scaleY(1);
}

.dcc-motion-hint{
  position:absolute;
  z-index:8;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  padding:5px 8px;
  border:1px solid rgba(20,20,20,.17);
  border-radius:999px;
  background:rgba(255,255,255,.9);
  color:#333;
  box-shadow:0 4px 14px rgba(0,0,0,.08);
  font-size:7px;
  font-weight:800;
  letter-spacing:.12em;
  white-space:nowrap;
  opacity:.72;
  transition:opacity .2s ease,transform .2s ease;
  pointer-events:none;
}
.product-visual-link:hover .dcc-motion-hint,
.product-visual-link:focus-visible .dcc-motion-hint,
.dcc-motion-preview.is-motion-open .dcc-motion-hint,
.product-motion-detail-stage:hover .dcc-motion-hint{
  opacity:0;
  transform:translate(-50%,3px);
}

/* Product detail page uses the same generated model preview. */
.product-main-image.has-motion-preview{padding:0}
.product-motion-detail-stage{
  position:absolute;
  inset:0;
  z-index:2;
  display:none;
  place-items:center;
  overflow:hidden;
  background:#fff;
  cursor:default;
}
.product-motion-detail-stage.visible{display:grid}
.product-motion-detail-stage.is-interactive{cursor:pointer}
.product-motion-detail-stage .dcc-motion-preview{width:100%;height:100%}
.product-motion-detail-stage .dcc-screen-demo{width:min(72%,620px)}
.product-motion-detail-stage .dcc-retract-demo{width:min(70%,610px);height:76%}
.product-main-image{position:relative}

/* v78 — touch devices auto-play the motorised preview that is currently in view.
   The desktop HOVER hint is intentionally hidden because touch has no hover state. */
@media (hover:none), (pointer:coarse){
  .dcc-motion-hint{display:none !important}
}

@media(max-width:760px){
  .dcc-screen-demo{width:84%}
  .dcc-frame-reference{border-width:7px}
  .dcc-frame-discovery{border-width:5px}
  .dcc-frame-slim{border-width:2px}
  .dcc-motion-hint{bottom:7px;padding:4px 6px;font-size:5.5px;letter-spacing:.08em}
  .product-motion-detail-stage .dcc-screen-demo{width:82%}
  .dcc-retract-demo{width:86%;height:72%}
  .product-motion-detail-stage .dcc-retract-demo{width:84%;height:74%}
}
@media(max-width:390px){
  .dcc-screen-demo{width:86%}
  .dcc-retract-demo{width:88%}
}
@media(prefers-reduced-motion:reduce){
  .dcc-mask-panel,.dcc-retract-drop,.dcc-tension{transition-duration:.01ms !important;transition-delay:0ms !important}
  .dcc-screen-demo{transition-duration:.01ms !important}
}

/* v79 — product showcase video supports YouTube or direct Media Library upload. */

/* v80 — showcase video autoplay.
   Videos are muted for browser-compliant autoplay and retain controls for user playback/unmute. */

/* V82 — CMS-managed photography for “What We Deliver” cards */
.solution.has-image{
  padding-top:286px;
  min-height:510px;
}
.solution.has-image::before{
  background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(32,34,37,.22) 53%,#202225 72%) !important;
  opacity:1 !important;
  z-index:1;
  pointer-events:none;
}
.solution .solution-media{
  position:absolute;
  inset:0 0 auto 0;
  height:54%;
  overflow:hidden;
  background:#111315;
  z-index:0;
}
.solution .solution-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.03) 50%,rgba(32,34,37,.42) 78%,#202225 100%);
  pointer-events:none;
}
.solution .solution-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  transform:scale(1.001);
  transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .4s ease;
  filter:saturate(.92) contrast(1.02) brightness(.92);
}
.solution.has-image:hover .solution-media img{
  transform:scale(1.035);
  filter:saturate(.96) contrast(1.03) brightness(.98);
}
.solution.has-image .num,
.solution.has-image h3,
.solution.has-image p,
.solution.has-image .link{
  z-index:2;
}
.solution.has-image .num{
  color:rgba(255,255,255,.72);
  text-shadow:0 1px 12px rgba(0,0,0,.75);
}
@media(max-width:1100px) and (min-width:761px){
  .solution.has-image{padding-top:260px;min-height:500px}
  .solution .solution-media{height:50%}
}
@media(max-width:760px){
  .solution.has-image{
    min-height:500px;
    padding-top:278px;
  }
  .solution .solution-media{height:54%}
}


/* V85 — Dealer login Phase 1 validation, recovery and inactive-account messaging */
.dealer-login-tools{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin:-2px 0 2px;
}
.dealer-forgot-link{
  appearance:none;
  border:0;
  background:transparent;
  padding:2px 0;
  color:#c9aa35;
  font:inherit;
  font-size:11px;
  cursor:pointer;
  text-decoration:none;
}
.dealer-forgot-link:hover{color:#f5bd00;text-decoration:underline}
.dealer-login-status,
.dealer-forgot-status{
  text-align:left;
}
.dealer-status-sub{color:#b7b7b4}
.dealer-status-link{
  display:inline-block;
  margin-top:5px;
  color:#f5bd00;
  font-weight:700;
  text-decoration:none;
}
.dealer-status-link:hover{text-decoration:underline}
.dealer-forgot-panel{
  margin-top:12px;
  padding:13px;
  border:1px solid rgba(245,189,0,.18);
  border-radius:12px;
  background:rgba(245,189,0,.035);
}
.dealer-forgot-panel[hidden]{display:none!important}
.dealer-forgot-title{
  color:#f5f5f3;
  font-size:13px;
  font-weight:700;
  margin-bottom:3px;
}
.dealer-forgot-copy{
  color:#8f8f8d;
  font-size:10.5px;
  line-height:1.45;
  margin-bottom:10px;
}
.dealer-forgot-field{margin-bottom:8px!important}
.dealer-forgot-check{
  width:100%;
  min-height:38px;
  border:1px solid rgba(245,189,0,.35);
  background:#151515;
  color:#f5bd00;
}
.dealer-forgot-check:hover{background:#1b1b1b;border-color:rgba(245,189,0,.55)}
body.dealer-page #login input:invalid:not(:placeholder-shown),
body.page-template-page-dealer #login input:invalid:not(:placeholder-shown),
body.page-template-page-dealer-php #login input:invalid:not(:placeholder-shown){
  border-color:rgba(205,93,93,.55);
}
@media(max-width:760px){
  .dealer-forgot-panel{padding:10px;margin-top:9px}
  .dealer-forgot-copy{font-size:9.5px}
  .dealer-forgot-link{font-size:10px}
}


/* v86 — dealer login error must always be visible after a login attempt */
body.dealer-page #dealer-login-status.error,
body.page-template-page-dealer #dealer-login-status.error,
body.page-template-page-dealer-php #dealer-login-status.error{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  min-height:42px;
  margin-top:10px !important;
  padding:10px 12px !important;
  color:#ffd6d6 !important;
  background:rgba(160,42,42,.18) !important;
  border:1px solid rgba(225,93,93,.42) !important;
}


/* v87 — robust dealer login Phase 1 feedback */
body.dealer-page #dealer-login-status.error,
body.page-template-page-dealer #dealer-login-status.error,
body.page-template-page-dealer-php #dealer-login-status.error{
  display:block!important;
}


/* v88 — cleaner, slightly larger dealer login error feedback */
body.dealer-page #dealer-login-status.error,
body.page-template-page-dealer #dealer-login-status.error,
body.page-template-page-dealer-php #dealer-login-status.error{
  font-size:12.5px !important;
  line-height:1.55 !important;
  padding:12px 14px !important;
  min-height:48px;
}
body.dealer-page #dealer-login-status.error .dealer-status-link,
body.page-template-page-dealer #dealer-login-status.error .dealer-status-link,
body.page-template-page-dealer-php #dealer-login-status.error .dealer-status-link{
  font-size:12px !important;
  margin-top:7px;
}
@media(max-width:760px){
  body.dealer-page #dealer-login-status.error,
  body.page-template-page-dealer #dealer-login-status.error,
  body.page-template-page-dealer-php #dealer-login-status.error{
    font-size:12px !important;
    padding:11px 12px !important;
  }
}


/* v89 — dealer recovery flow: hide prior login error and match feedback sizing */
body.dealer-page #dealer-forgot-status.error,
body.page-template-page-dealer #dealer-forgot-status.error,
body.page-template-page-dealer-php #dealer-forgot-status.error{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  min-height:48px;
  margin-top:10px !important;
  padding:12px 14px !important;
  color:#ffd6d6 !important;
  background:rgba(160,42,42,.18) !important;
  border:1px solid rgba(225,93,93,.42) !important;
  border-radius:10px;
  font-size:12.5px !important;
  line-height:1.55 !important;
}
body.dealer-page #dealer-forgot-status.error .dealer-status-link,
body.page-template-page-dealer #dealer-forgot-status.error .dealer-status-link,
body.page-template-page-dealer-php #dealer-forgot-status.error .dealer-status-link{
  font-size:12px !important;
  margin-top:7px;
}
@media(max-width:760px){
  body.dealer-page #dealer-forgot-status.error,
  body.page-template-page-dealer #dealer-forgot-status.error,
  body.page-template-page-dealer-php #dealer-forgot-status.error{
    font-size:12px !important;
    padding:11px 12px !important;
  }
}


/* =========================================================
   v92 — Dealer application helper text readability
   ========================================================= */
body.dealer-page #register .captcha-help,
body.page-template-page-dealer #register .captcha-help,
body.page-template-page-dealer-php #register .captcha-help,
body.dealer-page #register > .form-note,
body.page-template-page-dealer #register > .form-note,
body.page-template-page-dealer-php #register > .form-note{
  font-size:10.5px !important;
  line-height:1.4 !important;
}

body.dealer-page #register .captcha-help,
body.page-template-page-dealer #register .captcha-help,
body.page-template-page-dealer-php #register .captcha-help{
  margin-top:3px !important;
}

body.dealer-page #register > .form-note,
body.page-template-page-dealer #register > .form-note,
body.page-template-page-dealer-php #register > .form-note{
  margin-top:6px !important;
}


/* =========================================================
   v92 — scroll-to-top circular progress button.
   The circle progressively fills as the visitor scrolls down.
   Once the page reaches the bottom it glows, and clicking at
   any time scrolls smoothly back to the top.
   ========================================================= */
.dcc-scroll-top{
  --scroll-progress:0;
  position:fixed;
  right:max(18px, env(safe-area-inset-right));
  bottom:max(18px, calc(env(safe-area-inset-bottom) + 14px));
  width:58px;
  height:58px;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
  z-index:4200;
  display:grid;
  place-items:center;
  opacity:0;
  visibility:hidden;
  transform:translateY(12px) scale(.94);
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease,transform .22s ease;
}
.dcc-scroll-top.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}
.dcc-scroll-top-visual{
  position:relative;
  width:58px;
  height:58px;
  border-radius:50%;
  display:block;
  background:conic-gradient(from -90deg,#ffffff calc(var(--scroll-progress) * 1turn),rgba(255,255,255,.12) 0);
  box-shadow:0 12px 28px rgba(0,0,0,.24);
  transition:box-shadow .25s ease,transform .2s ease;
}
.dcc-scroll-top-core{
  position:absolute;
  inset:2px;
  border-radius:50%;
  border:1px solid rgba(17,17,17,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(242,242,242,.98));
}
.dcc-scroll-top-arrow{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#222;
  font-size:27px;
  line-height:1;
  font-weight:500;
  transform:translateY(-1px);
  transition:transform .2s ease,color .2s ease;
}
.dcc-scroll-top:hover .dcc-scroll-top-visual,
.dcc-scroll-top:focus-visible .dcc-scroll-top-visual{
  transform:translateY(-1px);
  box-shadow:0 16px 32px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.16);
}
.dcc-scroll-top:hover .dcc-scroll-top-arrow,
.dcc-scroll-top:focus-visible .dcc-scroll-top-arrow{transform:translateY(-3px)}
.dcc-scroll-top:focus-visible{outline:none}
.dcc-scroll-top:focus-visible .dcc-scroll-top-core{box-shadow:0 0 0 2px rgba(245,189,0,.5) inset}
.dcc-scroll-top.is-complete .dcc-scroll-top-visual{
  box-shadow:0 0 0 1px rgba(255,255,255,.14),0 0 18px rgba(255,255,255,.36),0 0 36px rgba(245,189,0,.28),0 16px 34px rgba(0,0,0,.32);
  animation:dccScrollTopGlow 1.6s ease-in-out infinite alternate;
}
@keyframes dccScrollTopGlow{
  from{transform:translateY(0) scale(1)}
  to{transform:translateY(-1px) scale(1.03)}
}
@media (max-width:760px){
  .dcc-scroll-top,.dcc-scroll-top-visual{width:54px;height:54px}
  .dcc-scroll-top-arrow{font-size:24px}
}
@media (prefers-reduced-motion:reduce){
  .dcc-scroll-top,.dcc-scroll-top-visual,.dcc-scroll-top-arrow{transition:none!important}
  .dcc-scroll-top.is-complete .dcc-scroll-top-visual{animation:none!important}
}


/* =========================================================
   v92 — book-a-demo expectation panel refresh.
   Replaces the old experience list with a clearer no-obligation
   message and a premium “What to expect” checklist.
   ========================================================= */
.demo-expectation-panel{display:flex;flex-direction:column;gap:22px;padding-top:4px}
.demo-expectation-title{font-size:clamp(34px,4.2vw,44px);letter-spacing:-.045em;line-height:1.02;margin:2px 0 0}
.demo-assurance{padding:0 0 4px}
.demo-assurance strong{display:block;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:#f4f2ea;margin-bottom:10px}
.demo-assurance p{margin:0;max-width:560px;color:#bebeb8;font-size:28px;line-height:1.45;font-style:italic;font-family:Georgia,"Times New Roman",serif}
.demo-what-to-expect{border:1px solid rgba(255,255,255,.08);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.022));padding:26px 26px 24px;box-shadow:0 16px 42px rgba(0,0,0,.18)}
.demo-what-head{font-size:13px;font-weight:850;letter-spacing:.16em;text-transform:uppercase;color:#ffffff;margin-bottom:18px}
.demo-what-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.demo-what-list li{position:relative;padding-left:22px;color:#e3e2dd;font-size:15px;line-height:1.55}
.demo-what-list li::before{content:"•";position:absolute;left:0;top:-1px;color:#f5bd00;font-size:24px;line-height:1}
@media(max-width:900px){.demo-assurance p{font-size:24px}.demo-what-to-expect{padding:22px}}
@media(max-width:760px){.demo-expectation-panel{gap:18px}.demo-expectation-title{font-size:34px}.demo-assurance p{font-size:21px;line-height:1.5}.demo-what-list li{font-size:14px}}


/* =========================================================
   v94 — homepage alignment cleanup.
   Restores the intended Latest-from-DCC card layout, aligns the
   carousel to the same content grid as the hero/section headings,
   and keeps the cinema demo CTA anchored cleanly at all widths.
   ========================================================= */

/* Latest from DCC: all section elements share one horizontal grid. */
#latest.updates{
  padding-left:0;
  padding-right:0;
}
#latest .updates-top,
#latest .news-window,
#latest .latest-nav-v83{
  width:min(var(--max),calc(100% - 64px));
  margin-left:auto;
  margin-right:auto;
}
#latest .updates-top{
  align-items:center;
  margin-bottom:18px;
}
#latest .updates-top > div{
  min-width:0;
}
#latest .latest-view-all{
  white-space:nowrap;
}
#latest .news-window{
  overflow:hidden;
}
#latest .news-track{
  gap:16px;
  padding:0 0 10px;
}

/* The PHP renderer now uses these matching v92 classes. Keep every
   card on the same height/baseline regardless of title length. */
#latest .article-card-v92{
  width:min(690px,70vw) !important;
  height:360px !important;
  flex:0 0 auto;
  align-items:stretch;
}
#latest .article-card-v92 .article-card-copy-v32{
  height:100%;
  box-sizing:border-box;
}
#latest .article-card-v92 .article-card-media-v92{
  height:auto !important;
  align-self:stretch;
}
#latest .article-card-v92 .article-card-media-v92:not(.article-card-logo-v92) img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
#latest .article-card-v92 .article-card-copy-v32 .news-content{
  min-height:0;
}
#latest .article-card-v92 .article-card-copy-v32 h3{
  min-height:0;
}
#latest .latest-nav-v83{
  margin-top:14px;
  justify-content:center;
}

/* Homepage cinema-demo CTA: left copy and right CTA remain aligned,
   without the previous oversized minimum width pushing the artwork. */
.home-demo-cta-v53 .wrap{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center !important;
  gap:clamp(36px,6vw,92px) !important;
}
.home-demo-cta-v53 .wrap > div:first-child{
  min-width:0;
}
.home-demo-cta-v53 .about-demo-shift-v61{
  min-width:0 !important;
  width:auto;
  margin:0 !important;
  justify-content:flex-end !important;
  gap:20px;
}
.home-demo-cta-v53 .about-demo-arrow-v61{
  width:104px;
  flex:0 0 104px;
}
.home-demo-cta-v53 .about-premium-demo-v62{
  width:330px;
  max-width:330px;
  flex:0 0 330px;
}

/* Footer columns keep their own width and line up from the same top edge. */
.footer .footer-grid{
  align-items:start;
}
.footer .footer-contact{
  min-width:0;
}

@media(max-width:1100px){
  .home-demo-cta-v53 .wrap{
    grid-template-columns:1fr;
    gap:30px !important;
  }
  .home-demo-cta-v53 .about-demo-shift-v61{
    justify-content:flex-start !important;
  }
}

@media(max-width:760px){
  #latest .updates-top,
  #latest .news-window,
  #latest .latest-nav-v83{
    width:calc(100% - 34px);
  }
  #latest .updates-top{
    align-items:flex-start;
    gap:10px;
  }
  #latest .article-card-v92{
    width:84vw !important;
    height:auto !important;
    min-height:535px !important;
  }
  #latest .article-card-v92 .article-card-media-v92:not(.article-card-logo-v92) img{
    object-fit:contain !important;
    background:#050607;
  }
  .home-demo-cta-v53 .about-demo-shift-v61{
    width:100%;
    gap:10px;
  }
  .home-demo-cta-v53 .about-demo-arrow-v61{
    width:72px;
    flex-basis:72px;
  }
  .home-demo-cta-v53 .about-premium-demo-v62{
    width:min(330px,calc(100vw - 120px));
    max-width:min(330px,calc(100vw - 120px));
    flex:1 1 auto;
  }
}


/* =========================================================
   v94 — Latest from DCC width + image-fit correction.
   Make the article strip breathe closer to full page width and
   ensure featured images sit cleanly inside their frames.
   ========================================================= */
#latest .updates-top,
#latest .news-window,
#latest .latest-nav-v83{
  width:min(1880px, calc(100% - 28px)) !important;
  max-width:none !important;
}
#latest .updates-top{
  margin-bottom:18px !important;
}
#latest .news-window{
  overflow:hidden;
}
#latest .news-track{
  gap:18px !important;
  padding:0 2px 12px !important;
}
#latest .article-card-v92{
  width:clamp(420px, 30.8vw, 560px) !important;
  max-width:560px !important;
  min-width:420px !important;
  height:358px !important;
  grid-template-columns:minmax(0, 1fr) 228px !important;
  border-radius:20px !important;
}
#latest .article-card-v92 .article-card-media-v92{
  margin:16px 16px 16px 0 !important;
  border-radius:16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#07090b !important;
}
#latest .article-card-v92 .article-card-media-v92:not(.article-card-logo-v92) img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#07090b !important;
  padding:10px !important;
  box-sizing:border-box !important;
}
#latest .article-card-v92 .article-card-copy-v32{
  padding:28px 20px 24px 28px !important;
}
#latest .article-card-v92 .article-card-copy-v32 h3{
  font-size:clamp(21px, 1.65vw, 28px) !important;
}
#latest .article-card-v92 .article-card-copy-v32 p{
  font-size:12.5px !important;
}
@media (min-width:1600px){
  #latest .updates-top,
  #latest .news-window,
  #latest .latest-nav-v83{
    width:calc(100% - 42px) !important;
  }
}
@media (max-width:1100px){
  #latest .updates-top,
  #latest .news-window,
  #latest .latest-nav-v83{
    width:calc(100% - 26px) !important;
  }
  #latest .article-card-v92{
    width:clamp(420px, 72vw, 560px) !important;
  }
}
@media (max-width:760px){
  #latest .updates-top,
  #latest .news-window,
  #latest .latest-nav-v83{
    width:calc(100% - 24px) !important;
  }
  #latest .news-track{
    gap:14px !important;
    padding:0 0 10px !important;
  }
  #latest .article-card-v92{
    width:84vw !important;
    min-width:0 !important;
    max-width:none !important;
    height:auto !important;
    min-height:535px !important;
    grid-template-columns:1fr !important;
    grid-template-rows:250px auto !important;
  }
  #latest .article-card-v92 .article-card-media-v92:not(.article-card-logo-v92) img{
    padding:12px !important;
  }
}


/* =========================================================
   v95 — Home hero vertical balance.
   Reduce the oversized gap above the eyebrow so the visual
   breathing room above and below the hero content feels equal.
   ========================================================= */
@media (min-width:901px){
  body.home-page .hero-inner{
    padding-top:48px !important;
    padding-bottom:48px !important;
  }
}


/* =========================================================
   v97 — Article-page footer demo CTA alignment.
   Keep the neon arrow and demo button together, give the copy
   enough room, and align the CTA cleanly below Contact.
   ========================================================= */
@media (min-width:1181px){
  body.dcc-article-archive-page .footer .footer-contact,
  body.dcc-article-cms-page .footer .footer-contact{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    min-width:0 !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .footer-demo-wrap-v51,
  body.dcc-article-cms-page .footer .footer-contact .footer-demo-wrap-v51{
    width:330px !important;
    max-width:330px !important;
    margin:30px 0 0 auto !important;
    padding:0 !important;
    min-height:76px !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .footer-demo-v51,
  body.dcc-article-cms-page .footer .footer-contact .footer-demo-v51{
    width:100% !important;
    min-height:76px !important;
    grid-template-columns:minmax(0,1fr) 42px !important;
    gap:12px !important;
    padding:14px 14px 14px 18px !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-copy-v51,
  body.dcc-article-cms-page .footer .footer-contact .demo-copy-v51{
    min-width:0 !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-copy-v51 small,
  body.dcc-article-cms-page .footer .footer-contact .demo-copy-v51 small{
    white-space:normal !important;
    font-size:7.5px !important;
    line-height:1.25 !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-copy-v51 strong,
  body.dcc-article-cms-page .footer .footer-contact .demo-copy-v51 strong{
    white-space:normal !important;
    font-size:13px !important;
    line-height:1.22 !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-action-v51,
  body.dcc-article-cms-page .footer .footer-contact .demo-action-v51{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    margin:0 !important;
    align-self:center !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-pointer-image-v54,
  body.dcc-article-cms-page .footer .footer-contact .demo-pointer-image-v54{
    display:block !important;
    right:calc(100% + 14px) !important;
    top:50% !important;
    width:108px !important;
    height:76px !important;
    transform:translateY(-50%) !important;
  }
}


/* =========================================================
   v97 — definitive article footer demo CTA alignment.
   Align the demo box to the LEFT EDGE of Contact instead of the
   page edge; keep sufficient text width so the action circle can
   never overlap the label. This intentionally overrides v96.
   ========================================================= */
@media (min-width:1181px){
  body.dcc-article-archive-page .footer .footer-grid,
  body.dcc-article-cms-page .footer .footer-grid{
    grid-template-columns:1.55fr .72fr .78fr 1.25fr !important;
    column-gap:54px !important;
  }

  body.dcc-article-archive-page .footer .footer-contact,
  body.dcc-article-cms-page .footer .footer-contact{
    display:block !important;
    min-width:0 !important;
    overflow:visible !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .footer-demo-wrap-v51,
  body.dcc-article-cms-page .footer .footer-contact .footer-demo-wrap-v51{
    position:relative !important;
    display:block !important;
    width:100% !important;
    max-width:360px !important;
    margin:30px 0 0 0 !important;
    padding:0 !important;
    min-height:76px !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .footer-demo-v51,
  body.dcc-article-cms-page .footer .footer-contact .footer-demo-v51{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 44px !important;
    align-items:center !important;
    gap:14px !important;
    width:100% !important;
    min-height:76px !important;
    margin:0 !important;
    padding:14px 14px 14px 18px !important;
    overflow:hidden !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-copy-v51,
  body.dcc-article-cms-page .footer .footer-contact .demo-copy-v51{
    min-width:0 !important;
    width:auto !important;
    overflow:hidden !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-copy-v51 small,
  body.dcc-article-cms-page .footer .footer-contact .demo-copy-v51 small{
    display:block !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:7px !important;
    letter-spacing:.14em !important;
    line-height:1.2 !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-copy-v51 strong,
  body.dcc-article-cms-page .footer .footer-contact .demo-copy-v51 strong{
    display:block !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    font-size:13px !important;
    line-height:1.2 !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-action-v51,
  body.dcc-article-cms-page .footer .footer-contact .demo-action-v51{
    position:static !important;
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    margin:0 !important;
    justify-self:end !important;
    align-self:center !important;
    transform:none !important;
  }

  body.dcc-article-archive-page .footer .footer-contact .demo-pointer-image-v54,
  body.dcc-article-cms-page .footer .footer-contact .demo-pointer-image-v54{
    display:block !important;
    position:absolute !important;
    right:calc(100% + 16px) !important;
    left:auto !important;
    top:50% !important;
    width:108px !important;
    height:74px !important;
    transform:translateY(-50%) !important;
    z-index:2 !important;
  }
}


/* =========================================================
   v98 — definitive article footer CTA fix.
   Previous article-only rules depended on a custom body class
   that WordPress did not reliably pass through get_header().
   Target WordPress's native archive/single body classes instead.
   ========================================================= */
@media (min-width:1181px){
  body.post-type-archive-dcc_article .footer .footer-grid,
  body.single-dcc_article .footer .footer-grid,
  body.dcc-article-archive-page .footer .footer-grid,
  body.dcc-article-cms-page .footer .footer-grid{
    grid-template-columns:1.45fr .70fr .74fr 1.42fr !important;
    column-gap:50px !important;
  }

  body.post-type-archive-dcc_article .footer .footer-contact,
  body.single-dcc_article .footer .footer-contact,
  body.dcc-article-archive-page .footer .footer-contact,
  body.dcc-article-cms-page .footer .footer-contact{
    min-width:0 !important;
    overflow:visible !important;
  }

  body.post-type-archive-dcc_article .footer .footer-demo-wrap-v51,
  body.single-dcc_article .footer .footer-demo-wrap-v51,
  body.dcc-article-archive-page .footer .footer-demo-wrap-v51,
  body.dcc-article-cms-page .footer .footer-demo-wrap-v51{
    display:block !important;
    position:relative !important;
    width:340px !important;
    max-width:none !important;
    min-width:340px !important;
    margin:30px 0 0 0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  body.post-type-archive-dcc_article .footer .footer-demo-v51,
  body.single-dcc_article .footer .footer-demo-v51,
  body.dcc-article-archive-page .footer .footer-demo-v51,
  body.dcc-article-cms-page .footer .footer-demo-v51{
    box-sizing:border-box !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 44px !important;
    align-items:center !important;
    gap:12px !important;
    width:340px !important;
    max-width:340px !important;
    min-width:340px !important;
    min-height:76px !important;
    margin:0 !important;
    padding:14px 14px 14px 18px !important;
    overflow:hidden !important;
  }

  body.post-type-archive-dcc_article .footer .demo-copy-v51,
  body.single-dcc_article .footer .demo-copy-v51,
  body.dcc-article-archive-page .footer .demo-copy-v51,
  body.dcc-article-cms-page .footer .demo-copy-v51{
    min-width:0 !important;
    overflow:hidden !important;
  }

  body.post-type-archive-dcc_article .footer .demo-copy-v51 small,
  body.single-dcc_article .footer .demo-copy-v51 small,
  body.dcc-article-archive-page .footer .demo-copy-v51 small,
  body.dcc-article-cms-page .footer .demo-copy-v51 small{
    display:block !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    font-size:7px !important;
    line-height:1.15 !important;
  }

  body.post-type-archive-dcc_article .footer .demo-copy-v51 strong,
  body.single-dcc_article .footer .demo-copy-v51 strong,
  body.dcc-article-archive-page .footer .demo-copy-v51 strong,
  body.dcc-article-cms-page .footer .demo-copy-v51 strong{
    display:block !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    max-width:100% !important;
  }

  body.post-type-archive-dcc_article .footer .demo-action-v51,
  body.single-dcc_article .footer .demo-action-v51,
  body.dcc-article-archive-page .footer .demo-action-v51,
  body.dcc-article-cms-page .footer .demo-action-v51{
    position:static !important;
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    margin:0 !important;
    transform:none !important;
    justify-self:end !important;
  }

  body.post-type-archive-dcc_article .footer .demo-pointer-image-v54,
  body.single-dcc_article .footer .demo-pointer-image-v54,
  body.dcc-article-archive-page .footer .demo-pointer-image-v54,
  body.dcc-article-cms-page .footer .demo-pointer-image-v54{
    display:block !important;
    position:absolute !important;
    right:calc(100% + 16px) !important;
    left:auto !important;
    top:50% !important;
    width:108px !important;
    height:74px !important;
    transform:translateY(-50%) !important;
  }
}


/* V101 — hidden-brand visibility is enforced consistently across desktop and mobile. */

/* =========================================================
   v103 — DCC Article SEO / AI-search presentation
   ========================================================= */
.dcc-article-cms-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.dcc-article-cms-meta a{color:#c6c8c7;text-decoration:underline;text-underline-offset:3px}
.dcc-article-cms-meta a:hover{color:#f5bd00}
.dcc-article-meta-sep{opacity:.55}
.dcc-article-takeaways,.dcc-article-faq,.dcc-article-related{width:min(840px,100%)}
.dcc-article-takeaways{margin:0 0 38px;padding:24px 26px;border:1px solid rgba(245,189,0,.28);border-radius:16px;background:rgba(245,189,0,.055)}
.dcc-article-takeaways h2,.dcc-article-faq>h2,.dcc-article-related>h2{margin:0 0 16px;color:#f2f2ef;font-size:24px;line-height:1.2;letter-spacing:-.02em}
.dcc-article-takeaways ul{margin:0;padding-left:21px;color:#d6d7d6;font-size:15px;line-height:1.68}
.dcc-article-takeaways li{margin:8px 0}
.dcc-article-faq{margin-top:54px;padding-top:34px;border-top:1px solid rgba(255,255,255,.1)}
.dcc-article-faq-item{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.dcc-article-faq-item h3{margin:0 0 8px;color:#f2f2ef;font-size:19px;line-height:1.32}
.dcc-article-faq-item p{margin:0;color:#b7bab9;font-size:15px;line-height:1.72}
.dcc-article-related{margin-top:56px;padding-top:34px;border-top:1px solid rgba(255,255,255,.1)}
.dcc-article-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dcc-article-related-card{display:flex;min-height:170px;flex-direction:column;padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#1a1c1e;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.dcc-article-related-card:hover{transform:translateY(-2px);border-color:rgba(245,189,0,.45);background:#1d1f21}
.dcc-article-related-card span{color:#f5bd00;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.dcc-article-related-card strong{margin-top:12px;color:#f2f2ef;font-size:16px;line-height:1.35}
.dcc-article-related-card small{margin-top:auto;padding-top:18px;color:#aeb1af;font-size:11px;font-weight:700}
@media(max-width:760px){
  .dcc-article-cms-meta{gap:5px;font-size:11px}
  .dcc-article-takeaways{margin-bottom:30px;padding:20px;border-radius:13px}
  .dcc-article-takeaways h2,.dcc-article-faq>h2,.dcc-article-related>h2{font-size:21px}
  .dcc-article-related-grid{grid-template-columns:1fr}
  .dcc-article-related-card{min-height:135px}
}

/* =========================================================
   v110 — MAG Theatron mobile focal-point correction
   Wide source artwork must not use background-size:cover inside the square
   two-up phone cards: cover crops most of the right-side product. Instead,
   scale each supplied hero image to a controlled width, anchor it to the
   right, and let the card's dark base fill the remaining space. Note: because
   these backgrounds are wider than their cards, LOWER background-position
   percentages move the artwork visually farther right.
   ========================================================= */
@media (max-width:680px){
  .brand-category-card{
    padding:0 !important;
    justify-content:flex-start !important;
    align-items:stretch !important;
    background:#080a0e !important;
  }

  .brand-category-card::before{
    background:
      linear-gradient(90deg,
        rgba(5,7,10,.98) 0%,
        rgba(5,7,10,.96) 28%,
        rgba(5,7,10,.82) 46%,
        rgba(5,7,10,.43) 62%,
        rgba(5,7,10,.10) 78%,
        rgba(5,7,10,0) 92%),
      linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.06) 100%) !important;
  }

  .brand-category-media{
    background-repeat:no-repeat !important;
    background-position:86% center !important;
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }

  .brand-category-card:hover .brand-category-media,
  .brand-category-card:focus-visible .brand-category-media{
    transform:none !important;
    filter:none !important;
  }

  .brand-category-media-glow{
    display:none !important;
  }

  .brand-category-content{
    position:relative !important;
    z-index:5 !important;
    box-sizing:border-box !important;
    width:58% !important;
    height:100% !important;
    min-height:0 !important;
    padding:12px 4px 11px 14px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    align-items:flex-start !important;
  }

  .brand-category-body{
    align-items:flex-start !important;
  }

  /* Individual sizes preserve the product silhouette rather than cropping it. */
  .brand-category-card--avalon .brand-category-media{
    background-size:150% auto !important;
    background-position:84% center !important;
  }
  .brand-category-card--main-speakers .brand-category-media{
    background-size:185% auto !important;
    background-position:84% center !important;
  }
  .brand-category-card--subwoofers .brand-category-media{
    background-size:185% auto !important;
    background-position:82% center !important;
  }
  .brand-category-card--surround-speakers .brand-category-media{
    background-size:180% auto !important;
    background-position:84% center !important;
  }
  .brand-category-card--amplifiers .brand-category-media{
    background-size:145% auto !important;
    background-position:84% center !important;
  }
  .brand-category-card--accessories .brand-category-media{
    background-size:180% auto !important;
    background-position:82% center !important;
  }
}

/* =========================================================
   v111 — Editable SEO brand introduction pages
   ========================================================= */
.brand-intro-page{background:#0d0d0d;min-height:70vh}
.brand-intro-hero{position:relative;overflow:hidden;padding:138px 0 72px;border-bottom:1px solid var(--line-soft);background:
  radial-gradient(circle at 82% 20%,rgba(245,189,0,.105),transparent 30%),
  linear-gradient(135deg,#0a0a0a 0%,#111315 50%,#0b0b0b 100%)}
.brand-intro-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 52%,rgba(245,189,0,.025) 52.2% 52.4%,transparent 52.7%)}
.brand-intro-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.7fr);align-items:center;gap:72px}
.brand-intro-copy{max-width:820px}
.brand-intro-copy .eyebrow{margin-bottom:14px}
.brand-intro-copy h1{font-size:clamp(46px,5.5vw,86px);line-height:.94;letter-spacing:-.045em;margin:0 0 24px;font-weight:720}
.brand-intro-copy p{max-width:780px;color:#b5b5b2;font-size:18px;line-height:1.7;margin:0}
.brand-intro-actions{margin-top:30px}
.brand-products-cta{display:inline-flex;align-items:center;gap:14px;border:1px solid rgba(245,189,0,.74);border-radius:999px;padding:13px 20px;background:linear-gradient(180deg,rgba(245,189,0,.13),rgba(245,189,0,.045));color:#fff7d1;text-transform:uppercase;letter-spacing:.075em;font-size:11px;font-weight:800;box-shadow:0 10px 28px rgba(245,189,0,.08);transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.brand-products-cta b{font-size:20px;line-height:1;font-weight:400;color:#f5bd00;transform:translateY(-1px)}
.brand-products-cta:hover,.brand-products-cta:focus-visible{outline:none;transform:translateY(-2px);border-color:#f5bd00;background:linear-gradient(180deg,rgba(245,189,0,.22),rgba(245,189,0,.075));box-shadow:0 15px 34px rgba(245,189,0,.13)}
.brand-intro-logo-panel{min-height:285px;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));display:flex;align-items:center;justify-content:center;padding:54px;box-shadow:0 26px 60px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.025)}
.brand-intro-logo-panel img{display:block;max-width:100%;max-height:145px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(0,0,0,.28))}
.brand-intro-content-section{padding:82px 0 88px}
.brand-intro-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:80px;align-items:start}
.brand-intro-content{max-width:900px}
.brand-intro-content h2{font-size:clamp(25px,2.35vw,36px);line-height:1.10;letter-spacing:-.02em;margin:0 0 18px;padding-top:44px;color:#f5f5f3}
.brand-intro-content h2:first-child{padding-top:0}
.brand-intro-content h3{font-size:24px;margin:36px 0 14px}
.brand-intro-content p,.brand-intro-content li{color:#b9b9b5;font-size:16px;line-height:1.78}
.brand-intro-content p{margin:0 0 20px}
.brand-intro-content ul,.brand-intro-content ol{padding-left:22px;margin:12px 0 24px}
.brand-intro-content a{color:#f5bd00;text-decoration:underline;text-underline-offset:3px}
.brand-intro-sidecard{position:sticky;top:115px;border:1px solid rgba(245,189,0,.26);border-radius:18px;padding:25px;background:linear-gradient(180deg,rgba(245,189,0,.055),rgba(255,255,255,.018));box-shadow:0 18px 42px rgba(0,0,0,.19)}
.brand-intro-sidecard>span{display:block;color:#f5bd00;font-size:9px;font-weight:800;letter-spacing:.16em;margin-bottom:13px}
.brand-intro-sidecard strong{display:block;font-size:23px;line-height:1.15;margin-bottom:12px}
.brand-intro-sidecard p{color:#9e9e9b;font-size:13px;line-height:1.65;margin:0 0 18px}
.brand-intro-sidecard a{display:inline-flex;align-items:center;gap:8px;color:#f5bd00;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.brand-intro-product-cta-section{padding:0 0 88px}
.brand-intro-product-cta-box{border:1px solid rgba(245,189,0,.30);border-radius:24px;padding:38px 42px;display:flex;justify-content:space-between;gap:40px;align-items:center;background:radial-gradient(circle at 100% 50%,rgba(245,189,0,.09),transparent 34%),linear-gradient(180deg,#121212,#0e0e0e);box-shadow:0 22px 50px rgba(0,0,0,.20)}
.brand-intro-product-cta-box h2{font-size:clamp(28px,3vw,42px);line-height:1.04;margin:9px 0 11px;letter-spacing:-.025em}
.brand-intro-product-cta-box p{margin:0;color:#a7a7a4;font-size:14px}
.brand-products-cta-large{flex:0 0 auto;padding:15px 23px}

@media(max-width:980px){
  .brand-intro-hero-grid{grid-template-columns:1fr;gap:40px}
  .brand-intro-logo-panel{min-height:210px;max-width:560px;width:100%;padding:42px}
  .brand-intro-content-grid{grid-template-columns:1fr;gap:45px}
  .brand-intro-sidecard{position:static;max-width:600px}
}
@media(max-width:680px){
  .brand-intro-hero{padding:112px 0 52px}
  .brand-intro-hero-grid{gap:28px}
  .brand-intro-copy h1{font-size:44px;margin-bottom:18px}
  .brand-intro-copy p{font-size:15px;line-height:1.65}
  .brand-products-cta{width:100%;justify-content:space-between;padding:13px 17px}
  .brand-intro-logo-panel{min-height:155px;border-radius:18px;padding:31px}
  .brand-intro-logo-panel img{max-height:94px}
  .brand-intro-content-section{padding:54px 0 58px}
  .brand-intro-content h2{font-size:24px;line-height:1.12;padding-top:32px}
  .brand-intro-content p,.brand-intro-content li{font-size:14px;line-height:1.72}
  .brand-intro-sidecard{padding:20px;border-radius:16px}
  .brand-intro-product-cta-section{padding-bottom:58px}
  .brand-intro-product-cta-box{padding:26px 22px;display:block;border-radius:18px}
  .brand-intro-product-cta-box p{font-size:13px;line-height:1.6}
  .brand-products-cta-large{margin-top:22px}
}


/* =========================================================
   v113 — Brand SEO landing page refinement
   - Removes the repeated generic professional-project side card.
   - Gives editable brand copy the full content width.
   - Brand-specific H1/H2 copy and top/bottom product CTAs remain intact.
   ========================================================= */
.brand-intro-content-grid{
  grid-template-columns:minmax(0,1fr) !important;
  gap:0 !important;
}
.brand-intro-content{
  max-width:980px !important;
}


/* =========================================================
   v115 — Compact floating brand landing video
   Smaller inline presentation with custom sound/fullscreen controls. Once the
   original video scrolls above the viewport it follows the visitor as a compact
   floating player. Media Library selection remains editable in WordPress.
   ========================================================= */
.brand-intro-video-section{
  padding:48px 0 8px;
  background:#0d0d0d;
}
.brand-intro-video-stage{
  width:min(100%,880px);
  aspect-ratio:16/9;
  margin:0 auto;
  position:relative;
}
.brand-intro-video-shell{
  position:absolute;
  inset:0;
  overflow:hidden;
  border:1px solid rgba(245,189,0,.28);
  border-radius:20px;
  background:#050505;
  box-shadow:0 22px 54px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.03);
  transition:width .24s ease,border-radius .24s ease,box-shadow .24s ease,transform .24s ease;
}
.brand-intro-video-shell::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.015),transparent 68%,rgba(0,0,0,.25));
  z-index:2;
}
.brand-intro-video-shell video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#050505;
}
.brand-intro-video-kicker{
  position:absolute;
  z-index:4;
  left:20px;
  bottom:17px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#f5bd00;
  font-size:8px;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
  text-shadow:0 2px 12px rgba(0,0,0,.85);
  pointer-events:none;
}
.brand-intro-video-kicker::before{
  content:"";
  width:25px;
  height:1px;
  background:#f5bd00;
}
.brand-intro-video-controls{
  position:absolute;
  z-index:6;
  right:14px;
  bottom:12px;
  display:flex;
  align-items:center;
  gap:8px;
}
.brand-intro-video-close{
  position:absolute;
  z-index:7;
  top:9px;
  right:9px;
  width:34px;
  height:34px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(5,7,10,.80);
  color:#fff;
  display:none;
  place-items:center;
  padding:0;
  cursor:pointer;
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  box-shadow:0 6px 18px rgba(0,0,0,.28);
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.brand-intro-video-close:hover,
.brand-intro-video-close:focus-visible{
  outline:none;
  background:rgba(20,20,20,.96);
  border-color:rgba(245,189,0,.76);
  transform:translateY(-1px);
}
.brand-intro-video-close svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
}
.brand-intro-video-control{
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(5,7,10,.76);
  color:#fff;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  box-shadow:0 6px 18px rgba(0,0,0,.24);
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.brand-intro-video-control:hover,
.brand-intro-video-control:focus-visible{
  outline:none;
  background:rgba(20,20,20,.94);
  border-color:rgba(245,189,0,.70);
  transform:translateY(-1px);
}
.brand-intro-video-control svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.brand-intro-video-control .icon-sound-on{display:none}
.brand-intro-video-control.is-unmuted .icon-sound-off{display:none}
.brand-intro-video-control.is-unmuted .icon-sound-on{display:block}

/* Floating player after the inline video has scrolled away. */
.brand-intro-video-shell.is-floating{
  position:fixed;
  inset:auto auto 24px 24px;
  width:clamp(280px,28vw,430px);
  aspect-ratio:16/9;
  height:auto;
  z-index:9990;
  border-radius:16px;
  border-color:rgba(245,189,0,.58);
  box-shadow:0 22px 58px rgba(0,0,0,.56),0 0 0 1px rgba(245,189,0,.08);
  animation:dccBrandVideoFloatIn .22s ease both;
}
.brand-intro-video-shell.is-floating .brand-intro-video-kicker{
  display:none;
}
.brand-intro-video-shell.is-floating .brand-intro-video-close{
  display:grid;
}
.brand-intro-video-shell.is-floating .brand-intro-video-controls{
  right:8px;
  bottom:8px;
  gap:6px;
}
.brand-intro-video-shell.is-floating .brand-intro-video-control{
  width:34px;
  height:34px;
}
@keyframes dccBrandVideoFloatIn{
  from{opacity:0;transform:translateY(10px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

@media(max-width:900px){
  .brand-intro-video-stage{width:min(100%,720px)}
}
@media(max-width:680px){
  .brand-intro-video-section{padding:28px 0 4px}
  .brand-intro-video-stage{width:100%;}
  .brand-intro-video-shell{border-radius:15px}
  .brand-intro-video-kicker{left:13px;bottom:12px;font-size:6.7px;letter-spacing:.10em;max-width:52%}
  .brand-intro-video-kicker::before{width:18px}
  .brand-intro-video-controls{right:9px;bottom:8px;gap:6px}
  .brand-intro-video-control{width:34px;height:34px}
  .brand-intro-video-control svg{width:16px;height:16px}
  .brand-intro-video-shell.is-floating{
    left:12px;
    bottom:18px;
    width:min(54vw,230px);
    min-width:178px;
    border-radius:12px;
  }
  .brand-intro-video-shell.is-floating .brand-intro-video-control{
    width:31px;
    height:31px;
  }
  .brand-intro-video-shell.is-floating .brand-intro-video-close{
    width:30px;
    height:30px;
    top:7px;
    right:7px;
  }
  .brand-intro-video-shell.is-floating .brand-intro-video-close svg{
    width:14px;
    height:14px;
  }
}
@media(max-width:390px){
  .brand-intro-video-shell.is-floating{
    width:min(58vw,214px);
    min-width:170px;
    left:10px;
    bottom:14px;
  }
}
@media(prefers-reduced-motion:reduce){
  .brand-intro-video-shell.is-floating{animation:none}
  .brand-intro-video-shell,.brand-intro-video-control{transition:none}
}

/* v116 — floating brand video close behaviour:
   Close is available only while floating. Dismissal lasts for the current page
   view only; the inline video keeps playing in its original page position. */


/* =========================================================
   v118 — Brand history milestone accents + refined section headings
   ========================================================= */
.brand-history-year{
  color:#f5bd00;
  font-weight:750;
  letter-spacing:.01em;
}


/* =========================================================
   v119 — Unified brand landing graphite canvas
   Match the editable brand/SEO pages to the brighter premium graphite palette
   used by the main Portfolio section. This is presentation-only and does not
   alter headings, page copy, links, metadata or Rank Math SEO data.
   ========================================================= */
.brand-intro-page,
.brand-intro-content-section,
.brand-intro-product-cta-section{
  background:#1a1c1e !important;
  background-image:none !important;
}
.brand-intro-hero{
  background:
    radial-gradient(circle at 84% 18%,rgba(245,189,0,.065),transparent 31%),
    linear-gradient(180deg,#1a1c1e 0%,#181a1c 100%) !important;
  border-bottom-color:rgba(255,255,255,.07) !important;
}
.brand-intro-video-section{
  background:#1a1c1e !important;
  background-image:none !important;
}
.brand-intro-logo-panel{
  background:#202225 !important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0)) !important;
  border-color:rgba(255,255,255,.10) !important;
  box-shadow:0 22px 50px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025) !important;
}
.brand-intro-product-cta-box{
  background:
    radial-gradient(circle at 100% 50%,rgba(245,189,0,.075),transparent 36%),
    linear-gradient(180deg,#202225,#1d1f21) !important;
  border-color:rgba(245,189,0,.30) !important;
  box-shadow:0 20px 46px rgba(0,0,0,.16) !important;
}


/* =========================================================
   v123 — Acurus SEO integration image
   Uses the approved Acurus ecosystem artwork supplied by DCC without
   modifying the image. The responsive figure supports the integration and
   Made-in-USA section while preserving page speed and mobile layout.
   ========================================================= */
.brand-seo-figure-acurus{
  margin:34px 0 10px;
  width:100%;
  max-width:980px;
}
.brand-seo-figure-acurus img{
  display:block;
  width:100%;
  height:auto;
  border-radius:18px;
  border:1px solid rgba(245,189,0,.22);
  box-shadow:0 18px 42px rgba(0,0,0,.20);
}
@media(max-width:680px){
  .brand-seo-figure-acurus{margin:24px 0 6px;}
  .brand-seo-figure-acurus img{border-radius:14px;}
}


/* =========================================================
   v124 — Aragon SEO landing imagery
   Exact DCC-supplied Aragon Elements and Indy Audio Labs marks are presented
   as editorial brand-history/product-family artwork. Desktop uses restrained
   side-by-side panels; mobile stacks cleanly without affecting reading order.
   ========================================================= */
.brand-seo-figure-aragon{
  margin:30px 0 20px;
  width:100%;
  max-width:980px;
  border:1px solid rgba(245,189,0,.20);
  border-radius:18px;
  background:linear-gradient(180deg,#202225,#1d1f21);
  box-shadow:0 18px 42px rgba(0,0,0,.18);
  overflow:hidden;
}
.brand-seo-figure-aragon-inner{
  display:grid;
  grid-template-columns:minmax(180px,260px) minmax(0,1fr);
  align-items:center;
  gap:28px;
  padding:28px 30px;
}
.brand-seo-figure-aragon--ial .brand-seo-figure-aragon-inner{
  grid-template-columns:minmax(210px,300px) minmax(0,1fr);
}
.brand-seo-figure-aragon-media{
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  border-radius:14px;
  background:rgba(0,0,0,.16);
}
.brand-seo-figure-aragon-media img{
  display:block;
  max-width:100%;
  max-height:180px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.brand-seo-figure-aragon--elements .brand-seo-figure-aragon-media img{
  max-height:190px;
}
.brand-seo-figure-aragon-copy .eyebrow{
  margin-bottom:10px;
}
.brand-seo-figure-aragon-copy strong{
  display:block;
  color:#f5f5f3;
  font-size:clamp(20px,2vw,28px);
  line-height:1.16;
  margin-bottom:8px;
}
.brand-seo-figure-aragon-copy p{
  margin:0;
  color:rgba(239,243,255,.70);
  font-size:15px;
  line-height:1.65;
}
@media(max-width:680px){
  .brand-seo-figure-aragon{margin:22px 0 16px;border-radius:14px;}
  .brand-seo-figure-aragon-inner,
  .brand-seo-figure-aragon--ial .brand-seo-figure-aragon-inner{
    grid-template-columns:1fr;
    gap:16px;
    padding:20px 18px;
  }
  .brand-seo-figure-aragon-media{min-height:120px;padding:8px;}
  .brand-seo-figure-aragon--elements .brand-seo-figure-aragon-media img{max-height:155px;}
  .brand-seo-figure-aragon--ial .brand-seo-figure-aragon-media img{max-height:120px;}
  .brand-seo-figure-aragon-copy strong{font-size:20px;}
  .brand-seo-figure-aragon-copy p{font-size:14px;line-height:1.55;}
}


/* =========================================================
   v125 — Acurus mobile integration artwork visibility
   Keep the SEO/integration image visible on iPhone/mobile and avoid native
   lazy-loading edge cases on cached mobile renders.
   ========================================================= */
@media (max-width:760px){
  .brand-seo-figure-acurus{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    max-width:100% !important;
    margin:24px 0 18px !important;
    overflow:visible !important;
    content-visibility:visible !important;
  }
  .brand-seo-figure-acurus img{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    aspect-ratio:1448/1086;
    object-fit:contain !important;
    border-radius:14px !important;
  }
}


/* =========================================================
   v129 — Product sharing
   Secondary sharing controls sit below the primary WhatsApp enquiry CTA so
   enquiry remains visually dominant. The share tray is compact on desktop
   and converts to a touch-friendly 3-column grid on phones.
   ========================================================= */
.product-share-zone{
  margin-top:12px;
  max-width:390px;
  position:relative;
}
.product-share-toggle{
  appearance:none;
  border:1px solid #343434;
  background:#121212;
  color:#c9c9c7;
  min-height:42px;
  padding:10px 14px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  font:inherit;
  font-size:10px;
  line-height:1;
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease;
}
.product-share-toggle svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.product-share-toggle:hover,
.product-share-toggle:focus-visible,
.product-share-toggle[aria-expanded="true"]{
  outline:none;
  color:#f5bd00;
  border-color:rgba(245,189,0,.66);
  background:#17150d;
  transform:translateY(-1px);
}
.product-share-panel{
  margin-top:9px;
  padding:14px;
  border:1px solid #2d2d2d;
  border-radius:15px;
  background:linear-gradient(180deg,#151515,#0f0f0f);
  box-shadow:0 18px 40px rgba(0,0,0,.24);
}
.product-share-panel[hidden]{display:none!important}
.product-share-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:11px;
}
.product-share-head strong{
  color:#efefec;
  font-size:11px;
  font-weight:750;
  letter-spacing:.01em;
}
.product-share-head span{
  color:#686866;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.12em;
  white-space:nowrap;
}
.product-share-options{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
}
.product-share-option{
  min-width:0;
  min-height:66px;
  border:1px solid #292929;
  border-radius:11px;
  background:#101010;
  color:#a9a9a7;
  text-decoration:none;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-size:7.5px;
  font-weight:700;
  letter-spacing:.035em;
  transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease;
}
.product-share-option svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.product-share-option:hover,
.product-share-option:focus-visible{
  outline:none;
  color:#f5bd00;
  border-color:rgba(245,189,0,.58);
  background:#17150d;
  transform:translateY(-1px);
}
.product-share-option .share-icon-fill{fill:currentColor;stroke:none}
.product-share-copy{
  appearance:none;
  width:100%;
  border:0;
  border-top:1px solid #252525;
  background:transparent;
  color:#8f8f8d;
  margin-top:11px;
  padding:10px 2px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  font:inherit;
  font-size:8.5px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.product-share-copy:hover,
.product-share-copy:focus-visible{outline:none;color:#f5bd00}
.product-share-copy svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.product-share-status{
  min-height:13px;
  margin-top:7px;
  color:#8e8e8b;
  font-size:8px;
  line-height:1.35;
}
html[data-theme="light"] .product-share-toggle,
html[data-theme="light"] .product-share-option,
html[data-theme="light"] .product-share-panel{background:#f7f7f5;border-color:#dadad6;color:#494947}
html[data-theme="light"] .product-share-head strong{color:#161616}

@media(max-width:620px){
  .product-share-zone{max-width:none;width:100%;margin-top:10px}
  .product-share-toggle{width:100%;min-height:44px;border-radius:12px}
  .product-share-panel{padding:12px;border-radius:13px}
  .product-share-head{align-items:center;margin-bottom:10px}
  .product-share-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .product-share-option{min-height:64px;font-size:8px}
  .product-share-option:nth-child(4),.product-share-option:nth-child(5){min-height:60px}
}


/* =========================================================
   v130 — Rich social sharing for products + DCC Articles
   LinkedIn's share composer reliably accepts the URL/preview but does not
   guarantee that a website can pre-fill the user's commentary. DCC therefore
   copies a polished suggested caption when LinkedIn is pressed, then opens
   LinkedIn. Article sharing uses the same compact, mobile-ready control.
   ========================================================= */
.article-share-zone{max-width:560px;margin:14px 0 24px}
.article-share-zone .product-share-toggle{background:rgba(255,255,255,.018)}
.article-share-zone .product-share-panel{background:linear-gradient(180deg,#1b1b1b,#131313)}
.article-share-zone .product-share-head span{color:#7d7d79}
@media(max-width:620px){.article-share-zone{max-width:none;width:100%;margin:12px 0 20px}}

/* v131 — hotfix: restore product-page JavaScript rendering after v130 LinkedIn caption syntax issue. */


/* =========================================================
   v135 — Home Cinema UAE / Dubai answer-led SEO & AI visibility
   Natural-language questions are used instead of repeating exact-match
   keyword strings. The section is intentionally compact, useful and
   responsive so it helps visitors as well as search/AI systems.
   ========================================================= */
.home-cinema-intent-v135{
  padding:78px 0;
  background:#181a1b;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.home-cinema-intent-v135 .intent-head-v135{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
  gap:52px;
  align-items:end;
  margin-bottom:30px;
}
.home-cinema-intent-v135 .intent-head-v135 h2{
  margin:8px 0 0;
  max-width:780px;
  color:#f4f4f1;
  font-size:clamp(32px,3.1vw,52px);
  line-height:1.04;
  letter-spacing:-.045em;
}
.home-cinema-intent-v135 .intent-head-v135>p{
  margin:0;
  color:#a9acab;
  font-size:16px;
  line-height:1.72;
}
.home-cinema-intent-v135 .intent-faq-v135{
  border-top:1px solid rgba(255,255,255,.11);
}
.home-cinema-intent-v135 details{
  border-bottom:1px solid rgba(255,255,255,.1);
  padding:0;
}
.home-cinema-intent-v135 summary{
  list-style:none;
  cursor:pointer;
  position:relative;
  padding:23px 46px 23px 0;
  color:#f1f2ef;
  font-size:19px;
  font-weight:700;
  line-height:1.35;
}
.home-cinema-intent-v135 summary::-webkit-details-marker{display:none}
.home-cinema-intent-v135 summary::after{
  content:'+';
  position:absolute;
  right:3px;
  top:50%;
  transform:translateY(-50%);
  color:#f5bd00;
  font-size:25px;
  font-weight:400;
  line-height:1;
}
.home-cinema-intent-v135 details[open] summary::after{content:'−'}
.home-cinema-intent-v135 .intent-answer-v135{
  max-width:1050px;
  padding:0 48px 24px 0;
  color:#b7bab8;
  font-size:16px;
  line-height:1.78;
}
.home-cinema-intent-v135 .intent-answer-v135 a{
  color:#f5bd00;
  text-decoration:none;
  border-bottom:1px solid rgba(245,189,0,.35);
}
.home-cinema-intent-v135 .intent-actions-v135{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.home-cinema-intent-v135 .intent-link-v135{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border:1px solid rgba(245,189,0,.42);
  border-radius:999px;
  color:#f4f4f1;
  text-decoration:none;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:border-color .18s ease,background .18s ease,color .18s ease;
}
.home-cinema-intent-v135 .intent-link-v135:hover{
  border-color:#f5bd00;
  background:rgba(245,189,0,.08);
  color:#f5bd00;
}
.demo-local-seo-v135{
  max-width:760px;
  margin:16px 0 0;
  color:#aeb0ae;
  font-size:14px;
  line-height:1.65;
}
.demo-local-seo-v135 strong{color:#f1f1ee;font-weight:650}
.about-local-seo-v135{
  margin-top:18px;
  padding:20px 22px;
  border:1px solid rgba(245,189,0,.22);
  border-radius:16px;
  background:rgba(245,189,0,.035);
}
.about-local-seo-v135 strong{
  display:block;
  margin-bottom:6px;
  color:#f5bd00;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.about-local-seo-v135 p{
  margin:0;
  max-width:950px;
  color:#b7bab8;
  font-size:15px;
  line-height:1.72;
}
@media(max-width:760px){
  .home-cinema-intent-v135{padding:54px 0}
  .home-cinema-intent-v135 .intent-head-v135{grid-template-columns:1fr;gap:16px;margin-bottom:20px}
  .home-cinema-intent-v135 .intent-head-v135 h2{font-size:34px;line-height:1.08}
  .home-cinema-intent-v135 .intent-head-v135>p{font-size:14px;line-height:1.65}
  .home-cinema-intent-v135 summary{padding:19px 38px 19px 0;font-size:16px}
  .home-cinema-intent-v135 .intent-answer-v135{padding:0 8px 20px 0;font-size:14px;line-height:1.72}
  .home-cinema-intent-v135 .intent-actions-v135{display:grid;grid-template-columns:1fr;margin-top:22px}
  .home-cinema-intent-v135 .intent-link-v135{width:100%;min-height:46px}
  .demo-local-seo-v135{font-size:13px;line-height:1.6}
  .about-local-seo-v135{padding:17px 18px;border-radius:14px}
  .about-local-seo-v135 p{font-size:14px;line-height:1.67}
}
