:root{
  --ink:#0B1E3D;
  --ink-2:#132A52;
  --paper:#FBF9F4;
  --paper-2:#F3EEE2;
  --gold:#A9822F;
  --gold-bright:#C9A227;
  --hairline:#DCD4C1;
  --hairline-onink:rgba(255,255,255,.18);
  --text:#1B2430;
  --text-soft:#5C6470;
  --text-onink:#E7E9EE;
  --text-onink-soft:#9FA9C0;
  --success:#1E7A4C;
  --success-bg:#E7F2EB;
  --warn:#8A5A00;
  --warn-bg:#F6EEDC;
  --error:#8C2A20;
  --error-bg:#F5E7E4;
  --maxw:1180px;
  --r:2px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:'Inter',-apple-system,sans-serif;color:var(--text);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;color:var(--ink);margin:0 0 .5rem;line-height:1.15;font-weight:600;}
h1{font-size:3.1rem;}
h2{font-size:2.15rem;}
h3{font-size:1.5rem;}
p{margin:0 0 1rem;color:var(--text-soft);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.label{font-size:.68rem;letter-spacing:2.4px;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:10px;display:block;}
.label-onink{color:var(--gold-bright);}
.section{padding:80px 0;}
.section-alt{background:var(--paper-2);}
.center{text-align:center;}
.hr{border:none;border-top:1px solid var(--hairline);margin:0;}
.hr-onink{border-top:1px solid var(--hairline-onink);}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 30px;border-radius:var(--r);font-weight:600;font-size:.78rem;letter-spacing:1.2px;text-transform:uppercase;border:1px solid transparent;cursor:pointer;transition:.2s ease;white-space:nowrap;}
.btn-primary{background:var(--ink);color:var(--gold-bright);border:1px solid var(--gold);}
.btn-primary:hover{background:#152C56;}
.btn-outline{background:transparent;border:1px solid var(--ink);color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:#fff;}
.btn-outline-light{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;}
.btn-outline-light:hover{background:rgba(255,255,255,.1);border-color:#fff;}
.btn-text{background:none;border:none;color:var(--ink);font-weight:600;font-size:.82rem;letter-spacing:.3px;text-transform:none;padding:0;border-bottom:1px solid var(--gold);border-radius:0;}
.btn-sm{padding:9px 18px;font-size:.7rem;}
.btn-block{width:100%;}

input,select,textarea{background:#fff;color:var(--text);border:1px solid var(--hairline);font-family:inherit;border-radius:var(--r);}
input::placeholder,textarea::placeholder{color:#9a9384;}

.topbar{background:var(--ink);color:var(--text-onink-soft);font-size:.72rem;letter-spacing:.5px;padding:8px 0;}
.topbar .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;}
.topbar a{color:var(--text-onink-soft);margin-right:18px;}
.topbar a:hover{color:var(--gold-bright);}

header.main-nav{background:var(--paper);border-bottom:1px solid var(--hairline);position:sticky;top:0;z-index:100;}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:var(--maxw);margin:0 auto;gap:20px;}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:44px;width:44px;object-fit:contain;}
.brand-text{line-height:1.1;}
.brand-text .name{font-family:'Cormorant Garamond',serif;font-weight:600;color:var(--ink);font-size:1.3rem;letter-spacing:.3px;}
.brand-text .tag{font-size:.6rem;letter-spacing:2px;color:var(--gold);font-weight:600;text-transform:uppercase;}
nav.links{display:flex;gap:30px;align-items:center;}
nav.links a{font-size:.74rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink);padding:6px 0;border-bottom:1px solid transparent;}
nav.links a:hover,nav.links a.active{border-color:var(--gold);}
.nav-cta{display:flex;align-items:center;gap:12px;}
.menu-toggle{display:none;background:none;border:none;font-size:1.5rem;color:var(--ink);cursor:pointer;}

@media (max-width:920px){
  nav.links{position:fixed;top:96px;left:0;right:0;bottom:0;background:var(--paper);flex-direction:column;padding:24px;gap:18px;transform:translateX(100%);transition:.25s;overflow-y:auto;align-items:flex-start;}
  nav.links.open{transform:translateX(0);}
  .menu-toggle{display:block;}
  .nav-cta .btn-outline{display:none;}
}

.hero{background:var(--ink);color:#fff;padding:0;}
.hero-frame{border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:64px 0;position:relative;}
.hero-frame::before{content:"";position:absolute;top:6px;left:0;right:0;border-top:1px solid rgba(201,162,39,.35);}
.hero-frame::after{content:"";position:absolute;bottom:6px;left:0;right:0;border-top:1px solid rgba(201,162,39,.35);}
.hero-inner{max-width:660px;margin:0 auto;text-align:center;}
.hero h1{color:#fff;font-size:3.2rem;}
.hero p.lead{color:var(--text-onink-soft);font-size:1.05rem;max-width:520px;margin:0 auto 30px;}
.hero-ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

.ledger{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);}
.ledger .cell{text-align:center;padding:30px 10px;border-left:1px solid var(--hairline-onink);}
.ledger .cell:first-child{border-left:none;}
.ledger .num{font-family:'Cormorant Garamond',serif;font-size:2.1rem;color:var(--gold-bright);font-weight:600;}
.ledger .lbl{font-size:.68rem;color:var(--text-onink-soft);letter-spacing:1.2px;text-transform:uppercase;margin-top:4px;}
@media (max-width:700px){.ledger{grid-template-columns:repeat(2,1fr);}.ledger .cell:nth-child(3){border-left:none;}}

.grid{display:grid;gap:0;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.grid-5{grid-template-columns:repeat(5,1fr);}
.gap{gap:1px;background:var(--hairline);border:1px solid var(--hairline);}
.gap>*{background:var(--paper);}
@media (max-width:920px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}.grid-5{grid-template-columns:repeat(3,1fr);}}
@media (max-width:600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}.grid-5{grid-template-columns:repeat(2,1fr);}}

.tile{padding:30px 26px;}
.tile .num-mark{font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--gold);border:1px solid var(--gold);width:32px;height:32px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;border-radius:50%;}
.tile i{font-size:1.3rem;color:var(--ink);margin-bottom:12px;display:block;}
.tile h3{font-size:1.15rem;margin-bottom:6px;}
.tile p{font-size:.85rem;margin-bottom:0;}

