/* PWMP content pages - As New Again (x- classes added by the content build) */
:root{--x-accent-lt:#ffb26b;--x-navy:#010850;--x-red:#d4223a;--x-tint:#EDEEF3}

/* H1: location line in the light accent */
/* hero accent: saturated orange with a navy outline + glow so it reads on any photo */
.cm-h1 .x-loc,.cm-h1 .x-accent{color:#ff9b1f!important;font-style:inherit;text-shadow:-2px -2px 0 #010850,2px -2px 0 #010850,-2px 2px 0 #010850,2px 2px 0 #010850,0 3px 0 #010850,0 0 22px rgba(1,8,80,.85),0 0 40px rgba(1,8,80,.6)}
.cm-h1 .x-loc{font-weight:700!important;letter-spacing:.09em}
.cm-h1 .x-accent{font-style:normal}
.cm-h1 .elementor-heading-title,.cm-h1 .h1txt{text-wrap:balance}
@media(max-width:767px){body .elementor .elementor-element.cm-h1 .elementor-widget-container strong.h1txt{font-size:29px!important;line-height:1.1em!important}}

/* balanced headings */
.cm-h2 .elementor-heading-title,.cm-h3 .elementor-heading-title{text-wrap:balance}

/* inline links bold */
.elementor-widget-text-editor a,.uael-faq-content a{font-weight:700}
.x-ftr-cta-text a,.x-rc-text a{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.x-ftr-cta-text a:hover{color:var(--x-accent-lt)!important}

/* before/after sliders: label text is the keyword (used as alt); show Before / After on screen */
.uael-before-after-slider .twentytwenty-before-label:before{content:"Before"!important;background:var(--x-navy)!important;font-weight:700;text-transform:uppercase;border-radius:30px!important}
.uael-before-after-slider .twentytwenty-after-label:before{content:"After"!important;background:var(--x-red)!important;font-weight:700;text-transform:uppercase;border-radius:30px!important}
.uael-before-after-slider .twentytwenty-before-label,.uael-before-after-slider .twentytwenty-after-label{opacity:1!important}

/* FAQ widget full width inside the service FAQ row */
.x-faq-row>.e-con,.x-faq-row .elementor-widget-uael-faq{width:100%!important;max-width:100%}

/* centered card rows, leftovers centered */
.x-center-row{justify-content:center!important;flex-wrap:wrap!important}

/* type cards without a photo */
.x-noimg{padding-top:10px}

/* plain sections (pricing, guarantee, extra topics) */
.x-plain-sec .cm-row{justify-content:center}
.elementor-widget.x-plain{max-width:980px;width:100%;margin-left:auto!important;margin-right:auto!important;align-self:center!important}
.x-plain ul,.x-plain ol{display:inline-block;text-align:left;margin-left:0;padding-left:1.2em}
.x-plain p{margin-bottom:1em}

/* pricing tables */
.x-table-wrap{max-width:1000px;margin:10px auto 24px;overflow:visible}
.x-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 24px rgba(1,8,80,.08);text-align:left}
.x-table th{background:var(--x-navy);color:#fff;font-weight:700;padding:14px 18px;font-size:16px;border:0}
.x-table td{padding:14px 18px;border:0;border-top:1px solid #E3E6EF;vertical-align:top;font-size:16px;line-height:1.55}
.x-table tbody tr:nth-child(even) td{background:#F7F8FB}
.x-price-table td:first-child{width:32%;font-weight:800;color:var(--x-red)}
.x-price-table td:first-child strong{font-weight:800}
.x-table-3 th:nth-child(1){width:24%}.x-table-3 th:nth-child(2){width:38%}.x-table-3 th:nth-child(3){width:38%}
.x-table-3 td:first-child{font-weight:800;color:var(--x-navy)}
@media(max-width:767px){
  .x-table thead{display:none}
  .x-table,.x-table tbody,.x-table tr,.x-table td{display:block;width:100%!important}
  .x-table tr{border-top:1px solid #E3E6EF;padding:6px 0}
  .x-table td{border:0;padding:6px 16px}
  .x-table-3 td:not(:first-child):before{content:attr(data-label);display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6b7083}
}

/* room for the closing band's curve when a plain section sits right above it */
.x-plain-sec:has(+ .x-red){padding-bottom:calc(100vw * .12 + 60px)!important}

/* About: Our Commitment + service-page guarantees - split card, navy shield panel + copy */
.elementor-widget.x-promise-text{max-width:980px;background:linear-gradient(135deg,#fff 0%,#fff 60%,#faeff1 100%);border-radius:24px;box-shadow:0 24px 60px rgba(1,8,80,.16);padding:44px 48px 44px 300px!important;position:relative;overflow:hidden;text-align:left!important;min-height:230px;display:flex;align-items:center}
.elementor-widget.x-promise-text:before{content:"";position:absolute;left:0;top:0;bottom:0;width:250px;background:radial-gradient(circle at 30% 25%,#1b2a9a 0%,var(--x-navy) 70%);border-radius:24px 120px 120px 24px}
.elementor-widget.x-promise-text:after{content:"";position:absolute;left:55px;top:50%;width:140px;height:140px;transform:translateY(-50%);border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l8 3v6c0 5-3.4 9.3-8 11-4.6-1.7-8-6-8-11V5l8-3z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E") center/62% no-repeat;box-shadow:0 0 0 10px rgba(255,255,255,.12),0 0 0 22px rgba(255,255,255,.06),0 12px 30px rgba(0,0,0,.35)}
.x-promise-text p{font-size:17px;line-height:1.75;text-align:left}
.x-promise-text p:first-child{font-weight:700;color:var(--x-navy);font-size:19px;line-height:1.5}
.x-promise-text p:last-child{margin-bottom:0}
@media(max-width:767px){
  .elementor-widget.x-promise-text{display:block;padding:200px 22px 28px!important;text-align:center!important}
  .elementor-widget.x-promise-text:before{width:auto;right:0;bottom:auto;height:170px;border-radius:24px 24px 50% 50%/24px 24px 40px 40px}
  .elementor-widget.x-promise-text:after{left:50%;top:85px;width:110px;height:110px;transform:translate(-50%,-50%)}
  .x-promise-text p{text-align:center}
}
/* location-page guarantee cards: shield medallion in place of an icon */
.x-promise .cm-col-4{position:relative}
.x-promise .cm-col-4>.elementor-widget-heading:first-child,.x-promise .cm-col-4>.e-con-inner>.elementor-widget-heading:first-child{margin-top:66px!important}
.x-promise .cm-col-4:before{content:"";position:absolute;left:50%;top:18px;width:62px;height:62px;transform:translateX(-50%);border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l8 3v6c0 5-3.4 9.3-8 11-4.6-1.7-8-6-8-11V5l8-3z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E") center/58% no-repeat;box-shadow:0 0 0 6px rgba(1,8,80,.08),0 8px 18px rgba(212,34,58,.35)}

.elementor-widget.x-boxed{max-width:980px;background:linear-gradient(135deg,#fff 0%,#fff 60%,#faeff1 100%);border-radius:24px;box-shadow:0 24px 60px rgba(1,8,80,.16);padding:44px 48px 44px 300px!important;position:relative;overflow:hidden;text-align:left!important}
.elementor-widget.x-boxed:before{content:"";position:absolute;left:0;top:0;bottom:0;width:250px;background:radial-gradient(circle at 30% 25%,#1b2a9a 0%,var(--x-navy) 70%);border-radius:24px 120px 120px 24px}
.elementor-widget.x-boxed:after{content:"";position:absolute;left:55px;top:50%;width:140px;height:140px;transform:translateY(-50%);border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l8 3v6c0 5-3.4 9.3-8 11-4.6-1.7-8-6-8-11V5l8-3z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E") center/62% no-repeat;box-shadow:0 0 0 10px rgba(255,255,255,.12),0 0 0 22px rgba(255,255,255,.06),0 12px 30px rgba(0,0,0,.35)}
.x-boxed p{font-size:17px;line-height:1.75;text-align:left}
.x-boxed p:first-child{font-weight:700;color:var(--x-navy);font-size:20px;line-height:1.5}
.x-boxed p:last-child{margin-bottom:0}
@media(max-width:767px){
  .elementor-widget.x-boxed{padding:200px 22px 28px!important;text-align:center!important}
  .elementor-widget.x-boxed:before{width:auto;right:0;bottom:auto;height:170px;border-radius:24px 24px 50% 50%/24px 24px 40px 40px}
  .elementor-widget.x-boxed:after{left:50%;top:85px;width:110px;height:110px;transform:translate(-50%,-50%)}
  .x-boxed p{text-align:center}
}

/* About: Our Services - cards with an overlapping check badge and a watermark number */
.x-svc-cards .x-center-row{row-gap:44px!important;counter-reset:svc}
.x-svc-cards .x-noimg{padding-top:22px;counter-increment:svc}
.x-svc-cards .x-center-row,.x-svc-cards .x-noimg,.x-svc-cards .x-noimg>.e-con{overflow:visible!important;--overflow:visible}
.x-svc-cards .x-noimg>.e-con>.e-con{overflow:hidden;border-radius:22px}
.x-svc-cards .x-noimg>.e-con{position:relative;overflow:visible!important;border-radius:22px!important;box-shadow:0 18px 40px rgba(0,0,0,.28);height:100%;transition:transform .25s ease,box-shadow .25s ease}
.x-svc-cards .x-noimg:hover>.e-con{transform:translateY(-6px);box-shadow:0 26px 50px rgba(0,0,0,.35)}
.x-svc-cards .x-noimg>.e-con:before{content:"\2713";position:absolute;left:24px;top:-22px;width:46px;height:46px;border-radius:50%;background:var(--x-red);color:#fff;font-size:22px;font-weight:700;line-height:46px;text-align:center;box-shadow:0 0 0 6px var(--x-navy),0 8px 18px rgba(0,0,0,.3);z-index:2}
.x-svc-cards .x-noimg>.e-con:after{content:counter(svc,decimal-leading-zero);position:absolute;right:18px;bottom:-6px;font-family:"Eurostile LT Std",sans-serif;font-style:italic;font-weight:700;font-size:96px;line-height:1;color:rgba(1,8,80,.06);pointer-events:none}
.x-svc-cards .x-noimg>.e-con>.e-con{padding:40px 26px 30px!important;position:relative;z-index:1}
.x-svc-cards .x-noimg .elementor-heading-title{font-size:20px;line-height:1.25;color:var(--x-navy)!important}
.x-svc-cards .x-noimg .elementor-widget-text-editor{margin-top:10px}
@media(max-width:767px){.x-svc-cards .x-noimg>.e-con:before{left:50%;transform:translateX(-50%)}}

/* guarantees / text cards */
.x-promise .cm-col-4,.x-promise .cm-col-4 .elementor-heading-title,.x-promise .cm-col-4 .elementor-widget-text-editor{text-align:center!important}
.x-promise-text{text-align:center}

/* R&C lists on navy band */
.x-rc-text ul{margin:0 0 1em 1.1em;padding:0}
.x-rc-text li{margin-bottom:.45em}

/* Proud to Serve map */
.x-map{width:100%;height:100%;min-height:380px;border:3px solid var(--x-red);border-radius:14px;overflow:hidden}
.x-map iframe{display:block;width:100%;height:100%;min-height:380px;border:0}
.x-serve-text ul{margin:0 0 1em 1.1em;padding:0}
.x-serve-lead{margin-bottom:10px}

/* intro without photo (new pages until photos are added) */
.x-intro-nophoto .cm-row>.e-con,.x-intro-nophoto .cm-row>.e-con-inner>.e-con{width:100%!important;max-width:900px!important;margin:0 auto!important;align-items:center}
.x-intro-nophoto .cm-row .elementor-widget-text-editor{text-align:center;width:100%!important}
.x-intro-nophoto .cm-row .cm-btn-wrap{justify-content:center!important;width:100%!important}

/* process steps: max 3 per row (4 steps = 2x2), leftovers centered, cards never thin */
.cm-process-row.x-center-row{gap:56px 30px!important;justify-content:center!important}
.cm-process-row.x-center-row>.cm-process-col{flex:0 0 calc((100% - 60px)/3)!important;max-width:calc((100% - 60px)/3)!important;width:auto!important}
.cm-process-row.x-steps-4>.cm-process-col{flex:0 0 calc((100% - 30px)/2)!important;max-width:calc((100% - 30px)/2)!important}
.cm-process-row.x-center-row .cm-process-col .elementor-heading-title{font-size:24px!important;line-height:1.15!important;text-wrap:balance}
.cm-process-row.x-center-row .cm-process-col .elementor-widget-text-editor{font-size:16px;line-height:1.7}
@media(max-width:1024px){.cm-process-row.x-center-row>.cm-process-col,.cm-process-row.x-steps-4>.cm-process-col{flex:0 0 calc((100% - 30px)/2)!important;max-width:calc((100% - 30px)/2)!important}}
@media(max-width:767px){.cm-process-row.x-center-row>.cm-process-col,.cm-process-row.x-steps-4>.cm-process-col{flex:0 0 100%!important;max-width:100%!important}}

/* homepage R&C lists: same icon size whether the service is linked or not */
.cm-list-icons .elementor-icon-list-item .elementor-icon-list-icon{font-size:16px!important;width:auto!important;min-width:38px;flex:0 0 auto;padding-right:14px!important;top:0!important;align-items:center}
.cm-list-icons .elementor-icon-list-item .elementor-icon-list-icon i:before{width:38px!important;height:30px!important;background-position:center}
.cm-list-icons .elementor-icon-list-item .elementor-icon-list-icon svg,.cm-list-icons .elementor-icon-list-item .elementor-icon-list-icon i{width:38px!important;height:30px!important;font-size:16px!important}
.cm-list-icons .elementor-icon-list-item>.elementor-icon-list-text,.cm-list-icons .elementor-icon-list-item>a>.elementor-icon-list-text{padding-left:0}
.cm-list-icons .elementor-icon-list-item,.cm-list-icons .elementor-icon-list-item>a{align-items:center!important}

/* Bundle and Save (pricing text with no table): split card with a savings tag medallion */
.elementor-widget.x-price-wrap:not(:has(table)){max-width:980px;background:linear-gradient(135deg,#fff 0%,#fff 55%,#faeff1 100%);border-radius:24px;box-shadow:0 24px 60px rgba(1,8,80,.16);padding:44px 48px 44px 300px!important;position:relative;overflow:hidden;text-align:left!important;min-height:230px;display:flex;align-items:center}
.elementor-widget.x-price-wrap:not(:has(table)):before{content:"";position:absolute;left:0;top:0;bottom:0;width:250px;background:radial-gradient(circle at 30% 25%,#1b2a9a 0%,var(--x-navy) 70%);border-radius:24px 120px 120px 24px}
.elementor-widget.x-price-wrap:not(:has(table)):after{content:"";position:absolute;left:55px;top:50%;width:140px;height:140px;transform:translateY(-50%);border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4l-7.2 7.2a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3Cpath d='M9.5 16.5l5-5M10 12h.01M14 16h.01'/%3E%3C/svg%3E") center/58% no-repeat;box-shadow:0 0 0 10px rgba(255,255,255,.12),0 0 0 22px rgba(255,255,255,.06),0 12px 30px rgba(0,0,0,.35)}
.x-price-wrap:not(:has(table)) p{font-size:17px;line-height:1.8;text-align:left;margin:0}
.x-price-wrap:not(:has(table)) strong{color:#fff;background:var(--x-red);padding:2px 10px;border-radius:30px;white-space:nowrap}
@media(max-width:767px){
  .elementor-widget.x-price-wrap:not(:has(table)){display:block;padding:200px 22px 28px!important}
  .elementor-widget.x-price-wrap:not(:has(table)):before{width:auto;right:0;bottom:auto;height:170px;border-radius:24px 24px 50% 50%/24px 24px 40px 40px}
  .elementor-widget.x-price-wrap:not(:has(table)):after{left:50%;top:85px;width:110px;height:110px;transform:translate(-50%,-50%)}
  .x-price-wrap:not(:has(table)) p{text-align:center}
}
/* pricing with a table: the bundle / savings note under the table becomes a callout */
.x-price-wrap .x-table-wrap ~ p{max-width:1000px;margin:18px auto 0!important;background:#faeff1;border-radius:16px;padding:18px 22px 18px 70px;position:relative;text-align:left;color:var(--x-navy);font-weight:500}
.x-price-wrap .x-table-wrap ~ p:before{content:"";position:absolute;left:18px;top:50%;width:36px;height:36px;transform:translateY(-50%);border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4l-7.2 7.2a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3C/svg%3E") center/55% no-repeat}

/* extra-topic sections (plain copy, no table / guarantee): dotted blush band + white card + icon tiles */
.x-plain-sec:has(.x-plain:not(.x-price-wrap):not(.x-promise-text)){background:#faeff1 radial-gradient(rgba(212,34,58,.10) 1.4px,transparent 1.6px) 0 0/24px 24px!important}
.x-plain-sec:has(.x-plain:not(.x-price-wrap):not(.x-promise-text))+.x-plain-sec:has(.x-plain:not(.x-price-wrap):not(.x-promise-text)){padding-top:0!important}
.elementor-widget.x-plain:not(.x-price-wrap):not(.x-promise-text){background:#fff;border-radius:26px;box-shadow:0 26px 60px rgba(1,8,80,.13);padding:46px 54px!important;position:relative;overflow:hidden;isolation:isolate}
.x-plain:not(.x-price-wrap):not(.x-promise-text) p{font-size:17px;line-height:1.8}
.x-plain:not(.x-price-wrap):not(.x-promise-text) p:last-child{margin-bottom:0}
.x-plain:not(.x-price-wrap):not(.x-promise-text) ul,.x-plain:not(.x-price-wrap):not(.x-promise-text) ol{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;list-style:none;padding:0!important;margin:24px 0!important;width:100%;counter-reset:xs}
.x-plain:not(.x-price-wrap):not(.x-promise-text) li{position:relative;background:#faeff1;border-radius:16px;padding:18px 18px 18px 64px;margin:0!important;text-align:left;color:var(--x-navy);font-weight:600;line-height:1.5;display:block}
.x-plain:not(.x-price-wrap):not(.x-promise-text) li:before{content:"";position:absolute;left:16px;top:13px;width:34px;height:34px;border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/56% no-repeat;box-shadow:0 6px 14px rgba(212,34,58,.3)}
.x-plain:not(.x-price-wrap):not(.x-promise-text) ol li{counter-increment:xs}
.x-plain:not(.x-price-wrap):not(.x-promise-text) ol li:before{content:counter(xs);background:var(--x-navy);color:#fff;font-weight:800;font-size:15px;line-height:34px;text-align:center;box-shadow:0 6px 14px rgba(1,8,80,.3)}
@media(max-width:767px){.elementor-widget.x-plain:not(.x-price-wrap):not(.x-promise-text){padding:30px 22px!important}.x-plain:not(.x-price-wrap):not(.x-promise-text) p{font-size:16px}}

/* gallery carousel: full row width, square tiles, no empty space under short photos */
.e-con:has(> .elementor-widget-image-carousel){width:auto!important;max-width:1200px!important;flex:1 1 100%!important;min-width:0}
@media(max-width:1024px){.e-con:has(> .elementor-widget-image-carousel){width:100%!important;max-width:100%!important;flex:0 0 auto!important;margin-left:0!important;margin-right:0!important}}
.elementor-widget-image-carousel .swiper-slide{height:auto!important}
.elementor-widget-image-carousel .swiper-wrapper{align-items:stretch!important}
.elementor-widget-image-carousel .swiper-slide-image{width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover;border-radius:16px;display:block}

/* reviews: always reserve the widget height, never let the next section paint over it */
.e-parent:has(.rpi){position:relative;z-index:2;overflow:visible!important}
.elementor-widget-shortcode .rpi{min-height:300px}

/* location R&C: photo rides along with the copy; list items as cards on the navy band */
@media(min-width:1025px){
  #page.site{overflow:visible!important;overflow-x:clip!important}
  .cm-row:has(.x-rc-text) .e-con:has(> .cm-img-dots){align-self:flex-start!important;position:sticky!important;top:140px}
}
.x-rc-text ul{list-style:none;margin:20px 0!important;padding:0!important;display:grid;gap:12px}
.x-rc-text li{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:15px 18px 15px 62px;margin:0!important;line-height:1.65}
.x-rc-text li:before{content:"";position:absolute;left:16px;top:16px;width:32px;height:32px;border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/56% no-repeat;box-shadow:0 0 0 5px rgba(212,34,58,.18)}
.x-rc-text li strong{display:block;color:#ff9b1f;font-size:18px;letter-spacing:.01em;margin-bottom:3px}

/* location "Local to" area section: clear the closing band's curve; landmarks as pin tiles */
.e-parent:has(.x-serve-text):has(+ .x-red)>.cm-section{padding-bottom:calc(100vw * .12 + 40px)!important}
.x-serve-text ul{list-style:none;padding:0!important;margin:18px 0 22px!important;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.x-serve-text li{position:relative;background:#fff;border-radius:14px;box-shadow:0 8px 20px rgba(1,8,80,.09);padding:13px 14px 13px 52px;margin:0!important;font-weight:700;color:var(--x-navy);line-height:1.4;display:block}
.x-serve-text li strong,.x-serve-text li b{font-weight:800}
.x-serve-text li:before{content:"";position:absolute;left:12px;top:10px;width:30px;height:30px;border-radius:50%;background:var(--x-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center/58% no-repeat}
@media(max-width:767px){.x-serve-text ul{grid-template-columns:1fr}}

/* nav: bigger, airier main + submenu */
.ast-desktop .main-header-menu>.menu-item>.menu-link{font-size:20px!important;letter-spacing:.04em;padding-left:22px!important;padding-right:22px!important;white-space:nowrap}
.ast-desktop .ast-builder-menu .main-header-menu{flex-wrap:nowrap!important}
.ast-desktop .main-header-menu .sub-menu{width:auto!important;min-width:280px;padding:10px 0!important;border-radius:0 0 14px 14px;box-shadow:0 18px 40px rgba(1,8,80,.18)}
.ast-desktop .main-header-menu .sub-menu .menu-link{font-size:17px!important;letter-spacing:.05em!important;line-height:1.3!important;padding:11px 22px!important;white-space:nowrap}
.ast-desktop .main-header-menu .sub-menu .menu-item:hover>.menu-link{background:#faeff1;color:var(--x-red)!important}
@media(max-width:1200px) and (min-width:922px){.ast-desktop .main-header-menu>.menu-item>.menu-link{font-size:18px!important}}
.ast-header-break-point .main-navigation .menu-link{font-size:18px!important;letter-spacing:.04em}
.ast-header-break-point .main-navigation .sub-menu .menu-link{font-size:16px!important;padding-top:12px!important;padding-bottom:12px!important}

/* roof location pages: the types section right after the navy R&C band goes light, so the two bands don't run together */
:is(.page-id-8456,.page-id-8582,.page-id-8630,.page-id-8490,.page-id-8504,.page-id-8566,.page-id-8545,.page-id-8476,.page-id-8605,.page-id-10255) .e-parent:has(.x-rc-text)+.e-parent{--x-tw:1;background:linear-gradient(#EDEEF3 0,#fff 320px)!important}
:is(.page-id-8456,.page-id-8582,.page-id-8630,.page-id-8490,.page-id-8504,.page-id-8566,.page-id-8545,.page-id-8476,.page-id-8605,.page-id-10255) .e-parent:has(.x-rc-text)+.e-parent::before{display:none!important}
:is(.page-id-8456,.page-id-8582,.page-id-8630,.page-id-8490,.page-id-8504,.page-id-8566,.page-id-8545,.page-id-8476,.page-id-8605,.page-id-10255) .e-parent:has(.x-rc-text)+.e-parent .elementor-heading-title{color:#000!important}
:is(.page-id-8456,.page-id-8582,.page-id-8630,.page-id-8490,.page-id-8504,.page-id-8566,.page-id-8545,.page-id-8476,.page-id-8605,.page-id-10255) .e-parent:has(.x-rc-text)+.e-parent .elementor-heading-title .fchl{color:var(--x-red)!important}
:is(.page-id-8456,.page-id-8582,.page-id-8630,.page-id-8490,.page-id-8504,.page-id-8566,.page-id-8545,.page-id-8476,.page-id-8605,.page-id-10255) .e-parent:has(.x-rc-text)+.e-parent .elementor-widget-text-editor{color:#333!important}
:is(.page-id-8456,.page-id-8582,.page-id-8630,.page-id-8490,.page-id-8504,.page-id-8566,.page-id-8545,.page-id-8476,.page-id-8605,.page-id-10255) .e-parent:has(.x-rc-text)+.e-parent .cm-col-3{box-shadow:0 18px 44px rgba(1,8,80,.13);border-radius:22px;overflow:hidden}
:is(.page-id-8456,.page-id-8582,.page-id-8630,.page-id-8490,.page-id-8504,.page-id-8566,.page-id-8545,.page-id-8476,.page-id-8605,.page-id-10255) .e-parent:has(.x-rc-text)+.e-parent .cm-col-3 .elementor-heading-title{color:var(--x-navy)!important}
