.header-inner {
    position: relative
}

.header .brand {
    border-right: 0;
    padding-right: 15px
}

.desktop-nav {
    padding: 5px 7px;
    border: 1px solid #d2e8ef;
    border-radius: 14px;
    background: #f2f9fb;
    box-shadow: inset 0 1px 0 #fff, 0 5px 12px #064d6607;
    gap: 7px
}

.desktop-nav>a,
.nav-dropdown>button {
    padding: 10px 13px;
    border-radius: 9px
}

.desktop-nav>a:hover,
.desktop-nav>a:focus-visible,
.nav-dropdown>button:hover {
    background: #fff;
    box-shadow: 0 5px 11px #064d6615;
    color: #008aa4
}

.desktop-nav>a:after {
    bottom: 3px;
    left: 25%;
    width: 50%
}

.header-actions .btn {
    box-shadow: 0 6px 0 #c5450517, 0 10px 19px #ee600b15
}

.header-actions .btn:hover {
    box-shadow: 0 3px 0 #c5450512, 0 13px 22px #064d6622
}

.header-ribbon {
    box-shadow: inset 0 -1px 0 #66bcc126
}

.header-ribbon a:hover {
    color: #7de6ea
}

.header.is-scrolled {
    box-shadow: 0 11px 28px #054c6426
}

.menu-toggle {
    border-color: #aedce6;
    background: #edf9fb
}

.menu-toggle:hover {
    background: #c8f1f5
}

.menu-toggle[aria-expanded=true] {
    background: #16b5c6;
    box-shadow: 0 0 0 5px #16b5c614
}

[data-water-section] {
    position: relative;
    transition: box-shadow .85s var(--ease-water)
}

[data-water-section]:hover {
    box-shadow: inset 0 1px 0 #39b5c218, inset 0 -1px 0 #39b5c218
}

.section-heading h2,
.extra-heading h2,
.reference-copy h2,
.before-copy h2 {
    transition: translate .85s var(--ease-water), text-shadow .85s
}

.is-near:hover>.container>.section-heading h2,
.is-near:hover>.extra-inner>.extra-heading h2 {
    translate: 0 -2px;
    text-shadow: 0 6px 18px #06728a0b
}

