@import url(/theme/assets/modern.css);


body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

main.page {
    padding-bottom: 20px;
}

footer .disclaimer {
    border: 1px solid rgba(26,55,78,.3);
    text-align: center;
    padding: 10px;
    margin: 50px auto 0 auto;
    width: auto;
    max-width: 750px;
    clear: both;
}


.user-welcome {
    display: none;
}

.wrapper {
    max-width: 1180px;
}

suggested-donations > label {
    background-color: #efe9d8;
    font-weight: bold;
}

suggested-donations > label.selected {
    background-color: #1a374e;
    color: #fff;
    border-color: #1a374e;
}

.list-template .recipients >.recipient >.details >.name {
    font-size: 1.25rem;
}

.list-template .recipients-view .recipients > .recipient {
    padding: 10px;
}

.list-template .recipients-view .contextual-content .cart>ul {
    max-height: 250px;
    overflow: auto;
}

.list-template .recipients-view .contextual-content .cart > button {
    background-color: #1a374e;
}

.list-template .recipients-view .contextual-content .cart > .clear-recipients {
    color: #3aaade;
}

.list-template .recipients-view>header>h1 {
    font-weight: bold;
    letter-spacing: -1px;
}

.list-template .main-content .featured-filter label.selected {
    background-color: #1a374e;
}

@media (screen and min-width: 768px) {

.list-template .recipients-view .main-content .featured-filter label.featured span {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAWCAQAAABwdJQDAAABcUlEQVQ4y42TTSiEQRzGN1tW7W1z2FgHtfJR66a9OC1yIBcn4ubjplw4KC4iDnuTFtmLbNocHBzEjYOSiwslSloOJCK1+fh53neX/ZrNzjTvzPyf5zfNzH9eBw5jXcRpVsz2NmCodKCMUwF3uEsFBmU/VpspDajgRuYRtVe8pQCTsu6rj6uP/A94eZaxW6Mm9R80mwEP7UywyTlfssXT4gpWuWabKbqo+gXm7D1nSpzKv/WWOMtS7onidODjSpMDpaqfRkO6aullll15ngiktuQnoelWkZxbdU36G8HMGQI8KrRRxB6RliSUe0tBXhSOGuzLin/SU3itId4l+QqeCXwzYM5DTGJfHtCi2EmxxB1KbM0DqhVLFANuJdbYI6dAV9aWXCag3M6ykzpW04mKaUMOLjSqNwF+CZf2ORB6pIu0yg57+naagI70uknWacB6AWE98FQZNQHD9h8QzrlYD9M8KD5vAsYlegyJczPGQmb+A7cJjeuVVg5qAAAAAElFTkSuQmCC');
    background-size: contain;
    padding-top: 2px;
    padding-bottom: 2px;
    background-repeat: no-repeat;
}

}


.list-template .recipients > .recipient > picture + div > .details > .name > .party,
.list-template .recipients-view .recipients>.recipient>.details>.name>.party {
    display: none;
}

a,
a:link {
    color: #1a374e;
}

.action-button,
.payment-button {
    background-color: #1a374e;
}

.payment-button, .payments-view button {
    background-color: #1a374e
}

main.page.standard>section .page-recipients .page-recipient .recipient-name {

}


.list-template .recipients-view .recipients.small>.recipient>.details>.name {
    font-size: 16px;
}

.list-template .recipients-view .recipients.small>.recipient>.details>.name:hover {
    color: #3aaade !important;
}


.list-template .recipients-view .recipients.small>.recipient>.details>.office {
    font-size: 14px;
}

.list-template button {
    background-color: #1a374e;
}

body>header>.wrapper .user-welcome a {
    color: #1a374e !important;
}

main>section>header>h1,
main>header>h1 {
    font-weight: bold;
    text-align: left;
    margin-bottom: 1rem;
}

main>section>header>div,
main>header>div {
    display: block;
    text-align: left;
}


@media (min-width: 768px) {
   .recipient-profile .basic-profile .donate-box .action-button {
       flex: 0 0 36%;
   }

}

