/* =========================================================
   Minnesota Metal Exteriors — Homepage styles (front-page.php)
   Loaded on the homepage only. Every rule is scoped to
   main.mme-home so it can't touch the Elementor header/footer
   or be overridden by Elementor's global (Site Settings) styles.
   ========================================================= */

:root{
  /* Brand blues (logo blue = --blue-700) */
  --blue-900:#0f1740;   /* deepest: top bar, footer */
  --blue-800:#18256a;   /* dark sections */
  --blue-700:#2a3d99;   /* logo blue: links, secondary buttons */
  --blue-600:#3a50b5;
  --blue-100:#e7ebf8;
  --blue-50:#f2f4fb;

  /* Accent */
  --copper-600:#a8501c; /* primary action, AA with white */
  --copper-700:#8c4216;
  --copper-500:#c2662d;
  --copper-200:#f3c9a8;
  --copper-100:#f9e9dc;

  /* Support */
  --pine-700:#2f5a46;   /* checkmarks */
  --alert-600:#b3302a;  /* emergency */

  /* Neutrals */
  --birch:#f8f6f1;      /* warm page background */
  --snow:#ffffff;
  --ink:#1a2234;
  --ink-soft:#4b5568;
  --line:#e3e0d8;
  --on-dark:#d9def2;
  --on-dark-soft:#aeb7dc;

  --font-display:"Fraunces", Georgia, "Times New Roman", serif;
  --font-body:"Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  --radius:14px;
  --radius-sm:8px;
  --radius-lg:22px;
  --shadow:0 1px 2px rgba(15,23,64,.06), 0 8px 24px rgba(15,23,64,.08);
  --shadow-lg:0 2px 4px rgba(15,23,64,.06), 0 20px 48px rgba(15,23,64,.16);
  --wrap:1200px;
  --gutter:clamp(16px, 4vw, 32px);
  --header-h:84px;
}

/* ---------- Base ---------- */
main.mme-home *,
main.mme-home *::before,
main.mme-home *::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}
body{
  margin:0;background:var(--birch);color:var(--ink);
  font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;
  -webkit-font-smoothing:antialiased;
}

main.mme-home img{max-width:100%;height:auto;display:block}
main.mme-home a{color:var(--blue-700);text-underline-offset:3px}
main.mme-home a:hover{color:var(--copper-600)}
main.mme-home :focus-visible{outline:3px solid var(--copper-500);outline-offset:3px;border-radius:4px}
main.mme-home h1,
main.mme-home h2,
main.mme-home h3,
main.mme-home h4{font-family:var(--font-display);color:var(--blue-900);line-height:1.15;margin:0 0 .5em;font-weight:600;letter-spacing:-.01em}
main.mme-home h1{font-size:clamp(2.3rem, 5.2vw, 3.9rem)}
main.mme-home h2{font-size:clamp(1.8rem, 3.6vw, 2.6rem)}
main.mme-home h3{font-size:clamp(1.25rem, 2vw, 1.5rem)}
main.mme-home h4{font-size:1.1rem}
main.mme-home p{margin:0 0 1em}
main.mme-home ul{padding-left:1.2em}
main.mme-home address{font-style:normal}

main.mme-home .wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
main.mme-home .section{padding:clamp(56px, 8vw, 104px) 0}
main.mme-home .section--white{background:var(--snow)}
main.mme-home .section--navy{background:var(--blue-800);color:var(--on-dark)}
main.mme-home .section--navy h2,
main.mme-home .section--navy h3{color:#fff}
main.mme-home .eyebrow{
  display:inline-block;font-family:var(--font-body);font-weight:700;font-size:.8rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--copper-600);margin-bottom:.75rem
}
main.mme-home .section--navy .eyebrow{color:var(--copper-200)}
main.mme-home .lead{font-size:clamp(1.1rem, 1.6vw, 1.25rem);color:var(--ink-soft)}
main.mme-home .section-head{max-width:760px;margin-bottom:clamp(32px, 5vw, 56px)}
main.mme-home .section-head--center{text-align:center;margin-left:auto;margin-right:auto}
main.mme-home .section-head--split{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;max-width:none}
main.mme-home .section-head--split h2{margin:0}
main.mme-home .visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
main.mme-home .mt-lg{margin-top:clamp(32px,5vw,48px)}
main.mme-home .mt-md{margin-top:24px}