.pool-icon,
.legal-section-icon {
    filter: drop-shadow(0 3px 2px #064d6618) !important;
    transition: transform .8s var(--ease-water), filter .8s !important
}

.is-near .pool-icon {
    animation: icon-arrive .85s var(--ease-water) both
}

.photo-card:hover .pool-icon,
.reference-features>a:hover .pool-icon,
.focus-row:hover .pool-icon,
.mini-benefits>span:hover .pool-icon {
    filter: drop-shadow(0 7px 4px #064d662b) !important;
    transform: translateY(-3px) rotate(-7deg) scale(1.05)
}

.photo-card,
.reference-features>a,
.focus-row,
.choice-display,
.tab-panel.split,
.plan-panel,
.lab-panel,
.legal-copy section {
    outline: 1px solid transparent;
    outline-offset: 3px;
    transition: box-shadow .7s, outline-color .7s, border-color .7s, background .7s, transform .8s var(--ease-water) !important
}

.photo-card:hover,
.reference-features>a:hover,
.focus-row:hover,
.choice-display:hover,
.tab-panel.split:hover,
.plan-panel:hover,
.lab-panel:hover,
.legal-copy section:hover {
    outline-color: #51b3c32e;
    box-shadow: 0 20px 35px #064d661c, 0 5px 12px #064d660a
}

.photo-card:hover .card-copy {
    background: #f0fafc
}

.card-copy {
    transition: background .75s
}

.photo-card .corner-icon {
    border: 1px solid #d4e9ef;
    box-shadow: 0 7px 16px #063f5424
}

.focus-thumb {
    box-shadow: 0 5px 12px #064d6618
}

.focus-row:hover {
    background: #e2f5f8
}

.editorial-points>div {
    border-bottom: 3px solid #aad9e4
}

.editorial-points>div:hover {
    border-bottom-color: #18a6bc;
    background: #e8f8fb
}

.choice-tabs button[aria-selected=true],
.tabs button[aria-selected=true] {
    box-shadow: 0 7px 16px #064d6621, inset 0 1px 0 #ffffff20
}

.choice-tabs button:hover,
.plan-options button:hover {
    box-shadow: 0 9px 19px #064d6615
}

.service-flip .flip-front {
    border-bottom: 4px solid #b4dde7
}

.service-flip:hover .flip-front {
    border-bottom-color: #1bb5c4
}

.service-cta {
    box-shadow: 0 15px 27px #053e541e, inset 0 1px 0 #74c2cf44
}

.renovation-card {
    border: 1px solid #ffffff20;
    box-shadow: 0 12px 24px #002a4220
}

.renovation-card:hover {
    box-shadow: 0 18px 30px #002a4233
}

.equipment-section .orbit {
    transition: border-color .85s
}

.equipment-section:hover .orbit {
    border-color: #48bed0
}

.tool-tip {
    box-shadow: inset 3px 0 0 #30c3d0
}

.gallery-choice.selected>span {
    background: #044c62e8
}

.gallery-choice.selected {
    box-shadow: 0 17px 28px #064d6628
}

.organic-trio a:hover h3 {
    color: #008da6
}

.organic-trio h3 {
    transition: color .7s
}

.reference-collage .mini-benefits>span:hover {
    border-color: #6abccb;
    background: #e1f5f8
}

.photo-seal {
    box-shadow: 0 8px 20px #064d6622
}

.photo-cta .extra-inner {
    box-shadow: 0 17px 33px #064d661d, inset 0 1px 0 #ffffff55
}

.photo-cta:hover .extra-inner>img {
    scale: 1.035;
    transition: scale 1.1s var(--ease-water)
}

.contact-form {
    border-bottom: 4px solid #7bc7d6
}

.contact-form:focus-within {
    border-bottom-color: #0ba7be
}

.contact-form button[type=submit] {
    box-shadow: 0 7px 16px #e9661424
}

.footer .footer-top {
    border-bottom-color: #32849a77
}

.footer .footer-top h2 {
    transition: text-shadow .8s
}

.footer:hover .footer-top h2 {
    text-shadow: 0 8px 24px #0aafba2e
}

.cookie-card {
    box-shadow: 0 13px 30px #063f5426;
    border-color: #85c5d4
}

.legal-nav {
    border-bottom: 3px solid #a0d7e4
}

.legal-hero h1 {
    text-shadow: 0 7px 20px #002a4366
}

.legal-copy section:target {
    border-left-color: #f36b1b
}

.legal-copy section:hover .legal-section-icon {
    filter: drop-shadow(0 7px 4px #064d6622) !important
}

@keyframes icon-arrive {
    from {
        opacity: .55;
        scale: .9
    }

    to {
        opacity: 1;
        scale: 1
    }
}

[data-water-section]:not(.is-near) .equipment-visual>img,
[data-water-section]:not(.is-near) .orbit-two,
[data-water-section]:not(.is-near) .photo-seal,
[data-water-section]:not(.is-near) .marquee-track,
[data-water-section]:not(.is-near) .collage-stamp {
    animation-play-state: paused !important
}

@media(max-width:1250px) {
    .desktop-nav {
        gap: 2px;
        padding: 4px
    }

    .desktop-nav>a,
    .nav-dropdown>button {
        padding: 9px 10px
    }

    .header-inner {
        gap: 13px
    }

    .header .brand {
        padding-right: 7px
    }
}

@media(max-width:1000px) {
    .desktop-nav {
        display: none
    }
}

@media(prefers-reduced-motion:reduce) {

    .pool-icon,
    .legal-section-icon {
        animation: none !important
    }

    .section-heading h2,
    .extra-heading h2,
    .reference-copy h2 {
        translate: none !important
    }
}


#find-care {
    isolation: isolate;
    background: #f8fcfd
}

.care-net {
    position: absolute;
    left: 3%;
    bottom: 18px;
    width: clamp(110px, 16vw, 220px);
    height: auto;
    opacity: .2;
    pointer-events: none;
    z-index: -1;
    transform-origin: 85% 15%;
    animation: net-sweep 7s var(--ease-water) infinite alternate;
    filter: drop-shadow(0 14px 5px #09678230)
}

#find-care .focus-row {
    border: 1px solid #cce5eb;
    border-bottom: 4px solid #b6dce6;
    box-shadow: 0 9px 19px #07566d12, inset 0 1px 0 #fff
}

#find-care .focus-row .corner-icon {
    display: grid;
    place-items: center;
    right: 15px;
    top: 12px;
    width: 50px;
    height: 50px;
    padding: 8px;
    border: 1px solid #cae5ec;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 5px 9px #064d661c;
    transform: none
}

#find-care .focus-row .corner-icon .pool-icon {
    position: static;
    width: 34px;
    height: 34px;
    object-fit: contain;
    margin: 0;
    animation: none
}

