/* ===========================================================
         G.R.O.W Agronomist — full-screen slide presentation
         Backgrounds aligned with site: white + light green tint
         Scoped under .cs_agr_page to avoid clashing with site styles
      ============================================================ */
      .cs_agr_page {
        --agr-white: #ffffff;
        --agr-green: #f2f7e8;
        --agr-ink: #1f2418;
        --agr-muted: #55604a;
        --agr-accent: #8cb43a;
        color: var(--agr-ink);
      }
      /* Every slide = one laptop screen tall */
      .cs_agr_slide {
        position: relative;
        overflow: hidden;
        min-height: 100vh;
        display: flex;
        align-items: center;
      }
      .cs_agr_slide.cs_agr_white { background: var(--agr-white); }
      .cs_agr_slide.cs_agr_green { background: var(--agr-green); }
      .cs_agr_inner {
        position: relative;
        z-index: 2;
        width: 100%;
        max-width: 1180px;
        margin: 0 auto;
        padding: 64px 24px;
      }
      /* Floating agri-tech decor (cover slide) */
      .cs_agr_float_layer {
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        overflow: hidden;
      }
      .cs_agr_float {
        position: absolute;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 62px;
        height: 62px;
        border-radius: 16px;
        background: rgba(140, 180, 58, 0.1);
        border: 1px solid rgba(140, 180, 58, 0.22);
        color: var(--agr-accent);
        font-size: 24px;
        backdrop-filter: blur(2px);
        box-shadow: 0 10px 30px rgba(31, 36, 24, 0.06);
        animation: cs_agr_drift 9s ease-in-out infinite;
      }
      .cs_agr_float.f1 { top: 16%; left: 8%; font-size: 26px; animation-duration: 8s; }
      .cs_agr_float.f2 { top: 68%; left: 5%; width: 52px; height: 52px; font-size: 20px; animation-duration: 10s; animation-delay: -2s; }
      .cs_agr_float.f3 { top: 80%; left: 40%; width: 48px; height: 48px; font-size: 19px; animation-duration: 7.5s; animation-delay: -1s; }
      .cs_agr_float.f4 { top: 10%; right: 6%; animation-duration: 11s; animation-delay: -3s; }
      .cs_agr_float.f5 { top: 46%; right: 3%; width: 54px; height: 54px; font-size: 21px; animation-duration: 9.5s; animation-delay: -1.5s; }
      .cs_agr_float.f6 { top: 86%; right: 12%; width: 50px; height: 50px; font-size: 20px; animation-duration: 8.5s; animation-delay: -4s; }
      /* Neural-network / AI themed floats — slightly different tint */
      .cs_agr_float_ai {
        background: rgba(140, 180, 58, 0.14);
        border-color: rgba(140, 180, 58, 0.3);
      }
      .cs_agr_float.f7 { top: 34%; left: 4%; font-size: 27px; animation-duration: 9s; animation-delay: -1s; }
      .cs_agr_float.f8 { top: 52%; left: 18%; width: 52px; height: 52px; font-size: 20px; animation-duration: 10.5s; animation-delay: -3s; }
      .cs_agr_float.f9 { top: 6%; left: 40%; width: 54px; height: 54px; font-size: 22px; animation-duration: 8s; animation-delay: -2.5s; }
      .cs_agr_float.f10 { top: 28%; right: 16%; width: 52px; height: 52px; font-size: 20px; animation-duration: 9.5s; animation-delay: -0.5s; }
      .cs_agr_float.f11 { top: 64%; right: 20%; font-size: 25px; animation-duration: 11s; animation-delay: -4s; }
      .cs_agr_float.f12 { top: 88%; left: 26%; width: 50px; height: 50px; font-size: 21px; animation-duration: 7.5s; animation-delay: -1.5s; }
      .cs_agr_dot {
        position: absolute;
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background: var(--agr-accent);
        opacity: 0.5;
        animation: cs_agr_float_dot 6s ease-in-out infinite;
      }
      .cs_agr_dot.d1 { top: 30%; left: 24%; animation-duration: 6s; }
      .cs_agr_dot.d2 { top: 58%; left: 33%; width: 8px; height: 8px; animation-duration: 7s; animation-delay: -2s; }
      .cs_agr_dot.d3 { top: 22%; right: 26%; width: 9px; height: 9px; animation-duration: 5.5s; animation-delay: -1s; }
      .cs_agr_dot.d4 { top: 72%; right: 30%; animation-duration: 8s; animation-delay: -3s; }
      .cs_agr_dot.d5 { top: 90%; left: 62%; width: 7px; height: 7px; animation-duration: 6.5s; animation-delay: -0.5s; }
      .cs_agr_dot.d6 { top: 40%; left: 48%; width: 9px; height: 9px; animation-duration: 7.5s; animation-delay: -2.5s; }
      .cs_agr_dot.d7 { top: 14%; right: 40%; width: 8px; height: 8px; animation-duration: 6s; animation-delay: -3.5s; }
      @media (max-width: 991px) {
        .cs_agr_float, .cs_agr_dot { display: none; }
      }
      @keyframes cs_agr_drift {
        0%, 100% { transform: translate3d(0, 0, 0) rotate(0deg); }
        25% { transform: translate3d(6px, -14px, 0) rotate(3deg); }
        50% { transform: translate3d(-4px, -8px, 0) rotate(-2deg); }
        75% { transform: translate3d(3px, -16px, 0) rotate(2deg); }
      }
      @keyframes cs_agr_float_dot {
        0%, 100% { transform: translateY(0); opacity: 0.5; }
        50% { transform: translateY(-18px); opacity: 0.9; }
      }
      @media (prefers-reduced-motion: reduce) {
        .cs_agr_float, .cs_agr_dot { animation: none; }
      }
      @media (max-width: 991px) {
        .cs_agr_inner { padding: 80px 20px; }
      }
      .cs_agr_badge {
        display: inline-block;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: var(--agr-accent);
        background: rgba(140, 180, 58, 0.12);
        border: 1px solid rgba(140, 180, 58, 0.28);
        padding: 6px 14px;
        border-radius: 999px;
        margin-bottom: 22px;
      }
      .cs_agr_eyebrow {
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: var(--agr-accent);
        margin-bottom: 16px;
      }
      .cs_agr_title {
        font-size: 46px;
        line-height: 1.1;
        font-weight: 700;
        color: var(--agr-ink);
        margin-bottom: 22px;
      }
      .cs_agr_title_lg {
        font-size: 58px;
        line-height: 1.05;
      }
      @media (max-width: 991px) {
        .cs_agr_title { font-size: 32px; }
        .cs_agr_title_lg { font-size: 38px; }
      }
      .cs_agr_lead {
        font-size: 19px;
        line-height: 1.65;
        color: var(--agr-muted);
        margin-bottom: 18px;
      }
      .cs_agr_body {
        font-size: 17px;
        line-height: 1.7;
        color: var(--agr-muted);
        margin-bottom: 16px;
      }
      .cs_agr_subheading {
        font-size: 15px;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: var(--agr-ink);
        margin: 24px 0 16px;
      }
      .cs_agr_list {
        list-style: none;
        margin: 0;
        padding: 0;
      }
      .cs_agr_list li {
        position: relative;
        padding-left: 32px;
        margin-bottom: 13px;
        font-size: 17px;
        line-height: 1.5;
        color: var(--agr-ink);
      }
      .cs_agr_list li::before {
        content: "\f00c";
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        position: absolute;
        left: 0;
        top: 2px;
        color: var(--agr-accent);
        font-size: 15px;
      }
      /* Split layout */
      .cs_agr_split {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 56px;
        align-items: center;
        width: 100%;
      }
      @media (max-width: 991px) {
        .cs_agr_split { grid-template-columns: 1fr; gap: 32px; }
        .cs_agr_split.cs_agr_reverse .cs_agr_media { order: -1; }
      }
      /* Media placeholders */
      .cs_agr_media {
        position: relative;
        border-radius: 18px;
        overflow: hidden;
        min-height: 360px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        border: 2px dashed rgba(140, 180, 58, 0.45);
        background: rgba(140, 180, 58, 0.06);
        color: var(--agr-muted);
        padding: 24px;
      }
      .cs_agr_media.cs_agr_media_dark {
        background: linear-gradient(160deg, #171b12 0%, #232b18 100%);
        border-color: rgba(140, 180, 58, 0.5);
        color: #cfd8c1;
      }
      .cs_agr_media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
      }
      /* When a real image is present, drop the placeholder frame */
      .cs_agr_media:has(img) {
        border: none;
        background: none;
        padding: 0;
      }
      /* Full-width image banner (used on the last two slides) */
      .cs_agr_media_banner {
        min-height: 0;
        height: auto;
        max-height: 42vh;
        margin: 4px auto 8px;
      }
      .cs_agr_media_banner img {
        height: auto;
        max-height: 42vh;
        object-fit: contain;
      }
      .cs_agr_media_ph_icon {
        font-size: 40px;
        color: var(--agr-accent);
        margin-bottom: 14px;
      }
      .cs_agr_media_ph_label {
        font-size: 14px;
        font-weight: 600;
        line-height: 1.5;
      }
      /* Cover slide logo + meta */
      .cs_agr_cover_logo {
        display: block;
        width: 150px;
        height: auto;
        margin: 0 auto 28px;
      }
      @media (max-width: 991px) {
        .cs_agr_cover_logo { width: 118px; }
      }
      .cs_agr_meta {
        margin-top: 30px;
        font-size: 16px;
        color: var(--agr-muted);
      }
      .cs_agr_meta strong { color: var(--agr-ink); font-weight: 700; }
      /* Feature / icon grids */
      .cs_agr_grid {
        display: grid;
        gap: 24px;
        margin-top: 40px;
      }
      .cs_agr_grid_3 { grid-template-columns: repeat(3, 1fr); }
      .cs_agr_grid_4 { grid-template-columns: repeat(4, 1fr); }
      @media (max-width: 991px) {
        .cs_agr_grid_3, .cs_agr_grid_4 { grid-template-columns: 1fr; }
      }
      .cs_agr_card {
        background: #ffffff;
        border: 1px solid rgba(31, 36, 24, 0.08);
        border-radius: 16px;
        padding: 28px 24px;
        box-shadow: 0 10px 30px rgba(31, 36, 24, 0.05);
        height: 100%;
      }
      .cs_agr_card_icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 54px;
        height: 54px;
        border-radius: 13px;
        background: rgba(140, 180, 58, 0.12);
        color: var(--agr-accent);
        font-size: 22px;
        margin-bottom: 18px;
      }
      .cs_agr_card h4 {
        font-size: 20px;
        font-weight: 700;
        color: var(--agr-ink);
        margin-bottom: 10px;
      }
      .cs_agr_card p {
        font-size: 15.5px;
        line-height: 1.6;
        color: var(--agr-muted);
        margin: 0;
      }
      .cs_agr_closing {
        margin-top: 36px;
        padding: 22px 26px;
        border-left: 4px solid var(--agr-accent);
        background: rgba(140, 180, 58, 0.1);
        border-radius: 0 12px 12px 0;
        font-size: 17px;
        line-height: 1.6;
        color: var(--agr-ink);
      }
      /* Flow diagram */
      .cs_agr_flow {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0;
        margin: 8px auto 0;
        max-width: 440px;
      }
      .cs_agr_flow_node {
        width: 100%;
        text-align: center;
        padding: 16px 20px;
        border-radius: 14px;
        font-weight: 700;
        font-size: 18px;
        border: 1px solid rgba(140, 180, 58, 0.3);
      }
      .cs_agr_flow_node.n1 { background: var(--agr-accent); color: #fff; }
      .cs_agr_flow_node.n2 { background: rgba(140, 180, 58, 0.28); color: var(--agr-ink); }
      .cs_agr_flow_node.n3 { background: rgba(140, 180, 58, 0.16); color: var(--agr-ink); }
      .cs_agr_flow_node.n4 { background: #ffffff; color: var(--agr-ink); }
      .cs_agr_flow_arrow {
        color: var(--agr-accent);
        font-size: 18px;
        padding: 6px 0;
      }
      /* Comparison scenarios */
      .cs_agr_compare {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        margin-top: 44px;
      }
      @media (max-width: 991px) {
        .cs_agr_compare { grid-template-columns: 1fr; }
      }
      .cs_agr_compare_card {
        border-radius: 16px;
        padding: 26px 24px;
        background: #ffffff;
        border: 1px solid rgba(31, 36, 24, 0.08);
      }
      .cs_agr_compare_card.is_good {
        border: 1px solid rgba(140, 180, 58, 0.5);
        background: rgba(140, 180, 58, 0.08);
      }
      .cs_agr_compare_card h4 {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 19px;
        font-weight: 700;
        color: var(--agr-ink);
        margin-bottom: 12px;
      }
      .cs_agr_compare_card.is_bad h4 i { color: #c0603a; }
      .cs_agr_compare_card.is_good h4 i { color: var(--agr-accent); }
      .cs_agr_compare_card p {
        font-size: 15.5px;
        line-height: 1.6;
        color: var(--agr-muted);
        margin: 0;
      }
      .cs_agr_center { text-align: center; }
      .cs_agr_center .cs_agr_lead { max-width: 820px; margin-left: auto; margin-right: auto; }
      /* Split variant with a larger media column (image bigger on the right) */
      .cs_agr_split.cs_agr_split_media_lg {
        grid-template-columns: 0.85fr 1.15fr;
        gap: 48px;
      }
      .cs_agr_split.cs_agr_split_media_lg.cs_agr_media_left {
        grid-template-columns: 1.15fr 0.85fr;
      }
      @media (max-width: 991px) {
        .cs_agr_split.cs_agr_split_media_lg,
        .cs_agr_split.cs_agr_split_media_lg.cs_agr_media_left { grid-template-columns: 1fr; }
      }
      .cs_agr_media.cs_agr_media_tall {
        min-height: 480px;
        height: 100%;
        border: none;
        background: none;
        padding: 0;
      }
      .cs_agr_media.cs_agr_media_tall img {
        border-radius: 18px;
        box-shadow: 0 18px 46px rgba(31, 36, 24, 0.16);
      }
      @media (max-width: 991px) {
        .cs_agr_media.cs_agr_media_tall { min-height: 320px; }
      }
      /* Vertical feature list (icon + text) */
      .cs_agr_feature_list {
        margin-top: 28px;
        display: flex;
        flex-direction: column;
        gap: 22px;
      }
      .cs_agr_feature {
        display: flex;
        gap: 16px;
        align-items: flex-start;
      }
      .cs_agr_feature_icon {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        border-radius: 12px;
        background: rgba(140, 180, 58, 0.14);
        color: var(--agr-accent);
        font-size: 19px;
      }
      .cs_agr_feature h4 {
        font-size: 18px;
        font-weight: 700;
        color: var(--agr-ink);
        margin: 2px 0 5px;
      }
      .cs_agr_feature p {
        font-size: 15.5px;
        line-height: 1.55;
        color: var(--agr-muted);
        margin: 0;
      }
      /* Closing / ending slide */
      .cs_agr_slide.cs_agr_end {
        background: radial-gradient(ellipse 90% 80% at 50% 0%, #223016 0%, #12160e 55%, #0b0d08 100%);
        color: #eef3e6;
        text-align: center;
      }
      .cs_agr_end .cs_agr_inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
      }
      .cs_agr_end_logo {
        width: 96px;
        height: auto;
        margin-bottom: 34px;
        filter: drop-shadow(0 8px 24px rgba(140, 180, 58, 0.35));
      }
      .cs_agr_end_title {
        font-size: 60px;
        line-height: 1.05;
        font-weight: 700;
        color: #ffffff;
        margin-bottom: 22px;
      }
      .cs_agr_end_sub {
        font-size: 20px;
        line-height: 1.6;
        color: #b9c6a7;
        max-width: 720px;
        margin: 0 auto 40px;
      }
      @media (max-width: 991px) {
        .cs_agr_end_title { font-size: 40px; }
        .cs_agr_end_sub { font-size: 17px; }
      }
      .cs_agr_end_actions {
        display: flex;
        flex-wrap: wrap;
        gap: 16px;
        justify-content: center;
      }
      .cs_agr_end_btn {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 15px 34px;
        border-radius: 999px;
        font-size: 16px;
        font-weight: 700;
        text-decoration: none;
        transition: transform 0.25s ease, box-shadow 0.25s ease;
      }
      .cs_agr_end_btn.is_primary {
        background: var(--agr-accent);
        color: #10140b;
        box-shadow: 0 12px 30px rgba(140, 180, 58, 0.35);
      }
      .cs_agr_end_btn.is_ghost {
        background: transparent;
        color: #eef3e6;
        border: 1px solid rgba(238, 243, 230, 0.35);
      }
      .cs_agr_end_btn:hover {
        transform: translateY(-2px);
      }
      .cs_agr_end_divider {
        width: 70px;
        height: 4px;
        border-radius: 999px;
        background: var(--agr-accent);
        margin: 0 auto 30px;
      }
      .cs_agr_end_foot {
        margin-top: 52px;
        font-size: 14px;
        letter-spacing: 0.04em;
        color: #7f8d6c;
      }
      /* Video slides */
      .cs_agr_video_wrap {
        width: 100%;
        max-width: 1040px;
        margin: 0 auto;
        text-align: center;
      }
      .cs_agr_video_wrap video {
        width: 100%;
        max-height: 74vh;
        border-radius: 18px;
        background: #000;
        box-shadow: 0 20px 50px rgba(31, 36, 24, 0.16);
        display: block;
      }
