/* =========================================================
 * ALMARA Affiliate Sub-Pages — CSS Extension v1.0.0
 * Append this file to: almara-affiliate.css
 *
 * Covers:
 *   body:has(#alm-coast-hero)        /de/affiliate/coast/
 *   body:has(#alm-reef-hero)         /de/affiliate/reef/
 *   body:has(#alm-deep-hero)         /de/affiliate/deep-blue/
 *   body:has(#alm-reg-hero)          /de/affiliate/registrierung/
 *   (EN pages use same IDs → same CSS)
 *
 * Loader: almara-platform-loader loads almara-affiliate.css
 *         for all /affiliate* routes → no loader change needed.
 *
 * Design system inherits from almara-affiliate.css :root vars.
 * ========================================================= */

/* =========================================================
 * SP-01. Body + page foundation — sub-page scope
 * ========================================================= */
body:has(#alm-coast-hero),
body:has(#alm-reef-hero),
body:has(#alm-deep-hero),
body:has(#alm-reg-hero) {
  background: var(--dark) !important;
  font-family: var(--fb) !important;
}
body:has(#alm-coast-hero) .site-main,
body:has(#alm-reef-hero)  .site-main,
body:has(#alm-deep-hero)  .site-main,
body:has(#alm-reg-hero)   .site-main { overflow-x: hidden !important; }

/* =========================================================
 * SP-02. Section backgrounds — shared dark theme
 * ========================================================= */
#alm-coast-hero, #alm-coast-badge, #alm-coast-how, #alm-coast-final-cta,
#alm-reef-hero,  #alm-reef-badge,  #alm-reef-final-cta,
#alm-deep-hero,  #alm-deep-badge,  #alm-deep-final-cta,
#alm-reg-hero,   #alm-reg-embed,   #alm-reg-info { background-color: var(--dark) !important; }

#alm-coast-exclusivity,
#alm-reef-form         { background-color: var(--ocean) !important; }
#alm-deep-exclusivity  { background-color: var(--white) !important; }
#alm-reg-trust         { background-color: var(--foam) !important; border-top: 1px solid var(--border) !important; border-bottom: 1px solid var(--border) !important; }

/* =========================================================
 * SP-03. Content width + horizontal padding
 * ========================================================= */
#alm-coast-hero > .elementor-container,
#alm-coast-badge > .elementor-container,
#alm-coast-how > .elementor-container,
#alm-coast-final-cta > .elementor-container,
#alm-reef-hero > .elementor-container,
#alm-reef-badge > .elementor-container,
#alm-reef-form > .elementor-container,
#alm-reef-final-cta > .elementor-container,
#alm-deep-hero > .elementor-container,
#alm-deep-badge > .elementor-container,
#alm-deep-exclusivity > .elementor-container,
#alm-deep-final-cta > .elementor-container,
#alm-reg-hero > .elementor-container,
#alm-reg-trust > .elementor-container,
#alm-reg-embed > .elementor-container,
#alm-reg-info > .elementor-container {
  max-width: var(--max-w) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--pad-h) !important;
  padding-right: var(--pad-h) !important;
}

/* Inner sections: full width, no extra horizontal padding */
#alm-coast-badge .elementor-section > .elementor-container,
#alm-coast-how .elementor-section > .elementor-container,
#alm-coast-final-cta .elementor-section > .elementor-container,
#alm-reef-badge .elementor-section > .elementor-container,
#alm-reef-form .elementor-section > .elementor-container,
#alm-deep-badge .elementor-section > .elementor-container,
#alm-deep-exclusivity .elementor-section > .elementor-container,
#alm-deep-final-cta .elementor-section > .elementor-container,
#alm-reg-trust .elementor-section > .elementor-container,
#alm-reg-embed .elementor-section > .elementor-container,
#alm-reg-info .elementor-section > .elementor-container {
  max-width: var(--max-w) !important;
  margin: 0 auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* =========================================================
 * SP-04. HERO — shared hero architecture (all 4 sub-pages)
 *         Mirrors almara-affiliate-hero pattern exactly.
 * ========================================================= */
#alm-coast-hero,
#alm-reef-hero,
#alm-deep-hero,
#alm-reg-hero {
  min-height: 88vh !important;
  overflow: hidden !important;
  position: relative !important;
}
/* Background image container: absolute full-bleed */
#alm-coast-hero .e-con.e-parent:has(.elementor-widget-image),
#alm-reef-hero  .e-con.e-parent:has(.elementor-widget-image),
#alm-deep-hero  .e-con.e-parent:has(.elementor-widget-image),
#alm-reg-hero   .e-con.e-parent:has(.elementor-widget-image) {
  position: absolute !important; inset: 0 !important;
  z-index: 0 !important; pointer-events: none !important;
  width: 100% !important; height: 100% !important;
  max-width: none !important;
}
#alm-coast-hero .e-con.e-parent:has(.elementor-widget-image) .e-con-inner,
#alm-reef-hero  .e-con.e-parent:has(.elementor-widget-image) .e-con-inner,
#alm-deep-hero  .e-con.e-parent:has(.elementor-widget-image) .e-con-inner,
#alm-reg-hero   .e-con.e-parent:has(.elementor-widget-image) .e-con-inner { height: 100% !important; padding: 0 !important; }
#alm-coast-hero .e-con.e-parent:has(.elementor-widget-image) img,
#alm-reef-hero  .e-con.e-parent:has(.elementor-widget-image) img,
#alm-deep-hero  .e-con.e-parent:has(.elementor-widget-image) img,
#alm-reg-hero   .e-con.e-parent:has(.elementor-widget-image) img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center 30% !important;
  opacity: .5 !important; display: block !important;
}
/* Gradient overlay */
#alm-coast-hero .e-con.e-parent:has(.elementor-widget-image)::after,
#alm-reef-hero  .e-con.e-parent:has(.elementor-widget-image)::after,
#alm-deep-hero  .e-con.e-parent:has(.elementor-widget-image)::after,
#alm-reg-hero   .e-con.e-parent:has(.elementor-widget-image)::after {
  content: '' !important; position: absolute !important; inset: 0 !important;
  background: linear-gradient(to top, rgba(6,32,51,.94) 0%, rgba(6,32,51,.42) 55%, rgba(6,32,51,.18) 100%) !important;
  z-index: 1 !important;
}
/* Copy container: in flow, above image */
#alm-coast-hero .e-con.e-parent:not(:has(.elementor-widget-image)),
#alm-reef-hero  .e-con.e-parent:not(:has(.elementor-widget-image)),
#alm-deep-hero  .e-con.e-parent:not(:has(.elementor-widget-image)),
#alm-reg-hero   .e-con.e-parent:not(:has(.elementor-widget-image)) {
  position: relative !important; z-index: 2 !important;
  padding-bottom: 6rem !important; padding-top: 2rem !important;
  max-width: 760px !important;
}
/* Hero column: flex-end so copy sits at bottom */
#alm-coast-hero .elementor-col-100,
#alm-reef-hero  .elementor-col-100,
#alm-deep-hero  .elementor-col-100,
#alm-reg-hero   .elementor-col-100 {
  display: flex !important; flex-direction: column !important;
  justify-content: flex-end !important; min-height: 88vh !important;
}
/* Hero lead text */
#alm-coast-hero .elementor-widget-text-editor p:not(.alm-aff-eyebrow),
#alm-reef-hero  .elementor-widget-text-editor p:not(.alm-aff-eyebrow),
#alm-deep-hero  .elementor-widget-text-editor p:not(.alm-aff-eyebrow),
#alm-reg-hero   .elementor-widget-text-editor p:not(.alm-aff-eyebrow) {
  font-size: 17px !important; color: rgba(255,255,255,.72) !important;
  max-width: 520px !important; line-height: 1.8 !important; margin-bottom: 2rem !important;
}

