.elementor-15311 .elementor-element.elementor-element-0e8c446{--display:flex;--min-height:0px;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;--flex-wrap:wrap;--proradio-section-parallax:no;--proradio-section-parallax-speed:60;--margin-top:-100px;--margin-bottom:00px;--margin-left:00px;--margin-right:00px;}.elementor-15311 .elementor-element.elementor-element-0e8c446.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-15311 .elementor-element.elementor-element-c47bacc{width:var( --container-widget-width, 4000px );max-width:4000px;--container-widget-width:4000px;--container-widget-flex-grow:0;}.elementor-15311 .elementor-element.elementor-element-c47bacc.elementor-element{--align-self:stretch;--flex-grow:0;--flex-shrink:1;}@media(max-width:767px){.elementor-15311 .elementor-element.elementor-element-0e8c446{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-15311 .elementor-element.elementor-element-0e8c446{--width:1980px;}}/* Start custom CSS for html, class: .elementor-element-c47bacc *//* =========================================================
   LIGHT FM — ELEMENTOR FULL WIDTH SIZE FIX
   ADD THIS AT THE VERY END OF THE CSS
========================================================= */

/* Remove Elementor boxed limits around the HTML widget */
.elementor-widget-html,
.elementor-widget-html .elementor-widget-container{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Force the custom page sections to escape Elementor container */
.hero,
.answer-strip,
main,
.ctaband,
.cta-band,
footer{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
}

/* Remove unwanted top/side spacing from theme/page builder */
body .entry-content,
body .page-content,
body .elementor,
body .elementor-section,
body .elementor-container,
body .elementor-column,
body .elementor-widget-wrap{
  margin-left:0 !important;
  margin-right:0 !important;
}

/* Keep content centered inside full-width sections */
.wrap{
  width:min(1180px, calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Fix hero height and placement */
.hero{
  min-height:auto !important;
  padding:0 !important;
}

.hero .grid{
  width:min(1180px, calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:64px 0 58px !important;
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) minmax(340px, 440px) !important;
  gap:42px !important;
  align-items:center !important;
}

/* Fix giant text */
h1{
  font-size:clamp(42px, 5.2vw, 72px) !important;
  line-height:.96 !important;
  max-width:11ch !important;
}

/* Fix hero card size */
.hero-card{
  width:100% !important;
  max-width:440px !important;
  justify-self:end !important;
}

.player{
  padding:22px !important;
}

.player h2{
  font-size:clamp(26px, 2.4vw, 34px) !important;
}

.bars{
  height:120px !important;
}

/* Remove the duplicate custom header if still present */
.top{
  display:none !important;
}

/* Fix the first section spacing after hero */
.section{
  padding:56px 0 !important;
}

/* Cards and feature sizing */
.featured{
  width:100% !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  grid-template-columns:1.05fr .95fr !important;
}

.featured-copy{
  padding:34px !important;
}

.featured-art{
  min-height:280px !important;
}

/* Mobile */
@media(max-width:900px){
  .hero .grid{
    grid-template-columns:1fr !important;
    padding:46px 0 40px !important;
    gap:28px !important;
  }

  .hero-card{
    max-width:100% !important;
    justify-self:stretch !important;
  }

  h1{
    font-size:44px !important;
  }

  .featured{
    grid-template-columns:1fr !important;
  }

  .featured-art{
    order:-1 !important;
    min-height:210px !important;
  }
}

@media(max-width:600px){
  .wrap,
  .hero .grid{
    width:min(100%, calc(100% - 24px)) !important;
  }

  h1{
    font-size:40px !important;
  }

  .hero .lead{
    font-size:16px !important;
  }

  .btn{
    width:100% !important;
  }

  .mini-proof{
    grid-template-columns:1fr !important;
  }
}/* End custom CSS */
/* Start custom CSS */:root {
  --ink: #2A1B2E;      /* dark plum background */
  --ink-2: #3D2B42;    /* secondary plum */
  --coral: #FF6B5E;    /* main CTA / highlight */
  --amber: #FFB23E;    /* accent gold/orange */
  --cream: #FFF7F0;    /* warm page background */
  --rose: #F4D9CE;     /* soft pink/rose */
  --slate: #6B5D66;    /* muted text */
  --line: #E7D3C8;     /* borders */
  --white: #FFFFFF;
}/* End custom CSS */