/* ==========================================================================
   Triad Global Real Estate — 2026 "warm paper" system (shared override)
   Loaded after each page's inline CSS. Cream/paper surfaces, navy type,
   gold accents; dark navy only as bookends (nav, footer, one photo hero).
   Brand: navy #1f3a5e · green #2d6a4f · gold #c9a14a · cream #f6f3ee
   ========================================================================== */
:root{
  --navy:#1f3a5e; --navy-d:#142845; --green:#2d6a4f; --gold:#c9a14a; --gold-2:#e0be6e; --red:#b23a3a;
  --bg:#f6f3ee; --paper:#fffdf8; --cream:#f6f3ee; --cream-d:#e9e3d6; --cream-2:#efe9dc;
  --surface:#ffffff; --surface-2:#fffdf8; --shell:#0f1c30; --shell-2:#142845;
  --ink:#14213a; --ink-2:#3d4b63; --slate:#5b6980; --mute:#6b7891; --line:#e3dccb; --line-2:#ece6d8;
  --navy-text:#1f3a5e; --sline:rgba(255,255,255,.10);
  --shadow:0 1px 2px rgba(20,33,58,.04),0 10px 30px rgba(20,33,58,.08);
}
html{overflow-x:hidden;scroll-padding-top:84px;}
body{background:var(--bg)!important;color:var(--ink);overflow-x:hidden;}
h1,h2,h3,h4{color:var(--navy);}
a{color:var(--navy);}
.eyebrow,.section-label,.hero .eyebrow{color:var(--gold)!important;font-weight:800;letter-spacing:.22em;}
/* surfaces */
.card,.tile,.box,.panel,.stat,.post,.metric,.faq,.specs,.field,.pre{background:var(--surface);border-color:var(--line);color:var(--ink-2);box-shadow:var(--shadow);}
.card:hover,.tile:hover,.post:hover{border-color:#d5c9a8;box-shadow:0 20px 44px rgba(20,33,58,.12);}
.pill{background:var(--cream-2);border-color:var(--line);color:var(--ink-2);}
.pill.on,.pill.active{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#0f1c30;border-color:var(--gold);}
.disc,.sub,.mute,.l{color:var(--mute);} .v,.n{color:var(--navy);}
/* NAV — dark bookend */
.top{background:rgba(15,28,48,.92)!important;backdrop-filter:blur(14px);border-bottom:1px solid var(--sline);}
.top .brand *,.top .brand .word{color:#fff;} .top .brand small,.top .brand .sub{color:var(--gold);}
.top .links a{color:#b9c6da;} .top .links a:hover{color:#fff;}
.cta,.btn-primary,.btn.primary,.btn.gold,button.cta{background:linear-gradient(180deg,var(--gold-2),var(--gold))!important;color:#0f1c30!important;border-color:var(--gold)!important;font-weight:800;border-radius:10px;}
.cta:hover,.btn-primary:hover{box-shadow:0 12px 30px rgba(201,161,74,.3);transform:translateY(-2px);}
.btn,.btn-ghost,.btn-outline{color:var(--navy);border-color:#cfc6b2;background:#fff;}
.btn:hover{border-color:var(--gold);}
/* forms on paper */
input,select,textarea,.inp{background:#fff!important;color:var(--ink)!important;border:1px solid #d9d2c2!important;border-radius:9px;}
input::placeholder,textarea::placeholder{color:#8a94a6;}
input:focus,select:focus,textarea:focus,.inp:focus{outline:none;border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(201,161,74,.18);}
label,.f label{color:var(--ink-2);}
/* FOOTER — dark bookend */
footer{background:var(--shell);color:#9fb0c8;border-top:1px solid var(--sline);}
footer a{color:#d6dfec;} footer a:hover{color:var(--gold-2);}
footer h4,footer .h{color:#fff;}
#tg-megafooter{background:var(--shell)!important;}
/* HERO — the one dark, photo-forward moment (homepage) */
.hero{background:var(--shell)!important;color:#fff;}
.hero h1,.hero h2{color:#fff!important;} .hero .lead,.hero p{color:#d6dfec;}
.hero .pill{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#e8eef7;}
/* alternating paper bands */
.alt,section.alt{background:var(--paper);}
section.dark{background:linear-gradient(160deg,#1a3253,#1f3a5e 60%,#152a46)!important;color:#fff;}
section.dark h2,section.dark h3{color:#fff;} section.dark p{color:#d6dfec;}
section,.wrap{border-color:var(--line);} hr{border-color:var(--line);}
table th{background:var(--cream-2);color:var(--navy);} table td{border-color:var(--line);color:var(--ink-2);}
/* leaflet on paper */
.leaflet-container{background:#e8eef2;}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:var(--ink);border:1px solid var(--line);}
.tg-pin{width:30px;height:30px;background:url('/logo.png') center/contain no-repeat;filter:drop-shadow(0 6px 10px rgba(0,0,0,.3));transform-origin:50% 100%;animation:tgdrop .5s cubic-bezier(.2,.9,.3,1.3) both;}
.tg-pin.hot::after{content:"";position:absolute;left:50%;bottom:-4px;width:26px;height:26px;border-radius:50%;transform:translateX(-50%);border:2px solid var(--gold);animation:tgring 1.6s ease-out infinite;}
@keyframes tgdrop{0%{opacity:0;transform:translateY(-40px)}100%{opacity:1;transform:none}}
@keyframes tgring{0%{transform:translateX(-50%) scale(.5);opacity:1}100%{transform:translateX(-50%) scale(1.6);opacity:0}}
/* brand rule */
#tg-brandline,.brandline{background:linear-gradient(90deg,var(--navy),var(--green) 52%,var(--gold));}

/* ==========================================================================
   Branded components (homepage doors/people/seal · deals · analyzer)
   ========================================================================== */
.tg-people{background:var(--paper);border-bottom:1px solid var(--line);}
.tg-people .in{max-width:1180px;margin:0 auto;padding:30px 26px;display:grid;grid-template-columns:auto 1fr auto;gap:26px;align-items:center;}
.tg-faces{display:flex;} .tg-faces img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid var(--paper);margin-left:-14px;box-shadow:0 4px 12px rgba(0,0,0,.15);} .tg-faces img:first-child{margin-left:0;}
.tg-people .t{font-size:15.5px;color:var(--ink-2);} .tg-people .t b{color:var(--navy);font-family:'Playfair Display',serif;font-size:19px;display:block;}
.tg-people .call{text-align:right;} .tg-people .call a{font-family:'Playfair Display',serif;font-size:22px;color:var(--navy);text-decoration:none;font-weight:700;} .tg-people .call span{display:block;font-size:12px;color:var(--mute);}
@media(max-width:820px){.tg-people .in{grid-template-columns:1fr;} .tg-people .call{text-align:left;}}
.tg-doors{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px;}
@media(max-width:820px){.tg-doors{grid-template-columns:1fr;}}
.tg-door{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s;box-shadow:var(--shadow);}
.tg-door:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(20,33,58,.12);}
.tg-door::before{content:"";position:absolute;right:-30px;top:-30px;width:140px;height:140px;background:url('/logo.png') center/contain no-repeat;opacity:.07;}
.tg-door h3{font-size:24px;margin:8px 0 8px;color:var(--navy);} .tg-door p{color:var(--ink-2);font-size:15px;}
.tg-door ul{list-style:none;margin:14px 0 18px;padding:0;} .tg-door li{position:relative;padding-left:20px;font-size:14px;color:var(--ink-2);margin-bottom:6px;}
.tg-door li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;transform:rotate(45deg);background:var(--gold);}
.tg-door .go{display:inline-block;background:var(--navy);color:#fff;font-weight:700;padding:11px 18px;border-radius:10px;text-decoration:none;font-size:14px;}
.tg-door.gold .go{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#0f1c30;}
/* hero seal — built on a foundation */
.tg-seal{width:min(340px,100%);background:rgba(255,253,248,.96);border:1px solid var(--line);border-radius:22px;padding:24px 24px 20px;box-shadow:0 30px 70px rgba(0,0,0,.45);}
.tg-stage{position:relative;width:100%;aspect-ratio:1;max-width:250px;margin:0 auto;}
.tg-lw{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;filter:drop-shadow(0 14px 30px rgba(0,0,0,.25));}
.tg-lw.base{clip-path:polygon(9% 88%,92% 88%,50% 63%);animation:tgbase .9s cubic-bezier(.2,.8,.2,1) .3s forwards;}
.tg-lw.left{clip-path:polygon(50% 12%,9% 88%,50% 63%);animation:tgrise .95s cubic-bezier(.2,.8,.2,1) .95s forwards;}
.tg-lw.right{clip-path:polygon(50% 12%,92% 88%,50% 63%);animation:tgrise .95s cubic-bezier(.2,.8,.2,1) 1.15s forwards;}
@keyframes tgbase{0%{opacity:0;transform:translateY(60px)}100%{opacity:1;transform:none}}
@keyframes tgrise{0%{opacity:0;transform:translateY(90px)}100%{opacity:1;transform:none}}
.tg-floor .ln{height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);animation:tgdraw 1s ease 2.1s forwards;margin-top:6px;}
@keyframes tgdraw{to{transform:scaleX(1)}}
.tg-floor .lab{display:flex;justify-content:space-between;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:800;margin-top:8px;opacity:0;animation:tgfade .8s ease 2.6s forwards;}
@keyframes tgfade{to{opacity:1}}
.tg-seal .cap{text-align:center;color:var(--ink-2);font-size:13px;margin-top:12px;opacity:0;animation:tgfade .8s ease 2.9s forwards;} .tg-seal .cap b{color:var(--navy);}
@media(prefers-reduced-motion:reduce){.tg-lw{opacity:1;animation:none}.tg-floor .ln{transform:none;animation:none}.tg-floor .lab,.tg-seal .cap{opacity:1;animation:none}}
/* deals: quick-read bar + card rise + toggle slide */
.tg-qr{display:flex;align-items:center;gap:10px;margin-top:8px;} .tg-qr .k{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:800;}
.tg-qr .bar{flex:1;height:6px;background:var(--cream-2);border-radius:999px;overflow:hidden;} .tg-qr .bar i{display:block;height:100%;width:var(--w,0);border-radius:999px;background:linear-gradient(90deg,var(--green),#5fb98a);transition:width 1.1s cubic-bezier(.2,.8,.2,1);}
.tg-qr .bar i.mid{background:linear-gradient(90deg,var(--gold),var(--gold-2));} .tg-qr .bar i.bad{background:linear-gradient(90deg,var(--red),#e07b7b);} .tg-qr .v{font-size:12px;font-weight:800;color:var(--ink);}
.tg-rise{opacity:0;transform:translateY(18px);animation:tgup .6s cubic-bezier(.2,.8,.2,1) forwards;}
@keyframes tgup{to{opacity:1;transform:none}}
/* analyzer: verdict on gold reads dark; chips pop; spinner */
.verdict.mid,.verdict.mid *{color:#0f1c30!important;} .verdict.good,.verdict.good *,.verdict.bad,.verdict.bad *{color:#fff!important;}
.gauge .track{stroke:var(--cream-2)!important;} .gauge .gnum{fill:var(--navy)!important;} .gauge .floor{stroke:var(--navy)!important;}
.m-v{color:var(--navy);}
.tg-chip{animation:tgpop .4s cubic-bezier(.2,.9,.3,1.3) both;} @keyframes tgpop{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:none}}
.tg-spin{display:inline-block;width:14px;height:14px;background:url('/logo.png') center/contain no-repeat;animation:tgspin 1.4s linear infinite;vertical-align:-2px;margin-right:6px;} @keyframes tgspin{to{transform:rotate(360deg)}}
/* nav text must be light on the dark bar (beat page-level rules) */
.top .brand,.top .brand *,.top .brand .word,nav.top .brand .word{color:#fff!important;}
.top .brand small,.top .brand .sub,.top .brand .tag{color:var(--gold)!important;}
.top .links a:not(.cta){color:#c7d3e6!important;} .top .links a:not(.cta):hover{color:#fff!important;}
#tg-burger{color:#fff!important;}