@media (max-width: 767px) {

    .wrapper {
        width: 98%;
    }

    body>header {
        height: 70px;
        background-color: #1a374e;
        color: #fff;
    }

    body>header>.wrapper>.logo {
        height: 70px;
        width: auto;
        padding-top: 0;
        margin: 0 auto 0 auto;
        background: transparent url(/theme/assets/lee-logo.png) 0 5px no-repeat;
        box-sizing: border-box;
        position: relative;
    }

    body>header>.wrapper>.logo a {
        height: 100%;
        width: 100%;
        display: block;
    }

    body>header>.wrapper>.user-welcome,
    body>header>.wrapper>.user-welcome.vip {
        margin-top: 30px !important;
    }

    body>header nav {
        top: 0px !important;
    }

    body>header>.wrapper>nav>span {
        background-color: transparent;
        color: #1a374e;
    }

    body>header>.wrapper>nav.active>span {
        background-color: #1a374e;
    }

    body>header>.wrapper>nav>ul {
        background-color: #1a374e;
    }

    main > section > header { margin-top: 15px; }

}

body.home {
    background: #fff;
}

.home-page {
    text-align: center;
}

.home-page form label {
    text-align: left;
}

body>footer {
    background-color: #1a374e;
    overflow: hidden;
    font-size: 14px;
    margin-top: 50px;
}

body>footer .wrapper {
    overflow: hidden;
    padding: 25px 0;
}

body>footer p {
    margin: 0;
    color: rgba(250,245,230,.72);
}

body>footer .wrapper a {
    font-weight: bold;
}

body>footer p.copyright {
    float: left;
}

body>footer p.powered {
    float: right;
}

.recipient-office {
    min-height: 28px;
}

.recipient-photo img {
    max-height: 147px;
    overflow-y: hidden;
    -o-object-fit: contain;
    object-fit: contain;
}

.recipient-profile .recipient-profile-disclaimer {
    margin-top: 15px;
    font-size: 13px;
    clear: both;
}

@media screen and (min-width: 768px) {
    body>header {
        height: 112px;
        padding-top: 10px;
        width: 100%;
        background-color: #1a374e;
        color: #fff;
        margin-bottom: 20px;
    }

    body>header>.wrapper {
        height: 112px;
        padding-top: 20px;
        box-sizing: border-box;
    }

    body>header>.wrapper>.logo {
        width: 280px;
        height: auto;
        display: block;
        position: relative;
        margin: 0;
        margin-left: 10px;
        background: transparent url(/theme/assets/lee-logo.png) no-repeat 0 0;
        background-size: contain;
    }

    body>header>.wrapper>.logo a {
        display: block;
        height: 85px;
    }

    body>header>.wrapper .user-welcome {
        color: rgba(250,245,230,.85);
        position: absolute;
        top: 5px;
        right: 0;
    }

    body>header>.wrapper .user-welcome a {
        color: #1a374e;
    }

    /* DESKTOP NAV */
    body>header>.wrapper>nav {
        display: flex;
        justify-content: flex-end;
        margin: 0;
        padding: 0 0 5px 0;
        width: 100%;
        position: absolute;
        top: 55px;
        font-family: pill-gothic-600mg, 'Helvetica Neue', Arial, sans-serif;
        letter-spacing: 1px;
    }

    body>header>.wrapper>nav>span {
        display: none;
    }

    body>header>.wrapper>nav>ul {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        list-style-type: none;
        margin: 0;
        padding: 0;
    }

    body>header>.wrapper>nav>ul>li {
        text-transform: uppercase;
        font-weight: normal;
        margin-left: 3rem;
    }

    body>header>.wrapper>nav>ul>li>a,
    body>header>.wrapper>nav>ul>li>a:link {
        color: #fff;
    }

    body>header>.wrapper>nav>ul>li>a:hover {
        color: #3aaade;
    }

    /* CONTENT */
    main > section > header, main > header {
        margin-top: 0;
    }


    body>.wrapper>main>section>header,
    body>.wrapper>main>header {
        text-align: left;
    }

    /* CONTENT */
    main>section>header>h1,
    main>header>h1 {
        font-weight: bold;
    }

    .list-template .recipients-view .recipients>.recipient>.details {
        margin-bottom: 5px;
    }



}


/* LIST TEMPLATE */
main.page.list-template>section {
    background-color: #fff;
}

.list-template .recipients>.recipient>picture .photo {
    border-radius: 0;
    border: 1px solid #cccccc;
}

.list-template .recipients-view .recipients.medium>.recipient>.details>.office {
    font-size: 13px;
}

