
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');
:root{--red:#C51F2B;--red2:#D63A45;--ink:#111820;--muted:#66717c;--line:#dfe5eb;--grey:#f4f6f8;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Montserrat,Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.topbar{height:30px;background:#0a0f15;color:#aeb8c2;padding:0 5vw;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.18em;text-transform:uppercase}.header{position:sticky;top:0;z-index:50;height:84px;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);border-bottom:1px solid #edf0f3;display:flex;align-items:center;padding:0 5vw;gap:30px}.brand img{width:172px;max-height:48px;object-fit:contain}
.mainnav{display:flex;align-items:center;gap:24px;margin-left:auto;height:100%}.nav-item{height:100%;display:flex;align-items:center;position:relative}.nav-item button,.nav-link{border:0;background:none;font-weight:600;color:#25303b;font-size:13px;cursor:pointer;padding:30px 0;position:relative}.nav-item button span{margin-left:5px;color:var(--red2)}.nav-link:after,.nav-item button:after{content:"";position:absolute;left:0;right:100%;bottom:21px;height:2px;background:var(--red2);transition:right .22s}.nav-link:hover:after,.nav-item:hover button:after{right:0}
.mega{position:absolute;left:-35px;top:84px;width:590px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:0 0 18px 18px;box-shadow:0 28px 60px rgba(16,24,40,.13);opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s;padding:24px}.has-menu:hover .mega,.has-menu:focus-within .mega{opacity:1;visibility:visible;transform:none}.mega>div:first-child{padding:6px 18px 8px 4px}.mega small,.mega-feature span{display:block;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#8a95a0;font-weight:700;margin-bottom:14px}.mega a{display:block;padding:12px 8px;border-radius:10px}.mega a:hover{background:#f4f7fa}.mega b{display:block;font-size:13px;margin-bottom:2px}.mega a span{display:block;color:#75808a;font-size:11px}.mega-feature{border-left:1px solid var(--line);padding:8px 4px 8px 24px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,#f8fbff,#edf4fb);border-radius:12px}.mega-feature strong{font-size:22px;line-height:1.15;letter-spacing:-.03em;margin-bottom:16px}.mega-feature a{font-size:12px;font-weight:700;color:var(--red2)}
.header-cta{background:var(--red);color:#fff;border-radius:999px;padding:13px 20px;font-size:12px;font-weight:700;box-shadow:0 8px 22px rgba(31,91,165,.18)}.mobile-toggle{display:none;background:none;border:0;font-size:23px;color:#17202a}
.hero,.pagehero{max-width:var(--max);margin:auto;padding:95px 30px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.hero{min-height:710px}.pagehero{display:block;padding-top:120px;padding-bottom:90px}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#7e8893;font-weight:700;margin-bottom:18px}.blue{color:var(--red2)}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(52px,6.8vw,86px);line-height:1;letter-spacing:-.06em;font-weight:600}h1 span,h2 span{color:var(--red2)}h2{font-size:clamp(38px,5vw,62px);line-height:1.04;letter-spacing:-.055em;font-weight:600}p{color:var(--muted)}.hero>div:first-child>p,.pagehero>p{font-size:18px;line-height:1.8;max-width:660px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;font-size:12px;font-weight:700;border:1px solid transparent;transition:.25s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--red);color:#fff;box-shadow:0 12px 26px rgba(31,91,165,.18)}.outline{border-color:#cfd8e1;color:#24303b;background:#fff}.dark{background:#111820;color:#fff}.ticks{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px;color:#65717d;font-size:10px}
.hero-art{height:450px;border-radius:26px;background:linear-gradient(145deg,#f7faff,#e8f0f8);display:grid;place-items:center;border:1px solid #dbe5ef}.device{width:72%;max-width:360px;background:#101720;color:#fff;border-radius:24px;padding:22px;box-shadow:0 30px 50px rgba(20,40,60,.18)}.device-top{font-size:9px;letter-spacing:.13em;color:#aeb9c4}.device-top i{display:inline-block;width:7px;height:7px;background:#59c784;border-radius:50%;margin-right:7px}.screen{height:180px;margin:22px 0;background:radial-gradient(circle,rgba(81,150,234,.34),transparent 46%),#0a0f15;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring{width:70px;height:70px;border:7px solid #6aa8ff;border-left-color:transparent;border-radius:50%;box-shadow:0 0 35px rgba(106,168,255,.35)}.screen strong{margin-top:12px;font-size:15px;letter-spacing:.12em}.screen small{color:#8e9aa5;font-size:9px}.stats{display:grid;gap:8px;font-size:9px;color:#91a0ad}.stats span{display:flex;justify-content:space-between}.stats b{color:#f0f3f6}
.trust{display:grid;grid-template-columns:repeat(3,1fr);max-width:1160px;margin:-20px auto 0;border:1px solid var(--line)}.trust>div{padding:27px 30px;border-right:1px solid var(--line)}.trust>div:last-child{border-right:0}.trust b{display:block;font-size:13px;margin-bottom:5px}.trust span{display:block;color:#7c8791;font-size:11px}
.section{max-width:var(--max);margin:auto;padding:120px 30px}.grey{background:var(--grey);max-width:none;padding-left:max(30px,calc((100% - 1160px)/2));padding-right:max(30px,calc((100% - 1160px)/2))}.section-head{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:55px}.section-head>p{max-width:420px}.cards,.audiences{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards>a,.cards>div,.audiences>a,.audiences>div{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;min-height:280px;display:flex;flex-direction:column;transition:.25s}.cards>a:hover,.audiences>a:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,35,50,.08)}.cards span,.audiences small{color:var(--red2);font-size:10px;letter-spacing:.17em}.cards h3,.audiences h3{font-size:27px;margin:34px 0 8px}.cards p,.audiences p{font-size:13px}.cards b,.audiences b{margin-top:auto;font-size:12px}.method{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.darkcard{background:#111820;color:#fff;border-radius:24px;padding:48px}.darkcard h2{color:#fff}.darkcard h2 span{color:#8fc0ff}.darkcard p{color:#b5c0ca}.darkcard a{font-weight:700;font-size:12px;color:#84b8fb}.steps{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.steps>div{border-top:1px solid var(--line);padding:20px 0}.steps span{font-size:10px;color:var(--red2)}.steps h4{margin:26px 0 7px;font-size:18px}.steps p{font-size:12px}.quote{margin:30px;min-height:420px;background:#111820;color:#fff;border-radius:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.quote h2{color:#fff;font-size:clamp(52px,7vw,88px)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:100px}.prose p{font-size:15px;line-height:1.85}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-info{display:flex;flex-direction:column;gap:12px;margin-top:35px;font-weight:700}.contact-info a:first-child{color:var(--red2)}.form{border:1px solid var(--line);border-radius:20px;padding:30px;background:#fff;box-shadow:0 18px 50px rgba(20,35,50,.07)}.form label{display:block;font-size:11px;font-weight:700;margin-bottom:18px}.form input:not([type=checkbox]),.form select,.form textarea{width:100%;margin-top:7px;border:1px solid #d7e0e8;border-radius:10px;padding:13px 14px;background:#fbfcfd;color:#15202b}.form input:focus,.form select:focus,.form textarea:focus{border-color:#7ea7d2;box-shadow:0 0 0 3px rgba(83,133,184,.11)}.check{display:flex!important;gap:8px;color:#68737d;font-weight:500!important}.hidden{display:none!important}footer{border-top:1px solid var(--line);background:#f7f9fb;padding:60px 5vw 28px}.footer-main{display:grid;grid-template-columns:1.35fr .7fr .8fr;gap:60px}.footer-logo{width:170px;filter:brightness(.3)}.footer-main p{max-width:340px;font-size:13px}.footer-main small{display:block;font-size:9px;letter-spacing:.15em;color:#8a95a0;font-weight:700;margin-bottom:14px}.footer-main a,.footer-main span{display:block;color:#66737f;font-size:12px;margin:8px 0}.footer-bottom{border-top:1px solid var(--line);margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;color:#87919a;font-size:10px}
@media(max-width:900px){.mainnav{display:none}.header-cta{display:none}.mobile-toggle{display:block;margin-left:auto}.mainnav.mobile-open{display:flex;position:absolute;left:0;right:0;top:84px;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:10px 20px;border-bottom:1px solid var(--line);box-shadow:0 22px 40px rgba(20,35,50,.10)}.mainnav.mobile-open .nav-link,.mainnav.mobile-open .nav-item button{padding:15px 0;text-align:left;width:100%}.mainnav.mobile-open .mega{position:static;width:auto;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-radius:0;padding:8px 0}.mainnav.mobile-open .has-menu.open-mobile .mega{display:grid}.hero{grid-template-columns:1fr;padding:80px 20px}.hero-art{height:340px}.trust,.cards,.audiences,.method,.two,.contact{grid-template-columns:1fr;margin-left:20px;margin-right:20px}.trust>div{border-right:0;border-bottom:1px solid var(--line)}.section,.pagehero{padding:80px 20px}.grey{padding-left:20px;padding-right:20px}.section-head{display:block}.section-head>p{margin-top:15px}.footer-main{grid-template-columns:1fr;gap:35px}.footer-bottom{flex-direction:column}}

/* DOMIRIS V2 — brand-forward typography */
.header .nav-link,
.nav-item button,
.header-cta,
.eyebrow.blue,
.hero h1 span,
.pagehero h1 span,
h2 span,
.cards h3,
.audiences h3,
.cards b,
.audiences b,
.steps span,
.darkcard a,
.contact-info a:first-child {
  color: var(--red) !important;
}
.brand img {
  width: 205px;
  max-height: 58px;
}
.header .brand {
  display:flex;
  align-items:center;
}
.header {
  gap: 34px;
}
.hero > div:first-child > p,
.pagehero > p,
.prose p,
.cards p,
.audiences p,
.trust span,
.steps p,
.footer-main p,
.footer-main a,
.footer-main span,
.contact-info span {
  color: #5f6c78;
}
.header-cta {
  background: var(--red);
  color: #fff !important;
}
@media (max-width:900px){
  .brand img{width:185px;max-height:54px}
}

.faq details{border-top:1px solid var(--line);padding:22px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;font-size:16px;font-weight:600;color:#23303c;position:relative;padding-right:35px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'+';position:absolute;right:0;top:-4px;color:var(--red);font-size:24px;font-weight:400}
.faq details[open] summary:after{content:'−'}
.faq details p{margin:14px 0 0;max-width:820px;font-size:13px;line-height:1.8}
@media(max-width:900px){.faq summary{font-size:15px}}

/* DOMIRIS V4 — white / black / red responsive refinements */
body{overflow-x:hidden}
h1 span,h2 span,.blue,.eyebrow.blue,.cards span,.audiences small,.steps span,.cards b,.audiences b,.darkcard a,.contact-info a:first-child,.header .nav-link,.nav-item button{
  color:var(--red)!important;
}
.header-cta{background:var(--red)!important;border-color:var(--red)!important}
.primary{background:var(--red)!important;box-shadow:0 12px 26px rgba(197,31,43,.18)}
.nav-link:after,.nav-item button:after{background:var(--red)!important}
.mega-feature a{color:var(--red)!important}
.ring{border-color:var(--red2);border-left-color:transparent;box-shadow:0 0 35px rgba(197,31,43,.25)}
@media(max-width:900px){
  .topbar{display:none}
  .header{height:76px;padding:0 16px;gap:16px}
  .brand img{width:178px;max-width:55vw;height:auto}
  .mobile-toggle{display:block;margin-left:auto}
  .mainnav.mobile-open{top:76px;max-height:calc(100vh - 76px);overflow:auto}
  .mainnav.mobile-open .mega{display:none;grid-template-columns:1fr;gap:12px}
  .mainnav.mobile-open .mega-feature{border-left:0;border-top:1px solid var(--line);padding:16px 8px}
  .mainnav.mobile-open .has-menu.open-mobile .mega{display:grid}
  .hero{padding:62px 18px 48px;gap:32px}
  .hero-art{height:310px}
  .hero>div:first-child>p,.pagehero>p{font-size:16px;line-height:1.7}
  .ticks{font-size:9px;gap:8px 14px}
  .section,.pagehero{padding:68px 18px}
  .section-head{margin-bottom:36px}
  h1{font-size:clamp(42px,12vw,58px)}
  h2{font-size:clamp(34px,9vw,48px)}
  .cards,.audiences,.method,.two,.contact,.trust{grid-template-columns:1fr;margin-left:0;margin-right:0}
  .trust{margin:0 18px}
  .trust>div{border-right:0;border-bottom:1px solid var(--line)}
  .trust>div:last-child{border-bottom:0}
  .darkcard{padding:32px 24px}
  .cards>a,.cards>div,.audiences>a,.audiences>div{min-height:240px;padding:24px}
  .quote{margin:18px;min-height:330px;padding:28px 18px}
  .quote h2{font-size:clamp(42px,11vw,64px)}
  .form{padding:24px 20px}
  .footer-main{grid-template-columns:1fr;gap:26px}
}
.privacy-inline{font-size:10px;color:#68737d;margin-left:4px}.privacy-inline a{color:var(--red);text-decoration:underline;font-weight:600}
/* DOMIRIS V7 — mobile menu redesign */
@media (max-width: 900px){

  .header{
    height:74px !important;
    min-height:74px !important;
    padding:0 16px !important;
    position:sticky !important;
    top:0 !important;
    z-index:200 !important;
  }

  .brand img{
    width:176px !important;
    max-width:63vw !important;
    max-height:54px !important;
  }

  .mobile-toggle,
  .menu{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:44px !important;
    height:44px !important;
    margin-left:auto !important;
    border:1px solid rgba(17,24,32,.12) !important;
    border-radius:14px !important;
    background:#fff !important;
    color:#111820 !important;
    font-size:21px !important;
    line-height:1 !important;
    cursor:pointer;
  }

  .nav,
  .mainnav{
    display:none !important;
  }

  .nav.mobile-open,
  .mainnav.mobile-open{
    display:block !important;
    position:fixed !important;
    top:74px !important;
    left:0 !important;
    right:0 !important;
    height:calc(100dvh - 74px) !important;
    max-height:none !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
    background:#ffffff !important;
    border-top:1px solid #e8edf0 !important;
    box-shadow:0 24px 60px rgba(18,28,38,.16) !important;
    padding:10px 14px 26px !important;
    z-index:190 !important;
  }

  .nav > a,
  .nav-drop > button,
  .mainnav > a,
  .mainnav .nav-drop > button{
    width:100% !important;
    min-height:54px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    padding:15px 8px !important;
    border:0 !important;
    border-bottom:1px solid #edf0f2 !important;
    background:#fff !important;
    color:#1f2a34 !important;
    font-size:15px !important;
    font-weight:700 !important;
    text-align:left !important;
  }

  .nav > a:after,
  .nav-drop > button:after,
  .mainnav > a:after,
  .mainnav .nav-drop > button:after{
    display:none !important;
  }

  .nav-drop,
  .mainnav .nav-drop{
    display:block !important;
    height:auto !important;
    width:100% !important;
  }

  .nav-drop > button span{
    width:30px !important;
    height:30px !important;
    border-radius:10px !important;
    background:#f6f8fa !important;
    color:#c51f2b !important;
    display:grid !important;
    place-items:center !important;
    font-size:15px !important;
    flex:0 0 30px;
    transition:transform .2s ease, background .2s ease;
  }

  .nav-drop.open-mobile > button span,
  .nav-drop.open > button span{
    transform:rotate(180deg);
    background:#fff0f1 !important;
  }

  .mega,
  .nav-drop .mega{
    position:static !important;
    display:none !important;
    width:100% !important;
    max-width:none !important;
    grid-template-columns:1fr !important;
    gap:4px !important;
    margin:6px 0 10px !important;
    padding:8px !important;
    border:1px solid #eceff1 !important;
    border-radius:16px !important;
    background:#fafbfc !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    overflow:hidden !important;
  }

  .nav-drop.open-mobile .mega,
  .nav-drop.open .mega{
    display:grid !important;
  }

  .mega-main{
    padding:4px !important;
  }

  .mega-main > small,
  .menu-section span{
    display:block !important;
    padding:7px 8px 8px !important;
    font-size:9px !important;
    letter-spacing:.16em !important;
    color:#89949d !important;
  }

  .mega-main a{
    display:block !important;
    padding:13px 12px !important;
    margin:2px 0 !important;
    border-radius:12px !important;
    background:#fff !important;
  }

  .mega-main b{
    font-size:13px !important;
  }

  .mega-main span{
    display:block !important;
    margin-top:3px !important;
    font-size:10px !important;
    line-height:1.45 !important;
    color:#7a8791 !important;
  }

  .mega-feature{
    margin:6px 0 0 !important;
    padding:18px !important;
    border-radius:14px !important;
    border:1px solid #f0d8da !important;
    background:linear-gradient(145deg,#fff8f8,#fff) !important;
  }

  .mega-feature strong{
    font-size:19px !important;
    max-width:none !important;
  }

  .mega-feature p{
    font-size:11px !important;
    line-height:1.6 !important;
  }

  .mega-feature a{
    display:inline-flex !important;
    margin-top:6px !important;
    padding:10px 13px !important;
    border-radius:999px !important;
    background:#c51f2b !important;
    color:#fff !important;
    font-size:11px !important;
  }

  .header-cta,
  .cta-head,
  .nav-cta{
    display:none !important;
  }

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

@media (max-width:390px){
  .brand img{
    width:154px !important;
  }
  .nav.mobile-open,
  .mainnav.mobile-open{
    padding-left:10px !important;
    padding-right:10px !important;
  }
}

/* =========================================================
   DOMIRIS V8 — NAVIGATION COLOR SYSTEM
   Correct selectors for .mainnav / .nav-item / .has-menu
   ========================================================= */

:root{
  --domiris-red:#c51f2b;
  --domiris-red-dark:#9f1621;
  --domiris-navy:#0d1721;
  --domiris-navy-2:#132331;
  --domiris-navy-3:#1b2d3c;
  --domiris-text:#f4f7f9;
}

/* Desktop header */
.header{
  background:#fff !important;
  border-bottom:1px solid #e6ebef !important;
}
.mainnav{
  color:#1d2832 !important;
}
.mainnav .nav-link,
.mainnav .nav-item > button{
  color:#1f2b35 !important;
}
.mainnav .nav-item > button span{
  color:var(--domiris-red) !important;
}
.mainnav .nav-link:after,
.mainnav .nav-item > button:after{
  background:var(--domiris-red) !important;
}
.header-cta{
  background:var(--domiris-red) !important;
  color:#fff !important;
}
.mobile-toggle{
  color:var(--domiris-red) !important;
  border-color:rgba(197,31,43,.22) !important;
}

/* Desktop mega-menu: dark premium panel */
@media (min-width:901px){
  .mainnav .mega{
    background:var(--domiris-navy) !important;
    border:1px solid #263747 !important;
    box-shadow:0 28px 70px rgba(8,14,20,.28) !important;
    border-radius:18px !important;
    padding:12px !important;
    color:#fff !important;
  }

  .mainnav .mega > div:first-child{
    padding:12px 14px 12px 10px !important;
  }

  .mainnav .mega small{
    color:#8997a3 !important;
    letter-spacing:.18em !important;
  }

  .mainnav .mega a{
    color:#fff !important;
    border-radius:12px !important;
    padding:13px 12px !important;
  }

  .mainnav .mega a:hover{
    background:var(--domiris-navy-2) !important;
  }

  .mainnav .mega b{
    color:#fff !important;
    font-size:13px !important;
  }

  .mainnav .mega a span{
    color:#a8b5bf !important;
  }

  .mainnav .mega-feature{
    border-left:1px solid #2b3d4c !important;
    background:
      radial-gradient(circle at 90% 10%, rgba(197,31,43,.28), transparent 32%),
      linear-gradient(145deg,#172633,#101b26) !important;
    border-radius:13px !important;
    padding:22px !important;
  }

  .mainnav .mega-feature span{
    color:#ff7d87 !important;
  }

  .mainnav .mega-feature strong{
    color:#fff !important;
  }

  .mainnav .mega-feature p{
    color:#a9b5bf !important;
  }

  .mainnav .mega-feature a{
    display:inline-flex !important;
    width:max-content !important;
    background:var(--domiris-red) !important;
    color:#fff !important;
    border-radius:999px !important;
    padding:10px 14px !important;
  }

  .mainnav .mega-feature a:hover{
    background:#df3642 !important;
  }
}

/* Mobile menu: deep navy drawer with red accents */
@media (max-width:900px){
  .header{
    height:74px !important;
    min-height:74px !important;
    background:#fff !important;
  }

  .mobile-toggle{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:46px !important;
    height:46px !important;
    border:1px solid rgba(197,31,43,.25) !important;
    border-radius:13px !important;
    background:#fff !important;
    color:var(--domiris-red) !important;
    font-size:22px !important;
  }

  .mainnav{
    display:none !important;
  }

  .mainnav.mobile-open{
    display:flex !important;
    position:fixed !important;
    inset:74px 0 0 0 !important;
    height:calc(100dvh - 74px) !important;
    max-height:none !important;
    overflow-y:auto !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:12px 14px 30px !important;
    background:var(--domiris-navy) !important;
    border-top:1px solid #263747 !important;
    box-shadow:0 24px 70px rgba(0,0,0,.32) !important;
    z-index:500 !important;
  }

  .mainnav.mobile-open > .nav-link,
  .mainnav.mobile-open > .nav-item > button{
    min-height:58px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    padding:16px 10px !important;
    background:var(--domiris-navy) !important;
    color:#f5f7f8 !important;
    border:0 !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
    font-size:15px !important;
    font-weight:700 !important;
    text-align:left !important;
  }

  .mainnav.mobile-open > .nav-link:active,
  .mainnav.mobile-open > .nav-item > button:active{
    background:var(--domiris-navy-2) !important;
  }

  .mainnav.mobile-open .nav-item{
    display:block !important;
    height:auto !important;
    width:100% !important;
  }

  .mainnav.mobile-open .nav-item > button span{
    width:31px !important;
    height:31px !important;
    flex:0 0 31px;
    display:grid !important;
    place-items:center !important;
    border-radius:10px !important;
    background:rgba(197,31,43,.12) !important;
    color:#ff747e !important;
    margin-left:auto !important;
  }

  .mainnav.mobile-open .nav-item.open-mobile > button,
  .mainnav.mobile-open .nav-item.open > button{
    color:#fff !important;
  }

  .mainnav.mobile-open .nav-item.open-mobile > button span,
  .mainnav.mobile-open .nav-item.open > button span{
    background:var(--domiris-red) !important;
    color:#fff !important;
    transform:rotate(180deg);
  }

  .mainnav.mobile-open .mega{
    position:static !important;
    display:none !important;
    width:100% !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
    margin:6px 0 10px !important;
    padding:9px !important;
    background:var(--domiris-navy-2) !important;
    border:1px solid #2a3f4f !important;
    border-radius:16px !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .mainnav.mobile-open .nav-item.open-mobile .mega,
  .mainnav.mobile-open .nav-item.open .mega{
    display:grid !important;
  }

  .mainnav.mobile-open .mega > div:first-child{
    padding:4px !important;
  }

  .mainnav.mobile-open .mega small{
    color:#8696a3 !important;
    padding:8px 8px 4px !important;
  }

  .mainnav.mobile-open .mega a{
    background:#182b3b !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.05) !important;
    border-radius:12px !important;
    padding:14px 12px !important;
  }

  .mainnav.mobile-open .mega a:hover{
    background:#20394d !important;
  }

  .mainnav.mobile-open .mega b{
    color:#fff !important;
    font-size:13px !important;
  }

  .mainnav.mobile-open .mega a span{
    color:#9eacb7 !important;
    display:block !important;
    margin-top:3px !important;
    font-size:10px !important;
    line-height:1.45 !important;
  }

  .mainnav.mobile-open .mega-feature{
    margin:4px 0 0 !important;
    border:0 !important;
    border-top:1px solid #304657 !important;
    border-left:0 !important;
    border-radius:13px !important;
    background:
      radial-gradient(circle at 92% 5%,rgba(197,31,43,.24),transparent 34%),
      #0f1d29 !important;
    padding:17px !important;
  }

  .mainnav.mobile-open .mega-feature span{
    color:#ff7a83 !important;
  }

  .mainnav.mobile-open .mega-feature strong{
    color:#fff !important;
    font-size:19px !important;
  }

  .mainnav.mobile-open .mega-feature p{
    color:#a4b1bc !important;
    font-size:11px !important;
  }

  .mainnav.mobile-open .mega-feature a{
    display:inline-flex !important;
    background:var(--domiris-red) !important;
    color:#fff !important;
    border-radius:999px !important;
    margin-top:5px !important;
  }

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

/* DOMIRIS V7 — mobile menu redesign */
@media (max-width: 900px){

  .header{
    height:74px !important;
    min-height:74px !important;
    padding:0 16px !important;
    position:sticky !important;
    top:0 !important;
    z-index:200 !important;
  }

  .brand img{
    width:176px !important;
    max-width:63vw !important;
    max-height:54px !important;
  }

  .mobile-toggle,
  .menu{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:44px !important;
    height:44px !important;
    margin-left:auto !important;
    border:1px solid rgba(17,24,32,.12) !important;
    border-radius:14px !important;
    background:#fff !important;
    color:#111820 !important;
    font-size:21px !important;
    line-height:1 !important;
    cursor:pointer;
  }

  .nav,
  .mainnav{
    display:none !important;
  }

  .nav.mobile-open,
  .mainnav.mobile-open{
    display:block !important;
    position:fixed !important;
    top:74px !important;
    left:0 !important;
    right:0 !important;
    height:calc(100dvh - 74px) !important;
    max-height:none !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
    background:#ffffff !important;
    border-top:1px solid #e8edf0 !important;
    box-shadow:0 24px 60px rgba(18,28,38,.16) !important;
    padding:10px 14px 26px !important;
    z-index:190 !important;
  }

  .nav > a,
  .nav-drop > button,
  .mainnav > a,
  .mainnav .nav-drop > button{
    width:100% !important;
    min-height:54px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    padding:15px 8px !important;
    border:0 !important;
    border-bottom:1px solid #edf0f2 !important;
    background:#fff !important;
    color:#1f2a34 !important;
    font-size:15px !important;
    font-weight:700 !important;
    text-align:left !important;
  }

  .nav > a:after,
  .nav-drop > button:after,
  .mainnav > a:after,
  .mainnav .nav-drop > button:after{
    display:none !important;
  }

  .nav-drop,
  .mainnav .nav-drop{
    display:block !important;
    height:auto !important;
    width:100% !important;
  }

  .nav-drop > button span{
    width:30px !important;
    height:30px !important;
    border-radius:10px !important;
    background:#f6f8fa !important;
    color:#c51f2b !important;
    display:grid !important;
    place-items:center !important;
    font-size:15px !important;
    flex:0 0 30px;
    transition:transform .2s ease, background .2s ease;
  }

  .nav-drop.open-mobile > button span,
  .nav-drop.open > button span{
    transform:rotate(180deg);
    background:#fff0f1 !important;
  }

  .mega,
  .nav-drop .mega{
    position:static !important;
    display:none !important;
    width:100% !important;
    max-width:none !important;
    grid-template-columns:1fr !important;
    gap:4px !important;
    margin:6px 0 10px !important;
    padding:8px !important;
    border:1px solid #eceff1 !important;
    border-radius:16px !important;
    background:#fafbfc !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    overflow:hidden !important;
  }

  .nav-drop.open-mobile .mega,
  .nav-drop.open .mega{
    display:grid !important;
  }

  .mega-main{
    padding:4px !important;
  }

  .mega-main > small,
  .menu-section span{
    display:block !important;
    padding:7px 8px 8px !important;
    font-size:9px !important;
    letter-spacing:.16em !important;
    color:#89949d !important;
  }

  .mega-main a{
    display:block !important;
    padding:13px 12px !important;
    margin:2px 0 !important;
    border-radius:12px !important;
    background:#fff !important;
  }

  .mega-main b{
    font-size:13px !important;
  }

  .mega-main span{
    display:block !important;
    margin-top:3px !important;
    font-size:10px !important;
    line-height:1.45 !important;
    color:#7a8791 !important;
  }

  .mega-feature{
    margin:6px 0 0 !important;
    padding:18px !important;
    border-radius:14px !important;
    border:1px solid #f0d8da !important;
    background:linear-gradient(145deg,#fff8f8,#fff) !important;
  }

  .mega-feature strong{
    font-size:19px !important;
    max-width:none !important;
  }

  .mega-feature p{
    font-size:11px !important;
    line-height:1.6 !important;
  }

  .mega-feature a{
    display:inline-flex !important;
    margin-top:6px !important;
    padding:10px 13px !important;
    border-radius:999px !important;
    background:#c51f2b !important;
    color:#fff !important;
    font-size:11px !important;
  }

  .header-cta,
  .cta-head,
  .nav-cta{
    display:none !important;
  }

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

@media (max-width:390px){
  .brand img{
    width:154px !important;
  }
  .nav.mobile-open,
  .mainnav.mobile-open{
    padding-left:10px !important;
    padding-right:10px !important;
  }
}

/* ===== DOMIRIS V9 — FORCE DARK NAV / MEGA MENU ===== */
:root{
  --dm-red:#c51f2b;
  --dm-red-bright:#e33a46;
  --dm-black:#090f15;
  --dm-navy:#0d1721;
  --dm-navy2:#142432;
  --dm-navy3:#1b3041;
  --dm-white:#ffffff;
  --dm-grey:#aebac3;
}

/* Desktop */
@media (min-width:901px){
  .header .mainnav .mega{
    background:var(--dm-navy) !important;
    color:var(--dm-white) !important;
    border:1px solid #263a4a !important;
    box-shadow:0 30px 80px rgba(0,0,0,.34) !important;
    padding:12px !important;
  }
  .header .mainnav .mega > div,
  .header .mainnav .mega > div:first-child{
    background:var(--dm-navy) !important;
    color:var(--dm-white) !important;
  }
  .header .mainnav .mega a{
    background:transparent !important;
    color:var(--dm-white) !important;
  }
  .header .mainnav .mega a:hover{
    background:var(--dm-navy2) !important;
  }
  .header .mainnav .mega a b{
    color:var(--dm-white) !important;
  }
  .header .mainnav .mega a span{
    color:var(--dm-grey) !important;
  }
  .header .mainnav .mega small{
    color:#8d9aa5 !important;
  }
  .header .mainnav .mega .mega-feature{
    background:linear-gradient(145deg,#182a39,#0d1822) !important;
    border-left:1px solid #2a4050 !important;
    color:#fff !important;
  }
  .header .mainnav .mega .mega-feature strong{
    color:#fff !important;
  }
  .header .mainnav .mega .mega-feature p{
    color:#aab6bf !important;
  }
  .header .mainnav .mega .mega-feature span{
    color:#ff7a83 !important;
  }
  .header .mainnav .mega .mega-feature a{
    background:var(--dm-red) !important;
    color:#fff !important;
  }
}

/* Mobile full-screen drawer */
@media (max-width:900px){
  .header{
    background:#fff !important;
  }
  .header .mainnav{
    display:none !important;
  }
  .header .mainnav.mobile-open{
    display:flex !important;
    position:fixed !important;
    z-index:9999 !important;
    top:74px !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100vw !important;
    height:calc(100dvh - 74px) !important;
    overflow-y:auto !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:10px 14px 28px !important;
    background:var(--dm-black) !important;
    border:0 !important;
  }
  .header .mainnav.mobile-open > .nav-link,
  .header .mainnav.mobile-open > .nav-item > button{
    display:flex !important;
    width:100% !important;
    min-height:58px !important;
    align-items:center !important;
    justify-content:space-between !important;
    padding:16px 8px !important;
    margin:0 !important;
    border:0 !important;
    border-bottom:1px solid rgba(255,255,255,.09) !important;
    background:var(--dm-black) !important;
    color:#fff !important;
    font-size:15px !important;
    font-weight:700 !important;
    text-align:left !important;
  }
  .header .mainnav.mobile-open > .nav-link:hover,
  .header .mainnav.mobile-open > .nav-item > button:hover{
    background:#0f1820 !important;
  }
  .header .mainnav.mobile-open .nav-item{
    display:block !important;
    width:100% !important;
    height:auto !important;
  }
  .header .mainnav.mobile-open .nav-item > button span{
    display:grid !important;
    place-items:center !important;
    width:32px !important;
    height:32px !important;
    flex:0 0 32px !important;
    margin-left:auto !important;
    border-radius:10px !important;
    background:rgba(197,31,43,.18) !important;
    color:#ff6e79 !important;
  }
  .header .mainnav.mobile-open .nav-item.open-mobile > button,
  .header .mainnav.mobile-open .nav-item.open > button{
    color:#fff !important;
    border-bottom-color:rgba(197,31,43,.32) !important;
  }
  .header .mainnav.mobile-open .nav-item.open-mobile > button span,
  .header .mainnav.mobile-open .nav-item.open > button span{
    background:var(--dm-red) !important;
    color:#fff !important;
    transform:rotate(180deg);
  }

  .header .mainnav.mobile-open .mega,
  .header .mainnav.mobile-open .nav-item .mega{
    display:none !important;
    position:static !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    grid-template-columns:1fr !important;
    margin:6px 0 10px !important;
    padding:8px !important;
    border:1px solid #263b4c !important;
    border-radius:16px !important;
    background:var(--dm-navy2) !important;
    color:#fff !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    overflow:hidden !important;
  }

  .header .mainnav.mobile-open .nav-item.open-mobile .mega,
  .header .mainnav.mobile-open .nav-item.open .mega{
    display:grid !important;
  }

  .header .mainnav.mobile-open .mega > div,
  .header .mainnav.mobile-open .mega > div:first-child{
    background:var(--dm-navy2) !important;
    color:#fff !important;
  }

  .header .mainnav.mobile-open .mega > div:first-child{
    padding:2px !important;
  }

  .header .mainnav.mobile-open .mega small{
    display:block !important;
    padding:9px 9px 5px !important;
    color:#8f9daa !important;
    font-size:9px !important;
    letter-spacing:.16em !important;
  }

  .header .mainnav.mobile-open .mega a{
    display:block !important;
    margin:3px 0 !important;
    padding:14px 12px !important;
    border:1px solid rgba(255,255,255,.06) !important;
    border-radius:12px !important;
    background:var(--dm-navy3) !important;
    color:#fff !important;
  }

  .header .mainnav.mobile-open .mega a:hover{
    background:#203a4d !important;
  }

  .header .mainnav.mobile-open .mega a b{
    color:#fff !important;
    font-size:13px !important;
  }

  .header .mainnav.mobile-open .mega a span{
    display:block !important;
    margin-top:3px !important;
    color:#a6b3bd !important;
    font-size:10px !important;
    line-height:1.45 !important;
  }

  .header .mainnav.mobile-open .mega .mega-feature{
    margin:6px 0 0 !important;
    padding:18px !important;
    background:linear-gradient(145deg,#162938,#0f1a25) !important;
    border:1px solid #304656 !important;
    border-radius:13px !important;
  }

  .header .mainnav.mobile-open .mega .mega-feature strong{
    color:#fff !important;
    font-size:19px !important;
  }

  .header .mainnav.mobile-open .mega .mega-feature p{
    color:#a5b1ba !important;
    font-size:11px !important;
  }

  .header .mainnav.mobile-open .mega .mega-feature span{
    color:#ff7a83 !important;
  }

  .header .mainnav.mobile-open .mega .mega-feature a{
    display:inline-flex !important;
    width:auto !important;
    background:var(--dm-red) !important;
    color:#fff !important;
    border:0 !important;
    border-radius:999px !important;
    margin-top:8px !important;
  }

  .header .mainnav.mobile-open > .nav-link:last-child{
    margin-bottom:10px !important;
  }

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

/* DOMIRIS V10 — navigation button always above drawer */
@media (max-width:900px){
  .header{position:sticky!important;z-index:10000!important}
  .mobile-toggle{
    position:relative!important;
    z-index:10020!important;
    display:flex!important;
    pointer-events:auto!important;
  }
  .mainnav.mobile-open{
    z-index:9999!important;
  }
}

@media(max-width:900px){
  .header{z-index:100000!important}
  .mobile-toggle{z-index:100001!important;position:relative!important;pointer-events:auto!important}
  .mainnav.mobile-open{z-index:99999!important}
  body.menu-open{overflow:hidden!important}
}