/* =========================================================
 * SP-05. Hero headings — tier-colored <em>
 * ========================================================= */
/* Shared hero heading base */
#alm-coast-hero .elementor-heading-title,
#alm-reef-hero  .elementor-heading-title,
#alm-deep-hero  .elementor-heading-title,
#alm-reg-hero   .elementor-heading-title {
  font-family: var(--fd) !important; font-size: clamp(3rem,6vw,5.2rem) !important;
  font-weight: 300 !important; line-height: 1.08 !important; color: #fff !important;
  letter-spacing: .01em !important;
}
/* Tier-specific <em> color */
#alm-coast-hero .elementor-heading-title em { color: var(--coast) !important; font-style: italic !important; }
#alm-reef-hero  .elementor-heading-title em { color: var(--reef)  !important; font-style: italic !important; }
#alm-deep-hero  .elementor-heading-title em { color: var(--deep)  !important; font-style: italic !important; }
#alm-reg-hero   .elementor-heading-title em { color: var(--gold-lt) !important; font-style: italic !important; }

/* =========================================================
 * SP-06. Eyebrow — sub-page scoped
 * ========================================================= */
#alm-coast-hero .alm-aff-eyebrow,
#alm-reef-hero  .alm-aff-eyebrow,
#alm-deep-hero  .alm-aff-eyebrow,
#alm-reg-hero   .alm-aff-eyebrow { color: var(--aqua) !important; }

