/* ============================================================
       DESIGN TOKENS — Atlas Roofing & Construction Brand
       Extracted from atlasroofingpros.com
    ============================================================ */
    :root {
      /* Brand palette */
      --red:        #c41f1f;   /* primary CTA, accents, underlines */
      --red-dark:   #a01818;   /* hover state */
      --red-light:  #fde8e8;   /* tint backgrounds */

      --black:      #1a1a1a;   /* main text, headlines */
      --charcoal:   #2d2d2d;   /* dark section backgrounds */
      --charcoal-2: #3a3a3a;   /* slightly lighter dark bg */

      --gray-100:   #f2f2f2;   /* alt section bg (light gray) */
      --gray-200:   #e0e0e0;   /* borders */
      --gray-400:   #9e9e9e;   /* muted text */
      --gray-600:   #555555;   /* secondary text */
      --white:      #ffffff;

      --font-display: 'Montserrat', 'Arial Black', sans-serif;
      --font-body:    'Open Sans', 'Arial', sans-serif;

      --radius-sm:  3px;
      --radius-md:  4px;
      --radius-lg:  6px;

      --shadow-sm: 0 1px 4px rgba(0,0,0,.10);
      --shadow-md: 0 3px 12px rgba(0,0,0,.12);
      --shadow-lg: 0 8px 32px rgba(0,0,0,.15);
      --shadow-xl: 0 16px 48px rgba(0,0,0,.20);

      --max-w: 1120px;
      --gutter: clamp(20px, 5vw, 48px);
    }

    /* ============================================================
       RESET & BASE
    ============================================================ */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    html { scroll-behavior: smooth; }

    body {
      font-family: var(--font-body);
      font-size: 16px;
      line-height: 1.6;
      color: var(--black);
      background: var(--white);
      -webkit-font-smoothing: antialiased;
    }

    body.scrolled {
        padding-top: 0px;
    }


    img { display: block; max-width: 100%; }

    a { color: inherit; }

.maincontent {
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    border: none;
} 

    /* ============================================================
       UTILITIES
    ============================================================ */
    .container {
      width: 100%;
      max-width: var(--max-w);
      margin: 0 auto;
      padding: 0 var(--gutter);
    }

    .sr-only {
      position: absolute; width: 1px; height: 1px;
      padding: 0; margin: -1px; overflow: hidden;
      clip: rect(0,0,0,0); white-space: nowrap; border: 0;
    }

    .badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 4px 14px;
      border-radius: 2px;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .badge--amber {
      background: var(--red);
      color: var(--white);
    }

    /* ============================================================
       HEADER
    ============================================================ */
.header_wrapper {
	display: none!important;
}

