/* ============================================================
   FIT PLAYCE — GLOBAL SECTION STYLES
   PASTE THIS ONCE INTO:  Appearance → Customize → Additional CSS
   ------------------------------------------------------------
   Covers THREE sections:
     1. CTA Block #1 (after Pricing)   .fp-cta1-*
     2. Location + Maps                .fp-loc-*
     3. Homepage Form CTA              .fp-form-* / .wpcf7
   WHY HERE: CSS in the Customizer is stored separately from page
   content, so WordPress can NEVER strip it on save. This is the
   permanent fix for the "styles keep breaking" problem.
   Do NOT also paste <style> tags into the page — the HTML blocks
   now carry class names only.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

html { scroll-behavior: smooth; }


/* ============================================================
   1. CTA BLOCK #1  (after Pricing)
   ============================================================ */

.fp-cta1-section.wp-block-group {
  background: #f5c000 !important;
  padding: 88px 48px !important;
  box-sizing: border-box !important;
}

.fp-cta1-inner {
  max-width: 1160px !important;
  margin: 0 auto !important;
  display: flex !important;
  gap: 56px !important;
  align-items: flex-start !important;
}

.fp-cta1-label {
  flex: 0 0 26% !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  padding-top: 10px !important;
  line-height: 1.4 !important;
}

.fp-cta1-content {
  flex: 1 !important;
  min-width: 0 !important;
}

.fp-cta1-headline {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: clamp(30px, 3.8vw, 50px) !important;
  font-weight: 800 !important;
  color: #111111 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 20px !important;
}

.fp-cta1-sub {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 16px !important;
  color: #333333 !important;
  line-height: 1.65 !important;
  margin: 0 0 36px !important;
}

.fp-cta1-btns {
  display: flex !important;
  gap: 14px !important;
}

.fp-cta1-btn {
  flex: 1 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 15px 20px !important;
  min-height: 52px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
  box-sizing: border-box !important;
}
.fp-cta1-btn:active {
  transform: translateY(0) !important;
}

.fp-cta1-btn-primary {
  background: #111111 !important;
  color: #ffffff !important;
  border: 2px solid #111111 !important;
}
.fp-cta1-btn-primary:hover {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
}

.fp-cta1-btn-secondary {
  background: transparent !important;
  color: #111111 !important;
  border: 2px solid #111111 !important;
}
.fp-cta1-btn-secondary:hover {
  background: rgba(0,0,0,0.08) !important;
  color: #111111 !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
}

@media (max-width: 768px) {
  .fp-cta1-section.wp-block-group {
    padding: 56px 24px !important;
  }
  .fp-cta1-inner {
    flex-direction: column !important;
    gap: 20px !important;
  }
  .fp-cta1-label {
    flex: none !important;
    padding-top: 0 !important;
  }
  .fp-cta1-headline {
    font-size: clamp(28px, 7vw, 38px) !important;
  }
}

@media (max-width: 480px) {
  .fp-cta1-section.wp-block-group {
    padding: 48px 20px !important;
  }
  .fp-cta1-btns {
    flex-direction: column !important;
    gap: 12px !important;
  }
  .fp-cta1-btn {
    white-space: normal !important;
    flex: none !important;
    width: 100% !important;
  }
}


/* ============================================================
   2. LOCATION + GOOGLE MAPS
   ============================================================ */

.fp-loc-section.wp-block-group {
  background: #f5c000 !important;
  padding: 88px 48px !important;
  box-sizing: border-box !important;
}

.fp-loc-inner {
  max-width: 1160px !important;
  margin: 0 auto !important;
  display: flex !important;
  gap: 56px !important;
  align-items: flex-start !important;
}

.fp-loc-label {
  flex: 0 0 26% !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  padding-top: 12px !important;
  line-height: 1.4 !important;
}

.fp-loc-content {
  flex: 1 !important;
  min-width: 0 !important;
}

