/* ══════════════════════════════════════════
   SEHLASENYUKA INVESTMENTS — SHARED STYLES
   ══════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=Syne:wght@400;500;600;700;800&family=DM+Sans:ital,wght@0,300;0,400;0,500;1,300&display=swap');

:root {
  --navy:       #0d1b2a;
  --navy-mid:   #112240;
  --navy-light: #1a3558;
  --navy-card:  #0f2035;
  --cyan:       #00c2d4;
  --cyan-dim:   #007a86;
  --cyan-glow:  rgba(0,194,212,0.15);
  --gold:       #c9a84c;
  --gold-light: #e8c97a;
  --gold-dim:   rgba(201,168,76,0.15);
  --cream:      #f5f0e8;
  --white:      #ffffff;
  --grey:       #8899aa;
  --text-dim:   #5a7490;
  --border:     rgba(0,194,212,0.12);
  --border-soft:rgba(255,255,255,0.06);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  background: var(--navy);
  color: var(--white);
  font-family: 'DM Sans', sans-serif;
  overflow-x: hidden;
  cursor: none;
}

/* ── CURSOR ── */
.cursor {
  position:fixed; width:10px; height:10px;
  background:var(--cyan); border-radius:50%;
  pointer-events:none; z-index:9999;
  mix-blend-mode:difference;
}
.cursor-ring {
  position:fixed; width:36px; height:36px;
  border:1px solid var(--cyan); border-radius:50%;
  pointer-events:none; z-index:9998;
  transition: width .3s, height .3s, opacity .3s;
  opacity:.6;
}
.cursor-ring.hover { width:56px; height:56px; opacity:.3; }

/* ── NAV ── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  padding:24px 70px;
  display:flex; align-items:center; justify-content:space-between;
  background: rgba(255,255,255,0.97);
  border-bottom: 1px solid rgba(0,0,0,0.08);
  transition: background .4s, padding .4s, box-shadow .4s;
}
nav.scrolled {
  background: rgba(255,255,255,0.98);
  backdrop-filter:blur(20px);
  padding:14px 70px;
  box-shadow: 0 2px 20px rgba(0,0,0,0.10);
}
.nav-logo { display:flex; align-items:center; gap:12px; text-decoration:none; }
.nav-logo img { height:42px; }
.nav-links { display:flex; gap:36px; list-style:none; align-items:center; }
.nav-links a {
  text-decoration:none; color:#1a2b3c;
  font-family:'Syne',sans-serif; font-size:.76rem;
  font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  transition:color .3s; position:relative; padding-bottom:4px;
}
.nav-links a::after {
  content:''; position:absolute; bottom:0; left:0; right:0;
  height:1px; background:var(--cyan);
  transform:scaleX(0); transform-origin:left; transition:transform .3s;
}
.nav-links a:hover { color:var(--cyan); }
.nav-links a:hover::after,
.nav-links a.active { color:var(--cyan); }
.nav-links a.active::after { transform:scaleX(1); }
.nav-cta {
  background:transparent !important; border:1px solid var(--cyan) !important;
  color:var(--cyan) !important; padding:10px 26px !important;
  border-radius:2px; transition:background .3s, color .3s !important;
}
.nav-cta::after { display:none !important; }
.nav-cta:hover { background:var(--cyan) !important; color:var(--navy) !important; }
.nav-cta.active { color:var(--cyan) !important; }

/* Mobile */
.hamburger {
  display:none; flex-direction:column; gap:5px; cursor:none;
  background:none; border:none; padding:4px;
}
.hamburger span { display:block; width:24px; height:1px; background:#1a2b3c; transition:.3s; }
.hamburger.open span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity:0; }
.hamburger.open span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
.mobile-menu {
  display:none; position:fixed; inset:0; z-index:190;
  background:rgba(13,27,42,.98); backdrop-filter:blur(20px);
  flex-direction:column; align-items:center; justify-content:center; gap:36px;
}
.mobile-menu.open { display:flex; }
.mobile-menu a {
  text-decoration:none; color:var(--white);
  font-family:'Cormorant Garamond',serif; font-size:2.4rem;
  font-weight:300; transition:color .3s;
}
.mobile-menu a:hover { color:var(--cyan); }

