
    :root {
      --turquoise: #17bfc4;
      --turquoise-dark: #08969b;
      --turquoise-soft: #ecfbfb;
      --ink: #211f24;
      --text: #56545a;
      --muted: #76747a;
      --line: #e9e9ec;
      --surface: #ffffff;
      --soft: #f7f8f9;
      --radius: 20px;
      --shadow: 0 18px 50px rgba(27, 31, 35, .08);
      --max: 1180px;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--surface);
      font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
    }

    a { color: inherit; text-decoration: none; }
    button, a { -webkit-tap-highlight-color: transparent; }
    img { max-width: 100%; display: block; }

    .container {
      width: min(var(--max), calc(100% - 40px));
      margin-inline: auto;
    }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 14px;
      color: var(--turquoise-dark);
      font-size: .78rem;
      font-weight: 800;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .eyebrow::before {
      content: "";
      width: 26px;
      height: 2px;
      background: var(--turquoise);
      border-radius: 10px;
    }

    h1, h2, h3 { margin: 0; line-height: 1.08; letter-spacing: -.035em; }
    h1 { font-size: clamp(2.7rem, 6vw, 5.45rem); max-width: 880px; }
    h2 { font-size: clamp(2rem, 4vw, 3.45rem); }
    h3 { font-size: 1.28rem; }
    p { margin: 0; color: var(--text); }
    .lead { font-size: clamp(1.05rem, 1.7vw, 1.24rem); max-width: 720px; }

    .topbar {
      background: var(--ink);
      color: rgba(255,255,255,.86);
      font-size: .86rem;
    }
    .topbar .container {
      min-height: 38px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 18px;
    }
    .topbar strong { color: #fff; font-weight: 650; }

    header {
      position: sticky;
      top: 0;
      z-index: 20;
      background: rgba(255,255,255,.92);
      backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(233,233,236,.8);
    }
    nav {
      min-height: 108px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 30px;
      padding-top: 18px;
      padding-bottom: 18px;
    }
    .brand { width: 178px; flex: 0 0 auto; }
    .navlinks {
      display: flex;
      align-items: center;
      gap: 27px;
      font-size: .94rem;
      font-weight: 650;
    }
    .navlinks a { transition: color .2s ease; }
    .navlinks a:hover { color: var(--turquoise-dark); }
    .nav-cta {
      padding: 12px 18px;
      border-radius: 12px;
      color: #fff !important;
      background: var(--ink);
    }
    .nav-cta:hover { background: var(--turquoise-dark); }

    .hero {
      position: relative;
      overflow: hidden;
      padding: 100px 0 74px;
      background:
        radial-gradient(circle at 80% 10%, rgba(23,191,196,.13), transparent 29%),
        linear-gradient(180deg, #fff 0%, #fbfcfc 100%);
    }
    .hero::after {
      content: "";
      position: absolute;
      width: 420px;
      height: 420px;
      right: -210px;
      bottom: -260px;
      border: 70px solid rgba(23,191,196,.07);
      border-radius: 50%;
    }
    .hero-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.4fr) minmax(310px, .6fr);
      align-items: center;
      gap: 70px;
    }
    .hero h1 span { color: var(--turquoise-dark); }
    .hero .lead { margin-top: 25px; }
    .actions {
      margin-top: 34px;
      display: flex;
      flex-wrap: wrap;
      gap: 13px;
    }
    .btn {
      min-height: 52px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 0 22px;
      border: 1px solid transparent;
      border-radius: 13px;
      font-weight: 750;
      transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .btn:hover { transform: translateY(-2px); }
    .btn-primary {
      color: #fff;
      background: var(--turquoise-dark);
      box-shadow: 0 12px 28px rgba(8,150,155,.22);
    }
    .btn-secondary {
      color: var(--ink);
      background: #fff;
      border-color: var(--line);
    }

    .trust-row {
      margin-top: 38px;
      display: flex;
      flex-wrap: wrap;
      gap: 18px 27px;
      color: var(--muted);
      font-size: .91rem;
      font-weight: 600;
    }
    .trust-row span {
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }
    .check {
      width: 19px;
      height: 19px;
      display: inline-grid;
      place-items: center;
      border-radius: 50%;
      color: var(--turquoise-dark);
      background: var(--turquoise-soft);
      font-size: .72rem;
    }

    .hero-card {
      position: relative;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 26px;
      padding: 29px;
      box-shadow: var(--shadow);
    }
    .hero-card::before {
      content: "";
      position: absolute;
      width: 90px;
      height: 5px;
      left: 29px;
      top: 0;
      background: var(--turquoise);
      border-radius: 0 0 8px 8px;
    }
    .hero-card h3 { font-size: 1.55rem; }
    .service-mini {
      display: grid;
      gap: 0;
      margin-top: 20px;
    }
    .service-mini div {
      display: grid;
      grid-template-columns: 38px 1fr;
      gap: 13px;
      align-items: start;
      padding: 16px 0;
      border-top: 1px solid var(--line);
    }
    .service-mini div:first-child { border-top: 0; }
    .icon {
      width: 38px;
      height: 38px;
      display: grid;
      place-items: center;
      border-radius: 11px;
      color: var(--turquoise-dark);
      background: var(--turquoise-soft);
      font-weight: 900;
    }
    .service-mini b { display:block; font-size:.95rem; margin-bottom:2px; }
    .service-mini small { color: var(--muted); line-height: 1.35; display:block; }

    section { padding: 94px 0; }
    .section-head {
      max-width: 760px;
      margin-bottom: 45px;
    }
    .section-head p { margin-top: 17px; font-size: 1.05rem; }

    .services-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px;
    }
    .service-card {
      min-height: 285px;
      display: flex;
      flex-direction: column;
      padding: 29px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: #fff;
      transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    }
    .service-card:hover {
      transform: translateY(-5px);
      box-shadow: var(--shadow);
      border-color: rgba(23,191,196,.32);
    }
    .service-card .icon { width: 48px; height: 48px; font-size: 1.05rem; }
    .service-card h3 { margin-top: 25px; }
    .service-card p { margin-top: 12px; font-size: .95rem; }
    .more {
      margin-top: auto;
      padding-top: 22px;
      color: var(--turquoise-dark);
      font-size: .91rem;
      font-weight: 800;
    }

    .audience {
      background: var(--soft);
    }
    .audience-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 22px;
    }
    .audience-card {
      position: relative;
      overflow: hidden;
      padding: 42px;
      border-radius: 24px;
      background: #fff;
      border: 1px solid var(--line);
    }
    .audience-card.dark {
      color: #fff;
      background: var(--ink);
      border-color: var(--ink);
    }
    .audience-card.dark p { color: rgba(255,255,255,.7); }
    .audience-card p { margin: 16px 0 26px; max-width: 500px; }
    .pill-list {
      display: flex;
      flex-wrap: wrap;
      gap: 9px;
      margin-top: 23px;
    }
    .pill {
      padding: 8px 11px;
      border: 1px solid var(--line);
      border-radius: 999px;
      font-size: .82rem;
      font-weight: 650;
      color: var(--text);
      background: #fff;
    }
    .dark .pill {
      color: rgba(255,255,255,.82);
      border-color: rgba(255,255,255,.12);
      background: rgba(255,255,255,.06);
    }

    .management {
      display: grid;
      grid-template-columns: .85fr 1.15fr;
      gap: 70px;
      align-items: center;
    }
    .management-copy p { margin-top: 19px; }
    .management-copy .btn { margin-top: 27px; }
    .sector-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 10px;
    }
    .sector {
      padding: 18px 15px;
      text-align: center;
      border: 1px solid var(--line);
      border-radius: 14px;
      color: var(--text);
      background: #fff;
      font-size: .9rem;
      font-weight: 700;
    }
    .sector.accent {
      color: var(--turquoise-dark);
      background: var(--turquoise-soft);
      border-color: rgba(23,191,196,.24);
    }

    .why {
      background: var(--ink);
      color: #fff;
    }
    .why .section-head p { color: rgba(255,255,255,.65); }
    .why-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 28px;
    }
    .why-item {
      padding-top: 22px;
      border-top: 1px solid rgba(255,255,255,.13);
    }
    .why-number {
      color: var(--turquoise);
      font-size: .85rem;
      font-weight: 900;
      letter-spacing: .08em;
    }
    .why-item h3 { margin-top: 13px; color:#fff; }
    .why-item p { margin-top: 10px; color: rgba(255,255,255,.62); font-size: .91rem; }

    .area-grid {
      display: grid;
      grid-template-columns: 1.2fr .8fr;
      align-items: center;
      gap: 65px;
    }
    .area-box {
      padding: 34px;
      border-radius: 24px;
      border: 1px solid rgba(23,191,196,.22);
      background: var(--turquoise-soft);
    }
    .area-box strong { color: var(--turquoise-dark); }
    .area-box p + p { margin-top: 13px; }

    .cta-section { padding-top: 20px; }
    .cta-box {
      padding: 58px;
      border-radius: 28px;
      background:
        radial-gradient(circle at 100% 0%, rgba(23,191,196,.2), transparent 34%),
        var(--ink);
      color: #fff;
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 45px;
    }
    .cta-box p {
      margin-top: 13px;
      color: rgba(255,255,255,.7);
      max-width: 650px;
    }

    footer {
      margin-top: 92px;
      padding: 55px 0 25px;
      background: #f7f7f8;
      border-top: 1px solid var(--line);
    }
    .footer-grid {
      display: grid;
      grid-template-columns: 1.4fr repeat(3, 1fr);
      gap: 45px;
    }
    .footer-brand { width: 190px; }
    footer h4 { margin: 0 0 14px; font-size: .9rem; }
    footer a, footer p { color: var(--muted); font-size: .88rem; }
    footer a { display: block; margin-top: 8px; }
    .footer-bottom {
      margin-top: 40px;
      padding-top: 22px;
      border-top: 1px solid var(--line);
      display: flex;
      justify-content: space-between;
      gap: 20px;
      font-size: .8rem;
      color: var(--muted);
    }

    .menu-toggle { display: none; }

    @media (max-width: 980px) {
      .navlinks { display: none; }
      .menu-toggle {
        display: inline-flex;
        border: 1px solid var(--line);
        background: #fff;
        border-radius: 10px;
        padding: 10px 12px;
        font-weight: 750;
      }
      .hero-grid, .management, .area-grid {
        grid-template-columns: 1fr;
        gap: 42px;
      }
      .services-grid { grid-template-columns: repeat(2, 1fr); }
      .why-grid { grid-template-columns: repeat(2, 1fr); }
      .footer-grid { grid-template-columns: 1fr 1fr; }
      .cta-box { grid-template-columns: 1fr; }
    }

    @media (max-width: 640px) {
      .container { width: min(100% - 28px, var(--max)); }
      .topbar .container { justify-content: center; }
      .topbar span:last-child { display:none; }
      nav {
        min-height: 92px;
        padding-top: 14px;
        padding-bottom: 14px;
      }
      .brand { width: 150px; }
      .hero { padding: 72px 0 54px; }
      section { padding: 70px 0; }
      .services-grid, .audience-grid, .why-grid, .sector-grid, .footer-grid { grid-template-columns: 1fr; }
      .service-card { min-height: 250px; }
      .audience-card, .cta-box { padding: 30px; }
      .footer-bottom { flex-direction: column; }
    }
  