:root {
      --orange:#ff7600;
      --orange-dark:#f15f00;
      --navy:#081d5b;
      --blue:#145bd8;
      --green:#166d05;
      --soft:#edf9ff;
      --line:#d8e8f3;
    }

    * { box-sizing:border-box; }
    body {
      margin:0;
      font-family:Inter, Arial, sans-serif;
      color:var(--navy);
      background:#edf9ff;
      overflow-x:hidden;
    }

    a { text-decoration:none; }
    .ideeksha-page {
      min-height:100vh;
      position:relative;
      background:
        radial-gradient(circle at 0 54%, rgb(255 255 255 / 86%) 0 13%, transparent 28%), radial-gradient(circle at 94% 83%, rgb(215 242 255 / 80%) 0 8%, transparent 23%), linear-gradient(180deg, #fbfeff 0%, #eef9ff 53%, #ffffff 100%);
    }
    
    p, span, div {
        font-family: Inter, Arial, sans-serif;
    }

    .ideeksha-page::before {
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      opacity:.48;
      background-image:radial-gradient(#8cc9f2 1.25px, transparent 1.25px);
      background-size:18px 18px;
      background-position:-4px 160px;
      -webkit-mask-image:linear-gradient(90deg,#000 0 6%, transparent 22% 86%, #000 96%);
      mask-image:linear-gradient(90deg,#000 0 6%, transparent 22% 86%, #000 96%);
    }

    span.leaf {
      position:absolute;
      z-index:2;
      width:82px;
      height:126px;
      border-radius:88% 0 88% 0;
      background:linear-gradient(135deg,#52af16,#dcff8a);
      filter:drop-shadow(0 12px 18px rgba(52,130,0,.12));
    }
    span.leaf.one { left:-30px; top:455px; transform:rotate(43deg); }
    span.leaf.two {  bottom:18px; width:72px; height:112px; transform:rotate(-34deg); }
    span.leaf.three { right:72px; bottom:42px; width:50px; height:82px; transform:rotate(24deg); opacity:.55; }

    /* Header */
    .top-header {
      position:relative;
      z-index:20;
      min-height: 112px;
      /* background:linear-gradient(90deg, #00000000, #ffffffa8); */
      /*backdrop-filter:blur(7px);*/
    }
    .brand-logo {
      max-width:250px;
      width:100%;
      height:auto;
      display:block;
    }
    .platform-title {
      font-family: Montserrat, Inter, sans-serif;
      font-size: 16px;
      line-height: 1.45;
      letter-spacing: -.35px;
      color: #06184b;
      font-weight: 700;
      border-left: 2px solid #aab2c5;
      padding-left: 20px;
      margin-left: -56px;
    }
    .gov-logo {
      object-fit:contain;
      display:block;
    }
    .g20-logo { width:460px; }
    .bee-logo { width:112px; border-radius:50%; }

    /* Navbar */
    .nav-bar-wrap {
      position:relative;
      z-index:30;
      margin-top:-1px;
    }
    .custom-navbar {
      min-height:54px;
      border-radius:16px 0 0 16px;
      background:linear-gradient(180deg,#ff8e00 0%,#ff6100 100%);
      box-shadow:0 14px 30px rgba(233,92,0,.25);
      padding:0 54px 0 48px;
      position:relative;
    }
    .custom-navbar .navbar-nav {
      width:100%;
      justify-content:space-between;
      gap:16px;
    }
    .custom-navbar .nav-link {
      color:#fff !important;
      font-size:16px;
      font-weight:900;
      letter-spacing:-.2px;
      text-transform:uppercase;
      padding:16px 0 !important;
      white-space:nowrap;
    }
    .search-float {
      position:absolute;
      right:-29px;
      top:-8px;
      width:66px;
      height:66px;
      border:0;
      border-radius:50%;
      background:#fff;
      color:#07164d;
      display:grid;
      place-items:center;
      box-shadow:0 12px 32px rgba(16,56,106,.18);
      font-size:24px;
    }

    /* Hero */
    .hero-section {
      position:relative;
      z-index:10;
      min-height:605px;
      max-width:1672px;
      margin:-5px auto 0;
      overflow:visible;
    }
    .hero-bg {
      position:absolute;
      top:10px;
      right:0;
      width:60%;
      height:480px;
      background:
      linear-gradient(90deg, rgb(240 250 255) 0%, rgb(240 250 255 / 91%) 22%, rgb(255 255 255 / 13%) 60%), url(../image/bg-banner.png);
      background-size:cover;
      background-position:center top;
      clip-path:ellipse(83% 78% at 66% 42%);
      border-bottom-left-radius:330px;
      filter:saturate(1.08) contrast(1.02);
    }
    .hero-section::after {
      content:"";
      position:absolute;
      left:-80px;
      right:0;
      bottom:10px;
      height:202px;
      z-index:4;
      pointer-events:none;
      /*background:linear-gradient(8deg, rgba(210,239,255,.95), rgba(245,253,255,.72) 45%, rgba(255,255,255,0) 84%);*/
      border-radius:50% 50% 0 0 / 80% 80% 0 0;
    }
    .hero-rings {
      position:absolute;
      left:530px;
      top:82px;
      z-index:5;
      width:360px;
      height:360px;
      border:2px solid rgba(255,255,255,.88);
      border-radius:50%;
      box-shadow:0 0 0 42px rgb(255 255 255 / 72%), 0 0 0 84px rgb(255 255 255 / 37%);
      opacity:.95;
      pointer-events:none;
    }
    .curve-line {
      position:absolute;
      left:742px;
      top:34px;
      z-index:6;
      width:315px;
      height:250px;
      border-top:2px solid rgba(255,255,255,.75);
      border-left:2px solid rgba(255,255,255,.6);
      border-radius:100% 0 0 0;
      transform:rotate(-8deg);
      pointer-events:none;
    }
    .hero-content {
      position:relative;
      z-index:12;
      max-width:660px;
      padding:38px 0 0 92px;
    }
    
    .node__content .hero-content {
      position:relative;
      z-index:12;
      max-width:auto;
      padding:0;
    }
    
    .green-pill {
      display:inline-flex;
      align-items:center;
      gap:11px;
      height:38px;
      padding:0 18px 0 12px;
      border-radius:30px;
      background:rgba(255,255,255,.78);
      border:1px solid rgba(74,152,50,.28);
      color:#23750e;
      font-weight:800;
      font-size:16px;
      box-shadow:0 2px 10px rgba(25,105,5,.04);
    }
    .green-pill i { color:#61b51f; font-size:24px; }
    .hero-title {
      margin:18px 0 15px;
      font-family:Montserrat, Inter, sans-serif;
      font-size:62px;
      /*line-height:.94;*/
      letter-spacing:-2.6px;
      font-weight:900;
      color:#09205b;
      text-shadow:0 4px 14px rgba(7,27,88,.13);
    }
    .hero-title span { display:block; color:var(--green); }
    .hero-text {
      max-width:560px;
      margin:0 0 22px;
      color:#273c69;
      font-size:17px;
      line-height:1.55;
      font-weight:500;
    }
    .primary-cta {
      min-height:46px;
      border-radius:50px;
      background:linear-gradient(180deg,#ff9700,#ff6400);
      color:#fff;
      display:inline-flex;
      align-items:center;
      gap:22px;
      padding:6px 10px;
      font-weight:700;
      font-size:16px;
      box-shadow:0 12px 18px rgba(247,111,0,.3), inset 0 0 0 1px rgba(255,255,255,.33);
    }
    .primary-cta:hover { color:#fff; transform:translateY(-1px); }
    .outline-cta {
      min-height:46px;
      border-radius:50px;
      background:rgba(255,255,255,.74);
      border:1px solid #d6e3f4;
      color:#0d3fb8;
      display:inline-flex;
      align-items:center;
      gap:14px;
      padding:6px 10px;
      font-weight:700;
      font-size:16px;
      box-shadow:0 5px 16px rgba(3,41,95,.08);
    }
    .play-icon {
      width:40px;
      height:40px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:#f8fbff;
      border:1px solid #dce7f6;
      box-shadow:inset 0 0 0 6px #f0f6ff;
      color:#1c5bd1;
      font-size:15px;
    }

    .mini-features {
      width:750px;
      min-height:64px;
      display:grid;
      grid-template-columns:1fr 1fr 1fr 1.15fr;
      align-items:center;
      padding:0 16px;
      border-radius:24px;
      background:rgba(255,255,255,.66);
      border:1px solid rgba(210,226,238,.86);
      backdrop-filter:blur(8px);
      box-shadow:0 10px 26px rgba(33,65,92,.06);
    }
    .mini-item {
      display:flex;
      align-items:center;
      gap:11px;
      padding-right:13px;
      border-right:1px solid #d8dfea;
      min-width:0;
    }
    .mini-item:last-child { border-right:0; }
    .mini-icon {
      width:32px;
      height:32px;
      display:grid;
      place-items:center;
      flex:0 0 auto;
      font-size:25px;
      color:#147000;
    }
    .mini-item:nth-child(2) .mini-icon { color:#245ec4; }
    .mini-item:nth-child(3) .mini-icon { color:#ff6d00; }
    .mini-item b {
      display:block;
      font-size:13px;
      margin-bottom: 5px;
      line-height:1.12;
      color:#102454;
      font-weight:900;
    }
    .mini-item small {
      display: block;
    font-size: 12px;
    line-height: 1.22;
    color: #2d3b52;
    font-weight: 500;
    }

    .bubble {
      position:absolute;
      z-index:14;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:rgba(255,255,255,.72);
      box-shadow:0 8px 26px rgba(20,85,132,.1);
      backdrop-filter:blur(5px);
    }
    .bubble-co2 {
      left:677px;
      top:117px;
      width:88px;
      height:88px;
      border:16px solid rgba(255,255,255,.82);
    }
    .bubble-co2 span {
      width:58px;
      height:58px;
      border-radius:50%;
      background:#dcf3d6;
      display:grid;
      place-items:center;
      color:#368b25;
      font-weight:900;
      font-size:17px;
      box-shadow:inset 0 0 0 8px rgba(255,255,255,.65);
    }
    .bubble-chart {
      right:80px;
      top:93px;
      width:92px;
      height:92px;
      border:12px solid rgba(255,255,255,.46);
    }
    .bubble-chart span {
      width:62px;
      height:62px;
      border-radius:50%;
      background:linear-gradient(135deg,#275ad9,#0b56c9);
      display:grid;
      place-items:center;
      color:#fff;
      font-size:31px;
    }
    
    .accessibility-btn {
        position: fixed;
        right: 10px;
        top: 80%;
        z-index: 100;
        width: 62px;
        height: 61px;
        border-radius: 50%;
        border: 7px solid #fff;
        background: #ffffff;
        display: grid;
        /* place-items: center; */
        /* box-shadow: 0 10px 24px rgba(15, 58, 110, .25); */
        color: #155da7;
        font-size: 50px;
    }

    /* Sector cards */
    .sector-cards {
      position:absolute;
      z-index:18;
      left:87px;
      right:87px;
      bottom:-30px;
    }
    .sector-card {
      height:200px;
      border-radius:13px;
      background:rgba(255,255,255,.82);
      box-shadow:0 10px 26px rgba(32,76,102,.12);
      border:1px solid rgba(200,221,237,.95);
      position:relative;
      overflow:hidden;
      display:block;
      align-items:center;
      gap:18px;
      padding:20px 17px 17px 18px;
      backdrop-filter:blur(8px);
      transition:.25s ease;
    }
    .sector-card:hover { transform:translateY(-5px); box-shadow:0 14px 34px rgba(32,76,102,.17); }
    .sector-card::before {
      content:"";
      position:absolute;
      right:-34px;
      bottom:-34px;
      width:92px;
      height:92px;
      border-radius:50%;
      background:var(--card-color);
    }
    .sector-card::after {
      content:"";
      position:absolute;
      right:-2px;
      top:0;
      border-style:solid;
      border-width:0 42px 42px 0;
      border-color:transparent var(--card-color) transparent transparent;
    }
    .sector-icon {
      width:68px;
      height:68px;
      border-radius:50%;
      display:grid;
      place-items:center;
      border:2px solid color-mix(in srgb,var(--card-color) 35%,#fff);
      color:var(--card-color);
      background:rgba(255,255,255,.72);
      font-size:31px;
      flex:0 0 auto;
    }
    .sector-card h3 {
      margin:0 0 8px;
      color:var(--card-color);
      font-size:18px;
      font-weight:900;
      white-space:nowrap;
    }
    .sector-card p {
      margin:0 0 14px;
      color:#203047;
      font-size:11px;
      line-height:1.32;
      font-weight:500;
    }
    .sector-card a {
      color:var(--card-color);
      font-size:12px;
      font-weight:900;
    }
    .c-blue { --card-color:#1259db; }
    .c-orange { --card-color:#ff6d00; }
    .c-green { --card-color:#237f16; }
    .c-ai { --card-color:#dc8c37; }
    .c-cement { --card-color:#268c20; }
    .c-red { --card-color:#ff2826; }

    /* Below fold preview */
    .below-preview {
      position:relative;
      z-index:6;
      margin-top:-83px;
      padding:110px 0 60px;
      background:linear-gradient(180deg, rgba(230,246,255,.55), rgba(247,253,255,.95));
    }
    .info-card {
      min-height:170px;
      border:1px solid rgba(209,226,238,.75);
      border-radius:25px;
      background:rgba(255,255,255,.78);
      box-shadow:0 12px 30px rgba(30,71,105,.08);
      padding:28px;
    }
    .info-card h4 { font-weight:900; color:#12286d; }

    @media (max-width:1399px) {
      .hero-content { padding-left:40px; }
      .sector-cards { left:35px; right:35px; }
      .sector-card { gap:12px; padding:17px 14px; }
      .sector-icon { width:58px; height:58px; font-size:26px; }
      .sector-card h3 { font-size:16px; }
      .bubble-co2 { left:50%; }
    }

    @media (max-width:1199px) {
      .platform-title { font-size:18px; padding-left:25px; }
      .custom-navbar { padding-left:24px; padding-right:48px; }
      .custom-navbar .nav-link { font-size:13px; }
      .hero-title { font-size:54px; }
      .mini-features { width:600px; }
      .hero-bg { width:74%; opacity:.92; }
      .sector-card { height:142px; flex-direction:column; align-items:flex-start; gap:8px; }
      .sector-icon { width:48px; height:48px; font-size:22px; }
      .sector-card p { display:none; }
    }

    @media (max-width:991px) {
      .top-header { min-height:auto; padding:18px 0; }
      .brand-logo { max-width:280px; margin:auto; }
      .platform-title {
        border-left:0;
        padding-left:0;
        margin:14px 0 0;
        text-align:center;
        font-size:18px;
      }
      .gov-logo-wrap { justify-content:center !important; margin-top:16px; }
      .g20-logo { width:132px; }
      .bee-logo { width:86px; }

      .nav-bar-wrap { margin-top:0; }
      .custom-navbar {
        border-radius:16px;
        padding:8px 18px;
      }
      .navbar-toggler { border:0; color:#fff; box-shadow:none !important; }
      .navbar-toggler i { font-size:24px; }
      .custom-navbar .navbar-nav { gap:0; padding-top:10px; }
      .custom-navbar .nav-link { padding:10px 0 !important; }
      .search-float { right:14px; top:7px; width:46px; height:46px; font-size:18px; }

      .hero-section { min-height:auto; padding-bottom:0; }
      .hero-bg {
        width:100%;
        height:410px;
        opacity:.32;
        clip-path:none;
        border-radius:0;
      }
      .hero-rings,.curve-line,.bubble-chart,.bubble-co2 { display:none; }
      .hero-content {
        max-width:100%;
        padding:54px 22px 36px;
        text-align:center;
      }
      .hero-title { font-size:48px; letter-spacing:-1.8px; }
      .hero-text { margin-left:auto; margin-right:auto; }
      .hero-actions { justify-content:center; }
      .mini-features {
        width:100%;
        grid-template-columns:repeat(2,1fr);
        gap:0;
        min-height:auto;
        padding:16px;
        margin-top:18px;
      }
      .mini-item { padding:10px; border-right:0; border-bottom:1px solid #d8dfea; }
      .mini-item:nth-child(3), .mini-item:nth-child(4) { border-bottom:0; }

      .sector-cards {
        position:relative;
        left:auto;
        right:auto;
        bottom:auto;
        padding:0 22px 45px;
      }
      .sector-card {
        height:145px;
        flex-direction:row;
        align-items:center;
      }
      .sector-card p { display:block; }
      .below-preview { margin-top:0; padding-top:50px; }
      .accessibility-btn { width:72px; height:72px; font-size:37px; right:18px; border-width:5px; }
    }

    @media (max-width:575px) {
      .top-header { padding:0px 0; }
      .brand-logo { max-width:245px;margin-top: -20px; }
      .platform-title { font-size:15px; line-height:1.42;margin-top: -10px; }
      .g20-logo { width:112px; }
      .bee-logo { width:76px; }
      .sector-card {
            flex: 0 0 calc((100% - 21px) / 1) !important;
        }
      .hero-content { padding:38px 14px 30px; }
      .green-pill { height:auto; min-height:36px; font-size:12px; padding:8px 13px; }
      .hero-title { font-size:36px; line-height:1.02; letter-spacing:-1.2px; }
      .hero-text { font-size:14px; }
      .hero-actions { flex-direction:column; gap:12px !important; }
      .primary-cta,.outline-cta { width:100%; justify-content:center; }
      .mini-features { grid-template-columns:1fr; border-radius:18px; }
      .mini-item { border-bottom:1px solid #d8dfea !important;justify-content: center; }
      .connect-item{
          justify-content: flex-start;
      }
      .mini-item:last-child { border-bottom:0 !important; }
      .sector-cards { padding-left:14px; padding-right:14px; }
      .sector-card { height:auto; min-height:124px; padding:16px; }
      .sector-icon { width:54px; height:54px; font-size:24px; }
      .sector-card h3 { font-size:17px; }
      .sector-card p { font-size:11px; }
    }

    /* ── SECTORS SLIDER ── */
    .sectors-section {
      background: linear-gradient(180deg, #ffffff24, transparent);
      padding: 36px 0;
      margin-bottom: 1%;
    }
    .sectors-section h2 {
      font-family: 'Montserrat', sans-serif;
      font-weight: 800;
      font-size: 1.5rem;
      color: var(--navy);
      margin-bottom: 24px;
    }

    /* Slider Track */
    .slider-wrapper {
      position: relative;
      overflow: hidden;
    }
    .slider-track {
      display: flex;
      gap: 20px;
      transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
    .sector-card {
      flex: 0 0 calc((100% - 80px) / 5);
      background: #fff;
      border-radius: 16px;
      box-shadow: 0 4px 20px rgba(0,0,0,0.07);
      border: 1.5px solid #edf2fb;
      padding: 12px 10px 12px;
      text-align: left;
      transition: transform 0.25s, box-shadow 0.25s, border-color 0.25s;
      cursor: pointer;
      position: relative;
      overflow: hidden;
    }
    .sector-card::after {
      content: '';
      position: absolute;
      bottom: 0; left: 0; right: 0;
      height: 4px;
      border-radius: 0 0 16px 16px;
      margin-top: -35px;
      border-radius: 0 !important;
    }
    .sector-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 12px 40px rgba(0,0,0,0.13);
    }
    .sector-card.c-orange::after { background: var(--orange); }
    .sector-card.c-green::after  { background: var(--green); }
    .sector-card.c-navy::after   { background: var(--navy); }
    .sector-card.c-gold::after   { background: #B8860B; }
    .sector-card.c-red::after    { background: #C62828; }
    .sector-card.c-teal::after   { background: #00796B; }

    .sector-icon-wrap {
      width: 50px; height: 50px;
      border-radius: 12px;
      display: flex; align-items: center; justify-content: center;
      margin-bottom: 10px;
    }
    .sector-icon-wrap i { font-size: 1.4rem; }
    .bg-orange-light { background: #FFF3E0; }
    .bg-green-light  { background: #E8F5E9; }
    .bg-navy-light   { background: #E8EAF6; }
    .bg-gold-light   { background: #FFF8E1; }
    .bg-red-light    { background: #FFEBEE; }
    .bg-teal-light   { background: #E0F2F1; }
    .ic-orange { color: var(--orange); }
    .ic-green  { color: var(--green); }
    .ic-navy   { color: var(--navy); }
    .ic-gold   { color: #B8860B; }
    .ic-red    { color: #C62828; }
    .ic-teal   { color: #00796B; }

    .sector-card h5 {
      font-family: 'Montserrat', sans-serif;
      font-weight: 800;
      font-size: 1rem;
      margin-bottom: 6px;
    }
    .sector-card p {
      font-size: 0.78rem;
      color: var(--text-muted);
      line-height: 1.5;
      margin-bottom: 14px;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis;
      height: 2.34rem;
    }
    .learn-link {
      font-family: 'Montserrat', sans-serif;
      font-weight: 700;
      font-size: 0.75rem;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      text-decoration: none;
      transition: gap 0.2s;
    }
    .learn-link:hover { gap: 10px; }
    .c-orange .learn-link { color: var(--orange); }
    .c-green  .learn-link { color: var(--green); }
    .c-navy   .learn-link { color: var(--navy); }
    .c-gold   .learn-link { color: #B8860B; }
    .c-red    .learn-link { color: #C62828; }
    .c-teal   .learn-link { color: #00796B; }

    /* Slider dots */
    .slider-dots {
      display: flex;
      justify-content: center;
      gap: 8px;
      margin-top: 24px;
    }
    .dot-btn {
      width: 10px; height: 10px;
      border-radius: 50%;
      background: #dde4f0;
      border: none;
      cursor: pointer;
      transition: background 0.3s, width 0.3s;
    }
    .dot-btn.active {
      background: var(--orange);
      width: 28px;
      border-radius: 5px;
    }

    .sector-card.c-navy::before {
      background: var(--navy);
    }

    /* Slider arrows */
    .slider-arrow {
      position: absolute;
      display: none !important;
      top: 50%;
      transform: translateY(-50%);
      z-index: 10;
      width: 40px; height: 40px;
      border-radius: 50%;
      background: #fff;
      border: 2px solid #edf2fb;
      box-shadow: 0 4px 16px rgba(0,0,0,0.1);
      display: flex; align-items: center; justify-content: center;
      cursor: pointer;
      transition: background 0.2s, border-color 0.2s;
      color: var(--navy);
    }
    .slider-arrow:hover { background: var(--orange); color: #fff; border-color: var(--orange); }
    .slider-arrow.prev { left: -20px; }
    .slider-arrow.next { right: -20px; }

    /* ── UPCOMING EVENTS ── */
    .events-strip {
      background: var(--light-bg);
      padding: 36px 0;
      border-top: 1px solid #dde4f0;
    }
    .events-strip h3 {
      font-family: 'Montserrat', sans-serif;
      font-weight: 800;
      font-size: 1.25rem;
      color: var(--navy);
    }
    .view-all {
      font-family: 'Montserrat', sans-serif;
      font-weight: 700;
      font-size: 0.8rem;
      color: var(--orange);
      text-decoration: none;
      display: inline-flex; align-items: center; gap: 6px;
    }
    .event-chip {
      background: #fff;
      border-radius: 10px;
      box-shadow: 0 2px 12px rgba(0,0,0,0.06);
      padding: 14px 18px;
      display: flex;
      align-items: center;
      gap: 14px;
    }
    .event-date-box {
      width: 48px; min-width: 48px;
      text-align: center;
      background: var(--orange);
      color: #fff;
      border-radius: 8px;
      padding: 6px 4px;
    }
    .event-date-box .day { font-weight: 800; font-size: 1.3rem; line-height: 1; }
    .event-date-box .mon { font-size: 0.65rem; font-weight: 600; letter-spacing: 0.5px; }
    .event-title { font-weight: 700; font-size: 0.82rem; color: var(--navy); }
    .event-loc   { font-size: 0.72rem; color: var(--text-muted); }

    .sector-card.c-teal:before {
        background: #bde6e4;
    }

    .sector-card.c-gold:before {
        background: #B8860B;
    }


    /* ══════════════════════════════════
       SECTORAL INFORMATION SECTION
    ═══════════════════════════════════ */
    .sectoral-info-section {
      position:relative;
      z-index:12;
      padding:0px 0 1%;
      /*background:linear-gradient(180deg, #edf9ff 0%, #eef9ff 46%, #f7fdff 100%);*/
      overflow:hidden;
    }
    .sectoral-info-section::before {
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      opacity:.55;
      background-image:radial-gradient(#87c8ef 1.15px, transparent 1.15px);
      background-size:18px 18px;
      background-position:-7px 18px;
      -webkit-mask-image:linear-gradient(90deg,#000 0 6%,transparent 23% 76%,#000 96%);
      mask-image:linear-gradient(90deg,#000 0 6%,transparent 23% 76%,#000 96%);
    }
    .sectoral-info-shell {
      position:relative;
      z-index:2;
    }
    .sectoral-main-panel,
    .sectoral-side-panel {
      background:rgba(255,255,255,.86);
      border:1px solid rgba(198,226,241,.88);
      box-shadow:0 14px 36px rgba(35,92,126,.10);
      backdrop-filter:blur(12px);
    }
    .sectoral-main-panel {
      min-height:618px;
      border-radius:14px;
      padding:36px 28px 24px;
      position:relative;
      overflow:hidden;
    }
    .sectoral-main-panel::after {
      content:"";
      position:absolute;
      right:22px;
      top:18px;
      width:74px;
      height:52px;
      opacity:.45;
      background-image:radial-gradient(#7fc5f1 1.5px, transparent 1.5px);
      background-size:13px 13px;
    }
    .sectoral-top-art img{
      position:absolute;
      right:34px;
      top:38px;
      width:364px;
      height:142px;
      border-radius:28px;
      overflow:hidden;
    }
    .sectoral-top-art::before {
      content:"";
      position:absolute;
      inset:-10px 55% -10px -10px;
      background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.9) 50%,transparent 100%);
    }
    .sectoral-kicker {
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:#4a9e22;
      font-weight:900;
      font-size:13px;
      text-transform:uppercase;
      letter-spacing:.15px;
      margin-bottom:8px;
      position:relative;
      z-index:2;
    }
    .sectoral-kicker i { font-size:18px; }
    .sectoral-heading {
      font-family:Montserrat, Inter, sans-serif;
      font-size:42px;
      line-height:1.05;
      letter-spacing:-1.45px;
      font-weight:700;
      color:#09205b;
      margin:0 0 10px;
      position:relative;
      z-index:2;
    }
    .sectoral-subtext {
      max-width:355px;
      color:#344665;
      font-size:14px;
      line-height:1.45;
      font-weight:600;
      margin:0 0 24px;
      position:relative;
      z-index:2;
    }
    .sectoral-grid {
      position:relative;
      z-index:3;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:14px;
      margin-top:36px;
    }
    .sectoral-card {
      min-height:319px;
      border-radius:13px;
      border:1px solid rgba(205,226,239,.95);
      background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(250,253,255,.72));
      box-shadow:0 8px 22px rgba(32,76,102,.08);
      position:relative;
      overflow:hidden;
      padding:78px 16px 17px 20px;
      transition:.25s ease;
    }
    .sectoral-card:hover {
      transform:translateY(-4px);
      box-shadow:0 14px 32px rgba(32,76,102,.14);
    }
    .sectoral-card.wide-img-left {
      padding-right:158px;
      background:linear-gradient(135deg,#ffffff 0%,#f5fbff 100%);
    }
    .sectoral-card.wide-img-right {
      padding-right:154px;
      background:linear-gradient(135deg,#fbfff5 0%,#fffdf3 100%);
      border-color:#dcefd4;
    }
    .sectoral-card.warm {
      padding-right:148px;
      background:linear-gradient(135deg,#fff7ef 0%,#ffffff 100%);
      border-color:#ffe0c2;
    }
    .sectoral-card.cool {
      padding-right:146px;
      background:linear-gradient(135deg,#ffffff 0%,#f8f4ff 100%);
      border-color:#e4d7ff;
    }
    .sectoral-card-img {
      position:absolute;
      right:0;
      top:0;
      bottom:0;
      width:200px;
      background-size:cover;
      background-position:center;
      border-radius:0 13px 13px 48% / 0 13px 13px 58%;
      overflow:hidden;
    }

    span.sectoral-card-img img {
      height: 330px;
    }
    
    .sectoral-card-img::before {
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(90deg,rgba(255,255,255,.84) 0%,rgba(255,255,255,.28) 36%,rgba(255,255,255,0) 70%);
    }
    .sectoral-icon {
      position:absolute;
      left:20px;
      top:24px;
      width:54px;
      height:54px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:rgba(255,255,255,.78);
      border:2px solid currentColor;
      box-shadow:0 7px 18px rgba(40,82,130,.10), inset 0 0 0 8px rgba(255,255,255,.42);
      font-size:23px;
      z-index:2;
    }
    .sectoral-card h3 {
          position: relative;
    z-index: 2;
    margin: 10px 0 10px;
    color: #0b1e57;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: -.4px;
    }
    .sectoral-card ul {
      position:relative;
      z-index:2;
      list-style:none;
      padding:0;
      margin:0 0 18px;
    }
    .sectoral-card li {
      color:#20304a;
      font-size:14px;
      line-height:1.5;
      font-weight:500;
      margin-bottom:7px;
      display:flex;
      gap:8px;
      align-items:flex-start;
    }
    .sectoral-card li i {
      margin-top:3px;
      font-size:10px;
      color:inherit;
      opacity:.9;
    }
    .sectoral-card p {
      position:relative;
      z-index:2;
      margin:0 0 18px;
      color:#293a56;
      font-size:12px;
      line-height:1.45;
      font-weight:600;
    }
    .sectoral-card p strong { color:#135bdc; }
    .sectoral-explore {
      position:absolute;
      z-index:3;
      left:20px;
      bottom:14px;
      display:inline-flex;
      align-items:center;
      gap:13px;
      color:currentColor;
      font-size:14px;
      font-weight:700;
    }
    .sectoral-blue { color:#1764ff; }
    .sectoral-green { color:#3e9222; }
    .sectoral-orange { color:#ff7620; }
    .sectoral-purple { color:#7957ff; }

    .sectoral-side-panel {
      border-radius:14px;
      padding:18px 16px;
      overflow:hidden;
    }
    .sectoral-side-panel + .sectoral-side-panel { margin-top:10px; }
    .side-panel-head {
      display:flex;
      align-items:center;
      justify-content:space-between;
      margin-bottom:16px;
    }
    .side-title {
      display:flex;
      align-items:center;
      gap:9px;
      margin:0;
      font-size:22px;
      font-weight:700;
      color:#0b1e57;
    }
    .side-title i { color:#1764ff; font-size:18px; }
    .side-link {
      color: #ffffff;
    font-size: 11px;
    background: #0e62df;
    border-radius: 10px;
    padding: 6px 10px;
    font-weight: 700;
    white-space: nowrap;
    }
    .event-list { display:grid; gap:10px; }
    .sectoral-event {
      min-height:73px;
      display:flex;
      align-items:center;
      gap:12px;
      background:#fff;
      border:1px solid #e5edf5;
      border-radius:9px;
      padding:10px;
      box-shadow:0 5px 16px rgba(30,64,102,.06);
    }
    .date-card {
      width:48px;
      min-width:48px;
      height:54px;
      border-radius:7px;
      overflow:hidden;
      background:#fff;
      border:1px solid #e0e9f2;
      text-align:center;
      box-shadow:0 4px 12px rgba(22,68,120,.06);
    }
    .date-card .mon {
      display:block;
      height:21px;
      line-height:21px;
      color:#fff;
      font-weight:900;
      font-size:11px;
      text-transform:uppercase;
    }
    .date-card .day {
      display:block;
      height:33px;
      line-height:33px;
      color:#0b1e57;
      font-weight:900;
      font-size:24px;
    }
    .mon.green { background:#2fac28; }
    .mon.orange { background:#ff7b16; }
    .mon.blue { background:#1665d8; }
    .sectoral-event h4,
    .news-row h4 {
      margin: 0 0 6px;
    font-size: 16px;
    line-height: 1.6;
    color: #102454;
    font-weight: 700;
    }
    .sectoral-event p,
    .news-row p {
      margin:0;
      color:#46627c;
      font-size:12px;
      line-height:1.1;
      font-weight:700;
    }
    .sectoral-event p i { color:#1592b4; margin-right:5px; }
    .explore-events-btn {
      width:100%;
      height:36px;
      border-radius:8px;
      border:1px solid #bbdaf8;
      background: #0e62df;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #ffffff;
    font-size: 12px;
    transition: 0.2s ease;
    font-weight: 700;
    margin-top: 12px;
    }

    .explore-events-btn:hover {
    background: #fff;
    color: #0e62df;
    }
    .news-list { display: grid;
    gap: 0;
    height: 306px;
    overflow: auto; }
    .news-row {
      display:flex;
      gap:11px;
      padding:0 0 12px;
      margin-bottom:12px;
      border-bottom:1px solid #e4edf5;
    }
    .news-row:last-child { margin-bottom:0; padding-bottom:0; border-bottom:0; }
    .news-img img {
      width:65px;
      height:50px;
      flex:0 0 65px;
      border-radius:7px;
      background-size:cover;
      background-position:center;
      box-shadow:0 5px 12px rgba(12,51,94,.10);
    }
    

    @media (max-width:1199px) {
      .sectoral-main-panel { min-height:auto; padding:32px 22px 22px; }
      .sectoral-top-art img{ width:250px; height:106px; right:24px; }
      .sectoral-heading { font-size:34px; }
      .sectoral-card { min-height:220px; }
      .sectoral-card.wide-img-left,
      .sectoral-card.wide-img-right,
      .sectoral-card.warm,
      .sectoral-card.cool { padding-right:118px; }
      .sectoral-card-img { width:120px; }
    }
    @media (max-width:991px) {
      .sectoral-info-section { padding:44px 0 52px; }
      .sectoral-main-panel { border-radius:25px; }
      .sectoral-top-art img{ position:relative; inset:auto; width:100%; height:165px; margin:0 0 20px; border-radius:22px; }
      .sectoral-top-art::before { display:none; }
      .sectoral-heading { font-size:33px; }
      .sectoral-subtext { max-width:100%; }
      .sectoral-grid { grid-template-columns:1fr; }
      .sectoral-card { min-height:220px; }
      .sectoral-side-panel { border-radius:18px; }
    }
    @media (max-width:575px) {
      .sectoral-info-section { padding:34px 0 42px; }
      .sectoral-main-panel { padding:22px 14px 16px; border-radius:20px; }
      .sectoral-heading { font-size:28px; letter-spacing:-1px; }
      .sectoral-kicker { font-size:11px; }
      .sectoral-top-art img{ height:130px; }
      .sectoral-card.wide-img-left,
      .sectoral-card.wide-img-right,
      .sectoral-card.warm,
      .sectoral-card.cool { padding:82px 15px 68px; }
      .sectoral-card-img {
        top:auto;
        left:0;
        right:0;
        bottom:0;
        width:100%;
        height:92px;
        opacity:.35;
        border-radius:0;
      }
      .sectoral-card-img::before { background:linear-gradient(0deg,rgba(255,255,255,.76),rgba(255,255,255,.12)); }
      .sectoral-icon { left:15px; top:18px; }
      .sectoral-card h3 { font-size:17px; }
      .sectoral-card li { font-size:10.5px; }
      .sectoral-side-panel { padding:16px 12px; }
      .sectoral-event { align-items:flex-start; }
    }


    /* ══════════════════════════════════
       KNOWLEDGE DATABASE + STATS SECTION
    ═══════════════════════════════════ */
    .knowledge-database-section {
      position:relative;
      z-index:12;
      padding:18px 0 72px;
      background:linear-gradient(180deg, rgba(237,249,255,.25), rgba(237,249,255,.78));
      overflow:hidden;
    }
    .knowledge-database-section::before {
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      opacity:.42;
      background-image:radial-gradient(#8cc9f2 1.15px, transparent 1.15px);
      background-size:18px 18px;
      background-position:-7px 40px;
      -webkit-mask-image:linear-gradient(90deg,#000 0 6%,transparent 21% 77%,#000 96%);
      mask-image:linear-gradient(90deg,#000 0 6%,transparent 21% 77%,#000 96%);
    }
    .kd-stats-strip,
    .kd-main-panel {
      position:relative;
      z-index:2;
      background:rgba(255,255,255,.92);
      border:1px solid rgba(211,228,240,.95);
      box-shadow:0 14px 34px rgba(31,75,108,.10);
      backdrop-filter:blur(12px);
    }
    .kd-stats-strip {
      border-radius:14px;
      min-height:118px;
      padding:18px 28px;
      margin-bottom:26px;
      display:grid;
      grid-template-columns:repeat(5, 1fr);
      align-items:center;
      gap:0;
    }
    .kd-stat-item {
      display:flex;
      align-items:center;
      gap:18px;
      min-height:76px;
      padding:0 24px;
      border-right:2px solid #d3dce8;
    }
    .kd-stat-item:last-child { border-right:0; }
    .kd-stat-icon {
      width:62px;
      min-width:62px;
      height:62px;
      display:grid;
      place-items:center;
      font-size:50px;
      line-height:1;
      color:var(--kd-color);
    }
    .kd-stat-icon .co2-mark {
      font-size:15px;
      font-weight:900;
      margin-left:2px;
      align-self:flex-start;
    }
    .kd-stat-text strong {
      display:block;
      color:#102454;
      font-size:26px;
      line-height:1;
      font-weight:900;
      letter-spacing:-.6px;
    }
    .kd-stat-text span {
      display:block;
      color:#263a62;
      font-size:14px;
      line-height:1.25;
      font-weight:700;
      margin-top:6px;
    }
    .kd-stat-text small {
      display:block;
      color:#4b5d76;
      font-size:12px;
      line-height:1.25;
      font-weight:600;
      margin-top:8px;
    }
    .kd-blue { --kd-color:#155fd2; }
    .kd-purple { --kd-color:#9945ff; }
    .kd-green { --kd-color:#4f931b; }
    .kd-leaf { --kd-color:#3a9124; }

    .kd-main-panel {
      border-radius:14px;
      padding:36px 34px 34px 40px;
      overflow:hidden;
    }
    .kd-main-panel::after {
      content:"";
      position:absolute;
      right:22px;
      bottom:8px;
      left:26px;
      height:36px;
      pointer-events:none;
      /*border-bottom:3px solid rgba(127,210,234,.42);*/
      border-radius:0 0 45px 45px;
    }
    .kd-header {
      position:relative;
      z-index:3;
      margin-bottom:28px;
    }
    .kd-header h2 {
      font-family:Montserrat, Inter, sans-serif;
      color:#071b54;
      font-size:42px;
      line-height:1.05;
      font-weight:700;
      letter-spacing:-1.4px;
      margin:0 0 10px;
    }
    .kd-header p {
      color:#30435f;
      font-size:16px;
      line-height:1.45;
      font-weight:600;
      margin:0;
    }
    .kd-content-row {
      position:relative;
      z-index: 2;
      display: grid;
      grid-template-columns: minmax(0, 1fr) 270px;
      align-items: end;
      gap: 4px;
    }
    .kd-cards-grid {
      display:grid;
      grid-template-columns:repeat(4, minmax(0, 1fr));
      gap:14px;
      align-items:stretch;
    }
    .kd-db-card {
          min-height: 260px;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    padding: 140px 5px 64px 18px;
    border: 1px solid var(--kd-border);
    background: linear-gradient(145deg, rgba(255, 255, 255, .98), var(--kd-bg));
    box-shadow: 0 9px 24px rgba(29, 75, 112, .08);
    transition: .25s ease;
    }
    .kd-db-card:hover {
      transform:translateY(-5px);
      box-shadow:0 16px 34px rgba(29,75,112,.13);
    }
    .kd-card-visual {
      position:absolute;
      top:8px;
      left:8px;
      right:0px;
      height:122px;
      display:flex;
      align-items:flex-end;
      justify-content:center;
      overflow:hidden;
      opacity:.92;
    }
    .kd-card-visual img {
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center;
      filter:saturate(1.05);
    }
    .kd-card-visual::before {
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.12) 60%, rgba(255,255,255,.8));
      z-index:2;
    }
    .kd-db-icon {
      position:absolute;
      top: 12px;
      left: 17px;
      width: 56px;
      height: 56px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:var(--kd-icon-bg);
      color:#fff;
      box-shadow:0 8px 22px color-mix(in srgb, var(--kd-color) 32%, transparent), inset 0 0 0 7px rgba(255,255,255,.34);
      font-size:19px;
      z-index:3;
    }
    .kd-db-card h3 {
      position:relative;
      z-index:4;
      margin:0 0 18px;
      color:#0b1e57;
      font-size:18px;
      letter-spacing:-.55px;
      font-weight:700;
    }
    .kd-db-card ul {
      position:relative;
      z-index:4;
      list-style:none;
      padding:0;
      margin:0;
    }
    .kd-db-card li {
      display:flex;
      gap:10px;
      color:#25354d;
      font-size:13px;
      line-height:1.42;
      font-weight:500;
      margin-bottom:12px;
    }
    .kd-db-card li i {
      color:#56677b;
      font-size:12px;
      margin-top:4px;
    }
    .kd-view-link {
      position:absolute;
      left:26px;
      bottom:30px;
      z-index:4;
      display:inline-flex;
      align-items:center;
      gap:16px;
      color:var(--kd-color);
      font-size:14px;
      line-height:1;
      font-weight:700;
    }
    .kd-policy { --kd-color:#31920a; --kd-bg:#fbfff0; --kd-border:#dcefd2; --kd-icon-bg:linear-gradient(135deg,#68bd16,#1f9900); }
    .kd-finance { --kd-color:#1666d5; --kd-bg:#f5fbff; --kd-border:#dbe9f5; --kd-icon-bg:linear-gradient(135deg,#2f83e9,#0d62c7); }
    .kd-auditor { --kd-color:#ff7900; --kd-bg:#fff8f0; --kd-border:#ffe0c2; --kd-icon-bg:linear-gradient(135deg,#ff9900,#ff6500); }
    .kd-resource { --kd-color:#7655f7; --kd-bg:#fbf8ff; --kd-border:#e3d8ff; --kd-icon-bg:linear-gradient(135deg,#8e70ff,#6841df); }
    .kd-side-art {
      position:relative;
      display:flex;
      align-items:flex-end;
      justify-content:center;
    }
    .kd-side-art::before {
      content:"";
      position:absolute;
      /*inset:18px 0 2px;
      border-radius:42% 58% 48% 52% / 34% 36% 64% 66%;
      background:radial-gradient(circle at 48% 28%, rgba(39,128,221,.12), transparent 42%), radial-gradient(circle at 70% 58%, rgba(41,166,35,.12), transparent 45%);
      filter:blur(.2px);*/
    }
    .kd-side-art img {
      position:relative;
      width: 100%;
      /*z-index:2;
      width:100%;
      max-width:390px;
      object-fit:contain;
      filter:drop-shadow(0 18px 20px rgba(28,83,117,.12));*/
    }

    @media (max-width:1399px) {
      .kd-stats-strip { padding:16px 12px; }
      .kd-stat-item { gap:12px; padding:0 14px; }
      .kd-stat-icon { width:52px; min-width:52px; height:52px; font-size:42px; }
      .kd-stat-text strong { font-size:23px; }
      .kd-content-row { grid-template-columns:minmax(0,1fr) 300px; }
      .kd-main-panel { padding:34px 26px 30px; }
      .kd-db-card { padding-left:18px; padding-right:18px; }
      .kd-db-card h3 { font-size:19px; }
      .kd-db-card li { font-size:12px; }
    }
    @media (max-width:1199px) {
      .kd-stats-strip { grid-template-columns:repeat(3, 1fr); row-gap:18px; }
      .kd-stat-item:nth-child(3) { border-right:0; }
      .kd-stat-item:nth-child(4), .kd-stat-item:nth-child(5) { border-top:1px solid #e1e9f1; padding-top:16px; }
      .kd-content-row { grid-template-columns:1fr; }
      .kd-side-art { min-height:320px; align-items:center; }
      .kd-side-art img { max-width:360px; }
      .kd-cards-grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
    }
    @media (max-width:767px) {
      .knowledge-database-section { padding:8px 0 48px; }
      .kd-stats-strip { grid-template-columns:1fr; border-radius:22px; padding:10px 18px; }
      .kd-stat-item { border-right:0; border-bottom:1px solid #e1e9f1; padding:14px 0; }
      .kd-stat-item:nth-child(4), .kd-stat-item:nth-child(5) { border-top:0; padding-top:14px; }
      .kd-stat-item:last-child { border-bottom:0; }
      .kd-main-panel { border-radius:28px; padding:26px 14px 22px; }
      .kd-header { text-align:left; margin-bottom:22px; }
      .kd-header h2 { font-size:31px; }
      .kd-header p { font-size:14px; }
      .kd-cards-grid { grid-template-columns:1fr; gap:16px; }
      .kd-db-card { min-height:390px; padding:176px 20px 68px; }
      .kd-card-visual { height:112px; }
      .kd-side-art { min-height:250px; }
      .kd-side-art img { max-width:280px; }
    }


    .event-slider {
  height: 300px;
  overflow: hidden;
  position: relative;
}

.event-list {
  display: flex;
  flex-direction: column;
  gap: 18px;
  transition: transform 0.6s ease-in-out;
}


*::-webkit-scrollbar {
    width: 14px;
  }

  *::-webkit-scrollbar-track {
    background: #c8d8ff;
  }

  *::-webkit-scrollbar-thumb {
    background-color: #0068b2;
    background-image: linear-gradient(to bottom, #3373ef, #10405b);
    border-radius: 10px;
    border: 3px solid #ffffff;
  }


  .news-list::-webkit-scrollbar {
    width: 12px;
  }

  .news-list::-webkit-scrollbar-track {
    background: #ffffff;
  }

  .news-list::-webkit-scrollbar-thumb {
    background-color: #0068b2;
    background-image: linear-gradient(to bottom right, #5a59f4, #0e56b7);
    border-radius: 10px;
    border: 3px solid #ffffff;
  }




    /* ══════════════════════════════════
       COLLABORATION + GESI BANNER SECTION
    ═══════════════════════════════════ */
    .impact-share-section {
      position:relative;
      z-index:12;
      padding:0 0 72px;
      background:linear-gradient(180deg, rgba(237,249,255,.72), rgba(237,249,255,.96));
      overflow:hidden;
    }
    .impact-share-section::before {
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      opacity:.38;
      background-image:radial-gradient(#87c8ef 1.1px, transparent 1.1px);
      background-size:18px 18px;
      background-position:-5px 35px;
      -webkit-mask-image:linear-gradient(90deg,#000 0 6%,transparent 24% 76%,#000 96%);
      mask-image:linear-gradient(90deg,#000 0 6%,transparent 24% 76%,#000 96%);
    }
    .impact-banner {
      position:relative;
      z-index:2;
      min-height:405px;
      border-radius:24px;
      overflow:hidden;
      background:linear-gradient(90deg,#f6ffed 0%,#f6fff2 34%,#f3fbff 50%,#edf7ff 100%);
      border:1px solid rgba(204,229,239,.92);
      box-shadow:0 14px 38px rgba(31,75,108,.12);
      display:grid;
      grid-template-columns:1fr 1fr;
    }
    .impact-banner::before {
      content:"";
      position:absolute;
      inset:-80px 45% -80px -8%;
      border-radius:0 52% 52% 0;
      background:radial-gradient(circle at 22% 60%,rgba(122,191,49,.22),transparent 34%),
                 linear-gradient(90deg,rgba(235,255,222,.95),rgba(255,255,255,.30));
      pointer-events:none;
    }
    .impact-banner::after {
      content:"";
      position:absolute;
      left:49.8%;
      top:-30px;
      bottom:-30px;
      width:2px;
      background:linear-gradient(180deg,transparent,rgba(204,226,239,.9),transparent);
      pointer-events:none;
    }
    .impact-block {
      position:relative;
      min-height:405px;
      padding:30px 38px 44px 30px;
      overflow:hidden;
    }
    .impact-block.gesi-block {
      padding-left: 30px;
    padding-right: 190px;
      background:linear-gradient(120deg,rgba(255,255,255,.18),rgba(226,242,255,.76));
    }
    .impact-block .dot-grid {
      position:absolute;
      width:92px;
      height:70px;
      opacity:.42;
      background-image:radial-gradient(#82c8ed 1.7px, transparent 1.7px);
      background-size:13px 13px;
    }
    .share-block .dot-grid { right: 0; top: 20px; }
    .gesi-block .dot-grid { right: 0; top: 20px; }
    .impact-icon {
      position: absolute;
    left: 87%;
    top: 47px;
    width: 62px;
    height: 62px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 20px;
    box-shadow: 0 8px 20px rgba(36, 94, 30, .18), inset 0 0 0 8px rgba(255, 255, 255, .32);
    border: 1px solid rgba(255, 255, 255, .85);
    z-index: 3;
    }
    .share-block .impact-icon { background:linear-gradient(135deg,#56b217,#16810a); }
    .gesi-block .impact-icon { background:linear-gradient(135deg,#2c82ee,#065cc9); }
    .impact-title {
      position:relative;
      z-index:3;
      margin:0 0 18px;
      font-family:Montserrat, Inter, sans-serif;
      font-size:31px;
      line-height:1.12;
      letter-spacing:-.9px;
      font-weight:800;
    }
    .share-block .impact-title { color:#2c8c1e; }
    .gesi-block .impact-title { color:#0e61d7; }
    .impact-text {
      position:relative;
      z-index:3;
      max-width:455px;
      margin:0 0 22px;
      color:#354762;
      font-size:15px;
      line-height:1.55;
      font-weight:700;
    }
    .impact-list {
      position:relative;
      z-index:3;
      list-style:none;
      padding:0;
      margin:0 0 30px;
      display:grid;
      gap:12px;
    }
    .impact-list li {
      display:flex;
      align-items:flex-start;
      gap:8px;
      color:#38495f;
      font-size:15px;
      line-height:1.25;
      font-weight:500;
    }
    .impact-list i {
      width:16px;
      min-width:16px;
      margin-top:1px;
      font-size:15px;
    }
    .share-block .impact-list i { color:#3c9d23; }
    .gesi-block .impact-list i { color:#176ee6; }
    .impact-btn {
      position:relative;
      z-index:4;
      min-width:156px;
      min-height:48px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:22px;
      border-radius:10px;
      color:#fff;
      font-size:15px;
      font-weight:800;
      box-shadow:0 10px 20px rgba(25,85,90,.16), inset 0 0 0 1px rgba(255,255,255,.28);
      transition:.25s ease;
    }
    .share-block .impact-btn { background:linear-gradient(180deg,#39a821,#177d10); }
    .gesi-block .impact-btn { background:linear-gradient(180deg,#126fe9,#0457c7); }
    .impact-btn:hover { transform:translateY(-2px); color:#fff; }
    .share-art {
      position:absolute;
      right:18px;
      bottom:0;
      width:360px;
      max-width:45%;
      z-index:2;
      filter:drop-shadow(0 18px 18px rgba(55,110,65,.13));
    }
    .gesi-art {
      position:absolute;
      right:0;
      bottom:0;
      width:440px;
      max-width:48%;
      z-index:2;
      filter:drop-shadow(0 16px 18px rgba(30,80,130,.12));
    }
    .share-block::after {
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      height:112px;
      opacity:.58;
      background:linear-gradient(0deg,rgba(99,174,42,.20),transparent),
                 repeating-linear-gradient(100deg, transparent 0 36px, rgba(70,160,40,.12) 37px 39px);
      clip-path:ellipse(80% 100% at 38% 100%);
      pointer-events:none;
    }
    .gesi-block::after {
      content:"";
      position:absolute;
      right:-20px;
      bottom:-36px;
      width:520px;
      height:230px;
      border-radius:65% 0 0 0;
      background:radial-gradient(circle at 74% 18%,rgba(255,187,38,.22),transparent 37%),
                 linear-gradient(135deg,rgba(203,229,255,.25),rgba(0,102,210,.18));
      pointer-events:none;
    }

    @media (max-width:1399px) {
      .impact-block { padding-left:140px; padding-right:34px; }
      .impact-block.gesi-block { padding-left:132px; padding-right:350px; }
      .impact-title { font-size:28px; }
      .share-art { width:310px; }
      .gesi-art { width:390px; }
    }
    @media (max-width:1199px) {
      .impact-banner { grid-template-columns:1fr; }
      .impact-banner::after { left:24px; right:24px; top:50%; bottom:auto; width:auto; height:1px; }
      .impact-block,
      .impact-block.gesi-block { min-height:360px; padding:42px 330px 40px 138px; }
      .share-art { width:290px; max-width:38%; }
      .gesi-art { width:340px; max-width:42%; }
    }
    @media (max-width:767px) {
      .impact-share-section { padding-bottom:48px; }
      .impact-banner { border-radius:24px; }
      .impact-block,
      .impact-block.gesi-block {
        min-height:auto;
        padding:118px 22px 230px;
        text-align:left;
      }
      .impact-icon { left:22px; top:24px; width:76px; height:76px; font-size:30px; }
      .impact-title { font-size:24px; }
      .impact-text,.impact-list li { font-size:13px; }
      .share-art,.gesi-art { width:300px; max-width:88%; right:0; }
      .share-block .dot-grid,.gesi-block .dot-grid { right:22px; top:42px; }
    }



    /* ══════════════════════════════════
       EXACT FOOTER CONNECT SECTION
    ═══════════════════════════════════ */
    .footer-connect-section {
          position: relative;
    z-index: 12;
    padding: 32px 0 0;
    background: linear-gradient(180deg, #ffffff, #ffffff33), url(../image/footer-2.jpg);
    /* overflow: hidden; */
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center;
    }
    .footer-connect-section::before {
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      opacity:.32;
      background-image: radial-gradient(#a8d2ee 1.05px, transparent 1.05px);
      background-size: 18px 18px;
      -webkit-mask-image: linear-gradient(90deg,#000 0 7%,transparent 16% 84%,#000 94%);
      mask-image: linear-gradient(90deg,#000 0 7%,transparent 16% 84%,#000 94%);
    }
    .footer-connect-shell { position:relative; z-index:2; }

    .connect-strip {
      min-height: 106px;
      border-radius: 32px;
      background: #fff;
      border: 1px solid #deebf5;
      box-shadow: 0 10px 28px rgba(29,77,112,.10);
      display:grid;
      grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
      align-items:center;
      padding: 14px 28px;
      gap:0;
      margin-bottom: 32px;
    }
    .connect-item {
      min-height: 74px;
    display: flex;
    align-items: center;
    width: 100%;
    gap: 8px;
    padding: 0 10px;
    border-right: 2px solid #d9e2ec;
    justify-content: center;
    }
    .connect-item:first-child { padding-left:0; }
    .connect-icon {
      width:70px;
      min-width:70px;
      height:70px;
      border-radius:50%;
      display:grid;
      place-items:center;
      color:var(--connect-color);
      border:2px solid color-mix(in srgb,var(--connect-color) 35%, #fff);
      background:linear-gradient(145deg,#ffffff 0%, color-mix(in srgb,var(--connect-color) 8%, #fff) 100%);
      box-shadow: 0 8px 18px rgba(14,70,105,.06), inset 0 0 0 10px rgba(255,255,255,.82);
      font-size:30px;
    }
    .connect-text strong {
      display:block;
      color:#0c215b;
      font-size:15px;
      line-height:1.1;
      font-weight:800;
      margin-bottom:6px;
    }
    .connect-text span {
      display:block;
      color:#334664;
      font-size:12px;
      line-height:1.45;
      font-weight:500;
    }
    .connect-green { --connect-color:#52a82e; }
    .connect-orange { --connect-color:#f8a21c; }

    .stay-connected {
      display:flex;
      align-items:center;
      justify-content:flex-end;
      gap:10px;
      padding-left:20px;
      white-space:nowrap;
    }
    .stay-connected span {
      color:#0c215b;
      font-size:14px;
      font-weight:700;
      margin-right:2px;
    }
    .social-circle {
      width:29px;
      height:29px;
      border-radius:50%;
      display:inline-grid;
      place-items:center;
      color:#fff;
      font-size:14px;
      box-shadow:0 5px 12px rgba(23,67,102,.10);
    }
    .social-in { background:#1377b7; }
    .social-tw { background:#1da1f2; }
    .social-yt { background:#ef2b24; }
    .social-mail { background:#3a9a45; }

    .footer-main-card {
      position:relative;
      border-radius: 34px;
      background: rgba(255,255,255,.92);
      border:1px solid #dceaf4;
      box-shadow:0 14px 34px rgba(25,77,114,.11);
      overflow:hidden;
      padding: 38px 28px 62px;
      min-height: 520px;
    }
    .footer-main-card::before {
      content:"";
      position:absolute;
      left:-6%;
      right:-6%;
      bottom:34px;
      height:118px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.18) 18%, rgba(125,183,232,.18) 100%),
        repeating-linear-gradient(174deg, transparent 0 18px, rgba(80,159,220,.14) 19px 21px);
      clip-path: ellipse(70% 70% at 50% 100%);
      pointer-events:none;
      opacity:.95;
    }
    .footer-main-card::after {
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      height:122px;
      background:
        radial-gradient(circle at 7% 100%, rgba(101,183,61,.32), transparent 24%),
        radial-gradient(circle at 95% 100%, rgba(141,205,59,.30), transparent 26%),
        linear-gradient(180deg, rgba(184,226,255,.14), rgba(210,244,255,.56));
      clip-path: ellipse(85% 88% at 50% 100%);
      pointer-events:none;
    }

    .footer-side-leaves {
      position:absolute;
      left:-4px;
      bottom:48px;
      width:114px;
      height:240px;
      pointer-events:none;
      z-index:2;
    }
    .footer-side-leaves::before,
    .footer-side-leaves::after {
      content:"";
      position:absolute;
      left:10px;
      bottom:0;
      width:4px;
      height:210px;
      background:linear-gradient(#7fc44d,#2d8c2c);
      border-radius:20px;
      transform:rotate(-6deg);
      opacity:.8;
    }
    .footer-side-leaves::after {
      left:48px;
      height:188px;
      bottom:24px;
      transform:rotate(10deg);
    }
    .footer-side-leaves span {
      position:absolute;
      width:36px;
      height:62px;
      border-radius:88% 0 88% 0;
      background:linear-gradient(135deg,#49ab2d,#d0f8a0);
      box-shadow:inset -8px -8px 18px rgba(11,93,27,.10);
    }
    .footer-side-leaves span:nth-child(1) { left:0; bottom:24px; transform:rotate(12deg); }
    .footer-side-leaves span:nth-child(2) { left:22px; bottom:60px; transform:rotate(-34deg); }
    .footer-side-leaves span:nth-child(3) { left:0; bottom:106px; transform:rotate(24deg); }
    .footer-side-leaves span:nth-child(4) { left:52px; bottom:118px; transform:rotate(-18deg); }
    .footer-side-leaves span:nth-child(5) { left:22px; bottom:162px; transform:rotate(24deg); }

    .footer-brand-box { position:relative; min-height:100%; }
    .footer-brand-logo {
      width: 236px;
      display: block;
      margin-bottom: 22px;
      margin: 0 auto;
    }
    .footer-brand-divider {
      width:58px;
      height:4px;
      border-radius:5px;
      background:#3cad1e;
      margin:0 0 22px 48px;
    }
    .footer-about-text {
      max-width: 430px;
    color: #223764;
    font-size: 14px;
    background: #ffffffc4;
    text-align: justify;
    padding: 0 0 6px 16px;
    border-radius: 20px;
    line-height: 1.62;
    font-weight: 500;
    margin: 0 0 24px 0px;
    position: relative;
    z-index: 2;
    }
    .footer-about-fade {
      position:absolute;
      right:8px;
      bottom:58px;
      width:124px;
      height:162px;
      background:linear-gradient(180deg, rgba(128,182,236,.16), rgba(128,182,236,.06));
      clip-path: polygon(20% 100%, 20% 68%, 30% 68%, 30% 38%, 42% 38%, 42% 64%, 50% 64%, 50% 20%, 62% 20%, 62% 76%, 70% 76%, 70% 0, 82% 0, 82% 100%);
      opacity:.55;
    }
    .visitor-counter {
      width: 240px;
      height: 74px;
      border-radius: 16px;
      background: linear-gradient(180deg, #f5faef 0%, #ecf6e3 100%);
      border: 1px solid #d9e8c6;
      box-shadow: 0 8px 18px rgba(73, 127, 42, .08);
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px 16px;
      margin-left: 12%;
      position: relative;
      z-index: 2;
    }
    .visitor-icon {
      width:44px;
      min-width:44px;
      height:44px;
      border-radius:50%;
      background:linear-gradient(145deg,#59b33a,#2c962b);
      display:grid;
      place-items:center;
      color:#fff;
      font-size:18px;
      box-shadow:0 6px 14px rgba(38,106,30,.13);
    }
    .visitor-counter small {
      display:block;
      color:#20315f;
      font-size:16px;
      line-height:1.15;
      font-weight:700;
      margin-bottom:6px;
    }
    .visitor-counter strong {
      display:block;
      color:#309f2f;
      font-size:18px;
      line-height:1;
      font-weight:800;
      letter-spacing:.5px;
    }

    .footer-link-card {
      position:relative;
      border-radius: 24px;
      background: rgba(255,255,255,.90);
      border: 1px solid #dceaf4;
      box-shadow:0 10px 24px rgba(30,74,105,.06);
      overflow:hidden;
      padding: 82px 20px 18px;
    }
    .footer-link-card::before {
      content:"";
      position:absolute;
      top:34px;
      left:0;
      width:76%;
      height:40px;
      border-radius:0 18px 18px 0;
      background:linear-gradient(90deg,var(--foot-tab) 0%, color-mix(in srgb,var(--foot-tab) 55%, #fff) 70%, rgba(255,255,255,.0) 100%);
    }
    .footer-link-card h3 {
      position:absolute;
      top:42px;
      left:24px;
      margin:0;
      color:#0b225b;
      font-size:17px;
      font-weight:800;
      z-index:3;
    }
    .footer-link-card .corner-leaves {
      position:absolute;
      right:18px;
      top:18px;
      width:62px;
      height:50px;
      pointer-events:none;
    }
    .footer-link-card .corner-leaves::before,
    .footer-link-card .corner-leaves::after {
      content:"";
      position:absolute;
      width:30px;
      height:38px;
      border-radius:88% 0 88% 0;
      background:linear-gradient(135deg,#4eb133,#c6f194);
    }
    .footer-link-card .corner-leaves::before { left:8px; top:10px; transform:rotate(22deg); }
    .footer-link-card .corner-leaves::after { left:28px; top:0; transform:rotate(-18deg); }
    .footer-menu-list {
      list-style:none;
      margin:0;
      padding:0;
    }
    .footer-menu-list li {
      min-height:52px;
      display:flex;
      align-items:center;
      border-bottom:1px dashed #d6e2ec;
    }
    .footer-menu-list li:last-child { border-bottom:0; }
    .footer-menu-list li a {
      display:flex;
      align-items:center;
      gap:16px;
      color:#12305e;
      font-size:14px;
      font-weight:500;
      text-decoration:none;
      width:100%;
      transition:color .22s ease, transform .22s ease;
    }
    .footer-menu-list li a:hover {
      color:var(--foot-icon);
      transform:translateX(4px);
    }
    .footer-menu-list .link-icon {
      width:40px;
      min-width:40px;
      height:40px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:var(--foot-soft);
      color:var(--foot-icon);
      font-size:17px;
      box-shadow: inset 0 0 0 1px rgba(0,0,0,.03);
      transition:transform .22s ease;
    }
    .footer-menu-list li a:hover .link-icon {
      transform:rotate(12deg) scale(1.05);
    }
    .footer-explore { --foot-tab:#cde8ff; --foot-soft:#edf5ff; --foot-icon:#1769df; }
    .footer-discover { --foot-tab:#d3efb9; --foot-soft:#edf7e8; --foot-icon:#4c932d; }

    .footer-contact-card {
      position:relative;
      min-height:394px;
      border-radius:24px;
      background:linear-gradient(0deg, #ffffffba, transparent), url(ftr-bg.png);
      background-size: cover;
      background-blend-mode: color-burn;
      background-position: center;
      border:1px solid #d5e9f3;
      box-shadow:0 10px 24px rgba(30,74,105,.06);
      padding: 36px 20px 28px;
      overflow:hidden;
    }
    .footer-contact-card::before {
      content:"";
      position:absolute;
      right:18px;
      top:10px;
      width:62px;
      height:58px;
      background:
        radial-gradient(circle at 30% 56%, #82c958 0 26%, transparent 27%),
        radial-gradient(circle at 64% 32%, #9ddb76 0 22%, transparent 23%),
        radial-gradient(circle at 46% 82%, #bae994 0 16%, transparent 17%);
      opacity:.58;
    }
    .footer-contact-card h3 {
      margin:0 0 26px;
      color:#0d225d;
      font-size:18px;
      font-weight:800;
    }
    .contact-row {
          display: flex;
    align-items: center;
    gap: 16px;
    color: #213663;
    font-size: 14px;
    line-height: 1.9;
    font-weight: 500;
    margin-bottom: 18px;
    position: relative;
    z-index: 2;
    }
    .contact-row:last-child { margin-bottom:0; }
    .contact-icon {
      width:40px;
      min-width:40px;
      height:40px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:linear-gradient(145deg,#f9fff4,#ffffff);
      border:1px solid #d9e7cb;
      color:#4ea02d;
      box-shadow:0 6px 14px rgba(76,136,37,.08);
      font-size:18px;
      margin-top:2px;
    }
    .footer-contact-art {
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      height:132px;
      pointer-events:none;
      overflow:hidden;
    }
    .footer-contact-art .ground {
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      height:34px;
      background:linear-gradient(90deg, rgba(166,218,255,.32), rgba(196,237,161,.40));
    }
    .footer-contact-art .city {
      position:absolute;
      left:88px;
      bottom:24px;
      width:140px;
      height:60px;
      background:linear-gradient(180deg, rgba(144,190,231,.18), rgba(144,190,231,.08));
      clip-path: polygon(0 100%,0 70%,12% 70%,12% 35%,23% 35%,23% 55%,32% 55%,32% 10%,41% 10%,41% 70%,51% 70%,51% 0,62% 0,62% 74%,75% 74%,75% 24%,85% 24%,85% 100%);
    }
    .footer-contact-art .panel {
      position:absolute;
      right:24px;
      bottom:18px;
      width:76px;
      height:34px;
      background:linear-gradient(180deg,#47aef3,#1573c2);
      transform:skew(-24deg);
      border-radius:4px;
      box-shadow:inset 0 0 0 2px rgba(255,255,255,.22);
    }
    .footer-contact-art .panel::before {
      content:"";
      position:absolute;
      inset:0;
      background:repeating-linear-gradient(90deg, rgba(255,255,255,.46) 0 2px, transparent 2px 18px), repeating-linear-gradient(180deg, rgba(255,255,255,.34) 0 2px, transparent 2px 16px);
      opacity:.75;
      border-radius:inherit;
    }
    .footer-contact-art .panel.p2 { right:92px; width:64px; bottom:22px; }
    .footer-contact-art .turbine {
      position:absolute;
      right:48px;
      bottom:40px;
      width:4px;
      height:72px;
      background:#81abc9;
      border-radius:4px;
    }
    .footer-contact-art .turbine::before,
    .footer-contact-art .turbine::after {
      content:"";
      position:absolute;
      left:2px;
      top:8px;
      width:34px;
      height:2px;
      background:#9dbad0;
      transform-origin:left center;
    }
    .footer-contact-art .turbine::before { transform:rotate(30deg); }
    .footer-contact-art .turbine::after { transform:rotate(-50deg); }
    .footer-contact-art .turbine i {
      position:absolute;
      left:-4px;
      top:7px;
      width:12px;
      height:2px;
      background:#9dbad0;
      transform:rotate(95deg);
      transform-origin:right center;
      display:block;
    }
    .footer-contact-art .leaf-a,
    .footer-contact-art .leaf-b {
      position:absolute;
      width:18px;
      height:32px;
      border-radius:88% 0 88% 0;
      background:linear-gradient(135deg,#6ebd45,#d2f4a5);
      opacity:.85;
    }
    .footer-contact-art .leaf-a { left:156px; bottom:18px; transform:rotate(20deg); }
    .footer-contact-art .leaf-b { right:148px; bottom:74px; transform:rotate(-30deg); }

    .copyright-pill {
      position:relative;
      z-index:3;
      min-height:46px;
      margin: -12px 24px 0;
      border-radius: 24px 24px 0 0;
      background: linear-gradient(180deg,#f4fbff 0%,#edf8ff 100%);
      border:1px solid #dbeaf4;
      box-shadow:0 8px 18px rgba(30,74,105,.06);
      display:flex;
      align-items:center;
      justify-content:center;
      color:#223f74;
      font-size:14px;
      font-weight:500;
      gap:16px;
    }
    .copyright-pill::before,
    .copyright-pill::after {
      content:"";
      width:18px;
      height:26px;
      border-radius:88% 0 88% 0;
      background:linear-gradient(135deg,#4fb335,#cbf39e);
      opacity:.92;
    }
    .copyright-pill::before { transform:rotate(22deg); }
    .copyright-pill::after { transform:rotate(-22deg); }

    @media (max-width:1399px) {
      .connect-strip { grid-template-columns: repeat(4, minmax(0,1fr)); row-gap:18px; }
      .stay-connected { grid-column: 1 / -1; justify-content:center; padding-left:0; padding-top:4px; }
      .footer-about-text { margin-left:0; }
      .footer-brand-divider { margin-left:0; }
      .visitor-counter { margin-left:0; }
    }
    @media (max-width:1199px) {
      .footer-main-card { padding:34px 22px 60px; }
      .connect-strip { grid-template-columns: repeat(2, minmax(0,1fr)); }
      .connect-item:nth-child(2),
      .connect-item:nth-child(4) { border-right:0; }
      .connect-item:nth-child(3),
      .connect-item:nth-child(4) { border-top:1px solid #e0e8ef; padding-top:14px; margin-top:6px; }
      .stay-connected { grid-column: 1 / -1; justify-content:center; border-top:1px solid #e0e8ef; padding-top:16px; margin-top:4px; }
    }
    @media (max-width:991px) {
      .footer-main-card { border-radius:28px; }
      .footer-link-card,
      .footer-contact-card { min-height:auto; }
      .footer-contact-card { padding-bottom:140px; }
      .copyright-pill { margin: -8px 16px 0; }
    }
    @media (max-width:767px) {
      .footer-connect-section { padding-top:26px; }
      .connect-strip {
        grid-template-columns:1fr;
        border-radius:26px;
        padding:14px 18px;
      }
      .connect-item {
        border-right:0;
        border-bottom:1px solid #e0e8ef;
        padding:10px 0;
        justify-content: flex-start !important;
      }
      
      .gov-logo-wrap img {
            width: auto;
            margin-top: -18px;
            margin-bottom: 18px;
        }
        
        .top-header-left {
            display: contents !important;
            align-items: center;
            gap: 14px !important;
        }
      .connect-item:first-child { padding-left:0; }
      .connect-item:nth-child(3),
      .connect-item:nth-child(4) { border-top:0; margin-top:0; }
      .stay-connected {
        border-top:0;
        padding-top:10px;
        justify-content:flex-start;
        flex-wrap:wrap;
      }
      .footer-main-card { padding:28px 16px 54px; }
      .footer-side-leaves { transform:scale(.82); transform-origin:left bottom; }
      .footer-brand-logo { width:280px; }
      .footer-about-text { font-size:13px; margin-left:0; }
      .visitor-counter { margin-left:0; }
      .footer-link-card { padding:78px 16px 14px; }
      .footer-menu-list li { min-height:68px; }
      .footer-contact-card { padding:28px 18px 136px; }
      .contact-row { font-size:13px; gap:12px; }
      .contact-icon { width:36px; min-width:36px; height:36px; font-size:16px; }
      .copyright-pill { min-height:56px; font-size:13px; text-align:center; padding:0 12px; }
    }

    .accessibility-btn {
  position: fixed;
  right: 25px;
  bottom: 25px;
  width: 55px;
  height: 55px;
  background: #4f68c8;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  z-index: 9998;
  text-decoration: none;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25);
}

.accessibility-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  opacity: 0;
  visibility: hidden;
  z-index: 9998;
  transition: 0.3s ease;
}

.accessibility-overlay.active {
  opacity: 1;
  visibility: visible;
}

.accessibility-menu {
  position: fixed;
  top: 36px;
  right: -520px;
  width: 490px;
  max-width: 100%;
  height: 608px;
  background: #eef1ff;
  z-index: 9999;
  padding: 8px 13px 20px;
  overflow-y: auto;
  transition: right 0.35s ease;
  box-shadow: -8px 0 30px rgba(0, 0, 0, 0.18);
}

.accessibility-menu.active {
  right: 0;
}

.accessibility-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px dashed #8196e8;
  padding-bottom: 8px;
  margin-bottom: 17px;
}

.accessibility-header h3 {
  margin: 0;
  font-size: 20px;
  color: #111;
  font-weight: 700;
}

.accessibility-close {
  border: none;
  background: transparent;
  font-size: 23px;
  color: #777;
  cursor: pointer;
}

.accessibility-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 13px 27px;
}

.accessibility-card {
  min-height: 84px;
  background: #fff;
  border: none;
  border-radius: 10px;
  padding: 14px 10px;
  text-align: center;
  cursor: pointer;
  color: #000;
  font-size: 20px;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: 0.25s ease;
}

.accessibility-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(79, 104, 200, 0.18);
}

.accessibility-card strong {
  font-size: 25px;
  line-height: 1;
}

.accessibility-card i {
  font-size: 25px;
}

.accessibility-card span {
  font-size: 20px;
}

.range-card label {
  font-size: 18px;
  margin-bottom: 10px;
}

.range-card input {
  width: 100%;
  accent-color: #2c58bd;
}

.reset-btn {
  width: 100%;
  margin-top: 13px;
  background: #516bc5;
  color: #fff;
  border: none;
  border-radius: 9px;
  height: 45px;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
}

.theme-box {
  margin-top: 16px;
}

.theme-box p {
  margin: 0 0 8px;
  font-size: 17px;
  color: #333;
}

.theme-options {
  background: #fff;
  border-radius: 11px;
  padding: 12px;
  display: flex;
  gap: 19px;
}

.theme-options button {
  width: 57px;
  height: 57px;
  border: none;
  cursor: pointer;
}

.theme-options button.active {
  outline: 2px solid #000;
  outline-offset: -2px;
}

body.accessibility-menu-open {
  overflow: hidden;
}

@media (max-width: 575px) {
  .accessibility-menu {
    width: 100%;
    right: -100%;
  }

  .accessibility-grid {
    gap: 12px;
  }

  .accessibility-card {
    min-height: 78px;
  }

  .accessibility-card span {
    font-size: 16px;
  }
}









/* ==============================
   MAIN NAVIGATION
================================= */

#mainMenu .navbar-nav {
  gap: 4px;
}

#mainMenu .nav-item {
  position: relative;
}

#mainMenu .nav-link {
  position: relative;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 13px 16px;
  color: #1e293b;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.25s ease, background-color 0.25s ease;
}

#mainMenu .nav-link:hover {
  color: #087f5b;
}

/* ==============================
   SUBMENU COMMON STYLES
================================= */

#mainMenu .custom-submenu {
  position: absolute;
    top: 100%;
    left: 0;
    z-index: 999;
    min-width: 235px;
    margin: 0;
    padding: 8px;
    list-style: none;
    background-color: #ffffff;
    border-top: 4px solid #ff7100 !important;
    border: 1px solid #e5e7eb;
  border-radius: 10px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);

  /* Hidden by default */
  visibility: hidden;
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;

  transition:
    opacity 0.25s ease,
    transform 0.25s ease,
    visibility 0.25s ease;
}

#mainMenu .custom-submenu li {
  position: relative;
  border-bottom: 1px dotted #747373;
}

#mainMenu .custom-submenu li:last-child {
    border: none;
}

#mainMenu .custom-submenu a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 10px 13px;
  color: #334155;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  border-radius: 7px;
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    padding-left 0.2s ease;
}

#mainMenu .custom-submenu a:hover {
  color: #087f5b;
  background-color: #ecfdf5;
  padding-left: 17px;
}

/* ==============================
   SHOW FIRST SUBMENU ON HOVER
================================= */

#mainMenu .nav-item.dropdown:hover > .custom-submenu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* ==============================
   NESTED SUBMENU
================================= */

#mainMenu .nested-submenu {
  top: -8px;
  left: calc(100% + 0px);
  transform: translateX(10px);
}

#mainMenu .dropdown-submenu:hover > .nested-submenu {
  visibility: visible;
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

/* ==============================
   ARROWS FOR ITEMS WITH CHILDREN
================================= */

/* Arrow beside top-level links that contain a submenu */
#mainMenu .nav-item.dropdown > .nav-link::after {
  display: none !important;
}

/* Right-facing arrow only for submenu items that contain another submenu */
#mainMenu .dropdown-submenu > a::after {
  content: "";
  flex-shrink: 0;
  width: 7px;
  height: 7px;
  margin-left: auto;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 0.2s ease;
}

#mainMenu .dropdown-submenu:hover > a::after {
  transform: rotate(45deg) translate(2px, -2px);
}

/* ==============================
   RESPONSIVE MOBILE MENU
================================= */

@media (max-width: 991.98px) {
  #mainMenu .navbar-nav {
    gap: 0;
    padding: 10px 0;
  }

  #mainMenu .custom-submenu,
  #mainMenu .nested-submenu {
    position: static;
    display: none;
    min-width: 100%;
    margin: 4px 0;
    padding: 5px 5px 5px 14px;
    border: 0;
    border-radius: 6px;
    box-shadow: none;
    background-color: #f8fafc;
    visibility: visible;
    opacity: 1;
    transform: none;
    pointer-events: auto;
  }

  /*
    Submenus remain hover-based on mobile as requested.
    On touch devices, consider adding click-based JavaScript later.
  */
  #mainMenu .nav-item.dropdown:hover > .custom-submenu,
  #mainMenu .dropdown-submenu:hover > .nested-submenu {
    display: block;
  }
}



/* =================================
   RELOAD IMAGE POPUP
================================= */

.reload-image-popup {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.reload-image-popup.show {
  visibility: visible;
  opacity: 1;
}

.reload-popup-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(3px);
}

.reload-popup-box {
  position: relative;
  z-index: 1;
  width: min(92vw, 760px);
  border-radius: 14px;
  border: 4px solid #db7008;
  background-color: #ffffff;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28);
  overflow: visible;

  transform: scale(0.88) translateY(20px);
  transition: transform 0.35s ease;
}

.reload-image-popup.show .reload-popup-box {
  transform: scale(1) translateY(0);
}

.reload-popup-link {
  display: block;
}

.reload-popup-image {
  display: block;
  width: 100%;
  max-height: 82vh;
  object-fit: contain;
  border-radius: 14px;
}

.reload-popup-close {
  position: absolute;
  top: -16px;
  right: -16px;
  z-index: 2;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #ffffff;
  border-radius: 50%;
  background-color: #db7008;
  color: #ffffff;
  font-size: 27px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.reload-popup-close:hover {
  background-color: #b91c1c;
  transform: rotate(90deg);
}

@media (max-width: 575.98px) {
  .reload-image-popup {
    padding: 14px;
  }

  .reload-popup-box {
    width: 90%;
    margin-left: -9px;
  }

  .reload-popup-close {
    top: -12px;
    right: 0px;
    width: 34px;
    height: 34px;
    font-size: 24px;
  }
}


/* =================================
   TOP HEADER BAR
================================= */

.top-header1 {
  width: 100%;
  min-height: 35px;
  display: flex;
  align-items: center;
  color: #ffffff;
  background: linear-gradient(90deg, #3c458e, #31c819);
}

.top-header-inner {
  min-height: 35px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.top-header-left {
  display: flex;
  align-items: center;
  gap: 38px;
}

.site-map-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  transition: color 0.2s ease;
}

.site-map-link:hover {
  color: #d8f7df;
}

.site-map-link i {
  font-size: 15px;
}

.top-header-right {
  display: flex;
  align-items: center;
  gap: 40px;
}

.top-header-right .region,
.top-header-right .block,
.top-header-right .block > div,
.top-header-right .block__content,
.top-header-right .block .content {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
}

.language-dropdown {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid #ffffff !important;
  height: 28px;
  border-radius: 4px !important;
  padding: 0 28px 0 12px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  background-color: #34a637 !important;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 8px center !important;
  background-size: 12px !important;
  outline: none;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
}

.language-dropdown option {
  background-color: #34a637;
  color: #ffffff;
}

.social-links {
  display: flex;
  align-items: center;
  gap: 12px;
}

.follow-label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-right: 2px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  white-space: nowrap;
}

.follow-label i {
  font-size: 15px;
}

.social-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 15px;
  line-height: 1;
  text-decoration: none;
  transition: color 0.2s ease, transform 0.2s ease;
}

.social-links a:hover {
  color: #c9f7d4;
  transform: translateY(-2px);
}

@media (max-width: 1199.98px) {
  .top-header-right {
    gap: 45px;
  }

  .social-links {
    gap: 16px;
  }
}

@media (max-width: 767.98px) {
  .top-header1 {
    padding: 8px 0;
  }
  
    .top-header-left a:last-child {
        display: none;
    }
    
    .top-header-right .social-links {
        display: none;
    }

  .top-header-inner {
    flex-wrap: wrap;
    gap: 10px;
  }

  .top-header-right {
        width: 100%;
        justify-content: space-between;
        gap: 15px;
        align-items: center !important;
        margin-top: 6px;
        margin-bottom: 8px;
  }

  .social-links {
    gap: 14px;
  }

  .follow-label,
  .site-map-link {
    font-size: 14px;
  }

  .language-dropdown {
    min-width: 96px;
    height: 27px;
    font-size: 14px;
    padding: 0 24px 0 10px;
  }
}

@media (max-width: 420px) {
  .top-header-right {
    align-items: flex-start;
    flex-direction: column;
  }

  .social-links {
    flex-wrap: wrap;
    gap: 15px;
  }
}


/* =================================
   FLOATING SEARCH BUTTON
================================= */



.search-float:hover {
  transform: translateY(-5px) scale(1.06);
  box-shadow: 0 16px 30px rgba(8, 118, 37, 0.38);
}

@keyframes searchButtonPulse {
  0% {
    box-shadow:
      0 10px 24px rgba(8, 118, 37, 0.3),
      0 0 0 0 rgba(8, 118, 37, 0.35);
  }

  70% {
    box-shadow:
      0 10px 24px rgba(8, 118, 37, 0.3),
      0 0 0 16px rgba(8, 118, 37, 0);
  }

  100% {
    box-shadow:
      0 10px 24px rgba(8, 118, 37, 0.3),
      0 0 0 0 rgba(8, 118, 37, 0);
  }
}

/* =================================
   SEARCH POPUP
================================= */

.search-popup {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  visibility: hidden;
  opacity: 0;
  transition:
    opacity 0.35s ease,
    visibility 0.35s ease;
}

.search-popup.show {
  visibility: visible;
  opacity: 1;
}

.search-popup-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(
      circle at center,
      rgba(8, 118, 37, 0.18),
      rgba(4, 28, 15, 0.9)
    );
  backdrop-filter: blur(8px);
}

.search-popup-content {
  position: relative;
  z-index: 1;
  width: min(100%, 820px);
  padding: 52px 42px 36px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.65);
  border-radius: 28px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(241, 255, 245, 0.96));
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.28);
  text-align: center;

  transform: translateY(45px) scale(0.86);
  opacity: 0;

  transition:
    transform 0.45s cubic-bezier(0.2, 0.9, 0.3, 1.15),
    opacity 0.35s ease;
}

.search-popup.show .search-popup-content {
  transform: translateY(0) scale(1);
  opacity: 1;
}

/* Decorative background circles */

.search-popup-content::before,
.search-popup-content::after {
  content: "";
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  background: linear-gradient(
    135deg,
    rgba(8, 118, 37, 0.1),
    rgba(10, 166, 58, 0.03)
  );
}

.search-popup-content::before {
  width: 220px;
  height: 220px;
  top: -95px;
  left: -85px;
}

.search-popup-content::after {
  width: 270px;
  height: 270px;
  right: -110px;
  bottom: -130px;
}

.search-popup-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  color: #ffffff;
  font-size: 18px;
  background: #d7710d;
  box-shadow: 0 7px 16px rgba(220, 38, 38, 0.24);
  cursor: pointer;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.search-popup-close:hover {
  transform: rotate(90deg) scale(1.08);
  box-shadow: 0 10px 22px rgba(220, 38, 38, 0.32);
}

/* Icon Animation */

.search-popup-icon {
  width: 74px;
  height: 74px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 17px;
  border-radius: 24px;
  color: #ffffff;
  font-size: 28px;
  background: linear-gradient(135deg, #087625, #0ca845);
  box-shadow: 0 14px 28px rgba(8, 118, 37, 0.25);
  animation: searchIconFloat 2.5s ease-in-out infinite;
}

@keyframes searchIconFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

/* Text */

.search-popup-heading span {
  display: inline-block;
  margin-bottom: 8px;
  color: #087625;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.search-popup-heading h2 {
  margin: 0;
  color: #173b25;
  font-size: clamp(26px, 4vw, 40px);
  font-weight: 750;
  line-height: 1.15;
}

.search-popup-heading p {
  margin: 12px 0 26px;
  color: #64748b;
  font-size: 15px;
}

/* Search Field */

.search-popup-form {
  margin: 0;
}

.search-input-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px;
  border: 1px solid #d5e7db;
  border-radius: 18px;
  background-color: #ffffff;
  box-shadow: 0 12px 25px rgba(15, 61, 34, 0.08);
  transition:
    border-color 0.25s ease,
    box-shadow 0.25s ease;
}

.search-input-wrapper:focus-within {
  border-color: #0ca845;
  box-shadow:
    0 14px 28px rgba(15, 61, 34, 0.1),
    0 0 0 4px rgba(12, 168, 69, 0.1);
}

.search-input-icon {
  margin-left: 12px;
  color: #0b8b36;
  font-size: 18px;
}

.search-input-wrapper input {
  flex: 1;
  min-width: 0;
  height: 48px;
  border: 0;
  outline: 0;
  color: #1e293b;
  font-size: 16px;
  background: transparent;
}

.search-input-wrapper input::placeholder {
  color: #94a3b8;
}

.search-submit-btn {
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 22px;
  border: 0;
  border-radius: 12px;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  background: linear-gradient(135deg, #087625, #0ca845);
  cursor: pointer;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.search-submit-btn:hover {
  transform: translateX(3px);
  box-shadow: 0 9px 18px rgba(8, 118, 37, 0.22);
}

/* Suggested Links */

.search-popup-suggestions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}

.search-popup-suggestions span {
  color: #64748b;
  font-size: 13px;
  font-weight: 600;
}

.search-popup-suggestions a {
  padding: 6px 11px;
  color: #087625;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  border: 1px solid #ccebd6;
  border-radius: 30px;
  background-color: #f0fdf4;
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    transform 0.2s ease;
}

.search-popup-suggestions a:hover {
  color: #ffffff;
  background-color: #087625;
  transform: translateY(-2px);
}

/* Responsive */

@media (max-width: 575.98px) {
  .search-popup {
    padding: 14px;
  }

  .search-popup-content {
    padding: 48px 18px 26px;
    border-radius: 20px;
  }

  .search-input-wrapper {
    padding: 6px;
  }

  .search-submit-btn {
    width: 48px;
    padding: 0;
  }

  .search-submit-btn span {
    display: none;
  }

  .search-popup-heading p {
    font-size: 14px;
  }
}


/* Breadcrumb */

.page-banner {
  position: relative;
  min-height: 230px;
  margin-top: -26px;
  background:linear-gradient(90deg, rgb(17 48 52 / 37%), rgb(8 128 160 / 82%)), url(../image/bg-banner.png) center / cover no-repeat;
  display: flex;
  background-attachment: fixed;
  align-items: center;
  overflow: hidden;
}

.banner-content {
  width: 100%;
  max-width: 1420px;
  margin: 0 auto;
  padding: 0 70px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}

.banner-content h1 {
  margin: 0;
  color: #fff;
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 0.3px;
}

.breadcrumb {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
}

.breadcrumb a {
  color: #fff;
  text-decoration: none;
}

.breadcrumb span:last-child {
  color: #ffe600;
}

@media (max-width: 768px) {
  .page-banner {
    min-height: 190px;
  }

  .banner-content {
    padding: 0 24px;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }

  .banner-content h1 {
    font-size: 34px;
  }

  .breadcrumb {
    font-size: 16px;
  }
}


/* inner page side menu */

.about-menu-box {
  width: 100%;
  background: linear-gradient(45deg, #ffffff, #ffffffc9), url(../image/footer-2.jpg) center;
  padding: 21px 12px 21px;
  border-top: 5px solid #ff6900;
  border-bottom: 5px solid #ff6900;
  border-radius: 24px;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.about-menu-box h2 {
  margin: 0;
  color: #454647;
  font-size: 1.25rem; line-height: 1.3; word-break: break-word; overflow-wrap: break-word;
  font-weight: 600;
}

.title-line {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 12px 0 14px 2px;
  width: 120px;
}

.title-line span {
  height: 2px;
  flex: 1;
  background: #ff6900;
}

.title-line i {
  width: 8px;
  height: 8px;
  background: #ff6900;
  transform: rotate(45deg);
  display: block;
}

.about-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.about-menu li {
  border-bottom: 1px dotted #bbb;
}

.about-menu li a {
  position: relative;
  display: block;
  padding: 5px 8px 5px 31px;
  color: #000000;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s ease;
}

.about-menu li a::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  border-left: 7px solid #1646b6;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
}

.about-menu li a:hover {
  color: #ff6900;
  padding-left: 36px;
}

.about-menu li a:hover::before {
  border-left-color: #ff6900;
}

@media (max-width: 480px) {
  .about-menu-box {
    width: 100%;
  }

  .about-menu-box h2 {
    font-size: 28px;
  }

  .about-menu li a {
    font-size: 18px;
  }
}

.inner-title h2.sectoral-heading {
    font-size: 2.2rem;
    text-align: center;
}


.description p{
  text-align: justify;
  font-size: 1rem;
  font-weight: 500;
}

/* ==========================================================================
   ── MODERN SEARCH RESULTS PAGE STYLING ──
   ========================================================================== */

/* Container & Layout */
main [class*="layout-content"],
main .layout-content,
.search-results-page-container {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
}

/* Search Form Card */
form.search-form {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 12px;
  background: #ffffff;
  padding: 24px;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(8, 29, 91, 0.04);
  border: 1.5px solid rgba(216, 232, 243, 0.7);
  margin: 32px auto 48px auto;
  max-width: 850px;
}

/* Fix wrapper that Drupal puts around inputs inside the form */
form.search-form > .form-item,
form.search-form > .js-form-item {
  margin: 0 !important;
  flex: 1 1 auto;
}

/* Text Input Field */
form.search-form input[type="search"],
form.search-form input[type="text"].form-search,
form.search-form input[type="text"].form-text {
  width: 100% !important;
  height: 54px !important;
  padding: 0 24px !important;
  font-family: Inter, sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: var(--navy) !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(200, 221, 237, 0.8) !important;
  border-radius: 30px !important;
  box-shadow: inset 0 2px 4px rgba(8, 29, 91, 0.02) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  outline: none !important;
}

form.search-form input[type="search"]:focus,
form.search-form input[type="text"].form-search:focus,
form.search-form input[type="text"].form-text:focus {
  border-color: var(--blue) !important;
  box-shadow: 0 0 0 4px rgba(20, 91, 216, 0.15) !important;
  background-color: #ffffff !important;
}

/* Submit Actions Wrapper */
form.search-form .form-actions {
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
}

/* Submit Button */
form.search-form input[type="submit"],
form.search-form .form-submit {
  height: 54px !important;
  padding: 0 32px !important;
  border-radius: 30px !important;
  background: linear-gradient(135deg, var(--green) 0%, #177a06 100%) !important;
  color: #ffffff !important;
  font-family: Montserrat, Inter, sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border: none !important;
  box-shadow: 0 8px 20px rgba(22, 109, 5, 0.2) !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

form.search-form input[type="submit"]:hover,
form.search-form .form-submit:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 24px rgba(22, 109, 5, 0.3) !important;
  filter: brightness(1.08) !important;
}

form.search-form input[type="submit"]:active,
form.search-form .form-submit:active {
  transform: translateY(0) !important;
}

/* Search results block title */
main h2:has(+ .search-results),
main h2:has(+ .node-results),
.search-results-title {
  font-family: Montserrat, Inter, sans-serif !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  color: var(--navy) !important;
  margin-top: 48px !important;
  margin-bottom: 24px !important;
  max-width: 850px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  border: none !important;
  padding: 0 !important;
}

main h2:has(+ .search-results)::before,
main h2:has(+ .node-results)::before,
.search-results-title::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 24px;
  background: var(--orange);
  border-radius: 4px;
}

/* Results Container */
.search-results {
  max-width: 850px !important;
  margin: 0 auto 56px auto !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}

/* Card item */
.search-results__item {
  position: relative !important;
  background: #ffffff !important;
  border-radius: 18px !important;
  padding: 28px 30px !important;
  box-shadow: 0 6px 20px rgba(8, 29, 91, 0.02) !important;
  border: 1.5px solid rgba(216, 232, 243, 0.6) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  margin-block-end: 0 !important;
  overflow: hidden;
}

/* Remove default Olivero list bottom-line separator */
.search-results__item::after {
  display: none !important;
}

/* Hover Card State */
.search-results__item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 40px rgba(8, 29, 91, 0.08) !important;
  border-color: rgba(20, 91, 216, 0.25) !important;
}

/* Rearrange search element display order via flex */
.search-results__item .search-result__title {
  order: 1 !important;
}
.search-results__item .search-result__snippet {
  order: 2 !important;
}
.search-results__item .search-result__meta {
  order: 3 !important;
}

/* Search Title Override */
.search-result__title {
  font-family: Montserrat, Inter, sans-serif !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}

.search-result__title a {
  color: var(--navy) !important;
  text-decoration: none !important;
  background-image: none !important;
  background: transparent !important;
  transition: color 0.2s ease !important;
  padding-bottom: 0 !important;
}

.search-result__title a:hover {
  color: var(--blue) !important;
}

/* Search Snippet (Preview) */
.search-result__snippet {
  font-family: Inter, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: #3b4e78 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Highlight matching terms */
.search-result__snippet strong,
.search-result__snippet em,
.search-result__snippet mark {
  color: var(--orange-dark) !important;
  background: rgba(255, 118, 0, 0.06) !important;
  padding: 1px 5px !important;
  border-radius: 4px !important;
  font-style: normal !important;
  font-weight: 700 !important;
}

/* Search metadata tags list */
.search-result__meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 16px !important;
  font-family: Inter, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #556885 !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  background: #f6f9fc !important;
  border-radius: 12px !important;
  border: 1px solid rgba(216, 232, 243, 0.5) !important;
  margin-top: 6px !important;
}

.search-result__meta a {
  color: var(--blue) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.search-result__meta a:hover {
  text-decoration: underline !important;
}

/* Style meta elements wrapper and remove commas if present */
.search-result__author-wrapper,
.search-result__date-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.search-result__author-wrapper i,
.search-result__date-wrapper i {
  color: var(--green) !important;
  font-size: 13px !important;
}

/* Responsive adjustment */
@media (max-width: 767.98px) {
  form.search-form {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 16px !important;
  }
  
  form.search-form input[type="submit"],
  form.search-form .form-submit {
    width: 100% !important;
  }
  
  .search-results__item {
    padding: 20px !important;
    gap: 10px !important;
  }
  
  .search-result__title {
    font-size: 18px !important;
  }
}

/* Hide Search Help link ("About searching") */
.search-help-link,
#search-form .search-help-link {
  display: none !important;
}

/* Inner Page Banner Blur Overlay */
.banner-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(2.5px);
  -webkit-backdrop-filter: blur(2.5px);
  z-index: 1;
}

/* Sidebar Menu Active State Highlight */
.about-menu li a.active {
  color: #ff6900 !important;
  padding-left: 36px;
  font-weight: 700 !important;
}

.about-menu li a.active::before {
  border-left-color: #ff6900 !important;
}

/* Sidebar and Content columns spacing gap management */
@media (min-width: 992px) {
  .sectors-section .sidebar-column {
    padding-right: 36px !important;
  }
  .sectors-section .content-column {
    padding-left: 36px !important;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .sectors-section .sidebar-column {
    padding-right: 24px !important;
  }
  .sectors-section .content-column {
    padding-left: 24px !important;
  }
}

/* Override grid-full display to block so Bootstrap columns flow correctly */
.grid-full {
  display: block !important;
}

/* ==========================================================================
   SITEMAP PAGE STYLING (Premium Dashboard Layout)
   ========================================================================== */
.sitemap {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 30px;
  margin: 40px 0 70px;
}

.sitemap-item {
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(8, 29, 91, 0.04);
  border: 1px solid rgba(216, 232, 243, 0.85);
  padding: 35px;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.sitemap-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--orange) 0%, var(--orange-dark) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.sitemap-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(8, 29, 91, 0.08);
  border-color: rgba(255, 118, 0, 0.3);
}

.sitemap-item:hover::before {
  opacity: 1;
}

/* Section Header Typography */
.sitemap-item h2 {
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-size: 21px;
  font-weight: 700;
  color: var(--navy);
  margin-top: 0;
  margin-bottom: 25px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--soft);
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}

.sitemap-item h2::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 45px;
  height: 2px;
  background-color: var(--orange);
}

/* FontAwesome Icons for Card Headings */
.sitemap-item--frontpage h2::before {
  content: "\f015";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--orange);
  font-size: 19px;
}

.sitemap-item--menu-main h2::before {
  content: "\f00a";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--orange);
  font-size: 18px;
}

.sitemap-item--menu-quick-links h2::before {
  content: "\f0c1";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--orange);
  font-size: 18px;
}

.sitemap-item--menu-footer h2::before {
  content: "\f14d";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--orange);
  font-size: 18px;
}

/* List Structure & Links styling */
.sitemap-item ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.sitemap-item li {
  position: relative;
  margin-bottom: 14px;
  padding-left: 24px;
}

.sitemap-item li::before {
  content: "\f105"; /* angle-right */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 4px;
  top: 3px;
  color: var(--orange);
  font-size: 14px;
  transition: all 0.2s ease;
}

.sitemap-item li:hover > ::before {
  color: var(--orange-dark);
  transform: translateX(3px);
}

.sitemap-item a {
  color: var(--navy);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.45;
  transition: all 0.2s ease;
  display: inline-block;
}

.sitemap-item a:hover {
  color: var(--orange);
}

/* Multi-level Navigation Nesting */
.sitemap-item li ul {
  margin-top: 10px;
  margin-bottom: 5px;
  padding-left: 12px;
  border-left: 1px dashed var(--line);
}

.sitemap-item li ul li {
  margin-bottom: 10px;
}

.sitemap-item li ul li::before {
  content: "\f101"; /* angle-double-right or smaller caret */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 11px;
  top: 4px;
  color: var(--blue);
}

.sitemap-item li ul li ul li::before {
  content: "\f111"; /* circle */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 6px;
  top: 8px;
  color: #aab2c5;
}

/* Grid columns & spans for Dashboard presentation */
@media (min-width: 992px) {
  .sitemap-item--menu-main {
    grid-column: span 8;
    grid-row: span 3;
  }
  .sitemap-item--frontpage {
    grid-column: span 4;
  }
  .sitemap-item--menu-quick-links {
    grid-column: span 4;
  }
  .sitemap-item--menu-footer {
    grid-column: span 4;
  }
}

@media (max-width: 991.98px) {
  .sitemap-item {
    grid-column: span 12;
  }
}

/* Frontpage card specific styling */
.sitemap-item--frontpage div {
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: flex-start;
}

.sitemap-item--frontpage a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  background: var(--soft);
  border-radius: 8px;
  font-weight: 600;
  color: var(--navy);
  border: 1px solid var(--line);
  transition: all 0.2s ease;
  width: 100%;
}

.sitemap-item--frontpage a:hover {
  background: #ffffff;
  border-color: var(--orange);
  color: var(--orange-dark);
  box-shadow: 0 5px 15px rgba(255, 118, 0, 0.08);
}

.sitemap-item--frontpage a::before {
  display: none; /* Hide standard bullet list arrow for primary links */
}

/* RSS feed badge enhancement */
.sitemap-item--frontpage a[href*="rss.xml"] {
  background: #fff3eb;
  border-color: #ffd8c2;
  color: var(--orange-dark);
}

.sitemap-item--frontpage a[href*="rss.xml"]:hover {
  background: #ffffff;
  border-color: var(--orange);
  color: var(--orange);
}

.sitemap-item--frontpage a[href*="rss.xml"]::before {
  display: inline-block;
  content: "\f09e"; /* rss icon */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--orange-dark);
  font-size: 14px;
}

.sitemap-item--frontpage a[href*="rss.xml"] img {
  display: none; /* Hide default raw feed-small.png icon */
}

/* Reset Drupal's default menu "leaf" class collision */
.sitemap li.leaf,
.sitemap .leaf {
  position: relative !important;
  display: list-item !important;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
  background: none !important;
  filter: none !important;
  transform: none !important;
  inset: auto !important;
  opacity: 1 !important;
  box-shadow: none !important;
  z-index: auto !important;
  margin: 0 0 14px 0 !important;
  padding: 0 0 0 24px !important;
}

.sitemap li.leaf::after,
.sitemap .leaf::after {
  display: none !important;
}

/* Remove default focus outline and shadow on website search popup input */
#websiteSearchInput,
#websiteSearchInput:focus,
#websiteSearchInput:focus-visible,
.search-input-wrapper input,
.search-input-wrapper input:focus,
.search-input-wrapper input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Custom Industrial Sectors table styling */
.sectors-table-card {
  border-radius: 18px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid var(--line);
  box-shadow: 0 10px 30px rgba(22, 68, 120, 0.04);
}

.sectors-table th {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.9rem;
  letter-spacing: 0.2px;
}

.sectors-table td {
  border-bottom: 1px solid var(--line);
}

.sectors-table tr:last-child td {
  border-bottom: none;
}

.sector-table-desc {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  height: 2.46rem;
}

/* Learn more links inside the table matching the custom color branding */
.learn-link-table {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 0.8rem;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: gap 0.2s;
  text-decoration: none;
}
.learn-link-table:hover {
  gap: 10px;
}

.learn-link-orange { color: var(--orange) !important; }
.learn-link-green  { color: var(--green) !important; }
.learn-link-navy   { color: var(--navy) !important; }
.learn-link-gold   { color: #B8860B !important; }
.learn-link-red    { color: #C62828 !important; }
.learn-link-teal   { color: #00796B !important; }

/* Responsive table styling for smaller screens */
@media (max-width: 768px) {
  .sectors-table thead {
    display: none;
  }
  .sectors-table, .sectors-table tbody, .sectors-table tr, .sectors-table td {
    display: block;
    width: 100%;
  }
  .sectors-table tr {
    border-bottom: 1px solid var(--line);
    padding: 15px 0;
  }
  .sectors-table td {
    border: none;
    padding: 8px 16px !important;
    text-align: left !important;
  }
  .sectors-table td::before {
    content: attr(data-label);
    display: block;
    font-weight: 700;
    color: var(--navy);
    font-size: 0.8rem;
    text-transform: uppercase;
    margin-bottom: 4px;
    font-family: 'Montserrat', sans-serif;
  }
  .sectors-table td[data-label="Sector"]::before {
    display: none;
  }
  .sectors-table td[data-label="Sector"] {
    padding-top: 12px !important;
  }
}

/* Custom World-Class Webform Theme Integration */
.webform-submission-form {
  max-width: 800px;
  margin: 40px auto;
  background: #ffffff;
  border-radius: 20px;
  border: 0.8px solid #edf2fb;
  box-shadow: 0 10px 30px rgba(8, 29, 91, 0.04) !important;
  padding: 40px;
}
.webform-submission-form .form-item {
  margin-bottom: 24px;
}
.webform-submission-form label {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.88rem !important;
  color: #081d5b !important;
  margin-bottom: 8px !important;
  display: block;
}
.webform-submission-form .form-required::after {
  color: #e53935;
  content: " *";
  font-weight: 700;
}
.webform-submission-form input[type="text"],
.webform-submission-form input[type="email"],
.webform-submission-form input[type="url"],
.webform-submission-form input[type="file"],
.webform-submission-form select {
  width: 100%;
  font-family: 'Inter', sans-serif;
  font-size: 0.88rem;
  color: #081d5b;
  background-color: #f7fbfe;
  border: 1.2px solid #d8e8f3;
  border-radius: 30px;
  padding: 10px 20px;
  transition: all 0.25s ease;
}
.webform-submission-form textarea {
  width: 100%;
  font-family: 'Inter', sans-serif;
  font-size: 0.88rem;
  color: #081d5b;
  background-color: #f7fbfe;
  border: 1.2px solid #d8e8f3;
  border-radius: 16px;
  padding: 12px 20px;
  transition: all 0.25s ease;
}
.webform-submission-form input:focus,
.webform-submission-form select:focus,
.webform-submission-form textarea:focus {
  outline: none;
  border-color: #ff7600;
  background-color: #ffffff;
  box-shadow: 0 0 0 4px rgba(255, 118, 0, 0.15);
}
.webform-submission-form input[type="submit"],
.webform-submission-form button[type="submit"],
.webform-submission-form .webform-button--submit {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  background: linear-gradient(180deg, #ff9700 0%, #ff6400 100%) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 50px !important;
  padding: 12px 36px !important;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 4px 12px rgba(255, 100, 0, 0.25);
  display: inline-block;
  margin-top: 10px;
}
.webform-submission-form input[type="submit"]:hover,
.webform-submission-form button[type="submit"]:hover,
.webform-submission-form .webform-button--submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(255, 100, 0, 0.35) !important;
}
.webform-submission-form .description {
  font-size: 0.8rem;
  color: #7b889b;
  margin-top: 4px;
}

/* Premium Basic Page (.node--type-page) Tables and Lists Styling */
.node--type-page table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 30px 0 !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(8, 29, 91, 0.03) !important;
  border: 1px solid #edf2fb !important;
}
.node--type-page table th {
  background-color: #081d5b !important;
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  padding: 14px 20px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border: none !important;
}
.node--type-page table td {
  padding: 14px 20px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.88rem !important;
  color: #556080 !important;
  border-bottom: 1px solid #edf2fb !important;
  vertical-align: middle !important;
}
.node--type-page table tr:hover td {
  background-color: #f7fbfe !important;
}
.node--type-page table a {
  color: #ff7600 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}
.node--type-page table a:hover {
  color: #ff9700 !important;
  text-decoration: underline !important;
}
.node--type-page ul {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 24px 0 !important;
}
.node--type-page li {
  position: relative !important;
  padding-left: 0px !important;
  /*margin-bottom: 14px !important;*/
  font-family: 'Inter', sans-serif !important;
  font-size: 1rem !important;
  color: #3b4b72 !important;
  line-height: 1.6 !important;
  background: none !important;
  background-image: none !important;
}
.node--type-page li::before {
  /*content: "\f15c" !important;*/
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 0 !important;
  top: 4px !important;
  color: #ff7600 !important; /* Theme orange */
  font-size: 15px !important;
  transition: transform 0.2s ease !important;
  background: none !important;
  background-image: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
.node--type-page li:hover::before {
  transform: scale(1.2);
}
.node--type-page li a {
  color: #081d5b !important;
  display: flex;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border-bottom: 1px dashed rgba(8, 29, 91, 0.3) !important;
  transition: all 0.2s ease !important;
  padding-bottom: 1px;
}
.node--type-page li a:hover {
  color: #ff7600 !important;
  border-bottom-color: #ff7600 !important;
}

/* Premium styling for H3 and H4 inside node pages */
.node--type-page .node__content h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.35rem !important;
  color: #081d5b !important;
  margin-top: 36px !important;
  margin-bottom: 18px !important;
  position: relative !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid #e5f1fa !important;
}
.node--type-page .node__content h3::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -2px !important;
  width: 50px !important;
  height: 2px !important;
  background: #ff7600 !important;
}
.node--type-page .node__content h4 {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.08rem !important;
  color: #145bd8 !important;
  margin-top: 28px !important;
  margin-bottom: 14px !important;
}

/* Cross Sectoral Technology Grid & Cards (Node 53) */
.cross-sector-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 28px;
  margin-top: 20px;
}
.cross-sector-card {
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(8, 29, 91, 0.04);
  border: 1px solid #edf4f9;
  border-top: 4px solid #145bd8; /* Blue accent */
  padding: 24px;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}
.cross-sector-card::after {
  content: "\f0ad"; /* Wrench / Technology Icon */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 16px;
  bottom: 16px;
  font-size: 80px;
  color: rgba(20, 91, 216, 0.03);
  pointer-events: none;
  transition: all 0.3s ease;
}
.cross-sector-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 35px rgba(20, 91, 216, 0.12);
  border-color: rgba(20, 91, 216, 0.2);
}
.cross-sector-card:hover::after {
  transform: scale(1.1) rotate(-10deg);
  color: rgba(20, 91, 216, 0.06);
}
.cross-sector-card h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #081d5b !important;
  margin-top: 0 !important;
  margin-bottom: 14px !important;
  line-height: 1.4 !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
}
.cross-sector-card h3::after {
  display: none !important;
}
.cross-sector-card p {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.88rem !important;
  color: #556080 !important;
  line-height: 1.6 !important;
  margin-bottom: 16px !important;
}
.cross-sector-card h4.companyname {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  color: #ff7600 !important; /* Theme orange */
  margin-top: auto !important;
  margin-bottom: 8px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
.cross-sector-card h4.companyname + p {
  background: #f8fbff;
  border-radius: 8px;
  padding: 12px 14px;
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  border: 1px solid #e8eff6;
  font-size: 0.84rem !important;
  color: #4a546e !important;
}

/* Best Practices Compendium Downloads (Node 54) */
article[data-history-node-id="54"] ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 24px !important;
}
article[data-history-node-id="54"] li {
  background: #ffffff !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 25px rgba(8, 29, 91, 0.04) !important;
  border: 1px solid #edf4f9 !important;
  border-top: 4px solid #ff7600 !important; /* Orange accent */
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  transition: all 0.3s ease !important;
}
article[data-history-node-id="54"] li:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 30px rgba(255, 118, 0, 0.12) !important;
  border-color: rgba(255, 118, 0, 0.2) !important;
}
article[data-history-node-id="54"] li::before {
  display: none !important;
}
article[data-history-node-id="54"] li a {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  color: #081d5b !important;
  font-size: 0.96rem !important;
  line-height: 1.5 !important;
  border-bottom: none !important;
}
article[data-history-node-id="54"] li::after {
  content: "\f56d  Download Compendium PDF" !important;
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  color: #145bd8 !important;
  font-size: 0.82rem !important;
  margin-top: 16px !important;
  display: inline-block !important;
  transition: color 0.2s ease !important;
}
article[data-history-node-id="54"] li:hover::after {
  color: #ff7600 !important;
}

/* Style PAT Document lists rendered as paragraphs (Nodes 55, 56, 57, 58, 70, 71) */
article[data-history-node-id="55"] .node__content p,
article[data-history-node-id="56"] .node__content p,
article[data-history-node-id="57"] .node__content p,
article[data-history-node-id="58"] .node__content p,
article[data-history-node-id="70"] .node__content p,
article[data-history-node-id="71"] .node__content p {
  position: relative !important;
  padding-left: 28px !important;
  margin-bottom: 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.92rem !important;
  color: #fff !important;
  line-height: 1.6 !important;
  background: none !important;
  background-image: none !important;
}
article[data-history-node-id="55"] .node__content p::before,
article[data-history-node-id="56"] .node__content p::before,
article[data-history-node-id="57"] .node__content p::before,
article[data-history-node-id="58"] .node__content p::before,
article[data-history-node-id="70"] .node__content p::before,
article[data-history-node-id="71"] .node__content p::before {
  content: "\f15c" !important; /* FontAwesome File Text/Doc Icon */
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 0 !important;
  top: 4px !important;
  color: #ff7600 !important; /* Theme orange */
  font-size: 15px !important;
  transition: transform 0.2s ease !important;
  background: none !important;
  background-image: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}
article[data-history-node-id="55"] .node__content p:hover::before,
article[data-history-node-id="56"] .node__content p:hover::before,
article[data-history-node-id="57"] .node__content p:hover::before,
article[data-history-node-id="58"] .node__content p:hover::before,
article[data-history-node-id="70"] .node__content p:hover::before,
article[data-history-node-id="71"] .node__content p:hover::before {
  transform: scale(1.2) !important;
}

/* Style PAT Document link items */
article[data-history-node-id="55"] .node__content p a,
article[data-history-node-id="56"] .node__content p a,
article[data-history-node-id="57"] .node__content p a,
article[data-history-node-id="58"] .node__content p a,
article[data-history-node-id="70"] .node__content p a,
article[data-history-node-id="71"] .node__content p a {
  color: #081d5b !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border-bottom: 1px dashed rgba(8, 29, 91, 0.3) !important;
  transition: all 0.2s ease !important;
  padding-bottom: 1px;
}
article[data-history-node-id="55"] .node__content p a:hover,
article[data-history-node-id="56"] .node__content p a:hover,
article[data-history-node-id="57"] .node__content p a:hover,
article[data-history-node-id="58"] .node__content p a:hover,
article[data-history-node-id="70"] .node__content p a:hover,
article[data-history-node-id="71"] .node__content p a:hover {
  color: #ff7600 !important;
  border-bottom-color: #ff7600 !important;
}

/* ==========================================================================
   UNIQUE REGISTRATION FORM STYLES
   ========================================================================== */
.unique-register-form-wrapper form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.unique-register-form-wrapper .form-item {
  margin-bottom: 0.85rem;
}

.unique-register-form-wrapper label {
  font-weight: 600 !important;
  color: #1e293b !important;
  font-size: 0.9rem !important;
  margin-bottom: 0.4rem !important;
  display: block;
}

.unique-register-form-wrapper label.option {
  font-weight: 500 !important;
}

.unique-register-form-wrapper input.form-control,
.unique-register-form-wrapper select.form-control,
.unique-register-form-wrapper textarea.form-control {
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 10px !important;
  padding: 0.7rem 1rem !important;
  font-size: 0.95rem !important;
  color: #0f172a !important;
  background-color: #f8fafc !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.unique-register-form-wrapper input.form-control:focus,
.unique-register-form-wrapper select.form-control:focus {
  border-color: #0891b2 !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(8, 145, 178, 0.15) !important;
  outline: none !important;
}

.unique-register-form-wrapper .description {
  font-size: 0.78rem !important;
  color: #64748b !important;
  margin-top: 0.35rem !important;
}

.unique-register-form-wrapper input[type="submit"].btn-primary,
.unique-register-form-wrapper button[type="submit"].btn-primary {
  background: linear-gradient(135deg, #05708a 0%, #0891b2 100%) !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 0.9rem 1.5rem !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: 0.3px !important;
  box-shadow: 0 10px 25px rgba(8, 145, 178, 0.25) !important;
  transition: all 0.3s ease !important;
  cursor: pointer;
}

.unique-register-form-wrapper input[type="submit"].btn-primary:hover,
.unique-register-form-wrapper button[type="submit"].btn-primary:hover {
  background: linear-gradient(135deg, #035368 0%, #06748f 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 30px rgba(8, 145, 178, 0.35) !important;
}

.unique-register-form-wrapper .form-type-password-confirm {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

@media (max-width: 768px) {
  .unique-register-form-wrapper .form-type-password-confirm {
    grid-template-columns: 1fr;
  }
}


.gov-logo-wrap img {
    width: auto;
}


.btn:hover {
    color: var(--bs-btn-hover-color) !important;
    background-color: var(--bs-btn-hover-bg);
    text-decoration:none !important;
    border-color: var(--bs-btn-hover-border-color);
}



.list-group-numbered>.list-group-item::before {
    content: none;
    counter-increment: section;
}


thead th {
    background: #06738d !important;
    font-size: 18px !important;
    color: #fff !important;
    border: 1px solid #fff;
    text-align: center !important;
}

td {
    text-align: center;
}

.forum-hero-actions a {
    color: #fff;
}


.field__items .field__item {
    margin: 15px;
    border-bottom: 1px solid #bbb;
    width: 45%;
    background: #e8f5ff;
    padding: 10px;
    border-radius: 10px;
}


table.table {
    border: 1px solid #bbb;
}

td {
    border: 1px solid #bbb !important;
}


.ksp-player-meta h2 {
    color: #fff;
}


.card.border-0.shadow-sm.rounded-4.p-4.mb-5.bg-white a {
    color: #000;
}


.card p {
    margin-top: 10px;
    line-height: 24px;
}

.card h5 {
    font-size: 18px;
}.newsletter-cover-wrapper img {
    transition: transform 0.5s ease;
    object-fit: contain;
}


.newsletter-cover-wrapper img {
    transition: transform 0.5s ease;
    object-fit: contain !important;
}



#block-ideeksha-content .wide-content.field.field--name-field-image.field--type-image.field--label-hidden.field__item {
    margin-inline-start: inherit;
}

#block-ideeksha-content .wide-content.field.field--name-field-image.field--type-image.field--label-hidden.field__item img {
    height: 250px;
    width: auto;
}

#block-ideeksha-content .text-content.clearfix.field.field--name-body.field--type-text-with-summary.field--label-hidden.field__item ul {
    list-style: disc !important;
}