/* Light-section eyebrows */
#alm-deep-exclusivity .alm-aff-eyebrow { color: var(--mid) !important; }
#alm-reg-info .alm-aff-eyebrow { color: var(--aqua) !important; }

/* =========================================================
 * SP-07. Hero CTA buttons — tier-colored primary
 * ========================================================= */
/* Coast primary */
#alm-coast-hero .elementor-section .elementor-col-50:nth-child(1) .elementor-button {
  background-color: var(--coast) !important; color: var(--dark) !important;
  border: 1px solid var(--coast) !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important; padding: 13px 30px !important;
}
/* Reef primary */
#alm-reef-hero .elementor-section .elementor-col-50:nth-child(1) .elementor-button {
  background-color: var(--reef) !important; color: var(--dark) !important;
  border: 1px solid var(--reef) !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important; padding: 13px 30px !important;
}
/* Deep primary */
#alm-deep-hero .elementor-section .elementor-col-50:nth-child(1) .elementor-button {
  background-color: var(--deep) !important; color: var(--dark) !important;
  border: 1px solid var(--deep) !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important; padding: 13px 30px !important;
}
/* Reg primary (coast color — self-service) */
#alm-reg-hero .elementor-section .elementor-col-50:nth-child(1) .elementor-button {
  background-color: var(--aqua) !important; color: var(--dark) !important;
  border: 1px solid var(--aqua) !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important; padding: 13px 30px !important;
}
/* All hero secondary buttons */
#alm-coast-hero .elementor-section .elementor-col-50:nth-child(2) .elementor-button,
#alm-reef-hero  .elementor-section .elementor-col-50:nth-child(2) .elementor-button,
#alm-deep-hero  .elementor-section .elementor-col-50:nth-child(2) .elementor-button,
#alm-reg-hero   .elementor-section .elementor-col-50:nth-child(2) .elementor-button {
  background-color: transparent !important; color: rgba(255,255,255,.8) !important;
  border: 1px solid rgba(255,255,255,.28) !important; border-radius: 3px !important;
  font-size: 13px !important; letter-spacing: .06em !important;
  text-transform: uppercase !important; padding: 13px 30px !important;
}

/* =========================================================
 * SP-08. BADGE SECTIONS — 2-col layout
 * ========================================================= */
