/*==================================================
HERITAGE TRUST RESERVE
==================================================*/

:root{
--primary:#0F6CBD;
--dark:#111827;
--text:#4B5563;
--light:#F8FAFC;
--white:#FFF;
--border:#E5E7EB;
--radius:12px;
--container:1200px;
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:Inter,sans-serif;
font-size:16px;
color:var(--text);
background:var(--light);
line-height:1.7;
}

a{
color:inherit;
text-decoration:none;
}

img{
max-width:100%;
display:block;
}

.container{
max-width:var(--container);
margin:auto;
padding:0 24px;
}

/*==================================================
NAVBAR
==================================================*/

.nav{
position:fixed;
top:0;
left:0;
right:0;
z-index:999;
background:rgba(255,255,255,.95);
backdrop-filter:blur(10px);
border-bottom:1px solid var(--border);
}

.nav-content{
height:75px;
display:flex;
align-items:center;
justify-content:space-between;
}

.logo{
font-size:20px;
font-weight:700;
color:var(--dark);
}

.nav-links,
.nav-actions{
display:flex;
align-items:center;
gap:28px;
}

.nav-links a,
.nav-actions>a{
transition:.2s;
}

.nav-links a:hover,
.nav-actions>a:hover{
color:var(--primary);
}

.menu-btn{
border:none;
background:none;
font-size:28px;
cursor:pointer;
}

.mobile-menu{
background:#fff;
border-top:1px solid var(--border);
}

.mobile-menu a{
display:block;
padding:16px 24px;
border-bottom:1px solid var(--border);
}

.mobile-btn{
display:inline-block;
margin:20px 24px;
}

/*==================================================
BUTTONS
==================================================*/

.btn{
display:inline-block;
padding:14px 24px;
background:var(--primary);
color:#fff;
border-radius:8px;
font-weight:600;
transition:.25s;
}

.btn:hover{
opacity:.9;
}

.btn-outline{
display:inline-block;
padding:14px 24px;
border:1px solid var(--primary);
border-radius:8px;
color:var(--primary);
font-weight:600;
margin-left:12px;
}

.bg_img {background: #0F6CBD;}

/*==================================================
HERO
==================================================*/

.hero{
padding:100px 0 100px;
}

.hero-grid{
display:grid;
grid-template-columns:1fr 500px;
gap:70px;
align-items:center;
}

.badge{
display:inline-block;
padding:8px 16px;
background:#EAF3FC;
color:var(--primary);
border-radius:999px;
font-size:14px;
font-weight:600;
margin-bottom:20px;
}

.hero h1{
font-size:58px;
line-height:1.1;
font-weight:800;
color:var(--dark);
margin-bottom:24px;
}

.hero p{
font-size:18px;
margin-bottom:36px;
max-width:560px;
}

.hero-buttons{
display:flex;
align-items:center;
}

/*==================================================
VAULT
==================================================*/

.vault{
background:#fff;
border:1px solid var(--border);
border-radius:18px;
padding:30px;
}

.vault-header{
font-size:22px;
font-weight:700;
color:var(--dark);
margin-bottom:24px;
}

.vault-section{
padding:18px 0;
border-top:1px solid var(--border);
}

.vault-section strong{
display:block;
color:var(--dark);
margin-bottom:10px;
}

.vault-section div{
padding:5px 0;
}

.vault-footer{
margin-top:24px;
padding-top:20px;
border-top:1px solid var(--border);
font-weight:600;
color:#16A34A;
}

/*==================================================
COMMON
==================================================*/

section{
padding:110px 0;
}

.section-title{
font-size:40px;
font-weight:800;
text-align:center;
color:var(--dark);
margin-bottom:18px;
}

.section-subtitle{
max-width:700px;
margin:auto;
text-align:center;
margin-bottom:60px;
}

.cards{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.card{
background:#fff;
border:1px solid var(--border);
border-radius:16px;
padding:32px;
}

.card h3{
font-size:22px;
color:var(--dark);
margin-bottom:16px;
}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:992px){

.hero-grid{
grid-template-columns:1fr;
}

.hero-preview{
margin-top:50px;
}

.cards{
grid-template-columns:1fr;
}

.hero h1{
font-size:42px;
}

.hero-buttons{
flex-direction:column;
align-items:flex-start;
gap:15px;
}

.btn-outline{
margin-left:0;
}

}


/*==================================================
FEATURES
==================================================*/

#features{
padding:110px 0;
}

.section-title{
font-size:44px;
font-weight:800;
color:var(--dark);
text-align:center;
margin-bottom:18px;
line-height:1.2;
}

.section-subtitle{
max-width:700px;
margin:0 auto 60px;
text-align:center;
font-size:18px;
}

