/*!
Theme Name: Kadence Child
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Kadence WP
Author URI: https://www.kadencewp.com/
Description: A child theme for the Kadence Theme.
Version: 1.0.0
License: GNU General Public License v3.0 (or later)
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: kadence-child
*/

/* Short-screen homepage hero adjustments. */

/* --- Tier A: every short screen ---------------------------------------- */
@media (max-width: 782px) and (max-height: 780px) {
  /* Hero: ~97px reclaimed from padding, margins and type scale. */
  .elementor-element-nmh0005 {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }

  .nm-home .nm-hero__pills {
    margin-bottom: 8px !important;
  }

  .nm-home .nm-hero__trust {
    margin-bottom: 8px !important;
  }

  .nm-home h1 {
    font-size: 28px !important;
    line-height: 1.08 !important;
    margin-bottom: 8px !important;
  }

  .nm-home .nm-hero__sub {
    font-size: 16px !important;
    line-height: 1.45 !important;
    margin-bottom: 10px !important;
  }

  .nm-home .nm-btn-row {
    gap: 6px !important;
  }
}

/* --- Tier B: 700px and shorter (iPhone SE, older Android) ---------------

   ------------------------------------------------------------------------ */
@media (max-width: 782px) and (max-height: 700px) {
  .nm-home .nm-hero__trust {
    display: none !important;
  }

  .nm-home .nm-hero__pills {
    font-size: 12px !important;
    margin-bottom: 6px !important;
  }

  .nm-home h1 {
    font-size: 26px !important;
    margin-bottom: 6px !important;
  }

  .nm-home .nm-hero__sub {
    margin-bottom: 8px !important;
  }
}

/* WPConsent modal: mobile-only spacing. Desktop keeps the native layout.
 * Full width, content-driven height, and an internally scrollable message
 * on short screens. Button colours and visibility remain in WPConsent.
 */
@media (max-width: 767px) {
  #wpconsent-container::part(wpconsent-banner) {
    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    flex-shrink: 0 !important;
    height: auto !important;
    max-height: calc(100vh - 32px) !important;
    max-height: calc(100dvh - 32px) !important;
    margin: 0 !important;
    padding: 32px 20px !important;
    padding-left: max(20px, env(safe-area-inset-left)) !important;
    padding-right: max(20px, env(safe-area-inset-right)) !important;
    border-radius: 0 !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    gap: 24px !important;
    --wpconsent-line-height: 1.5;
  }

  #wpconsent-container::part(wpconsent-banner-body) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  #wpconsent-container::part(wpconsent-banner-footer) {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    width: 100% !important;
  }

  #wpconsent-container::part(wpconsent-button-preferences),
  #wpconsent-container::part(wpconsent-button-cancel),
  #wpconsent-container::part(wpconsent-button-accept) {
    box-sizing: border-box !important;
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 12px 8px !important;
    font-family: inherit !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}


/* ==========================================================================
   Footer rebuild - 10 September 2026
   Five service columns in the top row, company/resources strip in the middle
   row, legal fine print in the bottom bar. Social icons removed.
   ========================================================================== */

.nm-foot-head{font-size:13px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:#ffc504;margin:0 0 14px;}
.nm-foot-links{margin:0;font-size:14px;line-height:1.85;}
.nm-foot-links a{display:block;text-decoration:none;}
.nm-foot-links a:hover{text-decoration:underline;}

.nm-foot-brand img{max-width:200px;height:auto;}
.nm-foot-tag{font-size:14px;line-height:1.6;margin:16px 0 20px;max-width:300px;}
.nm-foot-cta{display:inline-block;background:#ffc504;color:#012147 !important;font-weight:600;font-size:14px;line-height:1.2;padding:12px 18px;border-radius:6px;text-decoration:none !important;}
.nm-foot-cta:hover{background:#ffd54a;}
.nm-foot-rating{font-size:13px;margin:18px 0 0;}
.nm-foot-stars{color:#ffc504;letter-spacing:1px;}

.nm-foot-inline{font-size:14px;margin:0 0 16px;line-height:2;}
.nm-foot-inline a{color:#f7fafc;text-decoration:none;margin-right:22px;display:inline-block;}
.nm-foot-inline a:hover{text-decoration:underline;}
.nm-foot-note{font-size:13px;line-height:1.6;opacity:.75;max-width:860px;margin:0 0 18px;}
.nm-foot-pay{margin:0;text-align:center;}
.nm-foot-pay img{max-width:349px;height:auto;display:block;margin-left:auto;margin-right:auto;}

.nm-foot-bottom{font-size:13px;line-height:1.8;margin:0;opacity:.8;}
.nm-foot-bottom a{color:#b9c6d6;text-decoration:underline;}
.nm-foot-bottom a:hover{color:#fff;}
.nm-foot-bottom a:hover{text-decoration:underline;}

/* Five columns are too tight on tablets - drop to two. */
@media (min-width:768px) and (max-width:1024px){
  .site-top-footer-inner-wrap{grid-template-columns:repeat(2,1fr) !important;}
}


/* Trustpilot TrustBox and SocialJuice badge iframes.
   Kept in the stylesheet rather than an inline <style> because WP Rocket's
   Remove Unused CSS strips inline blocks from the optimised page, which brought
   back the browser default 2px inset iframe border. Added 21 September 2026. */
.trustpilot-widget iframe,
.nm-sj-hero iframe { border: 0 !important; display: block; }
