/* Sellers Roofing redesign. Load after style.css and refinements.css. */
body.sellers-redesign {
  --color-bg: #fff;
  --color-surface: #fff;
  --color-surface-2: #fff;
  --color-surface-offset: #f5f4f1;
  --color-surface-ink: #121212;
  --color-text: #171717;
  --color-text-muted: #535353;
  --color-text-faint: #626262;
  --color-accent: #cc1237;
  --color-accent-hover: #a60e2c;
  --color-accent-soft: #fff0f3;
  --color-divider: #deddd9;
  --color-border: #d3d2ce;
  --font-display: 'Barlow Condensed', 'Arial Narrow', Impact, sans-serif;
  --font-serif: var(--font-display);
  --font-sans: 'DM Sans', Arial, sans-serif;
  --radius-sm: 3px;
  --radius: 4px;
  --radius-lg: 6px;
  --container: 1320px;
  --text-2xl: clamp(2.25rem, 4.5vw, 4rem);
  --text-3xl: clamp(2.75rem, 5vw, 4.75rem);
  color: var(--color-text);
  background: #fff;
  font-family: var(--font-sans);
  font-size: 1rem;
  line-height: 1.7;
}
.sellers-redesign :where(h1,h2,h3,h4) {
  font-family: var(--font-display);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: .005em;
}
.sellers-redesign :where(h1,h2) { text-transform: uppercase; }
.sellers-redesign p { line-height: 1.75; }
.sellers-redesign .container { padding-inline: clamp(1.25rem, 4vw, 3rem); }
.sellers-redesign main [id] { scroll-margin-top: 104px; }
.sellers-redesign .eyebrow { font-size: .75rem; font-weight: 700; letter-spacing: .15em; }
.sellers-redesign .eyebrow::before { width: 28px; height: 3px; flex: 0 0 28px; }
.sellers-redesign :where(a,button,input,select,textarea,summary):focus-visible {
  outline: 3px solid #2369cb;
  outline-offset: 4px;
}
.sellers-redesign :where(.sr-dark,.sr-hero,.site-header,.site-footer) :where(a,button,summary):focus-visible {
  outline-color: #ffda63;
}
.sellers-redesign .btn {
  border-radius: 3px;
  min-height: 52px;
  padding: .95rem 1.5rem;
  font-family: var(--font-sans);
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .035em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}
.sellers-redesign .btn:hover { transform: none; box-shadow: none; }
.sellers-redesign .btn--primary { background: #cc1237; color: #fff; }
.sellers-redesign .btn--primary:hover { background: #a60e2c; }
.sellers-redesign .btn--ink { border-color: #858585; background: transparent; color: #fff; }
.sellers-redesign .btn--ink:hover { background: #fff; color: #171717; border-color: #fff; }
.sellers-redesign .btn--ghost { border-color: #727272; color: #171717; }
.sellers-redesign .btn--ghost:hover { border-color: #cc1237; color: #a60e2c; }

/* Dark header and an explicit, keyboard-operable mobile menu. */
.sellers-redesign .site-header,
.sellers-redesign .site-header.is-scrolled {
  height: 88px;
  background: #111;
  border-bottom: 1px solid #343434;
  color: #fff;
  backdrop-filter: none;
}
.sellers-redesign .site-header.is-scrolled { box-shadow: 0 3px 16px #0003; }
.sellers-redesign .header-inner { gap: 1.5rem; }
.sellers-redesign .brand { color: #fff; gap: .7rem; }
.sellers-redesign .brand .brand-name { font-family: var(--font-display); font-size: 1.65rem; font-weight: 700; line-height: 1; }
.sellers-redesign .brand .brand-accent { color: #ff466b; }
.sellers-redesign .brand .brand-region { color: #d7d7d7; font-size: .6rem; letter-spacing: .13em; margin-top: .45rem; }
.sellers-redesign .brand-icon { width: 39px; height: 39px; flex-basis: 39px; color: #ff466b; }
.sellers-redesign .site-header .custom-logo { max-width: 215px; max-height: 60px; }
.sellers-redesign .primary-nav { gap: 1.2rem; }
.sellers-redesign .primary-nav > a,
.sellers-redesign .nav-disclosure { color: #f8f8f8; min-height: 48px; font-size: .825rem; font-weight: 600; letter-spacing: .015em; }
.sellers-redesign .primary-nav > a:hover,
.sellers-redesign .nav-disclosure:hover,
.sellers-redesign .nav-disclosure[aria-expanded="true"] { color: #ff94aa; }
.sellers-redesign .primary-nav .nav-submenu { padding: .4rem 0; border: 1px solid #d8d8d8; border-top: 3px solid #cc1237; border-radius: 0; background: #fff; box-shadow: 0 15px 35px #0003; }
.sellers-redesign .primary-nav .nav-submenu a { color: #171717; padding: .8rem 1.1rem; min-height: 46px; font-size: .875rem; }
.sellers-redesign .primary-nav .nav-submenu a:hover { color: #a60e2c; background: #f6f3f3; }
.sellers-redesign .header-cta { gap: .8rem; }
.sellers-redesign .header-phone { color: #fff; min-height: 44px; font-size: .85rem; }
.sellers-redesign .header-phone:hover { color: #ff94aa; }
.sellers-redesign .header-cta .btn { min-height: 48px; padding: .8rem 1.1rem; font-size: .75rem; }
.sellers-redesign .nav-toggle { width: 46px; height: 46px; border: 1px solid #777; color: #fff; border-radius: 3px; }
.sellers-redesign .nav-toggle:hover { background: #272727; }

/* Photographic homepage hero. The uploaded crew photograph remains the focus. */
.sellers-redesign main .sr-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: 690px;
  padding: 84px 0 88px;
  background: #161616;
  color: #fff;
  overflow: clip;
}
.sellers-redesign .sr-hero-photo { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; object-position: 62% 48%; }
.sellers-redesign .sr-hero-shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(10,12,12,.91) 0%, rgba(10,12,12,.81) 28%, rgba(10,12,12,.39) 58%, rgba(10,12,12,.09) 100%); }
.sellers-redesign .sr-hero-inner { position: relative; width: 100%; }
.sellers-redesign .sr-hero-copy { width: min(610px, 58%); }
.sellers-redesign .sr-hero .eyebrow { color: #fff; font-size: .74rem; margin-bottom: 1.25rem; }
.sellers-redesign .sr-hero .eyebrow::before { background: #ff466b; }
.sellers-redesign .sr-hero h1 { color: #fff; font-weight: 800; font-size: clamp(4rem, 7vw, 6.5rem); line-height: .94; letter-spacing: -.01em; max-width: 11ch; margin: 0 0 1.5rem; text-wrap: balance; }
.sellers-redesign .sr-hero h1 span { color: #fff; }
.sellers-redesign .sr-hero-lead { color: #f4f4f4; max-width: 44ch; font-size: 1.1rem; line-height: 1.7; margin: 0 0 1.8rem; }
.sellers-redesign .sr-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; margin-top: 1.5rem; }
.sellers-redesign .sr-hero .sr-actions { margin-top: 0; }
.sellers-redesign .sr-hero .btn--ghost { background: transparent; border-color: #b4b4b4; color: #fff; }
.sellers-redesign .sr-hero .btn--ghost:hover { color: #111; background: #fff; border-color: #fff; }
.sellers-redesign .sr-hero-note { color: #e2e2e2; font-size: .8rem; line-height: 1.6; max-width: 51ch; margin: 1.2rem 0 0; }

/* Compact promise strip and the main page rhythm. */
.sellers-redesign main .sr-intro-strip { padding: 0; border-bottom: 1px solid #deddd9; background: #fff; }
.sellers-redesign .sr-promises { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.sellers-redesign .sr-promise { position: relative; display: grid; grid-template-columns: 40px minmax(0,1fr); column-gap: 1rem; padding: 31px 24px; }
.sellers-redesign .sr-promise:first-child { padding-left: 0; }
.sellers-redesign .sr-promise:last-child { padding-right: 0; }
.sellers-redesign .sr-promise + .sr-promise { border-left: 1px solid #e4e2de; }
.sellers-redesign .sr-number { display: block; color: #cc1237; font-family: var(--font-display); font-size: 2rem; font-weight: 700; line-height: 1; }
.sellers-redesign .sr-promise .sr-number { grid-row: 1 / 3; padding-top: 2px; }
.sellers-redesign .sr-promise h2 { font-size: 1.55rem; margin: 0 0 .4rem; }
.sellers-redesign .sr-promise p { font-size: .84rem; color: #595959; line-height: 1.65; margin: 0; }
.sellers-redesign main .sr-section { padding: 84px 0; }
.sellers-redesign .sr-soft { background: #f5f4f1; }
.sellers-redesign .sr-dark { background: #171717; color: #fff; }
.sellers-redesign .sr-dark :where(h2,h3,h4) { color: #fff; }
.sellers-redesign .sr-dark p { color: #dedede; }
.sellers-redesign .sr-dark .eyebrow { color: #ff9aaf; }
.sellers-redesign .sr-dark .eyebrow::before { background: #ff466b; }
.sellers-redesign .sr-section-head { max-width: 760px; margin-bottom: 2.6rem; }
.sellers-redesign .sr-section-head .eyebrow { margin-bottom: .8rem; }
.sellers-redesign .sr-display { font-family: var(--font-display); font-size: clamp(2.65rem, 4.7vw, 4rem); font-weight: 700; line-height: 1; text-transform: uppercase; margin-bottom: 1.25rem; }
.sellers-redesign .sr-section-head p { max-width: 65ch; color: #535353; }
.sellers-redesign .sr-dark .sr-section-head p { color: #dedede; }
.sellers-redesign .sr-section-head.text-center { margin-inline: auto; }
.sellers-redesign .sr-section-head.text-center p { margin-inline: auto; }

/* Service cards: plain editorial panels with real photography. */
.sellers-redesign .sr-services { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.6rem; }
.sellers-redesign a.sr-service-card { display: flex; flex-direction: column; min-width: 0; background: #fff; color: #171717; border: 1px solid #dfdedb; border-radius: 3px; text-decoration: none; overflow: hidden; transition: border-color .18s ease, box-shadow .18s ease; }
.sellers-redesign a.sr-service-card:hover { color: #171717; border-color: #cc1237; box-shadow: 0 10px 30px #0000000a; }
.sellers-redesign .sr-service-card > img { width: 100%; height: auto; aspect-ratio: 16/10; object-fit: cover; }
.sellers-redesign .sr-service-copy { display: flex; flex-direction: column; align-items: flex-start; flex: 1; padding: 1.65rem; }
.sellers-redesign .sr-service-copy h3 { font-size: 2rem; text-transform: uppercase; margin-bottom: .8rem; }
.sellers-redesign .sr-service-copy p { font-size: .94rem; color: #535353; line-height: 1.75; margin-bottom: 1.25rem; }
.sellers-redesign .sr-link { display: inline-flex; align-items: center; gap: .6rem; min-height: 44px; color: #ac1030; font-size: .8rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; text-decoration: none; margin-top: auto; }
.sellers-redesign .sr-link::after { content: '\2192'; font-size: 1.25rem; line-height: 1; }
.sellers-redesign .sr-service-card:hover .sr-link { text-decoration: underline; text-underline-offset: 4px; }

/* Company story, work photos and a clear project process. */
.sellers-redesign .sr-split { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.sellers-redesign .sr-split-media { position: relative; min-width: 0; }
.sellers-redesign .sr-split-media::after { content: ''; position: absolute; right: -12px; bottom: -12px; width: 42%; height: 42%; background: #cc1237; z-index: 0; }
.sellers-redesign .sr-split-media img { position: relative; z-index: 1; width: 100%; aspect-ratio: 4/4.2; object-fit: cover; }
.sellers-redesign .sr-split-copy { min-width: 0; }
.sellers-redesign .sr-split-copy > p { color: #535353; }
.sellers-redesign .sr-check-list { margin: 1.6rem 0; padding: 0; list-style: none; }
.sellers-redesign .sr-check-list li { position: relative; padding: .45rem 0 .45rem 1.75rem; color: #333; font-size: .94rem; }
.sellers-redesign .sr-check-list li::before { content: '\2713'; position: absolute; left: 0; top: .45rem; color: #cc1237; font-weight: 800; }
.sellers-redesign .sr-dark .sr-check-list li { color: #eee; }
.sellers-redesign .sr-dark .sr-check-list li::before { color: #ff7894; }
.sellers-redesign .sr-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin: 2rem 0 0; padding-top: 1.4rem; border-top: 1px solid #deddd9; }
.sellers-redesign .sr-stats > * { min-width: 0; }
.sellers-redesign .sr-stats strong { display: block; color: #171717; font-family: var(--font-display); font-size: 1.75rem; line-height: 1.1; text-transform: uppercase; }
.sellers-redesign .sr-stats p,.sellers-redesign .sr-stats span { color: #595959; font-size: .8rem; line-height: 1.6; }
.sellers-redesign .sr-process { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 2rem; list-style: none; margin: 0; padding: 0; }
.sellers-redesign .sr-process li { border-top: 1px solid #545454; padding-top: 1.3rem; min-width: 0; }
.sellers-redesign .sr-process .sr-number { font-size: 3.2rem; color: #ff5478; margin-bottom: 1.2rem; }
.sellers-redesign .sr-process h3 { font-size: 1.8rem; text-transform: uppercase; margin-bottom: .8rem; }
.sellers-redesign .sr-process p { font-size: .94rem; line-height: 1.7; margin: 0; }
.sellers-redesign .sr-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.4rem; }
.sellers-redesign .sr-gallery figure { margin: 0; min-width: 0; }
.sellers-redesign .sr-gallery img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 2px; }
.sellers-redesign .sr-gallery figcaption { padding: .85rem 0 0; color: #535353; font-size: .85rem; line-height: 1.6; }

/* Service-area directory, native FAQs and the estimate form. */
.sellers-redesign .sr-area-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: start; gap: clamp(2rem, 5vw, 5rem); }
.sellers-redesign .sr-area-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; margin: 0; padding: 0; list-style: none; }
.sellers-redesign .sr-area-links li { margin: 0; padding: 0; min-width: 0; }
.sellers-redesign .sr-area-links a { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 52px; height: 100%; padding: .85rem 1rem; background: #fff; border: 1px solid #d5d3ce; color: #252525; font-size: .875rem; font-weight: 600; line-height: 1.4; text-decoration: none; }
.sellers-redesign .sr-area-links a::after { content: '\2197'; color: #cc1237; flex-shrink: 0; }
.sellers-redesign .sr-area-links a:hover { color: #a60e2c; border-color: #cc1237; }
.sellers-redesign .sr-faq-layout { display: grid; grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); align-items: start; gap: clamp(2rem, 5vw, 5rem); }
.sellers-redesign .sr-faq-layout .sr-section-head { margin-bottom: 0; }
.sellers-redesign .sr-faqs { border-top: 1px solid #d2d1cd; }
.sellers-redesign details.sr-faq { margin: 0; padding: 0; border-bottom: 1px solid #d2d1cd; }
.sellers-redesign .sr-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; min-height: 72px; padding: 1.2rem 0; list-style: none; color: #1d1d1d; font-size: 1.02rem; font-weight: 600; line-height: 1.5; cursor: pointer; }
.sellers-redesign .sr-faq summary::-webkit-details-marker { display: none; }
.sellers-redesign .sr-faq summary::after { content: '+'; flex: 0 0 28px; text-align: center; color: #cc1237; font-size: 1.65rem; font-weight: 400; line-height: 1; }
.sellers-redesign .sr-faq[open] summary::after { content: '\2212'; }
.sellers-redesign .sr-faq summary:hover { color: #a60e2c; }
.sellers-redesign .sr-faq summary h3 { margin: 0; font: inherit; text-transform: none; }
.sellers-redesign .sr-faq > p,.sellers-redesign .sr-faq > div { margin: -.2rem 2.5rem 1.4rem 0; color: #535353; font-size: .94rem; line-height: 1.8; }
.sellers-redesign .sr-estimate-layout { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 0; align-items: stretch; }
.sellers-redesign .sr-estimate-copy { padding: clamp(2rem, 4vw, 3.5rem); background: #181818; color: #fff; }
.sellers-redesign .sr-estimate-copy :where(h2,h3) { color: #fff; }
.sellers-redesign .sr-estimate-copy p { color: #dedede; }
.sellers-redesign .sr-estimate-copy .eyebrow { color: #ff9aaf; }
.sellers-redesign .sr-estimate-copy .eyebrow::before { background: #ff466b; }
.sellers-redesign .sr-estimate-copy .sr-check-list li { color: #eee; }
.sellers-redesign .sr-estimate-copy .sr-check-list li::before { color: #ff7894; }
.sellers-redesign .sr-estimate-copy a:not(.btn) { color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.sellers-redesign .sr-form-card { min-width: 0; padding: clamp(1.4rem, 3vw, 2.5rem); background: #fff; border: 1px solid #dddcd8; border-left: 0; }
.sellers-redesign .sr-form-card > h3 { font-size: 2rem; text-transform: uppercase; }
.sellers-redesign .sr-form-card > p { font-size: .94rem; color: #535353; }
.sellers-redesign .sr-form-card .sellers-form { border: 0; border-radius: 0; padding: 0; background: #fff; }
.sellers-redesign .sellers-form { border-radius: 3px; }
.sellers-redesign .sellers-form label { color: #252525; font-size: .84rem; }
.sellers-redesign .sellers-form input,
.sellers-redesign .sellers-form select,
.sellers-redesign .sellers-form textarea { border: 1px solid #93938f; border-radius: 2px; min-height: 48px; color: #171717; background: #fff; padding: .75rem .85rem; font-size: 1rem; }
.sellers-redesign .sellers-form :where(input,select,textarea):focus-visible { outline: 3px solid #2369cb; outline-offset: 2px; border-color: #2369cb; }
.sellers-redesign .sellers-form :where(input,textarea)::placeholder { color: #656565; opacity: 1; }
.sellers-redesign .sellers-form textarea { min-height: 115px; }
.sellers-redesign .sellers-form .form-disclaimer { margin-bottom: 0; font-size: .75rem!important; }
.sellers-redesign main .sr-final-cta { padding: 62px 0; background: #cc1237; color: #fff; }
.sellers-redesign .sr-final-cta .container { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.sellers-redesign .sr-final-cta h2 { color: #fff; font-size: clamp(2.25rem, 4vw, 3.5rem); margin: 0; }
.sellers-redesign .sr-final-cta p { color: #fff; margin: .65rem 0 0; }
.sellers-redesign .sr-final-cta .sr-actions { flex-shrink: 0; margin: 0; }
.sellers-redesign .sr-final-cta .btn { border-color: #fff; background: #fff; color: #a60e2c; }
.sellers-redesign .sr-final-cta .btn:hover { background: #171717; color: #fff; border-color: #171717; }

/* Existing service and city content inherits the visual system. */
.sellers-redesign main .hero { background: #f5f4f1; padding-block: 60px; border-bottom: 1px solid #e2e0db; margin-bottom: 2.5rem; }
.sellers-redesign .hero h1 { font-size: clamp(2.75rem, 5vw, 4.75rem); line-height: 1.02; max-width: 22ch; }
.sellers-redesign .hero .hero-text h1 { font-size: clamp(2.75rem, 4.5vw, 4.25rem); max-width: 20ch; }
.sellers-redesign :where(.page-content,.prose) { color: #333; font-size: 1rem; line-height: 1.8; }
.sellers-redesign :where(.page-content,.prose) h2 { font-size: clamp(2rem, 3.4vw, 2.7rem); line-height: 1.1; margin-top: 2.3rem; }
.sellers-redesign :where(.page-content,.prose) h3 { font-size: clamp(1.65rem, 2.5vw, 2rem); line-height: 1.15; margin-top: 1.75rem; }
.sellers-redesign :where(.page-content,.prose) p { color: #3b3b3b; }
.sellers-redesign :where(.page-content,.prose) li { margin-block: .4rem; }
.sellers-redesign :where(.page-content,.prose) img { border-radius: 3px; }
.sellers-redesign .card { border-radius: 3px; }
.sellers-redesign .cta-band { border-radius: 3px; }
.sellers-redesign .breadcrumbs { font-family: var(--font-sans); }
.sellers-redesign .breadcrumbs a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 3px; }

/* Footer and thumb-accessible phone actions. */
.sellers-redesign .site-footer,.sellers-redesign .sr-footer { background: #111; padding: 64px 0 28px; color: #dedede; }
.sellers-redesign .footer-grid { grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 2rem; margin-bottom: 0; }
.sellers-redesign .footer-brand .brand { margin-bottom: 1.5rem; }
.sellers-redesign .footer-brand .brand-name { font-size: 1.8rem; }
.sellers-redesign .footer-brand p,.sellers-redesign .footer-address { color: #bfbfbf; font-size: .875rem; }
.sellers-redesign .footer-label { font-size: .75rem; letter-spacing: .12em; color: #fff; margin-bottom: .9rem; }
.sellers-redesign .site-footer li { margin: 0; }
.sellers-redesign .site-footer li a { display: inline-flex; align-items: center; min-height: 44px; padding: .4rem 0; font-size: .84rem; line-height: 1.5; color: #d7d7d7; }
.sellers-redesign .site-footer li a:hover { color: #fff; }
.sellers-redesign .footer-bottom { margin-top: 3rem; padding-top: 1.5rem; color: #bcbcbc; border-top-color: #383838; font-size: .75rem; }
.sellers-redesign .footer-bottom a { display: inline-flex; min-height: 44px; align-items: center; }
.sellers-redesign .sr-mobile-actions { display: none; }

@media (max-width: 1280px) and (min-width: 1181px) {
  .sellers-redesign .header-inner { gap: 1rem; }
  .sellers-redesign .primary-nav { gap: .8rem; }
  .sellers-redesign .brand .brand-name { font-size: 1.45rem; }
  .sellers-redesign .brand-icon { width: 32px; height: 34px; flex-basis: 32px; }
  .sellers-redesign .header-phone { font-size: .78rem; }
}
@media (max-width: 1180px) {
  .sellers-redesign .site-header,.sellers-redesign .site-header.is-scrolled { height: 78px; }
  .sellers-redesign .header-inner { gap: 1rem; }
  .sellers-redesign .header-inner > .brand,.sellers-redesign .header-inner > .custom-logo-link { margin-right: auto; }
  .sellers-redesign .header-cta { order: 1; }
  .sellers-redesign .nav-toggle { order: 2; }
  .sellers-redesign .primary-nav.is-open { top: 100%; max-height: calc(100dvh - 78px); padding: 1rem clamp(1.25rem,4vw,3rem) 1.5rem; background: #171717; border-color: #454545; }
  .sellers-redesign .primary-nav.is-open > a,.sellers-redesign .primary-nav.is-open .nav-disclosure { color: #fff; font-size: .98rem; border-color: #454545; min-height: 48px; padding: .8rem 0; }
  .sellers-redesign .primary-nav.is-open .nav-submenu { background: #232323; padding: .25rem .75rem; border: 0; box-shadow: none; }
  .sellers-redesign .primary-nav.is-open .nav-submenu a { color: #eee; font-size: .9rem; border-color: #494949; }
  .sellers-redesign .primary-nav.is-open .nav-submenu a:hover { background: #333; color: #fff; }
  .sellers-redesign .sr-hero-copy { width: min(620px,68%); }
  .sellers-redesign main .sr-hero { min-height: 650px; padding-block: 72px; }
  .sellers-redesign .sr-hero h1 { font-size: clamp(4rem,8vw,5.8rem); }
  .sellers-redesign .sr-promises { padding-inline: 1.5rem; }
  .sellers-redesign .sr-promise { padding-inline: 18px; column-gap: .7rem; grid-template-columns: 32px minmax(0,1fr); }
  .sellers-redesign .sr-services { gap: 1.2rem; }
  .sellers-redesign .sr-service-copy { padding: 1.25rem; }
  .sellers-redesign .sr-service-copy h3 { font-size: 1.8rem; }
  .sellers-redesign .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem 3rem; }
  .sellers-redesign .footer-brand { grid-column: auto; }
}
@media (max-width: 900px) {
  .sellers-redesign .sr-services { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .sellers-redesign .sr-split { gap: 2rem; }
  .sellers-redesign .sr-split-media img { aspect-ratio: 3/4; }
  .sellers-redesign .sr-process { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2.5rem 2rem; }
  .sellers-redesign .sr-area-grid,.sellers-redesign .sr-faq-layout { grid-template-columns: 1fr; gap: 2rem; }
  .sellers-redesign .sr-area-grid .sr-section-head { margin-bottom: 0; }
  .sellers-redesign .sr-estimate-layout { grid-template-columns: 1fr; }
  .sellers-redesign .sr-estimate-copy { padding: 2.5rem; }
  .sellers-redesign .sr-estimate-copy .sr-display { max-width: 17ch; }
  .sellers-redesign .sr-form-card { border-left: 1px solid #dddcd8; border-top: 0; padding: 2.5rem; }
  .sellers-redesign .sr-final-cta .container { align-items: flex-start; flex-direction: column; gap: 1.5rem; }
}
@media (max-width: 780px) {
  body.sellers-redesign { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
  .sellers-redesign main .sr-hero { display: flex; flex-direction: column; align-items: stretch; min-height: 0; padding: 0; overflow: visible; }
  .sellers-redesign .sr-hero-inner { order: 1; padding-top: 48px; padding-bottom: 42px; }
  .sellers-redesign .sr-hero-copy { width: 100%; max-width: 620px; }
  .sellers-redesign .sr-hero h1 { font-size: clamp(3.8rem, 10.5vw, 5.5rem); max-width: 12ch; line-height: .96; margin-bottom: 1.2rem; }
  .sellers-redesign .sr-hero-lead { font-size: 1rem; max-width: 50ch; }
  .sellers-redesign .sr-hero-photo { position: static; order: 2; z-index: auto; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; object-position: 60% 48%; }
  .sellers-redesign .sr-hero-shade { display: none; }
  .sellers-redesign .sr-hero-note { max-width: none; }
  .sellers-redesign .sr-promises { grid-template-columns: 1fr; padding-inline: clamp(1.25rem,4vw,3rem); }
  .sellers-redesign .sr-promise,.sellers-redesign .sr-promise:first-child,.sellers-redesign .sr-promise:last-child { padding: 23px 0; grid-template-columns: 36px minmax(0,1fr); column-gap: 1rem; }
  .sellers-redesign .sr-promise + .sr-promise { border-left: 0; border-top: 1px solid #e4e2de; }
  .sellers-redesign .sr-promise h2 { font-size: 1.6rem; }
  .sellers-redesign .sr-promise p { font-size: .875rem; }
  .sellers-redesign main .sr-section { padding: 60px 0; }
  .sellers-redesign .sr-section-head { margin-bottom: 2rem; }
  .sellers-redesign .sr-split { grid-template-columns: 1fr; gap: 2.5rem; }
  .sellers-redesign .sr-split-media { margin-right: 12px; }
  .sellers-redesign .sr-split-media img { aspect-ratio: 4/3; }
  .sellers-redesign .sr-gallery { grid-template-columns: 1fr 1fr; }
  .sellers-redesign .sr-gallery figure:last-child { grid-column: 1/-1; }
  .sellers-redesign .sr-gallery figure:last-child img { aspect-ratio: 16/9; }
  .sellers-redesign .sr-mobile-actions { position: fixed; bottom: 0; left: 0; right: 0; z-index: 65; display: grid; grid-template-columns: 1fr 1.2fr; align-items: stretch; gap: 8px; padding: 9px 12px calc(9px + env(safe-area-inset-bottom)); background: #111; border-top: 1px solid #555; box-shadow: 0 -5px 20px #0002; }
  .sellers-redesign .sr-mobile-actions a { display: flex; align-items: center; justify-content: center; min-height: 52px; padding: .8rem .6rem; border: 1px solid #777; border-radius: 3px; color: #fff; font-size: .8rem; font-weight: 700; line-height: 1.3; text-transform: uppercase; text-align: center; text-decoration: none; letter-spacing: .03em; }
  .sellers-redesign .sr-mobile-actions a:last-child { background: #cc1237; border-color: #cc1237; }
  .sellers-redesign .sr-mobile-actions a:focus-visible { outline-color: #ffda63; outline-offset: 2px; }
  .sellers-redesign .sr-mobile-actions a:hover { background: #333; }
  .sellers-redesign .sr-mobile-actions a:last-child:hover { background: #a60e2c; }
  .sellers-redesign main .hero { padding-block: 44px; margin-bottom: 1.8rem; }
}
@media (max-width: 600px) {
  .sellers-redesign .site-header,.sellers-redesign .site-header.is-scrolled { height: 72px; }
  .sellers-redesign .header-inner { gap: .75rem; }
  .sellers-redesign .header-inner > .brand { max-width: calc(100% - 58px); }
  .sellers-redesign .brand .brand-name { font-size: 1.5rem; }
  .sellers-redesign .brand .brand-region { font-size: .54rem; letter-spacing: .1em; }
  .sellers-redesign .brand-icon { width: 33px; height: 35px; flex-basis: 33px; }
  .sellers-redesign .site-header .custom-logo { max-width: 210px; max-height: 52px; }
  .sellers-redesign .primary-nav.is-open { max-height: calc(100dvh - 72px); }
  .sellers-redesign .sr-hero-inner { padding-top: 40px; padding-bottom: 34px; }
  .sellers-redesign .sr-hero .eyebrow { font-size: .64rem; letter-spacing: .12em; margin-bottom: 1rem; }
  .sellers-redesign .sr-hero h1 { font-size: clamp(3.5rem, 12.5vw, 4.5rem); max-width: 12ch; }
  .sellers-redesign .sr-hero-lead { margin-bottom: 1.5rem; line-height: 1.7; }
  .sellers-redesign .sr-hero .sr-actions { display: grid; grid-template-columns: 1fr; gap: .65rem; }
  .sellers-redesign .sr-hero .sr-actions .btn { width: 100%; min-height: 52px; }
  .sellers-redesign .sr-hero-note { font-size: .75rem; margin-top: 1rem; }
  .sellers-redesign .sr-display { font-size: clamp(2.5rem, 10.5vw, 3.2rem); }
  .sellers-redesign .sr-services { grid-template-columns: 1fr; gap: 1.5rem; }
  .sellers-redesign .sr-service-copy { padding: 1.5rem; }
  .sellers-redesign .sr-service-copy h3 { font-size: 2rem; }
  .sellers-redesign .sr-service-card > img { aspect-ratio: 16/9; }
  .sellers-redesign .sr-process { grid-template-columns: 1fr; gap: 1.6rem; }
  .sellers-redesign .sr-process li { display: grid; grid-template-columns: 48px minmax(0,1fr); column-gap: 1rem; }
  .sellers-redesign .sr-process .sr-number { grid-row: 1/3; font-size: 2.6rem; margin: 0; }
  .sellers-redesign .sr-process h3 { font-size: 1.85rem; }
  .sellers-redesign .sr-process p { grid-column: 2; }
  .sellers-redesign .sr-gallery { grid-template-columns: 1fr; gap: 1.5rem; }
  .sellers-redesign .sr-gallery figure:last-child { grid-column: auto; }
  .sellers-redesign .sr-gallery img,.sellers-redesign .sr-gallery figure:last-child img { aspect-ratio: 4/3; }
  .sellers-redesign .sr-area-links { gap: .65rem; }
  .sellers-redesign .sr-area-links a { padding: .8rem .75rem; font-size: .8rem; }
  .sellers-redesign .sr-faq summary { gap: .8rem; font-size: .95rem; padding-block: 1.15rem; }
  .sellers-redesign .sr-faq > p,.sellers-redesign .sr-faq > div { margin-right: 0; font-size: .9rem; }
  .sellers-redesign .sr-estimate-copy { padding: 2rem 1.4rem; }
  .sellers-redesign .sr-form-card { padding: 1.5rem 1.2rem; }
  .sellers-redesign .sellers-form .row-2 { grid-template-columns: 1fr; }
  .sellers-redesign .sr-stats { gap: .75rem; }
  .sellers-redesign .sr-stats strong { font-size: 1.5rem; }
  .sellers-redesign main .sr-final-cta { padding-block: 42px; }
  .sellers-redesign .sr-final-cta .sr-actions { width: 100%; }
  .sellers-redesign .sr-final-cta .btn { width: 100%; }
  .sellers-redesign .site-footer,.sellers-redesign .sr-footer { padding-top: 48px; }
  .sellers-redesign .footer-grid { grid-template-columns: 1fr; gap: 2rem; }
  .sellers-redesign .footer-brand { grid-column: auto; }
  .sellers-redesign .footer-bottom { margin-top: 2rem; }
}
@media (max-width: 370px) {
  .sellers-redesign .container { padding-inline: 1.1rem; }
  .sellers-redesign .brand { gap: .5rem; }
  .sellers-redesign .brand .brand-name { font-size: 1.35rem; }
  .sellers-redesign .brand-icon { width: 30px; flex-basis: 30px; }
  .sellers-redesign .sr-hero h1 { font-size: 3.4rem; }
  .sellers-redesign .sr-stats { grid-template-columns: 1fr; gap: .85rem; }
  .sellers-redesign .sr-area-links { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .sellers-redesign *, .sellers-redesign *::before, .sellers-redesign *::after { animation: none!important; transition: none!important; scroll-behavior: auto!important; }
}

/* Small integration details shared by the templates. */
.sellers-redesign .sr-hero-kicker{color:#fff;font-family:var(--font-display);font-size:clamp(1.5rem,2.5vw,2.2rem);font-weight:600;line-height:1.1;text-transform:uppercase;margin:0 0 1.25rem;max-width:26ch}
.sellers-redesign .sr-hero h1{font-size:clamp(4rem,7.2vw,6.9rem);max-width:14ch}
.sellers-redesign .breadcrumb-list{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;list-style:none;margin:0;padding:0}
.sellers-redesign .breadcrumb-list li{display:flex;align-items:center;gap:.5rem}
.sellers-redesign .breadcrumbs>.container{padding:0;max-width:none}
.sellers-redesign .hero .breadcrumbs{margin-bottom:1rem}
.sellers-redesign .sr-small-note{font-size:.875rem}
.sellers-redesign .primary-nav>.sr-nav-estimate{display:none}
@media(max-width:1180px){.sellers-redesign .primary-nav.is-open>.sr-nav-estimate{display:flex;color:#ff94aa}}
@media(max-width:600px){.sellers-redesign .sr-hero h1{font-size:clamp(3.2rem,12.6vw,4.5rem)}.sellers-redesign .sr-hero-kicker{font-size:1.65rem}}

/* Existing interior-page CTA bands also need a legible outline action. */
.sellers-redesign .cta-band .btn--ghost { color: #fff; border-color: #858585; }
.sellers-redesign .cta-band .btn--ghost:hover { color: #171717; background: #fff; border-color: #fff; }

/* Visible featured photography on service, city and support-page heroes. */
.sellers-redesign .sr-page-hero-grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); align-items: center; gap: clamp(1.5rem,4vw,3.5rem); }
.sellers-redesign .sr-page-copy { min-width: 0; max-width: none; }
.sellers-redesign .sr-page-copy h1 { max-width: 20ch; font-size: clamp(2.5rem,4.2vw,4rem); overflow-wrap: break-word; }
.sellers-redesign .sr-page-copy .lead { max-width: 60ch; font-size: 1rem; line-height: 1.7; }
.sellers-redesign .sr-page-copy > :last-child { margin-bottom: 0; }
.sellers-redesign .sr-page-photo { min-width: 0; width: 100%; margin: 0; }
.sellers-redesign .sr-page-photo img { display: block; width: 100%; height: auto; max-height: 400px; aspect-ratio: 16/10; object-fit: cover; object-position: center; border-radius: 3px; }
@media(max-width:780px){
  .sellers-redesign .sr-page-hero-grid { grid-template-columns: 1fr; gap: 1.6rem; }
  .sellers-redesign .sr-page-copy h1 { font-size: clamp(2.5rem,8.5vw,3.5rem); }
  .sellers-redesign .sr-page-photo img { max-height: 360px; aspect-ratio: 16/9; }
}
