    :root {
      --agm-blue: #102f72;
      --agm-deep: #071a3c;
      --agm-sky: #eaf4ff;
      --agm-gold: #f4b942;
      --agm-gold-light: #ffe6a3;
      --agm-red: #b72635;
      --agm-cream: #fffaf0;
      --agm-white: #ffffff;
      --agm-text: #26344c;
      --agm-muted: #66738c;
      --agm-radius: 24px;
      --agm-shadow: 0 22px 55px rgba(12, 41, 94, 0.15);
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      overflow-x: hidden;
      color: var(--agm-text);
      background:
        radial-gradient(circle at 10% 20%, rgba(244, 185, 66, 0.10), transparent 22%),
        radial-gradient(circle at 88% 60%, rgba(16, 47, 114, 0.09), transparent 25%),
        #f7faff;
      font-family: "Nunito", sans-serif;
    }

    img {
      max-width: 100%;
      display: block;
    }

    .agm-page {
      position: relative;
      isolation: isolate;
    }

    .agm-page::before,
    .agm-page::after {
      content: "";
      position: fixed;
      z-index: -1;
      width: 310px;
      height: 310px;
      border-radius: 50%;
      filter: blur(70px);
      opacity: .25;
      pointer-events: none;
    }

    .agm-page::before {
      top: 12%;
      left: -120px;
      background: #6ca9ff;
      animation: floatGlow 9s ease-in-out infinite;
    }

    .agm-page::after {
      right: -100px;
      bottom: 8%;
      background: #ffd46b;
      animation: floatGlow 11s ease-in-out infinite reverse;
    }

    @keyframes floatGlow {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-28px) scale(1.08); }
    }

    .agm-section {
      padding: 95px 0;
      position: relative;
    }

    .agm-section-soft {
      background:
        linear-gradient(135deg, rgba(255,255,255,.96), rgba(234,244,255,.96)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cg fill='none' stroke='%23102f72' stroke-opacity='.045'%3E%3Cpath d='M45 8v74M8 45h74'/%3E%3Ccircle cx='45' cy='45' r='24'/%3E%3C/g%3E%3C/svg%3E");
    }

    .agm-section-dark {
      color: #fff;
      overflow: hidden;
      background:
        radial-gradient(circle at 15% 15%, rgba(244,185,66,.18), transparent 28%),
        radial-gradient(circle at 88% 75%, rgba(67,127,255,.23), transparent 30%),
        linear-gradient(135deg, #06152f 0%, #0c2f6b 58%, #071a3c 100%);
    }

    .agm-section-dark::before {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      opacity: .28;
      background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
      background-size: 34px 34px;
    }

    .agm-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      margin-bottom: 16px;
      padding: 9px 16px;
      color: var(--agm-blue);
      border: 1px solid rgba(16,47,114,.14);
      border-radius: 999px;
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 26px rgba(16,47,114,.10);
      font-size: .9rem;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .agm-title {
      margin: 0;
      color: var(--agm-deep);
      font-family: "Archivo Black", sans-serif;
      font-size: clamp(2.05rem, 4vw, 4.4rem);
      line-height: 1.08;
      letter-spacing: -.035em;
    }

    .agm-section-dark .agm-title,
    .agm-section-dark .agm-subtitle {
      color: #fff;
    }

    .agm-title span {
      color: #071a3c;
    }

    .agm-subtitle {
      max-width: 820px;
      margin: 18px auto 0;
      color: var(--agm-muted);
      font-size: clamp(1.08rem, 1.5vw, 1.28rem);
      line-height: 1.85;
    }

    .agm-copy {
      color: #42506b;
      font-size: clamp(1.08rem, 1.35vw, 1.24rem);
      line-height: 1.9;
    }

    .agm-hero {
      min-height: 780px;
      display: flex;
      align-items: center;
      padding: 105px 0 90px;
      color: #fff;
      overflow: hidden;
      background:
        linear-gradient(110deg, rgba(4,18,47,.97) 0%, rgba(11,45,104,.92) 48%, rgba(13,38,79,.86) 100%),
        url("images/andhra-gospel-hero.jpg") center/cover no-repeat;
    }

    .agm-hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 78% 30%, rgba(244,185,66,.20), transparent 30%),
        linear-gradient(90deg, transparent 48%, rgba(255,255,255,.035) 49%, transparent 50%);
      background-size: auto, 48px 48px;
    }

    .agm-hero-content {
      position: relative;
      z-index: 2;
    }

    .agm-hero-kicker {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 10px 17px;
      border: 1px solid rgba(255,255,255,.18);
      border-radius: 999px;
      background: rgba(255,255,255,.09);
      backdrop-filter: blur(10px);
      font-size: .92rem;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .agm-hero h1 {
      max-width: 760px;
      margin: 23px 0;
      font-family: "Archivo Black", sans-serif;
      font-size: clamp(2.8rem, 6vw, 6rem);
      line-height: 1.02;
      letter-spacing: -.045em;
    }

    .agm-hero h1 span {
      color: var(--agm-gold);
    }

    .agm-hero-lead {
      max-width: 760px;
      margin-bottom: 30px;
      color: rgba(255,255,255,.88);
      font-size: clamp(1.1rem, 1.8vw, 1.35rem);
      line-height: 1.85;
    }

    .agm-btn {
      display: inline-flex;
      min-height: 54px;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 13px 23px;
      border: 0;
      border-radius: 13px;
      font-weight: 800;
      text-decoration: none;
      transition: .3s ease;
    }

    .agm-btn-gold {
      color: #15213c;
      background: linear-gradient(135deg, #ffe095, #f4b942);
      box-shadow: 0 14px 30px rgba(244,185,66,.27);
    }

    .agm-btn-outline {
      color: #fff;
      border: 1px solid rgba(255,255,255,.35);
      background: rgba(255,255,255,.08);
      backdrop-filter: blur(10px);
    }

    .agm-btn:hover {
      transform: translateY(-4px);
    }

    .agm-hero-visual {
      position: relative;
      min-height: 520px;
    }

    .agm-hero-photo {
      position: absolute;
      overflow: hidden;
      border: 5px solid rgba(255,255,255,.9);
      border-radius: 28px;
      box-shadow: 0 30px 65px rgba(0,0,0,.35);
    }

    .agm-hero-photo img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .agm-hero-photo.one {
      top: 20px;
      left: 0;
      width: 76%;
      height: 330px;
      transform: rotate(-3deg);
    }

    .agm-hero-photo.two {
      right: 0;
      bottom: 30px;
      width: 68%;
      height: 285px;
      transform: rotate(3deg);
    }

    .agm-hero-photo.three {
      right: 2%;
      top: 15px;
      width: 150px;
      height: 150px;
      border-radius: 50%;
      border-color: var(--agm-gold);
      animation: pulseBorder 2.8s ease-in-out infinite;
    }

    @keyframes pulseBorder {
      0%, 100% { box-shadow: 0 0 0 0 rgba(244,185,66,.35), 0 25px 55px rgba(0,0,0,.3); }
      50% { box-shadow: 0 0 0 16px rgba(244,185,66,0), 0 25px 55px rgba(0,0,0,.3); }
    }

    .agm-verse-card {
      position: relative;
      overflow: hidden;
      padding: 35px;
      border: 1px solid rgba(255,255,255,.13);
      border-radius: 22px;
      background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.055));
      box-shadow: 0 24px 55px rgba(0,0,0,.18);
      backdrop-filter: blur(16px);
    }

    .agm-verse-card::after {
      content: "“";
      position: absolute;
      top: -42px;
      right: 18px;
      color: rgba(244,185,66,.18);
      font-family: Georgia, serif;
      font-size: 12rem;
      line-height: 1;
    }

    .agm-verse-card p {
      position: relative;
      z-index: 1;
      margin: 0;
      color: #fff;
      font-family: Georgia, serif;
      font-size: clamp(1.35rem, 2.2vw, 1.8rem);
      font-style: italic;
      line-height: 1.65;
    }

    .agm-verse-card strong {
      display: block;
      margin-top: 18px;
      color: var(--agm-gold);
      font-family: "Nunito", sans-serif;
      font-size: 1rem;
      font-style: normal;
    }

    .agm-image-strip {
      display: grid;
      grid-template-columns: repeat(4, minmax(230px, 1fr));
      gap: 18px;
      margin-top: 38px;
      overflow-x: auto;
      padding: 8px 3px 18px;
      scroll-snap-type: x mandatory;
      scrollbar-width: thin;
      scrollbar-color: var(--agm-gold) rgba(16,47,114,.08);
    }

    .agm-image-strip::-webkit-scrollbar {
      height: 8px;
    }

    .agm-image-strip::-webkit-scrollbar-thumb {
      border-radius: 999px;
      background: var(--agm-gold);
    }

    .agm-gallery-card {
      position: relative;
      min-width: 245px;
      height: 230px;
      overflow: hidden;
      cursor: pointer;
      scroll-snap-align: start;
      border: 4px solid #fff;
      border-radius: 18px;
      box-shadow: 0 18px 40px rgba(16,47,114,.15);
      isolation: isolate;
    }

    .agm-gallery-card::before {
      content: "";
      position: absolute;
      inset: 9px;
      z-index: 2;
      border: 1px solid rgba(255,255,255,.72);
      border-radius: 12px;
      pointer-events: none;
    }

    .agm-gallery-card img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform .6s ease;
    }

    .agm-gallery-card:hover img {
      transform: scale(1.1);
    }

    .agm-gallery-overlay {
      position: absolute;
      inset: auto 0 0;
      z-index: 3;
      padding: 38px 18px 18px;
      color: #fff;
      background: linear-gradient(transparent, rgba(4,16,43,.92));
    }

    .agm-gallery-overlay h4 {
      margin: 0;
      font-size: 1.1rem;
      font-weight: 800;
    }

    .agm-info-card {
      height: 100%;
      padding: 32px;
      border: 1px solid rgba(16,47,114,.09);
      border-radius: var(--agm-radius);
      background: rgba(255,255,255,.90);
      box-shadow: var(--agm-shadow);
      transition: transform .35s ease, box-shadow .35s ease;
      backdrop-filter: blur(14px);
    }

    .agm-info-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 30px 65px rgba(12,41,94,.20);
    }

    .agm-icon {
      width: 64px;
      height: 64px;
      display: inline-grid;
      place-items: center;
      margin-bottom: 20px;
      color: var(--agm-blue);
      border: 1px solid rgba(244,185,66,.38);
      border-radius: 18px;
      background: linear-gradient(135deg, #fff8e4, #ffe7a5);
      box-shadow: 0 14px 28px rgba(244,185,66,.20);
      font-size: 1.55rem;
    }

    .agm-info-card h3 {
      margin-bottom: 14px;
      color: var(--agm-deep);
      font-family: "Archivo Black", sans-serif;
      font-size: 1.35rem;
    }

    .agm-info-card p {
      margin: 0;
      color: #59667e;
      font-size: 1.06rem;
      line-height: 1.8;
    }

    .agm-highlight-list {
      padding: 0;
      margin: 24px 0 0;
      list-style: none;
    }

    .agm-highlight-list li {
      display: flex;
      gap: 12px;
      align-items: flex-start;
      margin-bottom: 15px;
      color: #45536e;
      font-size: 1.08rem;
      line-height: 1.65;
    }

    .agm-highlight-list i {
      margin-top: 6px;
      color: var(--agm-gold);
    }

    .agm-feature-box {
      position: relative;
      height: 100%;
      overflow: hidden;
      padding: 32px;
      border: 1px solid rgba(255,255,255,.13);
      border-radius: 24px;
      background: rgba(255,255,255,.075);
      box-shadow: 0 20px 45px rgba(0,0,0,.16);
      backdrop-filter: blur(13px);
    }

    .agm-feature-box::before {
      content: "";
      position: absolute;
      width: 130px;
      height: 130px;
      top: -65px;
      right: -55px;
      border-radius: 50%;
      background: rgba(244,185,66,.14);
    }

    .agm-feature-box h3 {
      position: relative;
      margin-bottom: 14px;
      color: var(--agm-gold);
      font-family: "Archivo Black", sans-serif;
      font-size: 1.3rem;
    }

    .agm-feature-box p {
      position: relative;
      margin: 0;
      color: rgba(255,255,255,.78);
      font-size: 1.06rem;
      line-height: 1.8;
    }

    .agm-donation-wrap {
      overflow: hidden;
      border: 1px solid rgba(16,47,114,.08);
      border-radius: 30px;
      background: #fff;
      box-shadow: 0 28px 70px rgba(16,47,114,.16);
    }

    .agm-bank-panel {
      height: 100%;
      padding: 46px;
      background:
        radial-gradient(circle at 85% 15%, rgba(244,185,66,.18), transparent 25%),
        linear-gradient(135deg, #081b3d 0%, #123f8c 100%);
      color: #fff;
    }

    .agm-bank-panel h3,
    .agm-qr-panel h3 {
      margin-bottom: 16px;
      font-family: "Archivo Black", sans-serif;
      font-size: clamp(1.75rem, 3vw, 2.5rem);
    }

    .agm-bank-row {
      display: grid;
      grid-template-columns: 145px 1fr;
      gap: 12px;
      padding: 15px 0;
      border-bottom: 1px dashed rgba(255,255,255,.2);
      font-size: 1.08rem;
    }

    .agm-bank-row span:first-child {
      color: var(--agm-gold-light);
      font-weight: 800;
    }

    .agm-bank-row span:last-child {
      overflow-wrap: anywhere;
      font-weight: 700;
    }

    .agm-qr-panel {
      height: 100%;
      padding: 46px;
      text-align: center;
      background:
        linear-gradient(rgba(255,255,255,.94), rgba(255,255,255,.94)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cpath d='M0 40h80M40 0v80' stroke='%23f4b942' stroke-opacity='.11'/%3E%3C/svg%3E");
    }

    .agm-qr-box {
      max-width: 300px;
      margin: 24px auto;
      padding: 18px;
      border: 2px solid var(--agm-gold);
      border-radius: 24px;
      background: #fff;
      box-shadow: 0 18px 40px rgba(16,47,114,.14);
    }

    .agm-qr-box img {
      width: 100%;
      aspect-ratio: 1 / 1;
      object-fit: contain;
      border-radius: 14px;
    }

    .agm-upi {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      padding: 11px 17px;
      color: var(--agm-blue);
      border: 1px solid rgba(16,47,114,.15);
      border-radius: 999px;
      background: var(--agm-sky);
      font-weight: 800;
    }

    .agm-note {
      margin-top: 23px;
      padding: 17px 18px;
      border-left: 4px solid var(--agm-gold);
      border-radius: 10px;
      background: rgba(244,185,66,.10);
      color: #5f4b20;
      font-size: 1rem;
      line-height: 1.7;
    }

    .agm-cta {
      padding: 54px;
      overflow: hidden;
      border-radius: 30px;
      color: #fff;
      background:
        radial-gradient(circle at 85% 25%, rgba(244,185,66,.28), transparent 28%),
        linear-gradient(120deg, #0a2352, #174b9f);
      box-shadow: 0 28px 70px rgba(16,47,114,.26);
    }

    .agm-cta h2 {
      margin-bottom: 17px;
      font-family: "Archivo Black", sans-serif;
      font-size: clamp(2rem, 4vw, 3.7rem);
    }

    .agm-cta p {
      max-width: 780px;
      margin-bottom: 0;
      color: rgba(255,255,255,.82);
      font-size: 1.15rem;
      line-height: 1.8;
    }

    .agm-lightbox {
      position: fixed;
      inset: 0;
      z-index: 99999;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 25px;
      background: rgba(2,10,25,.94);
      backdrop-filter: blur(10px);
    }

    .agm-lightbox.active {
      display: flex;
    }

    .agm-lightbox-content {
      position: relative;
      width: min(1120px, 94vw);
      max-height: 90vh;
    }

    .agm-lightbox-content img {
      width: 100%;
      max-height: 82vh;
      object-fit: contain;
      border: 5px solid rgba(255,255,255,.94);
      border-radius: 18px;
      box-shadow: 0 30px 70px rgba(0,0,0,.55);
    }

    .agm-lightbox-caption {
      margin-top: 13px;
      color: #fff;
      text-align: center;
      font-size: 1.08rem;
      font-weight: 800;
    }

    .agm-lightbox-close,
    .agm-lightbox-nav {
      position: absolute;
      z-index: 2;
      display: grid;
      place-items: center;
      color: #fff;
      border: 1px solid rgba(255,255,255,.25);
      background: rgba(255,255,255,.12);
      backdrop-filter: blur(12px);
      cursor: pointer;
    }

    .agm-lightbox-close {
      width: 48px;
      height: 48px;
      top: -16px;
      right: -16px;
      border-radius: 50%;
      font-size: 1.3rem;
    }

    .agm-lightbox-nav {
      width: 52px;
      height: 70px;
      top: 50%;
      transform: translateY(-50%);
      border-radius: 12px;
      font-size: 1.25rem;
    }

    .agm-lightbox-prev { left: 15px; }
    .agm-lightbox-next { right: 15px; }

    .agm-reveal {
      opacity: 0;
      transform: translateY(30px);
      transition: opacity .75s ease, transform .75s ease;
    }

    .agm-reveal.visible {
      opacity: 1;
      transform: translateY(0);
    }

    @media (max-width: 1199.98px) {
      .agm-hero {
        min-height: auto;
      }

      .agm-hero-visual {
        margin-top: 50px;
      }

      .agm-image-strip {
        grid-template-columns: repeat(4, 280px);
      }
    }

    @media (max-width: 991.98px) {
      .agm-section {
        padding: 75px 0;
      }

      .agm-hero {
        padding-top: 80px;
      }

      .agm-bank-panel,
      .agm-qr-panel {
        padding: 36px 28px;
      }
    }

    @media (max-width: 767.98px) {
      .agm-hero h1 {
        font-size: 2.8rem;
      }

      .agm-hero-visual {
        min-height: 430px;
      }

      .agm-hero-photo.one {
        width: 84%;
        height: 270px;
      }

      .agm-hero-photo.two {
        width: 77%;
        height: 235px;
      }

      .agm-hero-photo.three {
        width: 112px;
        height: 112px;
      }

      .agm-gallery-card {
        min-width: 82vw;
      }

      .agm-bank-row {
        grid-template-columns: 1fr;
        gap: 4px;
      }

      .agm-cta {
        padding: 36px 24px;
      }

      .agm-lightbox-nav {
        width: 44px;
        height: 58px;
      }
    }

    @media (max-width: 575.98px) {
      .agm-hero {
        padding: 70px 0;
      }

      .agm-hero-visual {
        min-height: 365px;
      }

      .agm-hero-photo.one {
        height: 230px;
      }

      .agm-hero-photo.two {
        height: 200px;
      }

      .agm-info-card,
      .agm-feature-box {
        padding: 25px;
      }

      .agm-image-strip {
        grid-template-columns: repeat(4, 84vw);
      }
    }

    @media (prefers-reduced-motion: reduce) {
      *,
      *::before,
      *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
      }
    }