.fp-loc-headline {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: clamp(30px, 3.8vw, 48px) !important;
  font-weight: 800 !important;
  color: #111111 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 28px !important;
}

.fp-loc-address {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  color: #111111 !important;
  line-height: 1.7 !important;
  margin: 0 0 28px !important;
}

.fp-loc-info {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 28px !important;
  margin: 0 0 36px !important;
}

.fp-loc-info-item {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 16px !important;
  color: #111111 !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
}

.fp-loc-info-item a {
  color: #111111 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
.fp-loc-info-item a:hover {
  text-decoration: underline !important;
}

.fp-loc-map-wrap {
  width: 100% !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.16) !important;
  margin-bottom: 28px !important;
  line-height: 0 !important;
}

.fp-loc-map-wrap iframe {
  display: block !important;
  width: 100% !important;
  height: 400px !important;
  border: 0 !important;
  border-radius: 18px !important;
}

.fp-loc-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  background: #111111 !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 15px 32px !important;
  min-height: 52px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  border: 2px solid #111111 !important;
  cursor: pointer !important;
  transition: background 0.2s ease, transform 0.2s ease !important;
  box-sizing: border-box !important;
}
.fp-loc-btn:hover {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
}
.fp-loc-btn:active {
  transform: translateY(0) !important;
}

@media (max-width: 768px) {
  .fp-loc-section.wp-block-group {
    padding: 56px 24px !important;
  }
  .fp-loc-inner {
    flex-direction: column !important;
    gap: 20px !important;
  }
  .fp-loc-label {
    flex: none !important;
    padding-top: 0 !important;
  }
  .fp-loc-headline {
    font-size: clamp(28px, 7vw, 38px) !important;
  }
  .fp-loc-address {
    font-size: 16px !important;
  }
  .fp-loc-info {
    flex-direction: column !important;
    gap: 10px !important;
  }
  .fp-loc-info-item {
    white-space: normal !important;
  }
  .fp-loc-map-wrap iframe {
    height: 280px !important;
  }
  .fp-loc-btn {
    width: 100% !important;
  }
}

@media (max-width: 480px) {
  .fp-loc-section.wp-block-group {
    padding: 48px 20px !important;
  }
}


/* ============================================================
   3. HOMEPAGE FORM CTA  (Contact Form 7)
   ============================================================ */

.fp-form-section.wp-block-group {
  background: #ffffff !important;
  padding: 88px 48px !important;
  box-sizing: border-box !important;
}

.fp-form-cols.wp-block-columns {
  max-width: 1160px !important;
  margin: 0 auto !important;
  gap: 72px !important;
  align-items: flex-start !important;
}

.fp-form-heading.wp-block-heading {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: clamp(28px, 3.5vw, 44px) !important;
  font-weight: 800 !important;
  color: #111 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 20px !important;
}

.fp-form-subhead {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: #555 !important;
  margin: 0 0 40px !important;
}

.fp-wa-text {
  font-family: 'Segoe UI', system-ui, sans-serif;
  font-size: 15px;
  color: #666;
  line-height: 1.65;
  margin: 0;
}

.fp-wa-link {
  color: #c49a00 !important;
  text-decoration: none !important;
  font-weight: 600;
  white-space: nowrap;
}
.fp-wa-link:hover {
  color: #a07e00 !important;
  text-decoration: underline !important;
}

/* CF7 form */
.fp-form-right .wpcf7 {
  margin: 0 !important;
  padding: 0 !important;
}