#find-care .focus-text {
    padding-right: 50px
}

#find-care .focus-row>svg {
    width: 23px;
    height: 23px;
    color: #088fa9;
    transition: translate .7s var(--ease-water)
}

#find-care .focus-row:is(:hover, :focus-visible) {
    background: #dff5f8;
    border-color: #55b9cb;
    box-shadow: 0 15px 25px #07566d25;
    transform: translateY(-4px)
}

#find-care .focus-row:hover>svg {
    translate: 4px 0
}

#about .editorial-points>div {
    isolation: isolate;
    border: 1px solid #c7e3eb;
    border-bottom: 4px solid #a3d5e1;
    box-shadow: 0 10px 18px #064d6614, inset 0 1px 0 #fff;
    transition: transform .8s var(--ease-water), background .8s, box-shadow .8s !important
}

#about .editorial-points .pool-icon {
    box-sizing: content-box;
    right: 13px;
    top: 13px;
    width: 34px;
    height: 34px;
    padding: 7px;
    object-fit: contain;
    background: #fff;
    border: 1px solid #d8ebef;
    border-radius: 12px;
    box-shadow: 0 5px 10px #064d6616;
    animation: none
}

#about .editorial-points h3 {
    padding-right: 46px
}

#about .editorial-points>div:hover {
    transform: translateY(-6px) rotate(-.5deg);
    background: #d9f2f6;
    box-shadow: 0 19px 29px #064d6624;
    border-color: #62bbcc
}

#about .editorial-points>div:hover .pool-icon {
    transform: translateY(-3px) rotate(9deg) scale(1.08)
}

#services .photo-card {
    border-bottom: 4px solid #9ed5e0;
    box-shadow: 0 12px 23px #064d661b
}

#services .photo-card:is(:hover, :focus-within) {
    box-shadow: 0 21px 34px #064d662b;
    border-bottom-color: #0da2ba
}

#services .slider-controls,
#possibilities .slider-controls {
    padding-block: 15px 8px
}

#services .circle,
#possibilities .circle {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    border: 1px solid #a9d4df;
    box-shadow: 0 5px 0 #7caab22b, 0 9px 17px #003d5222, inset 0 1px 0 #ffffff66;
    transition: background .65s, box-shadow .65s, transform .65s var(--ease-water) !important
}

#services .circle:is(:hover, :focus-visible),
#possibilities .circle:is(:hover, :focus-visible) {
    background: #f47727;
    color: #fff;
    border-color: #f47727;
    transform: translateY(-3px);
    box-shadow: 0 6px 0 #ce4d142a, 0 14px 20px #003d522a
}

#services .circle svg,
#possibilities .circle svg {
    display: block;
    position: static;
    margin: 0;
    width: 22px;
    height: 22px;
    flex-shrink: 0
}

#services .swiper-pagination-bullet,
#possibilities .swiper-pagination-bullet {
    box-shadow: 0 2px 5px #003f542b;
    transition: transform .6s, background .6s
}

#services .swiper-pagination-bullet-active,
#possibilities .swiper-pagination-bullet-active {
    transform: scale(1.2)
}

#possibilities .renovation-card {
    border: 2px solid #ffffff55;
    box-shadow: 0 15px 28px #00273955
}

