/* ============================================================
   MODULATION DIGITAL — SERVICES / REVIEWS COMPONENTS
   Namespace: mds-*  (scoped, same palette & fonts as homepage)
============================================================= */
.mds{
  --mds-navy:#0B1B3A; --mds-navy2:#002347; --mds-ink:#0F1729;
  --mds-amber:#FFB020; --mds-amber2:#ffc107; --mds-teal:#14B8A6;
  --mds-line:#E7EAF3; --mds-muted:#5C6B85; --mds-bg:#F7F8FC;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif; color:var(--mds-ink);
}
.mds *, .mds *::before, .mds *::after{ box-sizing:border-box; }
.mds a{ text-decoration:none; }
.mds h1,.mds h2,.mds h3,.mds h4{ font-family:'Space Grotesk',sans-serif; letter-spacing:-.01em; color:var(--mds-navy); margin:0; }
.mds-wrap{ max-width:1200px; margin:0 auto; padding:0 20px; }
.mds-sec{ padding:80px 0; }
.mds-sec.alt{ background:var(--mds-bg); }
@media(max-width:768px){ .mds-sec{ padding:52px 0; } }
.mds-eyebrow{ display:inline-flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700; letter-spacing:1.6px; text-transform:uppercase; color:var(--mds-navy); background:rgba(255,176,32,.16); padding:7px 16px; border-radius:999px; margin-bottom:14px; }
.mds-eyebrow::before{ content:"●"; color:var(--mds-amber); font-size:9px; }
.mds-head{ text-align:center; max-width:680px; margin:0 auto 44px; }
.mds-head h2{ font-size:clamp(26px,3.6vw,38px); margin-bottom:10px; }
.mds-head h2 em, .mds h2 em{ font-style:normal; color:var(--mds-amber); }
.mds-head p{ color:var(--mds-muted); font-size:15.5px; line-height:1.65; margin:0; }

