   @font-face {
        font-family: "Selecta";
        src: url("https://glenso.eu/wp-content/themes/smotheme/assets/fonts/subset-Selecta-Regular.woff2")
          format("woff2");
        font-weight: normal;
        font-style: normal;
        font-display: swap;
      }
      @font-face {
        font-family: "Selecta";
        src: url("https://glenso.eu/wp-content/themes/smotheme/assets/fonts/subset-Selecta-Bold.woff2")
          format("woff2");
        font-weight: bold;
        font-style: normal;
        font-display: swap;
      }
      @font-face {
        font-family: "Ryhmes Display";
        src: url("https://glenso.eu/wp-content/themes/smotheme/assets/fonts/subset-RyhmesDisplay-Regular.woff2")
          format("woff2");
        font-weight: normal;
        font-style: normal;
        font-display: swap;
      }

      :root {
        --blue: #0240a1;
        --mint: #9fffec;
        --green: #069074;
        --light: #eef3fa;
        --ink: #0a1628;
        --grey: #5b6b82;
        --line: #e8edf2;
      }

      *,
      *:before,
      *:after {
        box-sizing: border-box;
      }
      html {
        margin: 0;
        padding: 0;
        background: var(--blue);
      }
      body {
        margin: 0;
        overflow-x: hidden;
        color: #fff;
        background: var(--blue);
        font-family: "Selecta", sans-serif;
        font-size: 18px;
        line-height: 1.43;
        -webkit-font-smoothing: antialiased;
      }
      a {
        color: inherit;
        text-decoration: none;
      }
      ul {
        list-style: none;
        margin: 0;
        padding: 0;
      }

      h1,
      h2,
      h3,
      h4,
      .h1,
      .h2,
      .h3,
      .h4 {
        font-family: "Ryhmes Display", serif;
        font-weight: normal;
        margin: 0;
      }
      h1,
      .h1 {
        font-size: 100px;
        line-height: 0.99;
        letter-spacing: -0.04em;
        color: var(--mint);
      }
      h2,
      .h2 {
        font-size: 80px;
        line-height: 1;
        letter-spacing: -0.04em;
      }
      h3,
      .h3 {
        font-size: 50px;
        line-height: 1.1;
        letter-spacing: -0.02em;
      }
      h4,
      .h4 {
        font-size: 34px;
        line-height: 1.2;
        letter-spacing: -0.01em;
      }

      .container {
        width: 100%;
        margin: 0 auto;
        padding: 0 30px;
        max-width: 1660px;
      }
      .container-sm {
        width: 100%;
        margin: 0 auto;
        padding: 0 30px;
        max-width: 1210px;
      }

      /* ---------- BUTTONS (theme .btn.btn-outline-white) ---------- */
      .btn {
        cursor: pointer;
        display: inline-block;
        text-align: center;
        padding: 16px 34px;
        font-size: 20px;
        line-height: 29px;
        transition: all 0.5s;
        position: relative;
        overflow: hidden;
      }
      .btn span {
        position: relative;
        z-index: 1;
        transition: all 0.5s;
      }
      .btn-outline-white {
        background: none;
        border-radius: 6px;
        border: 2px solid #fff;
        color: #fff;
        line-height: 25px;
      }
      .btn-outline-white:before {
        content: "";
        position: absolute;
        inset: 0;
        background: #fff;
        transform: scaleX(0);
        transform-origin: left;
        opacity: 0;
        transition:
          transform 0.5s ease,
          opacity 0.3s ease;
        z-index: 0;
      }
      .btn-outline-white:hover:before {
        transform: scaleX(1.002);
        opacity: 1;
      }
      .btn-outline-white:hover span {
        color: var(--blue);
      }
      .btn-outline-white--green {
        border-color: var(--mint);
        color: var(--mint);
      }
      .btn-outline-white--green:hover span {
        color: var(--green);
      }

      .btn-outline-blue {
        border-color: var(--blue);
        color: var(--blue);
      }
      .btn-outline-blue:before {
        background: var(--blue);
      }
      .btn-outline-blue:hover span {
        color: #fff;
      }

      /* ---------- HEADER ---------- */
      .header {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 10;
        padding: 30px 0;
      }
      .header .header-i {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 40px;
      }
      .header .logo img {
        height: 34px;
        display: block;
      }
      .header nav ul {
        display: flex;
        align-items: center;
        gap: 38px;
      }
      .header nav a {
        font-size: 17px;
        opacity: 0.8;
        transition: opacity 0.3s;
      }
      .header nav a:hover {
        opacity: 1;
      }
      .header nav a.is-active {
        opacity: 1;
        color: var(--mint);
      }
      .header .lang {
        font-size: 15px;
        opacity: 0.65;
      }

      /* ---------- HERO (mirrors .section-service-top) ---------- */
      .section-hero-companies {
        padding: 190px 0 90px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
        position: relative;
        overflow: hidden;
      }
      .section-hero-companies .breadcrumbs {
        font-size: 16px;
        color: rgba(255, 255, 255, 0.7);
        margin-bottom: 40px;
      }
      .section-hero-companies .breadcrumbs span {
        margin: 0 8px;
      }
      .section-hero-companies h1 {
        max-width: 80%;
        margin-bottom: 34px;
      }
      .section-hero-companies .hero-desc {
        max-width: 720px;
        font-size: 24px;
        line-height: 1.5;
        color: rgba(255, 255, 255, 0.85);
        margin-bottom: 44px;
      }
      .section-hero-companies .mark {
        position: absolute;
        right: 5%;
        top: 50%;
        transform: translateY(-40%);
        width: 230px;
        opacity: 0.28;
        pointer-events: none;
      }

      /* ---------- SERVICES (mirrors .section-services accordion rows) ---------- */
      .section-services-b {
        padding: 110px 0 40px;
      }
      .section-h {
        margin-bottom: 80px;
        max-width: 900px;
      }
      .section-h .label {
        display: block;
        font-size: 16px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--mint);
        margin-bottom: 26px;
      }
      .section-h h2 {
        margin-bottom: 26px;
      }
      .section-h p {
        font-size: 22px;
        line-height: 1.5;
        color: rgba(255, 255, 255, 0.8);
        max-width: 760px;
        margin: 0;
      }

      .service-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 80px;
        align-items: start;
        padding: 64px 0;
        border-top: 1px solid rgba(255, 255, 255, 0.3);
      }
      .service-row:last-of-type {
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
      }
      .service-row .num {
        display: block;
        font-size: 16px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--mint);
        margin-bottom: 24px;
      }
      .service-row h3 {
        margin-bottom: 26px;
      }
      .service-row p {
        font-size: 19px;
        line-height: 1.6;
        color: rgba(255, 255, 255, 0.82);
        margin: 0 0 34px;
      }

      .role-block .role-label {
        font-size: 16px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.6);
        margin-bottom: 28px;
      }
      .role-list li {
        position: relative;
        padding-left: 26px;
        font-size: 20px;
        padding-bottom: 16px;
        margin-bottom: 16px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.18);
      }
      .role-list li:last-child {
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0;
      }
      .role-list li:before {
        content: "";
        position: absolute;
        left: 0;
        top: 12px;
        width: 7px;
        height: 7px;
        background: var(--mint);
        border-radius: 50%;
      }

      /* ---------- SECTORS (light vlak, zoals .single-content-sec #EEF3FA) ---------- */
      .section-sectors {
        background: var(--light);
        color: var(--ink);
        padding: 110px 0;
        margin-top: 90px;
      }
      .section-sectors .section-h .label {
        color: var(--blue);
      }
      .section-sectors .section-h p {
        color: var(--grey);
      }
      .sector-list {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        border-top: 1px solid #d5e0ee;
      }
      .sector-list .sector {
        padding: 38px 26px 42px;
        border-bottom: 1px solid #d5e0ee;
        border-right: 1px solid #d5e0ee;
        transition: background 0.3s ease;
      }
      .sector-list .sector:first-child {
        border-left: 1px solid #d5e0ee;
      }
      .sector-list .sector:hover {
        background: #fff;
      }
      .sector-list .sector .idx {
        display: block;
        font-size: 14px;
        letter-spacing: 0.16em;
        color: var(--blue);
        margin-bottom: 22px;
      }
      .sector-list .sector .name {
        font-family: "Ryhmes Display", serif;
        font-size: 30px;
        line-height: 1.15;
        letter-spacing: -0.02em;
        color: var(--ink);
      }

      /* ---------- WHY (mirrors About Us two-column body copy) ---------- */
      .section-why {
        padding: 110px 0 40px;
      }
      .why-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 90px;
      }
      .why-col h4 {
        margin-bottom: 28px;
        color: var(--mint);
      }
      .why-col p {
        font-size: 19px;
        line-height: 1.65;
        color: rgba(255, 255, 255, 0.82);
        margin: 0 0 20px;
      }
      .why-col p:last-child {
        margin-bottom: 0;
      }

      /* ---------- CLOSING CTA (mirrors About Us closing band) ---------- */
      .section-cta {
        padding: 120px 0 130px;
        text-align: center;
      }
      .section-cta h2 {
        max-width: 1000px;
        margin: 0 auto 30px;
      }
      .section-cta p {
        font-size: 22px;
        line-height: 1.5;
        color: rgba(255, 255, 255, 0.8);
        max-width: 660px;
        margin: 0 auto 48px;
      }

      /* ---------- FOOTER ---------- */
      .footer {
        padding: 54px 0 48px;
        border-top: 1px solid rgba(255, 255, 255, 0.3);
      }
      .footer .footer-t {
        display: flex;
        flex-wrap: wrap;
        gap: 60px;
        justify-content: space-between;
        margin-bottom: 70px;
      }
      .footer .logo img {
        height: 30px;
        margin-bottom: 22px;
      }
      .footer .f-col h5 {
        font-family: "Selecta", sans-serif;
        font-size: 15px;
        font-weight: bold;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.6);
        margin: 0 0 20px;
      }
      .footer .f-col a,
      .footer .f-col p {
        display: block;
        font-size: 17px;
        line-height: 2;
        color: rgba(255, 255, 255, 0.85);
        margin: 0;
      }
      .footer .footer-b {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 14px;
        padding-top: 26px;
        border-top: 1px solid rgba(255, 255, 255, 0.3);
        font-size: 15px;
        color: rgba(255, 255, 255, 0.6);
      }

      /* ---------- RESPONSIVE (theme breakpoints) ---------- */
      @media screen and (max-width: 1279px) {
        h1,
        .h1 {
          font-size: 64px;
        }
        h2,
        .h2 {
          font-size: 56px;
        }
        h3,
        .h3 {
          font-size: 36px;
        }
        h4,
        .h4 {
          font-size: 27px;
        }
        .sector-list {
          grid-template-columns: repeat(3, 1fr);
        }
        .sector-list .sector:first-child {
          border-left: none;
        }
      }
      @media screen and (max-width: 1024px) {
        body {
          font-size: 15px;
        }
        .container,
        .container-sm {
          padding: 0 20px;
        }
        .btn {
          font-size: 17px;
          line-height: 24px;
          padding: 12px 24px;
        }
        .section-hero-companies {
          padding: 130px 0 60px;
        }
        .section-hero-companies h1 {
          max-width: 100%;
        }
        .section-hero-companies .hero-desc {
          font-size: 19px;
        }
        .section-hero-companies .mark {
          display: none;
        }
        .section-services-b,
        .section-why {
          padding: 60px 0 20px;
        }
        .section-h {
          margin-bottom: 48px;
        }
        .section-h p {
          font-size: 18px;
        }
        .service-row {
          grid-template-columns: 1fr;
          gap: 36px;
          padding: 44px 0;
        }
        .service-row p,
        .why-col p,
        .role-list li {
          font-size: 17px;
        }
        .section-sectors {
          padding: 64px 0;
          margin-top: 56px;
        }
        .sector-list {
          grid-template-columns: repeat(2, 1fr);
        }
        .sector-list .sector .name {
          font-size: 24px;
        }
        .why-grid {
          grid-template-columns: 1fr;
          gap: 44px;
        }
        .section-cta {
          padding: 70px 0 80px;
        }
        .section-cta p {
          font-size: 18px;
        }
        .header nav ul {
          gap: 20px;
        }
        .header nav a {
          font-size: 15px;
        }
      }
      @media screen and (max-width: 767px) {
        .sector-list {
          grid-template-columns: 1fr;
        }
        .sector-list .sector {
          border-right: none;
        }
        .header nav {
          display: none;
        }
      }
      @media screen and (max-width: 575px) {
        h1,
        .h1 {
          font-size: 56px;
        }
        h2,
        .h2 {
          font-size: 48px;
        }
        h3,
        .h3 {
          font-size: 28px;
        }
        h4,
        .h4 {
          font-size: 22px;
        }
      }