/* ── PAGE HERO (inner pages) ── */
.page-hero {
  position:relative; padding:160px 70px 100px;
  overflow:hidden;
  background:linear-gradient(160deg, var(--navy) 0%, var(--navy-mid) 60%, var(--navy) 100%);
}
.page-hero-bg {
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse 60% 80% at 80% 40%, rgba(0,194,212,.07) 0%, transparent 60%),
    radial-gradient(ellipse 40% 60% at 10% 90%, rgba(201,168,76,.05) 0%, transparent 50%);
}
.page-hero-pattern {
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg stroke='%2300c2d4' stroke-width='0.3' opacity='0.1'%3E%3Cpath d='M30 0L60 30L30 60L0 30z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.page-hero-content { position:relative; max-width:700px; }
.page-hero-breadcrumb {
  font-family:'Syne',sans-serif; font-size:.7rem;
  letter-spacing:.2em; text-transform:uppercase; color:var(--text-dim);
  margin-bottom:20px; display:flex; align-items:center; gap:10px;
}
.page-hero-breadcrumb a { color:var(--text-dim); text-decoration:none; transition:color .3s; }
.page-hero-breadcrumb a:hover { color:var(--cyan); }
.page-hero-breadcrumb span { color:var(--cyan); }
.page-hero h1 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.8rem,5.5vw,5rem);
  font-weight:300; line-height:1.08; margin-bottom:20px;
}
.page-hero h1 em { font-style:italic; color:var(--gold-light); }
.page-hero p {
  color:var(--grey); font-size:1rem; line-height:1.75; max-width:550px;
}

/* ── COMMON SECTION ── */
section { padding:110px 70px; }
.section-label {
  font-family:'Syne',sans-serif; font-size:.7rem;
  letter-spacing:.25em; text-transform:uppercase; color:var(--cyan);
  margin-bottom:18px; display:flex; align-items:center; gap:14px;
}
.section-label::before { content:''; display:block; width:30px; height:1px; background:var(--cyan); }
.section-label.centered { justify-content:center; }
.section-label.centered::before { display:none; }
h2 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2rem,3.5vw,3.4rem);
  font-weight:300; line-height:1.1; margin-bottom:20px;
}
h2 em { font-style:italic; color:var(--gold-light); }
h3 { font-family:'Syne',sans-serif; font-weight:700; }

/* ── BUTTONS ── */
.btn-primary {
  display:inline-flex; align-items:center; gap:12px;
  background:var(--cyan); color:var(--navy);
  font-family:'Syne',sans-serif; font-size:.78rem;
  font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  text-decoration:none; padding:17px 34px; border-radius:2px;
  border:none; transition:background .3s, transform .2s, box-shadow .3s;
  cursor:none;
}
.btn-primary:hover {
  background:var(--gold); transform:translateY(-2px);
  box-shadow:0 12px 40px rgba(201,168,76,.25);
}
.btn-primary svg { transition:transform .3s; }
.btn-primary:hover svg { transform:translateX(4px); }

.btn-outline {
  display:inline-flex; align-items:center; gap:10px;
  background:transparent; color:var(--white);
  font-family:'Syne',sans-serif; font-size:.78rem;
  font-weight:600; letter-spacing:.12em; text-transform:uppercase;
  text-decoration:none; padding:16px 32px; border-radius:2px;
  border:1px solid rgba(255,255,255,.25);
  transition:border-color .3s, color .3s, background .3s; cursor:none;
}
.btn-outline:hover { border-color:var(--cyan); color:var(--cyan); }

.btn-ghost {
  display:inline-flex; align-items:center; gap:10px;
  color:var(--white); font-family:'Syne',sans-serif;
  font-size:.78rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
  text-decoration:none; padding:17px 0;
  border-bottom:1px solid rgba(255,255,255,.2);
  transition:border-color .3s, color .3s;
}
.btn-ghost:hover { border-color:var(--gold); color:var(--gold); }

/* ── TRUST BAR ── */
.trust-bar {
  background:rgba(0,194,212,.04);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  padding:0; overflow:hidden; height:56px;
  display:flex; align-items:center;
}
.trust-track {
  display:flex; gap:80px; align-items:center;
  animation:scroll-trust 22s linear infinite;
  white-space:nowrap; width:max-content;
}
@keyframes scroll-trust { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.trust-item {
  font-family:'Syne',sans-serif; font-size:.68rem;
  letter-spacing:.2em; text-transform:uppercase; color:var(--text-dim);
  display:flex; align-items:center; gap:14px;
}
.trust-item::before { content:'◆'; color:var(--gold); font-size:.45rem; }

/* ── CARDS ── */
.card {
  background:var(--navy-card);
  border:1px solid var(--border);
  border-radius:6px; overflow:hidden;
  transition:border-color .4s, transform .4s;
}
.card:hover { border-color:rgba(0,194,212,.35); transform:translateY(-4px); }
.card-img { width:100%; aspect-ratio:16/9; object-fit:cover; display:block; }
.card-body { padding:28px 30px 32px; }
.card-tag {
  font-family:'Syne',sans-serif; font-size:.64rem;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--cyan); margin-bottom:12px; display:block;
}
.card-body h3 { font-size:.96rem; color:var(--white); margin-bottom:12px; line-height:1.4; }
.card-body p { font-size:.86rem; color:var(--text-dim); line-height:1.7; margin-bottom:20px; }
.card-link {
  font-family:'Syne',sans-serif; font-size:.68rem;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--cyan); text-decoration:none;
  display:inline-flex; align-items:center; gap:8px;
  transition:gap .3s;
}
.card-link:hover { gap:14px; }

