/*
Theme Name: TCBON Property Holdings LLC
Theme URI: https://property.thecountrybankofneedham.com/
Author: Pro Plans Web Design & Needham Gates Studio
Description: Customer-ready TCBON Property Holdings LLC WordPress theme with property acquisition, leasing, management, investments, contact routing, SEO fields, block patterns, advanced asset/capital index, HELOC and ledger record system.
Version: 9.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
Text Domain: tcbon-property-holdings
*/

:root {
  --ata-red: #8e1116;
  --ata-red-dark: #6f0d12;
  --ata-black: #171717;
  --ata-charcoal: #2b2b2b;
  --ata-ivory: #f5f2ee;
  --ata-gold: #c9a768;
  --ata-border: rgba(255,255,255,0.10);
  --ata-shadow: 0 18px 60px rgba(0,0,0,0.18);
  --ata-radius: 22px;
  --ata-max: 1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--ata-ivory);color:var(--ata-charcoal);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(23,23,23,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.ata-wrap{width:min(var(--ata-max),calc(100% - 32px));margin:0 auto}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}
.brand{display:flex;align-items:center;gap:14px;color:#fff}
.brand img{width:58px;height:58px;object-fit:contain;border-radius:14px;background:#fff;padding:6px}
.brand-title{font-family:"Playfair Display", Georgia, serif;font-size:1.4rem;line-height:1.1;font-weight:700}
.brand-sub{font-size:.84rem;color:rgba(255,255,255,.7)}
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:10px;padding:10px 12px}
.primary-nav ul{display:flex;align-items:center;gap:24px;list-style:none;padding:0;margin:0}
.primary-nav a{color:#fff;font-size:.95rem}
.header-cta{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--ata-red),#b4171d);color:#fff;padding:12px 18px;border-radius:999px;font-weight:700;box-shadow:var(--ata-shadow)}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at top right, rgba(201,167,104,.18), transparent 28%),linear-gradient(135deg,#101010 0%, #2a0c0f 52%, #5e0d12 100%);color:#fff}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px),linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px);background-size:42px 42px;opacity:.25;pointer-events:none}
.hero-inner{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:42px;padding:82px 0 70px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.05);font-size:.84rem;letter-spacing:.08em;text-transform:uppercase}
.hero h1{font-family:"Playfair Display", Georgia, serif;font-size:clamp(2.5rem,6vw,4.9rem);line-height:1.02;margin:18px 0 18px;max-width:12ch}
.hero p{font-size:1.1rem;max-width:60ch;color:rgba(255,255,255,.82)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:999px;font-weight:700;transition:.2s ease;border:1px solid transparent}
.btn-primary{background:linear-gradient(135deg,var(--ata-red),#bc171e);color:#fff;box-shadow:var(--ata-shadow)}
.btn-secondary{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff}
.btn-outline{border:1px solid rgba(23,23,23,.14);color:var(--ata-red);background:#fff}
.hero-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:28px;box-shadow:var(--ata-shadow)}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:18px;border-radius:20px}
.stat strong{display:block;font-size:1.8rem;font-family:"Playfair Display", Georgia, serif}
.section{padding:76px 0}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}
.section-heading h2{margin:0;font-family:"Playfair Display", Georgia, serif;font-size:clamp(2rem,4vw,3rem);line-height:1.06;color:#1b1b1b}
.section-heading p{margin:0;max-width:52ch;color:#666}
.services-panel{display:grid;grid-template-columns:120px 1fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:var(--ata-shadow)}
.services-rail{background:linear-gradient(180deg,#8e1116 0%, #65070c 100%);padding:28px 0;display:flex;flex-direction:column;align-items:center;justify-content:space-around;gap:26px}
.rail-icon{width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.8);display:grid;place-items:center;color:#fff;font-size:1.2rem;font-weight:700}
.services-list{padding:34px 30px}
.service-item{padding:18px 0;border-bottom:1px solid #ece7e2}
.service-item:last-child{border-bottom:none}
.service-item h3{font-size:2rem;line-height:1.08;margin:0 0 8px;font-family:"Playfair Display", Georgia, serif;color:#2a2a2a}
.service-item p{margin:0 0 10px;color:#616161;font-size:1.04rem}
.service-links{display:flex;gap:14px;flex-wrap:wrap}
.service-link{font-weight:700;color:var(--ata-red)}
.lux-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.lux-card{background:#fff;border-radius:24px;padding:28px;border:1px solid #ebe6e2;box-shadow:0 12px 40px rgba(0,0,0,.07)}
.lux-card h3{margin:0 0 10px;font-family:"Playfair Display", Georgia, serif;font-size:1.45rem}
.coverage-band{background:#151515;color:#fff;border-radius:28px;padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center}
.search-shell{background:#fff;border-radius:22px;padding:18px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.search-shell input,.search-shell select{width:100%;padding:14px 14px;border-radius:14px;border:1px solid #dad4ce;background:#f8f6f3}
.search-shell button{padding:14px 18px;border:none;border-radius:14px;background:linear-gradient(135deg,var(--ata-red),#b4171d);color:#fff;font-weight:700}
.timeline{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}
.timeline-step{background:#fff;border:1px solid #ece7e2;border-radius:22px;padding:22px;position:relative;box-shadow:0 10px 30px rgba(0,0,0,.05)}
.timeline-step span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ata-red);color:#fff;font-weight:700;margin-bottom:12px}
.cta-band{background:linear-gradient(135deg,#8e1116,#4b090d);color:#fff;border-radius:28px;padding:36px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.footer{background:#131313;color:#fff;padding:48px 0 28px;margin-top:60px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px}
.footer h4{margin:0 0 12px;font-family:"Playfair Display", Georgia, serif;font-size:1.2rem}
.footer ul{list-style:none;padding:0;margin:0}
.footer li{margin:0 0 10px}
.subfooter{margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:rgba(255,255,255,.7)}
.page-hero{background:linear-gradient(135deg,#1a1a1a,#6f0d12);color:#fff;padding:70px 0}
.page-content{padding:56px 0}
.content-shell{background:#fff;padding:34px;border-radius:24px;box-shadow:0 12px 42px rgba(0,0,0,.08)}
@media (max-width: 1080px){
.hero-inner,.coverage-band,.footer-grid{grid-template-columns:1fr}
.lux-grid{grid-template-columns:1fr 1fr}
.search-shell,.timeline{grid-template-columns:1fr 1fr}
}
@media (max-width: 820px){
.nav-toggle{display:block}
.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#141414;border-bottom:1px solid rgba(255,255,255,.08)}
.primary-nav.open{display:block}
.primary-nav ul{flex-direction:column;align-items:flex-start;padding:18px 16px}
.header-cta{display:none}
.hero-inner,.lux-grid,.search-shell,.timeline,.footer-grid,.services-panel{grid-template-columns:1fr}
.services-rail{flex-direction:row;padding:18px;overflow:auto}
.section{padding:58px 0}
.service-item h3{font-size:1.55rem}
}


/* TCBON Property Holdings enhancements */
.intake-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;background:#fff;border-radius:24px;padding:24px;box-shadow:0 12px 42px rgba(0,0,0,.08);border:1px solid #ebe6e2}
.intake-form .full{grid-column:1/-1}.intake-form label{font-weight:700;font-size:.92rem}.intake-form input,.intake-form select,.intake-form textarea{width:100%;padding:13px 14px;border:1px solid #d9d1ca;border-radius:14px;background:#fbfaf8;margin-top:6px}.intake-form button,.form-button{border:0;border-radius:999px;padding:14px 20px;background:linear-gradient(135deg,var(--ata-red),#b4171d);color:#fff;font-weight:800;cursor:pointer}.trust-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.trust-pill{background:#fff;border:1px solid #ebe6e2;border-radius:20px;padding:20px;box-shadow:0 10px 30px rgba(0,0,0,.05)}.trust-pill strong{display:block;color:#1b1b1b;margin-bottom:6px}.notice-box{background:#fff8ed;border:1px solid #ecd5a5;border-radius:18px;padding:18px}.property-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.property-card{background:#fff;border-radius:22px;padding:24px;border:1px solid #ebe6e2;box-shadow:0 10px 32px rgba(0,0,0,.06)}.property-card .tag{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ata-red);margin-bottom:10px}.mini-list{margin:12px 0 0;padding-left:18px}.mini-list li{margin-bottom:7px}.split{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.brand-title{font-size:1.25rem}.brand-sub{display:block}@media(max-width:900px){.intake-form,.trust-row,.property-strip,.split{grid-template-columns:1fr}}

/* v3 property index + SEO-ready pages */
.page-hero h1{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.03}.hero-sub{max-width:850px;font-size:1.08rem;color:#d8d1c5}.index-tools{background:#fff;border:1px solid #e8dfd3;border-radius:18px;padding:18px;margin:18px 0 28px}.index-tools form{display:grid;grid-template-columns:1fr auto;gap:10px}.index-tools input{padding:14px;border:1px solid #d6c7b7;border-radius:12px}.index-tools button{padding:14px 18px;border:0;border-radius:12px;background:#1a382c;color:#fff;font-weight:800}.state-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:15px 0 30px}.state-grid a{display:block;border:1px solid #e7dccd;background:#fff;border-radius:12px;padding:11px 13px;text-decoration:none;color:#223b32;font-weight:700}.state-grid a:hover{background:#f8f1e8}.notice-box{border-left:5px solid #98764f;background:#fffaf3;padding:18px;border-radius:14px}.site-title small{display:block;font-size:.75rem;font-weight:700;color:#9f8c6e;letter-spacing:.08em;text-transform:uppercase}@media(max-width:720px){.index-tools form{grid-template-columns:1fr}.state-grid{grid-template-columns:1fr 1fr}}


/* v4 official logo and browser icon integration */
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;min-width:260px;}
.brand-logo{width:68px;height:68px;object-fit:contain;display:block;filter:drop-shadow(0 6px 14px rgba(0,0,0,.12));}
.site-title{line-height:1.05;}
.site-title small{display:block;margin-top:5px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:.78;}
@media(max-width:760px){.brand-logo{width:52px;height:52px}.brand{min-width:auto}.site-title{font-size:17px}.site-title small{font-size:10px}.header-cta{display:none}}


/* v7 content, admin options, editor patterns */
.hero-card .stats .stat input{display:none}
.admin-note-card{background:#fff;border:1px solid #e6ded5;border-radius:18px;padding:18px;margin:16px 0}
.page-content .content-shell h2{font-family:"Playfair Display",Georgia,serif;font-size:2.1rem;line-height:1.12;margin-top:0;color:#1a1a1a}
.page-content .content-shell h3{font-family:"Playfair Display",Georgia,serif;font-size:1.45rem;margin:22px 0 8px;color:#2a2a2a}
.page-content .content-shell p{font-size:1.03rem;color:#505050}
.content-shell .wp-block-columns{gap:24px}
.form-note{font-size:.9rem;color:#6a625c;margin-top:10px}
.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:start}
.info-card{background:#fbf8f4;border:1px solid #eadfd3;border-radius:22px;padding:24px;margin-bottom:16px}
.info-card h3{margin-top:0!important}
.metric-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px}
.metric-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);border-radius:20px;padding:18px}.metric-box strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.55rem}.metric-box span{display:block;color:rgba(255,255,255,.82)}
.pattern-card{background:#fff;border:1px solid #ebe6e2;border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(0,0,0,.05)}
.site-header .primary-nav{flex:1}.primary-nav .menu{justify-content:center}
@media(max-width:900px){.contact-layout,.metric-row{grid-template-columns:1fr}.site-header .primary-nav{flex:auto}}


/* v8 Advanced Asset Index */
.asset-index-console{margin:30px 0}.asset-index-head{background:#201f1d;color:#fff;border-radius:22px;padding:28px;margin-bottom:18px}.asset-index-head h2{color:#fff;margin:0 0 8px}.asset-filter{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:10px;background:#fff;border-radius:18px;padding:18px;box-shadow:0 18px 50px rgba(0,0,0,.08);margin-bottom:20px}.asset-filter input,.asset-filter select{width:100%;padding:12px;border:1px solid #ddd;border-radius:12px}.asset-filter button{border:0;border-radius:12px;padding:12px 18px;background:#b7121a;color:#fff;font-weight:800}.asset-table-wrap{overflow-x:auto;background:#fff;border-radius:20px;box-shadow:0 18px 50px rgba(0,0,0,.08)}.asset-table{width:100%;border-collapse:collapse}.asset-table th{background:#111;color:#fff;text-align:left;padding:14px}.asset-table td{padding:14px;border-bottom:1px solid #eee;vertical-align:top}.asset-table small{color:#666}.asset-empty,.trust-tips{background:#fff;border-radius:20px;padding:24px;margin:20px 0;box-shadow:0 18px 50px rgba(0,0,0,.08)}.trust-tips ul{margin-left:20px}.trust-tips li{margin:8px 0}@media(max-width:900px){.asset-filter{grid-template-columns:1fr}.asset-filter button{width:100%}}


/* v9 editor and admin-ready content helpers */
.wp-block-group.content-shell{padding:32px;border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.08)}
.pattern-card,.info-card{border-radius:22px;background:#fff;padding:22px;box-shadow:0 14px 40px rgba(0,0,0,.08)}
.site-header{z-index:50}.site-header .menu .description{display:none}.brand-logo{object-fit:contain;background:#fff}


/* v10 higher-grade homepage, visible form titles, editor-ready sections */
.hero-card-v10{background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.16);padding:34px;border-radius:30px;backdrop-filter:blur(8px)}
.hero-card-v10 .panel-kicker{display:inline-block;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 12px;margin-bottom:14px;color:#e6d2a8;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.hero-card-v10 h3{margin:0 0 12px;font-family:"Playfair Display",Georgia,serif;font-size:clamp(2rem,3vw,3.25rem);line-height:1.04;color:#fff}
.hero-card-v10 p{font-size:1.06rem;line-height:1.65;color:rgba(255,255,255,.82)}
.route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.route-grid div{min-height:126px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:20px}.route-grid strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.55rem;color:#fff;margin-bottom:8px}.route-grid span{display:block;color:rgba(255,255,255,.82);line-height:1.42}.coverage-band{align-items:center}.coverage-band .intake-form{box-shadow:0 20px 80px rgba(0,0,0,.24)}
.tcbph-enhanced-form .form-section-title{background:#f8f2ea;border:1px solid #eadbca;border-radius:16px;padding:14px 16px;margin:4px 0}.tcbph-enhanced-form .form-section-title strong{display:block;color:#1c1b19;font-size:1rem}.tcbph-enhanced-form .form-section-title span{display:block;color:#6e6258;font-size:.88rem;margin-top:3px}.tcbph-enhanced-form label span{display:block;color:#191715;font-weight:900;margin-bottom:7px}.tcbph-enhanced-form input,.tcbph-enhanced-form select,.tcbph-enhanced-form textarea{font-size:1rem}.tcbph-enhanced-form textarea{line-height:1.45}.wp-block-pattern,.block-editor-block-patterns-list__item{font-family:Inter,Arial,sans-serif}.editor-styles-wrapper .content-shell,.editor-styles-wrapper .pattern-card,.editor-styles-wrapper .info-card{border:1px solid #eadfd3;border-radius:22px;padding:24px;background:#fff}.content-shell a:not(.btn),.page-content a:not(.btn){color:#9d1118;font-weight:800}.content-shell ul li{margin-bottom:8px}.page-content .content-shell{max-width:1280px}.seo-note{font-size:.92rem;color:#6a625c}.backlink-row{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.backlink-row a{border:1px solid #eadfd3;border-radius:999px;padding:9px 13px;text-decoration:none;background:#fff}
@media(max-width:900px){.route-grid{grid-template-columns:1fr}.hero-card-v10{padding:24px}}
