/* Koke theme: page chrome, homepage and layout. Components (cards, forms, ticket) live in koke-core.css. */
:root{
	--k-ink:#0E2236;--k-spruce:#0A5C55;--k-go:#11774A;--k-go-dark:#0B5C38;--k-mint:#DDF0E6;
	--k-amber-ink:#8A4B05;--k-amber-wash:#FFF3D9;--k-surface:#EFF5F3;--k-line:#D2DDDA;--k-text:#172630;--k-muted:#4B5F67;
	--k-band:clamp(3rem,7vw,5.5rem);
}
html{scroll-padding-top:88px}
.wp-site-blocks>*+*{margin-block-start:0}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-variant-numeric:lining-nums}
::selection{background:var(--k-mint);color:var(--k-ink)}
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
main h2{margin-top:clamp(2.25rem,5vw,3.25rem);margin-bottom:.75rem}
main h3{margin-bottom:.4rem}
.koke-lede{font-size:var(--wp--preset--font-size--lead);color:var(--k-muted);margin-top:0}
/* Keep measure short but left-aligned inside constrained (centred) layouts. */
.is-layout-constrained>.koke-lede{max-width:62ch!important;margin-left:max(0px,calc((100% - 1200px)/2))!important}
.koke-faq{max-width:none!important}
.koke-faq details{max-width:860px}

/* ---------- Disclosure bar ---------- */
.koke-disclosure-bar{background:var(--k-ink);color:#E8EEF0;font-size:.8125rem;line-height:1.45;padding:.45rem 16px}
.koke-disclosure-bar p{margin:0;color:inherit}
.koke-disclosure-bar a{color:#fff}

/* ---------- Header ---------- */
header.wp-block-template-part{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--k-line)}
.admin-bar header.wp-block-template-part{top:32px}
.koke-header{max-width:1232px;margin:0 auto;padding:.6rem 16px;gap:1.25rem;align-items:center}
.koke-logo{display:inline-flex;align-items:center;min-height:48px;flex:none}
.koke-logo img{display:block;width:136px;height:auto}
.koke-nav{flex:1;font-family:var(--wp--preset--font-family--body);font-weight:700;font-size:.9375rem}
.koke-nav .wp-block-navigation-item__content{color:var(--k-ink);text-decoration:none;padding:.5rem .15rem;border-bottom:2px solid transparent}
.koke-nav .wp-block-navigation-item__content:hover,.koke-nav .current-menu-item>.wp-block-navigation-item__content{border-bottom-color:var(--k-go)}
.koke-nav .wp-block-navigation__container{gap:1.4rem}
.koke-header-apply{flex:none;align-self:center;height:46px;min-height:0!important;padding-block:0;padding-inline:1.2rem}
@media (max-width:781px){
	.koke-header{gap:.6rem}
	.koke-logo img{width:112px}
	.koke-nav{flex:0 0 auto;order:3}
	.koke-header-apply{order:2;margin-left:auto;height:42px;padding-inline:.9rem;font-size:.9375rem}
	.koke-nav .wp-block-navigation__responsive-container.is-menu-open{padding:1.5rem 16px}
	.koke-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:.25rem;font-size:1.25rem}
}

/* ---------- Main ---------- */
main.wp-block-group{padding-block:1.75rem 0}
main.wp-block-group:not(.koke-home){padding-bottom:var(--k-band)}
main.koke-home{padding-top:0}

