.elementor-13 .elementor-element.elementor-element-2dc3b530{--display:flex;}.elementor-13 .elementor-element.elementor-element-650998ba{--display:flex;}.elementor-13 .elementor-element.elementor-element-21895bc{--display:flex;}.elementor-13 .elementor-element.elementor-element-2c96ba68{--display:flex;}.elementor-13 .elementor-element.elementor-element-1b577763{--display:flex;}.elementor-13 .elementor-element.elementor-element-23830b29{--display:flex;}.elementor-13 .elementor-element.elementor-element-61485cfc{--display:flex;}.elementor-13 .elementor-element.elementor-element-526d530e{--display:flex;}.elementor-13 .elementor-element.elementor-element-78107ad4{--display:flex;}.elementor-13 .elementor-element.elementor-element-69452979{--display:flex;}.elementor-13 .elementor-element.elementor-element-672917e8{--display:flex;}.elementor-13 .elementor-element.elementor-element-5128f80b{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-field-group.recaptcha_v3-bottomleft, .elementor-13 .elementor-element.elementor-element-15397c5e .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-13 .elementor-element.elementor-element-15397c5e .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-13 .elementor-element.elementor-element-15397c5e .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-13 .elementor-element.elementor-element-15397c5e .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-field-type-html{padding-bottom:0px;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-button[type="submit"]{color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-13 .elementor-element.elementor-element-15397c5e{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-13 .elementor-element.elementor-element-48ef892{--display:flex;}.elementor-13 .elementor-element.elementor-element-73c5b027{--display:flex;}.elementor-13 .elementor-element.elementor-element-2876ffc5{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS *//* ==========================================================================
   FRS D2C BRAND LANDING PAGE - UNIVERSAL STYLESHEET
   ==========================================================================
   This stylesheet styles the Fifth Ray System (FRS) D2C Growth landing page.
   
   INSTRUCTIONS:
   1. Paste this entire file into:
      - Elementor Page Settings -> Advanced -> Custom CSS (Elementor Pro), or
      - WordPress Customizer -> Additional CSS (Appearance > Customize > Additional CSS).
   2. Ensure the body or the top wrapper element has the class: `frs-landing-page`
      (You can add `frs-landing-page` to the 'Body Class' in Elementor Page Settings).
   3. Change the Elementor Page Layout to "Elementor Canvas" to hide default theme headers/footers.
   ========================================================================== */

@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap");

/* --------------------------------------------------------------------------
   1. Theme Reset & Hiding Default Header/Footers
   -------------------------------------------------------------------------- */
.frs-landing-page #masthead,
.frs-landing-page #colophon,
.frs-landing-page .hfe-promo-notice,
.frs-landing-page .skip-link,
.frs-landing-page #ast-scroll-top {
  display: none !important;
}

.frs-landing-page,
.frs-landing-page #page,
.frs-landing-page #content,
.frs-landing-page .site-content,
.frs-landing-page .ast-container,
.frs-landing-page #primary,
.frs-landing-page .entry-content,
.frs-landing-page .elementor {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.frs-landing-page {
  overflow-x: hidden !important;
  background: #ffffff !important;
}

/* --------------------------------------------------------------------------
   2. Design Tokens & Core Settings
   -------------------------------------------------------------------------- */
.frs-landing-page {
  --frs-ink: #111827;
  --frs-deep: #172033;
  --frs-charcoal: #2f3747;
  --frs-muted: #5b6472;
  --frs-paper: #ffffff;
  --frs-soft: #f6f8fa;
  --frs-warm: #fff7f0;
  --frs-border: #e2e8f0;
  --frs-orange: #f97316;
  --frs-orange-hover: #ea580c;
  --frs-teal: #0f766e;
  --frs-radius: 8px;
  --frs-font: "Montserrat", Inter, Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--frs-ink) !important;
  font-family: var(--frs-font) !important;
  line-height: 1.65 !important;
}

.frs-landing-page *,
.frs-landing-page *::before,
.frs-landing-page *::after {
  box-sizing: border-box !important;
}

.frs-landing-page a {
  text-decoration: none !important;
}

.frs-landing-page h1,
.frs-landing-page h2,
.frs-landing-page h3,
.frs-landing-page .elementor-heading-title {
  margin: 0 !important;
  color: var(--frs-ink) !important;
  font-family: var(--frs-font) !important;
  letter-spacing: 0 !important;
}

.frs-landing-page p {
  margin: 0 !important;
}

.frs-landing-page,
.frs-landing-page button,
.frs-landing-page input,
.frs-landing-page select,
.frs-landing-page textarea,
.frs-landing-page * {
  font-family: "Montserrat", Inter, Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

/* --------------------------------------------------------------------------
   3. Common Layout Components
   -------------------------------------------------------------------------- */
.frs-wrap {
  width: min(1120px, calc(100% - 48px)) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.frs-section {
  padding: 84px 0 !important;
}

.frs-soft {
  background: var(--frs-soft) !important;
}

.frs-warm {
  background: var(--frs-warm) !important;
}

.frs-section-head {
  max-width: 780px !important;
  margin: 0 auto 32px !important;
  text-align: center !important;
}

.frs-section-head .frs-eyebrow {
  margin-bottom: 12px !important;
}

.frs-section-head p:not(.frs-eyebrow) {
  margin-top: 14px !important;
  color: var(--frs-muted) !important;
  font-size: 18px !important;
}

.frs-section h2 {
  font-size: clamp(30px, 3.6vw, 46px) !important;
  line-height: 1.08 !important;
}

.frs-eyebrow {
  display: block !important;
  color: var(--frs-teal) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.frs-lead {
  max-width: 760px !important;
  color: var(--frs-charcoal) !important;
  font-size: 18px !important;
  line-height: 1.58 !important;
}

.frs-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
}

/* Buttons and Pills */
.frs-pill {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 7px 12px !important;
  border: 1px solid rgba(15, 118, 110, 0.22) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.78) !important;
  color: var(--frs-deep) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
}

.frs-btn,
.frs-landing-page a.frs-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: var(--frs-radius) !important;
  background: var(--frs-orange) !important;
  color: #ffffff !important;
  font-weight: 850 !important;
  box-shadow: 0 14px 28px rgba(249, 115, 22, 0.25) !important;
  transition: all 0.2s ease-in-out !important;
}

.frs-btn:hover,
.frs-landing-page a.frs-btn:hover {
  background: var(--frs-orange-hover) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 32px rgba(249, 115, 22, 0.3) !important;
}

.frs-link-btn {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 46px !important;
  color: var(--frs-deep) !important;
  font-weight: 850 !important;
}

/* Panel & Cards */
.frs-panel,
.frs-card {
  border: 1px solid var(--frs-border) !important;
  border-radius: var(--frs-radius) !important;
  background: var(--frs-paper) !important;
  box-shadow: 0 16px 42px rgba(17, 24, 39, 0.07) !important;
}

.frs-panel {
  padding: 22px !important;
  background: linear-gradient(160deg, rgba(23, 32, 51, 0.98), rgba(17, 24, 39, 0.94)) !important;
  color: #ffffff !important;
}

.frs-panel h2,
.frs-panel strong,
.frs-panel span {
  color: #ffffff !important;
}

.frs-panel h2 {
  font-size: clamp(26px, 3vw, 36px) !important;
  line-height: 1.08 !important;
}

.frs-list {
  display: grid !important;
  margin-top: 18px !important;
}

.frs-list-row {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.13) !important;
}

.frs-list-row:last-child {
  border-bottom: 0 !important;
}

.frs-list-row strong {
  display: block !important;
  font-size: 17px !important;
}

.frs-list-row span {
  color: rgba(255, 255, 255, 0.68) !important;
  font-size: 14px !important;
}

.frs-marker {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 86px !important;
  min-height: 32px !important;
  border: 1px solid rgba(249, 115, 22, 0.55) !important;
  border-radius: 999px !important;
  color: #fed7aa !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  text-transform: uppercase !important;
}

.frs-small {
  margin-top: 8px !important;
  color: var(--frs-muted) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.frs-card {
  min-height: 100% !important;
  padding: 20px !important;
}

.frs-card h3 {
  font-size: 21px !important;
  line-height: 1.2 !important;
}

.frs-card p {
  margin-top: 12px !important;
  font-size: 16px !important;
  color: var(--frs-muted) !important;
}

.frs-step {
  display: inline-flex !important;
  margin-bottom: 14px !important;
  color: var(--frs-orange) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
}

/* Callout strips spacing */
.frs-transition {
  max-width: 820px !important;
  margin: 34px auto 0 !important;
  padding: 18px 22px !important;
  border-left: 3px solid var(--frs-orange) !important;
  background: #ffffff !important;
  color: var(--frs-deep) !important;
  font-size: 20px !important;
  font-weight: 750 !important;
  box-shadow: 0 12px 34px rgba(17, 24, 39, 0.05) !important;
}

.frs-card-grid + .frs-transition,
.frs-framework-grid + .frs-transition,
.frs-audit-grid + .frs-transition {
  display: block !important;
  clear: both !important;
  margin-top: 28px !important;
}

/* Grid systems */
.frs-card-grid,
.frs-framework-grid,
.frs-audit-grid,
.frs-video-grid,
.frs-authority-grid,
.frs-reframe-grid {
  display: grid !important;
  gap: 16px !important;
}

/* --------------------------------------------------------------------------
   4. Header Section (`.frs-header`)
   -------------------------------------------------------------------------- */
.frs-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  width: 100% !important;
  border-bottom: 1px solid rgba(226, 232, 240, 0.9) !important;
  background: rgba(255, 255, 255, 0.94) !important;
  backdrop-filter: blur(14px) !important;
}

.frs-header-inner {
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
}

.frs-logo {
  color: var(--frs-deep) !important;
  font-size: 18px !important;
  font-weight: 850 !important;
}

.frs-nav {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  color: var(--frs-muted) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
}

.frs-header .frs-btn {
  min-height: 42px !important;
  padding: 0 18px !important;
}

/* --------------------------------------------------------------------------
   5. Hero Section (`.frs-hero-section` or `.frs-value-hero`)
   -------------------------------------------------------------------------- */
.frs-landing-page .frs-hero-section,
.frs-landing-page .frs-value-hero {
  width: 100% !important;
  padding: 54px 0 62px !important;
  background:
    linear-gradient(90deg, rgba(17, 24, 39, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 54%, #fff7f0 100%) !important;
  background-size: 56px 56px, auto !important;
}

.frs-landing-page .frs-hero-section > .e-con-inner,
.frs-landing-page .frs-value-hero-grid {
  width: min(1120px, calc(100% - 48px)) !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.13fr) minmax(330px, 0.75fr) !important;
  gap: 28px !important;
  align-items: center !important;
}

.frs-hero-copy-wrapper,
.frs-value-hero-copy {
  display: grid !important;
  gap: 18px !important;
  justify-items: start !important;
}

.frs-hero-copy-wrapper h1,
.frs-value-hero h1 {
  max-width: 780px !important;
  color: var(--frs-ink) !important;
  font-size: clamp(40px, 5.2vw, 66px) !important;
  line-height: 1.02 !important;
  font-weight: 900 !important;
}

.frs-value-subheadline {
  max-width: 780px !important;
  color: var(--frs-charcoal) !important;
  font-size: 22px !important;
  line-height: 1.5 !important;
  font-weight: 650 !important;
}

.frs-value-support {
  max-width: 760px !important;
  color: var(--frs-muted) !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

.frs-hero-video-card {
  align-self: center !important;
}

/* --------------------------------------------------------------------------
   6. Fit Section (`.frs-fit-section`)
   -------------------------------------------------------------------------- */
.frs-fit-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

.frs-fit-card {
  min-height: 100% !important;
  padding: 28px !important;
  border: 1px solid var(--frs-border) !important;
  border-radius: var(--frs-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 16px 42px rgba(17, 24, 39, 0.07) !important;
}

.frs-fit-card-muted {
  background: #fff7f0 !important;
}

.frs-fit-card h2 {
  margin-top: 12px !important;
  font-size: clamp(26px, 2.8vw, 36px) !important;
  line-height: 1.12 !important;
}

.frs-fit-card ul,
.frs-template ul {
  margin: 20px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.frs-fit-card li,
.frs-template li {
  position: relative !important;
  margin-top: 12px !important;
  padding-left: 24px !important;
  color: var(--frs-charcoal) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

.frs-fit-card li::before,
.frs-template li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.68em !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 999px !important;
  background: var(--frs-orange) !important;
}

/* --------------------------------------------------------------------------
   7. Proof Strip (`.frs-proof-strip`)
   -------------------------------------------------------------------------- */
.frs-proof-strip {
  padding: 28px 0 !important;
  background: var(--frs-deep) !important;
}

.frs-proof-strip p {
  max-width: 980px !important;
  margin: 0 auto !important;
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
  text-align: center !important;
}

/* --------------------------------------------------------------------------
   8. Testimonial Video Section (`.frs-testimonial-section`)
   -------------------------------------------------------------------------- */
.frs-landing-page .frs-testimonial-section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 84px 0 !important;
  display: block !important;
  background: var(--frs-soft) !important;
}

.frs-landing-page .frs-testimonial-section > .e-con-inner {
  width: min(780px, calc(100% - 48px)) !important;
  max-width: 780px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  gap: 24px !important;
}

.frs-testimonial-head > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.frs-testimonial-grid > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

.frs-testimonial-card-1,
.frs-testimonial-card-2,
.frs-video-card {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 16px !important;
  border: 1px solid var(--frs-border) !important;
  border-radius: var(--frs-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 16px 42px rgba(17, 24, 39, 0.07) !important;
}

.frs-testimonial-card-1 > .e-con-inner,
.frs-testimonial-card-2 > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 12px !important;
}

.frs-testimonial-title-1 h3,
.frs-testimonial-title-2 h3,
.frs-video-card h3 {
  margin: 0 !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
}

.frs-testimonial-title-1 p,
.frs-testimonial-title-2 p,
.frs-video-card p:not(.frs-video-label) {
  margin-top: 8px !important;
  font-size: 15px !important;
  color: var(--frs-muted) !important;
}

.frs-testimonial-video-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

/* Video Containers */
.frs-video-wrapper-alt .elementor-wrapper,
.frs-youtube-frame {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border-radius: var(--frs-radius) !important;
  background: #111827 !important;
}

.frs-video-wrapper-alt iframe,
.frs-youtube-frame iframe {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
}

.frs-video-label {
  margin: 0 0 12px !important;
  color: var(--frs-deep) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

/* --------------------------------------------------------------------------
   9. Growth Assessment Section & Elementor Form Styling
   -------------------------------------------------------------------------- */
.frs-landing-page .frs-form-section-container,
.frs-landing-page .frs-warm {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 84px 0 !important;
}

.frs-landing-page .frs-form-section-container > .e-con-inner {
  width: min(1120px, calc(100% - 48px)) !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.13fr) minmax(330px, 0.75fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

.frs-form-section-info,
.frs-form-section-card {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.frs-form-section-info > .e-con-inner {
  display: grid !important;
  gap: 18px !important;
}

.frs-form-section-card {
  border: 1px solid var(--frs-border) !important;
  border-radius: var(--frs-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 16px 42px rgba(17, 24, 39, 0.07) !important;
  padding: 22px !important;
}

.frs-form-section-card > .e-con-inner {
  display: grid !important;
  gap: 12px !important;
}

.frs-form-head h2,
.frs-form-main-head h2 {
  margin: 0 !important;
  font-size: 26px !important;
  line-height: 1.18 !important;
}

.frs-form-head p,
.frs-form-main-head p {
  margin-top: 8px !important;
  font-size: 15px !important;
  color: var(--frs-muted) !important;
}

/* Native Elementor Form Core Overrides */
.frs-landing-page .elementor-form-fields-wrapper {
  display: grid !important;
  gap: 10px !important;
}

.frs-landing-page .elementor-field-group {
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}

.frs-landing-page .elementor-field-group + .elementor-field-group {
  margin-top: 2px !important;
}

.frs-landing-page .elementor-field-label {
  color: var(--frs-deep) !important;
  font-size: 14px !important;
  font-weight: 780 !important;
  display: block !important;
  margin: 0 0 6px !important;
  line-height: 1.25 !important;
}

.frs-landing-page .elementor-field,
.frs-landing-page .elementor-field-textual,
.frs-landing-page select,
.frs-landing-page textarea {
  width: 100% !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: 9px 14px !important;
  border: 1px solid #cfd7e3 !important;
  border-radius: var(--frs-radius) !important;
  background: #ffffff !important;
  color: var(--frs-ink) !important;
  font-size: 16px !important;
}

.frs-landing-page textarea {
  min-height: 86px !important;
  height: 86px !important;
}

.frs-landing-page .elementor-button[type="submit"] {
  width: 100% !important;
  min-height: 46px !important;
  border-radius: var(--frs-radius) !important;
  background: var(--frs-orange) !important;
  color: #ffffff !important;
  font-weight: 850 !important;
  box-shadow: 0 14px 28px rgba(249, 115, 22, 0.25) !important;
  transition: all 0.2s ease-in-out !important;
}

.frs-landing-page .elementor-button[type="submit"]:hover {
  background: var(--frs-orange-hover) !important;
  box-shadow: 0 16px 32px rgba(249, 115, 22, 0.3) !important;
}

.frs-landing-page .elementor-field-type-submit {
  margin-top: 6px !important;
}

/* Native Elementor Form Select Specific Caret Override */
.frs-landing-page .elementor-select-wrapper.elementor-field {
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.frs-landing-page .elementor-select-wrapper select {
  display: block !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 9px 38px 9px 14px !important;
  line-height: 22px !important;
}

.frs-landing-page .select-caret-down-wrapper {
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
}

/* --------------------------------------------------------------------------
   10. Process Section (`.frs-process-section`)
   -------------------------------------------------------------------------- */
.frs-process-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.frs-process-cta {
  justify-content: center !important;
  margin-top: 34px !important;
}

/* --------------------------------------------------------------------------
   11. Strategic Reframe & Final CTA
   -------------------------------------------------------------------------- */
.frs-reframe,
.frs-final {
  background: linear-gradient(135deg, #172033 0%, #111827 100%) !important;
}

.frs-reframe {
  padding: 82px 0 !important;
}

.frs-reframe h2 {
  font-size: clamp(30px, 3.6vw, 46px) !important;
  line-height: 1.08 !important;
}

.frs-reframe p,
.frs-reframe li,
.frs-reframe h2,
.frs-final h2,
.frs-final p {
  color: #ffffff !important;
}

.frs-reframe p,
.frs-reframe li {
  color: rgba(255, 255, 255, 0.82) !important;
}

.frs-final {
  padding: 82px 0 !important;
  text-align: center !important;
}

.frs-final .frs-row {
  justify-content: center !important;
  margin-top: 28px !important;
  margin-bottom: 12px !important;
}

.frs-final .frs-small {
  color: rgba(255, 255, 255, 0.7) !important;
}

/* --------------------------------------------------------------------------
   12. Footer Disclaimer Section
   -------------------------------------------------------------------------- */
.frs-footer-disclaimer {
  width: 100% !important;
  max-width: 100% !important;
  padding: 50px !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  border-top: 1px solid var(--frs-border) !important;
}

.frs-footer-disclaimer-text,
.frs-footer-disclaimer-text p {
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  letter-spacing: 0 !important;
  color: var(--frs-muted) !important;
}

.frs-footer-disclaimer-text p {
  margin: 0 0 8px !important;
}

.frs-footer-disclaimer-text p:last-child {
  margin-bottom: 0 !important;
}

/* --------------------------------------------------------------------------
   13. Responsive Media Queries (Tablet & Mobile)
   -------------------------------------------------------------------------- */

/* TABLET MODE (max-width: 1120px) */
@media (max-width: 1120px) {
  .frs-landing-page .frs-hero-section > .e-con-inner,
  .frs-landing-page .frs-form-section-container > .e-con-inner,
  .frs-landing-page .frs-value-hero-grid,
  .frs-reframe-grid {
    grid-template-columns: 1fr !important;
  }

  .frs-card-grid,
  .frs-framework-grid,
  .frs-audit-grid,
  .frs-authority-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .frs-audit-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .frs-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .frs-column-fit-left {
    max-width: 720px !important;
  }
}

/* MOBILE MODE (max-width: 767px) */
@media (max-width: 767px) {
  .frs-wrap,
  .frs-landing-page .frs-hero-section > .e-con-inner,
  .frs-landing-page .frs-testimonial-section > .e-con-inner {
    width: min(100% - 32px, 1120px) !important;
  }

  .frs-nav {
    display: none !important;
  }

  .frs-header-inner {
    min-height: 60px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
  }

  .frs-logo {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    font-size: 15px !important;
    white-space: nowrap !important;
  }

  .frs-header .frs-nav {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
  }

  .frs-header .frs-nav a:not(.frs-btn) {
    display: none !important;
  }

  .frs-header .frs-nav .frs-btn {
    display: inline-flex !important;
    width: auto !important;
    min-width: 76px !important;
    min-height: 40px !important;
    padding: 0 15px !important;
    font-size: 14px !important;
    border-radius: 7px !important;
    white-space: nowrap !important;
  }

  .frs-landing-page .frs-hero-section,
  .frs-landing-page .frs-value-hero {
    padding-top: 38px !important;
    padding-bottom: 52px !important;
    background-size: 42px 42px, auto !important;
  }

  .frs-card-grid,
  .frs-framework-grid,
  .frs-audit-grid,
  .frs-authority-grid,
  .frs-process-grid,
  .frs-testimonial-video-grid,
  .frs-video-grid {
    grid-template-columns: 1fr !important;
  }

  .frs-form-section-info,
  .frs-form-section-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .frs-hero-copy-wrapper h1,
  .frs-value-hero h1 {
    max-width: 100% !important;
    font-size: clamp(34px, 11vw, 44px) !important;
    line-height: 1.04 !important;
  }

  .frs-lead,
  .frs-value-support,
  .frs-proof-strip p {
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  .frs-hero-copy-wrapper .frs-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: stretch !important;
  }

  .frs-hero-copy-wrapper .frs-pill,
  .frs-hero-copy-wrapper .frs-btn,
  .frs-hero-copy-wrapper .frs-link-btn {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .frs-panel,
  .frs-card,
  .frs-form-section-card,
  .frs-testimonial-card-1,
  .frs-testimonial-card-2 {
    padding: 18px !important;
  }

  .frs-list-row {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .frs-marker {
    width: max-content !important;
    min-width: 72px !important;
  }

  .frs-section,
  .frs-landing-page .frs-testimonial-section,
  .frs-reframe,
  .frs-final {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }

  .frs-section-head {
    max-width: 100% !important;
    margin-bottom: 28px !important;
  }

  .frs-section-head h2,
  .frs-testimonial-section h2,
  .frs-final h2 {
    font-size: clamp(28px, 8.5vw, 38px) !important;
    line-height: 1.1 !important;
  }

  .frs-section-head p:not(.frs-eyebrow),
  .frs-card p,
  .frs-testimonial-card-1 p,
  .frs-testimonial-card-2 p {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .frs-card h3 {
    font-size: 20px !important;
  }

  .frs-transition {
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px 18px !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
  }

  .frs-trust-item {
    min-height: auto !important;
    padding: 10px 0 10px 14px !important;
  }

  .frs-final .frs-btn {
    width: 100% !important;
    max-width: 320px !important;
  }

  .frs-footer-disclaimer {
    padding: 28px 16px !important;
  }

  .frs-footer-disclaimer-text,
  .frs-footer-disclaimer-text p {
    font-size: 12px !important;
    line-height: 1.45 !important;
  }
}

/* DEEPER MOBILE SPACING & PORTRAIT (max-width: 420px) */
@media (max-width: 420px) {
  .frs-wrap,
  .frs-landing-page .frs-hero-section > .e-con-inner {
    width: min(100% - 24px, 1120px) !important;
    max-width: calc(100% - 24px) !important;
  }

  .frs-header .frs-nav .frs-btn {
    min-width: 68px !important;
    min-height: 38px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
  }

  .frs-logo {
    font-size: 14px !important;
  }

  .frs-hero-copy-wrapper h1,
  .frs-value-hero h1 {
    font-size: clamp(31px, 10.5vw, 38px) !important;
  }

  .frs-section-head h2,
  .frs-testimonial-section h2,
  .frs-final h2 {
    font-size: 25px !important;
  }
}

/* --------------------------------------------------------------------------
   14. Elementor Custom Layout Containers Fallback overrides
   -------------------------------------------------------------------------- */
.frs-landing-page .elementor-element-35f7ee6,
.frs-landing-page .elementor-element-75a52afd,
.frs-landing-page .elementor-element-40ba38ef,
.frs-landing-page .elementor-element-3c368272 {
  width: 100% !important;
  max-width: 100% !important;
}

/* Video Placeholders Overrides */
.frs-landing-page .elementor-widget-video .elementor-wrapper {
  background: #282828 !important;
}

.frs-landing-page .elementor-widget-video iframe,
.frs-landing-page .elementor-widget-video video,
.frs-landing-page .elementor-widget-video .elementor-video,
.frs-landing-page .elementor-widget-video .elementor-custom-embed-image-overlay {
  opacity: 1 !important;
  visibility: visible !important;
}/* End custom CSS */