.fp-form-right .wpcf7 label {
  display: block !important;
  margin-bottom: 18px !important;
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #333 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

.fp-form-right .wpcf7 input[type="text"],
.fp-form-right .wpcf7 input[type="email"],
.fp-form-right .wpcf7 input[type="tel"],
.fp-form-right .wpcf7 select,
.fp-form-right .wpcf7 textarea {
  display: block !important;
  width: 100% !important;
  min-height: 50px !important;
  margin-top: 7px !important;
  padding: 12px 16px !important;
  background: #f4f4f4 !important;
  border: 1.5px solid #e8e8e8 !important;
  border-radius: 8px !important;
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 15px !important;
  color: #111 !important;
  box-sizing: border-box !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color 0.2s !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.fp-form-right .wpcf7 input[type="text"]:focus,
.fp-form-right .wpcf7 input[type="email"]:focus,
.fp-form-right .wpcf7 input[type="tel"]:focus,
.fp-form-right .wpcf7 select:focus,
.fp-form-right .wpcf7 textarea:focus {
  border-color: #f5c000 !important;
  outline: none !important;
}

.fp-form-right .wpcf7 select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 12px !important;
  padding-right: 42px !important;
  cursor: pointer !important;
}

.fp-form-right .wpcf7 textarea {
  min-height: 110px !important;
  resize: vertical !important;
  line-height: 1.55 !important;
}

.fp-form-right .wpcf7-form-control-wrap {
  display: block !important;
  margin: 0 !important;
}

.fp-form-right .wpcf7-not-valid-tip {
  font-size: 12px !important;
  color: #e03030 !important;
  margin-top: 4px !important;
  display: block !important;
}

.fp-form-right .wpcf7-not-valid {
  border-color: #e03030 !important;
}

.fp-form-right .wpcf7 input[type="submit"] {
  display: block !important;
  width: 100% !important;
  background: #f5c000 !important;
  color: #111 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: 0.2px !important;
  padding: 16px 32px !important;
  min-height: 52px !important;
  border: none !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  margin-top: 8px !important;
  transition: background 0.2s, transform 0.1s !important;
  -webkit-appearance: none !important;
  -webkit-tap-highlight-color: transparent;
}
.fp-form-right .wpcf7 input[type="submit"]:hover {
  background: #d9aa00 !important;
  transform: translateY(-1px) !important;
}
.fp-form-right .wpcf7 input[type="submit"]:active {
  transform: translateY(0) !important;
}

.fp-form-right .wpcf7-response-output {
  background: rgba(245, 192, 0, 0.08) !important;
  border: 1px solid rgba(245, 192, 0, 0.4) !important;
  border-radius: 8px !important;
  padding: 16px 20px !important;
  color: #333 !important;
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin-top: 16px !important;
}

@media (max-width: 768px) {
  .fp-form-section.wp-block-group {
    padding: 60px 28px !important;
  }
  .fp-form-cols.wp-block-columns {
    flex-direction: column !important;
    gap: 44px !important;
  }
  .fp-form-cols .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
  }
}

@media (max-width: 480px) {
  .fp-form-section.wp-block-group {
    padding: 48px 18px !important;
  }
}

/* ============================================================
   FIT PLAYCE — CONTACT US PAGE STYLES
   PASTE THIS ONCE INTO:  Appearance → Customize → Additional CSS
   (Add it BELOW the existing 00-CUSTOMIZER-CSS block — don't
    replace that one; both can live together.)
   ------------------------------------------------------------
   WHY HERE: CSS in the Customizer is stored separately from page
   content, so WordPress can never strip it on save. The Contact
   page HTML carries class names only.
   All classes are prefixed .fp-c-  (c = contact) so nothing here
   collides with your homepage section styles.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');


/* ============================================================
   SECTION 1 — HERO
   ============================================================ */

.fp-c-hero {
  position: relative !important;
  width: 100% !important;
  min-height: 400px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  padding: 40px 24px !important;
}

.fp-c-hero img.fp-c-hero-bg {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  z-index: 0 !important;
}

/* Dark overlay */
.fp-c-hero::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.5) !important;
  z-index: 1 !important;
}

.fp-c-hero-inner {
  position: relative !important;
  z-index: 2 !important;
  text-align: center !important;
  max-width: 760px !important;
}

