/* Falak Elevate — styles for the Elementor-editable version of the design.
   Every selector starts with .fe (a class on each top-level Elementor container made by the theme) so
   nothing else on the site is touched. Native Elementor panel settings (padding, background, text,
   colours set in the editor) still win because Elementor's generated selectors are more specific. */
.fe{--kit-widget-spacing:0px;font-size:15px;line-height:1.65}
.fe,.fe *,.fe *::before,.fe *::after{box-sizing:border-box}
.fe .elementor-widget:not(:last-child){margin-block-end:var(--kit-widget-spacing)}

/* neutralise Elementor kit fonts/colours so the theme typography is kept */
.fe .elementor-widget-text-editor{font-family:inherit;font-weight:inherit;font-size:inherit;line-height:inherit;color:inherit}
.fe .elementor-widget-text-editor p{margin:0}
.fe .elementor-widget-text-editor a{color:inherit;text-decoration:none}
.fe .elementor-widget-heading .elementor-heading-title{font-family:inherit;font-weight:700;color:inherit;line-height:inherit;margin:0;padding:0;font-size:inherit}
.fe .elementor-widget-heading .elementor-heading-title a{color:inherit}
.fe .elementor-widget-image img{display:block;border:0;border-radius:0}
.fe .elementor-button{font-family:inherit;box-shadow:none;text-shadow:none;text-decoration:none}
.fe .elementor-widget-shortcode .elementor-shortcode{display:block}

