.elementor-395 .elementor-element.elementor-element-uz4rij91{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:40px 48px;--row-gap:40px;--column-gap:48px;--flex-wrap:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-395 .elementor-element.elementor-element-uz4rij91:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-uz4rij91 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0B2C45;}.elementor-395 .elementor-element.elementor-element-up26v19x{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-395 .elementor-element.elementor-element-ualsy7aj .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;line-height:1.4em;letter-spacing:1.5px;color:#0097A7;}.elementor-395 .elementor-element.elementor-element-uyitqj69 .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:46px;font-weight:800;line-height:1.12em;color:#FFFFFF;}.elementor-395 .elementor-element.elementor-element-uq4l5p2o{font-family:"DM Sans", Sans-serif;font-size:18px;line-height:1.7em;color:#DDF1EE;}.elementor-395 .elementor-element.elementor-element-up7a1vtn .elementor-button{background-color:var( --e-global-color-86c56ab );font-family:"DM Sans", Sans-serif;font-weight:600;fill:#FFFFFF;color:#FFFFFF;border-radius:50px 50px 50px 50px;padding:15px 30px 15px 30px;}.elementor-395 .elementor-element.elementor-element-utkdevoy{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-395 .elementor-element.elementor-element-ugxxzmil img{width:100%;border-radius:16px 16px 16px 16px;}.elementor-395 .elementor-element.elementor-element-295832b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-395 .elementor-element.elementor-element-uh9znqrn{--display:flex;}.elementor-395 .elementor-element.elementor-element-uh9znqrn:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-uh9znqrn > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-395 .elementor-element.elementor-element-tir2jh2{--display:flex;}.elementor-395 .elementor-element.elementor-element-lebm3hz{--display:flex;}.elementor-395 .elementor-element.elementor-element-8zuau6x{--display:flex;}.elementor-395 .elementor-element.elementor-element-4qdxqtm{--display:flex;}.elementor-395 .elementor-element.elementor-element-o8ta67j{--display:flex;}.elementor-395 .elementor-element.elementor-element-qea4of6{--display:flex;}.elementor-395 .elementor-element.elementor-element-eaezhew{--display:flex;}.elementor-395 .elementor-element.elementor-element-fp135g2{--display:flex;}.elementor-395 .elementor-element.elementor-element-gm5y8xu{--display:flex;}.elementor-395 .elementor-element.elementor-element-ndiupka{--display:flex;}.elementor-395 .elementor-element.elementor-element-ltp84u6{--display:flex;}.elementor-395 .elementor-element.elementor-element-ltp84u6:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-ltp84u6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F0EB;}.elementor-395 .elementor-element.elementor-element-oridhis{--display:flex;}.elementor-395 .elementor-element.elementor-element-uhsdzejr{--display:flex;}.elementor-395 .elementor-element.elementor-element-uhsdzejr:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-uhsdzejr > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E0F4F1;}.elementor-395 .elementor-element.elementor-element-93e25cz{--display:flex;}.elementor-395 .elementor-element.elementor-element-pzwojjx{--display:flex;}.elementor-395 .elementor-element.elementor-element-l4v0sna{--display:flex;}.elementor-395 .elementor-element.elementor-element-bo5j2i4{--display:flex;}.elementor-395 .elementor-element.elementor-element-zhf8n6y{--display:flex;}.elementor-395 .elementor-element.elementor-element-figfsqm{--display:flex;}.elementor-395 .elementor-element.elementor-element-0cra2hc{--display:flex;}.elementor-395 .elementor-element.elementor-element-unwnu0n0{--display:flex;}.elementor-395 .elementor-element.elementor-element-unwnu0n0:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-unwnu0n0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F0EB;}.elementor-395 .elementor-element.elementor-element-wwgjiq1{--display:flex;}.elementor-395 .elementor-element.elementor-element-ugzggsnt{--display:flex;}.elementor-395 .elementor-element.elementor-element-ugzggsnt:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-ugzggsnt > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-395 .elementor-element.elementor-element-av4bkt1{--display:flex;}.elementor-395 .elementor-element.elementor-element-638u80h{--display:flex;}.elementor-395 .elementor-element.elementor-element-jfgfjmp{--display:flex;}.elementor-395 .elementor-element.elementor-element-zv35m1s{--display:flex;}.elementor-395 .elementor-element.elementor-element-93b8e36{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-395 .elementor-element.elementor-element-ulctawh8{--display:flex;}.elementor-395 .elementor-element.elementor-element-ulctawh8:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-ulctawh8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(160deg, #0F3554 0%, #0B2C45 100%);}.elementor-395 .elementor-element.elementor-element-a9j4x3c{--display:flex;}.elementor-395 .elementor-element.elementor-element-gnqrpo9{--display:flex;--padding-top:56px;--padding-bottom:64px;--padding-left:20px;--padding-right:20px;}.elementor-395 .elementor-element.elementor-element-gnqrpo9:not(.elementor-motion-effects-element-type-background), .elementor-395 .elementor-element.elementor-element-gnqrpo9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F0EB;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-395 .elementor-element.elementor-element-up26v19x{--width:54%;}.elementor-395 .elementor-element.elementor-element-utkdevoy{--width:40%;}}@media(max-width:767px){.elementor-395 .elementor-element.elementor-element-uz4rij91{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-395 .elementor-element.elementor-element-up26v19x{--width:100%;}.elementor-395 .elementor-element.elementor-element-up7a1vtn.elementor-element{--align-self:center;}.elementor-395 .elementor-element.elementor-element-utkdevoy{--width:100%;}}/* Start custom CSS *//* price cards: equal height + top-aligned across the row */
body.elementor-page-395 .elementor-widget-price-table{height:100%;}
body.elementor-page-395 .elementor-widget-price-table > .elementor-widget-container{height:100%;}
body.elementor-page-395 .elementor-price-table{height:100%;display:flex;flex-direction:column;}
body.elementor-page-395 .elementor-price-table__features-list{flex:1 0 auto;}

/* inline links: theme default #0097A7 fails AA (3.10 on Warm Sand). Navy + underline = 11.19, matches house pattern */
body.elementor-page-395 .elementor-widget-text-editor a{color:#0F3554;font-weight:600;text-decoration:underline;text-underline-offset:2px;}
body.elementor-page-395 .elementor-widget-text-editor a:hover{color:#3A7E7D;}
body.elementor-page-395 .elementor-widget-text-editor a:focus-visible{outline:3px solid #3A7E7D;outline-offset:2px;border-radius:2px;}



/* ===== Lutronic Ultra Laser (395) — page-scoped v2 build ===== */
body.elementor-page-395 .ul-sec{padding:44px 20px}
body.elementor-page-395 .ul-sec>.e-con-inner{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:0}
body.elementor-page-395 .ul-kicker{margin:0 0 8px;font-family:"DM Sans",sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#00727E}
body.elementor-page-395 .ul-h2{margin:0 0 10px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:clamp(24px,4.2vw,34px);line-height:1.2;color:#0F3554}
body.elementor-page-395 .ul-intro p{margin:0 0 22px;font-family:"DM Sans",sans-serif;font-size:15px;line-height:1.7;color:#3F4B4E}
/* --- science figure --- */
body.elementor-page-395 .ul-figure{padding:0;margin:0 0 24px}
body.elementor-page-395 .ul-figimg img{width:100%;border-radius:16px;box-shadow:0 8px 28px rgba(15,53,84,.14);display:block}
body.elementor-page-395 .ul-figcap p{margin:8px 0 0;font-family:"DM Sans",sans-serif;font-size:11.5px;line-height:1.6;color:#54646B;text-align:center}
/* --- numbered rail --- */
body.elementor-page-395 .ul-rail{position:relative;padding:0;gap:22px}
body.elementor-page-395 .ul-rail:before{content:"";position:absolute;left:17px;top:18px;bottom:18px;width:2px;background:linear-gradient(180deg,#0097A7,rgba(0,151,167,0));z-index:0}
body.elementor-page-395 .ul-step{flex-direction:row!important;align-items:flex-start;gap:14px;position:relative;z-index:1;padding:0}
body.elementor-page-395 .ul-num{width:36px;height:36px;border-radius:50%;background:#0F3554;color:#fff;display:flex;align-items:center;justify-content:center;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:15px;box-shadow:0 0 0 4px #fff;flex:0 0 36px}
body.elementor-page-395 .ul-stepbody{padding:0;gap:0}
body.elementor-page-395 .ul-steph3{margin:6px 0 4px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:16px;color:#0F3554}
body.elementor-page-395 .ul-stepp p{margin:0;font-family:"DM Sans",sans-serif;font-size:14px;line-height:1.7;color:#54646B}
/* --- comparison --- */
body.elementor-page-395 .ul-diag{background:#fff;border:1px solid rgba(15,53,84,.1);border-radius:16px;padding:18px;margin:0 0 20px}
body.elementor-page-395 .ul-diag-title{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:15px;color:#0F3554;margin-bottom:14px}
body.elementor-page-395 .ul-diag-plot{position:relative;height:150px;border-radius:12px;background:linear-gradient(180deg,#FDF7F2 0%,#EAD9CB 55%,#D6BCA6 100%);overflow:hidden}
body.elementor-page-395 .ul-diag-lbl{position:absolute;left:10px;font-family:"DM Sans",sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#54646B}
body.elementor-page-395 .ul-diag-lbl--s{top:6px}body.elementor-page-395 .ul-diag-lbl--e{top:52px}body.elementor-page-395 .ul-diag-lbl--d{top:104px}
body.elementor-page-395 .ul-diag-bar{position:absolute;border-radius:8px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:12px;color:#fff}
body.elementor-page-395 .ul-diag-bar--light{left:38%;top:8px;width:24%;height:52px;background:#3A7E7D}
body.elementor-page-395 .ul-diag-bar--ultra{left:68%;top:8px;width:24%;height:118px;background:#0F3554}
body.elementor-page-395 .ul-diag-note{margin:10px 0 0;font-family:"DM Sans",sans-serif;font-size:11.5px;line-height:1.6;color:#54646B}
body.elementor-page-395 .ul-opts{display:grid;grid-template-columns:1fr;gap:14px;margin:0 0 22px}
body.elementor-page-395 .ul-opt{border-radius:16px;padding:18px}
body.elementor-page-395 .ul-opt--light{background:#fff;border:1px solid rgba(15,53,84,.12)}
body.elementor-page-395 .ul-opt--ultra{background:#0F3554}
body.elementor-page-395 .ul-opt-eyebrow{font-family:"DM Sans",sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
body.elementor-page-395 .ul-opt--light .ul-opt-eyebrow{color:#00727E}
body.elementor-page-395 .ul-opt--ultra .ul-opt-eyebrow{color:#7fd8cf}
body.elementor-page-395 .ul-opt-h3{margin:0 0 6px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:19px}
body.elementor-page-395 .ul-opt--light .ul-opt-h3{color:#0F3554}
body.elementor-page-395 .ul-opt--ultra .ul-opt-h3{color:#fff}
body.elementor-page-395 .ul-opt-p{margin:0 0 12px;font-family:"DM Sans",sans-serif;font-size:14px;line-height:1.7}
body.elementor-page-395 .ul-opt--light .ul-opt-p{color:#54646B}
body.elementor-page-395 .ul-opt--ultra .ul-opt-p{color:#CFE3E6}
body.elementor-page-395 .ul-opt-list{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:7px}
body.elementor-page-395 .ul-opt-list li{position:relative;padding-left:18px;font-family:"DM Sans",sans-serif;font-size:13.5px;line-height:1.6}
body.elementor-page-395 .ul-opt-list li:before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%}
body.elementor-page-395 .ul-opt--light .ul-opt-list li{color:#54646B}
body.elementor-page-395 .ul-opt--light .ul-opt-list li:before{background:#3A7E7D}
body.elementor-page-395 .ul-opt--ultra .ul-opt-list li{color:#CFE3E6}
body.elementor-page-395 .ul-opt--ultra .ul-opt-list li:before{background:#7fd8cf}
body.elementor-page-395 .ul-opt-price{display:flex;align-items:baseline;gap:6px}
body.elementor-page-395 .ul-opt-from{font-family:"DM Sans",sans-serif;font-size:12px;font-weight:600}
body.elementor-page-395 .ul-opt-amt{font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:26px}
body.elementor-page-395 .ul-opt--light .ul-opt-from{color:#54646B}body.elementor-page-395 .ul-opt--light .ul-opt-amt{color:#0F3554}
body.elementor-page-395 .ul-opt--ultra .ul-opt-from{color:#9FC2C8}body.elementor-page-395 .ul-opt--ultra .ul-opt-amt{color:#fff}
body.elementor-page-395 .ul-glance{margin:0 0 10px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:16px;color:#0F3554}
body.elementor-page-395 .ul-tbl{width:100%;border-collapse:collapse;background:#fff;border:1px solid rgba(15,53,84,.1);border-radius:14px;overflow:hidden;margin:0 0 22px;font-family:"DM Sans",sans-serif}
body.elementor-page-395 .ul-tbl th,body.elementor-page-395 .ul-tbl td{padding:10px 12px;font-size:13px;text-align:left;border-top:1px solid rgba(15,53,84,.08)}
body.elementor-page-395 .ul-tbl thead th{background:#F7FAFA;color:#0F3554;font-weight:700;font-size:12.5px;border-top:0}
body.elementor-page-395 .ul-tbl tbody th{color:#54646B;font-weight:600;width:28%}
body.elementor-page-395 .ul-tbl tbody td{color:#3F4B4E}
body.elementor-page-395 .ul-why{background:#E0F4F1;border-radius:16px;padding:18px;margin:0 0 22px}
body.elementor-page-395 .ul-why h3{margin:0 0 8px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:16px;color:#0F3554}
body.elementor-page-395 .ul-why p{margin:0 0 8px;font-family:"DM Sans",sans-serif;font-size:14px;line-height:1.7;color:#3F4B4E}
body.elementor-page-395 .ul-why p:last-child{margin-bottom:0}
body.elementor-page-395 .ul-consult{background:#0F3554;border-radius:16px;padding:20px;margin:0 0 16px;align-items:center;text-align:center;gap:0}
body.elementor-page-395 .ul-consult-h3{margin:0 0 6px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:17px;color:#fff}
body.elementor-page-395 .ul-consult-p p{margin:0 0 14px;font-family:"DM Sans",sans-serif;font-size:14px;line-height:1.6;color:#CFE3E6}
body.elementor-page-395 .ul-disc p{margin:0;font-family:"DM Sans",sans-serif;font-size:11.5px;line-height:1.6;color:#54646B}
/* --- addresses list card --- */
body.elementor-page-395 .ul-listcard{background:#fff;border-radius:18px;padding:4px 18px;gap:0}
body.elementor-page-395 .ul-item{padding:16px 0;gap:0;border-top:1px solid rgba(15,53,84,.09)}
body.elementor-page-395 .ul-item:first-child{border-top:0}
body.elementor-page-395 .ul-item-h3{margin:0 0 5px;position:relative;padding-left:16px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:15.5px;color:#0F3554}
body.elementor-page-395 .ul-item-h3:before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;background:#3A7E7D}
body.elementor-page-395 .ul-item-p p{margin:0;padding-left:16px;font-family:"DM Sans",sans-serif;font-size:13.5px;line-height:1.7;color:#54646B}
/* --- pricing tiers --- */
body.elementor-page-395 .ul-tiergrid{gap:14px;padding:0}
body.elementor-page-395 .ul-tier{background:#fff;border:1px solid rgba(15,53,84,.1);border-radius:16px;padding:18px;position:relative}
body.elementor-page-395 .ul-tier--featured{background:#0F3554;border-color:#0F3554}
body.elementor-page-395 .ul-badge{display:inline-block;background:#1D415E;color:#7fd8cf;font-family:"DM Sans",sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:999px;margin-bottom:10px}
body.elementor-page-395 .ul-tier-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
body.elementor-page-395 .ul-tier-h3{margin:0;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:17px;color:#0F3554}
body.elementor-page-395 .ul-tier-price{font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:24px;color:#0F3554;white-space:nowrap}
body.elementor-page-395 .ul-tier--featured .ul-tier-h3,body.elementor-page-395 .ul-tier--featured .ul-tier-price{color:#fff}
body.elementor-page-395 .ul-tier-sub{margin:4px 0 12px;font-family:"DM Sans",sans-serif;font-size:12.5px;color:#54646B}
body.elementor-page-395 .ul-tier--featured .ul-tier-sub{color:#9FC2C8}
body.elementor-page-395 .ul-feat{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
body.elementor-page-395 .ul-feat li{position:relative;padding-left:20px;font-family:"DM Sans",sans-serif;font-size:13.5px;line-height:1.6;color:#3F4B4E}
body.elementor-page-395 .ul-feat li:before{content:"✓";position:absolute;left:0;top:0;font-weight:700;color:#00727E}
body.elementor-page-395 .ul-tier--featured .ul-feat li{color:#CFE3E6}
body.elementor-page-395 .ul-tier--featured .ul-feat li:before{color:#7fd8cf}
body.elementor-page-395 .ul-note p{margin:16px 0 0;font-family:"DM Sans",sans-serif;font-size:12.5px;line-height:1.7;color:#54646B}
body.elementor-page-395 .ul-note a{color:#00727E;font-weight:600;text-decoration:underline}
/* --- pairings --- */
body.elementor-page-395 .ul-pairgrid{gap:14px;padding:0}
body.elementor-page-395 .ul-pair{background:linear-gradient(180deg,#F2FAF8,#fff);border:1px solid rgba(0,151,167,.22);border-radius:16px;padding:18px;gap:0}
body.elementor-page-395 .ul-plus{width:30px;height:30px;border-radius:50%;background:#3A7E7D;color:#fff;display:flex;align-items:center;justify-content:center;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:17px;margin-bottom:10px}
body.elementor-page-395 .ul-pair-h3{margin:0 0 6px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:16px;color:#0F3554}
body.elementor-page-395 .ul-pair-p p{margin:0;font-family:"DM Sans",sans-serif;font-size:13.5px;line-height:1.7;color:#54646B}
/* --- CTA --- */
body.elementor-page-395 .ul-cta{text-align:center}
body.elementor-page-395 .ul-cta>.e-con-inner{align-items:center}
body.elementor-page-395 .ul-cta-h2{margin:0 0 10px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:clamp(22px,4vw,30px);color:#fff}
body.elementor-page-395 .ul-cta-p p{margin:0 0 20px;font-family:"DM Sans",sans-serif;font-size:14.5px;line-height:1.7;color:#CFE3E6}
body.elementor-page-395 .ul-btnrow{flex-direction:row!important;flex-wrap:wrap;justify-content:center;gap:10px;padding:0}
body.elementor-page-395 .ul-btn .elementor-button{border-radius:999px;font-family:"DM Sans",sans-serif;font-weight:700;font-size:14px;padding:13px 22px}
body.elementor-page-395 .ul-btn--primary .elementor-button{background:#00727E;color:#fff}
body.elementor-page-395 .ul-btn--ghost .elementor-button{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55)}
body.elementor-page-395 .ul-btn .elementor-button:focus-visible{outline:2px solid #7fd8cf;outline-offset:2px}
@media(max-width:380px){
body.elementor-page-395 .ul-tier-top{flex-direction:column;align-items:flex-start;gap:2px}
body.elementor-page-395 .ul-btnrow{flex-direction:column!important;width:100%}
body.elementor-page-395 .ul-btn{width:100%}
}
/* ===== end Lutronic Ultra build ===== */
/* --- container flex must use Elementor's CSS custom props, not raw flex-* --- */
body.elementor-page-395 .ul-sec{--gap:0px}
body.elementor-page-395 .ul-rail{--gap:22px}
body.elementor-page-395 .ul-step{--flex-direction:row;--align-items:flex-start;--gap:14px;--container-widget-width:auto}
body.elementor-page-395 .ul-stepbody{--gap:0px;flex:1 1 auto;min-width:0}
body.elementor-page-395 .ul-listcard{--gap:0px}
body.elementor-page-395 .ul-item{--gap:0px}
body.elementor-page-395 .ul-tiergrid{--gap:14px}
body.elementor-page-395 .ul-pairgrid{--gap:14px}
body.elementor-page-395 .ul-pair{--gap:0px}
body.elementor-page-395 .ul-consult{--align-items:center;--gap:0px}
body.elementor-page-395 .ul-figure{--gap:0px}
body.elementor-page-395 .ul-btnrow{--flex-direction:row;--justify-content:center;--flex-wrap:wrap;--gap:10px;--container-widget-width:auto}
body.elementor-page-395 .ul-cta>.e-con-inner{--align-items:center}
@media(max-width:380px){
body.elementor-page-395 .ul-btnrow{--flex-direction:column;--container-widget-width:100%}
}
/* === end flex prop patch === */
/* --- rail row: child containers default to width:100% and wrap; force nowrap + auto body --- */
body.elementor-page-395 .ul-step{--flex-wrap:nowrap}
body.elementor-page-395 .ul-stepbody{width:auto!important;flex:1 1 auto;min-width:0}
body.elementor-page-395 .ul-step>.elementor-widget{width:36px;flex:0 0 36px}
/* === end rail row patch === */
/* --- KIT-OVERRIDE GUARD: kit colours .elementor-heading-title directly (shipping retired #0F3D4A).
       Heading widget wrappers do not cascade, so every heading must target the inner title. --- */
body.elementor-page-395 .ul-kicker .elementor-heading-title{color:#00727E;font-family:"DM Sans",sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}
body.elementor-page-395 .ul-h2 .elementor-heading-title{color:#0F3554;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:clamp(24px,4.2vw,34px);line-height:1.2}
body.elementor-page-395 .ul-steph3 .elementor-heading-title{color:#0F3554;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:16px;line-height:1.35}
body.elementor-page-395 .ul-item-h3 .elementor-heading-title{color:#0F3554;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:15.5px}
body.elementor-page-395 .ul-pair-h3 .elementor-heading-title{color:#0F3554;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:16px}
body.elementor-page-395 .ul-glance .elementor-heading-title{color:#0F3554;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:16px}
body.elementor-page-395 .ul-consult-h3 .elementor-heading-title{color:#FFFFFF;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:17px}
body.elementor-page-395 .ul-cta-h2 .elementor-heading-title{color:#FFFFFF;font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;font-size:clamp(22px,4vw,30px);line-height:1.2}
/* === end kit-override guard === */
/* --- CTA band: this container rejects background-color (something outranks even inline !important),
       but background-image paints. Use the gradient as background-image with !important. --- */

/* === end CTA band fix === */
/* --- CTA band via pseudo-element.
       This container refuses background paint (Elementor's own rule, page CSS, and even inline
       !important background-color are all rejected on it, while every sibling section accepts
       theirs). Cause unresolved; a ::before layer paints independently and is stable. --- */
body.elementor-page-395 .ul-sec.ul-cta{position:relative;isolation:isolate;overflow:hidden}
body.elementor-page-395 .ul-sec.ul-cta::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(160deg,#0F3554 0%,#0B2C45 100%);z-index:-1;pointer-events:none}
/* === end CTA band pseudo fix === */
/* === DESKTOP layout pass (min-width only; mobile untouched) — 2026-07-18 ===
   Mobile (<1000px) is the approved verified layout and is deliberately NOT altered.
   Mirrors the Ultra design vocabulary: 1240 boxed measure, multi-column where content supports it.
   Rollback: delete this block. */
@media (min-width:1000px){
  body.elementor-page-395 .e-con.e-parent > .e-con-inner{max-width:1240px;margin-left:auto;margin-right:auto}
  body.elementor-page-395 .ul-tiergrid{flex-direction:row!important;flex-wrap:nowrap;gap:18px;align-items:stretch}
  body.elementor-page-395 .ul-tiergrid > *{flex:1 1 0;min-width:0;width:auto!important}
  body.elementor-page-395 .ul-listcard{flex-direction:row!important;flex-wrap:wrap;gap:0 32px}
  body.elementor-page-395 .ul-listcard > .ul-item{width:calc(50% - 16px)!important;flex:0 0 calc(50% - 16px)}
  body.elementor-page-395 .ul-tiergrid,body.elementor-page-395 .ul-listcard{max-width:1240px;margin-left:auto;margin-right:auto}
  body.elementor-page-395 .ul-intro,body.elementor-page-395 .ul-stepp,body.elementor-page-395 .ul-item p{max-width:68ch}
}

/* === Hero contrast fix — 2026-07-18 ===
   Kicker was raw Teal Core #0097A7 on navy (below AA); intro could inherit the kit navy body colour. */
body.elementor-page-395 .e-con.e-parent:first-of-type .ul-kicker .elementor-heading-title{color:#7FD8CF}
body.elementor-page-395 .e-con.e-parent:first-of-type .elementor-widget-text-editor,
body.elementor-page-395 .e-con.e-parent:first-of-type .elementor-widget-text-editor p{color:#DDF1EE}

/* kicker: the hero eyebrow widget carries no .ul-kicker class, so target the first heading
   widget in the hero. Raw Teal Core #0097A7 on navy is 3.61:1 (below AA) -> #7FD8CF = 8.65 AAA. */
body.elementor-page-395 .e-con.e-parent:first-of-type .elementor-widget-heading:first-of-type .elementor-heading-title{color:#7FD8CF!important}/* End custom CSS */