/* ---------- Buttons ---------- */
main.mme-home .btn{
  white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  padding:.85em 1.4em;border-radius:999px;border:2px solid transparent;
  font:700 1rem/1.2 var(--font-body);text-decoration:none;cursor:pointer;
  transition:transform .15s ease, background-color .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease;
}
main.mme-home .btn:hover{transform:translateY(-1px)}
main.mme-home .btn svg{width:1.1em;height:1.1em;flex:none}
main.mme-home .btn--primary{background:var(--copper-600);color:#fff;box-shadow:0 6px 16px rgba(168,80,28,.25)}
main.mme-home .btn--primary:hover{background:var(--copper-700);color:#fff}
main.mme-home .btn--navy{background:var(--blue-700);color:#fff}
main.mme-home .btn--navy:hover{background:var(--blue-800);color:#fff}
main.mme-home .btn--ghost{border-color:var(--blue-700);color:var(--blue-700);background:transparent}
main.mme-home .btn--ghost:hover{background:var(--blue-700);color:#fff}
main.mme-home .btn--light{border-color:rgba(255,255,255,.7);color:#fff;background:transparent}
main.mme-home .btn--light:hover{background:#fff;color:var(--blue-900)}
main.mme-home .btn--alert{background:var(--alert-600);color:#fff}
main.mme-home .btn--alert:hover{background:#952620;color:#fff}
main.mme-home .btn-row{display:flex;flex-wrap:wrap;gap:12px}
main.mme-home .btn-row--center{justify-content:center}

/* ---------- Hero ---------- */
main.mme-home .hero{position:relative;padding:clamp(40px, 6vw, 80px) 0 clamp(64px, 8vw, 104px);overflow:hidden}
main.mme-home .hero::before{
  content:"";position:absolute;inset:auto 0 0 0;height:160px;
  background:linear-gradient(180deg, rgba(248,246,241,0), rgba(231,235,248,.85));pointer-events:none
}
main.mme-home .hero__roofline{position:absolute;right:-60px;top:-40px;width:520px;opacity:.06;pointer-events:none;color:var(--blue-700)}
main.mme-home .hero .wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px, 5vw, 64px);align-items:center}
main.mme-home .hero h1{margin-bottom:.25em}
main.mme-home .hero__sub{font-family:var(--font-display);font-size:clamp(1.25rem, 2.2vw, 1.6rem);color:var(--blue-700);font-weight:500;margin:0 0 1rem}
main.mme-home .hero__desc{font-size:1.125rem;color:var(--ink-soft);max-width:36em}
main.mme-home .hero .btn-row{margin:28px 0 24px}
main.mme-home .trust-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
main.mme-home .trust-chips li{background:var(--snow);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:600;color:var(--blue-900)}
main.mme-home .trust-chips li::before{content:"✓";color:var(--pine-700);margin-right:6px}
main.mme-home .hero__media{position:relative}
main.mme-home .hero__media img{width:100%;aspect-ratio:4/3.3;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:var(--blue-100)}
main.mme-home .hero__card{
  position:absolute;left:-24px;bottom:-28px;background:var(--snow);border-radius:var(--radius);
  padding:18px 22px;box-shadow:var(--shadow-lg);max-width:310px;border-left:5px solid var(--copper-500)
}
main.mme-home .hero__card strong{display:block;font-family:var(--font-display);font-size:1.15rem;color:var(--blue-900)}
main.mme-home .hero__card span{font-size:.95rem;color:var(--ink-soft)}
main.mme-home .hero__card a{font-weight:700;text-decoration:none}
main.mme-home .hero__since{
  position:absolute;right:-14px;top:-14px;width:108px;height:108px;border-radius:50%;
  background:var(--blue-700);color:#fff;display:grid;place-items:center;text-align:center;
  box-shadow:var(--shadow-lg);border:4px solid var(--snow);font-weight:700;line-height:1.1;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase
}
main.mme-home .hero__since b{display:block;font-family:var(--font-display);font-size:1.7rem;letter-spacing:0}
@media (max-width:900px){
  main.mme-home .hero .wrap{grid-template-columns:1fr}
  main.mme-home .hero__card{left:12px;bottom:-24px}
  main.mme-home .hero__since{right:10px}
}

/* ---------- Proof strip ---------- */
main.mme-home .proof{background:var(--snow);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
main.mme-home .proof .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
main.mme-home .proof__item{padding:28px 20px;text-align:center;border-right:1px solid var(--line)}
main.mme-home .proof__item:last-child{border-right:0}
main.mme-home .proof__num{display:block;font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.4rem);font-weight:700;color:var(--blue-700);line-height:1.1}
main.mme-home .proof__label{font-size:.92rem;color:var(--ink-soft);font-weight:500}
main.mme-home .proof__item--alert .proof__num{color:var(--alert-600)}
@media (max-width:760px){
  main.mme-home .proof .wrap{grid-template-columns:1fr 1fr}
  main.mme-home .proof__item:nth-child(2){border-right:0}
  main.mme-home .proof__item:nth-child(-n+2){border-bottom:1px solid var(--line)}
}

/* ---------- Services ---------- */
main.mme-home .svc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
main.mme-home .svc-tab{
  border:1px solid var(--line);background:var(--snow);color:var(--blue-900);border-radius:999px;
  padding:9px 18px;font:600 .95rem var(--font-body);cursor:pointer;transition:all .15s
}
main.mme-home .svc-tab:hover{border-color:var(--blue-700)}
main.mme-home .svc-tab[aria-pressed="true"]{background:var(--blue-700);border-color:var(--blue-700);color:#fff}
main.mme-home .svc-group{margin-bottom:clamp(40px, 6vw, 64px)}
main.mme-home .svc-group:last-of-type{margin-bottom:0}
main.mme-home .svc-group[hidden]{display:none}
main.mme-home .svc-group__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:2px solid var(--line);padding-bottom:12px;margin-bottom:24px}
main.mme-home .svc-group__head h3{margin:0}
main.mme-home .svc-group__head a{font-weight:700;text-decoration:none;font-size:.95rem}
main.mme-home .svc-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(230px, 1fr));gap:20px}
main.mme-home .svc-card{
  display:flex;flex-direction:column;background:var(--snow);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;text-decoration:none;color:inherit;transition:transform .18s ease, box-shadow .18s ease
}
main.mme-home .svc-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);color:inherit}
main.mme-home .svc-card__img{overflow:hidden;background:var(--blue-100)}
main.mme-home .svc-card img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .4s ease}
main.mme-home .svc-card:hover img{transform:scale(1.04)}
main.mme-home .svc-card__body{padding:16px 18px 18px}
main.mme-home .svc-card h4{margin:0 0 4px;font-size:1.15rem}
main.mme-home .svc-card p{margin:0;font-size:.95rem;color:var(--ink-soft);line-height:1.5}
main.mme-home .svc-card__more{display:inline-block;margin-top:10px;font-weight:700;font-size:.9rem;color:var(--copper-600)}

/* ---------- Emergency band ---------- */
main.mme-home .emergency{
  background:linear-gradient(110deg, var(--blue-900) 0%, var(--blue-800) 60%, #22337f 100%);
  color:var(--on-dark);border-radius:var(--radius-lg);padding:clamp(28px,4vw,44px);
  display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;position:relative;overflow:hidden
}
main.mme-home .emergency__icon{width:72px;height:72px;border-radius:50%;background:rgba(255,107,94,.15);display:grid;place-items:center;color:#ff8f84}
main.mme-home .emergency__icon svg{width:36px;height:36px}
main.mme-home .emergency h2{color:#fff;font-size:clamp(1.5rem,2.6vw,2rem);margin:0 0 6px}
main.mme-home .emergency p{margin:0}
main.mme-home .emergency p a{color:#fff}
main.mme-home .emergency__phone{display:block;font-family:var(--font-display);font-weight:700;color:#fff;font-size:clamp(1.6rem,3vw,2.2rem);text-decoration:none;white-space:nowrap}
main.mme-home .emergency__phone:hover{color:var(--copper-200)}
main.mme-home .emergency__phone small{display:block;font-family:var(--font-body);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--copper-200);font-weight:700}
@media (max-width:860px){main.mme-home .emergency{grid-template-columns:1fr;text-align:left}main.mme-home .emergency__icon{width:56px;height:56px}}

/* ---------- Split layouts / panels ---------- */
main.mme-home .split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px, 6vw, 80px);align-items:center}
main.mme-home .split--top{align-items:start}
@media (max-width:900px){main.mme-home .split{grid-template-columns:1fr}}
main.mme-home .panel{background:var(--snow);border-radius:var(--radius-lg);padding:clamp(24px, 4vw, 44px);box-shadow:var(--shadow)}
main.mme-home .badge-row{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:28px}
main.mme-home .badge-row img{height:84px;width:auto}
main.mme-home .featured{margin-top:28px}
main.mme-home .featured__label{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--ink-soft);margin-bottom:12px}
main.mme-home .featured__covers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
main.mme-home .featured__covers a{display:block;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow);transition:transform .18s}
main.mme-home .featured__covers a:hover{transform:translateY(-3px) rotate(-1deg)}
main.mme-home .featured__covers img{width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--blue-100)}

/* ---------- Founders ---------- */
main.mme-home .founders{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,72px);align-items:center}
main.mme-home .founders__photo{
  position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/5;
  background:linear-gradient(160deg, var(--blue-700), var(--blue-900));display:grid;place-items:center;box-shadow:var(--shadow-lg)
}
main.mme-home .founders__photo img{width:100%;height:100%;object-fit:cover}
main.mme-home .founders__monogram{font-family:var(--font-display);color:#fff;font-size:clamp(3rem,7vw,5rem);font-weight:600;text-align:center;line-height:1}
main.mme-home .founders__monogram small{display:block;font-family:var(--font-body);font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--copper-200);margin-top:14px;font-weight:700}
main.mme-home .founders__quote{
  font-family:var(--font-display);font-size:clamp(1.3rem,2.2vw,1.65rem);line-height:1.4;color:var(--blue-900);
  border-left:4px solid var(--copper-500);padding-left:22px;margin:24px 0
}
main.mme-home .founders__sig{font-weight:700;color:var(--blue-900)}
main.mme-home .founders__sig span{display:block;font-weight:500;color:var(--ink-soft);font-size:.95rem}
@media (max-width:900px){main.mme-home .founders{grid-template-columns:1fr}main.mme-home .founders__photo{aspect-ratio:16/10}}