#possibilities .renovation-card>div {
    background: #043f54eb;
    border-top: 1px solid #74c7d866;
    transition: background .7s
}

#possibilities .renovation-card:hover>div {
    background: #086a80
}

#before-after .before-copy {
    background: #e5f6f9;
    border-color: #b5dce6;
    box-shadow: 0 12px 23px #064d6616, inset 0 0 0 5px #ffffff66
}

#before-after .compare {
    border: 3px solid #fff;
    box-shadow: 0 15px 30px #064d6629;
    isolation: isolate
}

#before-after .compare-divider>span {
    box-shadow: 0 0 0 7px #ffffff33, 0 7px 17px #003d5266;
    transition: scale .55s, box-shadow .55s
}

#before-after .compare:is(:hover, :focus-within) .compare-divider>span {
    scale: 1.08;
    box-shadow: 0 0 0 10px #ffffff44, 0 9px 22px #003d5266
}

#care-compass .choice-tabs button {
    border: 1px solid #c7e2e9;
    border-bottom: 4px solid #b2dce6;
    box-shadow: 0 8px 16px #064d6612;
    transition: transform .65s, background .65s, box-shadow .65s !important
}

#care-compass .choice-tabs button:is(:hover, :focus-visible) {
    transform: translateY(-3px);
    box-shadow: 0 12px 22px #064d6622
}

#care-compass .choice-tabs button[aria-selected=true] {
    background: #07627a;
    border-color: #0b839b;
    box-shadow: 0 10px 20px #064d662e, inset 0 1px 0 #ffffff44
}

#care-compass .choice-display {
    border: 1px solid #bbdfe8;
    border-bottom: 5px solid #8bcedd;
    box-shadow: 0 15px 28px #064d6622
}

#care-compass .choice-panels {
    background: #f0fafb
}

#care-compass .choice-display>img {
    transition: transform 1.1s var(--ease-water)
}

#care-compass .choice-display:hover>img {
    transform: scale(1.035)
}

#pool-moments {
    isolation: isolate
}

.moment-drops {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    z-index: -1
}

.moment-drops img {
    position: absolute;
    width: var(--size);
    height: var(--size);
    object-fit: contain;
    left: var(--left);
    top: -50px;
    opacity: 0;
    animation: moment-rain var(--duration) linear var(--delay) infinite
}

#questions.faq-v2 .accordion details {
    background: #fff;
    border: 1px solid #c4e1e9;
    border-left: 4px solid #a3d8e4;
    box-shadow: 0 7px 14px #064d6612;
    transition: background .65s, border-color .65s, box-shadow .65s !important
}

#questions.faq-v2 .accordion details:is([open], :hover) {
    background: #eaf8fb;
    border-left-color: #10a8bf;
    box-shadow: 0 11px 24px #064d6620
}

#questions.faq-v2 summary {
    gap: 18px
}

#questions.faq-v2 .plus {
    flex-shrink: 0;
    border-radius: 50%;
    box-shadow: 0 4px 8px #064d6620;
    background: #d7f1f5
}

#questions.faq-v2 .faq-media {
    border: 5px solid #fff;
    box-shadow: 0 17px 30px #064d6629
}

#questions.faq-v2 .image-caption {
    box-shadow: 0 10px 18px #064d6629;
    border: 1px solid #ffffff55
}

#contact .contact-form {
    border: 1px solid #abd6e2;
    border-bottom: 5px solid #75bece;
    box-shadow: 0 20px 35px #064d6624, inset 0 0 0 6px #eff9fb;
    transition: box-shadow .8s, border-color .8s
}

#contact .contact-form:focus-within {
    box-shadow: 0 23px 40px #064d6633, inset 0 0 0 6px #e3f5f8;
    border-color: #40acc1
}

#contact :is(input, select, textarea) {
    box-shadow: inset 0 2px 4px #064d660b;
    transition: border-color .6s, box-shadow .6s, background .6s !important
}

#contact :is(input, select, textarea):focus {
    background: #fff;
    box-shadow: 0 0 0 4px #10a6bd18, inset 0 1px 2px #064d6608
}

