
:root{--navy:#0e2140;--navy2:#132c54;--gold:#D4AF37;--gold2:#F5C542;--ink:#122036;--mut:#5b6b84;--line:#e6e9f0;--soft:#f7f8fb}
*{box-sizing:border-box;margin:0;padding:0}
body{font:16px/1.7 'Poppins',system-ui,Segoe UI,Arial,sans-serif;color:var(--ink);background:#fff}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
a{color:var(--navy);text-decoration:none}a:hover{color:var(--gold)}
h1,h2{font-family:'Montserrat','Poppins',sans-serif;letter-spacing:-.01em}
.gk-top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:26px;height:64px}
.brand{display:flex;align-items:center;gap:9px;font-family:Montserrat;font-weight:800;font-size:20px;color:var(--navy)}
.brand b{color:var(--gold)}
.nav nav{display:flex;gap:20px;margin-left:auto;font-size:14.5px;font-weight:500}
.nav .cta{background:linear-gradient(120deg,var(--gold),var(--gold2));color:#1a1400;padding:9px 16px;border-radius:10px;font-weight:600}
.tel{font-weight:600;font-size:14px;white-space:nowrap}
.crumbs{font-size:13px;color:var(--mut);padding:14px 20px}
.crumbs a{color:var(--mut)}.crumbs span{color:var(--ink);font-weight:500}
.hero{background:radial-gradient(1000px 420px at 85% -10%,rgba(212,175,55,.16),transparent),linear-gradient(150deg,var(--navy),var(--navy2));color:#fff;padding:58px 0 46px}
.kicker{color:var(--gold2);font-size:12.5px;letter-spacing:.32em;font-weight:600;text-transform:uppercase;margin-bottom:14px}
.hero h1{font-size:clamp(28px,4.4vw,44px);font-weight:800;max-width:20ch a;max-width:24ch}
.deck{margin-top:14px;max-width:62ch;color:#ccd6e6;font-weight:300}
.statrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:-26px auto 30px;position:relative}
.statrow div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:0 8px 26px rgba(14,21,36,.06)}
.statrow b{font-family:Montserrat;font-size:21px;color:var(--navy);display:block}
.statrow span{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.key-facts{max-width:1120px;margin:26px auto;padding:20px 24px;border:1px solid #ead9a6;background:linear-gradient(120deg,#fdf8e9,#fbf3d9);border-radius:16px}
.kf-h{font-weight:600;color:#7a5c16;letter-spacing:.08em;font-size:13px;text-transform:uppercase;margin-bottom:8px}
.key-facts ul{margin:0 0 8px 18px}.key-facts li{margin:3px 0}
.kf-src{font-size:12px;color:#8a7a45}
.prose{padding:26px 20px;max-width:860px}
.prose h2{font-size:24px;color:var(--navy);margin-bottom:12px}
.prose p{margin-bottom:14px;color:#33415c}
.definition p{font-size:18px}
.answer-first p b{color:var(--navy)}
.steps{padding:26px 20px}.steps h2{font-size:24px;color:var(--navy);margin-bottom:16px}
.steps ol{counter-reset:s;list-style:none;display:grid;gap:12px}
.steps li{counter-increment:s;background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:16px 18px 16px 62px;position:relative}
.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:18px;top:16px;font-family:Montserrat;font-weight:800;color:var(--gold);font-size:19px}
.steps b{display:block;color:var(--navy)}.steps span{color:#4c5a74;font-size:14.5px}
table.costs{width:100%;border-collapse:collapse;margin:14px 0;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.costs th{background:var(--navy);color:var(--gold2);text-align:left;padding:12px 16px;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase}
.costs td{padding:12px 16px;border-top:1px solid var(--line);font-size:15px}
.costs tfoot td{font-weight:600;background:#fdf8e9;color:#5d4a12}
.costs .num{font-variant-numeric:tabular-nums;font-weight:600;color:#7a5c16}
.note{font-size:13px;color:var(--mut)}
.faq{max-width:860px;margin:0 auto;padding:26px 20px}
.faq h2{font-size:24px;color:var(--navy);margin-bottom:14px}
.faq details{border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:10px;background:#fff}
.faq summary{font-weight:600;color:var(--navy);cursor:pointer}
.faq p{margin-top:10px;color:#33415c;font-size:15px}
.related{max-width:860px;margin:0 auto;padding:10px 20px 26px}
.related .fh{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-bottom:8px;font-weight:600}
.related ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.related a{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13.5px;background:var(--soft)}
.cta-band{background:linear-gradient(150deg,#0b0b0b,#181818);color:#fff;padding:44px 0;margin-top:26px}
.cta-band h2{font-size:clamp(22px,3vw,30px)}.cta-band p{color:#c9cbd2;max-width:62ch;margin:10px 0 18px;font-weight:300}
.btn{display:inline-block;border-radius:12px;padding:12px 20px;font-weight:600;margin-right:10px}
.btn.gold{background:linear-gradient(120deg,var(--gold),var(--gold2));color:#1a1400}
.btn.ghost{border:1px solid rgba(245,197,66,.6);color:var(--gold2)}
.hublist ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;padding:26px 0}
.hublist a{display:block;border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#fff;height:100%}
.hublist a:hover{border-color:var(--gold)}
.hublist b{display:block;color:var(--navy);font-size:15px}.hublist span{font-size:12.5px;color:var(--mut)}
.gk-foot{background:var(--navy);color:#c7d2e4;margin-top:0;padding:40px 0 0}
.gk-foot .grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:26px;padding-bottom:26px}
.gk-foot .fb{font-family:Montserrat;font-weight:800;font-size:20px;color:#fff}.gk-foot .fb b{color:var(--gold)}
.gk-foot p{font-size:13.5px;margin:8px 0}.gk-foot .addr{color:#93a5c4}
.gk-foot .fh{color:var(--gold2);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;margin-bottom:8px}
.gk-foot a{display:block;color:#c7d2e4;font-size:13.5px;padding:3px 0}.gk-foot a:hover{color:var(--gold2)}
.legal{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);padding:16px 20px;font-size:12px;color:#8fa0be}
.legal a{display:inline;color:#c7d2e4}
@media(max-width:900px){.nav nav{display:none}.gk-foot .grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gk-foot .grid{grid-template-columns:1fr}.tel{display:none}}

/* v2: depth, tools, blog layouts, consent */
.deep-list{max-width:860px;margin:0 auto 18px;padding:0 20px 0 40px}.deep-list li{margin:7px 0;color:#33415c}
.advisor-note{max-width:860px;margin:10px auto;padding:22px 26px;border-left:4px solid var(--gold);background:#fbf7ea;border-radius:0 14px 14px 0}
.advisor-note .an-k{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:#7a5c16;font-weight:600}
.advisor-note blockquote{font-family:Montserrat;font-size:18px;color:#3a2f10;margin:8px 0;font-weight:600;line-height:1.5}
.advisor-note .an-a{font-size:12.5px;color:#8a7a45}
.tool{background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:26px;margin:18px auto;max-width:860px}
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;align-items:end}
.tgrid.wide{grid-template-columns:1fr}
.tgrid label{font-size:13px;color:var(--mut);display:flex;flex-direction:column;gap:6px;font-weight:500}
.tin{padding:11px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}
.tout{margin-top:18px;font-size:15px}
.tout table{width:100%}
.tout .big{font-family:Montserrat;font-weight:800;font-size:26px;color:var(--navy)}
.crow{flex-direction:row!important;align-items:center;gap:10px!important;font-size:15px!important;color:var(--ink)!important}
.smapsec h2{font-size:19px;color:var(--navy);margin:18px 0 8px}.smapsec .cnt{font-size:12px;color:var(--mut);font-weight:400}
.smap{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 18px;padding:0}
.smap a{font-size:13.5px}
#gk-consent{position:fixed;bottom:16px;left:16px;right:16px;max-width:560px;margin:0 auto;background:#0e2140;color:#dbe3f2;border:1px solid rgba(212,175,55,.5);border-radius:16px;padding:18px 20px;z-index:200;box-shadow:0 18px 50px rgba(0,0,0,.35);display:none}
#gk-consent.show{display:block}
#gk-consent p{font-size:13.5px;margin-bottom:12px}#gk-consent a{color:var(--gold2)}
#gk-consent .btns{display:flex;gap:10px;flex-wrap:wrap}
#gk-consent button{border:0;border-radius:10px;padding:9px 16px;font:inherit;font-weight:600;cursor:pointer}
#gk-consent .acc{background:linear-gradient(120deg,var(--gold),var(--gold2));color:#1a1400}
#gk-consent .dec{background:transparent;border:1px solid #40507a;color:#dbe3f2}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
.blogwrap.layout-editorial .prose{font-size:17px}
.blogwrap.layout-editorial .prose h2{font-family:Georgia,serif;font-weight:700}
.blogwrap.layout-magazine .prose h2{border-left:4px solid var(--gold);padding-left:12px}
.blogwrap.layout-cards .prose{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 26px rgba(14,21,36,.05);margin:14px auto;padding:22px 26px}
.blogwrap.layout-timelinez .prose{border-left:2px solid var(--line);margin-left:24px;padding-left:26px;position:relative}
.blogwrap.layout-timelinez .prose h2::before{content:'';position:absolute;left:-7px;width:12px;height:12px;border-radius:50%;background:var(--gold);margin-top:8px}
.blogwrap.layout-docs .prose h2{font-size:19px;text-transform:uppercase;letter-spacing:.06em}
.blogwrap.layout-docs .prose{max-width:760px}
.blogwrap.layout-story .hero{background:linear-gradient(150deg,#101010,#1c1c1c)}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* v3: per-page themes + varied reveals + hover polish */
[data-th="1"]{--gold:#C9A227;--gold2:#EAB93C}[data-th="2"]{--gold:#D9B44A;--gold2:#F7D774}
[data-th="3"]{--gold:#B8912B;--gold2:#E7C96A}[data-th="4"]{--gold:#D4AF37;--gold2:#FFDD66}
[data-th="5"]{--gold:#CBA135;--gold2:#F2C94C}[data-th="6"]{--gold:#C29B2C;--gold2:#EFC050}
[data-th="7"]{--gold:#DDB94E;--gold2:#F9E08E}
[data-th="1"] .hero{background:radial-gradient(1000px 420px at 12% -10%,rgba(212,175,55,.18),transparent),linear-gradient(205deg,var(--navy),var(--navy2))}
[data-th="2"] .hero{background:radial-gradient(900px 460px at 95% 15%,rgba(245,197,66,.14),transparent),linear-gradient(120deg,#0a1830,var(--navy) 60%)}
[data-th="3"] .hero{background:linear-gradient(150deg,var(--navy) 55%,#1a3a6e)}
[data-th="4"] .hero{background:radial-gradient(700px 380px at 50% -20%,rgba(212,175,55,.2),transparent),linear-gradient(180deg,#0a1830,var(--navy))}
[data-th="5"] .hero{background:linear-gradient(135deg,#0a1830,var(--navy2) 70%,#183565)}
[data-th="6"] .hero{background:radial-gradient(1100px 500px at 80% 110%,rgba(212,175,55,.15),transparent),linear-gradient(160deg,var(--navy),#0a1830)}
[data-th="7"] .hero{background:radial-gradient(800px 400px at 10% 100%,rgba(245,197,66,.12),transparent),linear-gradient(145deg,#0c1c38,var(--navy2))}
.rv{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1),filter .7s ease,clip-path .7s ease}
.rv.rv-up{transform:translateY(26px)}.rv.rv-left{transform:translateX(-34px)}.rv.rv-right{transform:translateX(34px)}
.rv.rv-zoom{transform:scale(.92)}.rv.rv-blur{filter:blur(8px)}.rv.rv-flip{transform:perspective(900px) rotateX(9deg);transform-origin:top}
.rv.rv-clip{clip-path:inset(0 0 42% 0)}
.rv.in{opacity:1;transform:none;filter:none;clip-path:inset(0 0 0 0)}
.hublist a,.card{will-change:transform}
.hublist a{position:relative;overflow:hidden}
.hublist a::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(120deg,transparent 30%,var(--gold2),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:.35s}
.hublist a:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(14,21,36,.1)}
.hublist a:hover::after{opacity:1}
.steps li{transition:.3s}.steps li:hover{transform:translateY(-3px);border-color:#e6d9ae;box-shadow:0 14px 34px rgba(14,21,36,.08)}
.faq details{transition:border-color .3s,box-shadow .3s}
.faq details:hover{border-color:#e6d9ae}
.btn{position:relative;overflow:hidden}
.btn.gold::before{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .5s ease}
.btn.gold:hover::before{left:130%}
.key-facts{transition:box-shadow .35s}.key-facts:hover{box-shadow:0 14px 40px rgba(154,122,34,.14)}
.advisor-note{transition:transform .3s}.advisor-note:hover{transform:translateX(4px)}
table.costs tbody tr{transition:background .25s}table.costs tbody tr:hover{background:#fdf8e9}
@media(prefers-reduced-motion:reduce){.rv,.rv.rv-up,.rv.rv-left,.rv.rv-right,.rv.rv-zoom,.rv.rv-blur,.rv.rv-flip,.rv.rv-clip{opacity:1;transform:none;filter:none;clip-path:none;transition:none}}
