/* Banking Press 1.1 — one continuous editorial grid, based on layout.png. */
@font-face{font-family:'Source Serif 4';src:url('../fonts/source-serif-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url('../fonts/source-serif-semibold.woff2') format('woff2');font-style:normal;font-weight:600 900;font-display:swap}
:root{--pl-font-serif:'Source Serif 4',Georgia,serif;--pl-container:1440px;--pl-accent:#ef2930;--pl-brand:#444397;--pl-bg-alt:#f5f5fa;--pl-ink:#101010;--pl-bg-dark:#34333e;--banking-line:#dddde7;--banking-rail:410px;--banking-column-gap:80px}
.container{width:calc(100% - 40px);max-width:var(--pl-container);padding-inline:0}
.site-main{padding-block:36px 90px}
.site-header .container,.brandbar .container{max-width:1520px}
.brandbar{background:#34333e;font-size:14px}
.brandbar__inner{min-height:45px}
.site-header__inner{min-height:68px}
.site-branding{min-width:0;max-width:230px;flex:0 0 165px;width:165px}
.site-branding>a{width:100%}
.site-branding .custom-logo{width:100%;max-width:220px;max-height:38px;height:auto}
.site-title{font-family:var(--pl-font-sans);font-size:22px;letter-spacing:.025em;text-transform:uppercase;white-space:normal}
.site-header__actions>.btn{display:none}
.nav--primary{display:none}
.menu-toggle{display:inline-flex}
.topics-bar{background:var(--pl-bg-alt);border:0}
.card__title,.ranked__link,.newsletter-band__title{font-weight:600}
.section-title,.widget__title{font-size:20px;letter-spacing:0;line-height:1.4;text-transform:uppercase;font-family:var(--pl-font-sans);font-weight:600;padding-top:20px;margin-bottom:24px}
.section-title:before,.widget__title:before{width:100px;height:5px;background:var(--pl-accent)}

/* Both columns begin in this grid; no nested grid can change the rail width. */
.banking-home-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:70px;align-items:start}
.banking-main,.banking-sidebar,.banking-latest{min-width:0;width:100%}
.banking-feature{margin-bottom:70px}
.card--hero .card__media{aspect-ratio:16/9;border-radius:5px;overflow:hidden}
.card--hero .card__title{font-size:clamp(30px,3.15vw,44px);line-height:1.2;margin-top:18px;margin-bottom:8px}
.card__dek{font-family:var(--pl-font-serif);font-size:19px;line-height:1.45;color:#151515}
.card--hero .card__dek{font-size:21px;line-height:1.5}
.banking-feature .card__meta{display:none}
.card--row{gap:24px;padding-block:32px;border-color:#e4e4ed}
.card--row .card__title{font-size:clamp(25px,2.1vw,34px);line-height:1.24;margin-bottom:7px}
.card--row .card__media{aspect-ratio:16/9;border-radius:4px;overflow:hidden;align-self:start}
.card__meta{font-family:var(--pl-font-sans);font-size:15px;line-height:1.5;margin-top:18px}
.banking-home .card__meta .tag+.tag{display:none}
.banking-more{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:52px 0 32px}
.banking-more .btn{background:#fff;border:1px solid #111;color:#111;padding:13px 20px;min-height:52px;font-size:17px}
.banking-more .btn:hover{background:var(--pl-bg-alt)}

/* Every widget's outer box is flush with the exact same rail edges. */
.banking-sidebar{position:static;display:flex;flex-direction:column;align-items:stretch;gap:0;align-self:start;padding:0;border:0}
.banking-sidebar>.widget{box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;flex:none;overflow-wrap:anywhere}
.banking-sidebar>.widget+.widget{margin-top:72px}
.banking-sidebar>.widget_banking_ad+.newsletter-box{margin-top:34px}
.banking-sidebar .widget__title{margin-bottom:26px}
.banking-sidebar .ranked{margin:0;padding:0;list-style:none}
.banking-sidebar .ranked__item{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;min-height:0;padding:24px 0;border:0;align-items:start}
.banking-sidebar .ranked__item:first-child{padding-top:0}
.banking-sidebar .ranked__item:last-child{padding-bottom:0}
.banking-sidebar .ranked__item+.ranked__item::after{content:'';position:absolute;top:0;left:40px;right:0;height:1px;background:var(--banking-line)}
.banking-sidebar .ranked__item::before{font-family:var(--pl-font-sans);font-size:22px;line-height:1.4;font-weight:500}
.banking-sidebar .ranked__item:has(.ranked__kicker)::before{padding-top:23px}
.banking-sidebar .ranked__link{font-size:22px;line-height:1.35;font-weight:600}
.ranked__kicker{display:block;font-family:var(--pl-font-sans);font-size:15px;line-height:21px;font-weight:500;text-transform:uppercase;margin-bottom:2px}
.banking-sidebar>.newsletter-box{padding:28px;border:1px solid var(--banking-line);border-radius:6px;background:#fff}
.banking-sidebar .newsletter-box__heading{position:relative;padding-top:24px;font-size:29px;line-height:1.2;margin:0 0 24px;font-weight:600}
.banking-sidebar .newsletter-box__heading:before{content:'';position:absolute;top:0;left:0;width:100px;height:5px;background:var(--pl-accent)}
.banking-sidebar .newsletter-box__text{font-family:var(--pl-font-sans);font-size:18px;line-height:1.55;margin-bottom:20px}
.banking-sidebar .newsletter-form{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.banking-sidebar .newsletter-form .btn{width:auto;min-width:156px;min-height:50px;align-self:flex-start;font-size:17px}
.banking-sidebar .card--compact{display:grid;grid-template-columns:29% minmax(0,1fr);gap:20px;align-items:start;padding-block:24px;border-top:1px solid var(--banking-line)}
.banking-sidebar .card--compact:first-child{padding-top:0;border-top:0}
.banking-sidebar .card--compact:last-child{padding-bottom:0}
.banking-sidebar .card--compact .card__media{aspect-ratio:16/9;border-radius:4px}
.banking-sidebar .card--compact .card__title{font-size:22px;line-height:1.3;margin:0}
.banking-sidebar .widget__list{display:block}
.banking-sidebar .resource-list>li{display:grid;grid-template-columns:62px minmax(0,1fr);gap:16px;align-items:start;padding:25px 0;border-top:1px solid var(--banking-line)}
.banking-sidebar .resource-list>li:first-child{border-top:0;padding-top:0}
.banking-sidebar .resource-list__icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:var(--pl-bg-alt);color:#1a194b}
.banking-sidebar .resource-list__icon svg{width:32px;height:32px}
.banking-sidebar .resource-list__title,.banking-sidebar .announce-list__title{font-size:22px;line-height:1.3;font-family:var(--pl-font-serif);font-weight:600}
.banking-sidebar .resource-list__kicker,.banking-section-kicker{font-family:var(--pl-font-sans);font-size:14px;font-weight:400;line-height:1.5;text-transform:uppercase;color:#787987;margin:0 0 3px}
.banking-sidebar .resource-list__source,.banking-sidebar .announce-list__source,.banking-section-source{display:block;font-family:var(--pl-font-sans);font-size:14px;line-height:1.6;color:#838593;margin:8px 0 0}
.banking-sidebar .announce-list>li{padding:24px 0;border-top:1px solid var(--banking-line)}
.banking-sidebar .announce-list>li:first-child{padding-top:0;border-top:0}
.banking-sidebar .widget__links{margin:25px 0 0;font-size:17px;line-height:1.5;font-family:var(--pl-font-sans);font-weight:400}
.banking-sidebar .widget__links a{text-decoration:underline;text-underline-offset:2px}
.banking-section-item{padding:24px 0;border-top:1px solid var(--banking-line)}
.banking-section-item:first-child{padding-top:0;border-top:0}
.banking-section-item:last-child{padding-bottom:0}
.banking-section-item h3{font-size:22px;line-height:1.3;font-family:var(--pl-font-serif);font-weight:600;margin:0}
.banking-section-list--pl_event .banking-section-item{display:grid;grid-template-columns:65px minmax(0,1fr);gap:20px}
.banking-event-date{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:85px;padding:12px 5px;border-radius:6px;background:var(--pl-bg-alt);font-family:var(--pl-font-sans);text-transform:uppercase;line-height:1.3;color:#222}
.banking-event-date strong{font-size:25px;font-weight:600}
.banking-event-date span{font-size:16px}
.banking-section-source--event{font-style:italic;line-height:1.8}

/* Scheduled placements remain inside their parent column. */
.ad-slot--leaderboard{margin:0;padding:20px;background:repeating-linear-gradient(135deg,#fff 0,#fff 7px,#efeff1 7px,#efeff1 8px)}
.ad-slot--leaderboard .ad-slot__body{width:min(100%,910px);min-height:0;margin:auto;display:grid;place-items:center}
.ad-slot__body img{display:block;max-width:100%;width:100%;height:auto}
.ad-slot--leaderboard .ad-slot__label,.banking-sidebar .ad-slot__label,.banking-home .ad-slot--infeed .ad-slot__label{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.banking-sidebar .ad-slot{width:100%;margin:0;padding:0;background:repeating-linear-gradient(135deg,#fff 0,#fff 7px,#efeff1 7px,#efeff1 8px)}
.banking-sidebar .ad-slot__body{max-width:none;width:100%;min-height:0;margin:0;padding:0 18px}
.banking-home .ad-slot--infeed{margin:0;padding:0 0 35px;background:#fff;border-bottom:1px solid #e4e4ed}
.banking-home .ad-slot--infeed .ad-slot__body{width:min(100%,375px);min-height:0;margin:auto}
.banking-report{padding:28px;background:var(--pl-bg-alt);border:1px solid #e1e1eb;border-radius:4px}
.banking-report h3{font-size:24px;line-height:1.3;font-weight:600;margin:0 0 12px}
.banking-report__body>p:not(.banking-section-kicker){font-family:var(--pl-font-sans);font-size:17px;line-height:1.5;margin-bottom:22px}
.banking-report .btn{font-size:15px;border-radius:4px;background:#111;color:#fff;min-height:48px;padding:12px 18px}
.banking-report--infeed{margin:18px 0 35px;padding:32px;display:grid;gap:28px;border-radius:0}
.banking-report__image img{width:100%;height:auto;max-height:260px;object-fit:contain}
.banking-category{margin-top:60px}
.banking-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.banking-section-head>a{white-space:nowrap;font-size:14px}
.banking-category-grid{display:grid;gap:28px}
.banking-category-grid .card__title{font-size:25px}

/* The wide newsletter and the footer retain the reference's outer alignment. */
.newsletter-band{background:var(--pl-bg-alt);padding-block:55px}
.newsletter-band__inner{display:grid;gap:34px;align-items:center;max-width:1160px}
.newsletter-band__title{font-size:clamp(30px,3vw,42px);line-height:1.22;max-width:650px}
.newsletter-band__title:before{width:100px;height:5px;background:var(--pl-accent);margin-bottom:18px}
.newsletter-band__text{font-size:20px;line-height:1.4;margin-bottom:20px}
.newsletter-band .newsletter-form{max-width:625px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.newsletter-form{position:relative}
.newsletter-form input[type=email]{background:#fff;border:1px solid #c8cbd7;border-radius:0;width:100%;height:52px;font-family:var(--pl-font-sans);font-size:18px;padding:10px}
.newsletter-form .btn{min-width:156px;min-height:51px;padding:12px 24px}
.bcms-consent{display:flex;gap:8px;align-items:flex-start;font-family:var(--pl-font-sans);font-size:12px;font-weight:400;line-height:1.5;color:#53535d}
.bcms-consent input{flex-shrink:0;width:16px;height:16px;margin-top:2px}
.bcms-consent a{text-decoration:underline}
.bcms-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.newsletter-status{font-size:16px;border-left:3px solid var(--pl-brand);padding:10px 16px;background:#fff}
.newsletter-band__media{display:block;width:100%;max-width:410px;justify-self:center}
.banking-phone-scene{height:370px;position:relative;display:grid;place-items:center;isolation:isolate}
.banking-phone-orbit{width:min(300px,calc(100% - 40px));height:auto;aspect-ratio:1;position:absolute;border-radius:50%;background:#444397;z-index:-1}
.banking-phone-orbit:before{content:'';position:absolute;inset:-18px;border:1px solid #d5d5e0;border-radius:50%}
.banking-phone-orbit:after{content:'';position:absolute;background:var(--pl-accent);width:14px;height:14px;top:30px;left:-6px;border-radius:50%}
.banking-phone{height:352px;width:191px;border:6px solid #181941;border-radius:25px;transform:rotate(12deg) skewY(-3deg);background:#fff;box-shadow:7px 5px 0 #363653;overflow:hidden;padding:13px 9px}
.banking-phone-screen{font-family:Arial,sans-serif;font-style:italic;color:#101018;line-height:1.3}
.banking-phone-screen>strong{display:block;font-size:20px;letter-spacing:-1px}
.banking-phone-screen>small{font-size:9px;display:block;margin-top:5px}
.banking-phone-screen>b{font-size:12px;display:block;margin-top:12px}
.banking-phone-screen>p{font-size:9px;margin:7px 0 12px}
.banking-phone-screen>hr{margin:12px 0;border:0;border-top:1px solid #e3e3ea}
.banking-phone-mark{font-size:13px}
.site-footer{padding-top:60px;padding-bottom:70px;border:0;background:#fff}
.footer-grid{display:grid;grid-template-columns:1fr;gap:35px;padding-bottom:85px}
.footer-col__title{font-size:20px;letter-spacing:0;margin-bottom:24px}
.footer-col ul{font-size:20px;gap:17px;line-height:1.5;color:#202032}
.footer-brand .social-list{margin-top:50px;gap:24px}
.footer-brand .site-branding{margin-bottom:0}
.banking-ownership{border-top:1px solid #dddde4;padding-top:42px;display:grid;gap:28px;font-size:20px;color:#202032;line-height:1.6}
.banking-ownership-logo img{max-width:280px;height:auto}
.banking-ownership-text p{margin:0 0 28px}
.banking-ownership .footer-legal__menu{justify-content:flex-start;font-size:inherit;gap:0;display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0}
.banking-ownership .footer-legal__menu li+li:before{content:'|';margin:0 8px}
.banking-ownership a{text-decoration:underline;text-underline-offset:3px}
.single .entry-title{font-size:clamp(32px,4vw,56px)}
@media(min-width:540px){.container{width:calc(100% - 64px)}.site-branding{width:205px;flex-basis:205px}.site-header__actions>.btn{display:inline-flex}.footer-grid,.banking-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.banking-report--infeed{grid-template-columns:180px minmax(0,1fr)}}
@media(min-width:720px){.card--row{grid-template-columns:29% minmax(0,1fr)}.newsletter-band__inner{grid-template-columns:1.5fr 1fr;gap:45px}.newsletter-band__text{font-size:22px}.banking-phone-scene{height:400px}.banking-phone{height:365px;width:200px}.banking-sidebar{max-width:100%}.ad-slot--leaderboard .ad-slot__body{min-height:112px}}
@media(min-width:1024px){.container{width:calc(100% - 100px)}.site-header .container,.brandbar .container{width:calc(100% - 80px)}.site-main{padding-top:60px}.banking-home-grid{grid-template-columns:minmax(0,1fr) clamp(300px,27vw,var(--banking-rail));column-gap:clamp(40px,5vw,var(--banking-column-gap))}.banking-sidebar{align-self:start}.card--row{padding-block:38px;gap:32px}.card__dek{font-size:21px}.card--hero .card__dek{font-size:23px}.nav--primary>ul{gap:22px}.nav--primary a{font-size:18px}.nav--topics>ul{justify-content:center;gap:27px;min-height:62px}.nav--topics a{font-size:18px}.newsletter-band{padding-block:65px}.footer-grid{grid-template-columns:.95fr 1fr 1.03fr 1.5fr;gap:50px}.banking-ownership{grid-template-columns:350px minmax(0,1fr);gap:50px}}
@media(min-width:1180px){.nav--primary{display:block}.menu-toggle{display:none}.nav--primary>ul>li>a{font-weight:400}}
@media(min-width:1400px){.container{width:calc(100% - 160px)}.newsletter-band__inner{grid-template-columns:625px 1fr;gap:125px}.newsletter-band__media{width:370px}.card--row{grid-template-columns:285px minmax(0,1fr);gap:38px}.banking-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep a text title and tagline inside the branding column on new installs. */
.site-branding{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px}
.site-branding .site-title{display:block;width:100%;max-width:100%;overflow-wrap:anywhere;line-height:1.2;margin:0}
.site-branding .site-description{display:block;width:100%;max-width:100%;font-size:12px;line-height:1.4;margin:0;white-space:normal;overflow-wrap:break-word}
.widget_search .search-form,.wp-block-search__inside-wrapper{display:flex;gap:8px;min-width:0}
.widget_search input[type=search],.wp-block-search__input{min-width:0;flex:1;width:100%}
.widget_search input[type=submit],.wp-block-search__button{flex-shrink:0;white-space:nowrap;word-break:normal;padding:12px 16px}
.site-branding .site-title a{line-height:inherit;overflow-wrap:inherit}