/* buttons */
.mds-btn{ display:inline-flex; align-items:center; gap:8px; padding:14px 24px; border-radius:10px; font-weight:700; font-size:15px; transition:transform .2s, box-shadow .2s; border:2px solid transparent; cursor:pointer; }
.mds-btn:hover{ transform:translateY(-2px); }
.mds-btn-amber{ background:var(--mds-amber); color:#3A2400 !important; box-shadow:0 10px 24px -12px rgba(255,176,32,.8); }
.mds-btn-navy{ background:var(--mds-navy); color:#fff !important; }
.mds-btn-ghost{ border-color:var(--mds-navy); color:var(--mds-navy) !important; background:transparent; }
.mds-btn-ghost-w{ border-color:rgba(255,255,255,.5); color:#fff !important; }

/* intro + form */
.mds-intro{ display:grid; grid-template-columns:1.25fr .9fr; gap:48px; align-items:start; }
@media(max-width:991px){ .mds-intro{ grid-template-columns:1fr; } }
.mds-intro h2{ font-size:clamp(24px,3vw,34px); margin-bottom:16px; }
.mds-intro p{ color:#33415c; font-size:16px; line-height:1.75; margin:0 0 14px; }
.mds-checks{ list-style:none; padding:0; margin:20px 0 26px; display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; }
@media(max-width:560px){ .mds-checks{ grid-template-columns:1fr; } }
.mds-checks li{ display:flex; gap:10px; font-weight:600; font-size:14.5px; color:var(--mds-navy); }
.mds-checks li i{ color:var(--mds-teal); margin-top:3px; }
.mds-ctas{ display:flex; flex-wrap:wrap; gap:12px; }
.mds-badges{ display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.mds-badge{ display:flex; align-items:center; gap:10px; background:#fff; border:1px solid var(--mds-line); border-radius:12px; padding:10px 14px; font-size:13px; color:var(--mds-muted); }
.mds-badge b{ display:block; color:var(--mds-navy); font-size:15px; }
.mds-badge .mds-stars{ color:#F5A623; font-size:13px; letter-spacing:1px; }

.mds-form{ background:var(--mds-navy2); border-radius:18px; padding:30px 26px; box-shadow:0 30px 60px -30px rgba(11,27,58,.6); position:sticky; top:110px; }
.mds-form h3{ color:#fff; font-size:22px; margin-bottom:4px; }
.mds-form .mds-form-sub{ color:var(--mds-amber2); font-size:14px; margin-bottom:18px; }
.mds-form input, .mds-form select, .mds-form textarea{ width:100%; padding:13px 15px; border-radius:9px; border:1px solid #dfe3e7; font-size:15px; margin-bottom:12px; font-family:inherit; color:#1c2733; background:#fff; }
.mds-form textarea{ min-height:84px; resize:vertical; }
.mds-form button{ width:100%; justify-content:center; }
.mds-form .mds-note{ color:rgba(255,255,255,.65); font-size:12px; margin-top:10px; text-align:center; }
.mds-hp{ position:absolute !important; left:-9999px !important; }

/* feature cards */
.mds-grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
@media(max-width:991px){ .mds-grid3{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px){ .mds-grid3{ grid-template-columns:1fr; } }
.mds-card{ background:#fff; border:1px solid var(--mds-line); border-radius:16px; padding:26px 24px; transition:transform .25s, box-shadow .25s, border-color .25s; height:100%; display:block; }
.mds-card:hover{ transform:translateY(-4px); box-shadow:0 22px 44px -26px rgba(11,27,58,.4); border-color:#cfd7ea; }
.mds-ic{ width:50px; height:50px; border-radius:12px; display:flex; align-items:center; justify-content:center; background:rgba(255,176,32,.16); color:var(--mds-navy); font-size:21px; margin-bottom:16px; }
.mds-card h3{ font-size:18.5px; margin-bottom:8px; }
.mds-card p{ color:var(--mds-muted); font-size:14.5px; line-height:1.65; margin:0; }
.mds-card .mds-more{ display:inline-flex; margin-top:14px; font-weight:700; font-size:14px; color:var(--mds-navy); }
.mds-card:hover .mds-more{ color:#b77900; }

/* process */
.mds-steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; counter-reset:mds; }
@media(max-width:991px){ .mds-steps{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .mds-steps{ grid-template-columns:1fr; } }
.mds-step{ position:relative; background:#fff; border-radius:16px; padding:28px 22px 24px; border:1px solid var(--mds-line); }
.mds-step::before{ counter-increment:mds; content:"0" counter(mds); font-family:'IBM Plex Mono','Space Grotesk',monospace; font-weight:700; font-size:14px; color:#3A2400; background:var(--mds-amber); border-radius:8px; padding:4px 9px; display:inline-block; margin-bottom:14px; }
.mds-step h3{ font-size:17.5px; margin-bottom:8px; }
.mds-step p{ font-size:14.2px; color:var(--mds-muted); line-height:1.6; margin:0; }

/* stats band */
.mds-band{ background:var(--mds-navy2); color:#fff; padding:56px 0; }
.mds-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:center; }
@media(max-width:768px){ .mds-stats{ grid-template-columns:repeat(2,1fr); } }
.mds-stats b{ display:block; font-family:'Space Grotesk',sans-serif; font-size:clamp(28px,3.4vw,40px); color:var(--mds-amber2); }
.mds-stats span{ color:rgba(255,255,255,.8); font-size:14.5px; }

/* chips */
.mds-chips{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
.mds-chip{ display:inline-flex; align-items:center; gap:8px; padding:10px 16px; background:#fff; border:1px solid var(--mds-line); border-radius:999px; font-weight:600; font-size:14px; color:var(--mds-navy); transition:all .2s; }
.mds-chip:hover{ border-color:var(--mds-amber); background:#fff8ea; color:var(--mds-navy); }
.mds-chip i{ color:#c98a00; }

/* faq */
.mds-faq{ max-width:860px; margin:0 auto; }
.mds-faq details{ background:#fff; border:1px solid var(--mds-line); border-radius:12px; margin-bottom:12px; overflow:hidden; }
.mds-faq summary{ cursor:pointer; list-style:none; padding:18px 52px 18px 20px; font-weight:700; color:var(--mds-navy); font-size:16px; position:relative; }
.mds-faq summary::-webkit-details-marker{ display:none; }
.mds-faq summary::after{ content:"+"; position:absolute; right:20px; top:50%; transform:translateY(-50%); width:26px; height:26px; border-radius:50%; background:rgba(255,176,32,.18); display:flex; align-items:center; justify-content:center; font-size:18px; }
.mds-faq details[open] summary::after{ content:"–"; }
.mds-faq details p{ padding:0 20px 18px; margin:0; color:#3b4a66; line-height:1.7; font-size:15px; }

/* cross-link to training */
.mds-learn{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; background:linear-gradient(120deg,#fff8ea,#fff); border:1px dashed #f0c46b; border-radius:16px; padding:24px 28px; }
.mds-learn h3{ font-size:20px; margin-bottom:4px; }
.mds-learn p{ margin:0; color:var(--mds-muted); }

/* CTA */
.mds-cta{ background:linear-gradient(135deg,#002347 0%,#0B1B3A 60%,#13305f 100%); border-radius:22px; padding:48px 40px; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.mds-cta h2{ color:#fff; font-size:clamp(22px,3vw,32px); }
.mds-cta p{ color:rgba(255,255,255,.8); margin:8px 0 0; }

/* ===== reviews ===== */
.mds-rv-platforms{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-bottom:30px; }
@media(max-width:860px){ .mds-rv-platforms{ grid-template-columns:1fr; } }
.mds-rv-plat{ display:flex; align-items:center; gap:16px; background:#fff; border:1px solid var(--mds-line); border-radius:16px; padding:20px 22px; transition:box-shadow .2s, transform .2s; }
.mds-rv-plat:hover{ transform:translateY(-3px); box-shadow:0 18px 36px -24px rgba(11,27,58,.45); }
.mds-rv-logo{ width:52px; height:52px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:20px; flex:0 0 52px; font-family:'Space Grotesk',sans-serif; }
.mds-rv-logo.clutch{ background:#17313B; color:#fff; }
.mds-rv-logo.google{ background:#fff; border:1px solid var(--mds-line); }
.mds-rv-logo.jd{ background:#0067B1; color:#fff; font-size:16px; }
.mds-rv-plat b{ display:block; font-size:16px; color:var(--mds-navy); }
.mds-rv-plat .mds-stars{ color:#F5A623; letter-spacing:1.5px; font-size:14px; }
.mds-rv-plat small{ color:var(--mds-muted); font-size:13px; }
.mds-rv-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
@media(max-width:768px){ .mds-rv-grid{ grid-template-columns:1fr; } }
.mds-rv{ background:#fff; border:1px solid var(--mds-line); border-radius:16px; padding:26px; position:relative; }
.mds-rv::before{ content:"“"; position:absolute; right:22px; top:4px; font-size:70px; color:rgba(255,176,32,.35); font-family:Georgia,serif; }
.mds-rv .mds-stars{ color:#F5A623; letter-spacing:1.5px; }
.mds-rv blockquote::before, .mds-rv blockquote::after{ display:none !important; content:none !important; }
.mds-rv blockquote{ background:none !important;  margin:10px 0 16px; font-size:15.5px; line-height:1.7; color:#26334d; border:0; padding:0; font-style:normal; }
.mds-rv-who{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.mds-rv-who b{ color:var(--mds-navy); display:block; }
.mds-rv-who span{ color:var(--mds-muted); font-size:13px; }
.mds-rv-src{ font-size:12px; font-weight:700; color:#17313B; background:#eef3f4; border-radius:999px; padding:5px 10px; }

/* services hub tabs */
.mds-cat{ margin-bottom:56px; }
.mds-cat-head{ display:flex; align-items:center; gap:14px; margin-bottom:20px; }
.mds-cat-head h2{ font-size:26px; }
.mds-cat-head .mds-ic{ margin:0; }
.mds-cat-head a{ margin-left:auto; font-weight:700; color:var(--mds-navy); font-size:14px; }

/* packages */
.mds-pk-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.mds-pk-grid.four{ grid-template-columns:repeat(4,1fr); }
@media(max-width:991px){ .mds-pk-grid, .mds-pk-grid.four{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px){ .mds-pk-grid, .mds-pk-grid.four{ grid-template-columns:1fr; } }
.mds-pk{ background:#fff; border:1px solid var(--mds-line); border-radius:18px; padding:28px 24px; display:flex; flex-direction:column; }
.mds-pk.hot{ border:2px solid var(--mds-amber); box-shadow:0 26px 50px -30px rgba(255,176,32,.9); position:relative; }
.mds-pk.hot::before{ content:"Most Popular"; position:absolute; top:-13px; left:24px; background:var(--mds-amber); color:#3A2400; font-size:12px; font-weight:800; padding:4px 12px; border-radius:999px; }
.mds-pk h3{ font-size:21px; }
.mds-pk .mds-pk-for{ color:var(--mds-muted); font-size:13.5px; margin:4px 0 14px; }
.mds-pk .mds-price{ font-family:'Space Grotesk',sans-serif; font-size:32px; font-weight:700; color:var(--mds-navy); }
.mds-pk .mds-price small{ font-size:14px; color:var(--mds-muted); font-weight:500; }
.mds-pk ul{ list-style:none; padding:0; margin:18px 0 22px; flex:1; }
.mds-pk li{ padding:7px 0; border-bottom:1px dashed var(--mds-line); font-size:14.2px; color:#33415c; display:flex; gap:9px; }
.mds-pk li i{ color:var(--mds-teal); margin-top:3px; }

/* dual-division (home) */
.mds-duo{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
@media(max-width:860px){ .mds-duo{ grid-template-columns:1fr; } }
.mds-duo-card{ border-radius:20px; padding:34px 30px; position:relative; overflow:hidden; }
.mds-duo-card.train{ background:#fff; border:1px solid var(--mds-line); }
.mds-duo-card.agency{ background:var(--mds-navy2); }
.mds-duo-card.agency h3, .mds-duo-card.agency p, .mds-duo-card.agency li{ color:#fff; }
.mds-duo-card h3{ font-size:24px; margin:10px 0 8px; }
.mds-duo-card p{ color:var(--mds-muted); line-height:1.65; }
.mds-duo-card ul{ list-style:none; padding:0; margin:16px 0 22px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.mds-duo-card li{ font-size:14.5px; font-weight:600; color:var(--mds-navy); }
.mds-duo-card li i{ color:var(--mds-amber); margin-right:6px; }
.mds-tag{ display:inline-block; font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; padding:6px 12px; border-radius:999px; background:rgba(255,176,32,.18); color:#8a5a00; }
.mds-duo-card.agency .mds-tag{ background:rgba(255,193,7,.18); color:var(--mds-amber2); }
@media(max-width:991px){ .mds-form{ position:static; } }
#md-root .mds-duo-card.agency h3, .mds-duo-card.agency h3{ color:#fff !important; }
#md-root .mds h2, #md-root .mds h3{ color:var(--mds-navy); }
#md-root .mds .mds-cta h2{ color:#fff; }