/* ── FORM ── */
.form-group { display:flex; flex-direction:column; gap:8px; }
.form-group label {
  font-family:'Syne',sans-serif; font-size:.66rem;
  letter-spacing:.15em; text-transform:uppercase; color:var(--text-dim);
}
.form-group input, .form-group select, .form-group textarea {
  background:rgba(255,255,255,.04);
  border:1px solid rgba(0,194,212,.15); border-radius:2px;
  padding:13px 18px; color:var(--white);
  font-family:'DM Sans',sans-serif; font-size:.9rem;
  outline:none; transition:border-color .3s, background .3s;
  -webkit-appearance:none;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus {
  border-color:var(--cyan); background:rgba(0,194,212,.05);
}
.form-group select option { background:var(--navy-mid); color:var(--white); }
.form-group textarea { resize:vertical; min-height:120px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }

/* ── FOOTER ── */
footer {
  background:#08131e;
  border-top:1px solid rgba(0,194,212,.08);
  padding:80px 70px 40px;
}
.footer-grid {
  display:grid; grid-template-columns:2.2fr 1fr 1fr 1fr 1fr;
  gap:50px; margin-bottom:60px;
}
.footer-brand img { height:38px; margin-bottom:20px; }
.footer-brand p {
  color:var(--text-dim); font-size:.85rem; line-height:1.75;
  max-width:240px; margin-bottom:24px;
}
.footer-socials { display:flex; gap:10px; }
.footer-socials a {
  width:36px; height:36px; border:1px solid rgba(255,255,255,.1);
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:var(--text-dim); text-decoration:none; font-size:.74rem;
  transition:border-color .3s, color .3s;
}
.footer-socials a:hover { border-color:var(--cyan); color:var(--cyan); }
.footer-col h5 {
  font-family:'Syne',sans-serif; font-size:.68rem;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--grey); margin-bottom:22px;
}
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:13px; }
.footer-col ul a {
  text-decoration:none; color:var(--text-dim);
  font-size:.86rem; transition:color .3s;
}
.footer-col ul a:hover { color:var(--cyan); }
.footer-bottom {
  border-top:1px solid var(--border-soft);
  padding-top:28px;
  display:flex; justify-content:space-between; align-items:center;
  flex-wrap:wrap; gap:16px;
}
.footer-bottom p { font-size:.78rem; color:var(--text-dim); }

/* ── SCROLL TO TOP ── */
#scrollTop {
  position:fixed; bottom:36px; right:36px; z-index:500;
  width:48px; height:48px; border-radius:50%;
  background:var(--navy-light); border:1px solid var(--cyan);
  color:var(--cyan); display:flex; align-items:center; justify-content:center;
  cursor:none; opacity:0; transform:translateY(20px);
  transition:opacity .4s, transform .4s, background .3s;
  box-shadow:0 4px 20px rgba(0,0,0,.3);
}
#scrollTop.visible { opacity:1; transform:translateY(0); }
#scrollTop:hover { background:var(--cyan); color:var(--navy); }

/* ── REVEAL ANIMATIONS ── */
.reveal {
  opacity:0; transform:translateY(36px);
  transition:opacity .85s cubic-bezier(.22,1,.36,1),
              transform .85s cubic-bezier(.22,1,.36,1);
}
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-delay-1 { transition-delay:.1s; }
.reveal-delay-2 { transition-delay:.2s; }
.reveal-delay-3 { transition-delay:.3s; }
.reveal-delay-4 { transition-delay:.4s; }
.reveal-delay-5 { transition-delay:.5s; }

/* ── DIVIDER ── */
.divider {
  height:1px; background:var(--border-soft); margin:0 70px;
}

/* ── RESPONSIVE ── */
@media (max-width:1100px) {
  nav, nav.scrolled { padding-left:30px; padding-right:30px; }
  section { padding:80px 30px; }
  .page-hero { padding:150px 30px 80px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:40px; }
  footer { padding:60px 30px 30px; }
  .divider { margin:0 30px; }
}
@media (max-width:768px) {
  .nav-links { display:none; }
  .hamburger { display:flex; }
  .form-row { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:500px) {
  .footer-grid { grid-template-columns:1fr; }
}
