/* All selectors scoped to the opted-in page/components. Elementor owns editorial content. */
.ci-pos-shell{--ci-teal:#1bb1a7;--ci-ink:#252a30;color:var(--ci-ink);background:#fff;font-family:inherit;max-width:1200px;margin:0 auto}
.ci-pos-shell h1,.ci-pos-shell h2,.ci-pos-shell h3{font-family:inherit;line-height:1.18;font-weight:700;color:var(--ci-ink)}
.ci-pos-shell h1{font-size:clamp(32px,3.5vw,52px);letter-spacing:-.035em;margin:16px 0 22px}
.ci-pos-shell p{font-size:18px;line-height:1.6}
.ci-pos-accent{color:#008d86}
.ci-pos-success{display:none;background:#e5f5ec;color:#176343;padding:9px 16px;border-radius:24px;font-size:14px;font-weight:600;width:fit-content}
.ci-pos-completed .ci-pos-success{display:block}
.ci-pos-received{visibility:hidden}.ci-pos-completed .ci-pos-received{visibility:visible}.ci-pos-generic .ci-pos-received{display:none}
.ci-pos-generic-note{display:none}.ci-pos-generic .ci-pos-generic-note{display:block}
.ci-pos-identity{margin-top:48px}.ci-pos-identity p{margin:0}.ci-pos-identity strong{font-size:23px}
.ci-contact-panel:not(.ci-editorial){background:#f5fcfb;border:1px solid #d9eeeb;border-radius:12px;padding:30px;text-align:center;color:#252a30;font-family:inherit}
.ci-contact-panel:not(.ci-editorial) h2{font-size:27px;margin:0 0 24px;line-height:1.25}
.ci-contact-panel:not(.ci-editorial) h3{font-size:20px;margin:0 0 18px;line-height:1.35}
.ci-contact-panel:not(.ci-editorial) p{font-size:15px;line-height:1.5;margin:10px 0}
.ci-contact-panel:not(.ci-editorial) .ci-call-button,.ci-contact-panel:not(.ci-editorial) .ci-wa-button{display:block;width:100%;box-sizing:border-box;padding:16px 12px;border-radius:7px;text-decoration:none;font-family:inherit;font-weight:700;cursor:pointer;line-height:1.3}
.ci-contact-panel:not(.ci-editorial) .ci-call-button{background:#008d86;color:#fff;border:2px solid #008d86;font-size:28px;overflow-wrap:anywhere}
.ci-contact-panel:not(.ci-editorial) .ci-call-button:hover{background:#087b76;color:#fff}
.ci-contact-panel:not(.ci-editorial) .ci-wa-button{background:#fff;color:#087653;border:1px solid #087653;font-size:16px}
.ci-contact-panel:not(.ci-editorial) .ci-wa-button:hover{background:#edf8f1}
.ci-contact-panel:not(.ci-editorial) .ci-sms-button{border:0;background:none;color:#006f6a;text-decoration:underline;font-family:inherit;cursor:pointer;font-size:14px;line-height:1.6;padding:8px 0;white-space:normal}
.ci-contact-panel:not(.ci-editorial) .ci-call-cost{font-size:13px;margin-top:9px}
.ci-qr-area,.ci-message-area{border-top:1px solid #cfdedb;margin-top:22px;padding-top:22px}
.ci-qr,.ci-sms-qr{width:208px;min-height:208px;padding:20px;background:#fff;margin:0 auto 14px;box-sizing:border-box}
.ci-qr img,.ci-qr canvas,.ci-sms-qr img,.ci-sms-qr canvas{max-width:100%}
.ci-contact-panel:not(.ci-editorial) .ci-message-help{font-size:13px;color:#505a62}
.ci-contact-panel:not(.ci-editorial) .ci-contact-status:empty{display:none}
.ci-on-mobile{display:none}
.ci-contact-panel:not(.ci-editorial) [hidden]{display:none!important}
.ci-pos-benefit{border-top:1px solid #e5e9e8;padding-top:20px;margin-top:24px}
.ci-pos-benefit p{font-size:15px}.ci-pos-footer{text-align:center;font-size:13px;padding:26px 10px;color:#47555c}
.ci-contact-panel:not(.ci-editorial) a:focus-visible,.ci-contact-panel:not(.ci-editorial) button:focus-visible{outline:3px solid #163c58;outline-offset:3px}
@media(max-width:767px){.ci-on-wide{display:none!important}.ci-on-mobile{display:inline}.ci-contact-panel:not(.ci-editorial){padding:22px 18px}.ci-contact-panel:not(.ci-editorial) .ci-call-button{font-size:20px}.ci-pos-identity{margin-top:20px}.ci-pos-shell p{font-size:16px}.ci-pos-shell h1{font-size:34px}.ci-contact-panel:not(.ci-editorial) h2{font-size:23px}}

@media(min-width:768px) and (max-width:1024px){.ci-pos-shell>.elementor-container{flex-wrap:wrap}.ci-pos-shell>.elementor-container>.elementor-column{width:100%}.ci-contact-panel:not(.ci-editorial){max-width:620px;margin:auto}}

/* 0.3.1: Explicit foreground colors beat global theme/widget colors only in this component. */
.elementor .ci-pos-shell .elementor-widget-text-editor,
.elementor .ci-pos-shell .elementor-widget-heading .elementor-heading-title,
.elementor .ci-pos-shell p,
.elementor .ci-pos-shell h1,
.elementor .ci-pos-shell h2,
.elementor .ci-pos-shell h3,
.elementor .ci-pos-shell .ci-pos-identity,
.elementor .ci-pos-shell .ci-contact-panel:not(.ci-editorial) {color:#252a30}
.elementor .ci-pos-shell .ci-pos-accent {color:#008d86}
.elementor .ci-pos-shell .ci-pos-success {color:#176343}
.elementor .ci-pos-shell .ci-message-help {color:#505a62}
.elementor .ci-pos-shell .ci-pos-footer {color:#47555c}
.elementor .ci-pos-shell .ci-pos-footer a {color:#006f6a}
/* In the editor show editable success copy, without simulating a submitted lead. */
.elementor-editor-active .ci-pos-shell .ci-pos-success {display:block}
.elementor-editor-active .ci-pos-shell .ci-pos-received {visibility:visible}
.elementor-editor-active .ci-pos-shell .ci-pos-generic-note {display:none}

/* 0.3.2: Explicit desktop widths for this template's 55/45 columns.
   Elementor's standard column-size classes need not provide a 55/45 rule. */
@media(min-width:1025px){
 .elementor .ci-pos-shell>.elementor-container{display:flex;flex-wrap:nowrap;width:100%;max-width:1200px;margin:0 auto}
 .elementor .ci-pos-shell>.elementor-container>.elementor-column{box-sizing:border-box;min-width:0}
 .elementor .ci-pos-shell>.elementor-container>.elementor-column:first-child:not(:last-child){width:55%;flex:0 0 55%;max-width:55%}
 .elementor .ci-pos-shell>.elementor-container>.elementor-column:nth-child(2):last-child{width:45%;flex:0 0 45%;max-width:45%}
 .elementor .ci-pos-shell .elementor-widget-wrap{box-sizing:border-box;min-width:0;width:100%}
 .elementor .ci-pos-shell .ci-contact-panel:not(.ci-editorial){box-sizing:border-box;width:100%;padding:clamp(18px,2vw,30px)}
 .elementor .ci-pos-shell .ci-call-button{font-size:clamp(22px,2.05vw,28px);white-space:nowrap;overflow-wrap:normal}
}

/* 0.3.4: Gate desktop/tablet only when JavaScript is operational.
   No-JS fallback keeps the real number accessible. Mobile remains direct. */
.ci-contact-panel:not(.ci-editorial) .ci-reveal-button{display:none;width:100%;box-sizing:border-box;padding:16px 12px;border-radius:7px;background:#008d86;color:#fff;border:2px solid #008d86;font-family:inherit;font-weight:700;font-size:20px;line-height:1.3;cursor:pointer;white-space:normal}
.ci-contact-panel:not(.ci-editorial) .ci-reveal-button:hover{background:#087b76}
@media(min-width:768px){
 .ci-contact-panel:not(.ci-editorial).ci-call-gated:not(.ci-call-revealed) .ci-reveal-button{display:block}
 .ci-contact-panel:not(.ci-editorial).ci-call-gated:not(.ci-call-revealed) .ci-call-button,
 .ci-contact-panel:not(.ci-editorial).ci-call-gated:not(.ci-call-revealed) .ci-call-cost,
 .ci-contact-panel:not(.ci-editorial).ci-call-gated:not(.ci-call-revealed) .ci-call-explanation,
 .ci-contact-panel:not(.ci-editorial).ci-call-gated:not(.ci-call-revealed) .ci-qr-area{display:none!important}
}

/* Native Elementor layout: text, button labels and styles belong to Elementor. */
.ci-editorial [hidden]{display:none!important}
.ci-editorial .ci-current-number{font-size:28px;font-weight:700;overflow-wrap:anywhere}
.ci-editorial .ci-call-cost{font-size:13px}
.ci-editorial .ci-qr,.ci-editorial .ci-sms-qr{margin:0 auto}
.ci-editorial .ci-contact-status:empty{display:none}
.ci-editorial .ci-action-reveal{display:none}
.ci-editorial .ci-sms-desktop{display:none}

@media(min-width:768px){
 .ci-editorial.ci-call-gated:not(.ci-call-revealed) .ci-action-reveal{display:block}
 .ci-editorial.ci-call-gated:not(.ci-call-revealed) .ci-call-control,
 .ci-editorial.ci-call-gated:not(.ci-call-revealed) .ci-wide-call{display:none!important}
}
@media(max-width:767px){.ci-editorial .ci-wide-call{display:none!important}}
.elementor-editor-active .ci-editorial .ci-action-reveal,
.elementor-editor-active .ci-editorial .ci-sms-desktop{display:block!important}
