/*
Theme Name: KolaHeritage
Theme URI: https://www.kolaheritage.com
Author: KolaHeritage Realty Solutions
Description: Custom trust-first theme for KolaHeritage. Young Serif + Schibsted Grotesk, ledger design language, staged-billing brand system. Content fully editable in the block editor.
Version: 1.0.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: kolaheritage
*/

/* Locally hosted Inter, no external dependency */
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-400.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-600.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/inter-800.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:900;font-display:swap;src:url('fonts/inter-900.woff2') format('woff2')}

:root{
--bg:#0B0B0A;--bg2:#111110;--card:#161614;--line:#2A2A26;--line-gold:#6B5836;
--gold:#F5B93C;--gold2:#E8A020;--white:#F5F5F3;--gray:#A3A39C;--gray2:#6E6E67;
--grad:linear-gradient(135deg,#FFCE55,#F0A31C);
--teal:#2FA8A2;--teal-dk:#17605C;
/* legacy aliases so existing page markup keeps working */
--forest:#F5B93C;--gold-deep:#C98F1E;--gold-soft:#C9A55A;--stone:#A3A39C;--hairline:#2A2A26;
--lacquer:#1A1710;--deep:#111110;--paper:#0B0B0A;--sage:#1E1E1B;--ink:#F5F5F3;
--mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;--disp:'Inter',Helvetica,sans-serif;--body:'Inter',Helvetica,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{max-width:100%;overflow-x:hidden}
body{font-family:var(--body);background:var(--bg);color:var(--white);line-height:1.6;font-size:16.5px}
img,video,iframe{max-width:100%}
h1,h2,h3{font-family:var(--disp);font-weight:800;color:var(--white);line-height:1.08;letter-spacing:-.5px}
h1 em,h2 em{font-style:normal;color:var(--gold)}
a{color:inherit}
.wrap{max-width:1060px;margin:0 auto;padding:0 22px}
.k{font-family:var(--body);font-size:12px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold)}
.k.lt,.ref{font-family:var(--mono);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold)}
.ref.dark{color:var(--gold)}
.eyebrow{color:var(--gray)}
.dbl{height:3px;width:64px;border:none;margin:16px 0 22px;background:var(--grad);border-radius:2px}
.dbl.c,.dbl.center{margin-left:auto;margin-right:auto}
.rv{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

.btn{display:inline-block;padding:16px 30px;border-radius:12px;font-weight:800;font-size:15.5px;text-decoration:none;font-family:var(--body);transition:transform .12s,box-shadow .12s;cursor:pointer;border:none;text-align:center}
.btn:hover{transform:translateY(-2px)}
.btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.btn-gold,.btn-g{background:var(--grad);color:#171204;box-shadow:0 0 30px rgba(245,185,60,.3)}
.btn-gold:hover,.btn-g:hover{box-shadow:0 0 44px rgba(245,185,60,.48)}
.btn-line{background:transparent;color:var(--gold);border:1.5px solid var(--line-gold);box-shadow:none}
.btn-sm{padding:11px 20px;font-size:14px;border-radius:10px}
.sub-link{display:inline-block;margin-top:14px;color:var(--gray);font-size:14.5px;text-decoration:underline;text-underline-offset:3px}
.sub-link:hover{color:var(--gold)}

.topbar{background:var(--grad);color:#171204;text-align:center;padding:10px 16px;font-size:13.5px;font-weight:700}
.topbar a{color:#171204;text-decoration:underline}

nav{position:sticky;top:0;z-index:100;background:#0B0B0AF0;border-bottom:1px solid var(--line);padding:15px 0}
nav.solid{background:#0B0B0AF8}
.nav-in{display:flex;align-items:center;justify-content:space-between}
.logo{font-weight:900;font-size:21px;color:var(--gold);text-decoration:none;letter-spacing:-.3px}
.logo b{color:var(--gold)}
.logo small{display:none}
.nav-links{display:flex;gap:24px;align-items:center;list-style:none}
.nav-links a{text-decoration:none;font-size:14px;font-weight:600;color:#D6D6D0;opacity:1}
.nav-links a:hover,.nav-links a.here{color:var(--gold);border-bottom:2px solid var(--gold)}
.menu-btn{display:none;background:none;border:none;font-size:28px;color:var(--gold);cursor:pointer}

.hero-page{padding:64px 0 56px;text-align:left;border-bottom:1px solid var(--line);position:relative;background:radial-gradient(620px 320px at 20% -10%,rgba(245,185,60,.08),transparent 70%)}
.hero-page::after{content:attr(data-seal);position:absolute;right:4%;top:44px;width:104px;height:104px;border:1.5px solid var(--line-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:8.5px;letter-spacing:1.5px;color:var(--gold);text-align:center;padding:14px;transform:rotate(-12deg);opacity:.8;pointer-events:none}
.hero-page h1{font-size:clamp(32px,4.8vw,52px);max-width:780px;margin-top:12px;font-weight:900}
.hero-page .lead{font-size:17.5px;color:var(--gray);max-width:600px;margin:16px 0 26px}

section{padding:72px 0}
.numbered{display:flex;gap:16px;align-items:baseline;margin-bottom:38px}
.numbered .no{font-family:var(--mono);font-size:12px;color:var(--gold);border:1px solid var(--line-gold);padding:6px 11px;border-radius:8px;background:#1A1710}
.numbered h2{font-size:clamp(25px,3.4vw,38px)}
.prose{max-width:700px}
.prose p{margin-bottom:16px;color:#D9D9D3}
.prose p b{color:var(--gold)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 24px;position:relative}
.card::before{content:none}
.card h3{font-size:19px;margin-bottom:9px;font-weight:800}
.card p,.card li{font-size:14.5px;color:var(--gray)}
.card ul{list-style:none;margin-top:8px}
.card li{padding:8px 0 8px 24px;position:relative;border-bottom:1px solid var(--line)}
.card li:last-child{border:none}
.card li::before{content:"✓";position:absolute;left:0;top:8px;color:var(--gold);font-weight:800;font-size:13px}
.card li b{color:var(--white)}
.card .k{display:block;margin-bottom:8px}
.dark{background:var(--bg2)}
.dark .card{background:#1B1B18;border-color:var(--line-gold)}
.dark .card h3{color:var(--gold)}

.photo{position:relative;background:linear-gradient(160deg,#1B1B18,#131311);border:1.5px solid var(--line-gold);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#8A8A80;text-align:center;padding:16px;box-shadow:0 0 34px rgba(245,185,60,.08)}
.photo .cam{font-size:24px}
.photo .lbl{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}
.photo .shot{font-size:12px;max-width:260px;line-height:1.45}

.marquee{background:var(--bg2);border-top:1px solid var(--line-gold);border-bottom:1px solid var(--line-gold);overflow:hidden;padding:12px 0;white-space:nowrap}
.marquee .track{display:inline-block;animation:mq 34s linear infinite}
.marquee span{font-family:var(--mono);font-size:10.5px;letter-spacing:2px;color:var(--gray);text-transform:uppercase;padding:0 24px}
.marquee b{color:var(--gold)}
@keyframes mq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee .track{animation:none}}
.strip{background:var(--bg2);border-top:1px solid var(--line-gold);border-bottom:1px solid var(--line-gold);padding:14px 0}
.strip .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.strip span{font-family:var(--mono);font-size:10.5px;letter-spacing:1.5px;color:var(--gray);text-transform:uppercase}
.strip b{color:var(--gold)}

.pull{padding:76px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(560px 260px at 50% 50%,rgba(245,185,60,.06),transparent 70%)}
.pull p{font-size:clamp(22px,3.4vw,36px);line-height:1.3;color:var(--white);max-width:860px;font-weight:800;letter-spacing:-.4px}
.pull p em{color:var(--gold);font-style:normal}
.pull .k{display:block;margin-top:20px}

.rep{list-style:none;margin-bottom:22px}
.rep li{display:grid;grid-template-columns:100px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.rep .when{font-family:var(--mono);font-size:10.5px;letter-spacing:1px;color:var(--gold);text-transform:uppercase;padding-top:3px}
.rep .what{color:#D9D9D3}
.dia .sec-head h2,.dia h2{color:var(--white)}
.dia-card{background:#1B1B18;border:1.5px solid var(--line-gold);border-radius:18px;padding:28px}
.dia-card h3{color:var(--gold);font-size:19px;margin-bottom:12px}
.dia-card ul{list-style:none}
.dia-card li{padding:9px 0 9px 24px;position:relative;font-size:14.5px;color:#D9D9D3;border-bottom:1px solid var(--line)}
.dia-card li:last-child{border:none}
.dia-card li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:800;font-size:13px;top:9px}
.dia-card .btn{margin-top:16px}

.ports,.quotes{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.quotes3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:900px){
 .quotes3{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
 .quotes3::-webkit-scrollbar{display:none}
 .quotes3>.qt{min-width:82%;scroll-snap-align:center;flex-shrink:0}
}
.port{border-radius:18px;overflow:hidden;border:1px solid var(--line);background:var(--card)}
.port .photo{border-radius:0;border:none;border-bottom:1px solid var(--line-gold);box-shadow:none}
.port .bd{padding:22px}
.port h3{font-size:18px;margin-bottom:5px}
.port p{font-size:14px;color:var(--gray)}
.port .stats{display:flex;gap:20px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.port .stats div{font-size:11px;color:var(--gray2)}
.port .stats strong{display:block;font-size:17px;color:var(--gold);font-weight:800}
.qt{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;gap:14px}
.qt .photo{width:54px;height:54px;border-radius:50%;flex-shrink:0;padding:4px;box-shadow:none}
.qt .photo .cam{font-size:15px}.qt .photo .shot{display:none}.qt .photo .lbl{font-size:6.5px}
.qt p{font-size:15px;color:#D9D9D3}
.qt .who{margin-top:10px;font-size:12.5px;color:var(--gray2)}
.qt .who b{color:var(--gold);letter-spacing:1px;text-transform:uppercase;font-size:12px}

.docband{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0}
.docband .wrap{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}
.docband p{font-size:17.5px;color:var(--white);font-weight:600;max-width:620px}
.docband p b{color:var(--gold)}

.stack{max-width:700px;margin:0 auto;border:1.5px solid var(--line-gold);border-radius:22px;overflow:hidden;background:var(--bg2);box-shadow:0 0 54px rgba(245,185,60,.07)}
.stack .row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;border-bottom:1px solid var(--line)}
.stack .row:last-child{border-bottom:none}
.stack .row .t{text-align:center;flex:1}
.stack .row .t b{display:block;font-size:16px;font-weight:700;color:var(--white)}
.stack .row .t span{font-size:13.5px;color:var(--gray2)}
.stack .val{flex-shrink:0;font-weight:700;color:var(--gray);font-size:15px}
.stack .total{background:#1A1710}
.stack .total .t b{letter-spacing:2px;text-transform:uppercase;font-size:13px;color:var(--gray)}
.stack .total .val{color:var(--gold);font-weight:900;font-size:17px}

.hstats{display:grid;grid-template-columns:repeat(3,1fr);max-width:820px;margin:48px auto 0;border:1px solid var(--line);border-radius:16px;background:var(--bg2)}
.hstats>div{padding:24px 12px;text-align:center;border-right:1px solid var(--line)}
.hstats>div:last-child{border-right:none}
.hstats strong{display:block;font-weight:800;font-size:clamp(25px,4vw,36px);color:var(--gold)}
.hstats span{font-size:11px;color:var(--gray);font-weight:600;letter-spacing:1.5px;text-transform:uppercase}
.capture{max-width:640px;margin:48px auto 0;background:var(--bg2);border:1.5px solid var(--line-gold);border-radius:20px;padding:36px 28px;text-align:center;box-shadow:0 0 44px rgba(245,185,60,.08)}
.capture h3{font-size:clamp(21px,3vw,27px);font-weight:800}
.capture p{color:var(--gray);font-size:14.5px;margin-top:10px}
.capture .btn{width:100%;margin-top:20px}
.capture .note{font-size:13px;color:var(--gray2);margin-top:13px}
.path{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.step{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;gap:20px;align-items:flex-start}
.step:last-child{border-color:var(--line-gold)}
.step .n{flex-shrink:0;width:56px;height:56px;border-radius:14px;background:#241D0C;border:1px solid var(--line-gold);color:var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:800}
.step .n small{font-size:8.5px;letter-spacing:2px}
.step .n b{font-size:21px;line-height:1}
.step h3{font-size:19px;margin-bottom:5px}
.step p{font-size:14.5px;color:var(--gray)}

.faq{max-width:720px;margin:0 auto}
.q{border:1px solid var(--line);border-radius:14px;background:var(--card);margin-bottom:10px;overflow:hidden}
.q button{width:100%;text-align:left;padding:18px 20px;background:none;border:none;cursor:pointer;font-family:var(--body);font-size:15px;font-weight:700;color:var(--white);display:flex;justify-content:space-between;gap:14px;align-items:center}
.q button .pm{font-size:21px;color:var(--gold);transition:transform .25s;font-weight:400;flex-shrink:0}
.q.open button .pm{transform:rotate(45deg)}
.q .a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.q .a p{padding:0 20px 18px;font-size:14.5px;color:var(--gray)}

.cta-band{text-align:center;padding:70px 26px;border:1.5px solid var(--line-gold);border-radius:22px;background:radial-gradient(480px 240px at 50% 100%,rgba(245,185,60,.12),transparent 70%),var(--bg2)}
.cta-band h2{font-size:clamp(26px,4vw,42px);font-weight:900}
.cta-band p{color:var(--gray);margin:14px auto 26px;max-width:500px}

.sec-head{max-width:640px;margin-bottom:44px}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head h2{font-size:clamp(27px,4vw,42px);font-weight:800}
.sec-head p{color:var(--gray);margin-top:12px;font-size:16.5px}

footer{border-top:1px solid var(--line);padding:52px 0 28px;color:var(--gray);margin-top:72px}
.foot{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding-bottom:34px;border-bottom:1px solid var(--line)}
.foot h4{font-size:11.5px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:14px;font-weight:800}
.foot a{display:block;color:var(--gray);text-decoration:none;padding:4px 0;font-size:14px}
.foot a:hover{color:var(--white)}
.foot p{font-size:14px;line-height:1.8}
.legal{padding-top:20px;font-size:11px;color:var(--gray2);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;letter-spacing:.5px}
.wa{position:fixed;right:20px;bottom:20px;z-index:99;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;text-decoration:none;box-shadow:0 10px 26px rgba(0,0,0,.5)}

.hero-home{padding:66px 0 44px;text-align:center;background:radial-gradient(700px 380px at 50% -10%,rgba(245,185,60,.08),transparent 70%)}
.hero-home .k{display:block;margin-bottom:20px}
.hero-home h1{font-size:clamp(38px,6.6vw,64px);font-weight:900;max-width:900px;margin:0 auto}
.hero-home .lead{font-size:clamp(16.5px,2vw,19px);color:var(--gray);max-width:620px;margin:22px auto 30px}
.hero-img{max-width:780px;margin:48px auto 0}
.hero-img .photo{height:340px}
.trust-line{margin-top:24px;font-size:14px;color:var(--gray);text-align:center}
.trust-line b{color:var(--gold)}

@media(max-width:900px){.quotes,.ports,.grid2{grid-template-columns:1fr}.foot{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr 1fr}.hero-page::after{display:none}}
@media(max-width:640px){
  .nav-links{display:none}
  .nav-links.show{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--bg);flex-direction:column;padding:20px 22px;gap:15px;border-bottom:1px solid var(--line)}
  .menu-btn{display:block}
  .grid3{grid-template-columns:1fr}
  section{padding:54px 0}
  .hero-home{padding-top:44px}
  .hero-page{padding:52px 0 44px}
  .hstats{grid-template-columns:1fr;max-width:420px}
  .hstats>div{border-right:none;border-bottom:1px solid var(--line)}
  .hstats>div:last-child{border-bottom:none}
  .hero-home .btn,.cta-band .btn,.capture .btn,.hero-page .btn{width:100%}
  .numbered{flex-direction:column;gap:10px}
  .step{flex-direction:column}
  .stack .row{flex-direction:column;gap:8px}
  .foot{grid-template-columns:1fr}
}

/* ---- WordPress block styling: dark-gold ---- */
.entry-content{max-width:1060px;margin:0 auto;padding:0 22px 60px}
.entry-content>p{max-width:720px;color:#D9D9D3}
.entry-content h2{font-size:clamp(25px,3.4vw,38px);margin:50px 0 14px;padding-top:18px;border-top:1px solid var(--line)}
.entry-content h3{font-size:20px;margin:28px 0 10px}
.entry-content ul{list-style:none;max-width:720px;margin:14px 0}
.entry-content ul li{padding:8px 0 8px 24px;position:relative;border-bottom:1px solid var(--line);color:var(--gray)}
.entry-content ul li::before{content:"✓";position:absolute;left:0;top:8px;color:var(--gold);font-weight:800;font-size:13px}
.entry-content blockquote{border-left:3px solid var(--gold);background:var(--card);padding:22px 26px;font-size:18px;color:var(--white);margin:28px 0;max-width:760px;border-radius:0 14px 14px 0;font-weight:600}
.wp-block-button__link{background:var(--grad)!important;color:#171204!important;border:none!important;border-radius:12px!important;box-shadow:0 0 30px rgba(245,185,60,.3);padding:16px 30px!important;font-weight:800;font-family:var(--body)!important;transition:transform .12s}
.wp-block-button__link:hover{transform:translateY(-2px)}
.is-style-outline .wp-block-button__link{background:transparent!important;color:var(--gold)!important;border:1.5px solid var(--line-gold)!important;box-shadow:none}
.wp-block-columns{gap:18px}
.wp-block-column{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px}
.wp-block-separator{border:none;height:3px;width:64px;margin:24px auto;background:var(--grad);border-radius:2px}
.wp-block-table table{border-collapse:collapse;width:100%}
.wp-block-table th{background:#1A1710;color:var(--gold);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:12px 14px;text-align:left;border:1px solid var(--line)}
.wp-block-table td{border:1px solid var(--line);padding:11px 14px;font-size:14.5px;color:var(--gray)}
.page-hero{padding:60px 0 48px;border-bottom:1px solid var(--line);margin-bottom:40px;background:radial-gradient(620px 320px at 20% -10%,rgba(245,185,60,.08),transparent 70%)}
.page-hero h1{font-size:clamp(31px,4.6vw,50px);max-width:820px;font-weight:900}
.page-hero .k{display:block;margin-bottom:10px}