@media screen and (min-width: 768px) {

    .list-template .recipients-view .recipients.featured>.recipient.featured {
        background-image: none;
    }

    /* FEATURED STAR */
    .list-template .recipients-view .recipients.featured > .recipient.featured picture:before {
        position: absolute;
        top: 10px;
        right: 10px;
        width: 30px;
        height: 30px;
        padding: 0;
        content: " ";
        background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAIAAAC0Ujn1AAADV0lEQVRIx31Wi1biMBDt//9Eq+6xgAqi6PpaXW1AQUQEQRTBCigq6iJQpIKw0wbSSdLdnpyevOZmMnNnJooWMKCpukE7/2w6+nszBATV2RLt0BloCpvyztA9oOnQhdB0TwkV43oIBGup4HO0WcPn4yGSJKrO3UbVuZu5WgsyugBhsCvni/W5IMH3E+A0fDMKzVmDNzHTevsgP5lM4qmy6qcmEiRMUPFzIBGtHzBab12Atiz7x3JCMKDgPbakYNUQFsH+NE6uAbf12oH/ec7kd0p9z9Y6phQRDA1tPhTvWQMATZyW4T8cjgKRpKaL1FR10cM8Q3j70pl0tgqID80/MDRrr9C/vm3ymhLZ/1NbqzxpsC7BSHJgDwFu9/ASllY3z6A/Ho+jWxkVsUIG8XGjHj7e2s+ls3fV+1b7wxqPAWpi1loMonTbnLhft/dp1luZ3N3eUSEUTcrE98iXK9Z6lj2RPjDCYvgEe79Ufnxv94Rt/U/7pvI0Jf6UIbO7hKKpTtdx1+NTO39VP0qUwhtnOMQ95rrD5fXTfaN4UajXH99ByraH0Z8ZnGcUnDeW19NW31H87v7Fl7AaF/rOqTeVJqVNbDfLWRy7kcrAyQP7C3ZXzGcp0ngKO5ZxcL+/xxCrnooBprWQJ3Vjfef862sEMuXqs4zoWdz1J7Dll1H0yZ2Y1xhlez8/Gn2DZGgtJUawu2EuaFDvgUuE5OfPa3wjIB9IHoIkUoRBx3aysPr61hWjF+UWBcce3vfc+gDhzb0L30QRXD1xslXfxpbEPuNCRliw3Lyx5BrEtQCBYxaCcbrKDDIPM3KR84nGme7zIULjEBgW3khDLLDQqN6/gDVgc7vzCcNILI1CnGB/KHJNg7YSS4PYR6dPLe4yYQImAp7RYa3x1nAjZef3JQsioeiIVYYugwBTE+CAhZHNMydi11KFUgMChK0mpnWHyFWUMYRg9sSTNzTGCqUHgBNCZnHl+DxvDgZOZOWKdT4tewlW8a0XyUwlkzMBQvWpftP+wlICtuWvGkJ21bwCphtyQGKOq3LN5nMFTz7PbQraIT0EUBrzSVUBnw0aqqiKWLq4uCcCq/7zrJELjcIlYlFrwoglvcp8nnP4+SBA+9R88QkZEA3FrqWJNiR/AW6Tpf8nMeUXAAAAAElFTkSuQmCC');
    }

    .list-template .recipients-view .recipients {
        grid-gap: 20px;
    }


}




    .list-template .recipients-view .contextual-content .max-out header h1 {
        font-family: unset;
        color: unset;
        text-transform: none;
    }

    .list-template .recipients-view .recipients.small>.recipient>.details>.office {
        font-size: 12px;
    }

    .list-template .recipients-view .recipients.small>.recipient>.details>.name {
        color: #1a374e;
    }


/* MANAGED USER */
.managed-user-registration form.payment_form .form-line:nth-child(-n+2) {
    display: none;
}

@media screen and (min-width: 500px) {

    .managed-user-registration-form-wrapper {
        width: 500px;
        margin: 0 auto;
    }

}

.managed-user-registration-form-wrapper .payment_form {
    width: 100%;
}

.managed-user-registration-thank-you {
    text-align: center;
}

.managed-user-registration-thank-you h1 {
    color: #1a374e;
    font-size: 22px;
}

.managed-user-registration-thank-you p {
    color: #838895;
    font-size: 16px;
}

@media (screen and max-width: 768px) {
    .list-template .recipients>.recipient>picture {
       padding: 0;
    }
}