#contact .contact-photo {
    border: 4px solid #fff;
    box-shadow: 0 12px 23px #064d6626
}

#contact .contact-email {
    display: inline-block;
    text-shadow: 0 3px 7px #064d6615;
    transition: translate .6s, color .6s
}

#contact .contact-email:hover {
    translate: 0 -2px;
    color: #e66016
}

.service-scope .flip-grid {
    align-items: stretch
}

.service-scope .flip-inner,
.service-scope .flip-front,
.service-scope .flip-back {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border-radius: 13px
}

.service-scope .flip-front {
    display: grid;
    grid-template-rows: 52px auto 1fr auto;
    gap: 10px;
    padding: 20px !important;
    text-align: left;
    align-items: start
}

.service-scope .flip-front>.pool-icon {
    position: static;
    grid-row: 1;
    justify-self: end;
    width: 44px;
    height: 44px;
    margin: 0 !important
}

.service-scope .flip-front>strong {
    grid-row: 2;
    margin: 0
}

.service-scope .flip-front>span {
    grid-row: 3;
    margin: 0;
    max-width: none;
    line-height: 1.55
}

.service-scope .flip-front>small {
    grid-row: 4;
    align-self: end;
    width: 100%;
    padding: 0;
    margin: 0
}

.service-scope .flip-back>span {
    inset: auto 0 0;
    height: 46%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 18px 22px;
    box-sizing: border-box;
    text-align: left;
    background: #04475eea
}

.service-scope .flip-back>span>strong {
    font-size: 25px;
    line-height: 1.1
}

.service-scope .flip-back>span>span {
    font-size: 13px;
    line-height: 1.5;
    margin-top: 8px
}

.service-scope .flip-back>img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

@keyframes net-sweep {
    0% {
        transform: translate(-10px, 0) rotate(-16deg)
    }

    100% {
        transform: translate(35px, -14px) rotate(9deg)
    }
}

@keyframes moment-rain {
    0% {
        transform: translateY(0) rotate(-8deg);
        opacity: 0
    }

    15% {
        opacity: .3
    }

    80% {
        opacity: .22
    }

    100% {
        transform: translateY(650px) rotate(12deg);
        opacity: 0
    }
}

[data-water-section]:not(.is-near) :is(.care-net, .moment-drops img) {
    animation-play-state: paused
}

@media(max-width:700px) {
    #find-care .focus-row .corner-icon {
        width: 38px;
        height: 38px;
        padding: 6px;
        right: 10px;
        top: 10px
    }

    #find-care .focus-row .corner-icon .pool-icon {
        width: 26px;
        height: 26px
    }

    #find-care .focus-text {
        padding-right: 34px
    }

    #about .editorial-points h3 {
        padding-right: 0
    }

    #about .editorial-points .pool-icon {
        width: 29px;
        height: 29px;
        padding: 5px;
        top: 9px
    }

    #about .editorial-points>div:hover {
        transform: translateY(-3px)
    }

    .care-net {
        opacity: .12;
        left: 2%;
        bottom: 0
    }

    .service-scope .flip-front {
        grid-template-rows: 40px auto 1fr auto;
        gap: 6px;
        padding: 16px !important
    }

    .service-scope .flip-front>.pool-icon {
        width: 36px;
        height: 36px
    }

    .service-scope .flip-front>strong {
        font-size: 25px
    }

    .service-scope .flip-back>span {
        padding: 15px 18px
    }

    .moment-drops img:nth-child(n+6) {
        display: none
    }
}

@media(prefers-reduced-motion:reduce) {

    .care-net,
    .moment-drops img {
        animation: none !important
    }

    .moment-drops img {
        opacity: .15;
        top: 20%
    }

    #find-care .focus-row:hover,
    #about .editorial-points>div:hover,
    #care-compass .choice-tabs button:hover {
        transform: none
    }
}

.moment-drops img {
    filter: invert(61%) sepia(69%) saturate(706%) hue-rotate(139deg) brightness(91%) contrast(88%)
}

@media(min-width:768px) and (max-width:1000px) {
    #about .editorial-points h3 {
        padding-right: 45px;
        font-size: 19px
    }
}


