:root{
  --bg:#ffffff;
  --text:#111319;
  --muted:#6b7280;
  --panel:#ffffff;
  --border:#e5e7eb;
  --gold:#d4af37;
  --gold-ink:#946c00;
  --radius:16px;
  --shadow: 0 10px 30px rgba(11,13,17,.06);
  --maxw:1100px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family: Montserrat, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  line-height:1.65;
}
img{max-width:100%; display:block; border-radius:12px}
a{text-decoration:none; color:inherit}
.container{max-width:var(--maxw); margin:0 auto; padding:0 20px}

/* Header / Nav */
.site-header{position:sticky; top:0; z-index:40; background:rgba(255,255,255,.85); backdrop-filter:saturate(150%) blur(10px); border-bottom:1px solid var(--border)}
.nav{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{display:flex; align-items:center; gap:10px; font-weight:800; letter-spacing:.4px}
.brand-dot{width:12px; height:12px; border-radius:50%; background:linear-gradient(135deg,var(--gold),#f6e27a)}
.links{display:flex; gap:22px; align-items:center}
.links a{padding:8px 6px; border-bottom:2px solid transparent}
.links a:hover{border-color:var(--gold)}
.menu{display:none; background:transparent; border:1px solid var(--border); padding:8px 10px; border-radius:10px}

.btn{display:inline-block; padding:12px 16px; border-radius:12px; border:1px solid var(--border); font-weight:700}
.btn-primary{background:linear-gradient(135deg,var(--gold),#f6e27a); color:#1a1a1a; border:0; box-shadow: var(--shadow)}
.btn-outline{border:1px solid var(--gold); color:var(--gold-ink)}

/* Hero */
.hero{position:relative; min-height:90vh; display:flex; align-items:center}
.hero-bg{position:absolute; inset:0; background-size:cover; background-position:center}
.hero-overlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.45))}
.hero-inner{position:relative; z-index:2; text-align:center; color:#fff; padding:64px 0}
.hero h1{font-family: 'Playfair Display', serif; font-weight:800; font-size:clamp(34px,5vw,64px); margin:0 0 16px}
.hero h1 em{display:block; font-family: Montserrat, sans-serif; font-style:normal; font-weight:400; font-size: clamp(18px,2.6vw,26px); opacity:.95; margin-top:6px}

/* Section */
.section{padding:80px 0; border-top:1px solid var(--border); background:#fff}
.section-head{text-align:center; margin-bottom:26px}
.section-head h2{font-family:'Playfair Display', serif; font-size: clamp(28px,3.2vw,40px); margin:0}
.section-head .sub{color:var(--muted)}

/* Cards & Grids */
.grid-two{display:grid; grid-template-columns:1fr 1fr; gap:24px}
.grid-three{display:grid; grid-template-columns:repeat(3,1fr); gap:24px}
.card{background:var(--panel); border:1px solid var(--border); border-radius:var(--radius); padding:22px; box-shadow:var(--shadow)}
.card-head{display:flex; align-items:center; gap:10px; margin-bottom:10px}
.card-head i{color:var(--gold)}
.card.media{padding:0; overflow:hidden}

/* Plans */
.plan{position:relative; text-align:left}
.plan .price{font-size:30px; font-weight:900}
.plan .badge{position:absolute; top:16px; right:16px; background:var(--gold); color:#1a1a1a; font-weight:800; padding:6px 10px; border-radius:999px}
.plan-featured{border-color:var(--gold)}

/* Lists */
.list{padding-left:18px}
.list li{margin:6px 0}

/* Page hero */
.page-hero{padding:70px 0; background:linear-gradient(180deg,#fff, #fff7e0)}
.page-hero h1{font-family:'Playfair Display', serif; font-size: clamp(34px,4vw,48px); margin:0}
.page-hero .sub{color:var(--gold-ink)}

/* Forms */
.form label{display:grid; gap:6px; font-weight:600; margin-bottom:10px}
input, textarea{width:100%; padding:12px 14px; border:1px solid var(--border); border-radius:12px; outline:none; background:#fff}
input:focus, textarea:focus{border-color:var(--gold); box-shadow:0 0 0 3px rgba(212,175,55,.2)}
.form-note{font-size:13px; color:var(--muted)}

/* Line divider */
.divider {
  border: 0;
  height: 1px;
  background: #d4af37; /* gold color */
  width: 80%;
  margin: 40px auto;
  opacity: 0.6;
}

/* Social icons section */
.footer-social-links {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 40px;
}

.footer-social-links a {
  color: #d4af37; /* gold icons */
  font-size: 1.8rem;
  transition: color 0.3s, transform 0.2s;
}

.footer-social-links a:hover {
  color: #fff;
  transform: scale(1.15);
}

/* Footer */
.site-footer{padding:60px 0; border-top:1px solid var(--border); color:var(--muted); text-align:center}

/* Responsive */
@media (max-width: 960px){
  .links{display:none}
  .menu{display:inline-flex; align-items:center; gap:8px}
  .grid-two{grid-template-columns:1fr}
  .grid-three{grid-template-columns:1fr}
  .hero{min-height:80vh}
}
