/* Self-hosted fonts — latin subset, OFL (see assets/fonts/LICENSE-OFL.txt) */
@font-face{font-family:"DM Sans Fallback";src:local("Arial");size-adjust:98.5%;ascent-override:92%;descent-override:23%;line-gap-override:0%}
@font-face{font-family:"Fraunces Fallback";src:local("Georgia");size-adjust:98%;ascent-override:92%;descent-override:24%;line-gap-override:0%}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 700;font-display:optional;src:url("../fonts/dm-sans-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Fraunces;font-style:normal;font-weight:500 700;font-display:optional;src:url("../fonts/fraunces-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond Fallback";src:local("Georgia");size-adjust:100%;ascent-override:92%;descent-override:24%;line-gap-override:0%}
@font-face{font-family:"Source Sans 3 Fallback";src:local("Arial");size-adjust:100%;ascent-override:92%;descent-override:23%;line-gap-override:0%}
@font-face{font-family:"Libre Baskerville Fallback";src:local("Georgia");size-adjust:98%;ascent-override:92%;descent-override:24%;line-gap-override:0%}
@font-face{font-family:"Nunito Sans Fallback";src:local("Arial");size-adjust:99%;ascent-override:92%;descent-override:23%;line-gap-override:0%}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500 700;font-display:optional;src:url("../fonts/cormorant-garamond-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:optional;src:url("../fonts/source-sans-3-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:optional;src:url("../fonts/source-sans-3-latin-700.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Libre Baskerville";font-style:normal;font-weight:400 700;font-display:optional;src:url("../fonts/libre-baskerville-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:400;font-display:optional;src:url("../fonts/nunito-sans-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:700;font-display:optional;src:url("../fonts/nunito-sans-latin-700.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Contractor Sites — premium mobile-first theme */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;overflow-x:hidden;font-family:var(--cr-font-body,"DM Sans","DM Sans Fallback",system-ui,sans-serif);font-size:1.05rem;line-height:1.65;color:var(--cr-ink,#141a1a);background:var(--cr-cream,#f9f6ef);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--cr-accent,#d62f35);text-decoration:none}
a:hover{text-decoration:underline}
.screen-reader-text,.cr-skip{position:absolute;left:-9999px}
.cr-skip:focus{left:1rem;top:1rem;z-index:1000;background:#fff;padding:.5rem 1rem}

.cr-container{width:min(1140px,92%);margin-inline:auto}
.cr-header .cr-container{width:min(1320px,96%)}
.cr-eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:var(--cr-accent,#d62f35);margin:0 0 .75rem}
.cr-section-head{text-align:center;margin-bottom:2.5rem;max-width:40rem;margin-inline:auto}
.cr-section-head--left{text-align:left;margin-inline:0}
.cr-section-head h2,.cr-section-head__title{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(1.75rem,4vw,2.65rem);font-weight:600;line-height:1.15;letter-spacing:-.02em;margin:0 0 .65rem;color:inherit}
.cr-section-head__sub{margin:.35rem 0 0;color:var(--cr-muted,#5a6570);font-size:1.05rem}
.cr-section--dark .cr-section-head__sub{color:rgba(255,255,255,.72)}
.cr-section--dark{background:var(--cr-secondary,#0a1624);color:#f5f3ee}
.cr-section--cream{background:var(--cr-cream,#f9f6ef);color:var(--cr-ink,#141a1a)}
.cr-section--navy{background:var(--cr-primary,#0f2a44);color:#f5f3ee}
.cr-section{padding:4.5rem 0}
@media (min-width:900px){.cr-section{padding:5.5rem 0}}

/* Reveal */
.cr-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.cr-reveal.is-in{opacity:1;transform:none}

/* Buttons */
.cr-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.95rem 1.45rem;font-weight:700;border-radius:6px;border:2px solid transparent;cursor:pointer;text-decoration:none;font-family:inherit;font-size:1rem;letter-spacing:.01em;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s}
.cr-btn:hover{text-decoration:none;transform:translateY(-2px)}
.cr-btn--primary{background:var(--cr-button,var(--cr-accent,#d62f35));color:var(--cr-on-button,var(--cr-on-accent,#fff));border-color:var(--cr-button,var(--cr-accent,#d62f35));box-shadow:0 8px 24px color-mix(in srgb,var(--cr-button,var(--cr-accent,#d62f35)) 40%,transparent)}
.cr-btn--primary:hover{background:color-mix(in srgb,var(--cr-button,var(--cr-accent,#d62f35)) 82%,#000);border-color:color-mix(in srgb,var(--cr-button,var(--cr-accent,#d62f35)) 82%,#000);color:var(--cr-on-button,var(--cr-on-accent,#fff))}
.cr-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.cr-btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);color:#fff}
.cr-btn--outline{background:transparent;color:var(--cr-primary,#0f2a44);border-color:var(--cr-primary,#0f2a44)}
.cr-btn--outline:hover{background:var(--cr-primary,#0f2a44);color:#fff}
.cr-btn--header{background:var(--cr-button,var(--cr-accent,#d62f35));color:var(--cr-on-button,var(--cr-on-accent,#fff));padding:.65rem 1.1rem;font-size:.95rem;white-space:nowrap;box-shadow:none}
.cr-btn--header:hover{background:color-mix(in srgb,var(--cr-button,var(--cr-accent,#d62f35)) 82%,#000);color:var(--cr-on-button,var(--cr-on-accent,#fff))}
.cr-link{font-weight:700;color:var(--cr-accent,#d62f35);text-decoration:none;border-bottom:1px solid currentColor}
.cr-link:hover{opacity:.85}

/* Header */
.cr-header{position:sticky;top:0;z-index:200;background:color-mix(in srgb,var(--cr-secondary,#060606) 97%,#000);backdrop-filter:saturate(1.1) blur(10px);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.cr-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1.35rem;padding:.75rem 0;min-height:76px}
.cr-logo{display:flex;align-items:center;gap:.65rem;color:#fff;text-decoration:none;font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-weight:600}
.cr-logo{gap:.55rem}.cr-logo picture{display:flex;align-items:center;line-height:0}.cr-logo__img,.cr-logo .custom-logo{height:72px;width:auto;max-width:220px;object-fit:contain;background:transparent;border-radius:0;padding:0;image-rendering:-webkit-optimize-contrast}
.cr-logo .custom-logo-link{display:flex;align-items:center}
.cr-logo__text{font-size:1.05rem}
.cr-header__tag{display:none;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.65);border-left:1px solid rgba(255,255,255,.2);padding-left:.75rem;margin-left:.15rem;max-width:12rem;line-height:1.3}
@media (min-width:1400px){.cr-header__tag{display:block}}
.cr-nav-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:none;border:1px solid rgba(255,255,255,.35);border-radius:6px;padding:0;cursor:pointer}
.cr-nav-toggle__bar,.cr-nav-toggle__bar::before,.cr-nav-toggle__bar::after{content:"";display:block;width:18px;height:2px;background:#fff;margin:0 auto;position:relative}
.cr-nav-toggle__bar::before{position:absolute;top:-6px}
.cr-nav-toggle__bar::after{position:absolute;top:6px}
.cr-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cr-secondary,#0a1624);padding:1.1rem 1.25rem 1.35rem;flex-direction:column;gap:1rem;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 16px 40px rgba(0,0,0,.35);max-height:calc(100vh - 72px);overflow-y:auto;overscroll-behavior:contain}
.cr-nav.is-open{display:flex}
.cr-nav__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}
.cr-nav__list > li{position:relative}
.cr-nav__list a{color:#fff;font-weight:600;font-size:.98rem;text-decoration:none}
.cr-nav__list a:hover,.cr-nav__list a:focus-visible{text-decoration:none;color:var(--cr-accent-on-dark,#f3d078)}
.cr-nav__list .current-menu-item > a,.cr-nav__list .current_page_item > a,.cr-nav__list .current-menu-ancestor > a{color:var(--cr-accent-on-dark,#f3d078)}
.cr-nav__caret{margin-left:.35rem;vertical-align:middle;opacity:.85}
.cr-nav__rc{display:inline-block;width:.45rem;height:.45rem;border-right:2px solid var(--cr-accent,#d62f35);border-top:2px solid var(--cr-accent,#d62f35);transform:rotate(45deg);flex-shrink:0;margin-left:auto}
.cr-nav__acc-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;margin-left:auto;background:transparent;border:1px solid rgba(255,255,255,.22);border-radius:4px;color:#fff;cursor:pointer;padding:0;flex-shrink:0}
.cr-nav__acc-icon{display:block;width:.55rem;height:.55rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-3px;transition:transform .15s}
.cr-nav__list > li.is-open > .cr-nav__acc-btn .cr-nav__acc-icon,
.cr-nav__list .has-fly.is-open > .cr-nav__acc-btn .cr-nav__acc-icon{transform:rotate(225deg);margin-top:3px}
/* Mobile accordion: hide nested menus until opened */
.cr-nav__list .sub-menu{list-style:none;margin:0;padding:0 0 0 .35rem;display:none;border-left:1px solid rgba(255,255,255,.12)}
.cr-nav__list > li.is-open > .sub-menu{display:block}
.cr-nav__list .has-fly.is-open > .sub-menu{display:block}
.cr-nav__list > li.has-dd{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}
.cr-nav__list > li.has-dd > a{flex:1 1 auto;padding:.55rem 0}
.cr-nav__list .has-fly{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}
.cr-nav__list .has-fly > a.cr-nav__rlk{flex:1 1 auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .65rem;color:rgba(255,255,255,.88);font-size:.92rem}
.cr-nav__list .has-fly.is-open > a.cr-nav__rlk,
.cr-nav__list .has-fly > a.cr-nav__rlk:hover,.cr-nav__list .has-fly > a.cr-nav__rlk:focus-visible{background:rgba(255,255,255,.06);color:var(--cr-accent-on-dark,#f3d078)}
.cr-nav__list .sub-menu a{display:block;padding:.45rem .75rem;font-size:.9rem;font-weight:500;color:rgba(255,255,255,.88)}
.cr-nav__list .sub-menu a:hover,.cr-nav__list .sub-menu a:focus-visible{color:var(--cr-accent-on-dark,#f3d078);background:rgba(255,255,255,.06)}
@media (min-width:960px){
  .cr-nav-toggle{display:none}
  .cr-nav{display:flex;position:static;flex-direction:row;align-items:center;background:transparent;padding:0;gap:1.15rem;box-shadow:none;border:0;max-height:none;overflow:visible;flex:1 1 auto;justify-content:flex-end;min-width:0}
  .cr-nav__list{flex-direction:row;align-items:center;flex-wrap:nowrap;gap:.2rem;justify-content:flex-end}
  .cr-nav__list > li{flex-shrink:0}
  .cr-nav__list > li > a{padding:.55rem .85rem;display:inline-flex;align-items:center;font-size:.92rem;letter-spacing:.01em;white-space:nowrap}
  .cr-nav__list > li.has-dd{display:block;flex-wrap:nowrap}
  .cr-nav__list > li.has-dd > a{padding:.55rem .85rem;display:inline-flex;align-items:center}
  .cr-btn--header{padding:.62rem 1.15rem;font-size:.9rem;margin-left:.35rem;flex-shrink:0}
  .cr-nav__acc-btn{display:none}
  /* Level-1 dropdown panel (Services / Service Areas) */
  .cr-nav__list > li > .sub-menu,
  .cr-nav__list > li > .cr-nav__dd{
    display:block;position:absolute;top:100%;left:0;min-width:272px;margin:0;padding:.5rem 0;list-style:none;
    background:var(--cr-secondary,#0a1624);border:1px solid rgba(255,255,255,.08);border-top:2px solid var(--cr-accent,#d62f35);
    box-shadow:0 26px 46px rgba(0,0,0,.44);border-radius:0 0 6px 6px;z-index:60;
    opacity:0;visibility:hidden;pointer-events:none;transition:opacity .13s,visibility linear .13s
  }
  .cr-nav__list > li.has-dd > a{position:relative}
  .cr-nav__list > li.has-dd > a::after{content:"";position:absolute;top:100%;left:-10px;right:-10px;height:14px}
  .cr-nav__list > li:hover > .sub-menu,
  .cr-nav__list > li:focus-within > .sub-menu,
  .cr-nav__list > li.is-open > .sub-menu{
    opacity:1;visibility:visible;pointer-events:auto;transition:opacity .13s,visibility
  }
  /* County / category row */
  .cr-nav__list .has-fly{display:block;position:relative}
  .cr-nav__list .has-fly > a.cr-nav__rlk{
    display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 18px;
    color:rgba(245,243,238,.88);font-size:.9rem;font-weight:600;white-space:nowrap;line-height:1.3
  }
  .cr-nav__list .has-fly:hover > a.cr-nav__rlk,
  .cr-nav__list .has-fly:focus-within > a.cr-nav__rlk,
  .cr-nav__list .has-fly.is-open > a.cr-nav__rlk{background:rgba(255,255,255,.07);color:#fff}
  /* Level-2 flyout (cities / nested services) */
  .cr-nav__list .sub-menu .sub-menu,
  .cr-nav__list .cr-nav__fly{
    display:block;position:absolute;top:-6px;left:100%;min-width:262px;margin:0;padding:.5rem 0;list-style:none;
    background:var(--cr-secondary,#0a1624);border:1px solid rgba(255,255,255,.08);border-top:2px solid var(--cr-accent,#d62f35);
    box-shadow:0 26px 46px rgba(0,0,0,.44);border-radius:0 0 6px 6px;z-index:61;
    max-height:calc(100vh - 130px);overflow-y:auto;overscroll-behavior:contain;
    opacity:0;visibility:hidden;pointer-events:none;transition:opacity .13s,visibility linear .2s
  }
  .cr-nav__list .has-fly:hover > .sub-menu,
  .cr-nav__list .has-fly:focus-within > .sub-menu,
  .cr-nav__list .has-fly.is-open > .sub-menu{
    opacity:1;visibility:visible;pointer-events:auto;transition:opacity .13s,visibility
  }
  .cr-nav__list .sub-menu > li:not(.has-fly) > a,
  .cr-nav__list .cr-nav__fly > li > a{
    display:block;padding:8px 20px;color:rgba(245,243,238,.88);font-size:.86rem;font-weight:500;line-height:1.35;
    white-space:nowrap;border-left:2px solid transparent
  }
  .cr-nav__list .sub-menu > li:not(.has-fly) > a:hover,
  .cr-nav__list .cr-nav__fly > li > a:hover{
    background:rgba(255,255,255,.07);color:#fff;border-left-color:var(--cr-accent,#d62f35);text-decoration:none
  }
  /* Flat Services children (no flyout): style like county rows without chevron */
  .cr-nav__list > li > .sub-menu > li:not(.menu-item-has-children) > a{
    display:block;padding:10px 18px;color:rgba(245,243,238,.88);font-size:.9rem;font-weight:600;white-space:nowrap
  }
  .cr-nav__list > li > .sub-menu > li:not(.menu-item-has-children) > a:hover{
    background:rgba(255,255,255,.07);color:#fff
  }
}

/* Hero — full bleed */
.cr-hero{position:relative;min-height:min(88vh,820px);display:flex;align-items:center;color:#fff;background:var(--cr-secondary,#0a1624);overflow:hidden}
.cr-hero__media{position:absolute;inset:0}
.cr-hero__img{width:100%;height:100%;object-fit:cover;object-position:center}
.cr-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,22,28,.28) 0%,rgba(22,22,28,.22) 38%,rgba(22,22,28,.55) 100%);pointer-events:none}
.cr-hero__grid{position:relative;z-index:1;display:grid;gap:2rem;padding:4.5rem 0 3.5rem;width:min(1140px,92%);margin-inline:auto;align-items:center}
.cr-hero__title{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(2.35rem,6.2vw,3.85rem);font-weight:600;line-height:1.08;letter-spacing:-.025em;margin:0 0 1rem;max-width:16ch}
.cr-hero__lede{max-width:38ch;font-size:1.12rem;opacity:.95;margin:0 0 1.6rem;color:rgba(255,255,255,.9)}
.cr-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:1rem}
.cr-hero__phone-link{color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:1px}
.cr-hero__phone-link:hover{color:#fff;border-color:#fff;text-decoration:none}
.cr-hero__form{background:rgba(249,246,239,.97);color:var(--cr-ink,#141a1a);border-radius:12px;padding:1.35rem 1.35rem 1.5rem;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.cr-hero__form h2{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:1.35rem;margin:0 0 .35rem;font-weight:600}
.cr-hero__form > p{margin:0 0 1rem;font-size:.92rem;color:var(--cr-muted,#5a6570)}
.cr-hero__form .cr-quote-form input,.cr-hero__form .cr-quote-form select,.cr-hero__form .cr-quote-form textarea{background:#fff;color:var(--cr-ink);border:1px solid #d8d2c6}
@media (min-width:960px){
  .cr-hero__grid{grid-template-columns:1.15fr .85fr;gap:2.5rem;padding:5.5rem 0 4.5rem}
}

/* Trust */
.cr-trust{background:var(--cr-primary,#0f2a44);color:#fff;padding:1.15rem 0;border-top:1px solid rgba(255,255,255,.06)}
.cr-trust__row{display:flex;flex-wrap:wrap;gap:.85rem 1.75rem;justify-content:center}
.cr-trust__item{font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:.45rem;letter-spacing:.01em}
.cr-trust__check{display:inline-flex;width:1.15rem;height:1.15rem;align-items:center;justify-content:center;border-radius:50%;background:var(--cr-accent,#d62f35);color:var(--cr-on-accent,#fff);font-size:.7rem;flex-shrink:0}

/* Services */
.cr-services__grid{display:grid;gap:1.35rem;grid-template-columns:1fr}
.cr-service-card{background:#fff;border:1px solid var(--cr-line);border-radius:var(--cr-radius);overflow:hidden;transition:box-shadow .25s,transform .25s;box-shadow:0 2px 8px rgba(6,6,6,.05)}
.cr-service-card:hover{box-shadow:var(--cr-shadow);transform:translateY(-3px)}
.cr-service-card a{display:block;color:inherit;text-decoration:none;height:100%}
.cr-service-card__media{position:relative;overflow:hidden}
.cr-service-card__media img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .45s ease}
.cr-service-card:hover .cr-service-card__media img{transform:scale(1.04)}
.cr-service-card__body{padding:1.15rem 1.2rem 1.35rem}
.cr-service-card h3{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 .4rem;font-size:1.3rem;font-weight:600;letter-spacing:-.01em}
.cr-service-card p{margin:0 0 .85rem;color:var(--cr-muted,#5a6570);font-size:.98rem}
@media (min-width:700px){.cr-services__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1040px){.cr-services__grid{grid-template-columns:repeat(3,1fr)}}

/* Why us */
.cr-why__grid{display:grid;gap:1.15rem}
.cr-why__card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:var(--cr-radius);padding:1.35rem 1.4rem;transition:border-color .2s,background .2s}
.cr-why__card:hover{border-color:rgba(214,47,53,.55);background:rgba(255,255,255,.06)}
.cr-why__card h3{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 .45rem;font-size:1.2rem;font-weight:600}
.cr-why__card p{margin:0;color:rgba(255,255,255,.75);font-size:.98rem}
@media (min-width:800px){.cr-why__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.cr-why__grid{grid-template-columns:repeat(3,1fr)}}

/* Process */
.cr-process__photos{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin:0 0 2.25rem}
@media (min-width:800px){.cr-process__photos{grid-template-columns:repeat(4,1fr)}}
.cr-process__photo{margin:0;overflow:hidden;border-radius:var(--cr-radius);background:#222;position:relative}
.cr-process__photo img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.cr-process__photo figcaption{position:absolute;left:0;right:0;bottom:0;font-size:.75rem;padding:.5rem .7rem;background:linear-gradient(transparent,rgba(22,22,28,.88));color:#f9f6ef;font-weight:600}
.cr-process__list{list-style:none;margin:0;padding:0;display:grid;gap:1.15rem}
.cr-process__step{background:#fff;border:1px solid var(--cr-line);border-radius:var(--cr-radius);padding:1.4rem 1.35rem;position:relative;box-shadow:0 2px 8px rgba(6,6,6,.05)}
.cr-process__num{display:inline-flex;width:2.35rem;height:2.35rem;align-items:center;justify-content:center;border-radius:50%;background:var(--cr-primary,#0f2a44);color:#fff;font-weight:700;margin-bottom:.65rem;font-size:.95rem}
.cr-process__step h3{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 .4rem;font-size:1.15rem;font-weight:600}
.cr-process__step p{margin:0;color:var(--cr-muted,#5a6570)}
@media (min-width:800px){.cr-process__list{grid-template-columns:repeat(4,1fr)}}

/* Gallery */
.cr-gallery__grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
@media (min-width:700px){.cr-gallery__grid{grid-template-columns:repeat(3,1fr);gap:1rem}}
@media (min-width:1000px){.cr-gallery__grid{grid-template-columns:repeat(4,1fr)}}
.cr-gallery__item{margin:0;overflow:hidden;border-radius:var(--cr-radius);background:#1a1a1a;position:relative;cursor:zoom-in}
.cr-gallery__item img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .4s ease}
.cr-gallery__item:hover img{transform:scale(1.05)}
.cr-gallery__item figcaption{position:absolute;left:0;right:0;bottom:0;font-size:.78rem;padding:.55rem .7rem;background:linear-gradient(transparent,rgba(22,22,28,.86));color:#f0ebe3;font-weight:600}
/* Keep gallery crops consistent (avoid mixed 3/4 tiles that look cramped). */
@media (min-width:700px){
  .cr-gallery__item:nth-child(5){grid-row:span 2}
  .cr-gallery__item:nth-child(5) img{aspect-ratio:auto;height:100%;min-height:100%}
}

/* Lightbox */
.cr-lightbox{position:fixed;inset:0;z-index:400;background:rgba(22,22,28,.92);display:none;align-items:center;justify-content:center;padding:1.5rem}
.cr-lightbox.is-open{display:flex}
.cr-lightbox img{max-width:min(1100px,94vw);max-height:88vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.cr-lightbox__close{position:absolute;top:1rem;right:1rem;background:rgba(255,255,255,.12);border:0;color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.5rem;cursor:pointer}

/* Story / Meet Ben */
.cr-story__grid{display:grid;gap:2.25rem;align-items:center}
.cr-story__media{position:relative}
.cr-story__media img{border-radius:var(--cr-radius);width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:var(--cr-shadow)}
.cr-story__placeholder{aspect-ratio:4/5;border-radius:var(--cr-radius);background:linear-gradient(145deg,color-mix(in srgb,var(--cr-secondary,#060606) 70%,#333),var(--cr-secondary,#060606));display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.55);text-align:center;padding:1.5rem;font-size:.95rem;border:1px dashed rgba(255,255,255,.2)}
.cr-story__sig{margin-top:1.75rem;font-weight:700;font-size:1.05rem}
.cr-story__sig span{display:block;font-weight:500;opacity:.7;font-size:.92rem;margin-top:.15rem}
.cr-story__text p{font-size:1.08rem;color:rgba(255,255,255,.88)}
@media (min-width:860px){.cr-story__grid{grid-template-columns:1.15fr .85fr;gap:3rem}}

/* Reviews */
.cr-reviews__grid{display:grid;gap:1.15rem}
.cr-review{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:var(--cr-radius);padding:1.5rem 1.45rem}
.cr-review__quote{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(1.15rem,2.4vw,1.45rem);line-height:1.35;margin:0 0 1rem;font-weight:500}
.cr-review__attr{font-weight:700;font-size:.92rem;opacity:.9}
.cr-review__source{display:block;font-weight:500;opacity:.55;font-size:.8rem;margin-top:.2rem}
.cr-review--placeholder{border-style:dashed;opacity:.85}
.cr-review--placeholder .cr-review__quote{font-family:var(--cr-font-body,"DM Sans","DM Sans Fallback",system-ui,sans-serif);font-size:.95rem;opacity:.75}
.cr-reviews__note{margin:1.25rem 0 0;text-align:center;font-size:.9rem;opacity:.65}
@media (min-width:800px){.cr-reviews__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.cr-reviews__grid{grid-template-columns:repeat(3,1fr)}}

/* FAQ */
.cr-faq__grid{display:grid;gap:.75rem;max-width:960px;margin-inline:auto}
.cr-faq__item{border:1px solid var(--cr-line);border-radius:8px;padding:0;background:#fff;overflow:hidden}
.cr-faq__item summary{font-weight:700;cursor:pointer;padding:1rem 1.15rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.cr-faq__item summary::-webkit-details-marker{display:none}
.cr-faq__item summary::after{content:"+";font-size:1.25rem;font-weight:500;color:var(--cr-accent,#d62f35);flex-shrink:0}
.cr-faq__item[open] summary::after{content:"–"}
.cr-faq__item p{margin:0;padding:0 1.15rem 1.15rem;color:var(--cr-muted,#5a6570)}
@media (min-width:800px){.cr-faq__grid{grid-template-columns:1fr 1fr;align-items:start}}

/* Areas */
.cr-areas__grid{display:grid;gap:1.35rem;margin-top:.5rem}
.cr-areas__county{background:#fff;border:1px solid var(--cr-line);border-radius:var(--cr-radius);padding:1.45rem 1.5rem;box-shadow:0 2px 8px rgba(6,6,6,.05);transition:box-shadow .2s}
.cr-areas__county:hover{box-shadow:var(--cr-shadow)}
.cr-areas__county h3{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 .9rem;font-size:1.3rem;font-weight:600}
.cr-areas__county h3 a{color:inherit;text-decoration:none}
.cr-areas__county h3 a:hover{color:var(--cr-accent,#d62f35)}
.cr-areas__cities{list-style:none;margin:0;padding:0;display:grid;gap:.4rem;columns:2}
.cr-areas__cities a{color:var(--cr-ink);font-weight:600}
.cr-areas__more{display:inline-block;margin-top:1rem}
.cr-areas__hub{text-align:center;margin:2.25rem 0 0}
@media (min-width:700px){.cr-areas__grid{grid-template-columns:repeat(2,1fr)}}

/* CTA band */
.cr-cta{padding:4.5rem 0;background:var(--cr-secondary,#0a1624);color:#fff}
.cr-cta__grid{display:grid;gap:2.25rem}
.cr-cta__map{position:relative}
.cr-cta__map img{border-radius:var(--cr-radius);margin-bottom:1rem;width:100%;aspect-ratio:16/10;object-fit:cover}
.cr-cta__map-note{opacity:.85;margin:0 0 1rem}
.cr-cta .cr-quote-form input,.cr-cta .cr-quote-form select,.cr-cta .cr-quote-form textarea{background:#132338;color:#fff;border:1px solid #2a3f55}
.cr-cta .cr-section-head h2{color:#fff}
@media (min-width:900px){.cr-cta__grid{grid-template-columns:1.1fr .9fr;align-items:start}}

/* Form */
.cr-quote-form{display:grid;gap:.85rem}
.cr-quote-form label{display:block;font-weight:600;margin-bottom:.3rem;font-size:.88rem}
.cr-quote-form input,.cr-quote-form select,.cr-quote-form textarea{width:100%;padding:.75rem .85rem;border:1px solid #d8d2c6;border-radius:6px;background:#fff;color:var(--cr-ink);font:inherit}
.cr-quote-form textarea{min-height:100px;resize:vertical}
.cr-quote-form .cr-hp{position:absolute;left:-10000px;opacity:0;height:0;width:0;overflow:hidden}
.cr-quote-form__msg{padding:.75rem 1rem;border-radius:6px;margin-bottom:.5rem}
.cr-quote-form__msg--ok{background:#16351f;color:#b6f0c4}
.cr-quote-form__msg--err{background:#3a1515;color:#ffc9c9}
.cr-form-row{display:grid;gap:.85rem}
@media (min-width:600px){.cr-form-row{grid-template-columns:1fr 1fr}}

/* Landing pages */
.cr-landing__hero{position:relative;background:var(--cr-secondary,#0a1624);color:#fff;padding:3.25rem 0 3rem;overflow:hidden}
.cr-landing__hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 20%,rgba(214,47,53,.18),transparent 55%);pointer-events:none}
.cr-landing__hero .cr-container{position:relative;z-index:1}
.cr-landing__hero h1{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(2rem,5vw,3.1rem);font-weight:600;letter-spacing:-.02em;margin:0 0 .85rem;line-height:1.12;max-width:20ch}
.cr-landing__lede{max-width:48ch;opacity:.9;margin:0 0 1.4rem;font-size:1.08rem}
.cr-landing__body{padding:3rem 0}
.cr-landing__grid{display:grid;gap:2.25rem}
.cr-landing__content h2{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-weight:600;margin-top:2rem;letter-spacing:-.01em}
.cr-landing__content p{color:#333}
.cr-landing__card{background:#fff;border:1px solid var(--cr-line);border-radius:var(--cr-radius);padding:1.35rem 1.4rem;margin-bottom:1rem;box-shadow:0 2px 8px rgba(6,6,6,.05)}
.cr-landing__card h2{font-size:1.05rem;margin:0 0 .85rem;font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-weight:600}
.cr-landing__card ul{margin:0;padding-left:1.1rem}
.cr-landing__card li{margin:.4rem 0}
.cr-landing__card--call{background:var(--cr-primary);color:var(--cr-on-primary,#fff);border-color:transparent}
.cr-landing__card--call h2{color:var(--cr-on-primary,#fff)}
.cr-landing__card--call p{margin:0 0 1rem;opacity:.85}
.cr-landing__feature{margin:0 0 1.75rem;border-radius:var(--cr-radius);overflow:hidden;box-shadow:var(--cr-shadow)}
.cr-landing__feature img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
@media (min-width:900px){.cr-landing__grid{grid-template-columns:1.55fr .7fr}}

/* Breadcrumbs */
.cr-breadcrumbs{margin:0 0 1.1rem;font-size:.88rem}
.cr-breadcrumbs__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center}
.cr-breadcrumbs__item{display:inline-flex;align-items:center;gap:.5rem;opacity:.9}
.cr-breadcrumbs__item + .cr-breadcrumbs__item::before{content:"/";opacity:.45;margin-right:.1rem}
.cr-landing__hero .cr-breadcrumbs a,.cr-landing__hero .cr-breadcrumbs span{color:#fff}
.cr-page .cr-breadcrumbs a{color:inherit}

/* Default page */
.cr-page{padding:2.75rem 0 3.5rem;background:#fff}
.cr-page__header h1{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-weight:600;font-size:clamp(1.9rem,4vw,2.7rem);letter-spacing:-.02em;margin:0 0 1rem}

/* Footer */
.cr-footer{background:#070e16;color:#c8cdd3;padding:3.5rem 0 0}
.cr-footer a{color:#fff}
.cr-footer a.cr-btn--primary,.cr-footer a.cr-btn--header{color:var(--cr-on-accent,#fff)}
.cr-footer__grid{display:grid;gap:2.25rem}
.cr-footer__brand p{margin:.75rem 0 1.15rem;max-width:28ch;line-height:1.55;color:#a8b0b8}
.cr-footer__logo{display:inline-flex;align-items:center;margin:0 0 .35rem;line-height:0}
.cr-footer__logo picture{display:flex;line-height:0}
.cr-footer__logo-img{height:96px;width:auto;max-width:96px;object-fit:contain;background:transparent}
.cr-footer h4{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);color:#fff;margin:0 0 1rem;font-size:1.1rem;font-weight:600}
.cr-footer ul{list-style:none;margin:0;padding:0}
.cr-footer li{margin:.4rem 0}
.cr-footer__license{margin-top:1rem;font-size:.88rem;opacity:.7}
.cr-footer__social{list-style:none;margin:1rem 0 0;padding:0;display:flex;gap:.6rem}.cr-footer__social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.25);color:inherit;opacity:.85;transition:opacity .2s,border-color .2s}.cr-footer__social a:hover,.cr-footer__social a:focus-visible{opacity:1;border-color:currentColor}
.cr-footer__bar{margin-top:2.5rem;border-top:1px solid #1a2430;padding:1.1rem 0;font-size:.88rem;color:#aeb4bb}
.cr-footer__legal a{color:#f2f4f6;text-decoration:underline;text-underline-offset:2px;font-weight:600}
.cr-footer__legal a:hover,.cr-footer__legal a:focus-visible{color:#fff}
.cr-footer__col--areas{display:grid;gap:1.15rem}
.cr-footer__county-name{display:block;font-weight:700;margin-bottom:.4rem;color:var(--cr-accent,#d62f35)}
.cr-footer__all-areas{margin:.5rem 0 0}
.cr-footer__all-areas a{font-weight:700}
@media (min-width:700px){.cr-footer__grid{grid-template-columns:1.2fr 1fr 1.3fr 1fr}}

/* Mobile sticky call / quote bar */
.cr-mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:250;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 -8px 30px rgba(0,0,0,.25)}
.cr-mobile-bar a{display:flex;align-items:center;justify-content:center;padding:1rem .5rem;font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:#fff}
.cr-mobile-bar__call{background:var(--cr-button,var(--cr-accent,#d62f35));color:var(--cr-on-button,var(--cr-on-accent,#fff))}
.cr-mobile-bar a.cr-mobile-bar__call{color:var(--cr-on-button,var(--cr-on-accent,#fff))}
.cr-mobile-bar__quote{background:var(--cr-primary,#0f2a44)}
.cr-mobile-bar a:hover{text-decoration:none;filter:brightness(1.05)}
.cr-mobile-bar a.cr-mobile-bar__call:hover{color:var(--cr-on-button,var(--cr-on-accent,#fff))}
.cr-mobile-bar a.cr-mobile-bar__quote:hover{color:#fff}
body{padding-bottom:0}
@media (max-width:959px){
  body{padding-bottom:58px}
}
@media (min-width:960px){
  .cr-mobile-bar{display:none}
}

/* Entry content polish */
.entry-content ul{padding-left:1.2rem}
.entry-content a{font-weight:600}

.cr-story__placeholder{position:relative;overflow:hidden;padding:0;border:0;background:transparent;display:block}
.cr-story__placeholder img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--cr-radius)}
.cr-header__brand{display:flex;align-items:center;gap:.55rem;min-width:0;flex-shrink:0}
@media (max-width:959px){
  .cr-logo__img,.cr-logo .custom-logo{height:40px;max-width:148px}
  .cr-header__inner{min-height:60px;padding:.5rem 0;gap:.65rem}
  .cr-header .cr-container{width:min(1140px,92%)}
  .cr-nav{padding:1rem 4%}
}
/* Mid desktop 960–1199: keep one row, even gaps, no wrap */
@media (min-width:960px) and (max-width:1199px){
  .cr-header .cr-container{width:min(1320px,97%)}
  .cr-header__inner{gap:1rem;min-height:70px;padding:.55rem 0}
  .cr-logo__img,.cr-logo .custom-logo{height:52px;max-width:180px}
  .cr-header__tag{display:none!important}
  .cr-nav{gap:.85rem}
  .cr-nav__list{gap:.05rem}
  .cr-nav__list > li > a,
  .cr-nav__list > li.has-dd > a{padding:.5rem .62rem;font-size:.86rem}
  .cr-btn--header{padding:.55rem .95rem;font-size:.84rem;margin-left:.15rem}
}
/* Comfortable desktop */
@media (min-width:1200px){
  .cr-header__inner{gap:1.5rem;min-height:78px}
  .cr-nav{gap:1.35rem}
  .cr-nav__list{gap:.35rem}
  .cr-nav__list > li > a,
  .cr-nav__list > li.has-dd > a{padding:.55rem .95rem;font-size:.94rem}
  .cr-btn--header{margin-left:.5rem;padding:.68rem 1.25rem}
}
@media (min-width:1400px){
  .cr-header .cr-container{width:min(1380px,94%)}
  .cr-nav__list > li > a,
  .cr-nav__list > li.has-dd > a{padding:.55rem 1.05rem}
}

/* —— Page transition (client logo / site-name overlay) —— */
.cr-page-fx{
  position:fixed;inset:0;z-index:2147483000;
  display:flex;align-items:center;justify-content:center;
  background:var(--cr-primary,#0f2a44);
  opacity:0;pointer-events:none;
  -webkit-transform:translateZ(0);transform:translateZ(0);
  -webkit-backface-visibility:hidden;backface-visibility:hidden;
}
.cr-page-fx.is-in{opacity:1;pointer-events:auto;transition:none}
.cr-page-fx.is-out{opacity:0;pointer-events:none;transition:opacity .28s ease}
.cr-page-fx__inner{display:flex;flex-direction:column;align-items:center;gap:.85rem;padding:0 1.25rem;text-align:center}
.cr-page-fx__logo{
  width:148px;height:auto;max-height:148px;object-fit:contain;display:block;
  opacity:0;transform:translateY(18px) scale(.9);
  transition:opacity .38s ease,transform .48s cubic-bezier(.22,.82,.24,1);
  will-change:transform,opacity;
}
.cr-page-fx.is-in .cr-page-fx__logo{
  opacity:1;transform:translateY(0) scale(1);
}
.cr-page-fx__name{
  font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-weight:600;font-size:clamp(1.35rem,4vw,2rem);
  color:#fff;letter-spacing:-.02em;line-height:1.15;max-width:16ch;
  opacity:0;transform:translateY(18px) scale(.96);
  transition:opacity .38s ease,transform .48s cubic-bezier(.22,.82,.24,1);
  will-change:transform,opacity;
}
.cr-page-fx.is-in .cr-page-fx__name{
  opacity:1;transform:translateY(0) scale(1);
}
.cr-page-fx__accent{
  display:block;height:3px;width:0;border-radius:2px;
  background:var(--cr-accent,#d62f35);
  box-shadow:0 0 18px rgba(214,47,53,.55);
  transition:width .4s cubic-bezier(.22,.82,.24,1) .12s;
}
.cr-page-fx.is-in .cr-page-fx__accent{width:64px}
/* Pre-paint cover when arriving from a transitioned click */
html.cr-fx-pending{background:var(--cr-primary,#0f2a44)}
html.cr-fx-pending body{opacity:0}
html.cr-fx-pending.cr-fx-ready body{opacity:1;transition:opacity .01s}
@media (prefers-reduced-motion:reduce){
  .cr-page-fx,.cr-page-fx__logo,.cr-page-fx__name,.cr-page-fx__accent{
    transition:none!important
  }
  .cr-page-fx__logo,.cr-page-fx__name{opacity:1;transform:none}
  .cr-page-fx.is-in .cr-page-fx__accent{width:64px}
  html.cr-fx-pending body{opacity:1}
}



/* —— Crest-ring loading emblem (per-client via .cr-page-fx--crest) —— */
.cr-page-fx--crest.is-out{transition:opacity .22s ease}
.cr-page-fx__crest{
  position:relative;
  display:flex;align-items:center;justify-content:center;
  width:min(220px,56vw);height:min(220px,56vw);
}
.cr-page-fx__ring{
  position:absolute;inset:0;border-radius:50%;
  border:2px solid color-mix(in srgb,var(--cr-accent-on-dark,var(--cr-accent,#f3d078)) 78%,#fff);
  box-shadow:
    0 0 0 1px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 35%,transparent),
    0 0 28px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 45%,transparent),
    inset 0 0 18px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 22%,transparent);
  opacity:0;transform:scale(.86);
  transition:opacity .32s ease,transform .48s cubic-bezier(.22,.82,.24,1);
  pointer-events:none;
}
.cr-page-fx__ring::before{
  content:"";position:absolute;inset:-6px;border-radius:50%;
  border:1px solid color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 40%,transparent);
  opacity:.7;
}
.cr-page-fx__ring::after{
  content:"";position:absolute;inset:8px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,
    color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 18%,transparent),
    transparent 62%);
  opacity:.85;
}
.cr-page-fx.is-in .cr-page-fx__ring{
  opacity:1;transform:scale(1);
  animation:cr-fx-ring-pulse 1.6s ease-in-out infinite;
}
.cr-page-fx--crest .cr-page-fx__logo{
  width:min(148px,38vw);max-height:min(168px,42vw);height:auto;
  position:relative;z-index:1;
  filter:drop-shadow(0 8px 22px rgba(0,0,0,.35));
}
.cr-page-fx--crest .cr-page-fx__accent{
  background:var(--cr-accent-on-dark,var(--cr-accent,#f3d078));
  box-shadow:0 0 18px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 55%,transparent);
}
@keyframes cr-fx-ring-pulse{
  0%,100%{box-shadow:0 0 0 1px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 35%,transparent),0 0 22px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 40%,transparent),inset 0 0 14px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 18%,transparent);transform:scale(1)}
  50%{box-shadow:0 0 0 2px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 50%,transparent),0 0 36px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 55%,transparent),inset 0 0 22px color-mix(in srgb,var(--cr-accent-on-dark,#f3d078) 28%,transparent);transform:scale(1.03)}
}
@media (prefers-reduced-motion:reduce){
  .cr-page-fx.is-in .cr-page-fx__ring{animation:none!important}
  .cr-page-fx__ring{opacity:1;transform:none}
}
@media (max-width:599px){
  .cr-page-fx__crest{width:min(176px,58vw);height:min(176px,58vw)}
  .cr-page-fx--crest .cr-page-fx__logo{width:min(118px,40vw);max-height:min(132px,44vw)}
}

/* —— Dedicated pages (gallery / reviews / about / blog / contact) —— */
.cr-page-hero{padding:3.25rem 0 2.5rem;background:var(--cr-secondary,#0a1624);color:#fff;position:relative;overflow:hidden}
.cr-page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 85% 15%,rgba(214,47,53,.16),transparent 55%);pointer-events:none}
.cr-page-hero .cr-container{position:relative;z-index:1}
.cr-page-hero h1{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(2rem,4.5vw,3rem);font-weight:600;letter-spacing:-.02em;margin:0 0 .75rem;line-height:1.12}
.cr-page-hero__lede{max-width:46ch;margin:0;opacity:.9;font-size:1.08rem}
.cr-page-body{padding:3.25rem 0 4rem}
.cr-page-body--navy{background:var(--cr-primary,#0f2a44);color:#f5f3ee}
.cr-page-body--dark{background:var(--cr-secondary,#0a1624);color:#f5f3ee}
.cr-page-body--cream{background:var(--cr-cream,#f9f6ef)}
.cr-page-body--white{background:#fff}
.cr-empty{text-align:center;padding:3rem 1.5rem;border:1px dashed var(--cr-line);border-radius:var(--cr-radius);background:#fff;max-width:36rem;margin:0 auto}
.cr-empty h2{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 .65rem;font-size:1.55rem;font-weight:600}
.cr-empty p{margin:0;color:var(--cr-muted,#5a6570)}
.cr-reviews-cta{margin-top:2.5rem;text-align:center;padding:2rem 1.5rem;border-radius:var(--cr-radius);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.cr-reviews-cta p{margin:0 0 1.1rem;font-size:1.05rem}
.cr-about__text{max-width:42rem}
.cr-about__text p{font-size:1.12rem;line-height:1.7;color:rgba(255,255,255,.9)}
.cr-about__sig{margin-top:1.75rem;font-weight:700;font-size:1.05rem}
.cr-about__sig span{display:block;font-weight:500;opacity:.7;font-size:.92rem;margin-top:.15rem}
.cr-contact__grid{display:grid;gap:2rem}
@media (min-width:860px){.cr-contact__grid{grid-template-columns:1.1fr .9fr;align-items:start}}
.cr-contact__card{background:#fff;border:1px solid var(--cr-line);border-radius:var(--cr-radius);padding:1.5rem 1.55rem;box-shadow:0 2px 8px rgba(6,6,6,.05)}
.cr-contact__card h2{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 1rem;font-size:1.35rem;font-weight:600}
.cr-contact__list{list-style:none;margin:0;padding:0}
.cr-contact__list li{margin:.55rem 0;font-weight:600}
.cr-contact__list a{color:var(--cr-primary,#0f2a44)}
.cr-blog-list{display:grid;gap:1.25rem}
.cr-blog-card{background:#fff;border:1px solid var(--cr-line);border-radius:var(--cr-radius);padding:1.35rem 1.45rem;box-shadow:0 2px 8px rgba(6,6,6,.05)}
.cr-blog-card h2{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 .45rem;font-size:1.35rem;font-weight:600}
.cr-blog-card h2 a{color:inherit;text-decoration:none}
.cr-blog-card h2 a:hover{color:var(--cr-accent,#d62f35)}
.cr-blog-card__meta{font-size:.85rem;color:var(--cr-muted);margin:0 0 .65rem}
.cr-blog-card p{margin:0;color:var(--cr-muted)}


/* —— Service Areas hub —— */
.cr-sa-open{padding:3.25rem 0 3.5rem;background:var(--cr-secondary,#0a1624);color:#fff;position:relative;overflow:hidden}
.cr-sa-open::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 90% 10%,rgba(214,47,53,.18),transparent 55%);pointer-events:none}
.cr-sa-open .cr-container{position:relative;z-index:1}
.cr-sa-open__grid{display:grid;gap:2rem;align-items:center}
@media (min-width:900px){.cr-sa-open__grid{grid-template-columns:1.05fr .95fr;gap:2.75rem}}
.cr-sa-open .cr-breadcrumbs{margin-bottom:1.1rem}
.cr-sa-open .cr-breadcrumbs a{color:rgba(255,255,255,.75)}
.cr-sa-open .cr-breadcrumbs span{color:rgba(255,255,255,.55)}
.cr-sa-open h1{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(2.15rem,5vw,3.35rem);font-weight:600;letter-spacing:-.025em;line-height:1.1;margin:0 0 1rem;max-width:16ch}
.cr-sa-open__lede{max-width:42ch;margin:0 0 1.5rem;font-size:1.1rem;line-height:1.55;color:rgba(255,255,255,.9)}
.cr-sa-open__ctas{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}
.cr-sa-open__link{color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:1px}
.cr-sa-open__link:hover{color:#fff;border-color:#fff;text-decoration:none}
.cr-sa-open__media{margin:0;border-radius:var(--cr-radius,10px);overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.cr-sa-open__media img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}

.cr-sa-intro{padding:4.5rem 0;background:var(--cr-cream,#f9f6ef)}
.cr-sa-intro__inner{max-width:min(1140px,92%)}
.cr-sa-intro__body{display:grid;gap:1.75rem;margin-top:.25rem}
@media (min-width:800px){.cr-sa-intro__body{grid-template-columns:200px 1fr;gap:2.5rem;align-items:start}}
.cr-sa-intro__inset{margin:0;border-radius:var(--cr-radius);overflow:hidden;box-shadow:0 8px 28px rgba(6,6,6,.1)}
.cr-sa-intro__inset img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.cr-sa-intro__prose p{font-size:1.08rem;line-height:1.7;margin:0 0 1.1rem;color:var(--cr-ink,#141a1a)}
.cr-sa-intro__prose a{color:var(--cr-accent,#d62f35);font-weight:600}
.cr-sa-intro__pull{margin:1.25rem 0 0;padding:1.1rem 1.25rem;border-left:3px solid var(--cr-accent,#d62f35);background:#fff;font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:1.2rem;line-height:1.45;color:var(--cr-primary,#0f2a44);font-weight:500}
.cr-sa-facts{display:grid;gap:1.15rem;margin-top:2.5rem}
@media (min-width:700px){.cr-sa-facts{grid-template-columns:repeat(3,1fr)}}
.cr-sa-fact{background:#fff;border:1px solid var(--cr-line,#e5e0d6);border-radius:var(--cr-radius);padding:1.35rem 1.4rem;box-shadow:0 2px 8px rgba(6,6,6,.05)}
.cr-sa-fact h3{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);margin:0 0 .45rem;font-size:1.25rem;font-weight:600;color:var(--cr-primary,#0f2a44)}
.cr-sa-fact p{margin:0;font-size:.95rem;line-height:1.55;color:var(--cr-muted,#5a6570)}

.cr-sa-county{padding:4rem 0 3.5rem;background:#fff;border-top:1px solid var(--cr-line,#e5e0d6)}
.cr-sa-county--dark{background:var(--cr-secondary,#0a1624);color:#f5f3ee;border-top-color:transparent}
.cr-sa-county--dark .cr-eyebrow{color:var(--cr-accent,#d62f35)}
.cr-sa-county--dark .cr-sa-county__lead{color:rgba(255,255,255,.78)}
.cr-sa-county--dark .cr-link{color:#fff}
.cr-sa-county__title{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(1.85rem,3.5vw,2.55rem);font-weight:600;letter-spacing:-.02em;margin:0 0 .55rem;line-height:1.15}
.cr-sa-county__title a{color:inherit;text-decoration:none;border-bottom:3px solid var(--cr-accent,#d62f35);padding-bottom:.15rem}
.cr-sa-county__title a:hover{color:var(--cr-accent,#d62f35)}
.cr-sa-county--dark .cr-sa-county__title a:hover{color:#fff;border-color:#fff}
.cr-sa-county__lead{max-width:52ch;margin:0 0 1.5rem;font-size:1.08rem;line-height:1.55;color:var(--cr-muted,#5a6570)}
.cr-sa-cities{display:flex;gap:.85rem;overflow-x:auto;padding:0.15rem 0 1rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.cr-sa-cities:focus{outline:2px solid var(--cr-accent,#d62f35);outline-offset:4px}
.cr-sa-city{flex:0 0 min(240px,78vw);scroll-snap-align:start;display:flex;flex-direction:column;justify-content:space-between;gap:.85rem;min-height:7.5rem;padding:1.15rem 1.2rem;background:var(--cr-cream,#f9f6ef);border:1px solid var(--cr-line,#e5e0d6);border-top:3px solid var(--cr-accent,#d62f35);border-radius:var(--cr-radius);text-decoration:none;color:inherit;box-shadow:0 2px 8px rgba(6,6,6,.05);transition:box-shadow .2s,transform .2s}
.cr-sa-city:hover{box-shadow:var(--cr-shadow,0 10px 30px rgba(6,6,6,.12));transform:translateY(-2px);text-decoration:none;color:inherit}
.cr-sa-county--dark .cr-sa-city{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#fff}
.cr-sa-city__name{font-weight:700;font-size:1.05rem;line-height:1.3;color:var(--cr-primary,#0f2a44)}
.cr-sa-county--dark .cr-sa-city__name{color:#fff}
.cr-sa-city__go{font-size:.88rem;font-weight:600;color:var(--cr-accent,#d62f35)}
.cr-sa-county--dark .cr-sa-city__go{color:#ff6b70}
.cr-sa-county__more{margin:1rem 0 0}
.cr-sa-cta__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:0 0 1.5rem}
.cr-btn--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45)}
.cr-btn--ghost:hover{background:rgba(255,255,255,.08);color:#fff;border-color:#fff}

/* —— Mobile polish 2.0.9 (desktop ≥960 unchanged) —— */
html{overflow-x:hidden}
body{overflow-x:hidden}
img,video,iframe,svg{max-width:100%;height:auto}
.cr-quote-form input,
.cr-quote-form select,
.cr-quote-form textarea{font-size:16px;line-height:1.4;min-height:48px}
.cr-quote-form textarea{min-height:120px}
.cr-quote-form label{font-size:.95rem}

@media (max-width:959px){
  /* Header / logo */
  .cr-logo__img,.cr-logo .custom-logo{height:40px;max-width:148px}
  .cr-header__inner{min-height:60px;padding:.5rem 0;gap:.65rem}
  .cr-nav-toggle{width:44px;height:44px;flex-shrink:0}

  /* Nav accordion + tap targets */
  .cr-nav{padding:0.75rem 4% 1.25rem;max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);-webkit-overflow-scrolling:touch}
  .cr-nav__list{gap:0}
  .cr-nav__list > li > a,
  .cr-nav__list > li.has-dd > a{padding:.85rem .15rem;min-height:44px;display:inline-flex;align-items:center;font-size:1.05rem}
  .cr-nav__list > li.has-dd{gap:.35rem}
  .cr-nav__acc-btn{width:44px;height:44px;border-radius:6px;border-color:rgba(255,255,255,.35)}
  .cr-nav__list .has-fly > a.cr-nav__rlk{padding:.75rem .75rem;min-height:44px;font-size:1rem}
  .cr-nav__list .sub-menu a{padding:.75rem .85rem;min-height:44px;display:flex;align-items:center;font-size:.98rem}
  .cr-nav .cr-btn--header{width:100%;margin-top:.35rem;padding:0.95rem 1rem;font-size:1.05rem;min-height:48px}

  /* Hero — shorter, readable, full-width CTAs */
  .cr-hero{min-height:0}
  .cr-hero__grid{padding:2.25rem 0 2rem;gap:1.5rem;width:min(1140px,92%)}
  .cr-hero__title{font-size:clamp(1.85rem,7.5vw,2.55rem);max-width:18ch;margin-bottom:.75rem}
  .cr-hero__lede{font-size:1.02rem;margin-bottom:1.15rem}
  .cr-hero__actions{flex-direction:column;align-items:stretch;gap:.65rem;margin-bottom:.75rem}
  .cr-hero__actions .cr-btn{width:100%;min-height:48px}
  .cr-hero__phone-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.35rem 0;align-self:center}
  .cr-hero__form{padding:1.15rem 1.1rem 1.25rem;border-radius:10px}
  .cr-hero__form h2{font-size:1.25rem}
  .cr-eyebrow{font-size:.78rem;letter-spacing:.12em}

  /* Sections / grids */
  .cr-section{padding:3.25rem 0}
  .cr-services__grid,
  .cr-why__grid,
  .cr-reviews__grid,
  .cr-areas__grid,
  .cr-faq__grid,
  .cr-contact__grid,
  .cr-landing__grid,
  .cr-cta__grid,
  .cr-story__grid,
  .cr-sa-open__grid,
  .cr-sa-intro__body,
  .cr-sa-facts{grid-template-columns:1fr}
  .cr-process__photos{grid-template-columns:1fr 1fr;gap:.65rem}
  .cr-process__list{grid-template-columns:1fr}
  .cr-gallery__grid{grid-template-columns:1fr 1fr;gap:.55rem}
  .cr-gallery__item:nth-child(3n) img{aspect-ratio:4/3}

  /* Primary CTAs full width */
  .cr-btn--primary,
  .cr-btn--outline,
  .cr-btn--ghost,
  .cr-landing__hero .cr-btn,
  .cr-page-hero .cr-btn,
  .cr-sa-open__ctas .cr-btn,
  .cr-sa-cta__actions .cr-btn,
  .cr-cta .cr-btn--primary,
  .cr-footer__brand .cr-btn{width:100%;max-width:100%;min-height:48px;justify-content:center}
  .cr-hero__actions,
  .cr-sa-open__ctas,
  .cr-sa-cta__actions,
  .cr-landing__hero .cr-hero__actions{flex-direction:column;align-items:stretch}
  .cr-landing__hero{padding:2.5rem 0 2.25rem}
  .cr-landing__hero h1{font-size:clamp(1.75rem,7vw,2.45rem)}
  .cr-page-hero{padding:2.5rem 0 2rem}
  .cr-page-hero h1{font-size:clamp(1.75rem,7vw,2.4rem)}

  /* Areas / city lists — larger taps */
  .cr-areas__cities{columns:1;gap:.15rem}
  .cr-areas__cities a,
  .cr-footer li a,
  .cr-footer__county-name,
  .cr-contact__list a{display:inline-flex;align-items:center;min-height:44px;padding:.35rem 0}
  .cr-areas__cities li{break-inside:avoid}
  .cr-sa-cities{margin-inline:0;padding-bottom:1.1rem;max-width:100%}
  .cr-sa-city{flex:0 0 min(220px,82vw);min-height:6.75rem}

  /* Forms / FAQ */
  .cr-faq__item summary{min-height:48px;padding:1rem 1.1rem;font-size:1.02rem}
  .cr-form-row{grid-template-columns:1fr}

  /* Footer */
  .cr-footer{padding:2.75rem 0 0}
  .cr-footer__grid{grid-template-columns:1fr;gap:1.75rem}
  .cr-footer__logo-img{height:72px;max-width:72px}
  .cr-footer__social a{width:44px;height:44px}
  .cr-footer__bar{padding:1rem 0 1.25rem}

  /* Sticky call bar */
  .cr-mobile-bar a{padding:0.95rem .5rem;font-size:.9rem;letter-spacing:.04em;min-height:52px}
  body{padding-bottom:calc(52px + env(safe-area-inset-bottom,0px))}
  .cr-mobile-bar{padding-bottom:env(safe-area-inset-bottom,0px)}

  /* Page transition — smaller, snappier on phones */
  .cr-page-fx__logo{width:112px;max-height:112px}
  .cr-page-fx__name{font-size:1.25rem}

  /* Prevent sticky header + bar from covering focus */
  .cr-lightbox{padding:1rem;padding-bottom:calc(1rem + 52px + env(safe-area-inset-bottom,0px))}

  /* Trust strip wrap nicely */
  .cr-trust__row{gap:.65rem 1.1rem;justify-content:flex-start}
  .cr-trust__item{font-size:.88rem}
}

/* Narrow phones */
@media (max-width:389px){
  .cr-hero__title{font-size:clamp(1.7rem,8vw,2.15rem)}
  .cr-mobile-bar a{font-size:.82rem;letter-spacing:.03em}
}

/* Tablet portrait: keep stacked grids, slightly roomier header */
@media (min-width:600px) and (max-width:959px){
  .cr-services__grid,
  .cr-why__grid,
  .cr-reviews__grid,
  .cr-areas__grid{grid-template-columns:repeat(2,1fr)}
  .cr-gallery__grid{grid-template-columns:repeat(3,1fr)}
  .cr-process__list{grid-template-columns:repeat(2,1fr)}
  .cr-areas__cities{columns:2}
  .cr-btn--primary,
  .cr-btn--outline,
  .cr-btn--ghost,
  .cr-footer__brand .cr-btn{width:auto;max-width:none}
  .cr-hero__actions{flex-direction:row;flex-wrap:wrap;align-items:center}
  .cr-hero__actions .cr-btn{width:auto}
  .cr-sa-open__ctas,
  .cr-sa-cta__actions{flex-direction:row;flex-wrap:wrap}
  .cr-sa-open__ctas .cr-btn,
  .cr-sa-cta__actions .cr-btn,
  .cr-landing__hero .cr-btn{width:auto}
}
html.cr-nav-lock,html.cr-nav-lock body{overflow:hidden;touch-action:none}
@media (max-width:959px){
  .cr-hero__form .cr-quote-form{gap:.55rem}
  .cr-hero__form .cr-quote-form textarea,
  .cr-quote-form textarea{min-height:88px}
  .cr-hero__form > p{margin:0 0 .65rem;font-size:.95rem}
  .cr-hero__form h2{margin:0 0 .2rem}
  .cr-quote-form input,
  .cr-quote-form select{min-height:46px;padding:.7rem .8rem}
  .cr-quote-form label{margin-bottom:.2rem}
}

/* —— Service hub city chip grid (2.0.10) —— */
.cr-svc-cities{margin:2rem 0 1.75rem;padding:0}
.cr-svc-cities__heading{font-family:var(--cr-font-heading,Fraunces,"Fraunces Fallback",Georgia,serif);font-size:clamp(1.45rem,2.6vw,1.85rem);font-weight:600;letter-spacing:-.02em;line-height:1.2;color:var(--cr-primary,#0f2a44);margin:0 0 1.15rem}
.cr-svc-cities__body{display:flex;flex-direction:column;gap:1.35rem}
.cr-svc-cities__county{margin:0}
.cr-svc-cities__county-name{font-family:var(--cr-font-body,DM Sans,system-ui,sans-serif);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cr-muted,#5a6570);margin:0 0 .65rem;padding-bottom:.4rem;border-bottom:1px solid var(--cr-line,rgba(6,6,6,.12))}
.cr-svc-cities__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;width:100%;max-width:100%}
@media (min-width:600px){.cr-svc-cities__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}}
@media (min-width:900px){.cr-svc-cities__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:1100px){.cr-svc-cities__grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.cr-svc-cities__item{margin:0;min-width:0}
.cr-svc-cities__chip{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:.65rem .7rem;box-sizing:border-box;text-align:center;text-decoration:none;font-weight:600;font-size:.92rem;line-height:1.25;color:var(--cr-primary,#0f2a44);background:#fff;border:1px solid var(--cr-line,rgba(6,6,6,.14));border-radius:8px;box-shadow:0 1px 2px rgba(6,6,6,.05);transition:border-color .18s ease,color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.cr-svc-cities__chip:hover,
.cr-svc-cities__chip:focus-visible{color:var(--cr-accent,#d62f35);border-color:var(--cr-accent,#d62f35);background:rgba(214,47,53,.04);box-shadow:0 4px 14px rgba(214,47,53,.12);transform:translateY(-1px);text-decoration:none;outline:none}
.cr-svc-cities__chip:focus-visible{outline:2px solid var(--cr-accent,#d62f35);outline-offset:2px}
.cr-svc-cities__chip-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.cr-svc-cities--collapsible:not(.is-expanded) .cr-svc-cities__item--overflow,
.cr-svc-cities--collapsible:not(.is-expanded) .cr-svc-cities__county--overflow{display:none}
.cr-svc-cities__toggle{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1.15rem;min-height:44px;padding:.7rem 1.15rem;border:1px solid var(--cr-line,rgba(6,6,6,.18));border-radius:999px;background:var(--cr-cream,#f9f6ef);color:var(--cr-primary,#0f2a44);font-weight:700;font-size:.92rem;cursor:pointer;transition:border-color .18s,color .18s,background .18s}
.cr-svc-cities__toggle:hover,
.cr-svc-cities__toggle:focus-visible{border-color:var(--cr-accent,#d62f35);color:var(--cr-accent,#d62f35);background:#fff;outline:none}
.cr-svc-cities__toggle:focus-visible{outline:2px solid var(--cr-accent,#d62f35);outline-offset:2px}
@media (max-width:959px){
  .cr-svc-cities{margin:1.5rem 0 1.25rem}
  .cr-svc-cities__chip{min-height:48px;font-size:.95rem;padding:.75rem .65rem}
  .cr-svc-cities__toggle{width:100%;max-width:100%}
}


/* Optional dark-section accent (falls back to --cr-accent). */
.cr-section--dark .cr-eyebrow,.cr-section--dark .cr-link,.cr-hero .cr-eyebrow{color:var(--cr-accent-on-dark,var(--cr-accent,#d62f35))}
.cr-footer a.cr-btn--primary,.cr-footer a.cr-btn--header{color:var(--cr-on-button,var(--cr-on-accent,#fff))}


/* Tall crest logos (loading_emblem crest_ring clients): give the mark a bit more height */
body.cr-design-loading-crest-ring .cr-logo__img,
body.cr-design-loading-crest-ring .cr-logo .custom-logo{height:84px;max-width:64px}
@media (max-width:959px){
  body.cr-design-loading-crest-ring .cr-logo__img,
  body.cr-design-loading-crest-ring .cr-logo .custom-logo{height:56px;max-width:44px}
}
/* 3.0.8: text profile links (Facebook / Instagram / BBB) */
.cr-footer__social{flex-wrap:wrap}
.cr-footer__social a{width:auto;height:auto;min-height:38px;border-radius:999px;padding:.35rem .95rem;font-size:.9rem;font-weight:600;text-decoration:none}
@media (max-width:700px){.cr-footer__social a{min-height:44px;width:auto;height:auto}}
