:root{
      --bg:#ffffff;
      --section:#f9fafb;
      --primary:#0f766e;
      --text:#111827;
      --muted:#6b7280;
      --shadow1: 10px 10px 24px rgba(15,118,110,.08);
      --shadow2: -10px -10px 24px rgba(255,255,255,.95);
      --inset: inset 6px 6px 12px rgba(15,118,110,.05), inset -6px -6px 12px rgba(255,255,255,.95);
      --radius-xl: 34px;
      --radius-lg: 24px;
      --radius-md: 18px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      background: var(--bg);
      color: var(--text);
      font-family:'Inter',sans-serif;
      overflow-x:hidden;
      position:relative;
    }

    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.08;
      background-image:
        radial-gradient(circle at 20% 20%, rgba(15,118,110,.09) 0.7px, transparent 0.8px),
        radial-gradient(circle at 80% 40%, rgba(17,24,39,.06) 0.7px, transparent 0.8px),
        radial-gradient(circle at 60% 80%, rgba(15,118,110,.08) 0.7px, transparent 0.8px);
      background-size: 18px 18px, 22px 22px, 26px 26px;
      mix-blend-mode:multiply;
    }

    h1,h2,h3,h4{
      font-family:'Cormorant Garamond',serif;
      font-weight:300;
      letter-spacing:.02em;
      color:var(--text);
      margin-top:0;
    }

    p{
      color:var(--muted);
      line-height:1.8;
      font-size:1rem;
    }

    .section-space{
      padding: 5.5rem 0;
    }

    .soft-panel{
      background: var(--section);
      border-radius: var(--radius-xl);
      box-shadow: var(--shadow1), var(--shadow2);
    }

    .soft-inset{
      background: var(--section);
      border-radius: var(--radius-lg);
      box-shadow: var(--inset);
    }

    nav{
      background: rgba(255,255,255,.78);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      box-shadow:none;
      border-bottom: 1px solid rgba(15,118,110,.08);
    }

    nav .nav-wrapper{
      padding: 0 2rem;
    }

    nav .brand-logo{
      position:relative;
      transform:none;
      left:auto;
      font-family:'Cormorant Garamond',serif;
      font-size:2rem;
      font-weight:400;
      color:var(--primary);
      display:flex;
      align-items:center;
      gap:.6rem;
    }

    nav ul a, .sidenav li>a{
      color:var(--text);
      font-weight:500;
      letter-spacing:.02em;
    }

    nav ul a:hover{
      background:transparent;
      color:var(--primary);
    }

    .menu-chip{
      padding:.35rem .9rem;
      border-radius:999px;
      background:var(--section);
      box-shadow: 6px 6px 14px rgba(15,118,110,.07), -6px -6px 14px rgba(255,255,255,.92);
      transition:transform .35s ease, color .35s ease;
    }

    .menu-chip:hover{
      transform:scale(1.06);
    }

    .hero-wrap{
      padding-top:2rem;
      padding-bottom:2rem;
    }

    .hero-grid{
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap:2rem;
      align-items:stretch;
    }

    .hero-main{
      padding:4.5rem;
      min-height: 560px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      position:relative;
      overflow:hidden;
    }

    .hero-main::after{
      content:"";
      position:absolute;
      width:220px;
      height:220px;
      border-radius:50%;
      right:-60px;
      top:-60px;
      background: radial-gradient(circle, rgba(15,118,110,.10), rgba(15,118,110,0));
      filter: blur(2px);
    }

    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:.5rem;
      color:var(--primary);
      font-size:.92rem;
      letter-spacing:.08em;
      text-transform:uppercase;
      margin-bottom:1rem;
    }

    .hero-title{
      font-size: clamp(3rem, 6vw, 5.4rem);
      line-height:.95;
      margin-bottom:1.4rem;
      max-width: 10ch;
    }

    .hero-sub{
      max-width: 58ch;
      font-size:1.08rem;
      margin-bottom:2rem;
    }

    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:1rem;
      align-items:center;
    }

    .btn-grad{
      background: linear-gradient(135deg, #0f766e 0%, #38b2ac 100%);
      border:none;
      color:#fff;
      border-radius:999px;
      padding:0 2rem;
      height:52px;
      line-height:52px;
      box-shadow: 0 12px 24px rgba(15,118,110,.18);
      text-transform:none;
      font-weight:600;
      letter-spacing:.02em;
      transition: transform .35s ease, box-shadow .35s ease;
    }

    .btn-grad:hover, .btn-grad:focus{
      background: linear-gradient(135deg, #0f766e 0%, #38b2ac 100%);
      transform:scale(1.05);
      box-shadow: 0 16px 28px rgba(15,118,110,.22);
    }

    .ghost-link{
      display:inline-flex;
      align-items:center;
      gap:.5rem;
      color:var(--text);
      font-weight:500;
      padding:.9rem 1.2rem;
      border-radius:999px;
      background:var(--section);
      box-shadow: var(--shadow1), var(--shadow2);
      transition: transform .35s ease, color .35s ease;
    }

    .ghost-link:hover{
      color:var(--primary);
      transform:scale(1.05);
    }

    .hero-side{
      display:grid;
      grid-template-rows: 1fr auto;
      gap:2rem;
    }

    .hero-stat{
      padding:2rem;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      min-height:260px;
    }

    .stat-number{
      font-family:'Cormorant Garamond',serif;
      font-size:4rem;
      color:var(--primary);
      line-height:1;
      font-weight:300;
    }

    .mini-card{
      padding:1.4rem;
      display:grid;
      grid-template-columns:auto 1fr;
      gap:1rem;
      align-items:center;
    }

    .icon-soft{
      width:58px;
      height:58px;
      border-radius:18px;
      display:grid;
      place-items:center;
      background:var(--section);
      box-shadow: var(--shadow1), var(--shadow2);
      color:var(--primary);
    }

    .about-shell{
      display:grid;
      grid-template-columns: .9fr 1.1fr;
      gap:2rem;
      align-items:center;
    }

    .about-visual{
      padding:1.3rem;
      position:relative;
    }

    .about-stack{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:1rem;
    }

    .about-card{
      padding:1.4rem;
      min-height:180px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      transition:transform .45s ease;
    }

    .about-card:hover{
      transform:scale(1.04);
    }

    .about-card h3{
      font-size:1.6rem;
      margin-bottom:.5rem;
    }

    .about-content{
      padding:3rem;
    }

    .section-kicker{
      color:var(--primary);
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:.84rem;
      margin-bottom:.6rem;
      display:block;
    }

    .section-title{
      font-size: clamp(2.2rem, 4vw, 4rem);
      line-height:1;
      margin-bottom:1rem;
    }

    .carousel-shell{
      padding:2.2rem;
      overflow:hidden;
      position:relative;
    }

    .carousel-head{
      display:flex;
      justify-content:space-between;
      align-items:end;
      gap:1.5rem;
      margin-bottom:2rem;
    }

    .carousel.custom-carousel{
      height:auto;
      overflow:visible;
      perspective:none;
    }

    .carousel.custom-carousel .carousel-item{
      width:360px;
      height:auto;
      opacity:1 !important;
      visibility:visible !important;
      transform: translateX(0) translateY(0) scale(1) !important;
      position:relative;
    }

    .post-card{
      padding:1rem;
      border-radius:28px;
      background:var(--section);
      box-shadow: var(--shadow1), var(--shadow2);
      transition: transform .45s ease, box-shadow .45s ease;
    }

    .post-card:hover{
      transform:scale(1.03);
      box-shadow: 0 18px 36px rgba(15,118,110,.12);
    }

    .post-image{
      width:100%;
      height:220px;
      object-fit:cover;
      border-radius:22px;
      display:block;
      margin-bottom:1.2rem;
      box-shadow: inset 0 0 0 1px rgba(15,118,110,.06);
    }

    .post-card h3{
      font-size:2rem;
      line-height:1;
      margin-bottom:.8rem;
    }

    .post-card p{
      min-height:120px;
      margin-bottom:1.4rem;
    }

    .post-link{
      display:inline-flex;
      align-items:center;
      gap:.45rem;
      color:var(--primary);
      font-weight:600;
      transition:transform .35s ease;
    }

    .post-link:hover{
      transform:scale(1.05);
    }

    .content-backdrop{
      position:absolute;
      inset:auto -80px -80px auto;
      width:220px;
      height:220px;
      border-radius:50%;
      background: radial-gradient(circle, rgba(15,118,110,.09), rgba(15,118,110,0));
    }

    footer{
      padding:2.5rem 0 3rem;
    }

    .footer-box{
      padding:2rem 2.2rem;
      display:grid;
      grid-template-columns: 1.2fr .8fr;
      gap:1.5rem;
      align-items:center;
    }

    .footer-links{
      display:flex;
      justify-content:flex-end;
      flex-wrap:wrap;
      gap:.8rem;
    }

    .footer-links a{
      color:var(--text);
      padding:.7rem 1rem;
      border-radius:999px;
      background:var(--section);
      box-shadow: var(--shadow1), var(--shadow2);
      transition: transform .35s ease, color .35s ease;
    }

    .footer-links a:hover{
      color:var(--primary);
      transform:scale(1.06);
    }

    .zoom-in{
      animation: zoomIn .9s ease both;
    }

    .zoom-delay-1{animation-delay:.12s}
    .zoom-delay-2{animation-delay:.24s}
    .zoom-delay-3{animation-delay:.36s}
    .zoom-delay-4{animation-delay:.48s}

    @keyframes zoomIn{
      from{opacity:0; transform:scale(.94)}
      to{opacity:1; transform:scale(1)}
    }

    @media (max-width: 992px){
      .hero-grid,
      .about-shell,
      .footer-box{
        grid-template-columns:1fr;
      }

      .hero-main{
        min-height:auto;
        padding:3rem 2rem;
      }

      .about-content{
        padding:2rem;
      }

      .carousel.custom-carousel .carousel-item{
        width:320px;
      }

      nav .nav-wrapper{
        padding:0 1rem;
      }
    }

    @media (max-width: 600px){
      .section-space{
        padding:4rem 0;
      }

      .hero-title{
        max-width:none;
      }

      .hero-actions{
        flex-direction:column;
        align-items:flex-start;
      }

      .about-stack{
        grid-template-columns:1fr;
      }

      .carousel-head{
        flex-direction:column;
        align-items:flex-start;
      }

      .carousel.custom-carousel .carousel-item{
        width:280px;
      }

      .footer-links{
        justify-content:flex-start;
      }
    }
