/* mobile-cleanup.css: phones only (max-width:767px). Desktop and tablet untouched.
   Loaded last on every page (header + call bar) and on the home page (hero). */
.rd-menu-btn,.v4-hero-sub,.v4-hero-copy h1 .v4-kicker-short{display:none}
@media (max-width:767px){
  .rd-home .v4-showcase .hero-film{inset:0 0 auto 0;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:50% 50%;-webkit-mask-image:linear-gradient(180deg,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 78%,transparent 100%)}
  :root{--hdr-h:64px}
  /* 1. Header: logo + Menu button only. Nav row and header CTA move into the menu panel. */
  .rd-header{flex-wrap:nowrap;min-height:var(--hdr-h);padding-top:max(10px,env(safe-area-inset-top));padding-bottom:10px}
  .rd-menu-btn{order:2;display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;margin-left:auto;padding:0 12px;border:1px solid rgba(255,255,255,.35);border-radius:4px;background:transparent;color:#fff;font:600 16px/1 Arial,Helvetica,sans-serif;cursor:pointer}
  .rd-menu-btn .mb-close{display:none}
  .rd-menu-btn[aria-expanded="true"] .mb-open{display:none}
  .rd-menu-btn[aria-expanded="true"] .mb-close{display:inline}
  .rd-header .rd-nav{display:none}
  .rd-header.is-open .rd-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;position:fixed;top:var(--hdr-h);left:0;right:0;bottom:0;overflow:auto;padding:8px 16px calc(24px + env(safe-area-inset-bottom));background:#111;border-top:1px solid rgba(255,255,255,.16)}
  .rd-header.is-open .rd-menu{display:flex;flex-direction:column;align-items:stretch;width:100%;margin:0;gap:0}
  .rd-header.is-open .rd-menu>li{border-bottom:1px solid rgba(255,255,255,.12)}
  .rd-header.is-open .rd-drop>summary,.rd-header.is-open .rd-navlink{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 4px;font-size:18px}
  .rd-header.is-open .rd-drop>ul{position:static;max-height:none;margin:0 0 12px;box-shadow:none;animation:none}
  .rd-header.is-open .rd-drop>ul a{min-height:44px;display:flex;align-items:center}
  .rd-header.is-open .rd-cta{display:flex;order:4;margin-top:24px;min-height:52px;font-size:16px}
  .rd-header.is-open .rd-phone{display:none}
  body.menu-open{overflow:hidden}
  .rd-wordmark .rd-logo{max-width:calc(100vw - 140px)}

  /* 2. Hero: one screen, darker and calmer, one primary button. */
  .rd-home .v4-showcase{margin:var(--hdr-h) 0 0}
  .rd-home .v4-showcase .showcase-stage{height:calc(100svh - var(--hdr-h) - 64px);min-height:540px;max-height:720px;background:#111}
  .rd-home .v4-showcase .hero-film{filter:saturate(.7) brightness(.85)}
  .rd-home .v4-showcase .hero-scrim{background:linear-gradient(0deg,rgba(17,17,17,.94) 0,rgba(17,17,17,.86) 40%,rgba(17,17,17,.55) 70%,rgba(17,17,17,.35) 100%)}
  .rd-home .v4-hero-copy{bottom:32px;padding-inline:20px;text-align:left}
  .v4-kicker-long{display:none!important}
  .v4-kicker-short{display:block!important}
  .rd-home .v4-hero-copy .v4-hero-kicker{margin:0 0 12px;font-size:14px;line-height:1.4;color:var(--gold)}
  .rd-home .v4-hero-copy h1{font-size:40px;line-height:1.08}
  .v4-hero-sub{display:block;margin:16px 0 0;max-width:34ch;color:#F2F2F2;font-size:17px;line-height:1.5}
  .rd-home .v4-hero-actions{margin-top:24px}
  .rd-home .v4-hero-actions .hero-overlay-cta{width:100%;min-height:52px;background:var(--gold);border-color:var(--gold);color:#111;font-size:17px;font-weight:700}
  /* Call: the site's outline button (transparent, light text, 2px gold border), full width under the gold primary. */
  .rd-home .v4-hero-actions{gap:12px}
  .rd-home .v4-hero-actions .v4-hero-call{display:flex;justify-content:center;width:100%;min-height:52px;font-size:17px;font-weight:700}
  .rd-home .contact-strip{display:none}

  /* 3. Sticky call bar: hidden until the hero buttons scroll away, hidden again while the form is on screen. */
  .js-callbar .oc-callbar{transform:translateY(110%);visibility:hidden;transition:transform 200ms ease,visibility 0s linear 200ms}
  .js-callbar .oc-callbar.is-shown{transform:none;visibility:visible;transition:transform 200ms ease,visibility 0s}
  .oc-callbar-call{flex-grow:1!important}
  .oc-callbar-req{flex-grow:1.6!important;background:var(--gold);color:#111!important;border:1px solid var(--gold)!important}
  .oc-callbar-call{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.7)}

  /* Phone hit areas only. SVG circles are already transparent hit regions;
     CSS geometry enlarges them without changing the map labels or dots. */
  :where(a,button,summary,input:not([type="hidden"]),select,textarea){min-height:44px}
  :where(a:not(svg a)){display:inline-flex;align-items:center}
  :where(button,a):not(:has(:not(svg,svg *))){min-width:44px}
  .rd-map-m .wm-hit{r:38px}
  /* Keep expanded hit circles clear of the adjacent town labels. */
  .rd-map-m a[href="/estate-cleanout-south-berwick-me"] .wm-hit{cx:420px}
  .rd-map-m a[href="/estate-cleanout-greenland-nh"] .wm-hit{cx:190px}
  @media (max-width:389px){.rd-map-m .wm-hit{r:48px}}
  .rd-header.is-open .rd-menu{gap:8px}
  .rd-header.is-open .rd-drop>ul,
  .rd-header.is-open .rd-drop-col>ul{display:flex;flex-direction:column;gap:8px}
  .rd-header.is-open .rd-drop>ul{margin-top:8px}
}
@media (max-width:767px) and (prefers-reduced-motion:reduce){.js-callbar .oc-callbar,.js-callbar .oc-callbar.is-shown{transition:none}}
/* Home H1: one plain headline (2026-11-03) */
@media (max-width:767px){.rd-home .v4-hero-copy h1.v4-hero-title{max-width:none;margin-inline:0;font-size:34px;line-height:1.1}}