.process{display:flex;border:1px solid var(--hairline);}
.process .step{flex:1;padding:26px 20px;border-left:1px solid var(--hairline);position:relative;}
.process .step:first-child{border-left:none;}
.process .step .n{font-family:'Cormorant Garamond',serif;font-size:1.6rem;color:var(--gold);margin-bottom:8px;}
.process .step h4{font-size:.95rem;color:var(--ink);margin-bottom:4px;font-family:'Inter',sans-serif;font-weight:700;}
.process .step p{font-size:.78rem;margin:0;}
@media (max-width:800px){.process{flex-direction:column;}.process .step{border-left:none;border-top:1px solid var(--hairline);}.process .step:first-child{border-top:none;}}

.sheet{border:1px solid var(--hairline);background:#fff;}
.sheet-row{display:grid;grid-template-columns:1.6fr repeat(4,1fr) auto;gap:0;border-top:1px solid var(--hairline);align-items:center;}
.sheet-row:first-child{border-top:none;}
.sheet-head{display:grid;grid-template-columns:1.6fr repeat(4,1fr) auto;background:var(--ink);color:var(--text-onink-soft);font-size:.65rem;letter-spacing:1.2px;text-transform:uppercase;}
.sheet-head div,.sheet-row div{padding:16px 18px;}
.sheet-row .inst{}
.sheet-row .inst .name{font-family:'Cormorant Garamond',serif;font-size:1.15rem;color:var(--ink);font-weight:600;}
.sheet-row .inst .loc{font-size:.76rem;color:var(--text-soft);margin-top:2px;}
.sheet-row .val{font-size:.82rem;color:var(--text);}
.sheet-row .val .k{display:block;font-size:.62rem;letter-spacing:.8px;text-transform:uppercase;color:var(--text-soft);margin-bottom:2px;}
@media (max-width:900px){
  .sheet-head{display:none;}
  .sheet-row{grid-template-columns:1fr;}
  .sheet-row div{border-top:1px dashed var(--hairline);padding:10px 18px;}
  .sheet-row .inst{border-top:none;padding-top:18px;}
}

.badge{display:inline-block;font-size:.65rem;font-weight:700;padding:4px 10px;letter-spacing:.6px;text-transform:uppercase;border:1px solid currentColor;}
.badge-gold{color:var(--gold);}
.badge-green{color:var(--success);}
.badge-navy{color:var(--ink);}
.badge-red{color:var(--error);}

.quote-row{border-top:1px solid var(--hairline);}
.quote{padding:36px 0;border-bottom:1px solid var(--hairline);}
.quote .mark{font-family:'Cormorant Garamond',serif;font-size:3rem;color:var(--gold);line-height:.5;display:block;margin-bottom:10px;}
.quote p.q{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-style:italic;color:var(--ink);margin-bottom:14px;}
.quote .who{font-size:.78rem;color:var(--text-soft);letter-spacing:.3px;}
.quote .who b{color:var(--ink);}

footer{background:var(--ink);color:var(--text-onink-soft);padding:64px 0 0;}
footer .grid-4{margin-bottom:44px;gap:30px;}
footer h4{color:#fff;font-size:.72rem;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:16px;}
footer a{display:block;color:var(--text-onink-soft);font-size:.85rem;padding:5px 0;}
footer a:hover{color:var(--gold-bright);}
.foot-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.foot-brand img{height:40px;width:40px;}
.foot-brand strong{font-family:'Cormorant Garamond',serif;font-size:1.15rem;color:#fff;font-weight:600;}
.foot-bottom{border-top:1px solid var(--hairline-onink);padding:20px 0;font-size:.75rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#7C8AA8;}

.floating{position:fixed;right:22px;bottom:22px;display:flex;flex-direction:column;gap:12px;z-index:200;}
.floating a{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.3rem;box-shadow:0 6px 18px rgba(0,0,0,.25);}
.fab-whatsapp{background:#25D366;}
.fab-chat{background:var(--ink);border:1px solid var(--gold);color:var(--gold-bright);}

.page-head{background:var(--ink);color:#fff;padding:54px 0;text-align:center;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);}
.page-head h1{color:#fff;margin-bottom:6px;font-size:2.5rem;}
.breadcrumb{font-size:.72rem;color:var(--text-onink-soft);letter-spacing:1px;text-transform:uppercase;}
.breadcrumb a{color:var(--gold-bright);}

.filter-bar{background:#fff;border:1px solid var(--hairline);padding:18px;display:flex;gap:10px;flex-wrap:wrap;margin:0 auto 40px;max-width:var(--maxw);}
.filter-bar select,.filter-bar input{border:1px solid var(--hairline);padding:10px 12px;font-size:.8rem;font-family:inherit;color:var(--text);flex:1;min-width:130px;}

.form-card{background:#fff;border:1px solid var(--hairline);padding:40px;max-width:440px;margin:0 auto;}
.form-group{margin-bottom:18px;}
.form-group label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--ink);margin-bottom:7px;}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 13px;border:1px solid var(--hairline);font-family:inherit;font-size:.9rem;outline:none;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold);}
.form-foot{font-size:.8rem;text-align:center;margin-top:18px;color:var(--text-soft);}
.form-foot a{color:var(--gold);font-weight:600;border-bottom:1px solid var(--gold);}
.tabs{display:flex;border-bottom:1px solid var(--hairline);margin-bottom:28px;}
.tabs button{flex:1;background:none;border:none;padding:12px;font-weight:700;font-size:.72rem;letter-spacing:1px;text-transform:uppercase;color:var(--text-soft);cursor:pointer;border-bottom:2px solid transparent;}
.tabs button.active{color:var(--ink);border-color:var(--gold);}

.dash-layout{display:grid;grid-template-columns:230px 1fr;gap:0;min-height:70vh;}
.dash-side{background:var(--ink);color:var(--text-onink-soft);padding:30px 18px;}
.dash-side a{display:flex;align-items:center;gap:10px;padding:11px 12px;font-size:.8rem;margin-bottom:2px;letter-spacing:.3px;}
.dash-side a.active,.dash-side a:hover{background:rgba(255,255,255,.06);color:#fff;border-left:2px solid var(--gold);}
.dash-main{padding:38px;background:var(--paper-2);}
@media (max-width:840px){.dash-layout{grid-template-columns:1fr;}}

.tracker{display:flex;flex-wrap:wrap;gap:0;}
.tracker .step{flex:1;min-width:110px;text-align:center;padding:14px 6px;font-size:.68rem;color:var(--text-soft);border-top:2px solid var(--hairline);}
.tracker .step.done{color:var(--success);font-weight:600;border-color:var(--success);}
.tracker .step.current{color:var(--gold);font-weight:700;border-color:var(--gold);}

.doc-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--hairline);font-size:.86rem;}

.card{background:#fff;border:1px solid var(--hairline);padding:26px;}
.card h3{margin-bottom:6px;}
.card .meta{font-size:.8rem;color:var(--text-soft);margin-bottom:10px;}
.icon-badge{width:44px;height:44px;border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:14px;color:var(--gold);font-size:1.2rem;}
.avatar{width:52px;height:52px;background:var(--ink);color:var(--gold-bright);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;border:1px solid var(--gold);font-family:'Cormorant Garamond',serif;}

.small{font-size:.8rem;color:var(--text-soft);}
.flex{display:flex;}
.gap-10{gap:10px;}
.items-center{align-items:center;}
.justify-between{justify-content:space-between;}
.notice{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn);padding:12px 16px;font-size:.82rem;margin-bottom:20px;}

/* ---- Backward-compatible aliases so untouched pages inherit the new system ---- */
:root{
  --navy: var(--ink);
  --navy-2: var(--ink-2);
  --navy-light: #1B3766;
  --grey: var(--paper-2);
  --grey-line: var(--hairline);
  --gold-light: var(--gold-bright);
  --gold-dark: var(--gold);
  --warning: var(--warn);
  --warning-bg: var(--warn-bg);
  --shadow: none;
  --shadow-sm: none;
  --radius: var(--r);
  --radius-lg: 0px;
}
.btn-gold{background:var(--ink);color:var(--gold-bright);border:1px solid var(--gold);border-radius:var(--r);text-transform:uppercase;letter-spacing:1.2px;font-size:.78rem;}
.btn-gold:hover{background:#152C56;}
.btn-navy{background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:var(--r);text-transform:uppercase;letter-spacing:1.2px;font-size:.78rem;}
.btn-navy:hover{background:var(--ink);color:#fff;}
.btn-outline-navy{background:transparent;border:1px solid var(--ink);color:var(--ink);border-radius:var(--r);text-transform:uppercase;letter-spacing:1.2px;font-size:.78rem;}
.btn-outline-navy:hover{background:var(--ink);color:#fff;}
.search-bar{background:#fff;border:1px solid var(--hairline);padding:8px;display:flex;gap:8px;max-width:640px;margin:0 auto;flex-wrap:wrap;}
.search-bar input,.search-bar select{border:none;outline:none;font-size:.9rem;padding:10px 12px;font-family:inherit;color:var(--text);}
.search-bar input{flex:1;min-width:180px;}
.search-bar select{border-left:1px solid var(--hairline);color:var(--text-soft);}
.stat .num{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--gold-bright);font-weight:700;}
.stat .lbl{font-size:.68rem;color:var(--text-onink-soft);letter-spacing:1px;text-transform:uppercase;}
.uni-card,.testimonial{background:#fff;border:1px solid var(--hairline);}
.uni-card .thumb{height:120px;background:var(--ink);display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Cormorant Garamond',serif;font-size:1.15rem;}
.uni-card .body{padding:20px;}
.uni-card .rows{margin:12px 0;font-size:.82rem;}
.uni-card .rows div{display:flex;justify-content:space-between;padding:6px 0;border-top:1px dashed var(--hairline);color:var(--text-soft);}
.uni-card .rows div span:last-child{color:var(--text);font-weight:600;}
.tag{display:inline-block;font-size:.65rem;font-weight:700;padding:4px 10px;letter-spacing:.6px;text-transform:uppercase;border:1px solid currentColor;}
.tag-gold{color:var(--gold);}
.tag-green{color:var(--success);}
.tag-navy{color:var(--ink);}
.tag-red{color:var(--error);}
.feature-row{display:flex;justify-content:space-between;background:#fff;border:1px solid var(--hairline);padding:30px 10px;flex-wrap:wrap;}
.feature-row .item{flex:1;min-width:120px;text-align:center;padding:0 14px;border-left:1px solid var(--hairline);}
.feature-row .item:first-child{border-left:none;}
.feature-row .item i{font-size:1.4rem;color:var(--ink);}
.feature-row .item .t{font-size:.75rem;font-weight:700;color:var(--ink);margin-top:8px;letter-spacing:.5px;text-transform:uppercase;}
.testimonial{padding:26px;}
.testimonial .stars{color:var(--gold);font-size:.9rem;margin-bottom:10px;}
.testimonial .who{display:flex;align-items:center;gap:10px;margin-top:16px;}

.rows{margin:12px 0;font-size:.82rem;}
.rows div{display:flex;justify-content:space-between;padding:6px 0;border-top:1px dashed var(--hairline);color:var(--text-soft);}
.rows div span:last-child{color:var(--text);font-weight:600;}

.btn[href^="mailto"]{text-transform:none;letter-spacing:normal;}
.advisor-box{border:1px solid var(--hairline);background:#fff;padding:24px;margin-top:26px;}
.advisor-box .row{display:flex;align-items:center;gap:12px;margin-top:12px;}
.advisor-box .row i{font-size:1.3rem;color:var(--gold);width:26px;text-align:center;}

.fab-wechat{background:#07C160;}

/* ===== HR Next Horizon additions: contact modals + sliders ===== */
.hrnh-overlay{display:none;position:fixed;inset:0;background:rgba(11,30,61,.6);z-index:9999;align-items:center;justify-content:center;padding:20px;}
.hrnh-overlay.open{display:flex;}
.hrnh-modal{background:#fff;width:100%;max-width:420px;border-radius:4px;padding:28px;box-shadow:0 30px 60px rgba(0,0,0,.35);max-height:90vh;overflow-y:auto;}
.hrnh-modal h3{font-size:1.15rem;margin-bottom:6px;}
.hrnh-modal-close{float:right;cursor:pointer;font-size:1.2rem;color:var(--text-soft);}
.hrnh-contact-btn{display:flex;align-items:center;gap:14px;border:1px solid var(--hairline);padding:13px 16px;margin-top:10px;text-decoration:none;}
.hrnh-contact-btn:hover{border-color:#25D366;background:var(--paper-2);}
.hrnh-contact-btn i{font-size:1.5rem;color:#25D366;}
.hrnh-contact-btn b{display:block;color:var(--ink);font-size:.92rem;}
.hrnh-contact-btn span{font-size:.78rem;color:var(--text-soft);}
.hrnh-qr-img{width:220px;height:220px;display:block;margin:10px auto;border:1px solid var(--hairline);border-radius:4px;}

.hrnh-slider{display:flex;align-items:center;gap:14px;}
.hrnh-slider-track{flex:1;overflow:hidden;position:relative;min-height:240px;}
.hrnh-slider-nav{width:42px;height:42px;border-radius:50%;background:#fff;border:1px solid var(--hairline);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;cursor:pointer;}
.hrnh-slider-nav:hover{background:var(--ink);color:#fff;}
.hrnh-slider-dots{display:flex;justify-content:center;gap:8px;margin-top:16px;}
.hrnh-slider-dot{width:8px;height:8px;border-radius:50%;background:var(--hairline);cursor:pointer;}
.hrnh-slider-dot.active{background:var(--gold);width:20px;border-radius:5px;}
.hrnh-gallery-slide{display:none;text-align:center;}
.hrnh-gallery-slide.active{display:block;}
.hrnh-gallery-slide img{width:100%;max-height:400px;object-fit:cover;border-radius:4px;}
.hrnh-gallery-slide .cap{margin-top:10px;font-size:.85rem;color:var(--text-soft);}
.hrnh-gallery-slide.placeholder{display:flex;align-items:center;justify-content:center;min-height:240px;background:var(--paper-2);color:var(--text-soft);font-size:.85rem;}
.hrnh-testimonial-slide{display:none;}
.hrnh-testimonial-slide.active{display:block;}