.cards{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.card{
background:#fff;
border:1px solid var(--border);
border-radius:16px;
padding:35px;
transition:.25s;
}

.card:hover{
transform:translateY(-4px);
}

.card-icon{
width:58px;
height:58px;
border-radius:12px;
background:#EEF6FD;
display:flex;
align-items:center;
justify-content:center;
font-size:24px;
margin-bottom:25px;
}

.card h3{
font-size:24px;
color:var(--dark);
margin-bottom:14px;
}

.card p{
margin:0;
}

/*==================================================
PRODUCT PREVIEW
==================================================*/

.preview{
padding:110px 0;
background:#fff;
}

.dashboard{
display:grid;
grid-template-columns:260px 1fr;
border:1px solid var(--border);
border-radius:18px;
overflow:hidden;
background:#fff;
}

.sidebar{
background:#F8FAFC;
padding:35px;
border-right:1px solid var(--border);
}

.sidebar-logo{
font-size:22px;
font-weight:700;
color:var(--dark);
margin-bottom:40px;
}

.sidebar a{
display:block;
padding:12px 16px;
margin-bottom:8px;
border-radius:10px;
}

.sidebar a.active{
background:var(--primary);
color:#fff;
}

.content{
padding:40px;
}

.stats{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
margin-bottom:40px;
}

.stat{
background:#F8FAFC;
padding:28px;
border-radius:14px;
border:1px solid var(--border);
}

.stat h3{
font-size:34px;
color:var(--dark);
margin-bottom:6px;
}

.section-header{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
}

.section-header h3{
color:var(--dark);
}

.table{
border:1px solid var(--border);
border-radius:14px;
overflow:hidden;
}

.table-row{
display:grid;
grid-template-columns:1fr 170px 150px;
padding:18px 22px;
border-bottom:1px solid var(--border);
}

.table-row:last-child{
border-bottom:none;
}

/*==================================================
HOW IT WORKS
==================================================*/

#how{
padding:110px 0;
}

.steps{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

.step{
text-align:center;
}

.step-number{
width:65px;
height:65px;
margin:auto auto 25px;
background:var(--primary);
color:#fff;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:22px;
font-weight:700;
}

.step h3{
color:var(--dark);
margin-bottom:15px;
}

/*==================================================
SECURITY
==================================================*/

#security{
padding:110px 0;
background:#fff;
}

.security-box{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
background:#F8FAFC;
padding:60px;
border-radius:20px;
border:1px solid var(--border);
}

.security-box h2{
font-size:40px;
color:var(--dark);
margin:20px 0;
}

.security-item{
padding:18px 22px;
background:#fff;
border:1px solid var(--border);
border-radius:12px;
margin-bottom:15px;
font-weight:600;
}

/*==================================================
FAQ
==================================================*/

#faq{
padding:110px 0;
}

.faq{
max-width:900px;
margin:auto;
}

.faq-question{
width:100%;
padding:24px;
text-align:left;
border:none;
background:#fff;
border:1px solid var(--border);
border-radius:12px;
font-size:18px;
font-weight:600;
cursor:pointer;
margin-bottom:12px;
}

.faq-answer{
display:none;
padding:0 24px 24px;
background:#fff;
border-left:1px solid var(--border);
border-right:1px solid var(--border);
border-bottom:1px solid var(--border);
margin-top:-12px;
margin-bottom:12px;
}

/*==================================================
CTA
==================================================*/

.cta{
padding:110px 0;
background:var(--primary);
color:#fff;
text-align:center;
}

.cta h2{
font-size:46px;
margin-bottom:18px;
}

.cta p{
font-size:18px;
max-width:650px;
margin:0 auto 35px;
}

.cta .btn{
background:#fff;
color:var(--primary);
}

/*==================================================
FOOTER
==================================================*/

footer{
background:#111827;
color:#D1D5DB;
}

.footer{
padding:70px 24px;
display:flex;
justify-content:space-between;
gap:60px;
}

.footer h3{
color:#fff;
margin-bottom:15px;
}

.footer-links{
display:grid;
gap:12px;
}

.footer-links a:hover{
color:#fff;
}

.copyright{
border-top:1px solid rgba(255,255,255,.08);
padding:25px;
text-align:center;
}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:992px){

.cards,
.steps,
.stats,
.security-box,
.dashboard{
grid-template-columns:1fr;
}

.dashboard{
display:block;
}

.sidebar{
border-right:none;
border-bottom:1px solid var(--border);
}

.table-row{
grid-template-columns:1fr;
gap:8px;
}

.footer{
flex-direction:column;
}

.section-title{
font-size:34px;
}

.cta h2{
font-size:34px;
}

}