/* Mergosoft — clean white theme. Loaded last on every page. */
:root{
  --w-ink:#0a1324; --w-text:#2d384c; --w-muted:#4a566b; --w-tone:#f1f4f9; --w-line:#e1e7f0;
  --w-blue:#1558e6; --w-blue-d:#0f45bd; --w-navy:#061a37;
}
html,body{background:#fff}
body{color:var(--w-text)}

/* ---------- header: white bar, strong logo ---------- */
.header,.header.scrolled,.header.stuck{position:fixed;top:0;left:0;width:100%;background:#fff;color:var(--w-ink);
  box-shadow:0 1px 0 var(--w-line);backdrop-filter:none;-webkit-backdrop-filter:none;z-index:90}
.nav{height:84px}
.header.scrolled .nav,.header.stuck .nav{height:72px}
.header .logo{color:var(--w-ink);font-family:'Sora',Inter,Arial,sans-serif;font-size:24px;font-weight:800;letter-spacing:.02em;line-height:1.05;gap:12px}
.header .logo small{color:#33415c;font-family:Inter,Arial,sans-serif;font-size:10px;font-weight:600;letter-spacing:.07em;margin-top:4px}
.header .logo-mark{width:52px;height:52px}
.header:hover .logo-mark{transform:none}

.menu,.nav nav{color:var(--w-ink);font-size:15px;font-weight:600}
.nav nav{gap:28px}
.menu>a,.drop>a,.nav nav a,.nav-item>a{color:var(--w-ink);opacity:1}
.menu a:hover,.nav nav a:hover,.nav nav .active,.menu>a.active{color:var(--w-blue);opacity:1}
.menu>a:after,.drop>a:after{background:var(--w-blue)}
.dropdown-toggle .caret,.drop .caret{color:var(--w-muted)}
.nav-btn{background:var(--w-blue);color:#fff;font-size:15px;font-weight:600;padding:12px 22px;border-radius:6px;box-shadow:none;animation:none}
.nav-btn:hover{background:var(--w-blue-d);box-shadow:none;transform:translateY(-1px)}
.burger{background:var(--w-tone);border:0}
.burger i{background:var(--w-ink)}

/* simple dropdowns */
.dmenu,.dropdown-menu{background:#fff;border:1px solid var(--w-line);box-shadow:0 18px 40px #0a132426}
.dmenu a,.dropdown-menu a{color:var(--w-text)}
.dmenu a:hover,.dropdown-menu a:hover{background:var(--w-tone);color:var(--w-blue)}

/* mega menu panel */
@media(min-width:1061px){
  .header .mega-item>.mega-panel{background:#fff!important;border-top:1px solid var(--w-line)!important;box-shadow:0 30px 50px #0a132422!important}
  .header:has(.mega-item:hover>.mega-panel),
  .header:has(.mega-item:focus-within>.mega-panel){background:#fff!important;box-shadow:0 1px 0 var(--w-line)!important}
  .mega-promo h3{color:var(--w-ink)}
  .mega-promo p{color:var(--w-muted)}
  .mega-promo a.mega-cta{color:var(--w-blue)!important}
  .mega-promo a.mega-cta:hover{color:var(--w-blue-d)!important}
  .mega-links a,.mega-cats a,.mega-sub a{color:var(--w-text)!important;border-bottom:1px solid var(--w-line)!important}
  .mega-links a:hover,.mega-cats a:hover,.mega-sub a:hover{color:var(--w-blue)!important;border-bottom-color:var(--w-blue)!important}
  .mega-cats a.is-active{color:var(--w-blue)!important;border-bottom-color:var(--w-blue)!important}
  .mega-links a.is-current,.mega-sub a.is-current{color:var(--w-blue)!important}
}
@media(max-width:1060px){
  .menu{background:#fff;color:var(--w-ink)}
  .menu>a,.drop{border-bottom:1px solid var(--w-line)}
  .nav nav{background:#fff}
}

/* ---------- heroes: white ---------- */
.hero,.page-hero{background:#fff!important;color:var(--w-ink)}
.hero .poster,.hero video,.bg-video,.hero-overlay,.hero-glow,.shade,.hero .orb,.page-hero .orb{display:none!important}
.hero h1,.hero h1 span,.hero h1 .grad,.page-hero h1,.page-hero h1 span{color:var(--w-ink)}
.hero .tagline,.eyebrow,.hero .eyebrow,.page-hero .eyebrow{color:var(--w-blue)}
.hero-text,.page-hero p,.hero .lead,.hero p{color:var(--w-text)}
.hero .btn.ghost,.hero .ghost{background:var(--w-tone);color:var(--w-ink);border:0}
.hero .btn.ghost:hover,.hero .ghost:hover{background:#e3e9f3}
.hero .btn.primary,.hero .primary{box-shadow:none}
.caps li{background:var(--w-tone)}
.caps li:hover{background:#e6ecf5}
.caps a{color:var(--w-ink)}
.float-card,.hero-chips span,.trust-row span{background:var(--w-tone);color:var(--w-ink);border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.hero-chips span:hover,.trust-row span:hover{background:#e6ecf5}
.core{box-shadow:none}
.hero-text,.page-hero p{opacity:1}

/* stat strips: tone, not dark */
.stats,.stat-band,.count-strip,.impact-band{background:var(--w-tone)!important;color:var(--w-ink);border:0;box-shadow:none}
.stat-strip div{background:var(--w-tone);color:var(--w-ink)}
.impact-band:after{display:none}
.stats strong,.stat-band strong,.count-strip strong,.impact-band strong,.impact-band h2,.impact-band h3,.stat-strip strong,.stat-strip div b{color:var(--w-ink)}
.stats span,.stat-band span,.count-strip span,.impact-band p,.impact-band span,.stat-strip span,.stat-strip small{color:var(--w-muted)}
.stats div{border-right-color:var(--w-line)}

/* testimonials & dark service band */
.testimonials,.wad-services{background:#fff!important;color:var(--w-ink)}
.testimonials h2,.testimonials h3,.testimonials b,.wad-services h2,.wad-services h3{color:var(--w-ink)}
.testimonials p,.testimonials small,.wad-services p{color:var(--w-text)}
.wad-service-card{background:var(--w-tone);border:0;color:var(--w-ink)}
.wad-service-card h3,.wad-service-card h4{color:var(--w-ink)}
.wad-service-card p{color:var(--w-text)}

/* ---------- footer: white with a tone step ---------- */
footer{background:var(--w-tone);color:var(--w-text)}
footer .logo{color:var(--w-ink);font-size:22px;font-weight:800}
footer .logo small{color:#33415c;font-weight:600}
.footer-main,.f-main{border-bottom-color:var(--w-line)}
.footer-brand p,.f-main p,.footer-news p{color:var(--w-text)}
.footer-col h4,.f-col h4{color:var(--w-ink)}
.footer-col a,.f-col a{color:var(--w-text)}
.footer-col a:hover,.f-col a:hover{color:var(--w-blue)}
.footer-social a,.f-social a{background:#fff;color:var(--w-ink)}
.footer-social a:hover,.f-social a:hover{background:var(--w-blue);color:#fff}
.footer-news input,.f-news input{background:#fff;color:var(--w-ink);border:1px solid var(--w-line)}
.footer-news input::placeholder,.f-news input::placeholder{color:#6b778c}
.footer-bottom,.f-bottom,.footer-bottom a,.f-bottom a{color:var(--w-muted)}
.footer-bottom a:hover,.f-bottom a:hover{color:var(--w-blue)}
.f-word{color:#e3e9f3}

/* home page pieces that were navy */
.products{background:#fff!important;color:var(--w-ink)}
.products .h2,.products .prod h3{color:var(--w-ink)}
.products .sub,.products .prod p{color:var(--w-text)}
.products .kicker,.products .head-link,.products .prod .more{color:var(--w-blue)}
.prod{background:var(--w-tone)}
.prod:hover{background:#e6ecf5}
.services{background:#fff}
.svc{background:var(--w-tone)}
.badge-clients{background:var(--w-ink)}
.top,#back-to-top{background:var(--w-blue);color:#fff}

/* ---------- remaining dark blocks ---------- */
.pp-stats{background:var(--w-tone)!important;color:var(--w-ink)}
.pp-stats-wave,.pp-stats-dots,.pp-banner .network-bg,.pp-banner-visual{display:none!important}
.pp-stats strong,.pp-stats b,.pp-stats h3{color:var(--w-ink)}
.pp-stats span,.pp-stats p,.pp-stats small{color:var(--w-muted)}
.pp-stats-grid>div:not(:last-child):after{background:var(--w-line)}
.pp-banner{background:var(--w-blue)!important;box-shadow:none!important;grid-template-columns:1fr!important}

/* accent bands: one flat blue, no animated gradients */
.contact-strip,.social-band,.wad-cta,.cta,.side-cta,.legal-help,.card.rich.cta{background:var(--w-blue)!important;background-image:none!important;animation:none!important;box-shadow:none!important;color:#fff}
.contact-strip:before,.contact-strip:after,.social-band:before,.social-band:after,.wad-cta:before,.wad-cta:after,.cta:before{display:none!important}
.btn.white,.contact-strip .btn,.wad-cta .btn.white{background:#fff;color:var(--w-blue-d)}

/* ---------- contrast fixes on white ---------- */
.crumb,.crumb a,.crumb span{color:var(--w-muted)}
.crumb a:hover{color:var(--w-blue)}
h2 span,h2 span.letter,.section-head>a,.card a,.product-link:hover,.scribble-note,.wad-step-arrow{color:var(--w-blue)}
body .eyebrow,body p.eyebrow{color:var(--w-blue)}
.contact-strip .eyebrow,.social-band .eyebrow,.wad-cta .eyebrow,.cta .eyebrow,.pp-banner .eyebrow{color:#dbe7ff}
.primary,.nav-btn,.btn:not(.ghost):not(.white),.filter-pill.active,.wad-step-num,.step b{background:var(--w-blue);background-image:none;color:#fff;box-shadow:none}
.primary:hover,.btn:not(.ghost):not(.white):hover{background:var(--w-blue-d)}
.ghost{color:var(--w-ink);border:1px solid #b8c3d6}
.ghost:hover{background:var(--w-tone);border-color:#8d9bb3}
.filter-pill{color:var(--w-text)}
.filter-pill.active{color:#fff}
.contact-strip .btn,.social-band .btn,.cta .btn.white{background:#fff;color:var(--w-blue-d)}
.card i b,.contact-card b,b.reveal{color:var(--w-blue-d)}
.solution-link,.solution-link span{color:var(--w-blue-d)}
footer h4,footer b,footer strong{color:var(--w-ink)}
.statement w,.statement .w{color:#9aa7bb}
.contact-strip p,.social-band p,.wad-cta p{color:#e6eefb}

/* round two */
.contact-strip h2 span,.social-band h2 span,.wad-cta h2 span,.cta h2 span,.pp-banner h2 span,.side-cta h2 span,.legal-help h2 span{color:#fff}
body .eyebrow,body p.eyebrow{color:var(--w-blue)!important}
.contact-strip .eyebrow,.social-band .eyebrow,.wad-cta .eyebrow,.cta .eyebrow,.pp-banner .eyebrow{color:#dbe7ff!important}
.svc-pill.active,.side-link.active,.side-nav a.active,.wad-step-num,.btn:not(.ghost):not(.white){background:var(--w-blue)!important;background-image:none!important;color:#fff!important}
footer h4,.footer-col h4,.footer-news h4{color:var(--w-ink)!important}
.view-all,.view-all span{color:var(--w-blue)}
.float-card b,.float-card span{color:var(--w-ink)}
.job-meta i,.job-meta{color:var(--w-muted)}
.legal-list a i,.legal-num,a>i:first-child{color:inherit}
.project-title p{color:var(--w-muted)}
.hero .btn.primary,.hero .btn.primary:hover{color:#fff!important}

@media(max-width:600px){
  .nav{gap:10px;height:72px}
  .header .logo{font-size:19px;gap:8px}
  .header .logo small{font-size:8px;letter-spacing:.04em}
  .header .logo-mark{width:42px;height:42px}
  .nav-btn{padding:10px 14px;font-size:13px;white-space:nowrap;margin-left:auto}
}

/* ---------- mobile navigation (all pages) ---------- */
.burger{display:none;width:46px;height:46px;border:0;border-radius:6px;background:var(--w-tone);cursor:pointer;
  flex-direction:column;justify-content:center;align-items:center;gap:5px;flex:none}
.burger i{display:block;width:20px;height:2px;background:var(--w-ink);border-radius:2px;transition:transform .3s,opacity .3s}
body.menu-open .burger i:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.menu-open .burger i:nth-child(2){opacity:0}
body.menu-open .burger i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:1060px){
  .burger{display:flex}
  .header .logo,.header .burger,.header .nav-btn{position:relative;z-index:95}
  .nav .nav-btn{display:inline-flex;margin-left:auto}
  .nav .nav-btn+.burger{margin-left:0}

  .header .menu,.header .nav nav{
    position:fixed;inset:0;display:flex!important;flex-direction:column;align-items:stretch;gap:0;
    padding:104px 24px 40px;margin:0;background:#fff;color:var(--w-ink);
    font-size:19px;font-weight:600;overflow-y:auto;z-index:80;
    clip-path:inset(0 0 100% 0);visibility:hidden;transition:clip-path .4s var(--ease,ease),visibility 0s .4s}
  body.menu-open .header .menu,body.menu-open .header .nav nav{clip-path:inset(0);visibility:visible;transition:clip-path .4s var(--ease,ease)}
  body.menu-open{overflow:hidden}

  /* top-level rows */
  .menu>a,.nav nav>a,.drop,.nav-item{width:100%;padding:0;border-bottom:1px solid var(--w-line)}
  .menu>a,.nav nav>a{display:block;padding:18px 0;color:var(--w-ink);opacity:1}
  .menu>a:after,.drop>a:after,.nav nav a:after{display:none}
  .drop>a,.nav-item>a{display:flex;justify-content:space-between;align-items:center;width:100%;padding:18px 0;color:var(--w-ink);opacity:1;font-size:19px}
  .drop .caret,.nav-item .caret{font-size:13px;color:var(--w-blue);transition:transform .25s}
  .drop.open>a,.nav-item.open>a{color:var(--w-blue)}
  .drop.open .caret,.nav-item.open .caret{transform:rotate(180deg)}

  /* dropdown items: tone block, large dark text */
  .dmenu,.dropdown-menu,.header .mega-item>.mega-panel{
    position:static!important;display:none;width:100%!important;min-width:0!important;transform:none!important;
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;max-height:none!important;
    background:var(--w-tone)!important;border:0!important;border-radius:6px!important;box-shadow:none!important;
    padding:6px!important;margin:0 0 16px!important}
  .drop.open>.dmenu,.nav-item.open>.dropdown-menu,.nav-item.open>.mega-panel{display:block}
  .mega-inner,.mega-inner.has-subs{display:block!important;padding:0!important;min-height:0!important;width:100%!important;margin:0!important}
  .mega-promo,.mega-subs{display:none!important}
  .mega-cats,.mega-links{display:block}
  .dmenu a,.dropdown-menu a,.mega-cats a,.mega-links a{
    display:flex!important;align-items:center;justify-content:space-between;
    padding:14px 14px!important;margin:0!important;border:0!important;border-radius:4px!important;background:none!important;
    font-size:17px!important;font-weight:500!important;line-height:1.35;color:var(--w-ink)!important;opacity:1!important;
    white-space:normal!important;transform:none!important}
  .dmenu a:hover,.dropdown-menu a:hover,.mega-cats a:hover,.mega-links a:hover,
  .dmenu a:active,.dropdown-menu a:active,.mega-cats a:active,.mega-links a:active{background:#fff!important;color:var(--w-blue)!important}
  .mega-links a.is-current,.mega-cats a.is-current{color:var(--w-blue)!important;font-weight:600!important}
  .mega-cats a:not([data-target]) .mega-arrow,.mega-arrow{display:none!important}
}
@media(max-width:600px){
  .header .menu,.header .nav nav{padding-top:92px}
}

/* ---------- policy pages (product support, refund and cancellation) ---------- */
.policy-section{padding-top:72px}
.policy-body{max-width:860px}
.policy-h1{font-family:'Sora',Inter,Arial,sans-serif;font-size:clamp(30px,4vw,44px);font-weight:700;letter-spacing:-.03em;line-height:1.1;color:var(--w-ink);margin-bottom:24px}
.policy-body p{font-size:17px;line-height:1.75;color:var(--w-text);margin:0 0 18px}
.policy-body .policy-lead{font-size:19px;color:var(--w-ink)}
.policy-body ol,.policy-body ul{margin:0 0 28px;padding-left:26px}
.policy-body li{font-size:17px;line-height:1.7;color:var(--w-text);margin-bottom:12px;padding-left:4px}
.policy-body li::marker{color:var(--w-blue);font-weight:700}
.policy-body strong,.policy-body b{color:var(--w-ink)}
.policy-body a{color:var(--w-blue);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.policy-body a:hover{color:var(--w-blue-d)}
/* footer legal links wrap cleanly with the two extra items */
.footer-bottom-links,.f-bottom div{flex-wrap:wrap;gap:8px 24px}

.policy-table{overflow-x:auto;margin:8px 0 32px;border-radius:6px}
.policy-table table{width:100%;min-width:560px;border-collapse:collapse;font-size:16px}
.policy-table th,.policy-table td{padding:14px 16px;text-align:left;vertical-align:top;line-height:1.5;color:var(--w-text);border-bottom:1px solid var(--w-line)}
.policy-table thead th{background:var(--w-tone);color:var(--w-ink);font-weight:700}
.policy-table td:nth-child(n+2),.policy-table th:nth-child(n+2){width:22%}
.policy-table td strong{color:var(--w-ink);font-weight:600}

/* ---------- shared type scale (matches the home page) ---------- */
body{font-size:16px;line-height:1.65}
h1,h2,h3,h4{font-family:'Sora',Inter,Arial,sans-serif;letter-spacing:-.03em}
body h2,.section-head h2{font-size:clamp(30px,3.8vw,48px);font-weight:600;line-height:1.08;letter-spacing:-.035em}
body h3{font-weight:600;letter-spacing:-.02em}
.page-hero h1{font-size:clamp(38px,6vw,76px);font-weight:600;letter-spacing:-.04em;line-height:1.02;max-width:900px}
.page-hero p:not(.eyebrow){font-size:clamp(17px,1.5vw,20px);line-height:1.6;color:var(--w-text);max-width:640px}
.contact-strip h2,.contact-strip h3,.social-band h3,.wad-cta h2,.wad-cta h3,.pp-banner h2,.side-cta h3,.legal-help h3,.cta h2{color:#fff}
.section{padding:clamp(72px,9vw,128px) 0}
.container{width:min(1240px,100% - 48px)}
.section-head>div>p:last-child,.about p,.people p{font-size:16px;color:var(--w-text)}
main p,main li{color:var(--w-text)}

/* ---------- footer: same layout as the home page ---------- */
footer{padding-top:clamp(64px,8vw,104px);overflow:hidden}
.footer-main{gap:48px;padding-bottom:56px}
.footer-brand p{font-size:16px;line-height:1.65;max-width:34ch}
.footer-col h4,.footer-news h4{font-family:Inter,Arial,sans-serif;font-size:16px!important;font-weight:600;letter-spacing:0!important;text-transform:none!important;margin-bottom:18px}
.footer-col a{font-size:16px;margin-bottom:12px}
.footer-col a:hover{padding-left:0}
.footer-news p{font-size:15px}
.footer-news input{font-size:15px;padding:14px 16px;border-radius:6px}
.footer-bottom{font-size:15px;padding:12px 0 8px}
.f-word{font-family:'Sora',Inter,Arial,sans-serif;font-weight:600;font-size:clamp(64px,19.5vw,300px);line-height:.82;letter-spacing:-.06em;color:#e3e9f3;margin:32px 0 -.06em;white-space:nowrap;user-select:none}

/* ---------- consistency fixes ---------- */
body h2 span,body .section-head h2 span{color:var(--w-blue)}
.contact-strip h2 span,.social-band h2 span,.wad-cta h2 span,.pp-banner h2 span,.terms-end h2 span{color:#fff}
.view-all,a.view-all{color:var(--w-blue)}
.project-title p{color:var(--w-text)}
.legal-num{color:#fff;background:var(--w-blue)!important;background-image:none!important;box-shadow:none}
.terms-end,.legal-callout{background:var(--w-blue)!important;background-image:none!important;box-shadow:none!important;color:#fff}
.terms-end h3,.terms-end p,.legal-callout h3,.legal-callout p{color:#fff}
.terms-end .btn,.legal-callout .btn{background:#fff!important;color:var(--w-blue-d)!important}
.contact-page>*{min-width:0}
.contact-info,.info-row{overflow-wrap:anywhere}
@media(max-width:760px){.contact-page{grid-template-columns:1fr!important}}
body a.view-all,body .view-all{color:var(--w-blue)!important}
body h2 span:not(.letter){color:var(--w-blue)!important}
body h2 span.letter{color:var(--w-blue)!important}
.contact-strip h2 span,.social-band h2 span,.wad-cta h2 span,.pp-banner h2 span,.terms-end h2 span{color:#fff!important}
body .project-title p,body .project-title div p{color:var(--w-text)!important}
body .solution-link,body .solution-link span,body .solution-card a span{color:var(--w-blue-d)!important}
body .contact-strip h2 span:not(.x),body .social-band h2 span:not(.x),body .wad-cta h2 span:not(.x),body .pp-banner h2 span:not(.x),body .terms-end h2 span:not(.x),body .cta h2 span:not(.x),
body .contact-strip h2 span.letter,body .social-band h2 span.letter,body .wad-cta h2 span.letter,body .pp-banner h2 span.letter{color:#fff!important}

/* =====================================================================
   Product catalog layout (all product pages): sidebar + one standard flow
   image > title > intro > specifications > key features > modules >
   how it works > add-ons > details > FAQ
   ===================================================================== */
.detail-layout,.detail-layout.theme-service,.detail-layout.theme-project{
  --accent1:#1558e6;--accent2:#0f45bd;--accent-d1:#061a37;--accent-d2:#0d2a55;--accent-soft:#f1f4f9;
  display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
.detail-layout.theme-project{grid-template-columns:minmax(0,1fr) 280px}

.detail-sidebar{position:sticky;top:100px;display:grid;gap:16px}
.side-nav{background:var(--w-tone);border-radius:8px;padding:20px 12px 14px}
.side-nav h4{font-family:'Sora',Inter,Arial,sans-serif;font-size:16px;font-weight:600;color:var(--w-ink);padding:0 12px 10px;letter-spacing:-.01em}
.side-link{display:block;padding:10px 12px;border-radius:5px;font-size:15px;font-weight:500;color:var(--w-text);transition:background .2s,color .2s}
.side-link:hover{background:#fff;color:var(--w-blue)}
.side-link.active{background:var(--w-blue)!important;color:#fff!important;box-shadow:none!important;font-weight:600}
.side-nav .view-all{display:block;padding:12px 12px 4px;font-size:15px;font-weight:600}
.side-cta{border-radius:8px;padding:24px 22px;background:var(--w-blue)!important;color:#fff}
.side-cta h4{font-family:'Sora',Inter,Arial,sans-serif;font-size:20px;font-weight:600;color:#fff;letter-spacing:-.02em;margin-bottom:8px}
.side-cta p{font-size:15px;line-height:1.55;color:#e6eefb}
.side-contact{display:grid;gap:6px;margin:14px 0 18px;font-size:14px;color:#fff;overflow-wrap:anywhere}
.side-cta .btn{background:#fff!important;color:var(--w-blue-d)!important;font-size:15px;padding:12px 18px}

.detail-main .detail-hero-img{width:100%;aspect-ratio:auto;height:clamp(240px,32vw,420px);border-radius:8px;background-size:cover;background-position:center;margin-bottom:36px;box-shadow:none}
.detail-main .detail-kicker{font-size:15px;font-weight:600;color:var(--w-blue);margin:0 0 10px}
.detail-main>h2{font-size:clamp(34px,4.4vw,56px);font-weight:600;letter-spacing:-.04em;line-height:1.04;margin:0 0 20px;color:var(--w-ink)}
.detail-main>p{font-size:18px;line-height:1.7;color:var(--w-text);max-width:68ch;margin:0 0 16px}
.detail-main>p:first-of-type{font-size:20px;color:var(--w-ink)}
.detail-main .detail-h3{font-family:'Sora',Inter,Arial,sans-serif;font-size:clamp(24px,2.6vw,32px);font-weight:600;letter-spacing:-.03em;color:var(--w-ink);margin:64px 0 24px!important}

/* specifications */
.spec-panel{background:var(--w-tone);border-radius:8px;padding:8px 28px 28px;margin:36px 0 0}
.spec-panel .detail-h3{margin:24px 0 8px!important}
.spec-panel dl{margin:0 0 20px}
.spec-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:8px 24px;padding:16px 0;border-bottom:1px solid #dde4ef}
.spec-row:last-child{border-bottom:0}
.spec-row dt{font-size:15px;font-weight:600;color:var(--w-ink)}
.spec-row dd{margin:0;display:flex;flex-wrap:wrap;gap:8px}
.spec-row dd span{background:#fff;color:var(--w-ink);font-size:14px;font-weight:500;padding:6px 12px;border-radius:999px}

/* key features */
.detail-main .detail-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px;list-style:none;padding:0;margin:0}
.detail-main .detail-checklist li{position:relative;padding:14px 0 14px 34px;font-size:16.5px;line-height:1.55;color:var(--w-text);border-bottom:1px solid var(--w-line);margin:0}
.detail-main .detail-checklist li:before{content:"";position:absolute;left:0;top:19px;width:20px;height:20px;border-radius:50%;background:var(--w-blue) !important;background-image:none!important;box-shadow:none}
.detail-main .detail-checklist li:after{content:"";position:absolute;left:7px;top:24px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* module / step cards */
.detail-main .process{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;gap:16px;margin:0}
.detail-main .process .step{background:var(--w-tone);border-radius:8px;padding:26px 24px 28px;box-shadow:none!important;border:0!important;position:relative;transform:none!important}
.detail-main .process .step:hover{background:#e8edf5}
.detail-main .process .step h3{font-size:19px;font-weight:600;letter-spacing:-.02em;color:var(--w-ink);margin:0 0 10px;line-height:1.25}
.detail-main .process .step p{font-size:15.5px;line-height:1.65;color:var(--w-text);margin:0}
.detail-main .process .step b{display:grid;place-items:center;width:36px;height:36px;border-radius:6px;background:var(--w-blue)!important;background-image:none!important;color:#fff;font-size:15px;font-weight:700;margin-bottom:16px;box-shadow:none}

/* add-ons / image cards */
.detail-main .addon-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;gap:16px;margin:0}
.detail-main .addon-card{background:var(--w-tone);border-radius:8px;overflow:hidden;box-shadow:none!important;border:0!important;padding:0 0 22px;transform:none!important}
.detail-main .addon-card img{width:100%;height:150px;object-fit:cover;margin:0 0 18px;border-radius:0}
.detail-main .addon-card h4{font-size:18px;font-weight:600;letter-spacing:-.02em;color:var(--w-ink);padding:0 20px;margin:0 0 6px}
.detail-main .addon-card p{font-size:15px;line-height:1.6;color:var(--w-text);padding:0 20px;margin:0}

/* detail blocks (deploy, payments, roles, tech) */
.detail-main .detail-blocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:48px 0 0}
.detail-main .detail-block{background:var(--w-tone);border-radius:8px;overflow:hidden;padding:0 0 26px;box-shadow:none!important;border:0!important}
.detail-main .detail-block img{width:100%;height:200px;object-fit:cover;margin:0 0 22px}
.detail-main .detail-block h4{font-size:21px;font-weight:600;letter-spacing:-.02em;color:var(--w-ink);padding:0 24px;margin:0 0 8px}
.detail-main .detail-block p{font-size:15.5px;line-height:1.65;color:var(--w-text);padding:0 24px;margin:0}
.detail-main .detail-block .chip-row{padding:16px 24px 0}
.detail-main .chip-row{display:flex;flex-wrap:wrap;gap:8px}
.detail-main .chip-row span{background:#fff;color:var(--w-ink);font-size:14px;font-weight:500;padding:6px 12px;border-radius:999px;border:0}
.detail-main>.chip-row span{background:var(--w-tone)}

/* enquiry bar + FAQ */
.detail-tagbar{display:flex;justify-content:flex-end;align-items:center;margin:40px 0 8px}
.detail-tagbar .tag{display:none}
.detail-main .faq{display:grid;gap:10px;margin-top:8px}
.detail-main .faq details{background:var(--w-tone);border-radius:8px;padding:0;border:0!important;box-shadow:none!important}
.detail-main .faq summary{padding:20px 24px;font-size:17px;font-weight:600;color:var(--w-ink);cursor:pointer}
.detail-main .faq details p{padding:0 24px 22px;margin:0;font-size:16px;line-height:1.65;color:var(--w-text)}

@media(max-width:1000px){
  .detail-layout,.detail-layout.theme-project{grid-template-columns:minmax(0,1fr)}
  .detail-sidebar{position:static;order:2}
  .detail-main{order:1}
}
@media(max-width:700px){
  .spec-row{grid-template-columns:1fr;gap:6px}
  .detail-main .detail-checklist,.detail-main .detail-blocks{grid-template-columns:1fr}
  .spec-panel{padding:4px 20px 22px}
}

/* dropdown opened by click/keyboard on desktop (hover still works) */
@media(min-width:1061px){
  .header .mega-item.open>.mega-panel{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
  .header:has(.mega-item.open>.mega-panel){background:#fff!important;box-shadow:0 1px 0 var(--w-line)!important}
  .header .mega-item.open>a .caret{transform:rotate(180deg)}
}
.header .dtoggle,.header .dropdown-toggle{cursor:pointer}

/* mobile: category rows reveal their own list underneath */
@media(max-width:1060px){
  .mega-subs{display:block!important;margin-top:4px}
  .mega-sub{display:none!important}
  .mega-sub.is-active{display:block!important;margin:6px 0 8px;padding-left:12px;border-left:3px solid var(--w-blue)}
  .mega-sub.cols-2.is-active{display:block!important}
  .mega-cats a.mega-cat:after{content:"";display:inline-block!important;width:8px;height:8px;border-right:2px solid var(--w-blue);border-bottom:2px solid var(--w-blue);transform:rotate(45deg);transition:transform .25s;margin-left:12px;flex:none}
  .mega-cats a.mega-cat.is-active:after{transform:rotate(-135deg)}
  .mega-cats a.mega-cat.is-active{color:var(--w-blue)!important;font-weight:600!important}
}
@media(max-width:1060px){
  .mega-cats>.mega-sub.is-active,.mega-cats .mega-sub.is-active{display:block!important}
  .mega-cats .mega-sub{display:none!important}
  .mega-cats .mega-sub.is-active{margin:4px 0 10px}
}

/* header has no action button: menu button sits at the right edge on phones */
@media(max-width:1060px){.header .burger{margin-left:auto}}

/* after picking a link the dropdown stays shut until the pointer leaves it */
@media(min-width:1061px){
  .header .mega-item.no-hover>.mega-panel{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
}

/* header Login button (label and address come from Admin > Settings) */
.header .nav-login{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:6px;background:var(--w-blue);color:#fff!important;font-size:15px;font-weight:600;white-space:nowrap;opacity:1!important;margin-left:4px;transition:background .2s}
.header .nav-login:hover{background:var(--w-blue-d);color:#fff!important}
.header .nav-login:after{display:none!important}
@media(max-width:1060px){.header .nav-login{display:flex;width:100%;margin:22px 0 0;padding:15px 20px;font-size:17px;border-bottom:0}}

/* category chevrons in the phone menu: sit at the right end of the row, not under the text */
@media(max-width:1060px){
  .mega-cats a.mega-cat:after{position:static!important;left:auto!important;bottom:auto!important;right:auto!important;top:auto!important;background:none!important;transform-origin:center!important;height:8px!important;width:8px!important;margin:0 4px 0 12px!important;flex:none}
  .mega-cats a.mega-cat{align-items:center}
}

/* phone menu: the logo / close bar stays solid, so menu items scrolling underneath never show through it */
@media(max-width:1060px){
  body.menu-open .header .nav:before{content:"";position:fixed;left:0;right:0;top:0;height:84px;background:#fff;box-shadow:0 1px 0 var(--w-line);z-index:90;pointer-events:none}
}
