/* Homepage + location landings (see mrg_astra_enqueue_assets) */

/* Full-bleed breakout from Astra content column */
body.home .entry-content > .mrg-home , body.mrg-location-page .entry-content > .mrg-home {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow-x: clip;
}

body.home, body.mrg-location-page {
  --dark:        #2B2930;
  --dark-deep:   #1d1b22;
  --accent:      #6B979B;
  --accent-dk:   #4a7478;
  --accent-lt:   #d4e8ea;
  --bg:          #EFF6F9;
  --white:       #ffffff;
  --text:        #2B2930;
  --mid:         #5a5760;
  --border:      #dde8ea;
  --font-display:'Poppins', system-ui, sans-serif;
  --font-body:   'Poppins', system-ui, sans-serif;
  --r:           4px;
  --rl:          10px;
}

body.home .mrg-home .wrap, body.mrg-location-page .mrg-home .wrap{ max-width: 1180px; margin: 0 auto; padding: 0 24px; }

body.home .mrg-home .eyebrow, body.mrg-location-page .mrg-home .eyebrow{
  display: block;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 12px;
}

/* ---- BUTTONS ---- */
body.home .mrg-home .btn, body.mrg-location-page .mrg-home .btn{ display: inline-block; border-radius: var(--r); font-weight: 600; font-size: 0.95rem; transition: all 0.18s; }
body.home .mrg-home .btn-teal, body.mrg-location-page .mrg-home .btn-teal{ background: var(--accent); color: #fff; padding: 14px 30px; }
body.home .mrg-home .btn-teal:hover, body.mrg-location-page .mrg-home .btn-teal:hover{ background: var(--accent-dk); transform: translateY(-1px); }
body.home .mrg-home .btn-wghost, body.mrg-location-page .mrg-home .btn-wghost{ border: 1.5px solid rgba(255,255,255,0.5); color: #fff; padding: 13px 28px; }
body.home .mrg-home .btn-wghost:hover, body.mrg-location-page .mrg-home .btn-wghost:hover{ border-color: #fff; background: rgba(255,255,255,0.09); }
body.home .mrg-home .btn-dark, body.mrg-location-page .mrg-home .btn-dark{ background: var(--dark); color: #fff; padding: 13px 30px; }
body.home .mrg-home .btn-dark:hover, body.mrg-location-page .mrg-home .btn-dark:hover{ background: #3d3a42; }

/* =====================================================
   HERO
   ===================================================== */
body.home .mrg-home .hero, body.mrg-location-page .mrg-home .hero{
  position: relative;
  height: clamp(580px, 86vh, 860px);
  overflow: hidden;
  display: flex;
  align-items: center;
}
body.home .mrg-home .hero-img, body.mrg-location-page .mrg-home .hero-img{
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 28%;   /* shows roof + upper glazing, not just lawn */
}
body.home .mrg-home .hero-grad, body.mrg-location-page .mrg-home .hero-grad{
  position: absolute; inset: 0;
  background: linear-gradient(108deg, rgba(22,20,27,0.85) 0%, rgba(22,20,27,0.5) 55%, rgba(22,20,27,0.1) 100%);
}
body.home .mrg-home .hero-inner, body.mrg-location-page .mrg-home .hero-inner{
  position: relative; z-index: 2; color: #fff;
  padding-left: max(24px, calc((100vw - 1180px)/2 + 24px));
  padding-right: 24px;
  padding-top: 100px;
  max-width: min(700px, 90vw);
}
body.home .mrg-home .hero-inner .eyebrow, body.mrg-location-page .mrg-home .hero-inner .eyebrow{ color: var(--accent); opacity: 0.9; margin-bottom: 18px; }
body.home .mrg-home .hero h1, body.mrg-location-page .mrg-home .hero h1{
  font-family: var(--font-display);
  font-size: clamp(2.8rem, 5.5vw, 4.2rem);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.5px;
  color: #fff;
  margin-bottom: 22px;
}
@media (min-width: 1200px) {
  body.home .mrg-home .hero-inner, body.mrg-location-page .mrg-home .hero-inner{ max-width: 1200px; }
  body.home .mrg-home .hero h1, body.mrg-location-page .mrg-home .hero h1{ font-size: clamp(3.2rem, 4.8vw, 5rem); }
}
@media (min-width: 1600px) {
  body.home .mrg-home .hero-inner, body.mrg-location-page .mrg-home .hero-inner{ max-width: 1400px; }
  body.home .mrg-home .hero h1, body.mrg-location-page .mrg-home .hero h1{ font-size: clamp(3.6rem, 4.2vw, 5.75rem); }
}
body.home .mrg-home .hero-sub, body.mrg-location-page .mrg-home .hero-sub{ font-size: 1.08rem; color: rgba(255,255,255,0.8); line-height: 1.68; max-width: 510px; margin-bottom: 34px; font-weight: 400; }
body.home .mrg-home .hero-btns, body.mrg-location-page .mrg-home .hero-btns{ display: flex; gap: 14px; flex-wrap: wrap; }
body.home .mrg-home .hero-proof, body.mrg-location-page .mrg-home .hero-proof{ margin-top: 32px; display: flex; align-items: center; gap: 10px; font-size: 0.8rem; color: rgba(255,255,255,0.55); flex-wrap: wrap; }
body.home .mrg-home .hero-proof-stars, body.mrg-location-page .mrg-home .hero-proof-stars{ color: #f5c518; letter-spacing: 2px; font-size: 0.9rem; }
body.home .mrg-home .hero-sep, body.mrg-location-page .mrg-home .hero-sep{ opacity: 0.25; }

/* =====================================================
   TRUST STRIP — single row, full viewport width (desktop)
   Below 1200px: theme.css marquee takes over
   ===================================================== */
body.home .mrg-home .trust, body.mrg-location-page .mrg-home .trust{ background: var(--dark); border-top: 1px solid rgba(255,255,255,0.05); }
body.home .mrg-home .trust .wrap, body.mrg-location-page .mrg-home .trust .wrap{
  display: flex;
  max-width: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
body.home .mrg-home .trust-items, body.mrg-location-page .mrg-home .trust-items{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
body.home .mrg-home .trust-item, body.mrg-location-page .mrg-home .trust-item{
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,0.72);
  font-weight: 500;
  border-right: 1px solid rgba(255,255,255,0.07);
  white-space: nowrap;
}
body.home .mrg-home .trust-item:last-child, body.mrg-location-page .mrg-home .trust-item:last-child{ border-right: none; }
body.home .mrg-home .trust-pip, body.mrg-location-page .mrg-home .trust-pip{ width: 5px; height: 5px; background: var(--accent); border-radius: 50%; flex-shrink: 0; }

@media (min-width: 1200px) {
  body.home .mrg-home .trust .wrap, body.mrg-location-page .mrg-home .trust .wrap{
    justify-content: stretch;
  }
  body.home .mrg-home .trust-items, body.mrg-location-page .mrg-home .trust-items{
    justify-content: space-between;
    width: 100%;
  }
  body.home .mrg-home .trust-item, body.mrg-location-page .mrg-home .trust-item{
    flex: 1 1 0;
    min-width: 0;
    justify-content: center;
    gap: 8px;
    padding: 19px clamp(6px, 0.9vw, 18px);
    font-size: clamp(0.68rem, 0.78vw + 0.35rem, 0.84rem);
  }
  body.home .mrg-home .trust-item[aria-hidden="true"] , body.mrg-location-page .mrg-home .trust-item[aria-hidden="true"] {
    display: none !important;
  }
}

/* =====================================================
   INTRO — two column
   ===================================================== */
body.home .mrg-home .intro, body.mrg-location-page .mrg-home .intro{ padding: 100px 0; }
body.home .mrg-home .intro .wrap, body.mrg-location-page .mrg-home .intro .wrap{ display: grid; grid-template-columns: 1fr 1fr; gap: 84px; align-items: center; }
body.home .mrg-home .img-stack, body.mrg-location-page .mrg-home .img-stack{ position: relative; }
body.home .mrg-home .img-main, body.mrg-location-page .mrg-home .img-main{ width: 100%; height: 580px; object-fit: cover; object-position: center 20%; border-radius: var(--rl); }
body.home .mrg-home .img-float, body.mrg-location-page .mrg-home .img-float{
  position: absolute; bottom: -32px; right: -32px;
  width: 230px; height: 190px;
  object-fit: cover; object-position: center;
  border-radius: var(--rl);
  border: 5px solid #fff;
  box-shadow: 0 18px 44px rgba(0,0,0,0.2);
}
body.home .mrg-home .intro-text h2, body.mrg-location-page .mrg-home .intro-text h2{
  font-family: var(--font-display);
  font-size: clamp(2.1rem, 3.5vw, 2.85rem);
  font-weight: 700; letter-spacing: -0.3px;
  margin-bottom: 18px; line-height: 1.1;
}
body.home .mrg-home .intro-text p, body.mrg-location-page .mrg-home .intro-text p{ font-size: 1rem; color: var(--mid); line-height: 1.77; margin-bottom: 14px; font-weight: 400; }
body.home .mrg-home .feats, body.mrg-location-page .mrg-home .feats{ margin-top: 32px; }
body.home .mrg-home .feat, body.mrg-location-page .mrg-home .feat{ display: flex; gap: 18px; align-items: flex-start; padding: 18px 0; border-bottom: 1px solid var(--border); }
body.home .mrg-home .feat:first-child, body.mrg-location-page .mrg-home .feat:first-child{ border-top: 1px solid var(--border); }
body.home .mrg-home .feat-bar, body.mrg-location-page .mrg-home .feat-bar{ width: 3px; height: 44px; background: var(--accent); border-radius: 2px; flex-shrink: 0; margin-top: 2px; }
body.home .mrg-home .feat h4, body.mrg-location-page .mrg-home .feat h4{ font-size: 0.95rem; font-weight: 700; margin-bottom: 3px; }
body.home .mrg-home .feat p, body.mrg-location-page .mrg-home .feat p{ font-size: 0.86rem; color: var(--mid); margin: 0; font-weight: 400; }

/* =====================================================
   FULL-BLEED BREAK
   ===================================================== */
body.home .mrg-home .break, body.mrg-location-page .mrg-home .break{ position: relative; height: clamp(360px, 48vw, 600px); overflow: hidden; }
body.home .mrg-home .break img, body.mrg-location-page .mrg-home .break img{ width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
body.home .mrg-home .break-cap, body.mrg-location-page .mrg-home .break-cap{
  position: absolute; bottom: 0; left: 0; right: 0;
  padding: 64px 40px 28px;
  background: linear-gradient(0, rgba(22,20,27,0.68) 0%, transparent 100%);
  color: #fff; font-size: 0.75rem; font-weight: 600;
  letter-spacing: 2.5px; text-transform: uppercase;
}

/* =====================================================
   MODELS
   ===================================================== */
body.home .mrg-home .models, body.mrg-location-page .mrg-home .models{ padding: 100px 0; background: var(--bg); }
body.home .mrg-home .sec-head, body.mrg-location-page .mrg-home .sec-head{ text-align: center; margin-bottom: 56px; }
body.home .mrg-home .sec-head h2, body.mrg-location-page .mrg-home .sec-head h2{ font-family: var(--font-display); font-size: clamp(2.1rem, 3.5vw, 2.85rem); font-weight: 700; letter-spacing: -0.3px; margin-bottom: 14px; }
body.home .mrg-home .sec-head p, body.mrg-location-page .mrg-home .sec-head p{ font-size: 1rem; color: var(--mid); max-width: 560px; margin: 0 auto; font-weight: 400; }
body.home .mrg-home .models-grid, body.mrg-location-page .mrg-home .models-grid{ display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
body.home .mrg-home .mcard, body.mrg-location-page .mrg-home .mcard{ background: #fff; border-radius: var(--rl); overflow: hidden; box-shadow: 0 2px 14px rgba(43,41,48,0.06); transition: transform 0.22s, box-shadow 0.22s; display: flex; flex-direction: column; }
body.home .mrg-home .mcard:hover, body.mrg-location-page .mrg-home .mcard:hover{ transform: translateY(-6px); box-shadow: 0 18px 52px rgba(43,41,48,0.13); }
body.home .mrg-home .mcard-img, body.mrg-location-page .mrg-home .mcard-img{ position: relative; overflow: hidden; }
body.home .mrg-home .mcard-img img, body.mrg-location-page .mrg-home .mcard-img img{ width: 100%; height: 286px; object-fit: cover; object-position: center 18%; transition: transform 0.4s; }
body.home .mrg-home .mcard:hover .mcard-img img, body.mrg-location-page .mrg-home .mcard:hover .mcard-img img{ transform: scale(1.04); }
body.home .mrg-home .mpill, body.mrg-location-page .mrg-home .mpill{ position: absolute; top: 16px; left: 16px; background: var(--dark); color: #fff; font-size: 0.66rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; padding: 5px 12px; border-radius: 2px; }
body.home .mrg-home .mcard-body, body.mrg-location-page .mrg-home .mcard-body{ padding: 28px; flex: 1; display: flex; flex-direction: column; }
body.home .mrg-home .mcard-body h3, body.mrg-location-page .mrg-home .mcard-body h3{ font-family: var(--font-display); font-size: 1.65rem; font-weight: 700; letter-spacing: -0.2px; margin-bottom: 8px; }
body.home .mrg-home .mcard-body p, body.mrg-location-page .mrg-home .mcard-body p{ font-size: 0.88rem; color: var(--mid); flex: 1; line-height: 1.67; margin-bottom: 20px; font-weight: 400; }
body.home .mrg-home .mcard-link, body.mrg-location-page .mrg-home .mcard-link{ display: flex; align-items: center; gap: 6px; font-size: 0.87rem; font-weight: 700; color: var(--accent); border-top: 1px solid var(--border); padding-top: 18px; transition: gap 0.15s; }
body.home .mrg-home .mcard-link::after, body.mrg-location-page .mrg-home .mcard-link::after{ content: '→'; }
body.home .mrg-home .mcard:hover .mcard-link, body.mrg-location-page .mrg-home .mcard:hover .mcard-link{ gap: 10px; }

/* =====================================================
   GALLERY
   ===================================================== */
body.home .mrg-home .gallery, body.mrg-location-page .mrg-home .gallery{ padding: 100px 0; }
body.home .mrg-home .gallery-grid, body.mrg-location-page .mrg-home .gallery-grid{
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: 290px 290px;
  gap: 10px;
  margin-bottom: 32px;
}
body.home .mrg-home .g1, body.mrg-location-page .mrg-home .g1{ grid-column: 1/6; grid-row: 1/2; }
body.home .mrg-home .g2, body.mrg-location-page .mrg-home .g2{ grid-column: 6/9; grid-row: 1/2; }
body.home .mrg-home .g3, body.mrg-location-page .mrg-home .g3{ grid-column: 9/13; grid-row: 1/2; }
body.home .mrg-home .g4, body.mrg-location-page .mrg-home .g4{ grid-column: 1/4; grid-row: 2/3; }
body.home .mrg-home .g5, body.mrg-location-page .mrg-home .g5{ grid-column: 4/9; grid-row: 2/3; }
body.home .mrg-home .g6, body.mrg-location-page .mrg-home .g6{ grid-column: 9/13; grid-row: 2/3; }
body.home .mrg-home .gallery-grid img, body.mrg-location-page .mrg-home .gallery-grid img{ width: 100%; height: 100%; object-fit: cover; border-radius: var(--r); display: block; }
body.home .mrg-home .gallery-foot, body.mrg-location-page .mrg-home .gallery-foot{ text-align: center; }

/* =====================================================
   PROOF
   ===================================================== */
body.home .mrg-home .proof, body.mrg-location-page .mrg-home .proof{ padding: 100px 0; background: var(--bg); }
body.home .mrg-home .rev-grid, body.mrg-location-page .mrg-home .rev-grid{ display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin-bottom: 48px; }
body.home .mrg-home .rev, body.mrg-location-page .mrg-home .rev{ background: #fff; padding: 32px; border-radius: var(--rl); box-shadow: 0 2px 12px rgba(43,41,48,0.05); display: flex; flex-direction: column; }
body.home .mrg-home .rev-stars, body.mrg-location-page .mrg-home .rev-stars{ color: #f5c518; letter-spacing: 2px; margin-bottom: 14px; }
body.home .mrg-home .rev-q, body.mrg-location-page .mrg-home .rev-q{ font-size: 0.93rem; color: var(--mid); line-height: 1.75; font-style: italic; flex: 1; margin-bottom: 18px; font-weight: 400; }
body.home .mrg-home .rev-name, body.mrg-location-page .mrg-home .rev-name{ font-size: 0.82rem; font-weight: 700; }
body.home .mrg-home .rev-loc, body.mrg-location-page .mrg-home .rev-loc{ font-size: 0.77rem; color: var(--accent); font-weight: 500; }
body.home .mrg-home .kieron-cta, body.mrg-location-page .mrg-home .kieron-cta{
  background: var(--dark); border-radius: var(--rl); padding: 48px 52px;
  display: grid; grid-template-columns: auto 1fr auto;
  gap: 40px; align-items: center;
}
body.home .mrg-home .k-init, body.mrg-location-page .mrg-home .k-init{ width: 78px; height: 78px; background: var(--accent); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-size: 1.9rem; font-weight: 700; color: #fff; flex-shrink: 0; }
body.home .mrg-home .k-text h3, body.mrg-location-page .mrg-home .k-text h3{ font-family: var(--font-display); font-size: 1.55rem; font-weight: 700; color: #fff; margin-bottom: 6px; }
body.home .mrg-home .k-text p, body.mrg-location-page .mrg-home .k-text p{ font-size: 0.9rem; color: rgba(255,255,255,0.62); font-weight: 400; line-height: 1.6; }
body.home .mrg-home .k-actions, body.mrg-location-page .mrg-home .k-actions{ display: flex; flex-direction: column; gap: 11px; flex-shrink: 0; }
body.home .mrg-home .btn-ghost-w, body.mrg-location-page .mrg-home .btn-ghost-w{ border: 1.5px solid rgba(255,255,255,0.22); color: rgba(255,255,255,0.72); padding: 12px 22px; border-radius: var(--r); font-weight: 600; font-size: 0.88rem; text-align: center; transition: all 0.18s; display: block; }
body.home .mrg-home .btn-ghost-w:hover, body.mrg-location-page .mrg-home .btn-ghost-w:hover{ border-color: #fff; color: #fff; }

/* =====================================================
   FEATURED
   ===================================================== */
body.home .mrg-home .featured, body.mrg-location-page .mrg-home .featured{ background: #fff; padding: 48px 0; border-top: 1px solid var(--border); }
body.home .mrg-home .featured .wrap, body.mrg-location-page .mrg-home .featured .wrap{ display: flex; align-items: center; gap: 28px 36px; justify-content: center; flex-wrap: wrap; }
body.home .mrg-home .feat-label, body.mrg-location-page .mrg-home .feat-label{ font-size: 0.7rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #bbb; flex: 0 0 auto; }
body.home .mrg-home .feat-logos, body.mrg-location-page .mrg-home .feat-logos{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 18px 32px;
	flex: 1 1 280px;
}
body.home .mrg-home .feat-logo-link, body.mrg-location-page .mrg-home .feat-logo-link{
	display: inline-flex;
	align-items: center;
	line-height: 0;
	opacity: 1;
	transition: opacity 0.15s ease;
}
body.home .mrg-home .feat-logo, body.mrg-location-page .mrg-home .feat-logo{
	display: block;
	height: 28px;
	width: auto;
	max-width: 180px;
	object-fit: contain;
	object-position: center;
	opacity: 0.72;
	transition: opacity 0.15s ease;
}
body.home .mrg-home .feat-logo-link:hover .feat-logo,
body.mrg-location-page .mrg-home .feat-logo-link:hover .feat-logo,
body.home .mrg-home a.feat-logo-link:focus-visible .feat-logo,
body.mrg-location-page .mrg-home a.feat-logo-link:focus-visible .feat-logo{
	opacity: 1;
}
body.home .mrg-home .feat-div, body.mrg-location-page .mrg-home .feat-div{ width: 1px; height: 26px; background: var(--border); }
body.home .mrg-home .feat-name, body.mrg-location-page .mrg-home .feat-name{ font-family: var(--font-display); font-size: 1.35rem; font-weight: 700; color: #c0c0c0; letter-spacing: -0.2px; transition: color 0.15s; }
body.home .mrg-home .feat-name:hover, body.mrg-location-page .mrg-home .feat-name:hover{ color: var(--dark); }

@media (max-width: 700px){
	body.home .mrg-home .feat-logo, body.mrg-location-page .mrg-home .feat-logo{
		height: 22px;
		max-width: 120px;
	}
	body.home .mrg-home .feat-logos, body.mrg-location-page .mrg-home .feat-logos{ gap: 14px 22px; }
}

/* =====================================================
   FAQ
   ===================================================== */
body.home .mrg-home .faq, body.mrg-location-page .mrg-home .faq{ padding: 100px 0; background: var(--bg); }
body.home .mrg-home .faq-cols, body.mrg-location-page .mrg-home .faq-cols{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
body.home .mrg-home .faq-item, body.mrg-location-page .mrg-home .faq-item{ background: #fff; border-radius: var(--rl); overflow: hidden; border: 1px solid var(--border); }
body.home .mrg-home .faq-q, body.mrg-location-page .mrg-home .faq-q{ padding: 20px 22px; font-weight: 600; font-size: 0.92rem; cursor: pointer; display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; user-select: none; line-height: 1.45; }
body.home .mrg-home .faq-q:hover, body.mrg-location-page .mrg-home .faq-q:hover{ color: var(--accent); }
body.home .mrg-home .faq-chev, body.mrg-location-page .mrg-home .faq-chev{ flex-shrink: 0; width: 24px; height: 24px; border: 1.5px solid var(--border); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; transition: transform 0.22s, border-color 0.18s; color: var(--accent); margin-top: 1px; }

body.home .mrg-home .faq-a, body.mrg-location-page .mrg-home .faq-a{ display: none; padding: 0 22px 20px; font-size: 0.88rem; color: var(--mid); line-height: 1.72; font-weight: 400; border-top: 1px solid var(--border); }

/* =====================================================
   CLOSING CTA
   ===================================================== */
body.home .mrg-home .cta-fin, body.mrg-location-page .mrg-home .cta-fin{ position: relative; overflow: hidden; padding: 130px 0; text-align: center; }
body.home .mrg-home .cta-fin-bg, body.mrg-location-page .mrg-home .cta-fin-bg{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 30%; }
body.home .mrg-home .cta-fin-ov, body.mrg-location-page .mrg-home .cta-fin-ov{ position: absolute; inset: 0; background: rgba(22,20,27,0.78); }
body.home .mrg-home .cta-fin-inner, body.mrg-location-page .mrg-home .cta-fin-inner{ position: relative; z-index: 2; color: #fff; }
body.home .mrg-home .cta-fin h2, body.mrg-location-page .mrg-home .cta-fin h2{ font-family: var(--font-display); font-size: clamp(2.4rem, 4.2vw, 3.4rem); font-weight: 700; letter-spacing: -0.3px; color: #fff; margin-bottom: 16px; }
body.home .mrg-home .cta-fin p, body.mrg-location-page .mrg-home .cta-fin p{ color: rgba(255,255,255,0.68); font-size: 1.05rem; max-width: 500px; margin: 0 auto 36px; font-weight: 400; }
body.home .mrg-home .cta-fin-btns, body.mrg-location-page .mrg-home .cta-fin-btns{ display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; }

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media(max-width:1060px){
  body.home .mrg-home .intro .wrap, body.mrg-location-page .mrg-home .intro .wrap{grid-template-columns:1fr;gap:48px;}
  body.home .mrg-home .img-float, body.mrg-location-page .mrg-home .img-float{display:none;}
  body.home .mrg-home .img-main, body.mrg-location-page .mrg-home .img-main{height:380px;}
  body.home .mrg-home .kieron-cta, body.mrg-location-page .mrg-home .kieron-cta{grid-template-columns:auto 1fr;gap:24px;}
  body.home .mrg-home .k-actions, body.mrg-location-page .mrg-home .k-actions{grid-column:1/-1;flex-direction:row;}
}
@media(max-width:900px){
  body.home .mrg-home .models-grid, body.mrg-location-page .mrg-home .models-grid{grid-template-columns:1fr 1fr;}
  body.home .mrg-home .rev-grid, body.mrg-location-page .mrg-home .rev-grid{grid-template-columns:1fr;}
  body.home .mrg-home .gallery-grid, body.mrg-location-page .mrg-home .gallery-grid{grid-template-columns:1fr 1fr 1fr;grid-template-rows:180px 180px;}
  body.home .mrg-home .g1, body.mrg-location-page .mrg-home .g1,
body.home .mrg-home .g2, body.mrg-location-page .mrg-home .g2,
body.home .mrg-home .g3, body.mrg-location-page .mrg-home .g3,
body.home .mrg-home .g4, body.mrg-location-page .mrg-home .g4,
body.home .mrg-home .g5, body.mrg-location-page .mrg-home .g5,
body.home .mrg-home .g6, body.mrg-location-page .mrg-home .g6{grid-column:auto;grid-row:auto;}
  body.home .mrg-home .footer-g, body.mrg-location-page .mrg-home .footer-g{grid-template-columns:1fr 1fr;gap:32px;}
  body.home .mrg-home .faq-cols, body.mrg-location-page .mrg-home .faq-cols{grid-template-columns:1fr;}
}
@media(max-width:640px){
  body.home .mrg-home .hero h1, body.mrg-location-page .mrg-home .hero h1{font-size:2.3rem;}
  body.home .mrg-home .models-grid, body.mrg-location-page .mrg-home .models-grid{grid-template-columns:1fr;}
  body.home .mrg-home .gallery-grid, body.mrg-location-page .mrg-home .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,155px);}
  body.home .mrg-home .kieron-cta, body.mrg-location-page .mrg-home .kieron-cta{padding:28px;grid-template-columns:1fr;}
  body.home .mrg-home .k-init, body.mrg-location-page .mrg-home .k-init{display:none;}
  body.home .mrg-home .k-actions, body.mrg-location-page .mrg-home .k-actions{flex-direction:column;}
  body.home .mrg-home .trust-item, body.mrg-location-page .mrg-home .trust-item{padding:16px 14px;font-size:0.79rem;}
  body.home .mrg-home .footer-g, body.mrg-location-page .mrg-home .footer-g{grid-template-columns:1fr;}
  body.home .mrg-home .break-cap, body.mrg-location-page .mrg-home .break-cap{padding:36px 24px 20px;}
}

/* =====================================================
   USES GRID
   ===================================================== */
body.home .mrg-home .uses, body.mrg-location-page .mrg-home .uses{ padding: 100px 0; background: var(--white); }
body.home .mrg-home .uses-grid, body.mrg-location-page .mrg-home .uses-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
body.home .mrg-home .use-card, body.mrg-location-page .mrg-home .use-card{
  display: flex;
  flex-direction: column;
  background: var(--bg);
  border-radius: var(--rl);
  overflow: hidden;
  border: 1px solid var(--border);
  transition: transform 0.22s, box-shadow 0.22s;
  color: var(--text);
}
body.home .mrg-home .use-card:hover, body.mrg-location-page .mrg-home .use-card:hover{
  transform: translateY(-5px);
  box-shadow: 0 16px 44px rgba(43,41,48,0.11);
}
body.home .mrg-home .use-img-wrap, body.mrg-location-page .mrg-home .use-img-wrap{ overflow: hidden; }
body.home .mrg-home .use-img-wrap img, body.mrg-location-page .mrg-home .use-img-wrap img{
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: center 25%;
  display: block;
  transition: transform 0.4s;
}
body.home .mrg-home .use-card:hover .use-img-wrap img, body.mrg-location-page .mrg-home .use-card:hover .use-img-wrap img{ transform: scale(1.04); }
body.home .mrg-home .use-body, body.mrg-location-page .mrg-home .use-body{ padding: 22px 24px 24px; flex: 1; display: flex; flex-direction: column; }
body.home .mrg-home .use-body h3, body.mrg-location-page .mrg-home .use-body h3{ font-size: 1.08rem; font-weight: 700; margin-bottom: 7px; }
body.home .mrg-home .use-body p, body.mrg-location-page .mrg-home .use-body p{ font-size: 0.85rem; color: var(--mid); line-height: 1.65; flex: 1; margin-bottom: 14px; font-weight: 400; }
body.home .mrg-home .use-link, body.mrg-location-page .mrg-home .use-link{ font-size: 0.82rem; font-weight: 700; color: var(--accent); margin-top: auto; }
body.home .mrg-home .use-card:hover .use-link, body.mrg-location-page .mrg-home .use-card:hover .use-link{ text-decoration: underline; }
@media(max-width:900px) { body.home .mrg-home .uses-grid, body.mrg-location-page .mrg-home .uses-grid{ grid-template-columns: 1fr 1fr; } }
@media(max-width:600px) { body.home .mrg-home .uses-grid, body.mrg-location-page .mrg-home .uses-grid{ grid-template-columns: 1fr; } }

/* Utilities replacing former inline styles */
body.home .mrg-home .intro-cta , body.mrg-location-page .mrg-home .intro-cta { margin-top: 36px; }
body.home .mrg-home .models-cta , body.mrg-location-page .mrg-home .models-cta { text-align: center; margin-top: 44px; }
body.home .mrg-home .btn-lg , body.mrg-location-page .mrg-home .btn-lg { padding: 16px 38px; font-size: 1rem; }
body.home .mrg-home .btn-nowrap , body.mrg-location-page .mrg-home .btn-nowrap { text-align: center; white-space: nowrap; }
body.home .mrg-home .eyebrow--center , body.mrg-location-page .mrg-home .eyebrow--center { display: block; text-align: center; margin-bottom: 18px; }
body.home .mrg-home img.break-img--42, body.mrg-location-page .mrg-home img.break-img--42,
body.home .mrg-home .break-img--42 , body.mrg-location-page .mrg-home .break-img--42 { object-position: center 42%; }
body.home .mrg-home img.break-img--57, body.mrg-location-page .mrg-home img.break-img--57,
body.home .mrg-home .break-img--57 , body.mrg-location-page .mrg-home .break-img--57 { object-position: center 57%; }
body.home .mrg-home .use-img--mid , body.mrg-location-page .mrg-home .use-img--mid { object-position: center 50%; }

/* Native details FAQ */
body.home .mrg-home details.faq-item > summary , body.mrg-location-page .mrg-home details.faq-item > summary {
  list-style: none;
}
body.home .mrg-home details.faq-item > summary::-webkit-details-marker , body.mrg-location-page .mrg-home details.faq-item > summary::-webkit-details-marker { display: none; }
body.home .mrg-home details.faq-item > summary.faq-q::after , body.mrg-location-page .mrg-home details.faq-item > summary.faq-q::after {
  content: "";
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border: 1.5px solid var(--border, #dde8ea);
  border-radius: 50%;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B979B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
  transition: transform 0.22s, border-color 0.18s;
  margin-top: 1px;
}
body.home .mrg-home details.faq-item[open] > summary.faq-q::after , body.mrg-location-page .mrg-home details.faq-item[open] > summary.faq-q::after {
  transform: rotate(180deg);
  border-color: var(--accent, #6B979B);
}
body.home .mrg-home details.faq-item .faq-a , body.mrg-location-page .mrg-home details.faq-item .faq-a {
  display: block;
  padding: 0 22px 20px;
  font-size: 0.88rem;
  color: var(--mid, #5a5760);
  line-height: 1.72;
  border-top: 1px solid var(--border, #dde8ea);
}

/* Ensure homepage anchors keep accent hover without inheriting theme link colors oddly */
body.home .mrg-home a.btn, body.mrg-location-page .mrg-home a.btn,
body.home .mrg-home a.mcard-link, body.mrg-location-page .mrg-home a.mcard-link,
body.home .mrg-home a.use-card, body.mrg-location-page .mrg-home a.use-card,
body.home .mrg-home a.btn-dark, body.mrg-location-page .mrg-home a.btn-dark,
body.home .mrg-home a.btn-ghost-w, body.mrg-location-page .mrg-home a.btn-ghost-w,
body.home .mrg-home a.feat-name , body.mrg-location-page .mrg-home a.feat-name {
  text-decoration: none;
}

/* Location landings — flush under header like homepage */
body.mrg-location-page.ast-plain-container.ast-no-sidebar #primary {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
}
body.mrg-location-page .entry-header {
  display: none;
}
/* Astra featured image sits above the custom .hero and breaks mobile layout */
body.mrg-location-page .ast-single-post-featured-section,
body.mrg-location-page .site-main > .post-thumb {
  display: none !important;
}
body.mrg-location-page .entry-content {
  margin: 0;
  padding: 0;
}
body.mrg-location-page .site-main > article {
  margin: 0;
  padding: 0;
  background: transparent;
}

/* Live Google Reviews feed (Trustindex / Widgets for Google Reviews) */
body.home .mrg-home .mrg-reviews-feed,
body.mrg-location-page .mrg-home .mrg-reviews-feed {
  margin-bottom: 48px;
}
body.home .mrg-home .mrg-reviews-feed .ti-widget,
body.mrg-location-page .mrg-home .mrg-reviews-feed .ti-widget {
  max-width: 100%;
  margin: 0 auto;
}