.fp-c-hero-label {
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #f5c000 !important;
  margin-bottom: 14px !important;
}

.fp-c-hero-title {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: clamp(36px, 6vw, 52px) !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  line-height: 1.1 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 16px !important;
}

.fp-c-hero-sub {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  color: #dddddd !important;
  line-height: 1.6 !important;
  margin: 0 auto !important;
  max-width: 620px !important;
}


/* ============================================================
   SECTION 2 — TWO COLUMN (FORM + INFO)
   ============================================================ */

.fp-c-main {
  background: #ffffff !important;
  padding: 80px 48px !important;
  box-sizing: border-box !important;
}

.fp-c-cols.wp-block-columns {
  max-width: 1160px !important;
  margin: 0 auto !important;
  gap: 64px !important;
  align-items: flex-start !important;
}

.fp-c-col-form.wp-block-column { min-width: 0 !important; }
.fp-c-col-info.wp-block-column { min-width: 0 !important; }

/* Shared small label */
.fp-c-label {
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  margin-bottom: 12px !important;
}

.fp-c-form-headline {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: clamp(26px, 3.4vw, 32px) !important;
  font-weight: 800 !important;
  color: #111111 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 14px !important;
}

.fp-c-form-intro {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 16px !important;
  color: #555555 !important;
  line-height: 1.65 !important;
  margin: 0 0 32px !important;
}

/* ── CF7 form on the contact page ── */
.fp-c-col-form .wpcf7 {
  margin: 0 !important;
  padding: 0 !important;
}

.fp-c-col-form .wpcf7 label {
  display: block !important;
  margin-bottom: 18px !important;
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #333333 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

.fp-c-col-form .wpcf7 input[type="text"],
.fp-c-col-form .wpcf7 input[type="email"],
.fp-c-col-form .wpcf7 input[type="tel"],
.fp-c-col-form .wpcf7 select,
.fp-c-col-form .wpcf7 textarea {
  display: block !important;
  width: 100% !important;
  min-height: 50px !important;
  margin-top: 7px !important;
  padding: 12px 16px !important;
  background: #ffffff !important;
  border: 1.5px solid #dddddd !important;
  border-radius: 8px !important;
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 15px !important;
  color: #111111 !important;
  box-sizing: border-box !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color 0.2s !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.fp-c-col-form .wpcf7 input[type="text"]:focus,
.fp-c-col-form .wpcf7 input[type="email"]:focus,
.fp-c-col-form .wpcf7 input[type="tel"]:focus,
.fp-c-col-form .wpcf7 select:focus,
.fp-c-col-form .wpcf7 textarea:focus {
  border-color: #f5c000 !important;
  outline: none !important;
}

.fp-c-col-form .wpcf7 select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 12px !important;
  padding-right: 42px !important;
  cursor: pointer !important;
}

.fp-c-col-form .wpcf7 textarea {
  min-height: 120px !important;
  resize: vertical !important;
  line-height: 1.55 !important;
}

.fp-c-col-form .wpcf7-form-control-wrap {
  display: block !important;
  margin: 0 !important;
}

.fp-c-col-form .wpcf7-not-valid-tip {
  font-size: 12px !important;
  color: #e03030 !important;
  margin-top: 4px !important;
  display: block !important;
}

.fp-c-col-form .wpcf7-not-valid {
  border-color: #e03030 !important;
}

/* Submit — black on the contact page */
.fp-c-col-form .wpcf7 input[type="submit"] {
  display: block !important;
  width: 100% !important;
  background: #111111 !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: 0.2px !important;
  padding: 16px 32px !important;
  min-height: 54px !important;
  border: 2px solid #111111 !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  margin-top: 8px !important;
  transition: background 0.2s, transform 0.2s, box-shadow 0.2s !important;
  -webkit-appearance: none !important;
  -webkit-tap-highlight-color: transparent;
}
.fp-c-col-form .wpcf7 input[type="submit"]:hover {
  background: #000000 !important;
  border-color: #000000 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.22) !important;
}
.fp-c-col-form .wpcf7 input[type="submit"]:active {
  transform: translateY(0) !important;
}

.fp-c-col-form .wpcf7-response-output {
  background: rgba(245, 192, 0, 0.08) !important;
  border: 1px solid rgba(245, 192, 0, 0.4) !important;
  border-radius: 8px !important;
  padding: 16px 20px !important;
  color: #333333 !important;
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin-top: 16px !important;
}

/* ── RIGHT column blocks ── */
.fp-c-phone {
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #111111 !important;
  text-decoration: none !important;
  line-height: 1.2 !important;
  margin: 0 0 20px !important;
}
.fp-c-phone:hover { color: #000000 !important; }

/* WhatsApp button — brand green */
.fp-c-wa-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: #25D366 !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  padding: 15px 24px !important;
  min-height: 52px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: background 0.2s, transform 0.2s !important;
}
.fp-c-wa-btn:hover {
  background: #1ebe5a !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
}

/* Divider */
.fp-c-divider {
  border: none !important;
  border-top: 1px solid #e5e5e5 !important;
  margin: 32px 0 !important;
}

/* Address */
.fp-c-address {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 16px !important;
  color: #111111 !important;
  line-height: 1.7 !important;
  margin: 0 0 16px !important;
}

.fp-c-meta {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 14px !important;
  color: #555555 !important;
  line-height: 1.6 !important;
  margin: 0 0 6px !important;
}

/* Get Directions — black */
.fp-c-dir-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  background: #111111 !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 14px 28px !important;
  min-height: 50px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  border: 2px solid #111111 !important;
  box-sizing: border-box !important;
  margin: 16px 0 28px !important;
  transition: background 0.2s, transform 0.2s !important;
}
.fp-c-dir-btn:hover {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
}

