.elementor-1515968 .elementor-element.elementor-element-svcanchor{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-1{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1515968 .elementor-element.elementor-element-faq-p-2{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-3{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-4{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-5{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-6{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-7{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-8{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-9{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-10{--display:flex;border-style:none;--border-style:none;--padding-top:4px;--padding-bottom:30px;--padding-left:0px;--padding-right:60px;}.elementor-1515968 .elementor-element.elementor-element-faq-acc{--n-accordion-title-font-size:1rem;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:15px;}@media(max-width:1024px){.elementor-1515968 .elementor-element.elementor-element-faq-p-1{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-2{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-3{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-4{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-5{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-6{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-7{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-8{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-9{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}.elementor-1515968 .elementor-element.elementor-element-faq-p-10{--padding-top:4px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for nested-accordion, class: .elementor-element-faq-acc */.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion{display:block;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item{border-bottom:1px solid #E5E4E0;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item-title{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:26px 0;cursor:pointer;list-style:none;background:transparent;border:0;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item-title::-webkit-details-marker{display:none;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item-title::after{content:"+";width:36px;height:36px;border-radius:999px;background:#F4F4F2;display:flex;align-items:center;justify-content:center;font-family:Sora,sans-serif;font-size:18px;font-weight:400;color:#16181A;line-height:1;flex:none;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc details[open] > .e-n-accordion-item-title::after{content:"\2212";}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item-title-header,.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item-title-text{font-family:Sora,sans-serif;font-size:clamp(17px,1.4vw,21px);font-weight:600;letter-spacing:-.025em;color:#16181A;line-height:1.3;margin:0;text-align:left;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item-title-icon{display:none;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .smg-svc-copy{font-family:Geist,sans-serif;font-size:15.5px;line-height:1.75;color:#5C6367;max-width:760px;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .smg-svc-copy p{margin:0;}
.elementor-1515968 .elementor-element.elementor-element-faq-acc .smg-svc-copy a{color:#16181A;border-bottom:1px solid #EFBF04;text-decoration:none;}
@media (max-width:767px){ .elementor-1515968 .elementor-element.elementor-element-faq-acc .e-n-accordion-item-title{gap:14px;padding:22px 0;} }/* End custom CSS */
/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Sora:wght@300;400;500;600;700;800&display=swap');

/* ---- Accent span inside headlines ---- */
.elementor-1515968.elementor-1515968 h1 span,
.elementor-1515968.elementor-1515968 h2 span{font-weight:300;color:#17A39C;}
.elementor-1515968.elementor-1515968 .who-dark h2 span,
.elementor-1515968.elementor-1515968 .cta-panel h2 span{color:#EFBF04;}

/* ---- Pill buttons: trailing dot in a soft circle ---- */
.elementor-1515968.elementor-1515968 .smg-btn-gold,
.elementor-1515968.elementor-1515968 .smg-btn-ink,
.elementor-1515968.elementor-1515968 .smg-btn-outline{position:relative;transition:background-color .2s ease,border-color .2s ease,color .2s ease;}
.elementor-1515968.elementor-1515968 .smg-btn-gold::after,
.elementor-1515968.elementor-1515968 .smg-btn-ink::after,
.elementor-1515968.elementor-1515968 .smg-btn-outline::after{content:"";flex:0 0 34px;width:34px;height:34px;border-radius:999px;}
.elementor-1515968.elementor-1515968 .smg-btn-gold::after{background:rgba(22,24,26,.12);}
.elementor-1515968.elementor-1515968 .smg-btn-ink::after,
.elementor-1515968.elementor-1515968 .smg-btn-outline::after{background:rgba(239,191,4,.18);}
.elementor-1515968.elementor-1515968 .smg-btn-gold::before,
.elementor-1515968.elementor-1515968 .smg-btn-ink::before,
.elementor-1515968.elementor-1515968 .smg-btn-outline::before{content:"";position:absolute;right:22.5px;top:50%;margin-top:-4.5px;width:9px;height:9px;border-radius:999px;}
.elementor-1515968.elementor-1515968 .smg-btn-gold::before{background:#16181A;}
.elementor-1515968.elementor-1515968 .smg-btn-ink::before,
.elementor-1515968.elementor-1515968 .smg-btn-outline::before{background:#EFBF04;}
.elementor-1515968.elementor-1515968 .smg-btn-gold:hover{background-color:#D9AD03;}
.elementor-1515968.elementor-1515968 .smg-btn-outline:hover{border-color:#16181A;}
.elementor-1515968.elementor-1515968 .cta-ghost{transition:border-color .2s ease;}
.elementor-1515968.elementor-1515968 .cta-ghost:hover{border-color:#FFFFFF;}

/* ---- Image aspect ratios ---- */
.elementor-1515968.elementor-1515968 .svc-ratio-43{aspect-ratio:4/3;}
.elementor-1515968.elementor-1515968 .svc-ratio-1610{aspect-ratio:16/10;}

/* ---- Step number badges ---- */
.elementor-1515968.elementor-1515968 .step-badge{position:absolute;top:16px;left:16px;z-index:2;}

/* ---- Sticky FAQ intro column ---- */
@media (min-width:1025px){
  .elementor-1515968.elementor-1515968 .faq-side{position:sticky;top:120px;}
}

/* ---- Inline text links ---- */
.elementor-1515968.elementor-1515968 .steps-grid a,
.elementor-1515968.elementor-1515968 .adv-copy a{color:#16181A;border-bottom:1px solid #EFBF04;text-decoration:none;}
.elementor-1515968.elementor-1515968 .who-link a{color:#16181A;border-bottom:2px solid #EFBF04;text-decoration:none;}
.elementor-1515968.elementor-1515968 .hero-card-pnum a{color:#16181A;text-decoration:none;}

/* ---- Hero strip on small screens ---- */
@media (max-width:1024px){
  .elementor-1515968.elementor-1515968 .hero-strip{border-radius:0;}
}

/* ---- Flex safety: allow flex children to shrink below intrinsic content width ---- */
.elementor-1515968.elementor-1515968 .e-flexbox-base > *{min-width:0;}
.elementor-1515968.elementor-1515968 img{max-width:100%;}
.elementor-1515968 .e-con,
.elementor-1515968 .e-atomic-element{max-width:100%;}

/* ===== Services hub additions ===== */
.elementor-1515968.elementor-1515968 .crumb{font-family:Sora,sans-serif;font-weight:500;font-size:13px;color:#5C6367;margin:0 0 26px;}
.elementor-1515968.elementor-1515968 .crumb a{color:#5C6367;text-decoration:none;}
.elementor-1515968.elementor-1515968 .crumb a:hover{color:#16181A;}
.elementor-1515968.elementor-1515968 .crumb span{color:#16181A;}

/* Quick answer */
.elementor-1515968.elementor-1515968 .ans-grid{display:grid;grid-template-columns:1fr .85fr;gap:60px;align-items:start;}
.elementor-1515968.elementor-1515968 .ans-l{display:flex;flex-direction:column;}
.elementor-1515968.elementor-1515968 .ans-panel{background:#F4F4F2;border-radius:20px;padding:clamp(28px,3vw,42px);display:block;}
.elementor-1515968.elementor-1515968 .ans-panel-h{font-size:19px;margin:0 0 24px;}
.elementor-1515968.elementor-1515968 .ans-row{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;padding:14px 0;border-top:1px solid #E5E4E0;}
.elementor-1515968.elementor-1515968 .ans-row:last-child{border-bottom:1px solid #E5E4E0;}
.elementor-1515968.elementor-1515968 .ans-rk{font-family:Sora,sans-serif;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#5C6367;margin:0;}
.elementor-1515968.elementor-1515968 .ans-rv{font-family:Geist,sans-serif;font-size:15.5px;line-height:1.6;color:#16181A;margin:0;}
.elementor-1515968.elementor-1515968 .ans-rv a{color:#16181A;text-decoration:none;border-bottom:1px solid #EFBF04;}

/* Router */
.elementor-1515968.elementor-1515968 .rtr-head{display:flex;flex-direction:column;gap:14px;margin-bottom:40px;}
.elementor-1515968.elementor-1515968 .rtr-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.elementor-1515968.elementor-1515968 .smg-router-card{display:flex;flex-direction:column;gap:10px;padding:30px 32px;border:1px solid #E5E4E0;border-radius:16px;background:#FFFFFF;transition:border-color .15s,background .15s;}
.elementor-1515968.elementor-1515968 .smg-router-card:hover{border-color:#16181A;background:#F4F4F2;}
.elementor-1515968.elementor-1515968 .smg-router-card.is-dark{background:#16181A;border-color:#16181A;}
.elementor-1515968.elementor-1515968 .smg-router-card.is-dark:hover{background:#000000;}
.elementor-1515968.elementor-1515968 .rtr-q{font-family:Geist,sans-serif;font-size:15.5px;line-height:1.6;color:#5C6367;margin:0;}
.elementor-1515968.elementor-1515968 .rtr-d{font-family:Sora,sans-serif;font-weight:600;font-size:18px;line-height:1.3;letter-spacing:-.025em;color:#16181A;margin:0;}
.elementor-1515968.elementor-1515968 .is-dark .rtr-q{color:rgba(255,255,255,.68);}
.elementor-1515968.elementor-1515968 .is-dark .rtr-d{color:#EFBF04;}

/* Services grid */
.elementor-1515968.elementor-1515968 .svcs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:44px 28px;}
.elementor-1515968.elementor-1515968 .svc-card{display:flex;flex-direction:column;}
.elementor-1515968.elementor-1515968 .svcp{position:relative;border-radius:18px;overflow:hidden;width:100%;}
.elementor-1515968.elementor-1515968 .svcp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.elementor-1515968.elementor-1515968 .svc-badge{position:absolute;top:16px;left:16px;z-index:2;background:#FFFFFF;padding:8px 16px;border-radius:999px;font-family:Sora,sans-serif;font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.14em;color:#16181A;margin:0;}
.elementor-1515968.elementor-1515968 .svc-t{padding-top:22px;margin:0;}
.elementor-1515968.elementor-1515968 .svc-b{margin:12px 0 20px;}
.elementor-1515968.elementor-1515968 .svc-list{display:flex;flex-direction:column;gap:11px;}
.elementor-1515968.elementor-1515968 .svc-li{display:flex;flex-direction:row;gap:11px;align-items:flex-start;}
.elementor-1515968.elementor-1515968 .svc-dot,.elementor-1515968.elementor-1515968 .svc-dot-t{flex:0 0 7px;width:7px;height:7px;border-radius:999px;background:#EFBF04;margin-top:8px;}
.elementor-1515968.elementor-1515968 .svc-dot-t{background:#17A39C;}
.elementor-1515968.elementor-1515968 .svc-lit{font-size:15px;margin:0;}
.elementor-1515968.elementor-1515968 .svc-link{margin-top:18px;font-family:Sora,sans-serif;font-weight:500;font-size:15.5px;}
.elementor-1515968.elementor-1515968 .svc-link a{color:#16181A;text-decoration:none;border-bottom:2px solid #EFBF04;padding-bottom:2px;}

/* How it works */
.elementor-1515968.elementor-1515968 .how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.elementor-1515968.elementor-1515968 .how-tile{background:#F4F4F2;border-radius:18px;padding:clamp(26px,2.6vw,36px);display:flex;flex-direction:column;gap:16px;}
.elementor-1515968.elementor-1515968 .how-n{font-family:Sora,sans-serif;font-weight:600;font-size:13px;letter-spacing:.16em;color:#17A39C;margin:0;}
.elementor-1515968.elementor-1515968 .how-t{font-size:20px;margin:0;}
.elementor-1515968.elementor-1515968 .how-b{margin:0;font-size:15px;}
.elementor-1515968.elementor-1515968 .how-dark{background:#16181A;}
.elementor-1515968.elementor-1515968 .how-dark .how-n{color:#EFBF04;}
.elementor-1515968.elementor-1515968 .how-dark .how-t{color:#FFFFFF;}
.elementor-1515968.elementor-1515968 .how-dark .how-b{color:rgba(255,255,255,.68);}

/* Where we work */
.elementor-1515968.elementor-1515968 .where-grid{display:grid;grid-template-columns:.42fr 1fr;gap:60px;align-items:start;}
.elementor-1515968.elementor-1515968 .where-l{display:flex;flex-direction:column;align-items:flex-start;}
.elementor-1515968.elementor-1515968 .where-p{max-width:380px;margin:0 0 30px;}
.elementor-1515968.elementor-1515968 .where-panels{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.elementor-1515968.elementor-1515968 .where-panel{background:#F4F4F2;border-radius:18px;padding:clamp(26px,3vw,38px);display:flex;flex-direction:column;gap:12px;}
.elementor-1515968.elementor-1515968 .where-t{font-size:19px;margin:0;}
.elementor-1515968.elementor-1515968 .where-d{font-size:14px;margin:0 0 6px;}
.elementor-1515968.elementor-1515968 .where-li{display:flex;flex-direction:row;gap:12px;align-items:flex-start;text-decoration:none;}
.elementor-1515968.elementor-1515968 .where-lit{font-size:15.5px;margin:0;color:#16181A;}
.elementor-1515968.elementor-1515968 .where-li:hover .where-lit{color:#17A39C;}

/* Responsive */
@media (max-width:1180px){
  .elementor-1515968.elementor-1515968 .how-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:1024px){
  .elementor-1515968.elementor-1515968 .ans-grid{grid-template-columns:1fr;gap:40px;}
}
@media (max-width:960px){
  .elementor-1515968.elementor-1515968 .rtr-grid{grid-template-columns:1fr;gap:10px;}
  .elementor-1515968.elementor-1515968 .where-grid{grid-template-columns:1fr;gap:40px;}
  .elementor-1515968.elementor-1515968 .where-panels{grid-template-columns:1fr;}
  .elementor-1515968.elementor-1515968 .how-grid{grid-template-columns:1fr;}
  .elementor-1515968.elementor-1515968 .svcs-grid{grid-template-columns:1fr;}
  .elementor-1515968.elementor-1515968 .ans-row{grid-template-columns:1fr;gap:4px;}
}

/* ===== hardened layout overrides (Elementor base classes carry higher specificity) ===== */
.elementor-1515968.elementor-1515968 .ans-grid,.elementor-1515968.elementor-1515968 .rtr-grid,.elementor-1515968.elementor-1515968 .svcs-grid,.elementor-1515968.elementor-1515968 .how-grid,.elementor-1515968.elementor-1515968 .where-grid,.elementor-1515968.elementor-1515968 .where-panels,.elementor-1515968.elementor-1515968 .ans-row{display:grid!important;}
.elementor-1515968.elementor-1515968 .ans-l,.elementor-1515968.elementor-1515968 .rtr-head,.elementor-1515968.elementor-1515968 .smg-router-card,.elementor-1515968.elementor-1515968 .svc-card,.elementor-1515968.elementor-1515968 .svc-list,.elementor-1515968.elementor-1515968 .how-tile,.elementor-1515968.elementor-1515968 .where-l,.elementor-1515968.elementor-1515968 .where-panel{display:flex!important;flex-direction:column!important;}
.elementor-1515968.elementor-1515968 .svc-li,.elementor-1515968.elementor-1515968 .where-li{display:flex!important;flex-direction:row!important;}

.elementor-1515968.elementor-1515968 .svc-dot,.elementor-1515968.elementor-1515968 .svc-dot-t,.elementor-1515968.elementor-1515968 .where-dot{flex:0 0 7px!important;width:7px!important;height:7px!important;min-width:0!important;min-height:0!important;padding:0!important;margin-top:8px!important;border-radius:999px!important;}
.elementor-1515968.elementor-1515968 .ans-p1{margin-bottom:16px!important;}


/* ===== atomic base neutralization =====
   Elementor v4 base-desktop.css sets .e-div-block-base/.e-flexbox-base{padding:10px;min-width:30px}
   at the SAME specificity as this page CSS and loads later, so it won every tie.
   The doubled page class above raises this sheet to 0,3,0 so declared values win;
   this block zeroes the containers that are pure layout wrappers. */
.elementor-1515968.elementor-1515968 .ans-grid,
.elementor-1515968.elementor-1515968 .ans-l,
.elementor-1515968.elementor-1515968 .rtr-head,
.elementor-1515968.elementor-1515968 .rtr-grid,
.elementor-1515968.elementor-1515968 .svcs-grid,
.elementor-1515968.elementor-1515968 .svc-card,
.elementor-1515968.elementor-1515968 .svcp,
.elementor-1515968.elementor-1515968 .svc-list,
.elementor-1515968.elementor-1515968 .svc-li,
.elementor-1515968.elementor-1515968 .how-grid,
.elementor-1515968.elementor-1515968 .where-grid,
.elementor-1515968.elementor-1515968 .where-l,
.elementor-1515968.elementor-1515968 .where-panels,
.elementor-1515968.elementor-1515968 .where-li,
.elementor-1515968.elementor-1515968 .faq-wrap{padding:0;min-width:0;}


/* ===== mockup type scale + rhythm =====
   The shared .smg-h2 global class renders every H2 at 50px, but the source design
   uses two scales: 44px for the narrow-column sections and 50px for the wide ones.
   The 50px on ans/rtr/where/faq is what forced the extra line wraps. */
.elementor-1515968.elementor-1515968 .ans-h2,
.elementor-1515968.elementor-1515968 .rtr-h2,
.elementor-1515968.elementor-1515968 .where-h2,
.elementor-1515968.elementor-1515968 .faq-side .smg-h2{font-size:clamp(28px,3vw,44px);}
.elementor-1515968.elementor-1515968 .ans-h2{margin-bottom:28px;}
.elementor-1515968.elementor-1515968 .where-h2{margin-bottom:26px;}
.elementor-1515968.elementor-1515968 .ans-p1{margin-bottom:20px!important;}
.elementor-1515968.elementor-1515968 .rtr-head > *{margin-block-end:0;}
.elementor-1515968.elementor-1515968 .svc-t{font-size:23px;letter-spacing:-.035em;}
.elementor-1515968.elementor-1515968 .svc-link{margin-top:24px;}
.elementor-1515968.elementor-1515968 .hero-h1{max-width:940px;}


/* ===== who-grid track sizing =====
   Source design uses grid tracks 1fr / .72fr / 1fr. As flex with flex-basis:0 the
   panels' 44px padding sits outside the distributed space, so the photo column came
   out ~45px narrow and the side panels ~24px wide each. Grid matches the design. */
.elementor-1515968.elementor-1515968 .who-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.72fr) minmax(0,1fr);gap:20px;align-items:stretch;}
@media (max-width:1180px){.elementor-1515968.elementor-1515968 .who-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}}
@media (max-width:960px){.elementor-1515968.elementor-1515968 .who-grid{grid-template-columns:minmax(0,1fr);}}/* End custom CSS */