@charset "UTF-8";

    /* ── Reset & base ─────────────────────────────────────────────────────── */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: 'Segoe UI', Arial, sans-serif;
      font-size: 16px;
      line-height: 1.65;
      color: #1a1a1a;
      background: #fff;
    }
    img { max-width: 100%; display: block; }
    a { color: #1b3a6b; }
    a:hover { color: #2c5282; }

    /* ── Colour tokens ────────────────────────────────────────────────────── */
    :root {
      --blue:       #1b3a6b;
      --blue-mid:   #2c5282;
      --blue-light: #e8eef7;
      --blue-pale:  #f0f4fb;
      --green:      #1a6b3a;
      --green-light:#e8f7ee;
      --red:        #8b1a1a;
      --red-light:  #f7e8e8;
      --amber:      #7a5c00;
      --amber-light:#fff8e1;
      --grey:       #f4f4f4;
      --grey-mid:   #888;
      --white:      #ffffff;
      --black:      #1a1a1a;
    }

    /* ── Layout ───────────────────────────────────────────────────────────── */
    .container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
    section { padding: 64px 0; }
    section:nth-child(even) { background: var(--grey); }

    /* ── Typography ───────────────────────────────────────────────────────── */
    h1 { font-size: clamp(1.75rem, 4vw, 2.75rem); line-height: 1.2; color: var(--blue); font-weight: 800; }
    h2 { font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.3; color: var(--blue); font-weight: 700; margin-bottom: 16px; }
    h3 { font-size: 1.15rem; color: var(--blue); font-weight: 700; margin-bottom: 8px; }
    p { margin-bottom: 16px; }
    p:last-child { margin-bottom: 0; }
    ul { padding-left: 24px; margin-bottom: 16px; }
    li { margin-bottom: 8px; }

    /* ── Buttons ──────────────────────────────────────────────────────────── */
    .btn {
      display: inline-block;
      padding: 14px 28px;
      border-radius: 4px;
      font-weight: 700;
      font-size: 1rem;
      text-decoration: none;
      cursor: pointer;
      transition: opacity .2s, transform .1s;
      border: none;
    }
    .btn:hover { opacity: .88; transform: translateY(-1px); }
    .btn-primary { background: var(--blue); color: var(--white); }
    .btn-outline  { background: transparent; color: var(--blue); border: 2px solid var(--blue); }
    .btn-white    { background: var(--white); color: var(--blue); }
    .btn-green    { background: var(--green); color: var(--white); }
    .btn-lg       { padding: 18px 36px; font-size: 1.1rem; }

    /* ── Header / Nav ─────────────────────────────────────────────────────── */
    .site-header {
      background: linear-gradient(rgba(27,58,107,.92), rgba(27,58,107,.92)),
                  url('../images/houses.webp') center/cover no-repeat;
      padding: 0;
      position: sticky;
      top: 0;
      z-index: 100;
      box-shadow: 0 2px 8px rgba(0,0,0,.35);
    }
    .header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 16px 20px;
      max-width: 1100px;
      margin: 0 auto;
    }
    .site-logo {
      display: flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
    }
    .site-logo img { height: 52px; width: 52px; border-radius: 50%; object-fit: cover; background: #fff; padding: 4px; box-shadow: 0 0 0 2px rgba(255,255,255,.3); }
    .site-logo-text {
      font-size: 1.5rem;
      font-weight: 800;
      color: var(--white);
      letter-spacing: -.02em;
      line-height: 1;
    }
    .site-logo-subtext {
      font-size: .72rem;
      color: #8aaee8;
      font-weight: 400;
      display: block;
      letter-spacing: .04em;
      text-transform: uppercase;
      margin-top: 2px;
    }
    .site-logo-text span { color: #aaccff; }
    .header-cta {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-shrink: 0;
    }
    .header-phone {
      color: #ffffff;
      font-weight: 800;
      font-size: 1.15rem;
      text-decoration: none;
      letter-spacing: -.01em;
    }
    .header-phone:hover { color: #aaccff; }
    .header-tag {
      font-size: .75rem;
      color: #aaccff;
      display: block;
      line-height: 1;
      font-weight: 500;
      letter-spacing: .03em;
      text-transform: uppercase;
    }
    nav { display: flex; gap: 2px; align-items: center; }
    nav a {
      color: #dde8ff;
      text-decoration: none;
      font-size: .95rem;
      font-weight: 500;
      padding: 8px 13px;
      border-radius: 4px;
      transition: background .15s, color .15s;
      letter-spacing: .01em;
    }
    nav a:hover { background: rgba(255,255,255,.15); color: #ffffff; }
    .nav-toggle { display: none; background: none; border: none; color: var(--white); font-size: 1.5rem; cursor: pointer; }

    /* ── Top bar ──────────────────────────────────────────────────────────── */
    .top-bar {
      background: var(--amber);
      color: var(--white);
      text-align: center;
      padding: 10px 20px;
      font-size: .9rem;
      font-weight: 600;
    }
    .top-bar a { color: var(--white); font-weight: 700; }

    /* ── Hero ─────────────────────────────────────────────────────────────── */
    .hero {
      background: linear-gradient(135deg, var(--blue) 0%, #2a4f8f 60%, #1a3a6b 100%);
      color: var(--white);
      padding: 72px 0 64px;
      position: relative;
      overflow: hidden;
    }
    .hero::before {
      content: '';
      position: absolute;
      inset: 0;
      background: url('../images/houses.webp') center 60%/cover no-repeat;
      opacity: .35;
      z-index: 0;
    }
    .hero .container { position: relative; z-index: 1; }
    .hero-grid {
      display: grid;
      grid-template-columns: 1fr 400px;
      gap: 48px;
      align-items: center;
    }
    .hero h1 { color: var(--white); margin-bottom: 20px; }
    .hero-sub {
      font-size: 1.15rem;
      line-height: 1.7;
      color: #ccd8f0;
      margin-bottom: 20px;
    }
    .hero-detail {
      font-size: 1rem;
      color: #aabbdd;
      margin-bottom: 28px;
    }
    .hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 24px; }
    .hero-meta {
      font-size: .85rem;
      color: #8aaee8;
    }
    .hero-meta strong { color: #aaccff; }

    /* Hero form card */
    .hero-card {
      background: var(--white);
      border-radius: 8px;
      padding: 28px;
      box-shadow: 0 8px 32px rgba(0,0,0,.3);
    }
    .hero-card h3 { color: var(--blue); font-size: 1.1rem; margin-bottom: 16px; }
    .hero-card p { font-size: .9rem; color: var(--grey-mid); margin-bottom: 16px; }
    .form-group { margin-bottom: 12px; }
    .form-group label { display: block; font-size: .85rem; font-weight: 600; color: var(--blue); margin-bottom: 4px; }
    .form-group input,
    .form-group textarea,
    .form-group select {
      width: 100%;
      padding: 10px 12px;
      border: 1.5px solid #ccd;
      border-radius: 4px;
      font-size: .95rem;
      font-family: inherit;
      transition: border-color .15s;
    }
    .form-group input:focus,
    .form-group textarea:focus { outline: none; border-color: var(--blue); }
    .form-group textarea { resize: vertical; min-height: 70px; }
    .form-gdpr { font-size: .78rem; color: var(--grey-mid); margin: 8px 0 12px; line-height: 1.5; }
    .form-gdpr a { color: var(--blue); }

    /* ── Trust bar ────────────────────────────────────────────────────────── */
    .trust-bar { background: var(--blue); padding: 0; }
    .trust-bar-inner {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 0;
    }
    .trust-item {
      flex: 1;
      min-width: 160px;
      padding: 20px 24px;
      border-right: 1px solid rgba(255,255,255,.1);
      text-align: center;
    }
    .trust-item:last-child { border-right: none; }
    .trust-icon { font-size: 1.6rem; margin-bottom: 6px; }
    .trust-label { color: var(--white); font-weight: 700; font-size: .95rem; margin-bottom: 4px; }
    .trust-desc { color: #8aaee8; font-size: .8rem; line-height: 1.4; }

    /* ── Law change alert ─────────────────────────────────────────────────── */
    .law-alert { background: var(--blue-pale); padding: 64px 0; }
    .law-alert-header {
      display: flex;
      align-items: center;
      gap: 16px;
      margin-bottom: 24px;
    }
    .law-badge {
      background: var(--amber);
      color: var(--white);
      font-size: .8rem;
      font-weight: 700;
      padding: 4px 10px;
      border-radius: 20px;
      white-space: nowrap;
    }
    .comparison-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
      margin: 32px 0;
    }
    .comparison-col {
      border-radius: 6px;
      padding: 24px;
    }
    .comparison-col.gone { background: var(--red-light); border-left: 4px solid var(--red); }
    .comparison-col.available { background: var(--green-light); border-left: 4px solid var(--green); }
    .comparison-col h3 { font-size: 1rem; margin-bottom: 14px; }
    .comparison-col.gone h3 { color: var(--red); }
    .comparison-col.available h3 { color: var(--green); }
    .comparison-col ul { padding-left: 20px; margin: 0; }
    .comparison-col li { font-size: .95rem; margin-bottom: 10px; color: var(--black); }
    .law-warning {
      background: var(--red-light);
      border: 1px solid #e4a0a0;
      border-radius: 6px;
      padding: 16px 20px;
      font-size: .95rem;
      color: var(--red);
      font-weight: 600;
      margin-bottom: 20px;
    }
    .reviewed-note {
      font-size: .82rem;
      color: var(--grey-mid);
      font-style: italic;
      margin-top: 16px;
    }
    .law-alert-inner {
      display: grid;
      grid-template-columns: 1fr 260px;
      gap: 40px;
      align-items: start;
    }
    .law-alert-image {
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 8px 28px rgba(0,0,0,.12);
      border: 3px solid var(--red-light);
    }
    .law-alert-image img {
      width: 100%;
      height: 340px;
      object-fit: cover;
      object-position: center top;
      display: block;
    }
    .law-alert-image figcaption {
      background: var(--red-light);
      color: var(--red);
      font-size: .82rem;
      font-weight: 600;
      padding: 10px 14px;
      text-align: center;
    }

    /* ── Tenant removal consultation ─────────────────────────────────────── */
    .consultation-feature { background: var(--white); padding: 70px 0; }
    .consultation-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); gap: 52px; align-items: center; }
    .consultation-kicker { display: inline-flex; align-items: center; background: var(--blue-pale); color: var(--blue); border-radius: 20px; padding: 6px 12px; margin-bottom: 14px; font-size: .82rem; font-weight: 700; letter-spacing: .02em; }
    .consultation-feature h2 { max-width: 18ch; }
    .consultation-intro { font-size: 1.16rem; color: var(--blue); font-weight: 600; max-width: 62ch; }
    .consultation-list { list-style: none; margin: 24px 0 18px; padding: 0; }
    .consultation-list li { position: relative; padding: 6px 0 6px 28px; }
    .consultation-list li::before { content: "✓"; position: absolute; left: 0; color: var(--green); font-weight: 800; }
    .consultation-note { color: #4f5f75; font-size: .92rem; max-width: 66ch; }
    .consultation-price { background: var(--blue-pale); border: 1px solid #cbd9ee; border-top: 4px solid var(--blue); border-radius: 10px; padding: 32px; box-shadow: 0 10px 28px rgba(11,47,100,.08); }
    .consultation-price > span { color: var(--blue); font-size: .86rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
    .consultation-price strong { display: block; color: var(--blue); font-size: 3rem; line-height: 1.05; margin: 10px 0; }
    .consultation-price p { font-size: .95rem; color: var(--black); }
    .consultation-price .btn { width: 100%; justify-content: center; margin-top: 8px; }

    /* ── Services ─────────────────────────────────────────────────────────── */
    .services-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      margin-top: 32px;
    }
    .service-card {
      background: var(--white);
      border: 1px solid #dde4f0;
      border-top: 3px solid var(--blue);
      border-radius: 6px;
      padding: 24px;
      text-decoration: none;
      transition: box-shadow .2s, transform .15s;
    }
    .service-card:hover { box-shadow: 0 6px 20px rgba(27,58,107,.12); transform: translateY(-2px); }
    .service-icon { font-size: 1.8rem; margin-bottom: 12px; }
    .service-card h3 { color: var(--blue); font-size: 1rem; margin-bottom: 8px; }
    .service-card p { font-size: .9rem; color: #444; margin: 0; line-height: 1.55; }
    .services-grid > .service-card:last-child { grid-column: 2; }

    /* ── Pricing ──────────────────────────────────────────────────────────── */
    .pricing { background: var(--white); }
    .pricing-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 28px;
      margin-top: 32px;
    }
    .strike-card {
      border: 2px solid var(--blue);
      border-radius: 8px;
      overflow: hidden;
    }
    .strike-header {
      background: var(--blue);
      color: var(--white);
      padding: 20px 24px;
    }
    .strike-header h3 { color: var(--white); font-size: 1.1rem; margin-bottom: 6px; }
    .strike-price {
      font-size: 2.2rem;
      font-weight: 800;
      color: #aaccff;
      line-height: 1;
    }
    .strike-price-extra { font-size: .9rem; color: #8aaee8; margin-top: 4px; }
    .strike-body { padding: 24px; }
    .strike-body ul { padding-left: 20px; margin-bottom: 16px; }
    .strike-body li { font-size: .95rem; margin-bottom: 10px; }
    .strike-note { font-size: .88rem; color: var(--grey-mid); font-style: italic; }
    .pricing-grid .strike-card:last-child { grid-column: 1 / -1; width: calc(50% - 14px); justify-self: center; }
    .pricing-extra {
      margin-top: 28px;
      background: var(--blue-light);
      border-radius: 6px;
      padding: 20px 24px;
      font-size: .95rem;
    }
    .pricing-extra strong { color: var(--blue); }

    /* ── Why us ───────────────────────────────────────────────────────────── */
    .why-us { background: #fff; }
    .why-grid {
      display: grid;
      grid-template-columns: 1fr 420px;
      gap: 56px;
      align-items: start;
      margin-bottom: 40px;
    }
    .why-photo {
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 12px 40px rgba(0,0,0,.15);
      position: relative;
    }
    .why-photo img {
      width: 100%;
      height: 520px;
      object-fit: cover;
      object-position: center top;
      display: block;
    }
    .why-photo-caption {
      position: absolute;
      bottom: 0; left: 0; right: 0;
      background: linear-gradient(transparent, rgba(27,58,107,.85));
      color: var(--white);
      padding: 28px 20px 18px;
      font-size: .88rem;
    }
    .why-photo-caption strong { display: block; font-size: 1.05rem; margin-bottom: 4px; }
    .why-intro { margin-bottom: 28px; }
    .why-intro p { font-size: 1.05rem; color: #333; }
    .features-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
    }
    .feature-item {
      background: var(--white);
      border-radius: 6px;
      padding: 22px;
      border-left: 3px solid var(--blue);
    }
    .feature-item h3 { color: var(--blue); margin-bottom: 6px; }
    .feature-item p { font-size: .9rem; color: #444; margin: 0; }

    /* ── Hardship box ─────────────────────────────────────────────────────── */
    .hardship-box {
      background: var(--green-light);
      border: 1px solid #a0d4b4;
      border-left: 4px solid var(--green);
      border-radius: 6px;
      padding: 24px;
      margin-top: 36px;
    }
    .hardship-box h3 { color: var(--green); margin-bottom: 10px; }
    .hardship-box p { font-size: .95rem; margin: 0; }

    /* ── Reviews ──────────────────────────────────────────────────────────── */
    .reviews { background: #1e3a6e; padding: 64px 0; }
    .reviews h2 { color: #ffffff; font-size: clamp(1.4rem, 3vw, 2rem); margin-bottom: 8px; }
    .reviews-sub { color: #8aaee8; margin-bottom: 36px; font-size: .95rem; }
    .reviews-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      margin-bottom: 32px;
    }
    .review-card {
      background: rgba(255,255,255,.07);
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 10px;
      padding: 28px 24px;
    }
    .review-stars { color: #f5c518; font-size: 1.2rem; margin-bottom: 14px; letter-spacing: 2px; }
    .review-text {
      color: #d0ddf5;
      font-size: .95rem;
      font-style: italic;
      line-height: 1.7;
      margin-bottom: 18px;
    }
    .review-author { color: #7ba0d4; font-size: .87rem; font-weight: 700; font-style: normal; }
    .review-author strong { color: #aaccff; }
    .reviews-cta { text-align: center; padding-top: 8px; }
    .reviews-cta a { color: #aaccff; font-size: .95rem; text-decoration: underline; }

    /* ── FAQ ──────────────────────────────────────────────────────────────── */
    .faq { background: var(--white); }
    .faq-intro { max-width: 100%; margin-bottom: 32px; }
    .faq-list {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0 40px;
      max-width: 100%;
    }
    details {
      border-bottom: 1px solid #dde4f0;
    }
    details:first-of-type { border-top: 1px solid #dde4f0; }
    summary {
      padding: 18px 4px;
      cursor: pointer;
      font-weight: 700;
      color: var(--blue);
      font-size: 1rem;
      list-style: none;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
    }
    summary::-webkit-details-marker { display: none; }
    summary::after {
      content: '+';
      font-size: 1.3rem;
      font-weight: 300;
      color: var(--blue-mid);
      flex-shrink: 0;
      transition: transform .2s;
    }
    details[open] summary::after { transform: rotate(45deg); }
    .faq-answer {
      padding: 0 4px 20px;
      color: #333;
      font-size: .97rem;
      line-height: 1.7;
    }

    /* ── Photo band ───────────────────────────────────────────────────────── */
    .photo-band {
      background: linear-gradient(135deg, #0f2444 0%, var(--blue-mid) 100%);
      padding: 40px 0;
      display: flex;
      align-items: center;
    }
    .photo-band-content {
      padding: 0 20px;
      max-width: 1100px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 20px;
      width: 100%;
    }
    .photo-band-content h2 { color: var(--white); font-size: 1.6rem; margin-bottom: 6px; }
    .photo-band-content p { color: #ccd8f0; font-size: 1rem; margin: 0; }

    /* ── Coverage ─────────────────────────────────────────────────────────── */
    .coverage { background: var(--grey); }
    .coverage-areas {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-top: 28px;
    }
    .coverage-area {
      background: var(--white);
      border-radius: 6px;
      padding: 18px;
      border-top: 3px solid var(--blue);
    }
    .coverage-area h3 { font-size: .95rem; color: var(--blue); margin-bottom: 8px; }
    .coverage-area p { font-size: .85rem; color: #555; margin: 0; line-height: 1.55; }

    /* ── Final CTA ────────────────────────────────────────────────────────── */
    .final-cta { background: var(--blue-pale); padding: 72px 0; text-align: center; }
    .final-cta h2 { color: var(--blue); font-size: clamp(1.4rem, 3vw, 2.2rem); margin-bottom: 16px; }
    .final-cta p { color: #333; max-width: 620px; margin: 0 auto 32px; font-size: 1.05rem; }
    .cta-bar {
      display: flex;
      justify-content: center;
      gap: 20px;
      flex-wrap: wrap;
      margin-bottom: 40px;
    }
    .cta-block {
      background: var(--white);
      border: 1px solid #c5d4ec;
      border-radius: 8px;
      padding: 20px 28px;
      min-width: 220px;
      text-align: center;
      box-shadow: 0 2px 8px rgba(27,58,107,.08);
    }
    .cta-block .cta-label { color: var(--grey-mid); font-size: .85rem; margin-bottom: 6px; }
    .cta-block .cta-value { color: var(--blue); font-size: 1.1rem; font-weight: 700; }
    .cta-block .cta-sub { color: #555; font-size: .8rem; margin-top: 4px; }
    .callback-form {
      background: var(--white);
      border-radius: 10px;
      padding: 36px;
      max-width: 560px;
      margin: 0 auto;
      text-align: left;
    }
    .callback-form h3 { color: var(--blue); margin-bottom: 6px; }
    .callback-form > p { font-size: .9rem; color: var(--grey-mid); margin-bottom: 20px; }
    .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

    /* ── Footer ───────────────────────────────────────────────────────────── */
    .site-footer { background: #0f2444; color: #8aaee8; padding: 48px 0 24px; }
    .footer-grid {
      display: grid;
      grid-template-columns: 2fr 1fr 1fr 1fr;
      gap: 40px;
      margin-bottom: 40px;
    }
    .footer-brand { color: var(--white); font-size: 1.2rem; font-weight: 800; margin-bottom: 12px; }
    .footer-brand span { color: #aaccff; }
    .footer-about { font-size: .88rem; line-height: 1.6; margin-bottom: 16px; }
    .footer-contact a { color: #aaccff; text-decoration: none; display: block; font-size: .9rem; margin-bottom: 4px; }
    .footer-col h4 { color: var(--white); font-size: .95rem; margin-bottom: 14px; }
    .footer-col ul { list-style: none; padding: 0; }
    .footer-col li { margin-bottom: 8px; }
    .footer-col a { color: #8aaee8; text-decoration: none; font-size: .88rem; }
    .footer-col a:hover { color: var(--white); }
    .footer-bottom {
      border-top: 1px solid rgba(255,255,255,.08);
      padding-top: 20px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
      font-size: .82rem;
    }
    .footer-legal { display: flex; gap: 16px; flex-wrap: wrap; }
    .footer-legal a { color: #6688aa; text-decoration: none; }
    .footer-legal a:hover { color: var(--white); }

    /* ── Responsive ───────────────────────────────────────────────────────── */
    @media (max-width: 900px) {
      .hero-grid { grid-template-columns: 1fr; }
      .hero-card { display: none; }
      .comparison-grid { grid-template-columns: 1fr; }
      .law-alert-inner { grid-template-columns: 1fr; }
      .law-alert-image { display: none; }
      .consultation-grid { grid-template-columns: 1fr; gap: 30px; }
      .why-grid { grid-template-columns: 1fr; }
      .why-photo { display: none; }
      .services-grid { grid-template-columns: 1fr 1fr; }
      .services-grid > .service-card:last-child { grid-column: auto; }
      .pricing-grid { grid-template-columns: 1fr; }
      .pricing-grid .strike-card:last-child { grid-column: auto; width: auto; justify-self: stretch; }
      .features-grid { grid-template-columns: 1fr 1fr; }
      .reviews-grid { grid-template-columns: 1fr; }
      .coverage-areas { grid-template-columns: 1fr 1fr; }
      .footer-grid { grid-template-columns: 1fr 1fr; }
      nav { display: none; }
      .nav-toggle { display: block; }
      .photo-band { height: 240px; }
      .photo-band-content { padding: 0 20px; }
      .photo-band-content h2 { font-size: 1.4rem; }
    }
    @media (max-width: 600px) {
      section { padding: 44px 0; }
      .services-grid { grid-template-columns: 1fr; }
      .features-grid { grid-template-columns: 1fr; }
      .coverage-areas { grid-template-columns: 1fr; }
      .footer-grid { grid-template-columns: 1fr; }
      .trust-bar-inner { flex-direction: column; }
      .trust-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,.1); }
      .form-row { grid-template-columns: 1fr; }
      .faq-list { grid-template-columns: 1fr; }
      .cta-bar { flex-direction: column; align-items: center; }
      .hero-actions { flex-direction: column; }
      .btn-lg { width: 100%; text-align: center; }
    }
  
.inner-page main{
  --navy:#1b3a6b;--navy-2:#2c5282;--deep:#0f2444;--pale:#f0f4fb;--light:#e8eef7;
  --accent:#aaccff;--green:#1a6b3a;--green-pale:#e8f7ee;--red:#8b1a1a;--amber:#7a5c00;
  --ink:#1a1a1a;--muted:#536174;--white:#fff;--line:#dbe4f1;--radius:14px;
  --shadow:0 14px 38px rgba(15,36,68,.10);--max:1180px;--header:82px
}.inner-page main *{box-sizing:border-box}.inner-page main html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 18px)}.inner-page main body{margin:0;color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:17px;line-height:1.65;background:#fff}.inner-page main body.menu-open{overflow:hidden}.inner-page main img{display:block;max-width:100%;height:auto}.inner-page main a{color:var(--navy);text-underline-offset:3px}.inner-page main a:hover{color:var(--navy-2)}.inner-page main button,.inner-page main input,.inner-page main textarea,.inner-page main select{font:inherit}.inner-page main button{cursor:pointer}.inner-page main :focus-visible{outline:3px solid #f5c518;outline-offset:3px}.inner-page main .skip-link{position:absolute;left:12px;top:-80px;background:#fff;color:var(--deep);padding:12px 16px;z-index:9999;border-radius:8px}.inner-page main .skip-link:focus{top:12px}.inner-page main .container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.inner-page main .narrow{width:min(calc(100% - 40px),780px);margin-inline:auto}.inner-page main .section{padding:76px 0}.inner-page main .section-sm{padding:50px 0}.inner-page main .section-pale{background:var(--pale)}.inner-page main .section-deep{background:var(--deep);color:#fff}.inner-page main .eyebrow{margin:0 0 10px;color:var(--navy-2);font-size:.82rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.inner-page main .section-deep .eyebrow,.inner-page main .hero .eyebrow{color:var(--accent)}.inner-page main h1,.inner-page main h2,.inner-page main h3{line-height:1.15;margin:0 0 .65em;color:var(--deep);font-weight:620;letter-spacing:0}.inner-page main h1{font-size:clamp(2.35rem,5vw,4.15rem)}.inner-page main h2{font-size:clamp(1.9rem,3.4vw,2.75rem)}.inner-page main h3{font-size:1.32rem}.inner-page main .section-deep h2,.inner-page main .section-deep h3,.inner-page main .hero h1{color:#fff}.inner-page main p{margin:0 0 1.05em}.inner-page main .lede{font-size:1.17rem;color:#3f4f64;max-width:68ch}.inner-page main .section-deep .lede,.inner-page main .hero .lede{color:#d7e3f5}.inner-page main .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 21px;border:2px solid transparent;border-radius:10px;text-decoration:none;font-weight:640;line-height:1.2;transition:background .18s,border-color .18s,color .18s,transform .18s}.inner-page main .btn:hover{transform:translateY(-2px)}.inner-page main .btn-primary{background:var(--navy);color:#fff}.inner-page main .btn-primary:hover{background:var(--deep);color:#fff}.inner-page main .btn-light{background:#fff;color:var(--deep)}.inner-page main .btn-light:hover{background:var(--light);color:var(--deep)}.inner-page main .btn-outline{border-color:currentColor;color:var(--navy);background:transparent}.inner-page main .section-deep .btn-outline,.inner-page main .hero .btn-outline{color:#fff}.inner-page main .text-link{display:inline-flex;min-height:44px;align-items:center;font-weight:600}.inner-page main .actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.inner-page main .site-header{position:sticky;top:0;z-index:1000;background:rgba(15,36,68,.98);color:#fff;box-shadow:0 2px 18px rgba(0,0,0,.14)}.inner-page main .header-inner{min-height:var(--header);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px}.inner-page main .brand{justify-self:start;display:flex;align-items:center;min-height:54px;text-decoration:none}.inner-page main .brand img{width:166px;height:54px;object-fit:contain;background:#fff;border-radius:8px;padding:5px}.inner-page main .desktop-nav{justify-self:center}.inner-page main .nav-list{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}.inner-page main .nav-item{position:relative}.inner-page main .nav-link,.inner-page main .nav-trigger{display:flex;align-items:center;min-height:46px;padding:8px 11px;border:0;background:transparent;color:#e7eef9;text-decoration:none;font-size:.94rem;font-weight:560;border-radius:7px;white-space:nowrap}.inner-page main .nav-link:hover,.inner-page main .nav-trigger:hover,.inner-page main .nav-link[aria-current="page"]{background:rgba(255,255,255,.12);color:#fff}.inner-page main .nav-link[aria-current="page"]{box-shadow:inset 0 -3px var(--accent)}.inner-page main .chev{width:15px;height:15px;margin-left:6px;transition:transform .18s}.inner-page main .nav-trigger[aria-expanded="true"] .chev{transform:rotate(180deg)}.inner-page main .dropdown{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:290px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);list-style:none;margin:0;color:var(--ink)}.inner-page main .nav-item:hover .dropdown,.inner-page main .nav-item:focus-within .dropdown,.inner-page main .nav-trigger[aria-expanded="true"]+.dropdown{display:block}.inner-page main .dropdown a{display:flex;align-items:center;min-height:44px;padding:8px 10px;border-radius:7px;text-decoration:none;font-size:.92rem}.inner-page main .dropdown a:hover{background:var(--pale)}.inner-page main .header-actions{justify-self:end;display:flex;align-items:center;gap:10px}.inner-page main .header-phone{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:none;font-weight:600}.inner-page main .header-phone:hover{color:var(--accent)}.inner-page main .menu-toggle{display:none;width:48px;height:48px;border:1px solid rgba(255,255,255,.4);border-radius:9px;color:#fff;background:transparent;align-items:center;justify-content:center}.inner-page main .menu-toggle svg{width:24px;height:24px}.inner-page main .mobile-panel{display:none;background:var(--deep);border-top:1px solid rgba(255,255,255,.14);padding:12px 20px 22px;max-height:calc(100svh - var(--header));overflow:auto}.inner-page main .mobile-panel.open{display:block}.inner-page main .mobile-panel a,.inner-page main .mobile-panel button{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:9px 8px;color:#fff;background:none;border:0;text-decoration:none;text-align:left}.inner-page main .mobile-sub{display:none;padding-left:14px}.inner-page main .mobile-sub.open{display:block}.inner-page main .mobile-sub a{color:#d7e3f5;font-size:.94rem}.inner-page main .hero{background:linear-gradient(110deg,rgba(15,36,68,.98) 0%,rgba(27,58,107,.94) 56%,rgba(15,36,68,.66) 100%),url("../images/houses.webp") center/cover no-repeat;color:#fff;min-height:min(650px,calc(100svh - var(--header) - 10px));display:flex;align-items:center}.inner-page main .hero-grid{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(310px,.87fr);gap:52px;align-items:center;padding:52px 0}.inner-page main .hero h1{max-width:13ch}.inner-page main .hero-copy p{max-width:62ch}.inner-page main .hero-card{background:rgba(255,255,255,.97);color:var(--ink);padding:28px;border-radius:var(--radius);box-shadow:0 20px 60px rgba(0,0,0,.25)}.inner-page main .hero-card h2{font-size:1.55rem}.inner-page main .hero-checks{list-style:none;margin:20px 0;padding:0}.inner-page main .hero-checks li{position:relative;padding:8px 0 8px 30px}.inner-page main .hero-checks li:before{content:"✓";position:absolute;left:0;top:7px;color:var(--green);font-weight:700}.inner-page main .trust-strip{background:#fff;border-bottom:1px solid var(--line)}.inner-page main .trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.inner-page main .trust-item{background:#fff;padding:22px 18px;text-align:center}.inner-page main .trust-item strong{display:block;color:var(--navy);font-size:1.05rem}.inner-page main .trust-item span{font-size:.86rem;color:var(--muted)}.inner-page main .internal-hero{background:linear-gradient(125deg,var(--deep),var(--navy-2));color:#fff;padding:42px 0 48px}.inner-page main .internal-hero h1{font-size:clamp(2.1rem,4.4vw,3.5rem);max-width:20ch}.inner-page main .internal-hero .lede{max-width:66ch}.inner-page main .jurisdiction{display:inline-flex;align-items:center;min-height:34px;padding:5px 10px;margin-bottom:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#fff;font-size:.84rem;font-weight:600}.inner-page main .breadcrumb{font-size:.88rem;background:#fff;border-bottom:1px solid var(--line)}.inner-page main .breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:12px 0;margin:0}.inner-page main .breadcrumb li+li:before{content:"/";margin-right:8px;color:#8b98a9}.inner-page main .breadcrumb a{display:inline-flex;min-height:44px;align-items:center}.inner-page main .grid{display:grid;gap:24px}.inner-page main .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.inner-page main .grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.inner-page main .grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.inner-page main .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:0 8px 25px rgba(15,36,68,.06)}.inner-page main .card h3{margin-bottom:.5em}.inner-page main .card p:last-child{margin-bottom:0}.inner-page main .card-icon{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:var(--light);color:var(--navy);font-size:1.2rem;font-weight:700;margin-bottom:18px}.inner-page main .card .text-link{margin-top:8px}.inner-page main .image-card{overflow:hidden;padding:0}.inner-page main .image-card img{width:100%;aspect-ratio:16/10;object-fit:cover}.inner-page main .image-card-body{padding:24px}.inner-page main .split{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.82fr);gap:50px;align-items:center}.inner-page main .split img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.inner-page main .answer-box{border-left:5px solid var(--navy);background:var(--pale);padding:22px 24px;border-radius:0 12px 12px 0;margin:0 0 28px}.inner-page main .answer-box strong{display:block;color:var(--navy);margin-bottom:6px}.inner-page main .source-box{background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:18px 20px;font-size:.9rem;color:#46566b}.inner-page main .source-box a{overflow-wrap:anywhere}.inner-page main .process{counter-reset:step}.inner-page main .process-step{position:relative;padding:0 0 32px 74px}.inner-page main .process-step:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:650}.inner-page main .process-step:not(:last-child):after{content:"";position:absolute;left:24px;top:55px;bottom:5px;width:2px;background:var(--line)}.inner-page main .pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:900px;margin:30px auto 0}.inner-page main .price-card{background:#fff;border:2px solid var(--line);border-radius:16px;padding:30px;position:relative}.inner-page main .price-card.featured{border-color:var(--navy);box-shadow:var(--shadow)}.inner-page main .price-label{font-weight:650;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.inner-page main .price{font-size:2.4rem;line-height:1.1;color:var(--deep);font-weight:650;margin:9px 0}.inner-page main .price-note{color:var(--muted);font-size:.92rem}.inner-page main .check-list{padding:0;list-style:none}.inner-page main .check-list li{position:relative;padding:8px 0 8px 30px}.inner-page main .check-list li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:700}.inner-page main .warning-list li:before{content:"!";color:var(--amber)}.inner-page main .article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;align-items:start}.inner-page main .prose{max-width:74ch}.inner-page main .prose h2{margin-top:1.55em}.inner-page main .prose h3{margin-top:1.35em}.inner-page main .prose ul,.inner-page main .prose ol{padding-left:1.25em}.inner-page main .prose li{margin-bottom:.45em}.inner-page main .article-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;margin-bottom:24px}.inner-page main .toc{position:sticky;top:calc(var(--header) + 20px);background:var(--pale);border:1px solid var(--line);border-radius:12px;padding:20px}.inner-page main .toc strong{display:block;color:var(--deep);margin-bottom:8px}.inner-page main .toc a{display:flex;min-height:40px;align-items:center;font-size:.88rem;text-decoration:none;border-bottom:1px solid var(--line)}.inner-page main .faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.inner-page main .faq-grid details{border:1px solid var(--line);border-radius:12px;background:#fff;padding:4px 18px}.inner-page main .faq-grid summary{display:flex;align-items:center;min-height:56px;font-weight:620;color:var(--deep);cursor:pointer}.inner-page main .faq-grid p{padding:0 0 16px;margin:0;color:#415066}.inner-page main .map-card{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--pale)}.inner-page main .map-panel{min-height:330px;display:grid;place-items:center;padding:28px;text-align:center;background:linear-gradient(135deg,#dfe8f5,#f4f7fb)}.inner-page main .map-panel a{margin-top:10px}.inner-page main .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:36px;align-items:start}.inner-page main .contact-list{list-style:none;padding:0}.inner-page main .contact-list a{display:flex;min-height:48px;align-items:center;overflow-wrap:anywhere}.inner-page main .form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.inner-page main .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.inner-page main .field{margin-bottom:16px}.inner-page main .field label{display:block;font-weight:600;margin-bottom:6px}.inner-page main .field input,.inner-page main .field textarea,.inner-page main .field select{width:100%;border:1px solid #aebbd0;border-radius:9px;padding:12px;background:#fff}.inner-page main .field textarea{min-height:150px;resize:vertical}.inner-page main .field-hp{position:absolute;left:-10000px}.inner-page main .form-note{font-size:.85rem;color:var(--muted)}.inner-page main .legal-notice{background:#fff8e1;border:1px solid #e1cf8a;border-radius:10px;padding:16px 18px;color:#554500}.inner-page main .site-footer{background:var(--deep);color:#c4d2e7;padding:56px 0 24px}.inner-page main .footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:34px}.inner-page main .footer-logo{width:170px;height:56px;object-fit:contain;background:#fff;border-radius:8px;padding:5px;margin-bottom:16px}.inner-page main .footer-col h2{font-size:1rem;color:#fff;margin-bottom:12px}.inner-page main .footer-col a{display:flex;align-items:center;min-height:42px;color:#c4d2e7;text-decoration:none;font-size:.9rem}.inner-page main .footer-col a:hover{color:#fff}.inner-page main .footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;border-top:1px solid rgba(255,255,255,.14);margin-top:35px;padding-top:18px;font-size:.82rem}.inner-page main .footer-legal a{color:#c4d2e7;min-height:44px;display:inline-flex;align-items:center}.inner-page main .footer-legal p{margin:0 auto 0 0}.inner-page main .cookie-bar{position:fixed;z-index:1500;left:16px;right:16px;bottom:16px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 60px rgba(0,0,0,.22);border-radius:12px;padding:15px 18px;display:none;align-items:center;gap:18px}.inner-page main .cookie-bar.show{display:flex}.inner-page main .cookie-bar p{font-size:.86rem;margin:0;flex:1}.inner-page main .cookie-actions{display:flex;gap:8px;flex-wrap:wrap}.inner-page main .cookie-actions button{min-height:44px;padding:8px 14px;border-radius:8px;font-weight:600}.inner-page main .cookie-reject{background:#fff;border:1px solid var(--navy);color:var(--navy)}.inner-page main .cookie-accept{background:var(--navy);border:1px solid var(--navy);color:#fff}.inner-page main .back-top{position:fixed;right:18px;bottom:18px;width:48px;height:48px;border:0;border-radius:50%;background:var(--navy);color:#fff;box-shadow:var(--shadow);display:none;align-items:center;justify-content:center;z-index:900}.inner-page main .back-top.show{display:flex}.inner-page main .cookie-bar.show~.back-top{bottom:105px}.inner-page main .tag{display:inline-flex;align-items:center;min-height:32px;padding:4px 10px;border-radius:999px;background:var(--light);color:var(--navy);font-size:.8rem;font-weight:600}.inner-page main .center{text-align:center}.inner-page main .center .lede{margin-inline:auto}.inner-page main .muted{color:var(--muted)}.inner-page main .mt-0{margin-top:0}.inner-page main .mb-0{margin-bottom:0}@media(max-width:1080px){.inner-page main .desktop-nav,.inner-page main .header-actions .btn{display:none}.inner-page main .header-inner{grid-template-columns:1fr auto}.inner-page main .header-actions{display:flex}.inner-page main .menu-toggle{display:inline-flex}.inner-page main .hero-grid{grid-template-columns:1fr .78fr;gap:28px}.inner-page main .grid-4{grid-template-columns:repeat(2,1fr)}.inner-page main .footer-grid{grid-template-columns:1.3fr repeat(2,1fr)}}@media(max-width:820px){.inner-page main{--header:72px}.inner-page main .container,.inner-page main .narrow{width:min(calc(100% - 28px),var(--max))}.inner-page main .section{padding:56px 0}.inner-page main .hero{min-height:auto}.inner-page main .hero-grid{grid-template-columns:1fr;padding:42px 0}.inner-page main .hero-card{padding:23px}.inner-page main .hero h1{max-width:15ch}.inner-page main .trust-grid{grid-template-columns:repeat(2,1fr)}.inner-page main .split,.inner-page main .contact-grid,.inner-page main .article-layout{grid-template-columns:1fr}.inner-page main .split img{order:-1}.inner-page main .toc{position:static}.inner-page main .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.inner-page main .footer-grid{grid-template-columns:repeat(2,1fr)}.inner-page main .footer-grid>:first-child{grid-column:1/-1}.inner-page main .form-row{grid-template-columns:1fr}}@media(max-width:620px){.inner-page main body{font-size:16px}.inner-page main .brand img{width:145px;height:48px}.inner-page main .header-phone{font-size:0;width:44px;justify-content:center}.inner-page main .header-phone:before{content:"Call";font-size:.78rem}.inner-page main .header-inner{gap:8px}.inner-page main .hero-grid{padding:34px 0}.inner-page main .hero h1{font-size:2.35rem}.inner-page main .internal-hero{padding:32px 0 38px}.inner-page main .internal-hero h1{font-size:2.15rem}.inner-page main .grid-2,.inner-page main .grid-3,.inner-page main .grid-4,.inner-page main .pricing-grid,.inner-page main .faq-grid{grid-template-columns:1fr}.inner-page main .trust-grid{grid-template-columns:1fr 1fr}.inner-page main .card,.inner-page main .form-card{padding:21px}.inner-page main .footer-grid{grid-template-columns:1fr}.inner-page main .footer-grid>:first-child{grid-column:auto}.inner-page main .footer-legal{display:block}.inner-page main .footer-legal a{margin-right:14px}.inner-page main .actions .btn{width:100%}.inner-page main .cookie-bar{left:8px;right:8px;bottom:8px;display:none;align-items:stretch;flex-direction:column}.inner-page main .cookie-actions{display:grid;grid-template-columns:1fr 1fr}.inner-page main .back-top{right:12px;bottom:12px}.inner-page main .cookie-bar.show~.back-top{bottom:170px}}@media(prefers-reduced-motion:reduce){.inner-page main html{scroll-behavior:auto}.inner-page main *,.inner-page main *:before,.inner-page main *:after{transition:none!important;animation:none!important}}

/* Shared shell and interior layouts extend the approved homepage. */
:root{--navy:#1b3a6b;--deep:#102848;--pale:#f0f4fb;--accent:#aaccff}
html{scroll-padding-top:100px}body{overflow-wrap:break-word}
.skip-link{position:absolute;left:12px;top:-90px;padding:12px 20px;background:white;z-index:9999}.skip-link:focus{top:12px}
:focus-visible{outline:3px solid #d69a00;outline-offset:4px}
.site-logo img{object-fit:contain!important;width:48px!important;height:48px!important;max-width:48px}
.site-header .header-inner{display:flex;gap:22px;max-width:1400px}
.site-header nav{gap:14px}
.nav-group{position:relative;border:0;margin:0;padding:0}
.nav-group summary{list-style:none;cursor:pointer;color:#fff;font-size:.92rem;white-space:nowrap;padding:12px 0}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group summary:after{content:"⌄";margin-left:6px}
.nav-panel{position:absolute;top:100%;left:-18px;width:275px;max-height:75vh;overflow-y:auto;background:#fff;border:1px solid #d8e1ed;border-radius:8px;padding:10px;box-shadow:0 16px 35px #10284833;z-index:100}
.site-header nav .nav-panel a{display:block;color:#17355f;padding:10px;border-radius:5px;white-space:normal}
.site-header nav .nav-panel a:hover{background:#edf3fa}
.site-header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.top-bar a{display:inline-block;margin-inline:7px}
.footer-utilities{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;padding:24px;border-top:1px solid #ffffff20}
.footer-utilities a,.footer-utilities button{color:#cad9ee;font:inherit;font-size:.85rem}
.footer-utilities button{background:none;border:0;cursor:pointer}
.inner-page main .breadcrumb{background:#f5f7fb;border-bottom:1px solid #e3e8f0;padding:14px 0;font-size:.82rem}
.inner-page main .breadcrumb ol{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0}
.inner-page main .breadcrumb li+li:before{content:"/";margin-right:9px;color:#8c9db2}
.inner-page main .internal-hero{position:relative;background:linear-gradient(95deg,#142f57 0%,#1b3a6bf2 50%,#173c6cc4 100%),url('../images/houses.webp') center 57%/cover;padding:78px 0 84px;color:#fff}
.inner-page main .internal-hero .container{position:relative;max-width:1180px}
.inner-page main .internal-hero h1{color:#fff;max-width:19ch;font-size:clamp(2.25rem,4.6vw,3.8rem);letter-spacing:-.035em;line-height:1.1;margin:14px 0 24px}
.inner-page main .internal-hero .lede{color:#d4e3f8;max-width:64ch;font-size:1.2rem;line-height:1.7}
.inner-page main .internal-hero .eyebrow{color:#b4cbea;letter-spacing:.14em}
.inner-page main .jurisdiction{display:inline-block;border:1px solid #9cbee755;padding:6px 12px;border-radius:4px;font-size:.8rem;background:#fff1;color:#d7e6fa}
.inner-page main .internal-hero .actions{margin-top:28px}
.inner-page main .internal-hero .btn-light{background:#fff;color:#1b3a6b}
.inner-page main .internal-hero .btn-outline{color:#d9e8ff;border-color:#b4ceef}
.inner-page main .container{max-width:1180px}
.inner-page main .section{padding:66px 0}
.inner-page main h2{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.2;letter-spacing:-.025em}
.inner-page main h3{line-height:1.35}
.inner-page main p{max-width:76ch}
.inner-page main .grid{gap:25px}
.inner-page main .card{border:1px solid #dde5ef;border-radius:10px;padding:28px;background:#fff;box-shadow:0 8px 25px #1b3a6b08}
.inner-page main .card a{min-height:44px}
.inner-page main .card h3{margin-bottom:15px}
.inner-page main .section-deep .card{background:#fff;color:#24364d}
.inner-page main .section-deep .card h3{color:#17355f}
.inner-page main .answer-box{border-left:4px solid #1b3a6b;background:#edf3fb;padding:25px;border-radius:0 10px 10px 0;margin-bottom:28px}
.inner-page main .split{gap:48px;align-items:center}
.inner-page main .split>img{width:100%;max-height:470px;object-fit:cover;border-radius:10px;box-shadow:18px 18px 0 #e6edf7}
.inner-page main .faq-grid details{border:1px solid #dce4ef;box-shadow:none;background:#fff;border-radius:8px;padding:22px}
.inner-page main .faq-grid summary{font-weight:700;color:#18375e;cursor:pointer;line-height:1.5}
.inner-page main .faq-grid p{padding-top:15px;margin-bottom:0}
.inner-page main .toc{align-self:start;border:1px solid #dbe5f0;background:#f3f7fc;border-radius:9px;padding:24px;position:sticky;top:110px}
.inner-page main .toc a{line-height:1.5;padding:10px 0}
.inner-page main .prose>section{padding:20px 0}
.inner-page main .prose{max-width:780px}
.inner-page main .article-meta{font-size:.8rem;color:#657286;border-bottom:1px solid #e1e8f1;padding-bottom:22px;margin-bottom:26px}
.inner-page main .source-box{background:#edf3fa;border-radius:8px;padding:25px}
.inner-page main .source-box a{overflow-wrap:anywhere}
.inner-page main .check-list{padding-left:22px}
.inner-page main .check-list li{margin-bottom:12px}
.inner-page main .map-consent{background:linear-gradient(130deg,#e6edf3,#f7fafc);border:1px solid #d5dfea;min-height:300px;padding:35px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;border-radius:10px}
.inner-page main .map-card iframe{width:100%;border:0;border-radius:10px}
.inner-page main .form-card,.inner-page main .contact-grid form{border:1px solid #d9e3ef;box-shadow:0 12px 35px #17376012;border-radius:12px;padding:32px;background:#fff}
.inner-page main .field{margin-bottom:18px}
.inner-page main input,.inner-page main textarea,.inner-page main select{max-width:100%;border:1px solid #a4b4ca;border-radius:5px;padding:12px}
.inner-page main textarea{min-height:140px}
.inner-page main input[type=checkbox]{width:auto}
.inner-page main .field-hp{position:absolute;left:-9999px}
form .email-note{font-size:.82rem;line-height:1.5;color:#52627b;margin-top:16px}
form .form-status{font-size:.88rem;line-height:1.6;color:#17355f;margin-top:12px}
.privacy-info{position:fixed;bottom:20px;left:20px;right:20px;max-width:650px;margin:auto;z-index:200;background:white;border:1px solid #c7d5e6;box-shadow:0 8px 40px #0003;padding:24px;border-radius:8px}
.privacy-info button{padding:10px 20px;background:#1b3a6b;color:white;border:0;border-radius:4px}
.back-to-top{position:fixed;bottom:22px;right:22px;width:44px;height:44px;border:1px solid #d3e0ed;background:#fff;color:#1b3a6b;border-radius:50%;box-shadow:0 3px 10px #0002;z-index:50;font-size:1.4rem;cursor:pointer}
@media(min-width:1101px){.site-header nav{display:flex!important;align-items:center}.site-header .nav-toggle{display:none}}
@media(max-width:1250px){.site-header .header-tag{display:none}.site-header .header-cta>.btn{display:none}.site-header .site-logo-subtext{font-size:.64rem}.site-header .header-inner{gap:16px}.site-header nav{gap:11px}}
@media(max-width:1100px){.site-header .header-inner{justify-content:space-between}.site-header nav{display:none}.site-header .nav-toggle{display:block}.site-header .header-cta{margin-left:auto}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:100%;left:0;right:0;background:#1b3a6b;padding:18px 25px;max-height:75vh;overflow:auto;gap:5px}.site-header nav.is-open>a{padding:12px 0}.nav-panel{position:static;width:100%;box-shadow:none;max-height:none}.inner-page main .article-layout{grid-template-columns:minmax(0,1fr)}.inner-page main .toc{position:static;order:-1}}
@media(max-width:700px){.site-header .header-inner{gap:10px}.site-header .header-phone{font-size:.85rem}.site-header .site-logo-text{font-size:1rem}.site-header .site-logo-subtext{display:none}.site-logo img{width:34px!important;height:34px!important;max-width:34px}.top-bar{font-size:.7rem;line-height:1.6;padding:9px}.inner-page main .internal-hero{padding:48px 0}.inner-page main .internal-hero h1{max-width:none}.inner-page main .split,.inner-page main .grid-2,.inner-page main .grid-3,.inner-page main .contact-grid{grid-template-columns:minmax(0,1fr)}.inner-page main .section{padding:42px 0}.inner-page main .split>img{box-shadow:none}.inner-page main .form-row{grid-template-columns:1fr}.inner-page main .actions{align-items:stretch}.inner-page main .actions .btn{width:100%}.inner-page main .container{width:calc(100% - 36px)}.footer-utilities{gap:14px}.back-to-top{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.home-page .reviews h2{color:var(--blue)} 

.site-footer .footer-logo{display:inline-block;margin-bottom:16px}.site-footer .footer-logo img{display:block;width:80px;height:80px;object-fit:contain;background:#fff;border-radius:50%;padding:6px}

/* September guides reuse the established article layout and brand. */
.inner-page main .guide-hero h1{font-size:clamp(2rem,3.2vw,3rem);max-width:30ch;line-height:1.15}
.inner-page main .guide-hero .lede{max-width:68ch}
.inner-page main .guide-topics{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.inner-page main .guide-topics a{display:flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid currentColor;border-radius:6px;color:inherit;text-decoration:none}
.inner-page main .guide-topics a:hover,.inner-page main .guide-topics a:focus-visible{background:#ffffff22;text-decoration:underline}
.guide-page main h2[id],.guide-page main section[id],.guide-page main #direct-answer{scroll-margin-top:150px}
.guide-page main .source-box h2{font-size:1.2rem;margin-top:0}
.guide-page main .toc{max-height:calc(100vh - 160px);overflow-y:auto}
@media(max-width:820px){.guide-page main .toc{max-height:none;overflow:visible}.inner-page main .guide-hero{padding-top:36px;padding-bottom:36px}}
@media print{.guide-page .site-header,.guide-page .top-bar,.guide-page footer,.guide-page .back-to-top,.guide-page main .toc,.guide-page main .actions,.guide-page .privacy-info{display:none!important}.guide-page main .article-layout{display:block}.guide-page main .prose{max-width:none}.guide-page main .internal-hero,.guide-page main .section-deep{background:white!important;color:black!important}.guide-page main .section{padding:16px 0}.guide-page main details{break-inside:avoid}.guide-page main a{color:black}}

/* Shared breadcrumb presentation */
.inner-page main .breadcrumb {
  background: #f5f7fb;
  border-block: 1px solid var(--line);
  color: #607087;
  font-size: .875rem;
}

.inner-page main .breadcrumb ol {
  align-items: center;
  gap: 6px;
  min-height: 48px;
  padding: 8px 0;
}

.inner-page main .breadcrumb li {
  align-items: center;
  display: inline-flex;
  min-width: 0;
}

.inner-page main .breadcrumb li + li::before {
  content: '›';
  color: #91a0b5;
  font-size: 1.1em;
  margin: 0 6px 0 2px;
}

.inner-page main .breadcrumb a {
  color: var(--navy);
  font-weight: 600;
  min-height: 32px;
  text-decoration: none;
  white-space: nowrap;
}

.inner-page main .breadcrumb a:hover {
  color: var(--navy-2);
  text-decoration: underline;
}

.inner-page main .breadcrumb li:last-child {
  color: #4e5e72;
  font-weight: 500;
  overflow-wrap: anywhere;
}

@media (max-width: 620px) {
  .inner-page main .breadcrumb ol {
    align-items: flex-start;
    gap: 4px 6px;
    min-height: 0;
    padding: 9px 0;
  }
}
/* Guide library cards */
.guide-library-hero + .section-sm .card,
#compliance .card,
#possession .card,
#rent-and-money .card,
#tenancy-management .card,
#letting-a-property .card,
#property-standards .card { overflow: hidden; padding: 0; }

.guide-card-image { display: block; aspect-ratio: 16 / 8; overflow: hidden; }
.guide-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.guide-card-image:hover img { transform: scale(1.03); }
.guide-card-image + .guide-card-content { padding: 24px; }

/* Guide-card layout correction: retain the site-wide card frame and spacing. */
.guide-library-hero + .section-sm .card,
#compliance .card,
#possession .card,
#rent-and-money .card,
#tenancy-management .card,
#letting-a-property .card,
#property-standards .card {
  overflow: visible;
  padding: 28px;
}

.guide-card-image {
  border-radius: 8px;
  margin-bottom: 22px;
}

.guide-card-image + .guide-card-content {
  padding: 0;
}

/* Keep reading copy consistently justified, without affecting navigation or CTAs. */
main :is(p, li) {
  hyphens: auto;
  text-align: justify;
  text-justify: inter-word;
}

main .center :is(p, li),
main .trust-item,
main .map-panel,
main .final-cta :is(p, li) {
  text-align: center;
}