/* Badge image (left column) */
#alm-coast-badge .elementor-col-50:first-child .elementor-widget-image,
#alm-reef-badge  .elementor-col-50:first-child .elementor-widget-image,
#alm-deep-badge  .elementor-col-50:first-child .elementor-widget-image {
  display: flex !important; justify-content: center !important;
  align-items: center !important; padding: 3rem 0 !important;
}
#alm-coast-badge .elementor-col-50:first-child img,
#alm-reef-badge  .elementor-col-50:first-child img,
#alm-deep-badge  .elementor-col-50:first-child img {
  width: 200px !important; height: 200px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 8px 40px rgba(0,0,0,.5)) !important;
}

/* Badge right column: all text white */
#alm-coast-badge .elementor-col-50:last-child .elementor-widget-text-editor *,
#alm-reef-badge  .elementor-col-50:last-child .elementor-widget-text-editor *,
#alm-deep-badge  .elementor-col-50:last-child .elementor-widget-text-editor * { color: rgba(255,255,255,.78) !important; }

/* Rate heading (H2): tier-colored */
#alm-coast-badge .elementor-col-50:last-child .elementor-heading-title { color: var(--coast) !important; font-family: var(--fd) !important; font-size: clamp(2.5rem,4vw,3.5rem) !important; font-weight: 300 !important; }
#alm-reef-badge  .elementor-col-50:last-child .elementor-heading-title { color: var(--reef)  !important; font-family: var(--fd) !important; font-size: clamp(2.5rem,4vw,3.5rem) !important; font-weight: 300 !important; }
#alm-deep-badge  .elementor-col-50:last-child .elementor-heading-title { color: var(--deep)  !important; font-family: var(--fd) !important; font-size: clamp(2.5rem,4vw,3.5rem) !important; font-weight: 300 !important; }

/* Feature lists in badge section */
#alm-coast-badge .feature-list, #alm-coast-badge .feature-list *,
#alm-reef-badge  .feature-list, #alm-reef-badge  .feature-list *,
#alm-deep-badge  .feature-list, #alm-deep-badge  .feature-list * { text-align: left !important; }
#alm-coast-badge .feature-list { list-style: none !important; padding: 0 !important; margin: .5rem 0 1.5rem !important; }
#alm-reef-badge  .feature-list { list-style: none !important; padding: 0 !important; margin: .5rem 0 1.5rem !important; }
#alm-deep-badge  .feature-list { list-style: none !important; padding: 0 !important; margin: .5rem 0 1.5rem !important; }
#alm-coast-badge .feature-list li, #alm-reef-badge .feature-list li, #alm-deep-badge .feature-list li {
  padding: 7px 0 !important; border-bottom: 1px solid rgba(255,255,255,.07) !important;
  display: flex !important; align-items: center !important; gap: 10px !important;
  font-size: 14px !important; color: rgba(255,255,255,.65) !important;
}
#alm-coast-badge .feature-list li:last-child, #alm-reef-badge .feature-list li:last-child, #alm-deep-badge .feature-list li:last-child { border: none !important; }
#alm-coast-badge .feature-list li::before { content: '' !important; width: 5px !important; height: 5px !important; border-radius: 50% !important; flex-shrink: 0 !important; background: var(--coast) !important; }
#alm-reef-badge  .feature-list li::before { content: '' !important; width: 5px !important; height: 5px !important; border-radius: 50% !important; flex-shrink: 0 !important; background: var(--reef)  !important; }
#alm-deep-badge  .feature-list li::before { content: '' !important; width: 5px !important; height: 5px !important; border-radius: 50% !important; flex-shrink: 0 !important; background: var(--deep)  !important; }

/* Badge section CTA buttons */
#alm-coast-badge .elementor-button {
  background-color: var(--coast) !important; color: var(--dark) !important;
  border: 1px solid var(--coast) !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important; padding: 12px 28px !important;
}
#alm-deep-badge .elementor-button {
  background-color: var(--deep) !important; color: var(--dark) !important;
  border: 1px solid var(--deep) !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important; padding: 12px 28px !important;
}

/* =========================================================
 * SP-09. HOW-IT-WORKS / STEPS (Coast + Reg shared)
 * ========================================================= */