#find-care .net-stage {
    position: relative;
    height: 108px;
    margin-top: 18px;
    pointer-events: none;
    overflow: hidden;
    width: 190px
}

#find-care .net-stage .care-net {
    position: absolute;
    left: 25px;
    top: 6px;
    bottom: auto;
    width: 110px;
    height: 90px;
    object-fit: contain;
    opacity: .7;
    z-index: 0;
    animation: net-sweep 6s var(--ease-water) infinite alternate
}

#about .editorial-collage {
    perspective: 1100px
}

#about :is(.collage-main, .collage-detail) {
    transition: translate .85s var(--ease-water), rotate .85s var(--ease-water), box-shadow .85s var(--ease-water)
}

#about .collage-main img,
#about .collage-detail img {
    transition: transform 1.2s var(--ease-water)
}

#about .editorial-collage:hover .collage-main {
    translate: 0 -6px;
    rotate: -1deg;
    box-shadow: 0 20px 32px #064d6625
}

#about .editorial-collage:hover .collage-main img {
    transform: scale(1.055)
}

#about .editorial-collage:hover .collage-detail {
    translate: -7px -7px;
    rotate: 2deg;
    box-shadow: 0 22px 36px #064d6640
}

#about .editorial-collage:hover .collage-detail img {
    transform: scale(1.08)
}

#about .editorial-copy>h2,
#about .editorial-copy>p {
    transition: translate .8s var(--ease-water)
}

#about .editorial-copy:hover>h2 {
    translate: 0 -3px
}

#about .editorial-copy:hover>.lead {
    translate: 3px 0
}

#about .editorial-points>div:hover {
    transform: translateY(-7px) rotate(-1deg);
    box-shadow: 0 20px 30px #064d662c;
    background: #d1f0f5
}

#about .editorial-points>div:nth-child(2):hover {
    transform: translateY(-7px) rotate(1deg)
}

#about .editorial-copy>.btn:hover {
    translate: 0 -3px;
    box-shadow: 0 12px 20px #ee600b35
}

.circle,
.hero-controls .circle {
    border: 1px solid #b6dae4;
    box-shadow: 0 4px 0 #a9cbd44d, 0 9px 16px #043e5420, inset 0 1px 0 #fff;
    transition: background .6s, box-shadow .6s, translate .6s !important
}

.circle:is(:hover, :focus-visible),
.hero-controls .circle:is(:hover, :focus-visible) {
    background: #f47727;
    color: #fff;
    translate: 0 -2px;
    box-shadow: 0 5px 0 #c950182a, 0 12px 20px #043e5430
}

.direction-icon {
    flex-shrink: 0;
    stroke-linecap: round;
    stroke-linejoin: round
}

.text-link .direction-icon,
.footer-search .direction-icon,
.focus-row>.direction-icon {
    box-sizing: content-box;
    width: 19px !important;
    height: 19px !important;
    padding: 7px;
    border: 1px solid #b9dce6;
    background: #fff;
    border-radius: 50%;
    color: #08667e;
    box-shadow: 0 3px 0 #a5cbd33d, 0 6px 12px #064d6618;
    transition: translate .65s, background .65s, color .65s, box-shadow .65s !important
}

.text-link:hover .direction-icon,
.footer-search:hover .direction-icon,
.focus-row:hover>.direction-icon {
    translate: 3px 0;
    background: #08758c;
    color: #fff;
    box-shadow: 0 4px 0 #063f541c, 0 9px 14px #064d6628;
    transform: none
}

.footer-search .direction-icon {
    vertical-align: middle;
    margin-left: 10px
}

.circle .direction-icon {
    width: 22px;
    height: 22px;
    display: block;
    margin: 0
}

.nav-dropdown .chevron {
    box-sizing: content-box;
    padding: 0;
    width: 7px;
    height: 7px;
    filter: drop-shadow(1px 2px 1px #064d6633)
}

#possibilities .renovation-card>div {
    background: #fff !important;
    color: #064d66;
    border-top: 3px solid #4bb4c6;
    padding: 23px;
    flex: 1;
    box-shadow: inset 0 1px 0 #fff
}