/* layout helpers */
.fe.fe-wrap,.fe .fe-wrap{width:min(1320px,calc(100% - 60px))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
.fe .fe-cols>*{width:auto!important;min-width:0;max-width:none}

/* ---------- buttons ---------- */
.fe .fe-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 22px;font-weight:750;font-size:13px;line-height:1.65;border-radius:7px;border:0;cursor:pointer;transition:.2s;fill:currentColor}
.fe .fe-btn .elementor-button:hover{transform:translateY(-2px)}
.fe .fe-btn .elementor-button .elementor-button-content-wrapper{gap:9px}
.fe .fe-btn-primary .elementor-button{background:#008d5d;color:#fff}
.fe .fe-btn-primary .elementor-button:hover{background:#008d5d;color:#fff}
.fe .fe-btn-white .elementor-button{background:#fff;color:#00543a}
.fe .fe-btn-white .elementor-button:hover{background:#fff;color:#00543a}
.fe .fe-btn-outline .elementor-button{background:#fff;border:1px solid #039866;color:#00754b}
.fe .fe-btn-outline .elementor-button:hover{background:#fff;color:#00754b}
.fe .fe-btn-footer{margin-bottom:10px}
.fe .fe-btn-footer .elementor-button{background:#006c49;color:#fff;padding:8px 16px;border-radius:8px;font-size:12px;font-weight:400;gap:0}
.fe .fe-btn-footer .elementor-button:hover{background:#006c49;color:#fff;transform:none}

/* ---------- shared text styles ---------- */
.fe .fe-eyebrow p{font-size:11px;font-weight:850;letter-spacing:2px;color:#038c59;margin:0 0 10px;line-height:1.65}
.fe .fe-h2 .elementor-heading-title{font-size:clamp(28px,3vw,39px);letter-spacing:-1.3px;margin:0 0 6px;line-height:1.18}
.fe .fe-intro p{color:#72817d;margin:0}
.fe .fe-intro-dark p{color:inherit;margin:9px 0 15px}
.fe .fe-browse-title .fe-btn{flex-shrink:0}
.fe .fe-title-left{min-width:0}

/* ---------- hero ---------- */
.fe.fe-hero{position:relative;background-position:center;background-size:cover;color:#fff}
.fe.fe-hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,26,20,.87) 0%,rgba(0,26,20,.54) 42%,rgba(0,26,20,.10) 100%)}
.fe.fe-hero>*{position:relative;z-index:1}
.fe .fe-hero-label p{font-size:11px;font-weight:850;letter-spacing:2px;color:#fff;margin:0;line-height:2.25}
.fe .fe-hero-title .elementor-heading-title{font-size:clamp(43px,5vw,76px);max-width:640px;line-height:1.05;letter-spacing:-2.5px;margin:12px 0}
.fe .fe-hero-lead p{font-size:18px;max-width:560px;margin:6px 0 28px;line-height:1.65}
.fe .fe-benefit p{font-size:12px;font-weight:750;color:#fff}

/* ---------- categories overlap ---------- */
.fe.fe-cats{position:relative;z-index:3;margin-top:-70px;background:linear-gradient(180deg,transparent 0 70px,#fff 70px)}

/* ---------- reasons ---------- */
.fe .fe-reason-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px!important}
.fe .fe-reason-text p{font-size:18px;color:#006a4a;line-height:1.65}
.fe .fe-reason-text b{font-size:13px;color:#122a21;font-weight:700}
.fe .fe-reason-text small{display:block;font-size:11px;color:#829188;margin-left:23px}

/* ---------- process ---------- */
.fe .fe-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px!important}
.fe .fe-step-num p{font-size:35px;font-weight:900;color:#00a066;line-height:1.65}
.fe .fe-step-title .elementor-heading-title{font-size:20px;margin:12px 0 0}
.fe .fe-step-text p{color:#64766c;margin:15px 0}

/* ---------- google review panel ---------- */
.fe .fe-review-inner{display:grid!important;grid-template-columns:1.5fr 1fr;align-items:center;gap:50px!important}
.fe .fe-review-p p{margin:9px 0 15px}
.fe .fe-google p{font-size:70px;font-weight:800;color:#4285f4;text-align:center;line-height:1.65}
.fe .fe-google span{color:#10a366}
.fe .fe-google small{display:block;font-size:15px;color:#425549}

/* ---------- final CTA ---------- */
.fe.fe-final-cta{color:#fff;text-align:center}
.fe .fe-final-cta .fe-eyebrow p,.fe.fe-final-cta .fe-eyebrow p{color:#c2e6ce}
.fe .fe-cta-title .elementor-heading-title{font-size:38px;margin:0;color:#fff;text-align:center}
.fe .fe-cta-text p{margin:15px 0;text-align:center}

/* ---------- inner page hero ---------- */
.fe.fe-page-hero{color:#fff}
.fe .fe-page-hero .fe-eyebrow p,.fe.fe-page-hero .fe-eyebrow p{color:#b7dec3}
.fe .fe-page-title .elementor-heading-title{font-size:48px;margin:0}
.fe .fe-page-lead p{margin:15px 0}

/* ---------- about ---------- */
.fe .fe-about-block{display:grid!important;grid-template-columns:1fr 1fr;gap:30px!important}
.fe .fe-about-text .fe-h2 .elementor-heading-title{margin-bottom:0}
.fe .fe-about-p p{margin:15px 0}
.fe .fe-about-img img{width:100%;border-radius:20px}

/* ---------- header ---------- */
.fe.fe-topline{color:#fff;font-size:12px}
.fe .fe-top-links p{display:flex;align-items:center;gap:20px;font-size:12px}
.fe .fe-top-links a{margin-right:15px;color:#fff}
.fe .fe-top-note p{font-size:12px;color:#fff}
.fe.fe-site-header{position:relative;z-index:25;box-shadow:0 1px 12px #102b2420}
.fe .fe-navrow{position:static!important}
.fe .fe-navrow .elementor-widget,.fe .fe-navrow .elementor-widget-container{position:static}
.fe .fe-logo{width:215px;flex-shrink:0}
.fe .fe-logo img{max-height:67px;width:auto;max-width:100%;object-fit:contain}
.fe .fe-grow{flex:1 1 auto;min-width:0}
.fe .fe-quote-btn{flex-shrink:0;width:auto}

/* ---------- footer ---------- */
.fe.fe-footer{color:#11352b}
.fe .fe-footer-grid{display:grid!important;grid-template-columns:1.5fr .8fr 1.1fr 1.3fr;gap:40px!important}
.fe .fe-fh .elementor-heading-title{font-size:14px;margin:0 0 15px}
.fe .fe-flinks p{margin:0}
.fe .fe-flinks a{display:block;font-size:12px;color:#476359;margin-bottom:10px;line-height:1.65}
.fe .fe-flinks a:hover{color:#008d5d}
.fe .fe-flinks p.fe-addr{font-size:15px;color:inherit;margin:0 0 15px}
.fe .fe-flogo img{width:190px;max-height:90px;object-fit:contain}
.fe .fe-fabout-text p{color:#476359;font-size:13px;margin:15px 0}
.fe .fe-fbottom p{font-size:11px;color:#60786f}

/* ---------- responsive ---------- */
@media(max-width:1100px){
  .fe .fe-logo{width:160px}
  .fe .fe-navrow{gap:12px!important}
}
@media(max-width:760px){
  .fe.fe-wrap,.fe .fe-wrap{width:calc(100% - 34px)!important}
  .fe.fe-cats{margin-top:-40px;background:linear-gradient(180deg,transparent 0 40px,#fff 40px)}
  .fe .fe-hero-title .elementor-heading-title{font-size:43px}
  .fe .fe-reason-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fe .fe-steps,.fe .fe-review-inner,.fe .fe-about-block{grid-template-columns:1fr}
  .fe .fe-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px!important}
  .fe .fe-fabout{grid-column:1/-1}
  .fe .fe-top-note{display:none}
  .fe .fe-top-links p{flex-wrap:wrap;gap:4px}
  .fe .fe-top-links a{font-size:10px}
  .fe .fe-logo{width:135px}
  .fe .fe-navrow{align-items:center}
  .fe .fe-navrow .fe-grow{flex:0 0 auto;margin-left:auto}
  .fe .shortlist-top{padding:10px;font-size:10px}
  .fe .fe-page-title .elementor-heading-title{font-size:48px}
}