/* ---------- Snow guards ---------- */
main.mme-home .snow{position:relative;overflow:hidden}
main.mme-home .snow::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;
  background-image:radial-gradient(#fff 1.2px, transparent 1.3px), radial-gradient(#fff 1px, transparent 1.1px);
  background-size:46px 46px, 28px 28px;background-position:0 0, 14px 20px;
  animation:snowfall 40s linear infinite
}
@keyframes snowfall{to{background-position:0 920px, 14px 580px}}
main.mme-home .snow .wrap{position:relative;z-index:1}
main.mme-home .new-tag{display:inline-block;background:var(--copper-500);color:#fff;font:800 .75rem var(--font-body);letter-spacing:.1em;padding:5px 10px;border-radius:999px;margin-right:10px;vertical-align:middle}
main.mme-home .snow__images{display:grid;grid-template-columns:1fr 1fr;gap:16px}
main.mme-home .snow__images a{display:block;border-radius:var(--radius);overflow:hidden}
main.mme-home .snow__images img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--blue-700)}
main.mme-home .snow__images a:first-child{transform:translateY(24px)}
main.mme-home .snow p{color:var(--on-dark)}
main.mme-home .snow strong{color:#fff}

/* ---------- Why us ---------- */
main.mme-home .checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}
main.mme-home .checks li{position:relative;padding-left:34px;font-weight:500}
main.mme-home .checks li::before{
  content:"";position:absolute;left:0;top:.2em;width:22px;height:22px;border-radius:50%;
  background:var(--pine-700) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/13px no-repeat
}
@media (max-width:560px){main.mme-home .checks{grid-template-columns:1fr}}
main.mme-home .promise{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
main.mme-home .promise div{background:var(--copper-100);border-radius:var(--radius);padding:18px 20px}
main.mme-home .promise strong{display:block;font-family:var(--font-display);font-size:1.15rem;color:var(--blue-900)}
main.mme-home .promise span{font-size:.95rem;color:var(--ink-soft)}
@media (max-width:560px){main.mme-home .promise{grid-template-columns:1fr}}
main.mme-home .brands{margin-top:24px;font-size:.98rem;color:var(--ink-soft)}

/* ---------- Process ---------- */
main.mme-home .steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:step}
main.mme-home .steps li{background:var(--birch);border:1px solid var(--line);border-radius:var(--radius);padding:24px 22px;counter-increment:step}
main.mme-home .steps li::before{
  content:counter(step);display:grid;place-items:center;width:42px;height:42px;border-radius:50%;
  background:var(--blue-700);color:#fff;font-family:var(--font-display);font-weight:700;font-size:1.2rem;margin-bottom:14px
}
main.mme-home .steps h3{font-size:1.15rem;margin-bottom:6px}
main.mme-home .steps p{margin:0;font-size:.97rem;color:var(--ink-soft)}
@media (max-width:900px){main.mme-home .steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){main.mme-home .steps{grid-template-columns:1fr}}