/* Map */
.fp-c-map {
  width: 100% !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
  line-height: 0 !important;
}
.fp-c-map iframe {
  display: block !important;
  width: 100% !important;
  height: 300px !important;
  border: 0 !important;
}


/* ============================================================
   SECTION 3 — FAQ
   ============================================================ */

.fp-c-faq {
  background: #0a0a0a !important;
  padding: 80px 48px !important;
  box-sizing: border-box !important;
}

.fp-c-faq-inner {
  max-width: 820px !important;
  margin: 0 auto !important;
}

.fp-c-faq-header {
  text-align: center !important;
  margin-bottom: 44px !important;
}

.fp-c-faq-label {
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #f5c000 !important;
  margin-bottom: 14px !important;
}

.fp-c-faq-title {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: clamp(28px, 4.5vw, 42px) !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  line-height: 1.15 !important;
  letter-spacing: -0.5px !important;
  margin: 0 !important;
}

/* Accordion item */
.fp-c-faq-item {
  background: #1a1a1a !important;
  border-radius: 12px !important;
  margin-bottom: 14px !important;
  border: 1px solid transparent !important;
  transition: border-color 0.3s ease, background 0.3s ease !important;
  overflow: hidden !important;
}
.fp-c-faq-item[open],
.fp-c-faq-item:hover {
  border-color: #f5c000 !important;
}

/* Question bar */
.fp-c-faq-item > summary {
  list-style: none !important;
  cursor: pointer !important;
  padding: 22px 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  line-height: 1.4 !important;
}
.fp-c-faq-item > summary::-webkit-details-marker { display: none !important; }