#alm-coast-how .elementor-heading-title,
#alm-reg-info   .elementor-heading-title {
  font-family: var(--fd) !important; font-size: clamp(2rem,3.5vw,2.9rem) !important;
  font-weight: 400 !important; color: rgba(255,255,255,.9) !important;
}
#alm-coast-how .elementor-col-33 h4,
#alm-reg-info   .elementor-col-33 h4 {
  font-weight: 600 !important; font-size: 15px !important;
  color: rgba(255,255,255,.9) !important; margin: 0 0 .5rem !important;
}
#alm-coast-how .elementor-col-33 p,
#alm-reg-info   .elementor-col-33 p {
  font-size: 14px !important; color: rgba(255,255,255,.55) !important; line-height: 1.65 !important;
}

/* =========================================================
 * SP-10. DEEP EXCLUSIVITY — light section
 * ========================================================= */
#alm-deep-exclusivity .elementor-heading-title {
  font-family: var(--fd) !important; font-size: clamp(2rem,3.5vw,2.9rem) !important;
  font-weight: 400 !important; color: var(--text) !important;
}
#alm-deep-exclusivity .elementor-col-50 h4 {
  font-weight: 600 !important; font-size: 15px !important;
  color: var(--text) !important; margin: 0 0 .5rem !important;
}
#alm-deep-exclusivity .elementor-col-50 p {
  font-size: 14px !important; color: var(--muted) !important; line-height: 1.7 !important;
}

/* =========================================================
 * SP-11. REEF FORM SECTION — ocean background
 * ========================================================= */
#alm-reef-form .elementor-heading-title {
  font-family: var(--fd) !important; font-size: clamp(2rem,3.5vw,2.9rem) !important;
  font-weight: 400 !important; color: #fff !important;
}
#alm-reef-form .elementor-widget-text-editor p:not(.alm-aff-eyebrow) {
  color: rgba(255,255,255,.72) !important;
}
/* Elementor Pro form styles — ocean-section context */
#alm-reef-form .elementor-form .elementor-field-group { margin-bottom: .75rem !important; }
#alm-reef-form .elementor-form input,
#alm-reef-form .elementor-form select,
#alm-reef-form .elementor-form textarea {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 3px !important;
  color: rgba(255,255,255,.85) !important;
  font-size: 14px !important;
  padding: 11px 14px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  font-family: var(--fb) !important;
}
#alm-reef-form .elementor-form input::placeholder,
#alm-reef-form .elementor-form textarea::placeholder { color: rgba(255,255,255,.35) !important; }
#alm-reef-form .elementor-form input:focus,
#alm-reef-form .elementor-form select:focus,
#alm-reef-form .elementor-form textarea:focus {
  border-color: var(--reef) !important;
  outline: none !important;
  background: rgba(255,255,255,.1) !important;
}
#alm-reef-form .elementor-form select option { background: var(--ocean) !important; color: #fff !important; }
#alm-reef-form .elementor-form label {
  color: rgba(255,255,255,.6) !important;
  font-size: 12px !important; letter-spacing: .04em !important;
  margin-bottom: 4px !important; display: block !important;
}
/* Submit button */
#alm-reef-form .elementor-form .elementor-button[type="submit"],
#alm-reef-form .elementor-button {
  background-color: var(--reef) !important; color: var(--dark) !important;
  border: 1px solid var(--reef) !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: .06em !important; text-transform: uppercase !important;
  padding: 13px 32px !important; cursor: pointer !important;
}
/* Acceptance checkbox */
#alm-reef-form .elementor-field-type-acceptance label { font-size: 13px !important; color: rgba(255,255,255,.5) !important; }
#alm-reef-form .elementor-field-type-acceptance a { color: var(--reef) !important; }
/* Success message */
#alm-reef-form .elementor-message.elementor-message-success {
  background: rgba(144,200,224,.12) !important;
  border: 1px solid var(--reef) !important;
  border-radius: 3px !important; padding: 1rem 1.25rem !important;
  color: var(--reef) !important;
}