/* ---------- Homepage hero ---------- */
.koke-hero{padding-block:clamp(2rem,5vw,4.5rem) clamp(1.5rem,3vw,2.5rem);background:#fff}
.koke-hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.koke-hero__title{font-size:var(--wp--preset--font-size--hero)!important;font-weight:800;letter-spacing:-.03em;line-height:1.02;max-width:14ch;margin:0 0 1.25rem}
.koke-hero .koke-answer--plain{font-size:var(--wp--preset--font-size--lead);max-width:54ch;margin:0 0 1.25rem}
.koke-checks{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;gap:.5rem}
.koke-checks li{position:relative;padding-left:1.9rem;font-weight:600;color:var(--k-ink)}
.koke-checks li::before{content:"";position:absolute;left:0;top:.2em;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--k-mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 7' fill='none' stroke='%2311774A' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}
.koke-hero__links{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin:0;font-weight:700}
.koke-hero__links a{color:var(--k-spruce)}
.koke-hero .koke-disclosure{margin-top:clamp(1.5rem,3vw,2.5rem);padding-top:1rem;border-top:1px solid var(--k-line)}
@media (max-width:900px){
	.koke-hero__grid{grid-template-columns:1fr;gap:1.25rem}
	.koke-hero__title{max-width:18ch;margin-bottom:0}
	/* Put the application ticket right under the headline on phones. */
	.koke-hero__copy{display:contents}
	.koke-hero__title{order:1}
	.koke-hero__grid>.koke-ticket{order:2;margin-bottom:.5rem}
	.koke-hero .koke-answer--plain{order:3;margin:0}
	.koke-checks{order:4;margin:0}
	.koke-hero__links{order:5}
}

/* ---------- Bands ---------- */
.koke-band{padding-block:var(--k-band)}
.koke-band--mist{background:var(--k-surface)}
.koke-band>h2:first-child,.koke-band>.wp-block-heading:first-child{margin-top:0}
.koke-home>.koke-featured{padding-block:0 var(--k-band)}
.koke-featured>h2{margin-top:0}

/* ---------- How applying works (a real sequence) ---------- */
.koke-steps{list-style:none;padding:0;margin:1.75rem 0 2rem;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,3vw,2.5rem);counter-reset:k}
.koke-steps li{counter-increment:k;position:relative;padding-top:4.25rem}
.koke-steps li::before{content:counter(k);position:absolute;top:0;left:0;width:3rem;height:3rem;border-radius:50%;background:var(--k-ink);color:#fff;font:800 1.375rem/3rem var(--wp--preset--font-family--display);text-align:center}
.koke-steps li:not(:last-child)::after{content:"";position:absolute;top:1.5rem;left:3.75rem;right:-1rem;border-top:2px dashed var(--k-line)}
.koke-steps h3{font-size:var(--wp--preset--font-size--h-4);margin:0 0 .4rem}
.koke-steps p{margin:0;color:var(--k-muted)}
.koke-steps__go{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin:0}
@media (max-width:781px){
	.koke-steps{grid-template-columns:1fr}
	.koke-steps li{padding:0 0 0 4rem;min-height:3rem}
	.koke-steps li:not(:last-child)::after{top:3.4rem;left:1.45rem;right:auto;bottom:-1.2rem;border-top:0;border-left:2px dashed var(--k-line)}
}

/* ---------- Alternatives + rights ---------- */
.koke-split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.koke-split h2{margin-top:0}
.koke-alternatives{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:.25rem 1.5rem}
.koke-alternatives li{padding:.85rem 0;border-top:1px solid var(--k-line)}
.koke-alternatives strong{display:block;font-family:var(--wp--preset--font-family--display);font-size:1.125rem;color:var(--k-ink);margin-bottom:.15rem}
.koke-rights{background:var(--k-ink);color:#E8EEF0;border-radius:20px;padding:clamp(1.5rem,3vw,2.25rem)}
.koke-rights h2{color:#fff;font-size:var(--wp--preset--font-size--h-3)}
.koke-rights a{color:#fff}
.koke-rights__list{padding-left:1.1rem;margin:0;display:grid;gap:.6rem}
.koke-rights__list li::marker{color:#7FD1A6}
@media (max-width:900px){.koke-split{grid-template-columns:1fr}}

/* ---------- City index ---------- */
.koke-city-index{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:1.75rem 2rem;margin-top:1.5rem}
.koke-city-index h3{font-size:1rem;font-family:var(--wp--preset--font-family--body);font-weight:700;color:var(--k-muted);margin:0 0 .5rem;padding-bottom:.4rem;border-bottom:2px solid var(--k-ink)}
.koke-city-index ul{list-style:none;padding:0;margin:0;display:grid;gap:.15rem}
.koke-city-index a{display:block;padding:.3rem 0;font-family:var(--wp--preset--font-family--display);font-weight:700;font-size:1.125rem;color:var(--k-ink);text-decoration:none}
.koke-city-index a:hover{color:var(--k-go);text-decoration:underline}

/* ---------- Reading list ---------- */
.koke-reads .wp-block-post-template{gap:1.5rem!important}
.koke-reads li{border-top:3px solid var(--k-ink);padding-top:.9rem}
.koke-reads .wp-block-post-title{font-size:1.1875rem;margin:0 0 .4rem}
.koke-reads .wp-block-post-title a{color:var(--k-ink);text-decoration:none}
.koke-reads .wp-block-post-title a:hover{text-decoration:underline}
.koke-reads .wp-block-post-excerpt{font-size:.9375rem;color:var(--k-muted)}
.koke-reads .wp-block-post-excerpt__more-link{display:none}
@media (max-width:900px){.koke-reads .wp-block-post-template{grid-template-columns:1fr 1fr!important}}
@media (max-width:560px){.koke-reads .wp-block-post-template{grid-template-columns:1fr!important}}
.koke-faq-title{margin-top:clamp(3rem,6vw,4.5rem)!important}

/* ---------- Final call to action ---------- */
.koke-final{background:var(--k-spruce);color:#E9F4F1;padding-block:var(--k-band)}
.koke-final__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:2rem 3rem;align-items:center}
.koke-final h2{color:#fff;font-size:var(--wp--preset--font-size--h-1);font-weight:800;letter-spacing:-.025em;margin:0 0 1rem;max-width:18ch}
.koke-final p{max-width:56ch}
.koke-final__fine{font-size:.875rem;opacity:.9}
.koke-final__action{display:grid;gap:.75rem;justify-items:start}
.koke-final .koke-btn--primary{background:#fff;color:var(--k-ink)}
.koke-final .koke-btn--primary:hover{background:var(--k-mint);color:var(--k-ink)}
@media (max-width:781px){.koke-final__grid{grid-template-columns:1fr}.koke-final__action{justify-items:stretch}}

/* ---------- Location page head ---------- */
.koke-loc-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;margin-bottom:1rem}
.koke-loc-head .wp-block-post-title{font-size:var(--wp--preset--font-size--h-1);font-weight:800;letter-spacing:-.025em;line-height:1.06;margin-top:.25rem}
.koke-loc-head .koke-ticket{position:sticky;top:96px}
@media (max-width:900px){
	.koke-loc-head{grid-template-columns:1fr;gap:1rem}
	.koke-loc-head .koke-ticket{position:static}
	/* Phones: headline, short answer, then the application ticket, then the rule figures. */
	.koke-loc-head__copy{display:contents}
	.koke-loc-head .koke-answer{order:2}
	.koke-loc-head>.koke-ticket{order:3}
	.koke-loc-head .koke-rules-strip,.koke-loc-head .koke-rules-strip~*{order:4}
}

/* ---------- Apply page ---------- */
.koke-apply-page__head{margin-bottom:1.5rem}
.is-layout-constrained>.koke-apply-page__head{max-width:760px!important;margin-left:max(0px,calc((100% - 1200px)/2))!important}
.koke-apply-page__head h1{font-weight:800;letter-spacing:-.025em;margin:.25rem 0 .5rem}

/* ---------- Generic page titles ---------- */
main>.wp-block-post-title,main>h1.wp-block-heading{font-weight:800;letter-spacing:-.025em}

/* ---------- Footer ---------- */
.koke-footer{padding-block:3.5rem 2rem;margin-top:0;background:var(--k-ink)!important}
.koke-footer a{color:#fff}
.koke-footer ul{list-style:none;padding:0}
.koke-footer li{margin:.45rem 0}
.koke-footer h2{font-size:1.0625rem;margin-top:0;color:#fff}
.koke-footer p,.koke-footer li,.koke-footer .koke-disclosure{color:#D9E3E6}
.koke-footer .koke-disclosure{border-top:1px solid rgba(255,255,255,.18);padding-top:1.25rem;margin-top:2rem}
.koke-footer-logo{display:block;width:140px;height:auto;margin-bottom:.75rem}
.koke-footer .koke-btn--primary{color:#fff}

/* ---------- Sticky mobile apply bar ---------- */
.koke-sticky{display:none}
@media (max-width:781px){
	.koke-sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;gap:.75rem;padding:.6rem 16px calc(.6rem + env(safe-area-inset-bottom));background:var(--k-ink);color:#fff}
	.koke-sticky__txt{flex:1;font-weight:700;font-size:.875rem;line-height:1.25}
	.koke-sticky__txt small{font-weight:400;opacity:.85}
	.koke-sticky .koke-btn{flex:none;min-width:9.5rem}
	.koke-sticky[hidden],body.has-koke-tray .koke-sticky{display:none}
	body.has-koke-sticky{padding-bottom:72px}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---------- Lender profile layout ---------- */
.koke-lender-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.koke-lender-layout__main{min-width:0;max-width:780px}
.koke-lender-layout__main .wp-block-post-title{font-weight:800;letter-spacing:-.025em;line-height:1.06}
.koke-lender-layout>.koke-ticket{position:sticky;top:96px}
@media (max-width:1000px){.koke-lender-layout{grid-template-columns:1fr}.koke-lender-layout>.koke-ticket{position:static;justify-self:stretch;max-width:none}}
.koke-byline{font-size:.9375rem;color:var(--k-muted);margin-top:-.25rem}
/* Content pages sit on the left of the 1200px grid rather than floating mid-screen. */
main.wp-block-group:has(> .wp-block-post-content) > *:not(.alignfull):not(.alignwide){margin-left:max(0px,calc((100% - 1200px)/2))!important}

/* ---------- Tables in written content ---------- */
.wp-block-table{margin:1.25rem 0;overflow-x:auto}
.wp-block-table table{width:100%;border-collapse:collapse;font-size:.9375rem;font-variant-numeric:tabular-nums}
.wp-block-table th{text-align:left;font-weight:700;color:var(--k-ink);border-bottom:2px solid var(--k-ink);padding:.6rem .75rem}
.wp-block-table td{border-bottom:1px solid var(--k-line);padding:.6rem .75rem;vertical-align:top}
.wp-block-table td,.wp-block-table th{border-left:0;border-right:0;border-top:0}
.wp-block-post-content h2{margin-top:2.25rem}
.wp-block-post-content :is(p,li){max-width:70ch}