#possibilities .renovation-card h3 {
    color: #064d66 !important;
    line-height: 1.2;
    text-shadow: none
}

#possibilities .renovation-card span {
    color: #425f6a !important;
    font-size: 14px;
    line-height: 1.6
}

#possibilities .renovation-card:hover>div {
    background: #e8f8fb !important
}

#before-after .before-copy {
    transition: translate .8s var(--ease-water), box-shadow .8s, background .8s;
    border-left: 4px solid #20aabd
}

#before-after .before-copy:hover {
    translate: 0 -5px;
    background: #cfeef4;
    box-shadow: 0 18px 30px #064d6630, inset 0 0 0 5px #ffffff88
}

#before-after .before-layout:hover .compare {
    box-shadow: 0 22px 40px #064d6638, 0 0 0 5px #c1e9f04d
}

#before-after .compare-label {
    border: 1px solid #d0e7ee;
    box-shadow: 0 6px 12px #003e542b;
    transition: background .65s, color .65s, translate .65s
}

#before-after .compare:hover .compare-label {
    background: #075e75;
    color: #fff;
    translate: 0 2px
}

#before-after .compare:is(:hover, :focus-within) .compare-divider>span {
    background: #f47727;
    color: white;
    border-color: white;
    box-shadow: 0 0 0 8px #ffffff55, 0 9px 18px #003d5244
}

.accordion .plus,
#questions.faq-v2 .plus {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    color: #08738a;
    background: #e1f4f8;
    border: 1px solid #b4dce6;
    border-radius: 10px;
    box-shadow: 0 3px 0 #abcfd73b, 0 5px 10px #064d6612;
    transition: background .6s, box-shadow .6s, color .6s
}

.accordion .plus:before,
.accordion .plus:after {
    display: none !important
}

.accordion .plus svg {
    display: block;
    width: 22px;
    height: 22px
}

.plus-upright {
    transform-origin: 12px 12px;
    transition: transform .55s var(--ease-water), opacity .55s
}

.accordion details[open] .plus {
    background: #0a7188;
    color: #fff;
    border-color: #0a7188;
    box-shadow: 0 3px 0 #03475b33, 0 7px 12px #064d6624
}

.accordion details[open] .plus-upright {
    transform: rotate(90deg);
    opacity: 0
}

.accordion summary:hover .plus {
    box-shadow: 0 4px 0 #abcfd73b, 0 8px 15px #064d6626
}

@media(max-width:767px) {
    #find-care .net-stage {
        height: 75px;
        width: 130px;
        margin: 12px auto 0
    }

    #find-care .net-stage .care-net {
        width: 85px;
        height: 65px;
        left: 15px;
        opacity: .6
    }

    .text-link .direction-icon,
    .footer-search .direction-icon {
        padding: 6px
    }

    .accordion .plus,
    #questions.faq-v2 .plus {
        width: 30px;
        height: 30px
    }

    .accordion .plus svg {
        width: 20px;
        height: 20px
    }
}

@media(prefers-reduced-motion:reduce) {

    #about :is(.collage-main, .collage-detail),
    #about .editorial-copy>h2,
    #about .editorial-copy>.lead,
    #before-after .before-copy:hover {
        translate: none !important;
        rotate: none !important
    }

    #about .collage-main img,
    #about .collage-detail img {
        transform: none !important
    }
}


.pool-icon.premium-icon,
.legal-section-icon.premium-icon {
    display: inline-block;
    position: relative;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    padding: 0 !important;
    border-radius: 13px !important;
    background: #edf9fb !important;
    border: 1px solid #b6dbe5 !important;
    box-shadow: inset 0 2px 0 #fff, 0 3px 0 #a6cdd84d, 0 7px 12px #064d661a;
    filter: none !important;
    vertical-align: middle;
    overflow: visible
}