/* =========================================================
 * SP-12. REGISTRATION PAGE — SliceWP embed section
 *
 * SliceWP renders via [slicewp_affiliate_area] shortcode.
 * Key output classes:
 *   .slicewp-affiliate-area        — outer wrapper
 *   .slicewp-form                  — form wrapper
 *   .slicewp-field-container       — field row
 *   .slicewp-field-label           — label
 *   .slicewp-field                 — input/select
 *   .slicewp-button-primary        — submit button
 *   .slicewp-panel                 — dashboard panels
 * ========================================================= */
#alm-reg-embed .elementor-heading-title {
  font-family: var(--fd) !important; font-size: clamp(2rem,3.5vw,2.9rem) !important;
  font-weight: 400 !important; color: rgba(255,255,255,.9) !important;
}
#alm-reg-embed .elementor-widget-text-editor p:not(.alm-aff-eyebrow) {
  color: rgba(255,255,255,.65) !important; font-size: 15px !important;
}

/* SliceWP affiliate area wrapper */
#alm-reg-embed .slicewp-affiliate-area {
  max-width: 640px !important;
  margin: 0 auto !important;
}

/* SliceWP form fields */
#alm-reg-embed .slicewp-form .slicewp-field-container {
  margin-bottom: .75rem !important;
}
#alm-reg-embed .slicewp-form .slicewp-field-label,
#alm-reg-embed .slicewp-form label {
  color: rgba(255,255,255,.6) !important;
  font-size: 12px !important;
  letter-spacing: .04em !important;
  margin-bottom: 4px !important;
  display: block !important;
  font-family: var(--fb) !important;
}
#alm-reg-embed .slicewp-form .slicewp-field,
#alm-reg-embed .slicewp-form input[type="text"],
#alm-reg-embed .slicewp-form input[type="email"],
#alm-reg-embed .slicewp-form input[type="password"],
#alm-reg-embed .slicewp-form select {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 3px !important;
  color: rgba(255,255,255,.85) !important;
  font-size: 14px !important;
  padding: 11px 14px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  font-family: var(--fb) !important;
}
#alm-reg-embed .slicewp-form .slicewp-field::placeholder,
#alm-reg-embed .slicewp-form input::placeholder { color: rgba(255,255,255,.35) !important; }
#alm-reg-embed .slicewp-form .slicewp-field:focus,
#alm-reg-embed .slicewp-form input:focus,
#alm-reg-embed .slicewp-form select:focus {
  border-color: var(--coast) !important;
  outline: none !important;
  background: rgba(255,255,255,.1) !important;
}

/* SliceWP submit button */
#alm-reg-embed .slicewp-button-primary,
#alm-reg-embed .slicewp-form input[type="submit"],
#alm-reg-embed .slicewp-form button[type="submit"] {
  background-color: var(--coast) !important;
  color: var(--dark) !important;
  border: 1px solid var(--coast) !important;
  border-radius: 3px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  padding: 13px 32px !important;
  cursor: pointer !important;
  font-family: var(--fb) !important;
}

/* SliceWP links (login / register toggle) */
#alm-reg-embed .slicewp-affiliate-area a {
  color: var(--coast) !important;
}

/* SliceWP navigation tabs (logged-in dashboard) */
#alm-reg-embed .slicewp-panel {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 3px !important;
  padding: 1.5rem !important;
  margin-top: 1rem !important;
}
#alm-reg-embed .slicewp-panel * { color: rgba(255,255,255,.78) !important; }

/* SliceWP success / error messages */
#alm-reg-embed .slicewp-message-success,
#alm-reg-embed .slicewp-success {
  background: rgba(196,168,122,.12) !important;
  border: 1px solid var(--coast) !important;
  border-radius: 3px !important;
  padding: .75rem 1rem !important;
  color: var(--coast) !important;
  font-size: 14px !important;
  margin-top: 1rem !important;
}
#alm-reg-embed .slicewp-message-error,
#alm-reg-embed .slicewp-error {
  background: rgba(200,80,60,.12) !important;
  border: 1px solid rgba(200,80,60,.5) !important;
  border-radius: 3px !important;
  padding: .75rem 1rem !important;
  color: rgba(255,160,140,.9) !important;
  font-size: 14px !important;
  margin-top: 1rem !important;
}

