:root{
      --bg:#ffffff;
      --section:#f9fafb;
      --primary:#22c55e;
      --text:#111827;
      --muted:#6b7280;
      --line:#d1d5db;
    }
    html{
      scroll-behavior:smooth;
    }
    body{
      background:var(--bg);
      color:var(--text);
      font-family:'Source Serif 4', serif;
      margin:0;
    }
    h1,h2,h3,h4,h5{
      font-family:'Cormorant Garamond', serif;
      color:transparent;
      -webkit-text-stroke:1px var(--text);
      letter-spacing:.03em;
      margin-top:0;
    }
    p,a,span,li{
      color:var(--text);
    }
    .top-bar{
      background:var(--bg);
      border-bottom:1px solid rgba(17,24,39,.08);
      position:sticky;
      top:0;
      z-index:999;
    }
    nav{
      background:transparent;
      box-shadow:none;
      height:auto;
      line-height:normal;
    }
    nav .nav-wrapper{
      padding:0 1rem;
      display:grid;
      grid-template-columns:220px 1fr auto;
      align-items:center;
      min-height:74px;
      gap:1rem;
    }
    .brand-logo{
      position:static !important;
      transform:none !important;
      font-family:'Cormorant Garamond', serif;
      font-size:2rem;
      font-weight:700;
      color:var(--text) !important;
      display:flex;
      align-items:center;
      gap:.6rem;
      white-space:nowrap;
    }
    .brand-mark{
      width:20px;
      height:20px;
      border:2px solid var(--primary);
      background:linear-gradient(180deg,var(--primary) 0 25%, transparent 25% 50%, var(--primary) 50% 75%, transparent 75% 100%);
    }
    nav ul a{
      color:var(--text);
      font-size:1rem;
      font-weight:600;
      letter-spacing:.03em;
      padding:0 14px;
      transition:.25s ease;
    }
    nav ul a:hover{
      color:var(--primary);
      background:transparent;
    }
    .cta-top{
      border:2px solid var(--primary);
      color:var(--text);
      background:transparent;
      padding:.75rem 1rem;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      font-weight:700;
      transition:.25s ease;
    }
    .cta-top:hover{
      background:var(--primary);
      color:#fff;
    }
    .main-wrap{
      display:grid;
      grid-template-columns:minmax(0, 1.6fr) 320px;
      gap:1rem;
      max-width:1400px;
      margin:0 auto;
      padding:1rem;
    }
    .content-col{
      display:grid;
      gap:1rem;
    }
    .hero-shell{
      background:var(--section);
      border:1px solid rgba(17,24,39,.06);
      padding:.8rem;
      animation:fadeIn .8s ease;
    }
    .slider{
      height:540px !important;
    }
    .slider .slides{
      background:var(--section);
      height:540px !important;
    }
    .slider .slides li .caption{
      top:12%;
      left:8%;
      width:84%;
      color:var(--text);
    }
    .slider .indicators .indicator-item{
      background:rgba(17,24,39,.2);
    }
    .slider .indicators .indicator-item.active{
      background:var(--primary);
    }
    .slide-panel{
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:1rem;
      align-items:center;
      min-height:540px;
      padding:1rem;
    }
    .hero-copy{
      display:grid;
      gap:.9rem;
      align-content:center;
    }
    .eyebrow{
      display:inline-block;
      width:max-content;
      border:1px solid var(--primary);
      padding:.3rem .6rem;
      color:var(--text);
      font-weight:700;
      letter-spacing:.08em;
      text-transform:uppercase;
      font-size:.8rem;
      background:#fff;
    }
    .hero-copy h1{
      font-size:4rem;
      line-height:.92;
      margin-bottom:.3rem;
    }
    .hero-copy p{
      font-size:1.15rem;
      line-height:1.6;
      max-width:640px;
      color:#374151;
      margin:0;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:.7rem;
      margin-top:.3rem;
    }
    .square-btn{
      border:2px solid var(--primary);
      background:#fff;
      color:var(--text);
      padding:.95rem 1.25rem;
      font-weight:700;
      display:inline-flex;
      align-items:center;
      gap:.5rem;
      transition:.25s ease;
    }
    .square-btn:hover{
      background:var(--primary);
      color:#fff;
    }
    .hero-visual{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:.8rem;
      align-items:center;
    }
    .circle-img{
      aspect-ratio:1/1;
      border-radius:50%;
      object-fit:cover;
      width:100%;
      border:6px solid #fff;
      box-shadow:0 10px 24px rgba(17,24,39,.08);
      animation:fadeIn 1s ease;
    }
    .hero-stats{
      display:grid;
      gap:.8rem;
    }
    .stat-box{
      background:#fff;
      border-left:4px solid var(--primary);
      padding:1rem;
    }
    .stat-box strong{
      display:block;
      font-size:1.8rem;
      color:var(--text);
    }
    .stat-box span{
      color:var(--muted);
      font-size:.95rem;
    }
    .about-blog{
      background:var(--section);
      border:1px solid rgba(17,24,39,.06);
      padding:1rem;
      animation:fadeIn .9s ease;
    }
    .about-grid{
      display:grid;
      grid-template-columns:.95fr 1.05fr;
      gap:1rem;
      align-items:start;
    }
    .about-card{
      background:#fff;
      padding:1rem;
      border-top:4px solid var(--primary);
      height:100%;
    }
    .about-card p{
      margin:0;
      line-height:1.7;
      color:#374151;
      font-size:1.05rem;
    }
    .about-list{
      display:grid;
      grid-template-columns:repeat(2, minmax(0,1fr));
      gap:.8rem;
    }
    .mini-item{
      background:#fff;
      padding:1rem;
      border:1px solid rgba(17,24,39,.06);
      min-height:120px;
    }
    .mini-item i{
      color:var(--primary);
      font-size:2rem;
      margin-bottom:.3rem;
      display:block;
    }
    .mini-item h5{
      font-size:1.55rem;
      margin-bottom:.3rem;
    }
    .mini-item p{
      color:var(--muted);
      margin:0;
    }
    .section-title-wrap{
      display:grid;
      grid-template-columns:auto 1fr;
      gap:.8rem;
      align-items:end;
      margin-bottom:.8rem;
    }
    .section-kicker{
      color:var(--primary);
      font-size:.85rem;
      text-transform:uppercase;
      letter-spacing:.12em;
      font-weight:700;
      border-bottom:2px solid var(--primary);
      padding-bottom:.2rem;
    }
    .content-zone{
      background:var(--section);
      border:1px solid rgba(17,24,39,.06);
      padding:1rem;
      animation:fadeIn 1s ease;
    }
    .post-grid{
      display:grid;
      grid-template-columns:repeat(12, 1fr);
      gap:1rem;
    }
    .post-card{
      grid-column:span 6;
      background:#fff;
      border:1px solid rgba(17,24,39,.08);
      display:grid;
      grid-template-columns:140px 1fr;
      gap:.9rem;
      padding:.9rem;
      transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
      animation:fadeIn .9s ease;
    }
    .post-card:hover{
      transform:translateY(-4px);
      box-shadow:0 12px 24px rgba(17,24,39,.08);
      border-color:rgba(34,197,94,.45);
    }
    .post-card .img-wrap{
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .post-card img{
      width:120px;
      height:120px;
      border-radius:50%;
      object-fit:cover;
      border:4px solid #f3f4f6;
    }
    .post-card h3{
      font-size:2rem;
      line-height:.95;
      margin-bottom:.45rem;
    }
    .post-card p{
      color:#4b5563;
      line-height:1.55;
      margin:0 0 .8rem;
      font-size:1rem;
    }
    .read-link{
      color:var(--text);
      font-weight:700;
      border:2px solid var(--primary);
      display:inline-block;
      padding:.55rem .9rem;
      transition:.25s ease;
    }
    .read-link:hover{
      background:var(--primary);
      color:#fff;
    }
    aside{
      display:grid;
      gap:1rem;
      align-content:start;
    }
    .side-box{
      background:var(--section);
      border:1px solid rgba(17,24,39,.06);
      padding:1rem;
      animation:fadeIn 1s ease;
    }
    .side-box h4{
      font-size:2rem;
      margin-bottom:.8rem;
    }
    .side-list{
      display:grid;
      gap:.7rem;
      margin:0;
    }
    .side-list a{
      display:grid;
      grid-template-columns:auto 1fr;
      gap:.6rem;
      align-items:start;
      padding:.7rem;
      background:#fff;
      border:1px solid rgba(17,24,39,.06);
      transition:.25s ease;
    }
    .side-list a:hover{
      border-color:rgba(34,197,94,.45);
      transform:translateX(3px);
    }
    .side-list i{
      color:var(--primary);
      font-size:1.1rem;
      margin-top:.15rem;
    }
    .badge-topic{
      display:inline-block;
      background:#fff;
      border:1px solid rgba(34,197,94,.35);
      padding:.5rem .7rem;
      margin:0 .4rem .5rem 0;
      font-weight:600;
    }
    .newsletter-text{
      color:#4b5563;
      line-height:1.65;
      margin-bottom:.8rem;
    }
    .input-field input{
      border-bottom:1px solid var(--line) !important;
      box-shadow:none !important;
      color:var(--text);
    }
    .input-field input:focus{
      border-bottom:1px solid var(--primary) !important;
    }
    .input-field label{
      color:#6b7280 !important;
    }
    .full-btn{
      width:100%;
      border:2px solid var(--primary);
      background:#fff;
      color:var(--text);
      padding:.9rem 1rem;
      font-weight:700;
      transition:.25s ease;
    }
    .full-btn:hover{
      background:var(--primary);
      color:#fff;
    }
    footer{
      margin-top:1rem;
      background:var(--section);
      border-top:1px solid rgba(17,24,39,.06);
      animation:fadeIn 1s ease;
    }
    .footer-inner{
      max-width:1400px;
      margin:0 auto;
      padding:1rem;
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:1rem;
      align-items:center;
    }
    .footer-links{
      display:flex;
      flex-wrap:wrap;
      gap:.7rem;
      justify-content:flex-end;
    }
    .footer-links a{
      border:1px solid rgba(17,24,39,.1);
      background:#fff;
      padding:.55rem .85rem;
      transition:.25s ease;
    }
    .footer-links a:hover{
      border-color:var(--primary);
      color:var(--primary);
    }
    .footer-note{
      color:#4b5563;
      margin:0;
    }
    .sidenav{
      background:#fff;
    }
    .sidenav li>a{
      color:var(--text);
      font-family:'Source Serif 4', serif;
    }
    .menu-mobile{
      color:var(--text);
      display:none;
    }
    @keyframes fadeIn{
      from{opacity:0;transform:translateY(10px);}
      to{opacity:1;transform:translateY(0);}
    }
    @media (max-width: 1200px){
      .main-wrap{
        grid-template-columns:1fr;
      }
      aside{
        grid-template-columns:repeat(3, minmax(0,1fr));
      }
    }
    @media (max-width: 992px){
      nav .nav-wrapper{
        grid-template-columns:1fr auto;
      }
      .nav-center,.cta-right{
        display:none;
      }
      .menu-mobile{
        display:block;
      }
      .slide-panel,
      .about-grid{
        grid-template-columns:1fr;
      }
      .hero-copy h1{
        font-size:3rem;
      }
      .post-card{
        grid-column:span 12;
      }
      aside{
        grid-template-columns:1fr;
      }
      .footer-inner{
        grid-template-columns:1fr;
      }
      .footer-links{
        justify-content:flex-start;
      }
    }
    @media (max-width: 600px){
      .main-wrap{
        padding:.7rem;
      }
      .hero-shell,.about-blog,.content-zone,.side-box{
        padding:.75rem;
      }
      .slider,
      .slider .slides{
        height:640px !important;
      }
      .slide-panel{
        min-height:640px;
        padding:.5rem;
      }
      .hero-visual{
        grid-template-columns:1fr;
      }
      .hero-copy h1{
        font-size:2.35rem;
      }
      .about-list{
        grid-template-columns:1fr;
      }
      .post-card{
        grid-template-columns:1fr;
      }
      .post-card .img-wrap{
        justify-content:flex-start;
      }
    }