/* ---------- Reviews ---------- */
main.mme-home .reviews__widget{background:var(--snow);border:1px dashed var(--line);border-radius:var(--radius);padding:24px;min-height:160px}
main.mme-home .reviews__placeholder{margin:0;text-align:center;color:var(--ink-soft)}
main.mme-home .reviews__widget:has(iframe),
main.mme-home .reviews__widget:has(.ti-widget){border:0;padding:0;background:none}

/* ---------- Gallery band ---------- */
main.mme-home .gallery-band{
  background:linear-gradient(100deg, rgba(15,23,64,.93), rgba(24,37,106,.72)), url("https://www.minnesotametalexteriors.com/wp-content/uploads/2026/04/metal-roofing.webp") center/cover no-repeat;
  color:#fff;border-radius:var(--radius-lg);padding:clamp(32px, 5vw, 56px);
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap
}
main.mme-home .gallery-band h2{color:#fff;margin:0 0 6px}
main.mme-home .gallery-band p{margin:0;color:var(--on-dark)}

/* ---------- Service area ---------- */
main.mme-home .area{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,5vw,64px);align-items:start}
main.mme-home .area__search{position:relative;margin:20px 0 10px}
main.mme-home .area__search input{
  width:100%;padding:14px 16px 14px 46px;border-radius:999px;border:2px solid var(--line);
  font:500 1rem var(--font-body);background:var(--snow);color:var(--ink)
}
main.mme-home .area__search input:focus{outline:none;border-color:var(--blue-700)}
main.mme-home .area__search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--ink-soft)}
main.mme-home .area__result{min-height:1.6em;font-weight:600;color:var(--pine-700);margin:0}
main.mme-home .area__result.is-miss{color:var(--blue-700)}
main.mme-home .area__regions{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px}
main.mme-home .area__regions li{display:flex;gap:10px;align-items:center;font-weight:600;color:var(--blue-900)}
main.mme-home .area__regions li::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--copper-500);flex:none}
main.mme-home .towns{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
main.mme-home .towns li{margin:0}
main.mme-home .towns a,
main.mme-home .towns span{
  display:inline-block;padding:7px 14px;border-radius:999px;background:var(--snow);border:1px solid var(--line);
  font-size:.93rem;font-weight:600;color:var(--blue-900);text-decoration:none;transition:all .15s
}
main.mme-home .towns a{border-color:var(--blue-100);background:var(--blue-50);color:var(--blue-700)}
main.mme-home .towns a:hover{background:var(--blue-700);border-color:var(--blue-700);color:#fff}
main.mme-home .towns li.is-hidden{display:none}
main.mme-home .towns li.is-match a,
main.mme-home .towns li.is-match span{background:var(--copper-600);border-color:var(--copper-600);color:#fff}
main.mme-home .towns__legend{font-size:.85rem;color:var(--ink-soft);margin-top:14px}
@media (max-width:900px){main.mme-home .area{grid-template-columns:1fr}}

/* ---------- Guide (long-form) ---------- */
main.mme-home .guide{display:grid;grid-template-columns:260px 1fr;gap:clamp(32px,5vw,72px);align-items:start}
main.mme-home .guide__toc{position:sticky;top:calc(var(--header-h) + 24px);background:var(--birch);border-radius:var(--radius);padding:20px 22px}
main.mme-home .guide__toc p{font-weight:700;margin-bottom:8px;color:var(--blue-900)}
main.mme-home .guide__toc ol{margin:0;padding-left:1.1em;font-size:.95rem}
main.mme-home .guide__toc li{margin:6px 0}
main.mme-home .guide__toc a{text-decoration:none}
main.mme-home .guide__toc a.is-active{color:var(--copper-600);font-weight:700}
main.mme-home .guide__progress{height:4px;background:var(--line);border-radius:4px;margin-top:16px;overflow:hidden}
main.mme-home .guide__progress span{display:block;height:100%;width:0;background:var(--copper-500);transition:width .1s linear}
main.mme-home .guide article{max-width:760px}
main.mme-home .guide article h3{margin-top:1.8em}
main.mme-home .guide article h3:first-of-type{margin-top:0}
main.mme-home .callout{background:var(--blue-100);border-left:5px solid var(--blue-700);border-radius:var(--radius-sm);padding:16px 20px;margin:1.2em 0;font-weight:500}
main.mme-home .redflags{list-style:none;padding:0;margin:0 0 1em}
main.mme-home .redflags li{position:relative;padding:10px 0 10px 34px;border-bottom:1px solid var(--line)}
main.mme-home .redflags li::before{content:"!";position:absolute;left:0;top:10px;width:22px;height:22px;border-radius:50%;background:var(--alert-600);color:#fff;font-weight:800;font-size:.85rem;display:grid;place-items:center}
@media (max-width:900px){main.mme-home .guide{grid-template-columns:1fr}main.mme-home .guide__toc{position:static}}

/* ---------- FAQ ---------- */
main.mme-home .faq{max-width:860px;margin:0 auto}
main.mme-home .faq details{background:var(--snow);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;overflow:hidden}
main.mme-home .faq summary{cursor:pointer;list-style:none;padding:18px 56px 18px 22px;font-weight:700;color:var(--blue-900);position:relative;font-size:1.05rem}
main.mme-home .faq summary::-webkit-details-marker{display:none}
main.mme-home .faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--copper-600);font-weight:400}
main.mme-home .faq details[open] summary::after{content:"–"}
main.mme-home .faq details p{padding:0 22px 18px;margin:0;color:var(--ink-soft)}

/* ---------- News ---------- */
main.mme-home .news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
main.mme-home .news-card{background:var(--birch);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;border-top:4px solid var(--blue-700);transition:transform .18s, box-shadow .18s}
main.mme-home .news-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
main.mme-home .news-card h3{font-size:1.15rem;margin-bottom:12px}
main.mme-home .news-card h3 a{color:var(--blue-900);text-decoration:none}
main.mme-home .news-card h3 a:hover{color:var(--copper-600)}
main.mme-home .news-card .more{margin-top:auto;font-weight:700;font-size:.92rem;text-decoration:none;color:var(--copper-600)}
@media (max-width:900px){main.mme-home .news-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){main.mme-home .news-grid{grid-template-columns:1fr}}

/* ---------- Scroll reveal (enabled by JS only) ---------- */
.js main.mme-home .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease}
.js main.mme-home .reveal.is-visible{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  main.mme-home *,
main.mme-home *::before,
main.mme-home *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .js main.mme-home .reveal{opacity:1;transform:none}
}

/* ---------- Hello Elementor reset overrides ---------- */
main.mme-home button.svc-tab:hover,main.mme-home button.svc-tab:focus{background:var(--snow);color:var(--blue-900)}
main.mme-home button.svc-tab[aria-pressed="true"]:hover,main.mme-home button.svc-tab[aria-pressed="true"]:focus{background:var(--blue-700);color:#fff}
main.mme-home input[type=search]{max-width:none;line-height:1.4;box-shadow:none}
main.mme-home{display:block;overflow-x:clip}

/* Make the Trustindex review cards use the site's font */
main.mme-home .reviews__widget .ti-widget,
main.mme-home .reviews__widget .ti-widget *{
  font-family:var(--font-body) !important;
}
