:root{
  --ink:#1f2a2f;
  --muted:#6e7a85;
  --teal:#79d3d6;
  --deep:#0e2742;
  --card:#ffffff;
  --blush:#f1d8e0;
  --shadow:0 14px 40px rgba(11,31,53,.08);
  --radius:22px;
}

:root {
  --bs-font-sans-serif: 'Cormorant Garamond', serif;
  --bs-body-font-family: 'Cormorant Garamond', serif;
}

html, body, * {
  font-family: 'Cormorant Garamond', serif !important;
}


*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; color:var(--ink); background:#fff; line-height:1.65;
 html, body {
  font-family: 'Cormorant Garamond', serif;
}

}
h1, h2, h3, h4 {
  font-family: 'Cormorant Garamond', serif;
  color: #0d2740;
  margin: 0 0 .6rem;
}


.brand {
  font-family: 'Cormorant Garamond', serif !important;
}


nav.site-nav a:not(.active) {
  font-weight: normal;
}

img{max-width:100%; height:auto; display:block}

/* Top bar */
.site-top{
  position:sticky; top:0; z-index:50; background:#fff; border-bottom:1px solid rgba(0,0,0,.06);
}
.site-top.dark{background:#051b34; border-color:rgba(255,255,255,.06)}
.site-top .brand{font-weight:700; padding:.85rem 0; color:#0d2740; text-decoration:none}
.site-top.dark .brand{color:#cde7f5}
.site-top .brand span{color:var(--teal)}
.site-top .nav a{
  padding:1rem .6rem; color:#43525b; text-decoration:none; font-weight:500;
}
.site-top.dark .nav a{color:#b9c7d6}
.site-top .nav a.active{color:var(--teal)}

/* Sections */
.section{padding:72px 0}
.container.narrow{max-width:1060px}

/* Buttons */
.btn{display:inline-block; border-radius:999px; padding:.9rem 1.25rem; font-weight:600; transition:.25s transform,.25s box-shadow,.25s background}
.btn-teal{background:var(--teal); color:#05343a; box-shadow:0 12px 30px rgba(121,211,214,.35)}
.btn-teal:hover{transform:translateY(-2px); box-shadow:0 16px 40px rgba(121,211,214,.5)}
.btn-outline{border:1.5px solid rgba(121,211,214,.7); color:#083246; background:transparent}
.btn-outline:hover{background:rgba(121,211,214,.12)}

/* Cards */
.card-soft{border:0; border-radius:var(--radius); background:var(--card); box-shadow:var(--shadow)}
.shadow-soft{box-shadow:var(--shadow)}

/* Typographic helpers */
.lead{font-size:1.15rem; color:#44515c}
.muted{color:var(--muted)}
.eyebrow{letter-spacing:.12em; text-transform:uppercase; color:#8293a0; font-size:.85rem}
.section-title{position:relative; padding-top:18px}
.section-title::before{
  content:""; width:44px; height:3px; background:var(--teal); position:absolute; top:0; left:50%; transform:translateX(-50%); border-radius:3px;
}
.soft-link{color:#74cfd2; text-decoration:none}
.soft-link:hover{text-decoration:underline}
.learn{color:#0e2742; text-decoration:none; font-weight:600}
.learn:hover{color:#0a1c2e}

/* Hero */
.hero{padding:110px 0 86px}
.hero-soft{
  background: radial-gradient(900px 360px at 50% -8%, var(--blush) 0%, rgba(253,235,241,0) 65%);
}
.accent{color:var(--teal)}

/* Newsletter gradient block */
.gradient-footer{
  background:linear-gradient(180deg, rgba(253,235,241,.7), rgba(255,255,255,1) 80%);
  border-top:1px solid rgba(0,0,0,.04);
}
.bulb{font-size:32px; margin-bottom:8px}
.subscribe{
  display:flex; gap:12px; justify-content:center; align-items:center; flex-wrap:wrap;
}
.subscribe input{
  width:min(520px, 86vw); border:1px solid #d8e3ea; border-radius:999px; padding:.9rem 1.2rem; outline:none;
}
.subscribe input:focus{border-color:#a5dfe1; box-shadow:0 0 0 4px rgba(121,211,214,.18)}

/* Footer */
.site-footer{padding:28px 0; text-align:center}
.site-footer .made{color:#5e6a73; margin-bottom:10px}
.site-footer .social a{
  display:inline-flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:50%; border:1px solid rgba(0,0,0,.08); margin:0 6px; color:#6b7a86; text-decoration:none;
  transition:.25s transform,.25s background;
}
.site-footer .social a:hover{transform:translateY(-2px); background:#f3f7f9}
.say{margin-top:6px}

/* Reveal on scroll */
.reveal{opacity:0; transform:translateY(16px); transition:opacity .7s ease, transform .7s ease}
.reveal.in-view{opacity:1; transform:none}

/* Responsive */
@media (max-width:991px){
  .hero{padding:84px 0 70px}
  .site-top .nav{display:none}
}



.hero h1{
  font-weight: 700; /* or 800 if your font supports it */
}


/* FOOTER */
/* **************************************/
.site-footer .social a{
  transition: transform .2s ease, background .2s ease, border-color .2s ease
}
.site-footer .social a:hover{ transform: translateY(-2px) }

.footer-text-row {
  position: relative;
  text-align: center;
  padding: 0.5rem 1rem;
}
.center-text { display: inline-block; }
.corner-text {
  position: absolute;
  text-align: center;
  margin-bottom: 8px;
  right: 3rem;
  bottom: 0;
}
@media (max-width: 1189px) {
  .corner-text {
    position: static; /* or relative, depending on layout needs */
    right: auto;
    bottom: auto;
    margin: 0; /* reset margin if needed */
  }
}