/* PART B — TOKENS + POSTER TYPE (from Concept 8) */
:root{
  --primary-color:#1a374e;--text-color:#152431;--link-color:#1573a8;--link-hover-color:#1a374e;
  --border-color:#e1e6ef;--wrapper-max-width:1220px;--slate-spacing:1.1rem;
  --button-primary-background-color:#1a374e;--button-primary-border-color:#1a374e;--button-primary-color:#fff;
  --button-primary-border-radius:999px;--button-primary-text-transform:uppercase;
  --button-background-color:#fff;--button-border-color:#cfd8dd;--button-color:#1a374e;
  --button-selected-background-color:#1a374e;--button-selected-border-color:#1a374e;--button-selected-color:#fff;
  --donation-amount-button-background-color:#fff;--donation-amount-button-color:#1a374e;
  --donation-amount-button-selected-background-color:#1a374e;--donation-amount-button-selected-color:#fff;
  --donation-amount-button-selected-border-color:#1a374e;--donation-amount-button-font-weight:700;
  --recipient-photo-border-color:transparent;--recipient-photo-border-width:0;--recipient-photo-border-radius:0;
  --featured-banner-color:#fff;--featured-banner-background-color:transparent;--featured-banner-font-weight:800;
  --goal-progress-bar-color:#3aaade;--slate-cart-border-color:#e1e6ef;--slate-cart-color:#152431;
  --error-message-color:#e8363a;--error-border-color:#e8363a;--error-background-color:#fbe3e3;
}
body{font-family:"Inter",system-ui,Arial,sans-serif;color:#152431;-webkit-font-smoothing:antialiased;}
:focus-visible{outline:3px solid #3aaade;outline-offset:2px;}
/* PAGE HEADER — clean, no band: bold navy heading on the cream page */
main>section>header,main>header{background:transparent !important;color:inherit;border-radius:0 !important;padding:8px 0 0 !important;margin-bottom:22px;position:relative;overflow:visible;text-align:left;}
main>section>header>h1,main>header>h1,.page-header h1,.slate-page h1{font-family:"Archivo",sans-serif !important;font-weight:800 !important;font-size:clamp(28px,3.6vw,40px) !important;letter-spacing:-.5px;text-transform:none;color:#1a374e !important;line-height:1.1;margin-bottom:.5rem;}
main>section>header>div,main>header>div{color:#4a5560 !important;font-size:16px;max-width:900px;text-align:left;line-height:1.55;}
.slate-filters input,.slate-filters .k-input-inner{font-family:"Inter",sans-serif;font-size:15px;border:1px solid #cfd8dd;background:#fff;color:#152431;border-radius:999px;padding:12px 18px;}
.slate-filters input:focus{outline:none;border-color:#3aaade;box-shadow:0 0 0 4px rgba(58,170,222,.2);}
.donation-buttons>button{border-radius:999px;font-weight:700;}
.donation-buttons>.other-amount-option{border-radius:14px;border-color:#cfd8dd;}
.donation-buttons>.limit{color:#5e6f79;}

/* PART C — THEME-SHELL OVERRIDES (win over modern.css) */
html body{background-color:#eef3f6 !important;}
html body.home{background-color:#eef3f6 !important;}
html body>header{background-color:#1a374e !important;color:#faf5e6 !important;}
html body>header .user-welcome{color:rgba(250,245,230,.85) !important;}
html body>header .user-welcome a{color:#3aaade !important;}
html body>header>.wrapper>nav>ul>li>a,html body>header>.wrapper>nav>ul>li>a:link{color:#faf5e6 !important;}
html body>header>.wrapper>nav>ul>li>a:hover{color:#3aaade !important;}
html body>footer{background-color:#1a374e !important;}
/* footer text must stay legible on navy (the legal disclaimer was dark) */
html body>footer,html body>footer p,html body>footer div,html body>footer span,html body>footer small,html body>footer .disclaimer{color:rgba(250,245,230,.82) !important;}
html body>footer a,html body>footer .wrapper a{color:#9fd0ec !important;}
html body>header>.wrapper>.logo{filter:brightness(0) invert(1);}
html body .action-button,html body .payment-button,html body .payments-view button,
html body .slate-toolbar button:not([disabled]),html body .split-it>button{background-color:#1a374e !important;color:#fff !important;border-color:#1a374e !important;}

/* PART D — CONTAINED CARD (like #6/#1) — fixes the photo crop */
.recipient-card-list.vertical{grid-template-columns:repeat(3,minmax(0,1fr)) !important;grid-gap:24px !important;}
@media (max-width:1024px){.recipient-card-list.vertical{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media (max-width:768px){.recipient-card-list.vertical{grid-template-columns:1fr !important;}}
/* ALWAYS stack the card contents (photo on top, centered) — never the
   platform's cramped photo-left horizontal layout */
.recipient-card-list.vertical>.recipient-card{grid-template-columns:1fr !important;grid-template-rows:minmax(0,auto) auto 1fr auto !important;grid-template-areas:"featured" "photo" "info" "donation" !important;}
/* MOBILE: candidates first, cart tools below them (not above) */
@media (max-width:768px){
  .slate.multiple{display:flex !important;flex-direction:column !important;}
  .slate.multiple>.slate-recipients{order:1 !important;width:100% !important;}
  .slate.multiple>.slate-toolbar{order:2 !important;width:100% !important;}
  /* center the page heading + intro on mobile */
  main>section>header,main>header{text-align:center !important;}
  main>section>header>h1,main>header>h1,main>section>header>div,main>header>div{text-align:center !important;margin-left:auto !important;margin-right:auto !important;}
  /* keep the photo from dominating: cap it, and bump the card text up */
  .recipient-card-list.vertical>.recipient-card{max-width:430px !important;margin-left:auto !important;margin-right:auto !important;}
  .recipient-card-list.vertical>.recipient-card .recipient-photo .photo,
  .recipient-card-list.vertical>.recipient-card .recipient-photo img{max-width:100% !important;width:100% !important;height:auto !important;max-height:none !important;aspect-ratio:auto !important;object-fit:contain !important;border-radius:0 !important;margin:0 !important;display:block !important;}
  .recipient-info .name{font-size:1.55rem !important;}
  .recipient-info .office{font-size:14px !important;}
  .recipient-info .district{font-size:15px !important;}
  /* hide the empty "logged in" box that shows on mobile */
  body>header .user-welcome,body>header>.wrapper>.user-welcome{display:none !important;}
  /* hide the "Divide amount evenly" (Split) and "Donate the max" (Max Out) tools on mobile */
  .slate-allocation-tools{display:none !important;}
  /* collapse the 3 filters behind a "Filter" pill (CSS-only: reveal on tap/hover/focus) */
  .slate-filters{position:relative;display:block !important;text-align:center;}
  .slate-filters::before{content:"Filters ▾";display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;color:#1a374e;background:#fff;border:1px solid #cfd8dd;border-radius:999px;padding:11px 22px;font-size:14px;-webkit-user-select:none;user-select:none;}
  .slate-filters>*{max-height:0 !important;opacity:0 !important;overflow:hidden !important;margin:0 auto !important;pointer-events:none;transition:max-height .25s ease,opacity .2s ease,margin .2s ease;}
  .slate-filters:hover>*,.slate-filters:focus-within>*{max-height:200px !important;opacity:1 !important;overflow:visible !important;margin-top:10px !important;pointer-events:auto;}
}
.vertical>.recipient-card{padding:0 0 52px !important;overflow:hidden !important;background:#fff !important;border:1px solid #e1e6ef !important;border-radius:18px !important;box-shadow:0 2px 6px rgba(21,36,49,.05),0 14px 34px rgba(21,36,49,.07) !important;transition:transform .18s,box-shadow .18s;position:relative;}
.vertical>.recipient-card:hover{transform:translateY(-5px);box-shadow:0 10px 22px rgba(21,36,49,.12),0 28px 56px rgba(21,36,49,.16) !important;}
.vertical>.recipient-card>*+*{margin-top:.55rem !important;}
.recipient-card .recipient-photo{text-align:center;position:static !important;width:100% !important;margin:0 !important;}
/* FULL-BLEED photo — edge to edge, natural height, NOT cropped */
.recipient-card .recipient-photo .photo,.recipient-photo img.photo,.recipient-card .recipient-photo img{width:100% !important;max-width:100% !important;height:auto !important;max-height:none !important;aspect-ratio:auto !important;object-fit:contain !important;border:0 !important;border-radius:0 !important;display:block;margin:0 !important;}
/* name / office / district each on their OWN line */
.recipient-card>.recipient-info{text-align:center;padding:6px 18px 0 !important;margin-top:0 !important;}
.recipient-card>.recipient-donation{padding:0 18px !important;margin-top:22px !important;}
.recipient-info .name,.recipient-info .office,.recipient-info .district{display:block !important;}
.recipient-info .name{font-family:"Archivo",sans-serif !important;font-size:1.45rem !important;font-weight:800;color:#1a374e;line-height:1.22;margin-bottom:6px;}
.recipient-info .office{font-size:13.5px !important;letter-spacing:.6px;text-transform:uppercase;color:#1573a8;font-weight:700;margin-bottom:5px;}
.recipient-info .district{font-size:14.5px !important;color:#5e6f79;line-height:1.4;}
/* remove the platform-injected ( ) around the district/state text */
.recipient-info .district:before,.recipient-info .district:after,
.district:before,.district:after{content:"" !important;}
/* Featured badge hidden for now — styling kept below so it's easy to bring back (remove display:none to re-enable) */
.recipient-card>.recipient-featured-banner{display:none !important;position:absolute !important;top:14px;left:14px;margin:0 !important;z-index:3;background:#3aaade;color:#06212e;padding:5px 13px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;}
/* center the donation box ($ field) with its MAX line — comfortable width.
   The platform lays this out as a grid, so we flatten it to a centered
   block and give the input box a real width back. */
.recipient-card>.recipient-donation{display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;}
.recipient-card .donation-buttons.suggested-amounts-0{display:flex !important;flex-direction:column !important;align-items:center !important;width:100% !important;grid-template-columns:none !important;}
.recipient-card .donation-buttons.suggested-amounts-0>.other-amount-option{width:240px !important;max-width:90% !important;margin:0 !important;}
.recipient-card .donation-buttons:not(.suggested-amounts-0){justify-content:center !important;}
.recipient-card .donation-buttons>.limit,.recipient-card .recipient-donation .limit{text-align:center !important;float:none !important;width:auto !important;margin:3px auto 0 !important;font-size:11.5px !important;color:#7a8794 !important;}

/* PART E — small "Read their story" link, moved BELOW the amount box.
   The link lives inside .recipient-photo (top); we pin it to the card
   bottom with absolute positioning. Card reserves space via padding. */
.vertical>.recipient-card .recipient-photo .link,.recipient-card .recipient-photo .link,.recipient-teaser>.link{display:block !important;}
.recipient-card .recipient-photo .link{position:absolute !important;left:0;right:0;bottom:16px;margin:0 !important;text-align:center;font-size:0 !important;cursor:pointer;}
.recipient-card .recipient-photo .link::after{content:"Read their story \2192";font-family:"Inter",sans-serif;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#1573a8;}
.recipient-card .recipient-photo .link:hover::after{color:#1a374e;text-decoration:underline;}

/* PART F — RESTYLED DETAIL MODAL (Concept 8) */
.recipient-dialog .k-dialog{border:0 !important;border-radius:20px !important;overflow:hidden;box-shadow:0 30px 90px rgba(21,36,49,.42) !important;}
/* no decorative top bar — float the close button in the corner instead */
.recipient-dialog .k-dialog-titlebar,.recipient-dialog .k-window-titlebar{position:absolute !important;top:12px;right:12px;left:auto !important;width:auto !important;min-height:0 !important;background:transparent !important;border:0 !important;padding:0 !important;overflow:visible !important;z-index:20 !important;}
.recipient-dialog .k-dialog-titlebar .k-window-title,.recipient-dialog .k-window-titlebar .k-window-title{display:none !important;}
.recipient-dialog .k-dialog .k-dialog-content{padding:8px 32px 28px !important;}
.recipient-dialog .recipient-info .name{font-family:"Archivo",sans-serif !important;font-size:2rem !important;font-weight:800 !important;color:#1a374e !important;line-height:1.05;letter-spacing:-.5px;}
.recipient-dialog .recipient-info .office{display:inline-block !important;text-transform:uppercase !important;letter-spacing:.6px !important;color:#1573a8 !important;background:rgba(58,170,222,.14) !important;padding:4px 11px !important;border-radius:999px !important;font-weight:700 !important;font-size:12.5px !important;margin-top:8px;}
.recipient-dialog .recipient-info .district{display:block !important;color:#5e6f79 !important;font-size:15px !important;margin-top:8px;}
.recipient-dialog .recipient-description{font-size:16.5px !important;line-height:1.7 !important;color:#2b3a44 !important;border-top:1px solid #e7edf3 !important;margin-top:18px !important;padding-top:16px !important;}
.recipient-dialog .links{border-top:1px solid #e1e6ef !important;}
.recipient-dialog .links a{border-radius:999px !important;padding:10px 18px !important;font-weight:700 !important;}
.recipient-dialog .links a.site{background-color:#1a374e !important;border-color:#1a374e !important;}
/* POPUP STRUCTURE: top section (photo + profile info) on its own, then a
   separate bio section below. Stacking removes the empty column that sat
   beside the photo when the bio was tall. */
.recipient-dialog .single-recipient-card{display:flex !important;flex-direction:column !important;}
.recipient-dialog .recipient-photo{align-self:center !important;margin:0 0 12px !important;}
.recipient-dialog .recipient-info{text-align:center !important;width:100% !important;padding-bottom:18px !important;border-bottom:1px solid #e7edf3 !important;}
.recipient-dialog .recipient-description{text-align:left !important;width:100% !important;border-top:0 !important;margin-top:18px !important;padding-top:0 !important;}
/* --- modal refinements --- */
/* readable width + reliable internal scroll on any screen */
.recipient-dialog .k-dialog{max-width:640px !important;width:92vw !important;max-height:88vh !important;}
.recipient-dialog .k-dialog .k-dialog-content{max-height:88vh !important;overflow:auto !important;padding:24px 30px 26px !important;}
/* frame the donate area (where the modal renders it) so giving is the obvious next step */
.recipient-dialog .recipient-donation{max-width:none !important;background:#f3f7fb !important;border:1px solid #d9e2ec !important;border-radius:14px !important;padding:16px !important;margin:18px 0 6px !important;}
/* clearer, tappable close button (best-effort across Kendo versions) */
.recipient-dialog .k-window-action,.recipient-dialog .k-dialog-titlebar .k-button,.recipient-dialog .k-window-titlebar .k-button{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:36px !important;height:36px !important;min-width:36px !important;border-radius:999px !important;background:#fff !important;color:#1a374e !important;border:1px solid #e1e6ef !important;box-shadow:0 2px 8px rgba(21,36,49,.14) !important;overflow:visible !important;opacity:1 !important;}
.recipient-dialog .k-window-action:hover,.recipient-dialog .k-dialog-titlebar .k-button:hover{background:#f0f3f8 !important;}
/* PHOTO in popup: force a clean fixed SQUARE so faces aren't cropped into
   a wide banner. Container is a 150px square box; the image fills it with
   the crop biased toward the top so the head stays in frame. Covers both
   <img> and background-image implementations. */
.recipient-dialog .recipient-photo{display:block !important;align-self:center !important;width:150px !important;height:150px !important;min-width:150px !important;max-width:150px !important;margin:0 auto 14px !important;flex:0 0 auto !important;border-radius:14px !important;overflow:hidden !important;box-shadow:0 6px 18px rgba(21,36,49,.16) !important;background-size:cover !important;background-position:center 18% !important;padding:0 !important;position:relative !important;}
.recipient-dialog .recipient-photo img,.recipient-dialog .recipient-photo .photo,.recipient-dialog .recipient-photo picture,.recipient-dialog .recipient-photo picture img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;max-width:100% !important;max-height:100% !important;min-width:0 !important;aspect-ratio:auto !important;object-fit:cover !important;object-position:center 18% !important;background-size:cover !important;background-position:center 18% !important;border:0 !important;border-radius:0 !important;margin:0 !important;padding:0 !important;display:block !important;}
/* tidy social row */
.recipient-dialog .links{gap:.6rem !important;padding-top:14px !important;margin-top:1rem !important;}
.recipient-dialog .links a{border-radius:8px !important;padding:9px 14px !important;font-size:13px !important;}
/* mobile: near full-screen, comfortable padding */
@media (max-width:560px){
  .recipient-dialog .k-dialog{width:96vw !important;max-height:92vh !important;border-radius:14px !important;}
  .recipient-dialog .k-dialog .k-dialog-content{padding:8px 18px 20px !important;}
}

/* PART G — STICKY BRANDED CART (Concept 8) */
.slate-toolbar{align-self:start;}
@media (min-width:992px){.slate-toolbar{position:sticky !important;top:128px !important;}}
.slate-cart{border:0 !important;border-radius:20px !important;background:#fff !important;padding:22px !important;box-shadow:0 2px 6px rgba(21,36,49,.06),0 16px 36px rgba(21,36,49,.08) !important;}
.slate-cart>h1{font-family:"Archivo",sans-serif !important;font-weight:800 !important;color:#1a374e !important;}
.slate-toolbar section{margin-bottom:1rem;}