/* Trust bar */
#alm-reg-trust { padding-top: 2rem !important; padding-bottom: 2rem !important; }
#alm-reg-trust .elementor-col-25 { text-align: center !important; }
.alm-reg-trust-item {
  font-size: 13px !important; color: var(--ocean) !important;
  font-weight: 600 !important; text-align: center !important;
  margin: 0 !important;
}

/* =========================================================
 * SP-13. FINAL CTA SECTIONS — dark, with gradient top bar
 * ========================================================= */
#alm-coast-final-cta,
#alm-reef-final-cta,
#alm-deep-final-cta { position: relative !important; text-align: center !important; }

/* Tier-colored top gradient bar */
#alm-coast-final-cta::before {
  content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important;
  background: linear-gradient(to right, var(--coast), rgba(196,168,122,.2)) !important;
}
#alm-reef-final-cta::before {
  content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important;
  background: linear-gradient(to right, var(--reef), rgba(144,200,224,.2)) !important;
}
#alm-deep-final-cta::before {
  content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important;
  background: linear-gradient(to right, var(--coast), var(--reef), var(--deep)) !important;
}

#alm-coast-final-cta .elementor-widget-text-editor,
#alm-coast-final-cta .elementor-heading-title,
#alm-reef-final-cta .elementor-widget-text-editor,
#alm-reef-final-cta .elementor-heading-title,
#alm-deep-final-cta .elementor-widget-text-editor,
#alm-deep-final-cta .elementor-heading-title { text-align: center !important; }

#alm-coast-final-cta .elementor-heading-title,
#alm-reef-final-cta .elementor-heading-title,
#alm-deep-final-cta .elementor-heading-title {
  font-family: var(--fd) !important; font-size: clamp(2rem,3.5vw,2.9rem) !important;
  font-weight: 400 !important; color: #fff !important;
}
#alm-coast-final-cta .elementor-widget-text-editor p,
#alm-reef-final-cta .elementor-widget-text-editor p,
#alm-deep-final-cta .elementor-widget-text-editor p { color: rgba(255,255,255,.6) !important; }

/* Final CTA buttons centred */
#alm-coast-final-cta .elementor-section > .elementor-container,
#alm-reef-final-cta .elementor-section > .elementor-container,
#alm-deep-final-cta .elementor-section > .elementor-container { justify-content: center !important; align-items: center !important; }

/* Primary final buttons */
#alm-coast-final-cta .elementor-col-50:nth-child(1) .elementor-button { background-color: var(--coast) !important; color: var(--dark) !important; border: 1px solid var(--coast) !important; border-radius: 3px !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .06em !important; text-transform: uppercase !important; padding: 13px 30px !important; }
#alm-deep-final-cta .elementor-col-50:nth-child(1) .elementor-button   { background-color: var(--deep)  !important; color: var(--dark) !important; border: 1px solid var(--deep)  !important; border-radius: 3px !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .06em !important; text-transform: uppercase !important; padding: 13px 30px !important; }
/* Secondary final buttons */
#alm-coast-final-cta .elementor-col-50:nth-child(2) .elementor-button,
#alm-reef-final-cta  .elementor-col-50:nth-child(2) .elementor-button,
#alm-deep-final-cta  .elementor-col-50:nth-child(2) .elementor-button { background-color: transparent !important; color: rgba(255,255,255,.8) !important; border: 1px solid rgba(255,255,255,.28) !important; border-radius: 3px !important; font-size: 13px !important; letter-spacing: .06em !important; text-transform: uppercase !important; padding: 13px 30px !important; }

/* Reef final CTA — minimal / contact info only */
#alm-reef-final-cta .elementor-widget-text-editor a { color: var(--reef) !important; }