.premium-icon:before {
    content: '';
    position: absolute;
    inset: 22%;
    background: #09778e;
    -webkit-mask: var(--glyph) center/contain no-repeat;
    mask: var(--glyph) center/contain no-repeat;
    transition: background .7s, transform .7s var(--ease-water);
    filter: drop-shadow(0 1px 0 #ffffff55)
}

.premium-icon:after {
    content: '';
    position: absolute;
    inset: 3px;
    border: 1px solid #ffffffb3;
    border-radius: 10px;
    pointer-events: none
}

:is(.photo-card, .focus-row, .editorial-points>div, .reference-features>a, .mini-benefits>span):hover .premium-icon {
    filter: none !important;
    background: #d9f3f7 !important;
    box-shadow: inset 0 2px 0 #fff, 0 4px 0 #87bfcc55, 0 10px 17px #064d6629
}

:is(.photo-card, .focus-row, .editorial-points>div, .reference-features>a):hover .premium-icon:before {
    background: #034e67;
    transform: scale(1.08)
}

#find-care .focus-row .corner-icon {
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none
}

#find-care .focus-row .corner-icon .premium-icon {
    width: 48px;
    height: 48px;
    position: relative
}

#about .editorial-points .premium-icon {
    position: absolute;
    right: 13px;
    top: 13px;
    width: 44px;
    height: 44px
}

.photo-card .corner-icon {
    background: transparent;
    border: 0;
    box-shadow: none
}

.photo-card .corner-icon .premium-icon {
    width: 52px;
    height: 52px
}

.tool-tabs button>.premium-icon,
.choice-tabs button>.premium-icon {
    width: 42px;
    height: 42px
}

.service-flip .flip-front>.premium-icon {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    width: 44px;
    height: 44px
}

.reference-features>a>.premium-icon,
.tab-copy>.premium-icon {
    position: absolute
}

.marquee-track .premium-icon {
    width: 28px;
    height: 28px;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none
}

.marquee-track .premium-icon:before {
    inset: 7%;
    background: currentColor
}

.marquee-track .premium-icon:after {
    display: none
}

.legal-copy .legal-section-icon.premium-icon {
    position: absolute
}

@media(max-width:767px) {

    #find-care .focus-row .corner-icon,
    #find-care .focus-row .corner-icon .premium-icon {
        width: 35px;
        height: 35px
    }

    #about .editorial-points .premium-icon {
        width: 36px;
        height: 36px;
        top: 9px
    }

    .photo-card .corner-icon .premium-icon {
        width: 44px;
        height: 44px
    }

    .premium-icon:before {
        inset: 20%
    }
}

.tool-tabs button>.premium-icon,
.choice-tabs button>.premium-icon,
.lab-tabs button>.premium-icon,
.inline-note>.premium-icon,
.mini-benefits .premium-icon,
.scope-offers .premium-icon {
    position: absolute
}

.tool-tabs button>.premium-icon {
    width: 30px;
    height: 30px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%)
}

.choice-tabs button>.premium-icon {
    width: 36px;
    height: 36px
}

.lab-tabs button>.premium-icon {
    width: 34px;
    height: 34px
}

.mini-benefits .premium-icon {
    width: 30px;
    height: 30px;
    right: 10px;
    top: 15px
}

.inline-note>.premium-icon {
    width: 36px;
    height: 36px
}

.reference-features>a>.premium-icon {
    width: 40px;
    height: 40px
}

@media(max-width:767px) {
    .tool-tabs button>.premium-icon {
        width: 26px;
        height: 26px;
        right: 8px
    }

    .choice-tabs button>.premium-icon {
        width: 30px;
        height: 30px
    }

    .lab-tabs button>.premium-icon {
        width: 30px;
        height: 30px
    }

    .reference-features>a>.premium-icon {
        width: 34px;
        height: 34px
    }
}

#find-care .net-stage .care-net {
    filter: invert(35%) sepia(78%) saturate(678%) hue-rotate(146deg) brightness(90%) contrast(96%)
}

.footer-bottom .icon-attribution {
    max-width: 780px;
    font-size: 11px;
    line-height: 1.8;
    text-align: right
}

.footer-bottom .icon-attribution a {
    display: inline;
    color: inherit;
    white-space: nowrap
}

@media(max-width:767px) {
    .footer-bottom .icon-attribution {
        text-align: center;
        font-size: 10px
    }
}