﻿*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

/* Kill any top gap injected by WordPress, plugins, or browser defaults */
html, body { margin: 0 !important; padding: 0 !important; }
body > *:not(#wpadminbar) { margin-top: 0 !important; }
#main, main { margin: 0 !important; padding: 0 !important; }

    :root {
      --blue-primary: #1d4ed8;
      --blue-dark:    #1a3a8f;
      --blue-deeper:  #1e40af;
      --orange:       #f97316;
      --orange-dark:  #ea580c;
      --green-badge:  #15803d;
      --bg:           #e8edf2;
      --max-w:        1280px;
      --px:           clamp(12px, 3vw, 28px);
      --chrome-gap:   0;
    }

    html { scroll-behavior: smooth; }

    body {
      font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
      background: var(--bg);
      min-height: 100vh;
      overflow-x: hidden;
    }

    /* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
       SHARED CONTAINER â€” used by every full-width section
       so all content aligns to the same horizontal grid
    â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
    .site-container {
      max-width: var(--max-w);
      margin: 0 auto;
      padding-left:  var(--px);
      padding-right: var(--px);
    }

    /* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
       TICKER BAR
    â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
    .ticker-bar {
      background: #fff;
      border-bottom: 1px solid #d1d5db;
      height: clamp(26px, 4vw, 32px);
      overflow: hidden;
    }

    /* The inner wrapper constrains to the same grid */
    .ticker-bar .site-container {
      display: flex;
      align-items: stretch;
      height: 100%;
      /* no extra padding â€” already set by .site-container */
    }

    .ticker-label {
      background: var(--blue-primary);
      color: #fff;
      font-size: clamp(0.58rem, 1.2vw, 0.72rem);
      font-weight: 700;
      /* left side flush with --px, right side has chevron */
      padding: 0 clamp(8px, 1.5vw, 16px);
      display: flex;
      align-items: center;
      gap: 5px;
      white-space: nowrap;
      flex-shrink: 0;
      position: relative;
      z-index: 2;
      /* pull the label to the very left of the container */
      margin-left: calc(-1 * var(--px));
    }
    .ticker-label::after {
      content: '';
      position: absolute;
      right: -10px; top: 0; bottom: 0;
      width: 11px;
      background: var(--blue-primary);
      clip-path: polygon(0 0, 100% 50%, 0 100%);
    }
    .ticker-label .dot {
      width: 6px; height: 6px;
      border-radius: 50%;
      background: #fbbf24;
      animation: dotBlink 1.3s ease-in-out infinite;
      flex-shrink: 0;
    }
    @keyframes dotBlink { 0%,100%{opacity:1} 50%{opacity:.15} }

    .ticker-track {
      flex: 1;
      overflow: hidden;
      display: flex;
      align-items: center;
      padding-left: clamp(14px, 2vw, 22px);
    }
    .ticker-inner {
      display: inline-flex;
      white-space: nowrap;
      animation: tickerScroll 32s linear infinite;
    }
    .ticker-inner:hover { animation-play-state: paused; }
    @keyframes tickerScroll {
      0%   { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }
    .ticker-item {
      font-size: clamp(0.6rem, 1.3vw, 0.75rem);
      color: #111827;
      padding-right: clamp(18px, 3vw, 36px);
    }
    .ticker-item a { color: #111827; text-decoration: none; }
    .ticker-item a:hover { color: var(--blue-primary); text-decoration: underline; }
    .ticker-divider {
      color: #9ca3af;
      margin-right: clamp(18px, 3vw, 36px);
      font-weight: 700;
      font-size: clamp(0.58rem, 1.1vw, 0.68rem);
    }

    /* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
       SITE HEADER
    â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */
    .site-header {
      background: linear-gradient(90deg, #1a3a8f 0%, #1e4db7 40%, #2563eb 100%);
      padding: clamp(12px, 2vw, 20px) 0;
      margin: 0;
      display: block;
    }
    .site-header .site-container { padding-top: 0; padding-bottom: 0; }

    /* ══════════════════════════════
       SITE CHROME — ticker + header + navbar with ZERO gaps
    ══════════════════════════════ */
    .site-chrome {
      display: block;
      margin: 0;
      padding: 0;
      line-height: 0; /* collapse any whitespace text nodes */
      position: sticky;
      top: 0;
      z-index: 1000;
      box-shadow: 0 2px 16px rgba(0, 0, 0, 0.15);
    }
    .site-chrome .ticker-bar,
    .site-chrome .site-header,
    .site-chrome .navbar {
      display: block;
      margin: 0 !important;
      line-height: normal;
    }
    .site-chrome .ticker-bar  { border-bottom: 0; margin-bottom: 0 !important; }
    .site-chrome .site-header { border-bottom: 0; margin-bottom: 0 !important; }
    .site-chrome .navbar      { margin-top: 0 !important; }

    header.site-header { margin: 0 !important; margin-bottom: 0 !important; display: block; }
    nav.navbar         { margin: 0 !important; margin-top: 0 !important;    display: block; }

    main.site-main-wrap,
    .site-main-wrap {
      margin: 0;
      padding: 0;
      display: block;
    }
    .site-main-wrap > *:first-child { margin-top: 0; }
    .main-wrapper { margin: 0; padding: 0; }

    .header-inner {
      display: flex;
      align-items: center;
      gap: clamp(8px, 1.5vw, 14px);
    }

    /* Logo group */
    .header-logo {
      flex: 0 0 auto;
      display: flex;
      align-items: center;
      gap: clamp(10px, 1.6vw, 16px);
      text-decoration: none;
    }
  
    .logo-name {
      color: #fff;
      font-size: clamp(0.95rem, 2vw, 1.35rem);
      font-weight: 700;
      line-height: 1.2;
      font-family: 'Poppins', sans-serif;
    }
    .logo-name-sub {
      color: #bfdbfe;
      font-size: clamp(0.7rem, 1.2vw, 0.85rem);
      font-weight: 400;
    }

    /* Center marquee */
    .header-center {
      flex: 1;
      display: flex;
      align-items: center;
      overflow: hidden;
      padding: 0 clamp(10px, 1.5vw, 16px);
      border-left: 1px solid rgba(255,255,255,.22);
      border-right: 1px solid rgba(255,255,255,.22);
      min-width: 0;
    }
    .header-center-label {
      color: #bfdbfe;
      font-size: clamp(0.75rem, 1.3vw, 0.9rem);
      font-weight: 600;
      white-space: nowrap;
      margin-right: 10px;
      flex-shrink: 0;
    }
    .header-notice-track { overflow: hidden; flex: 1; min-width: 0; }
    .header-notice-inner {
      display: inline-block;
      white-space: nowrap;
      animation: headerMarquee 22s linear infinite;
      font-size: clamp(0.75rem, 1.3vw, 0.9rem);
      color: #e0eaff;
    }
    .header-notice-inner:hover { animation-play-state: paused; }
    @keyframes headerMarquee {
      0%   { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }

    /* Right: flag + clock */
    .header-right {
      flex: 0 0 auto;
      display: flex;
      align-items: center;
      gap: clamp(6px, 1vw, 10px);
    }
    .header-date-text { text-align: right; }
    .header-date-main {
      color: #e0eaff;
      font-size: clamp(0.75rem, 1.2vw, 0.88rem);
      font-weight: 600;
      white-space: nowrap;
    }
    .header-date-time {
      color: #bfdbfe;
      font-size: clamp(0.68rem, 1vw, 0.78rem);
      white-space: nowrap;
    }

    /* Mobile right group */
    .header-mobile-right {
      display: none;
      align-items: center;
      gap: 8px;
      margin-left: auto;
      flex-shrink: 0;
    }
    .mob-admission-btn {
      background: var(--orange);
      color: #fff;
      font-size: clamp(0.68rem, 2.2vw, 0.75rem);
      font-weight: 700;
      padding: clamp(4px, 1vw, 6px) clamp(10px, 2vw, 14px);
      border-radius: 4px;
      text-decoration: none;
      white-space: nowrap;
      border: none;
      cursor: pointer;
      font-family: 'Poppins', sans-serif;
      transition: background .18s;
      display: inline-flex;
      align-items: center;
    }
    .mob-admission-btn:hover { background: var(--orange-dark); }

    .burger-btn {
      background: rgba(255,255,255,.15);
      border: 1.5px solid rgba(255,255,255,.35);
      border-radius: 5px;
      padding: 5px 6px;
      cursor: pointer;
      color: #fff;
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
      transition: background .18s;
      line-height: 0;
    }
    .burger-btn:hover { background: rgba(255,255,255,.28); }

    /* Icon toggle via CSS class */
    .burger-btn .burger-icon-close { display: none; }
    .burger-btn.is-open .burger-icon-open  { display: none; }
    .burger-btn.is-open .burger-icon-close { display: block; }

    /* Responsive header */
    @media (max-width: 900px) {
      .header-right { display: none; }
    }
    @media (max-width: 640px) {
      .header-center { display: none; }
      .header-mobile-right { display: flex; }

      /* Shrink logo on mobile so name + burger both fit */
      .header-logo img { height: 44px !important; max-width: 44px !important; }
      .logo-name     { font-size: 0.82rem !important; }
      .logo-name-sub { font-size: 0.62rem !important; }
      .header-logo   { gap: 8px !important; }
    }
    @media (max-width: 400px) {
      /* Very small screens: keep name but make it tiny */
      .logo-name     { font-size: 0.68rem !important; line-height: 1.2; }
      .logo-name-sub { font-size: 0.54rem !important; }
      .header-logo img { height: 36px !important; max-width: 36px !important; }
    }


    /* ══════════════════════════════
       DESKTOP NAVBAR (index.html)
    ══════════════════════════════ */
    .navbar {
      background: #fff;
      border-bottom: 1px solid #e5e7eb;
      position: relative;
      z-index: 50;
      margin: 0;
      padding: 0;
      display: block;
      overflow: visible;
    }
    .navbar .site-container { padding-top: 0; padding-bottom: 0; }
    .nav-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      overflow: visible;
      min-height: 0;
    }
    .nav-links-group {
      display: flex;
      align-items: center;
      flex-wrap: nowrap;
      overflow: visible;
      scrollbar-width: none;
    }
    .nav-links-group::-webkit-scrollbar { display: none; }

    .nav-link {
      font-size: clamp(0.72rem, 1.1vw, 0.85rem);
      font-weight: 500;
      color: #111827;
      padding: clamp(9px, 1.5vw, 12px) clamp(7px, 1.2vw, 12px);
      display: inline-flex;
      align-items: center;
      gap: 2px;
      white-space: nowrap;
      text-decoration: none;
      cursor: pointer;
      transition: color .18s;
      line-height: 1;
      border: none;
      background: transparent;
      font-family: inherit;
    }
    .nav-link:hover { color: var(--blue-primary); }

    .nav-dropdown { position: relative; display: inline-block; vertical-align: top; }
    .nav-dropdown-menu {
      display: none;
      position: absolute;
      top: 100%;
      left: 0;
      background: #fff;
      border: 1px solid #e5e7eb;
      border-top: 2px solid var(--blue-primary);
      min-width: 178px;
      z-index: 200;
      box-shadow: 0 6px 20px rgba(0,0,0,.12);
      margin: 0;
      padding: 0;
      visibility: hidden;
      pointer-events: none;
    }
    .nav-dropdown:hover > .nav-dropdown-menu,
    .nav-dropdown:focus-within > .nav-dropdown-menu {
      display: block;
      visibility: visible;
      pointer-events: auto;
    }

    .nav-dropdown-link,
    .nav-dropdown-flyout-link {
      display: block;
      padding: 8px 14px;
      font-size: clamp(0.7rem, 1vw, 0.8rem);
      color: #374151;
      text-decoration: none;
      border-bottom: 1px solid #f3f4f6;
      transition: background .15s, color .15s;
    }
    .nav-dropdown-menu > .nav-dropdown-item:last-child > .nav-dropdown-link,
    .nav-dropdown-menu > .nav-dropdown-link:last-child { border-bottom: none; }
    .nav-dropdown-link:hover,
    .nav-dropdown-flyout-link:hover { background: #eff6ff; color: var(--blue-primary); }

    .nav-dropdown-item { position: relative; }
    .nav-dropdown-item.has-flyout > .nav-dropdown-link {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
    }
    .nav-flyout-arrow { flex-shrink: 0; opacity: .45; }

    .nav-dropdown-flyout {
      display: none;
      position: absolute;
      left: 100%;
      top: 0;
      min-width: 178px;
      background: #fff;
      border: 1px solid #e5e7eb;
      border-left: 2px solid var(--orange);
      box-shadow: 0 6px 20px rgba(0,0,0,.12);
      z-index: 210;
      margin: 0;
      padding: 0;
      visibility: hidden;
      pointer-events: none;
    }
    .nav-dropdown-item.has-flyout:hover > .nav-dropdown-flyout,
    .nav-dropdown-item.has-flyout:focus-within > .nav-dropdown-flyout {
      display: block;
      visibility: visible;
      pointer-events: auto;
    }

    .admission-btn {
      background: var(--blue-primary);
      color: #fff;
      font-size: clamp(0.7rem, 1.1vw, 0.82rem);
      font-weight: 600;
      padding: clamp(5px, 0.8vw, 7px) clamp(10px, 1.5vw, 16px);
      border-radius: 4px;
      text-decoration: none;
      white-space: nowrap;
      display: inline-block;
      transition: background .18s;
      margin-left: 4px;
      flex-shrink: 0;
    }
    .admission-btn:hover { background: var(--blue-deeper); }
    .admission-btn--green {
      background: #16a34a;
      box-shadow: 0 2px 10px rgba(22,163,74,.3);
    }
    .admission-btn--green:hover { background: #15803d; }
    .admission-btn--orange {
      background: #f97316;
      box-shadow: 0 2px 10px rgba(249,115,22,.35);
      display: inline-flex; align-items: center; gap: 5px;
    }
    .admission-btn--orange:hover { background: #ea580c; }

    .social-box {
      border: 1px solid #d1d5db;
      padding: clamp(3px, 0.5vw, 5px) clamp(7px, 1.2vw, 11px);
      font-size: clamp(0.65rem, 1vw, 0.74rem);
      color: #374151;
      font-weight: 500;
      display: flex;
      align-items: center;
      gap: clamp(4px, 0.8vw, 7px);
      background: #fff;
      white-space: nowrap;
      flex-shrink: 0;
    }
    .social-icon {
      width: clamp(20px, 2.4vw, 23px);
      height: clamp(20px, 2.4vw, 23px);
      border-radius: 3px;
      display: flex; align-items: center; justify-content: center;
      text-decoration: none; flex-shrink: 0;
    }

    @media (max-width: 640px) {
        .navbar,
        .site-chrome .navbar,
        nav.navbar { display: none !important; }
    }
    @media (max-width: 900px) { .social-label { display: none; } }


    /* ═══════════════════════════════════════
       MOBILE OVERLAY MENU
    ═══════════════════════════════════════ */
    #mobileOverlay {
      display: none;
      position: fixed;
      inset: 0;
      z-index: 999;
      background: #fff;
      flex-direction: column;
      overflow-y: auto;
    }
    #mobileOverlay.open { display: flex; }

    .mob-overlay-head {
      background: linear-gradient(90deg, #1a3a8f 0%, #2563eb 100%);
      padding: 10px 16px;
      display: flex;
      align-items: center;
      gap: 10px;
      flex-shrink: 0;
    }
    .mob-overlay-title {
      flex: 1;
      color: #fff;
      font-size: clamp(0.82rem, 3.5vw, 0.95rem);
      font-weight: 700;
      font-family: 'Poppins', sans-serif;
    }
    .mob-close-btn {
      background: rgba(255,255,255,.15);
      border: 1.5px solid rgba(255,255,255,.35);
      border-radius: 5px;
      width: 34px; height: 34px;
      display: flex; align-items: center; justify-content: center;
      cursor: pointer; color: #fff; flex-shrink: 0;
      transition: background .18s;
    }
    .mob-close-btn:hover { background: rgba(255,255,255,.28); }

    .mob-overlay-body { flex: 1; display: flex; flex-direction: column; }

    .mob-nav-item {
      display: flex; align-items: center; justify-content: space-between;
      padding: clamp(12px, 3vw, 15px) clamp(16px, 4vw, 22px);
      font-size: clamp(0.85rem, 3.5vw, 0.95rem);
      font-weight: 600;
      color: #111827;
      text-decoration: none;
      border-bottom: 1px solid #f1f3f5;
      cursor: pointer;
      transition: background .15s;
      background: #fff;
      border: none; width: 100%; text-align: left;
      font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
    }
    .mob-nav-item:hover { background: #f0f4ff; color: var(--blue-primary); }
    .mob-nav-item:not(:last-child) { border-bottom: 1px solid #f1f3f5; }
    .mob-nav-item .arr {
      width: 20px; height: 20px;
      display: flex; align-items: center; justify-content: center;
      border-radius: 50%;
      background: #f3f4f6;
      flex-shrink: 0;
      transition: transform .25s, background .2s;
    }
    .mob-nav-item.acc-open .arr { transform: rotate(90deg); background: #dbeafe; }

    .mob-submenu {
      display: none;
      background: #f8faff;
      border-bottom: 1px solid #e5e9f5;
    }
    .mob-submenu.open { display: block; }
    .mob-submenu a {
      display: block;
      padding: clamp(9px, 2.5vw, 12px) clamp(16px, 4vw, 22px) clamp(9px, 2.5vw, 12px) clamp(30px, 7vw, 40px);
      font-size: clamp(0.78rem, 3.2vw, 0.84rem);
      color: #374151;
      text-decoration: none;
      border-bottom: 1px solid #eef0f7;
      transition: background .15s;
    }
    .mob-submenu a:last-child { border-bottom: none; }
    .mob-submenu a:hover { background: #eff6ff; color: var(--blue-primary); }

    .mob-overlay-footer {
      flex-shrink: 0;
      padding: clamp(14px, 3vw, 18px) clamp(16px, 4vw, 22px) clamp(20px, 5vw, 28px);
      border-top: 2px solid #f1f3f5;
      background: #fff;
    }
    .mob-social-row {
      display: flex; align-items: center; gap: 10px;
      margin-bottom: 14px;
    }
    .mob-social-label { font-size: clamp(0.68rem, 2.5vw, 0.74rem); color: #6b7280; font-weight: 500; }
    .mob-social-icon {
      width: 32px; height: 32px; border-radius: 5px;
      display: flex; align-items: center; justify-content: center;
      text-decoration: none;
    }
    .mob-admission-full {
      display: block; width: 100%;
      background: linear-gradient(90deg, #f97316 0%, #ea580c 100%);
      color: #fff; text-align: center;
      font-size: clamp(0.88rem, 3.5vw, 1rem);
      font-weight: 700;
      padding: clamp(12px, 3vw, 14px) 0;
      border-radius: 6px;
      text-decoration: none; letter-spacing: 0.03em;
      font-family: 'Poppins', sans-serif;
      box-shadow: 0 3px 10px rgba(249,115,22,.3);
      transition: opacity .18s;
    }
    .mob-admission-full:hover { opacity: 0.92; }

    /* ═══════════════════════════════════════
       MAIN LAYOUT
    ═══════════════════════════════════════ */
    .main-wrapper { background: var(--bg); margin: 0; padding: 0; }
    .main-row {
      display: flex;
      gap: clamp(8px, 1.2vw, 12px);
      align-items: stretch;
    }
    .col-carousel { flex: 0 0 63%; min-width: 0; }
    .col-sidebar  { flex: 1; display: flex; flex-direction: column; min-width: 0; }

    @media (max-width: 768px) {
      .main-row     { flex-direction: column; gap: 8px; }
      .col-carousel { flex: none; width: 100%; }
      .col-sidebar  {
        flex: none;
        width: 100%;
        height: auto;
        min-height: 0;
        max-height: none;
        overflow: visible;
      }
    }

    /* ═══════════════════════════════════════
       CAROUSEL
    ═══════════════════════════════════════ */
    .carousel-wrap { position: relative; overflow: hidden; background: #000; border-radius: 3px; }
    .carousel-track { display: flex; transition: transform .6s cubic-bezier(.4,0,.2,1); }
    .carousel-slide { min-width: 100%; position: relative; overflow: hidden; }
    .carousel-slide img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
    .carousel-slide::after {
      content: ''; position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(0,0,0,.75) 0%, rgba(0,0,0,.1) 45%, transparent 70%);
      pointer-events: none;
    }
    .carousel-caption {
      position: absolute;
      bottom: clamp(10px, 2.5vw, 18px);
      left: clamp(10px, 2.5vw, 16px);
      right: clamp(10px, 2.5vw, 16px);
      color: #fff;
      font-weight: 800;
      font-size: clamp(0.78rem, 2.5vw, 1.5rem);
      z-index: 2;
      text-shadow: 0 2px 10px rgba(0,0,0,.85);
      line-height: 1.25;
    }
    .carousel-slide { height: clamp(185px, 40vw, 420px); }

    .carousel-arrow {
      position: absolute; top: 50%; transform: translateY(-50%);
      width: clamp(26px, 3.5vw, 34px);
      height: clamp(26px, 3.5vw, 34px);
      background: rgba(255,255,255,.18);
      border: 1.5px solid rgba(255,255,255,.45);
      color: #fff; border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      cursor: pointer; z-index: 5; transition: background .2s; user-select: none;
    }
    .carousel-arrow:hover { background: rgba(255,255,255,.35); }
    .carousel-arrow.left  { left: clamp(6px, 1.2vw, 10px); }
    .carousel-arrow.right { right: clamp(6px, 1.2vw, 10px); }
    .carousel-dots {
      position: absolute; bottom: clamp(6px, 1.5vw, 10px); left: 50%; transform: translateX(-50%);
      display: flex; gap: 5px; z-index: 4;
    }
    .carousel-dot {
      width: clamp(6px, 1vw, 8px); height: clamp(6px, 1vw, 8px);
      border-radius: 50%;
      background: rgba(255,255,255,.45); cursor: pointer; transition: background .2s;
    }
    .carousel-dot.on { background: #fff; }

    /* ═══════════════════════════════════════
       SIDEBAR
    ═══════════════════════════════════════ */
    .col-sidebar {
      display: flex;
      flex-direction: column;
    }
    @media (min-width: 769px) {
      .col-sidebar {
        /* Match carousel height on desktop */
        height: clamp(185px, 40vw, 420px);
        overflow: hidden;
      }
    }
    .sidebar-blue {
      background: var(--blue-primary);
      color: #fff;
      padding: clamp(12px, 2vw, 18px) clamp(12px, 2vw, 16px) clamp(10px, 1.8vw, 14px);
      flex: 1;
      min-height: 0;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    .sidebar-blue::-webkit-scrollbar { width: 4px; }
    .sidebar-blue::-webkit-scrollbar-track { background: var(--blue-deeper); }
    .sidebar-blue::-webkit-scrollbar-thumb { background: rgba(255,255,255,.3); border-radius: 2px; }
    .sidebar-title {
      font-size: clamp(0.78rem, 1.6vw, 0.94rem);
      font-weight: 800; line-height: 1.4;
      margin: 0 0 clamp(6px, 1.2vw, 10px); color: #fff;
      flex-shrink: 0;
    }
    .sidebar-text {
      font-size: clamp(0.68rem, 1.2vw, 0.76rem);
      line-height: 1.7; color: #dbeafe;
      margin: 0 0 clamp(6px, 1vw, 10px);
      flex: 1; min-height: 0;
      overflow: hidden;
      display: -webkit-box;
      -webkit-line-clamp: 5;
      -webkit-box-orient: vertical;
    }
    .sidebar-more {
      color: #fde68a;
      font-size: clamp(0.68rem, 1.2vw, 0.76rem);
      font-weight: 700; text-decoration: underline; text-underline-offset: 2px;
    }
    .sidebar-more-btn {
      display: inline-flex; align-items: center; gap: 6px;
      flex-shrink: 0;
      align-self: flex-start;
      background: rgba(255,255,255,.15);
      border: 1px solid rgba(255,255,255,.3);
      color: #fff;
      font-size: clamp(0.68rem, 1.2vw, 0.78rem);
      font-weight: 700;
      padding: 6px 13px;
      border-radius: 6px;
      text-decoration: none;
      transition: background .18s, border-color .18s, transform .15s;
    }
    .sidebar-more-btn:hover {
      background: rgba(255,255,255,.25);
      border-color: rgba(255,255,255,.5);
      transform: translateX(3px);
    }
    .sidebar-more-btn svg { flex-shrink: 0; transition: transform .15s; }
    .sidebar-more-btn:hover svg { transform: translateX(3px); }
    .sidebar-btns { display: flex; flex-shrink: 0; }
    .orange-btn {
      flex: 1; background: var(--orange); color: #fff;
      display: flex; flex-direction: column;
      align-items: center; justify-content: center;
      padding: clamp(10px, 2vw, 16px) clamp(8px, 1.5vw, 12px);
      cursor: pointer; text-decoration: none;
      transition: background .18s;
    }
    .orange-btn:first-child { border-right: 1px solid rgba(255,255,255,.2); }
    .orange-btn:hover { background: var(--orange-dark); }
    .orange-btn span { font-size: clamp(0.72rem, 1.3vw, 0.86rem); font-weight: 700; color: #fff; text-align: center; }

    @media (max-width: 768px) {
      .sidebar-blue { max-height: none; }
      .col-sidebar {
        height: auto;
        max-height: none;
        overflow: visible;
      }
      .col-sidebar .hqs-wrap {
        height: auto;
        min-height: 300px;
        flex: none;
        overflow: visible;
      }
    }

    * { scrollbar-width: thin; scrollbar-color: #9ca3af #f3f4f6; }

