/*
Theme Name: The Country Bank of Needham Complete Banking Theme
Theme URI: https://thecountrybankofneedham.com
Author: The Country Bank of Needham
Description: Complete banking website theme with product pages, account opening CTAs, compliance disclosures, routing-number page, downloadable PDF agreements, and contact/enrollment forms.
Version: 2.7.0
Text Domain: tcbon-bank
*/
:root{--red:#850909;--red2:#a70e0e;--ink:#171717;--muted:#666;--cream:#faf7f1;--line:#e9ded1;--gold:#b99a5b;--white:#fff}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}a{color:var(--red);text-decoration:none}img{max-width:100%;height:auto}.wrap{width:min(1180px,92vw);margin:0 auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{display:flex;align-items:center;gap:22px;min-height:86px}.brand{display:flex;align-items:center;gap:14px;color:var(--ink);min-width:300px}.brand img{width:70px}.brand-title{display:block;font-family:'Playfair Display',Georgia,serif;color:var(--red);font-weight:800;font-size:1.12rem;letter-spacing:.03em;text-transform:uppercase;line-height:1.05}.brand-sub{display:block;color:var(--muted);font-size:.78rem}.primary-nav{margin-left:auto}.primary-nav ul{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}.primary-nav a{display:block;padding:10px 12px;border-radius:999px;color:#2a2a2a;font-weight:700;font-size:.92rem}.primary-nav a:hover{background:var(--cream);color:var(--red)}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 18px;font-weight:800;border:1px solid transparent;cursor:pointer}.header-cta,.btn-primary{background:var(--red);color:#fff}.btn-primary:hover,.header-cta:hover{background:var(--red2);color:#fff}.btn-secondary{background:#fff;color:var(--red);border-color:#fff}.btn-outline{background:#fff;color:var(--red);border-color:var(--line)}.btn-outline:hover{border-color:var(--red)}.nav-toggle{display:none;margin-left:auto;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 12px}.hero{background:linear-gradient(135deg,rgba(133,9,9,.96),rgba(42,10,10,.96)),url('assets/img/tcbon-logo.png') center/440px no-repeat;color:#fff;padding:78px 0}.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:38px;align-items:center}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.18em;color:#f4dba5;font-weight:900;font-size:.78rem;margin-bottom:12px}.hero h1,.section h2,.page-hero h1{font-family:'Playfair Display',Georgia,serif;line-height:1.04;margin:0}.hero h1{font-size:clamp(2.7rem,6vw,5.8rem);max-width:850px}.hero p{font-size:1.18rem;color:rgba(255,255,255,.88);max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.hero-card{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.24);border-radius:28px;padding:28px;box-shadow:0 25px 70px rgba(0,0,0,.28)}.hero-card img{width:125px;background:#fff;border-radius:20px;padding:10px}.quick-grid,.product-grid,.steps,.doc-grid,.split-grid,.contact-grid{display:grid;gap:20px}.quick-grid{grid-template-columns:repeat(4,1fr);margin-top:-42px;position:relative;z-index:5}.quick-card,.product-card,.doc-card,.step,.panel,.contact-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 15px 40px rgba(30,16,8,.06)}.quick-card h3,.product-card h3,.doc-card h3{margin:0 0 8px;color:var(--red);font-family:'Playfair Display',Georgia,serif}.quick-card p,.product-card p,.doc-card p{margin:0 0 14px;color:var(--muted)}.section{padding:72px 0}.section.alt{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:26px}.section h2{font-size:clamp(2rem,4vw,3.2rem);color:var(--ink)}.section-heading p{max-width:580px;color:var(--muted);margin:0}.product-grid{grid-template-columns:repeat(3,1fr)}.product-card ul{margin:12px 0 18px;padding-left:18px;color:#424242}.split-grid{grid-template-columns:1fr 1fr;align-items:start}.steps{grid-template-columns:repeat(4,1fr)}.step span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--red);color:#fff;font-weight:900}.cta-band{background:linear-gradient(135deg,#8b0808,#2b0909);color:#fff;border-radius:32px;padding:38px;display:flex;justify-content:space-between;gap:25px;align-items:center}.cta-band h2{color:#fff}.page-hero{background:var(--cream);padding:52px 0;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.3rem,5vw,4.2rem);color:var(--red)}.page-hero p{font-size:1.15rem;color:#555;max-width:780px}.content{padding:54px 0}.doc-grid{grid-template-columns:repeat(3,1fr)}.notice{background:#fff7e8;border-left:5px solid var(--gold);padding:18px 20px;border-radius:16px;color:#4a3512}.form{display:grid;gap:14px}.form input,.form textarea,.form select{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 14px;font:inherit}.form textarea{min-height:120px}.footer{background:#17110f;color:#eee;padding:54px 0 22px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:28px}.footer h4{margin:0 0 12px;color:#fff}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:7px 0;color:#cfc7be}.footer a{color:#fff}.subfooter{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;color:#c7bdb3;font-size:.9rem}.rn{font-weight:900;color:#fff;background:var(--red);padding:3px 9px;border-radius:999px}.download{margin-top:16px;display:inline-flex}.badge-row{display:flex;gap:10px;flex-wrap:wrap}.badge{background:var(--cream);border:1px solid var(--line);padding:8px 12px;border-radius:999px;font-weight:800;color:var(--red)}@media(max-width:900px){.hero-inner,.split-grid,.footer-grid{grid-template-columns:1fr}.quick-grid,.product-grid,.steps,.doc-grid{grid-template-columns:1fr 1fr}.nav-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:86px;background:#fff;border-bottom:1px solid var(--line);padding:12px 20px}.primary-nav.open{display:block}.primary-nav ul{display:block}.header-cta{display:none}.cta-band,.section-heading{display:block}}@media(max-width:620px){.quick-grid,.product-grid,.steps,.doc-grid{grid-template-columns:1fr}.brand{min-width:0}.brand img{width:58px}.brand-sub{display:none}}
/* v2.2 editable disclosures and support upgrades */
.doc-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.wide-panel{margin-top:24px}.editor-content{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.editable-pattern-area{margin-top:28px}.tcbon-widget-block{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;margin:18px 0;box-shadow:0 15px 40px rgba(30,16,8,.06)}.contact-list,.mini-contact{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px}.mini-contact p,.contact-list p{margin:.35rem 0}.wp-block-group.doc-card,.wp-block-group.product-card,.wp-block-group.panel{padding:24px;border:1px solid var(--line);border-radius:24px;box-shadow:0 15px 40px rgba(30,16,8,.06)}.wp-block-button.btn .wp-block-button__link,.wp-block-button .wp-block-button__link{border-radius:999px;font-weight:800;background:var(--red);color:#fff}.footer a[href^="mailto:"],.footer a[href^="tel:"]{word-break:break-word}.product-card h3,.doc-card h3{font-size:1.25rem}.page-hero .eyebrow,.section .eyebrow{color:var(--red)}

.service-copy h2{margin-top:0;margin-bottom:18px}.service-copy h2+ul{margin-bottom:34px}.service-copy li{margin-bottom:8px}.service-copy .editor-content{margin-top:28px}