.infobar_wrapper {
	display: none !important;
}

    .site-header {
      position: sticky;
      top: 0;
      z-index: 100;
      background: var(--black);
      border-bottom: 3px solid var(--red);
      box-shadow: var(--shadow-md);
    }

    .site-header__inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 72px;
      gap: 16px;
    }

    .site-header__logo {
      display: flex;
      align-items: center;
      gap: 12px;
      text-decoration: none;
    }

    .site-header__logo img {
      height: 52px;
      width: auto;
      display: block;
    }

    .site-header__phone {
      display: flex;
      align-items: center;
      gap: 8px;
      text-decoration: none;
      font-family: var(--font-display);
      font-weight: 700;
      font-size: 16px;
      color: var(--white);
      transition: color .15s;
    }

    .site-header__phone:hover { color: var(--red); }

    .site-header__phone svg {
      width: 16px;
      height: 16px;
      flex-shrink: 0;
      color: var(--red);
    }

    /* ============================================================
       HERO
    ============================================================ */
    .hero {
      position: relative;
      overflow: hidden;
      background: var(--charcoal);
      color: var(--white);
      padding: clamp(48px, 7vw, 96px) 0 clamp(56px, 8vw, 112px);
    }

    /* Background image overlay */
    .hero__bg {
      position: absolute;
      inset: 0;
      z-index: 0;
      background: url('/imageserver/UserMedia/atlasroofing/Landing_Page_Inspection_Photo.png') center / cover no-repeat;
      opacity: .20;
    }

    .hero__bg-pattern {
      position: absolute;
      inset: 0;
      z-index: 1;
      background-image:
        radial-gradient(circle at 70% 50%, rgba(196,31,31,.06) 0%, transparent 60%),
        linear-gradient(to right, rgba(0,0,0,.3) 0%, transparent 70%);
    }

    .hero__inner {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: clamp(32px, 5vw, 72px);
      align-items: start;
    }

    .hero__content { max-width: 580px; }

    .hero__eyebrow {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 20px;
    }

    .hero__eyebrow-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--red);
      animation: pulse 2s ease-in-out infinite;
    }

    @keyframes pulse {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: .6; transform: scale(.85); }
    }

    .hero__eyebrow-text {
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--white);
    }

    .hero__headline {
      font-family: var(--font-display);
      font-size: clamp(28px, 4vw, 46px);
      line-height: 1.1;
      letter-spacing: -.01em;
      font-weight: 800;
      margin-bottom: 20px;
      color: var(--white);
      text-transform: uppercase;
    }

    .hero__headline em {
      font-style: normal;
      color: var(--red);
    }

    .hero__subheadline {
      font-size: clamp(15px, 1.8vw, 17px);
      line-height: 1.7;
      color: rgba(255,255,255,.80);
      margin-bottom: 32px;
      font-weight: 400;
    }

    /* Trust strip */
    .trust-strip {
      display: flex;
      flex-wrap: wrap;
      gap: 8px 20px;
      padding: 16px 20px;
      background: rgba(0,0,0,.35);
      border-left: 3px solid var(--red);
    }

    .trust-strip__item {
      display: flex;
      align-items: center;
      gap: 7px;
      font-size: 13px;
      font-weight: 600;
      color: rgba(255,255,255,.90);
    }

    .trust-strip__item svg {
      width: 13px;
      height: 13px;
      color: var(--red);
      flex-shrink: 0;
    }

    /* ============================================================
       FORM CARD (inside hero)
    ============================================================ */
    .form-card {
      background: var(--white);
      border-radius: var(--radius-sm);
      box-shadow: var(--shadow-xl);
      padding: clamp(28px, 4vw, 40px);
      color: var(--black);
      border-top: 4px solid var(--red);
    }

    .form-card__header {
      margin-bottom: 22px;
    }

    .form-card__title {
      font-family: var(--font-display);
      font-size: clamp(18px, 2vw, 22px);
      font-weight: 800;
      line-height: 1.2;
      color: var(--black);
      margin-bottom: 6px;
      text-transform: uppercase;
    }

    .form-card__subtitle {
      font-size: 13px;
      color: var(--gray-600);
      line-height: 1.5;
    }

    /* Form */
    .form-group {
      margin-bottom: 14px;
    }

    .form-group label {
      display: block;
      font-size: 12px;
      font-weight: 700;
      color: var(--black);
      margin-bottom: 5px;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    .form-group input,
    .form-group select,
    .form-group textarea {
      width: 100%;
      padding: 10px 12px;
      border: 1.5px solid var(--gray-200);
      border-radius: var(--radius-sm);
      font-family: var(--font-body);
      font-size: 14px;
      color: var(--black);
      background: var(--white);
      transition: border-color .15s, box-shadow .15s;
      outline: none;
      appearance: none;
    }

    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus {
      border-color: var(--red);
      box-shadow: 0 0 0 3px rgba(196,31,31,.10);
    }

    .form-group input.error,
    .form-group select.error {
      border-color: var(--red);
    }

    .form-group .optional-label {
      font-weight: 400;
      color: var(--gray-400);
      text-transform: none;
    }

    .form-group textarea { resize: vertical; min-height: 70px; }

    .form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }

    /* CTA Button — Atlas red, sharp, bold */
    .btn-primary {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      width: 100%;
      padding: 14px 24px;
      background: var(--red);
      color: var(--white);
      font-family: var(--font-display);
      font-size: 14px;
      font-weight: 800;
      border: none;
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: background .15s, transform .1s;
      letter-spacing: .06em;
      text-transform: uppercase;
      margin-top: 6px;
    }

    .btn-primary:hover {
      background: var(--red-dark);
      transform: translateY(-1px);
    }

    .btn-primary:active { transform: translateY(0); }

    .btn-primary svg { width: 16px; height: 16px; }

    .hero__service-area {
      display: inline-block;
      font-size: 13px;
      font-weight: 600;
      color: var(--red);
      letter-spacing: .04em;
      text-transform: uppercase;
      margin-bottom: 28px;
      padding: 5px 12px;
      border: 1px solid rgba(196,31,31,.4);
      border-radius: var(--radius-sm);
      background: rgba(196,31,31,.08);
    }

    .form-privacy {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      margin-top: 8px;
      font-size: 12px;
      color: var(--gray-400);
    }



    .form-privacy svg { 
        width: 12px; 
        height: 12px; 
        flex-shrink: 0; 
    }

    .form-reassurance{
        display: flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      margin-top: 12px;
      font-size: 12px;
      color: var(--gray-400);
    }

    .form-reassurance svg { width: 13px; height: 13px; flex-shrink: 0; }


    /* Star rating badge above headline */
    .hero__star-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255,255,255,.10);
      border: 1px solid rgba(255,255,255,.20);
      border-radius: 2px;
      padding: 6px 14px;
      margin-bottom: 16px;
    }

    .hero__star-badge-stars {
      color: #f5c518;
      font-size: 14px;
      letter-spacing: 1px;
    }

    .hero__star-badge-text {
      font-size: 12px;
      font-weight: 600;
      color: rgba(255,255,255,.85);
      letter-spacing: .03em;
    }

    /* Local owner-operated line near submit */
    .form-local-badge {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      margin-top: 10px;
      font-size: 12px;
      font-weight: 700;
      color: var(--red);
      text-align: center;
    }

    .form-local-badge svg {
      width: 12px;
      height: 12px;
      flex-shrink: 0;
      color: var(--red);
    }

    /* Mini review under form card */
    .form-mini-review {
      margin-top: 16px;
      padding: 14px 18px;
      background: rgba(255,255,255,.07);
      border-left: 3px solid var(--red);
      border-radius: var(--radius-sm);
    }

    .form-mini-review__stars {
      color: #f5c518;
      font-size: 13px;
      letter-spacing: 1px;
      margin-bottom: 6px;
    }

    .form-mini-review__text {
      font-size: 13px;
      color: rgba(255,255,255,.80);
      line-height: 1.6;
      font-style: italic;
      margin-bottom: 6px;
    }

    .form-mini-review__author {
      font-size: 12px;
      font-weight: 600;
      color: rgba(255,255,255,.55);
    }

    /* Success State */
    .form-success {
      display: none;
      flex-direction: column;
      align-items: center;
      text-align: center;
      padding: 24px 0;
      gap: 14px;
    }

    .form-success.visible { display: flex; }

    .success-icon {
      width: 64px;
      height: 64px;
      background: var(--red-light);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .success-icon svg { width: 30px; height: 30px; color: var(--red); }

    .form-success h3 {
      font-family: var(--font-display);
      font-size: 20px;
      font-weight: 800;
      color: var(--black);
      text-transform: uppercase;
    }

    .form-success p {
      font-size: 14px;
      color: var(--gray-600);
      line-height: 1.6;
      max-width: 320px;
    }

    /* ============================================================
       WHAT YOU GET
    ============================================================ */
    .section {
      padding: clamp(56px, 8vw, 96px) 0;
    }

    .section--alt { background: var(--gray-100); }

    .section--dark {
      background: var(--black);
    }

    .section--dark .section-label { color: var(--red); }

    .section--dark .section-heading { color: var(--white); }

    .section--dark .section-subheading { color: rgba(255,255,255,.65); }

    .section--dark .process-step__title { color: var(--white); }

    .section--dark .process-step__desc { color: rgba(255,255,255,.65); }

    .section--dark .process-step__num {
      box-shadow: 0 0 0 4px var(--black), 0 0 0 6px var(--red);
    }

    .section-label {
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--red);
      margin-bottom: 10px;
    }

    .section-heading {
      font-family: var(--font-display);
      font-size: clamp(22px, 3vw, 34px);
      line-height: 1.15;
      letter-spacing: .01em;
      font-weight: 800;
      color: var(--black);
      text-transform: uppercase;
      margin-bottom: 10px;
      /* Red underline accent matching Atlas site */
      padding-bottom: 14px;
      position: relative;
    }

    .section-heading::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 48px;
      height: 3px;
      background: var(--red);
    }

    /* centered headings get centered underline */
    [style*="text-align:center"] .section-heading::after,
    .section-header[style*="text-align"] .section-heading::after {
      left: 50%;
      transform: translateX(-50%);
    }

    .section-subheading {
      font-size: 16px;
      color: var(--gray-600);
      max-width: 560px;
      line-height: 1.7;
      font-weight: 400;
      margin-top: 14px;
    }

    .section-header { margin-bottom: clamp(36px, 5vw, 56px); }

    /* Value cards */
    .value-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 20px;
    }

    .value-card {
      background: var(--white);
      border: 1.5px solid var(--gray-200);
      border-radius: var(--radius-sm);
      padding: 28px 24px;
      transition: box-shadow .2s, border-color .2s;
      border-top: 3px solid var(--red);
    }

    .value-card:hover {
      box-shadow: var(--shadow-md);
      border-color: var(--red);
    }

    .value-card__icon {
      width: 44px;
      height: 44px;
      background: var(--charcoal);
      border-radius: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 16px;
    }

    .value-card__icon svg { width: 22px; height: 22px; color: var(--white); }

    .value-card__title {
      font-family: var(--font-display);
      font-size: 14px;
      font-weight: 800;
      color: var(--black);
      margin-bottom: 7px;
      text-transform: uppercase;
      letter-spacing: .03em;
      padding-bottom: 8px;
      border-bottom: 2px solid var(--red);
      display: inline-block;
    }

    .value-card__desc {
      font-size: 14px;
      color: var(--gray-600);
      line-height: 1.6;
      margin-top: 8px;
    }

    /* ============================================================
       PROCESS
    ============================================================ */
    .process-panel {
      background: var(--charcoal);
      border-radius: var(--radius-sm);
      padding: clamp(32px, 4vw, 52px) clamp(24px, 4vw, 48px);
      border-left: 4px solid var(--red);
    }

    .process-steps {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: clamp(24px, 4vw, 48px);
      position: relative;
    }

    .process-steps::before {
      content: '';
      position: absolute;
      top: 24px;
      left: calc(16.6% + 24px);
      right: calc(16.6% + 24px);
      height: 2px;
      background: var(--red);
      z-index: 0;
    }

    .process-step {
      position: relative;
      z-index: 1;
      text-align: center;
    }

    .process-step__num {
      width: 48px;
      height: 48px;
      border-radius: 0;
      background: var(--red);
      color: var(--white);
      font-family: var(--font-display);
      font-size: 18px;
      font-weight: 900;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 20px;
      box-shadow: 0 0 0 4px var(--white), 0 0 0 6px var(--red);
    }

    .process-step__title {
      font-family: var(--font-display);
      font-size: 14px;
      font-weight: 800;
      color: var(--black);
      margin-bottom: 8px;
      text-transform: uppercase;
    }

    .process-step__desc {
      font-size: 14px;
      color: var(--gray-600);
      line-height: 1.6;
    }

    /* ============================================================
       TRUST / PROOF
    ============================================================ */
    .trust-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: clamp(20px, 3vw, 40px);
      align-items: start;
    }

    /* Badges */
    .badge-row {
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      margin-bottom: 32px;
      align-items: flex-end;
    }

    .cert-badge {
      width: 100px;
      height: 100px;
      border: none;
      border-radius: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 4px;
      background: transparent;
      overflow: hidden;
    }

    .cert-badge img { width: 100%; height: 100%; object-fit: contain; }

    /* Wider slot for the BBB horizontal badge */
    .cert-badge--wide {
      width: 180px;
      height: 80px;
    }

    /* DEV: fallback badge placeholder */
    .cert-badge--placeholder {
      font-size: 9px;
      font-weight: 700;
      color: var(--gray-400);
      text-align: center;
      text-transform: uppercase;
      letter-spacing: .05em;
      line-height: 1.3;
    }

    /* Review cards — matching Atlas white cards on charcoal bg */
    .review-card {
      background: var(--white);
      border: none;
      border-radius: var(--radius-sm);
      padding: 22px 24px;
      margin-bottom: 16px;
      box-shadow: var(--shadow-sm);
    }

    .review-stars {
      display: flex;
      gap: 3px;
      margin-bottom: 10px;
    }

    .review-stars svg {
      width: 16px;
      height: 16px;
      color: var(--red);
      fill: var(--red);
    }

    .review-text {
      font-size: 14px;
      color: var(--gray-600);
      line-height: 1.65;
      margin-bottom: 12px;
      font-style: italic;
    }

    .review-author {
      font-size: 13px;
      font-weight: 700;
      color: var(--red);
      font-family: var(--font-display);
    }

    .local-cred {
      background: var(--charcoal);
      color: var(--white);
      border-radius: var(--radius-sm);
      padding: 28px;
      border-left: 4px solid var(--red);
    }

    .local-cred__title {
      font-family: var(--font-display);
      font-size: 16px;
      font-weight: 800;
      text-transform: uppercase;
      margin-bottom: 10px;
      color: var(--white);
    }

    .local-cred__body {
      font-size: 14px;
      line-height: 1.7;
      color: rgba(255,255,255,.75);
    }

    .local-cred__stat {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
      margin-top: 20px;
    }

    .stat-item { text-align: center; }

    .stat-item__num {
      font-family: var(--font-display);
      font-size: 30px;
      font-weight: 900;
      color: var(--red);
      line-height: 1;
      margin-bottom: 4px;
    }

    .stat-item__label {
      font-size: 11px;
      color: rgba(255,255,255,.5);
      text-transform: uppercase;
      letter-spacing: .06em;
    }

    /* ============================================================
       FINANCING
    ============================================================ */
    .financing-banner {
      background: var(--charcoal);
      border-radius: var(--radius-sm);
      padding: 28px 32px;
      display: flex;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
      color: var(--white);
      border-left: 4px solid var(--red);
    }

    .financing-banner__icon {
      width: 52px;
      height: 52px;
      background: var(--red);
      border-radius: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .financing-banner__icon svg { width: 26px; height: 26px; color: var(--white); }

    .financing-banner__body { flex: 1; min-width: 200px; }

    .financing-banner__title {
      font-family: var(--font-display);
      font-size: 16px;
      font-weight: 800;
      text-transform: uppercase;
      margin-bottom: 4px;
    }

    .financing-banner__desc {
      font-size: 14px;
      color: rgba(255,255,255,.70);
    }

    /* ============================================================
       FAQ
    ============================================================ */
    .faq-list { max-width: 720px; margin: 0 auto; }

    .faq-item {
      border-bottom: 1px solid var(--gray-200);
    }

    .faq-item:first-child { border-top: 1px solid var(--gray-200); }

    .faq-question {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 18px 0;
      background: none;
      border: none;
      cursor: pointer;
      text-align: left;
      font-family: var(--font-display);
      font-size: 14px;
      font-weight: 700;
      color: var(--black);
      text-transform: uppercase;
      letter-spacing: .03em;
      transition: color .15s;
    }

    .faq-question:hover { color: var(--red); }

    .faq-chevron {
      width: 20px;
      height: 20px;
      flex-shrink: 0;
      transition: transform .25s ease;
      color: var(--gray-400);
    }

    .faq-item.open .faq-chevron {
      transform: rotate(180deg);
      color: var(--red);
    }

    .faq-answer {
      display: none;
      padding-bottom: 18px;
      font-size: 14.5px;
      color: var(--gray-600);
      line-height: 1.7;
    }

    .faq-item.open .faq-answer { display: block; }

    /* ============================================================
       BOTTOM CTA
    ============================================================ */
    .bottom-cta {
      background: var(--charcoal);
      background-image: url('/imageserver/UserMedia/atlasroofing/House_Landing_Page_Photo.png');
      background-size: cover;
      background-position: center;
      position: relative;
      color: var(--white);
      padding: clamp(56px, 7vw, 96px) 0;
      text-align: center;
    }

    .bottom-cta::before {
      content: '';
      position: absolute;
      inset: 0;
      background: rgba(26,26,26,.82);
      z-index: 0;
    }

    .bottom-cta .container {
      position: relative;
      z-index: 1;
    }

    .bottom-cta__heading {
      font-family: var(--font-display);
      font-size: clamp(24px, 3.5vw, 40px);
      font-weight: 900;
      line-height: 1.1;
      letter-spacing: .02em;
      text-transform: uppercase;
      margin-bottom: 12px;
    }

    .bottom-cta__heading em {
      color: var(--red);
      font-style: normal;
    }

    .bottom-cta__sub {
      font-size: 16px;
      color: rgba(255,255,255,.7);
      margin-bottom: 36px;
      font-weight: 400;
    }

    .btn-cta-large {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 15px 32px;
      background: var(--red);
      color: var(--white);
      font-family: var(--font-display);
      font-size: 14px;
      font-weight: 800;
      border-radius: var(--radius-sm);
      text-decoration: none;
      letter-spacing: .06em;
      text-transform: uppercase;
      transition: background .15s, transform .1s;
    }

    .btn-cta-large:hover {
      background: var(--red-dark);
      transform: translateY(-2px);
color: #fff;
text-decoration: none;
    }

    .btn-cta-large svg { width: 18px; height: 18px; }

    /* ============================================================
       FOOTER
    ============================================================ */
    .site-footer {
      background: var(--black);
      color: rgba(255,255,255,.50);
      padding: 28px 0;
      font-size: 13px;
    }

    .site-footer__inner {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }

    .site-footer a {
      color: rgba(255,255,255,.65);
      text-decoration: none;
    }

    .site-footer a:hover { color: var(--red); }

    .site-footer__sep { margin: 0 8px; opacity: .4; }

    /* ============================================================
       STICKY MOBILE CTA
    ============================================================ */
    .sticky-cta {
      display: none;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 200;
      background: var(--white);
      border-top: 3px solid var(--red);
      box-shadow: 0 -4px 20px rgba(0,0,0,.12);
      padding: 12px 20px;
    }

    .sticky-cta a {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      width: 100%;
      padding: 14px;
      background: var(--red);
      color: var(--white);
      font-family: var(--font-display);
      font-weight: 800;
      font-size: 14px;
      letter-spacing: .06em;
      text-transform: uppercase;
      border-radius: var(--radius-sm);
      text-decoration: none;
    }

    .sticky-cta svg { width: 16px; height: 16px; }

    /* ============================================================
       RESPONSIVE
    ============================================================ */
    @media (max-width: 900px) {
      .hero__inner {
        grid-template-columns: 1fr;
      }

      .hero__content { max-width: 100%; }

      .process-steps {
        grid-template-columns: 1fr;
        gap: 32px;
      }

      .process-steps::before { display: none; }

      .trust-grid {
        grid-template-columns: 1fr;
      }

      .local-cred__stat { grid-template-columns: repeat(4, 1fr); }
    }

    @media (max-width: 640px) {
      .form-row { grid-template-columns: 1fr; }

      .sticky-cta { display: block; }

      /* Give breathing room at bottom for sticky CTA */
      .site-footer { padding-bottom: 80px; }

      .local-cred__stat { grid-template-columns: 1fr 1fr; }

      .hero__headline { font-size: 30px; }
    }

    /* ============================================================
       ANIMATIONS
    ============================================================ */
    @keyframes fadeUp {
      from { opacity: 0; transform: translateY(20px); }
      to   { opacity: 1; transform: translateY(0); }
    }

    .hero__content, .form-card {
      animation: fadeUp .55s ease both;
    }

    .form-card { animation-delay: .1s; }

.ywp_footer {
	display: none!important;
}

.mobile_menu_wrapper {
	display: none !important;
}