.fp-c-faq-item[open] > summary { color: #f5c000 !important; }

/* Plus icon */
.fp-c-faq-icon {
  flex-shrink: 0 !important;
  position: relative !important;
  width: 20px !important;
  height: 20px !important;
  transition: transform 0.3s ease !important;
}
.fp-c-faq-icon::before,
.fp-c-faq-icon::after {
  content: '' !important;
  position: absolute !important;
  background: #f5c000 !important;
  border-radius: 2px !important;
}
.fp-c-faq-icon::before { /* horizontal */
  top: 9px !important; left: 0 !important;
  width: 20px !important; height: 2px !important;
}
.fp-c-faq-icon::after { /* vertical */
  left: 9px !important; top: 0 !important;
  width: 2px !important; height: 20px !important;
}
.fp-c-faq-item[open] .fp-c-faq-icon {
  transform: rotate(45deg) !important;
}

/* Answer */
.fp-c-faq-answer {
  padding: 0 24px 22px !important;
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 16px !important;
  color: #cccccc !important;
  line-height: 1.7 !important;
  margin: 0 !important;
}


/* ============================================================
   SECTION 4 — FINAL CTA (YELLOW)
   ============================================================ */

.fp-c-final {
  background: #f5c000 !important;
  padding: 72px 48px !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

.fp-c-final-inner {
  max-width: 680px !important;
  margin: 0 auto !important;
}

.fp-c-final-title {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: clamp(28px, 4.5vw, 36px) !important;
  font-weight: 800 !important;
  color: #111111 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 12px !important;
}

.fp-c-final-sub {
  font-family: 'Segoe UI', system-ui, sans-serif !important;
  font-size: 16px !important;
  color: #111111 !important;
  line-height: 1.6 !important;
  margin: 0 0 32px !important;
}

.fp-c-final-btns {
  display: flex !important;
  gap: 14px !important;
  justify-content: center !important;
}

.fp-c-final-btn {
  flex: 1 !important;
  max-width: 280px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #111111 !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  padding: 16px 24px !important;
  min-height: 54px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  border: 2px solid #111111 !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
  transition: background 0.2s, transform 0.2s !important;
}
.fp-c-final-btn:hover {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
}


/* ============================================================
   MOBILE  (≤768px)
   ============================================================ */

@media (max-width: 768px) {
  .fp-c-hero {
    min-height: 280px !important;
    padding: 32px 20px !important;
  }

  .fp-c-hero-sub { font-size: 16px !important; }

  .fp-c-main {
    padding: 50px 20px !important;
  }
  .fp-c-cols.wp-block-columns {
    flex-direction: column !important;
    gap: 48px !important;
  }
  .fp-c-cols .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
  }

  .fp-c-map iframe { height: 250px !important; }

  .fp-c-faq {
    padding: 50px 20px !important;
  }
  .fp-c-faq-item > summary { font-size: 16px !important; padding: 18px 20px !important; }
  .fp-c-faq-answer { padding: 0 20px 18px !important; font-size: 15px !important; }

  .fp-c-final {
    padding: 50px 20px !important;
  }
  .fp-c-final-btns {
    flex-direction: column !important;
  }
  .fp-c-final-btn {
    max-width: none !important;
    width: 100% !important;
    white-space: normal !important;
  }
}

@media (max-width: 480px) {
  .fp-c-phone { font-size: 24px !important; }
}
.fp-c-hero,
.fp-c-main,
.fp-c-faq,
.fp-c-final {
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}
body.page .entry-title,
body.page .page-title,
body.page .wp-block-post-title,
body.page .page-header,
body.page header.entry-header {
  display: none !important;
}

body.page .site-content,
body.page .content-area,
body.page .entry-content,
body.page main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.page .site-content,
body.page .content-area,
body.page .entry-content,
body.page main,
body.page #content,
body.page #primary,
body.page #main,
body.page .site-main,
body.page .ast-container,
body.page .elementor,
body.page .page-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.page .wp-block-group.has-global-padding {
  padding-top: 0 !important;
}
body.page .wp-block-group.has-global-padding {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
  padding-top: 0 !important;
}

body.page .wp-site-blocks > *,
body.page .wp-site-blocks > main,
body.page .wp-site-blocks main > .wp-block-group {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}```