 .topbar {
     height: 48px;
     background: #000 !important;
     background-image: linear-gradient(110deg, #000 0%, #17251f 48%, #000 100%) !important;
     border-bottom: 1px solid #46524d;
     color: #e0e8e3;
     padding: 0 !important;
     font-size: .92rem !important;
     letter-spacing: .01em;
     display: flex;
     align-items: center
 }

 .topbar .container {
     height: 100%;
     width: 100%;
     justify-content: center !important
 }

 .topbar-slider {
     position: relative;
     width: 100%;
     text-align: center;
     min-height: 1.5em
 }

 .topbar-slide {
     display: none;
     line-height: 1.35
 }

 .topbar-slide.is-active {
     display: block
 }

 .topbar a {
     color: var(--acid);
     font-weight: 400
 }

 .navbar-inner {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 1.5rem
 }

 .navbar-left,
 .navbar-actions {
     display: flex;
     align-items: center
 }

 .navbar-left {
     gap: 1.25rem
 }

 .attendance-stat {
     border-left: 1px solid #000;
     padding-left: 1.25rem;
     display: flex;
     flex-direction: column;
     line-height: 1.05
 }

 .attendance-stat strong,
 .attendance-stat span,
 .next-training span,
 .next-training strong {
     color: #000 !important
 }

 .attendance-stat strong {
     font-size: 1.55rem;
     font-weight: 400
 }

 .attendance-stat span,
 .next-training span {
     font-size: .62rem;
     font-weight: 400;
     text-transform: uppercase;
     letter-spacing: .04em
 }

 .navbar-actions {
     gap: 1.25rem
 }

 .next-training {
     display: flex;
     flex-direction: column;
     text-align: right;
     line-height: 1.1
 }

 .next-training strong {
     font-size: 1.05rem;
     font-weight: 400;
     margin-top: .2rem
 }

 .navbar-actions .btn {
     white-space: nowrap;
     background: #fff !important;
     color: #000 !important;
     border: 2px solid #000 !important;
     border-radius: 0 !important;
     box-shadow: 2px 2px 0 #000;
     text-transform: uppercase;
     letter-spacing: .04em
 }

 .navbar-actions .btn:hover {
     background: #f1f1f1 !important;
     color: #000 !important;
     box-shadow: 1px 1px 0 #000
 }

 @media(max-width:575.98px) {
     .topbar {
         height: 76px
     }

     .topbar .container {
         align-items: center !important
     }

     .topbar-slider {
         min-height: 0
     }

     .topbar-slider .topbar-slide {
         max-width: none
     }

     .topbar-slide {
         line-height: 1.3
     }

     .navbar-inner {
         gap: .6rem;
         padding-top: .35rem;
         padding-bottom: .35rem
     }

     .navbar-brand img {
         height: 42px
     }

     .navbar-left {
         gap: .65rem
     }

     .attendance-stat,
     .next-training {
         display: none
     }

     .navbar-actions {
         gap: .55rem
     }

     .navbar-actions .btn {
         font-size: .7rem;
         padding: .55rem .6rem
     }
 }

 :root {
     --deep: #041c14;
     --forest: #073b29;
     --green: #07834b;
     --acid: #b7e4a0;
     --paper: #f2f5f0;
     --ink: #14241d;
     --muted: #66756d;
     --line: #d9e3dc;
     --orange: #ffad31
 }

 * {
     box-sizing: border-box;
     font-family: Arial, Helvetica, sans-serif;
     font-weight: 400
 }

 html {
     scroll-behavior: smooth
 }

 body {
     margin: 0;
     color: var(--ink);
     font-family: Arial, Helvetica, sans-serif;
     font-size: 16px;
     line-height: 1.6
 }

 img {
     max-width: 100%
 }

 a {
     text-decoration: none
 }

 .topbar {
     background: var(--deep);
     color: #d5e6dc;
     padding: .5rem 0;
     font-size: .78rem
 }

 .topbar a {
     color: var(--acid);
     font-weight: 400
 }

 .navbar {
     background: rgba(255, 255, 255, .96);
     backdrop-filter: blur(14px);
     border-bottom: 1px solid #e6ece8;
     padding: .5rem 0
 }

 .navbar-brand img {
     height: 52px
 }



 .btn {
     border-radius: 3px;
     font-weight: 400;
     padding: .75rem 1.15rem
 }

 .btn-primary-cta {
     background: var(--green);
     color: #fff
 }

 .btn-primary-cta:hover {
     background: var(--forest);
     color: #fff
 }

 .btn-acid {
     background: var(--acid);
     border-color: var(--acid);
     color: #132d21
 }

 .btn-acid:hover {
     background: #ddff83
 }

 .hero {
     padding: 6rem 0;
     background: linear-gradient(135deg, #052d20, #0a5035);
     color: #fff;
     overflow: hidden
 }

 .event-kicker,
 .eyebrow {
     font-weight: 900 !important;
     font-size: .75rem;
     /* letter-spacing: .13em; */
     text-transform: uppercase;
 }

 .event-kicker {
     color: var(--acid);
     display: flex;
     align-items: center;
     gap: .6rem
 }

 .event-kicker span {
     width: 30px;
     height: 2px;
     background: var(--acid)
 }

 .hero h1 {
     font-size: clamp(3rem, 5.5vw, 5.7rem);
     line-height: .94;
     letter-spacing: -.055em;
     font-weight: 400;
     margin: 1.2rem 0
 }

 .hero h1 em {
     font-style: normal;
     color: var(--acid)
 }

 .hero-copy {
     color: #d4e5dc;
     font-size: 1.08rem;
     max-width: 700px
 }

 .hero-meta {
     display: flex;
     margin: 2rem 0
 }

 .hero-meta div {
     padding: 0 1.7rem;
     border-left: 1px solid #ffffff40
 }

 .hero-meta div:first-child {
     padding-left: 0;
     border: 0
 }

 .hero-meta strong,
 .hero-meta span {
     display: block
 }

 .hero-meta strong {
     font-size: 1.8rem;
     line-height: 1
 }

 .hero-meta span {
     font-size: .7rem;
     color: #aac5b7;
     text-transform: uppercase
 }

 .hero-actions {
     display: flex;
     align-items: center;
     gap: 1.5rem
 }










 .trust-strip .container {
     box-shadow: 0 12px 40px #082f2118
 }

 .trust-item {
     padding: 1.5rem;
     border-right: 1px solid var(--line)
 }

 .trust-item:last-child {
     border: 0
 }

 .trust-item strong,
 .trust-item span {
     display: block
 }

 .trust-item strong {
     font-size: 1.1rem;
     color: var(--forest)
 }

 .trust-item span {
     font-size: .72rem;
     color: var(--muted);
     text-transform: uppercase
 }

 .section {
     padding: 6rem 0
 }

 .display-title {
     font-size: clamp(2.35rem, 4.4vw, 4rem);
     line-height: 1.03;
     letter-spacing: -.045em;
     font-weight: 400;
     margin: .7rem 0
 }

 .section-intro {
     color: var(--muted);
     font-size: 1.03rem
 }

 .tech-card {
     height: 100%;
     border: 1px solid var(--line);
     position: relative;
     overflow: hidden;
     transition: .25s
 }

 .tech-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 20px 45px #083c261c
 }

 .tech-card>b {
     position: absolute;
     top: .7rem;
     left: .7rem;
     background: var(--acid);
     width: 38px;
     height: 38px;
     display: grid;
     place-items: center;
     z-index: 1
 }

 .tech-card img {
     width: 100%;
     height: 230px;
     object-fit: cover
 }

 .tech-card>div {
     padding: 1.35rem
 }

 .tech-card h4 {
     font-size: 1.15rem;
     font-weight: 400
 }

 .tech-card p {
     color: var(--muted);
     font-size: .9rem;
     margin: 0
 }

 .dark-panel,
 .included-section {
     background: var(--forest)
 }

 .acid {
     color: var(--acid)
 }




 .knowledge-grid,
 .included-grid {
     display: grid;
     grid-template-columns: 1fr 1fr;
     margin-top: 2rem;
     border-top: 1px solid #ffffff25;
     border-left: 1px solid #ffffff25
 }

 .knowledge-grid div,
 .included-grid div {
     padding: 1.2rem;
     border-right: 1px solid #ffffff25;
     border-bottom: 1px solid #ffffff25
 }

 .knowledge-grid b,
 .included-grid span {
     color: var(--acid);
     /* font-size: .7rem */
 }

 .knowledge-grid h3,
 .included-grid h3 {
     color: #b7e4a0;
     font-size: 1rem;
     font-weight: 400;
     margin: .3rem 0
 }

 .knowledge-grid p {
     color: #a8c1b4;
     font-size: .84rem;
     margin: 0
 }

 .agenda-section,
 .gallery-section,
 .faq-section,
 .closing-section {
     background: var(--paper)
 }





 .agenda {
     max-width: 1020px;
     margin: auto
 }

 .agenda-item {
     display: grid;
     grid-template-columns: 80px 20px 1fr;
     gap: 1rem;
     position: relative;
     padding-bottom: 2rem
 }

 .agenda-item:not(:last-child):before {
     content: "";
     position: absolute;
     left: 89px;
     top: 18px;
     bottom: 0;
     width: 1px;
     background: #b8c8be
 }

 .agenda-item time {
     color: var(--green);
     font-weight: 400
 }

 .agenda-item i {
     width: 13px;
     height: 13px;
     border: 3px solid var(--green);
     border-radius: 50%;
     background: var(--paper);
     margin-top: .35rem;
     z-index: 1
 }

 .agenda-item span {
     font-size: .68rem;
     color: var(--green);
     font-weight: 400;
     letter-spacing: .1em
 }

 .agenda-item h3 {
     font-size: 1.15rem;
     font-weight: 400;
     margin: .15rem 0
 }

 .agenda-item p {
     color: var(--muted);
     margin: 0
 }













 .gallery-grid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     grid-auto-rows: 230px;
     gap: 10px
 }

 .gallery-item {
     position: relative;
     border: 0;
     padding: 0;
     overflow: hidden;
     cursor: zoom-in
 }



 .gallery-item img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: .3s
 }

 .gallery-item:hover img {
     transform: scale(1.04)
 }

 .gallery-item:after {
     content: "";
     position: absolute;
     inset: 45% 0 0;
     background: linear-gradient(transparent, #000b)
 }

 .gallery-item span {
     position: absolute;
     left: 15px;
     bottom: 12px;
     color: #fff;
     font-weight: 400;
     z-index: 1
 }



















 .included-grid {
     margin: 0
 }

 .mentor-image {
     display: block;
     height: auto;
     width: 100%;
     aspect-ratio: 16 / 9;
     object-fit: cover
 }

 .mentor-industry-logos {
     display: block;
     width: 100%;
     max-width: 700px;
     height: auto;
     margin-top: 1.5rem;
     background: #fff;
     border: 1px solid #ccc;
     border-radius: 1.5rem;
     padding: 1rem;
 }

 .mentor-quote {
     font-size: 1.3rem;
     font-weight: 400;
     border-left: 4px solid var(--acid);
     padding-left: 1.2rem;
     margin: 1.8rem 0;
     line-height: 1.5rem;
 }

 .accordion-item {
     background: transparent
 }

 .accordion-button {
     background: transparent !important;
     box-shadow: none !important;
     font-weight: 400;
     padding: 1.2rem .2rem
 }

 .accordion-body {
     color: var(--muted);
     padding: .2rem .2rem 1.3rem
 }

 .closing-section {
     padding: 1.2rem
 }

 .closing-card {
     background: linear-gradient(120deg, var(--forest), var(--green));
     color: #fff;
     padding: 4rem;
     display: flex;
     justify-content: space-between;
     align-items: end;
     gap: 2rem
 }

 .closing-card>div:first-child {
     max-width: 750px
 }

 .closing-card>div>span {
     font-size: .7rem;
     color: var(--acid);
     font-weight: 400
 }

 .closing-card h2 {
     font-size: clamp(2rem, 4vw, 3.7rem);
     font-weight: 400;
     line-height: 1.04;
     letter-spacing: -.04em
 }

 .closing-card>div:last-child {
     min-width: 230px;
     display: flex;
     flex-direction: column;
     gap: .8rem;
     text-align: center
 }

 .closing-card>div:last-child a:last-child {
     color: #fff;
     font-weight: 400
 }

 footer {
     background: var(--deep);
     color: #9bb2a7;
     padding: 4rem 0 2rem
 }

 footer img {
     height: 58px;
     background: #fff;
     padding: .3rem
 }

 footer h2 {
     font-size: .85rem;
     color: #fff;
     text-transform: uppercase
 }

 footer .col-6 {
     display: flex;
     flex-direction: column;
     gap: .4rem
 }

 footer a {
     color: #c8d8d0
 }

 .footer-bottom {
     display: flex;
     justify-content: space-between;
     gap: 1rem;
     margin-top: 3rem;
     padding-top: 1.3rem;
     border-top: 1px solid #ffffff20;
     font-size: .75rem
 }

 .mobile-cta {
     display: none
 }

 .lightbox {
     display: none;
     position: fixed;
     inset: 0;
     background: #000e;
     z-index: 1100;
     align-items: center;
     justify-content: center;
     padding: 2rem
 }

 .lightbox.open {
     display: flex
 }

 .lightbox img {
     max-width: 92vw;
     max-height: 88vh
 }

 .lightbox-close {
     position: absolute;
     right: 1.5rem;
     top: 1rem;
     background: none;
     border: 0;
     color: #fff;
     font-size: 2.5rem
 }

 @media(max-width:991px) {

     .hero {
         padding: 4.5rem 0
     }




     .trust-item:nth-child(2) {
         border-right: 0
     }

     .section {
         padding: 5rem 0
     }



     .gallery-grid {
         grid-template-columns: repeat(2, 1fr)
     }

     .closing-card {
         flex-direction: column;
         align-items: flex-start
     }

     .closing-card>div:last-child {
         width: 100%
     }
 }

 @media(max-width:767px) {
     .row.g-5,
     .row.gx-5 {
         --bs-gutter-x: 1.5rem
     }

     body {
         padding-bottom: calc(115px + env(safe-area-inset-bottom, 0px))
     }

     .topbar {
         font-size: .68rem
     }

     .topbar span {
         max-width: 60%
     }

     .navbar-brand img {
         height: 44px
     }

     .hero {
         padding: 3.5rem 0
     }

     .hero h1 {
         font-size: 2.9rem
     }

     .hero-meta div {
         padding: 0 .8rem
     }

     .hero-meta strong {
         font-size: 1.35rem
     }

     .hero-actions {
         flex-direction: column;
         align-items: stretch;
         text-align: center
     }



     .trust-item {
         padding: 1rem;
         border-bottom: 1px solid var(--line)
     }

     .section {
         padding: 4rem 0
     }

     .display-title {
         font-size: 2.35rem
     }




     .knowledge-grid,
     .included-grid {
         grid-template-columns: 1fr
     }

     .agenda-item {
         grid-template-columns: 62px 18px 1fr;
         gap: .5rem
     }

     .agenda-item:not(:last-child):before {
         left: 70px
     }

     .gallery-grid {
         grid-auto-rows: 180px
     }






     .closing-card {
         padding: 2rem
     }

     .footer-bottom {
         flex-direction: column
     }

     .mobile-cta {
         display: grid;
         grid-template-columns: minmax(0, 1fr) minmax(0, .9fr) minmax(0, 1.25fr);
         align-items: center;
         gap: .5rem;
         position: fixed;
         left: max(.75rem, env(safe-area-inset-left, 0px));
         right: max(.75rem, env(safe-area-inset-right, 0px));
         bottom: calc(.75rem + env(safe-area-inset-bottom, 0px));
         padding: .75rem;
         border: 1px solid #fff;
         background: #000;
         color: #fff;
         box-shadow: 0 8px 28px #0005;
         z-index: 1050
     }

     .mobile-cta-date,
     .mobile-cta-price {
         display: flex;
         flex-direction: column;
         min-width: 0;
         line-height: 1.15
     }

     .mobile-cta-price {
         border-left: 1px solid #777;
         padding-left: .5rem;
     }

     .mobile-cta-date span,
     .mobile-cta-price span {
         color: #c9c9c9;
         font-size: .65rem;
         font-weight: 400;
         text-transform: uppercase
     }

     .mobile-cta-date strong,
     .mobile-cta-price strong {
         margin-top: .2rem;
         font-size: .9rem
     }

     .mobile-cta a {
         display: inline-flex;
         align-items: center;
         justify-content: center;
         min-width: 0;
         width: 100%;
         background: #b7e4a0;
         color: #000;
         padding: .75rem .8rem;
         font-size: .75rem;
         font-weight: 400;
         line-height: 1.2;
         text-align: center;
         text-decoration: none
     }
 }

 @media(max-width:420px) {
     .mobile-cta {
         gap: .35rem;
         left: max(.5rem, env(safe-area-inset-left, 0px));
         right: max(.5rem, env(safe-area-inset-right, 0px));
         padding: .6rem
     }

     .mobile-cta-date span,
     .mobile-cta-price span {
         font-size: .55rem
     }

     .mobile-cta-date strong,
     .mobile-cta-price strong {
         font-size: .72rem
     }

     .mobile-cta-price {
         padding-left: .35rem
     }

     .mobile-cta a {
         padding: .7rem .4rem;
         font-size: .62rem
     }

     .hero h1 {
         font-size: 2.5rem
     }

     .gallery-grid {
         grid-template-columns: 1fr;
         grid-auto-rows: 220px
     }


 }

 .hero {
     background: #0a0a0a !important;
     color: #fff !important;
     border-bottom: 1px solid #454545
 }

 .hero .event-kicker {
     color: #bdbdbd !important
 }

 .hero .event-kicker span {
     background: #bdbdbd !important
 }

 .hero h1 {
     font-size: clamp(2.5rem, 3vw, 3rem) !important;
     line-height: 1 !important;
     letter-spacing: -.03em
 }

 .hero h1 em {
     color: #b7e4a0 !important
 }

 .hero-copy {
     color: #bdbdbd !important
 }

 .hero-meta div {
     border-color: #555 !important;
     display: flex;
     align-items: center;
     gap: .65rem
 }

 .hero-meta strong {
     color: #b7e4a0 !important;
     font-size: 2.35rem !important;
     line-height: 1 !important
 }

 .hero-meta span {
     color: #999 !important;
     line-height: 1.15 !important;
     text-align: left
 }

 .hero-actions .btn-acid {
     background: #fff !important;
     border: 2px solid #fff !important;
     border-radius: 0 !important;
     color: #000 !important;
     box-shadow: 3px 3px 0 #555;
     width: 100%
 }

 .hero-actions .btn-acid:hover {
     background: #d8d8d8 !important;
     border-color: #d8d8d8 !important;
     color: #000 !important;
     box-shadow: 1px 1px 0 #555
 }



 .hero-video {
     border: 1px solid #555 !important;
     background: #161616;
     aspect-ratio: 16/10;
     overflow: hidden
 }

 .hero-video iframe {
     width: 100%;
     height: 100%;
     border: 0;
     filter: grayscale(1)
 }

 .hero-promo {
     display: inline-block;
     width: fit-content;
     max-width: 100%;
     margin: 1.25rem 0 .35rem
 }

 .hero-offer {
     display: grid;
     grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
     justify-content: start;
     gap: .5rem;
     margin: 0 0 .35rem;
     color: #fff;
     width: 100%;
     max-width: none
 }

 .hero-offer-card {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     justify-content: center;
     min-height: 0;
     padding: 0 .55rem;
     border: 1px solid #666;
     background: #050505
 }

 .hero-offer-label {
     font-size: .7rem;
     font-weight: 400;
     /* letter-spacing: .14em; */
     text-transform: uppercase;
     color: #fff
 }

 .hero-offer-date {
     font-size: 1.2rem;
     font-weight: 400;
     line-height: 1.1;
     color: #b7e4a0;
     margin-top: .2rem
 }

 .hero-offer-special {
     font-size: .7rem;
     font-weight: 400;
     letter-spacing: .1em;
     text-transform: uppercase;
     color: #fff
 }

 .hero-offer-price {
     font-size: 1.2rem;
     font-weight: 400;
     line-height: 1.1;
     color: #b7e4a0;
     overflow-wrap: anywhere;
     margin-top: .2rem
 }

 .hero-offer-price del {
     font-size: 1em;
     color: #888;
     margin-left: .25rem
 }

 .hero-offer-seats {
     margin-top: .15rem;
     font-size: .62rem;
     font-weight: 400;
     letter-spacing: .05em;
     text-transform: uppercase;
     color: #999
 }


 .hero-promo .hero-actions {
     width: 100%
 }

 .hero-countdown {
     margin: .5rem 0 0;
     text-align: center;
     color: #999;
     /* font-size: .65rem; */
     font-weight: 400;
     letter-spacing: .05em;
     text-transform: uppercase
 }

 @media(max-width:575.98px) {
     .hero-meta div {
         padding-right: .65rem !important;
         gap: .4rem
     }

     .hero-meta strong {
         font-size: 2.3rem !important
     }

     .hero-meta span {
         font-size: 1rem !important
     }

     .hero-video {
         margin-top: 0
     }
 }

 #learn.section {
     padding: 2.5rem 0;
     background: #000
 }

 #learn .mb-5 {
     margin-bottom: 1.5rem !important
 }

 #learn .display-title {
     /* color: #fff */
 }

 #learn .display-title span {
     color: #b7e4a0
 }

 #learn .section-intro {
     color: #bdbdbd
 }

 .learn-groups {
     display: flex;
     flex-direction: column;
     gap: 1.5rem
 }

 .learn-group-heading {
     display: flex;
     align-items: center;
     gap: 1rem;
     margin-bottom: .65rem;
     border-bottom: 1px solid #555;
     padding-bottom: .45rem
 }

 .learn-group-heading h3 {
     font-size: 1.15rem;
     font-weight: 400;
     margin: 0;
     color: #fff
 }

 .learn-group .row {
     display: grid;
     grid-template-columns: repeat(5, minmax(0, 1fr));
     gap: .65rem;
     --bs-gutter-x: 0;
     --bs-gutter-y: 0
 }

 .learn-group .row>[class*="col-"] {
     width: auto;
     max-width: none;
     padding: 0
 }

 .learn-group .tech-card {
     display: flex;
     align-items: flex-end;
     justify-content: flex-start;
     width: 100%;
     aspect-ratio: 1;
     height: auto;
     min-height: 0;
     padding: .8rem;
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     border: 1px solid #777;
     color: #fff;
     overflow: hidden
 }

 .learn-group .tech-card>b,
 .learn-group .tech-card img {
     display: none
 }

 .learn-group .tech-card>div {
     padding: 0;
     min-width: 0
 }

 .learn-group .tech-card h4 {
     font-size: .8rem;
     line-height: 1.05;
     margin: 0;
     color: #b7e4a0;
     text-align: left;
     text-transform: uppercase;
     font-weight: 400;
     overflow-wrap: anywhere
 }

 @media(max-width:575.98px) {
     #learn.section {
         padding: 2rem 0
     }

     .learn-groups {
         gap: 1.25rem
     }

     .learn-group-heading {
         gap: .7rem
     }

     .learn-group-heading h3 {
         font-size: 1.05rem
     }

     .learn-group .row {
         gap: .35rem
     }

     .learn-group .tech-card {
         padding: .55rem
     }

     .learn-group .tech-card h4 {
         font-size: .50rem
     }
 }

 .dark-panel {
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%) !important
 }

 .dark-panel h2 span {
     color: #b7e4a0
 }

 .dark-panel .farm-carousel {
     aspect-ratio: 16/9;
     background: #000;
     overflow: hidden
 }

 .dark-panel .farm-carousel .carousel-inner,
 .dark-panel .farm-carousel .carousel-item {
     height: 100%
 }

 .dark-panel .farm-carousel img {
     width: 100%;
     height: 100%;
     object-fit: cover
 }

 .dark-panel .farm-carousel .carousel-caption {
     left: 1.25rem;
     right: auto;
     bottom: 1rem;
     text-align: left;
     background: #000b;
     padding: .45rem .7rem
 }

 .dark-panel .farm-carousel .carousel-caption h3 {
     font-size: .9rem;
     margin: 0;
     color: #fff
 }

 .dark-panel .farm-carousel .carousel-indicators {
     margin-bottom: .6rem
 }

 .dark-panel .farm-carousel .carousel-control-prev,
 .dark-panel .farm-carousel .carousel-control-next {
     width: 10%
 }

 .upcoming-batch {
     background: #b7e4a0;
     padding: 2.5rem 0
 }

 .upcoming-batch-copy h2 {
     font-size: clamp(1.8rem, 3vw, 3rem);
     line-height: .92;
     letter-spacing: -.03em;
     font-weight: 400;
     margin: 0;
     color: #000
 }

 .upcoming-batch-copy h2 span {
     display: block;
     color: #073b29
 }

 .upcoming-batch-date {
     display: inline-block;
     margin-top: 1rem;
     padding: .7rem .9rem;
     border: 2px solid #000;
     font-size: clamp(2rem, 4.5vw, 4.5rem);
     line-height: 1;
     font-weight: 400;
     /* letter-spacing: .03em */
 }

 .upcoming-offer {
     display: flex;
     flex-direction: column;
     width: min(100%, 360px);
     background: #000;
     color: #fff;
     border: 1px solid #000;
     box-shadow: 8px 8px 0 #073b29
 }

 .upcoming-offer > img {
     display: block;
     width: 100%;
     height: auto;
     aspect-ratio: 1980 / 1080;
     padding: .75rem;
     object-fit: cover
 }

 .upcoming-offer-content {
     display: flex;
     flex-direction: column;
     padding: 1rem
 }

 .upcoming-offer-label {
     font-size: .65rem;
     font-weight: 400;
     /* letter-spacing: .14em; */
     text-transform: uppercase;
     color: #b7e4a0;
     margin: 0rem;
 }

 .upcoming-offer-price {
     font-size: 1.8rem;
     line-height: 1.1;
     font-weight: 400;
     color: #b7e4a0;
     margin: .3rem 0
 }

 .upcoming-offer-price del {
     font-size: 1.15rem;
     color: #999;
     margin-left: .25rem
 }

 .upcoming-offer-note {
     font-size: .7rem;
     line-height: 1.25;
     color: #d0d0d0
 }

 .upcoming-offer-note strong {
     display: block;
     color: #fff;
     margin-top: .15rem;
     font-size: 1rem
 }

 .upcoming-reserve {
     width: 100%;
     margin-top: .85rem;
     border: 2px solid #b7e4a0 !important;
     border-radius: 0 !important;
     background: #b7e4a0 !important;
     color: #000 !important;
     font-size: 1rem;
     font-weight: 400;
     text-transform: uppercase
 }

 .upcoming-reserve:hover {
     background: #fff !important;
     border-color: #fff !important
 }

 .upcoming-countdown {
     /* margin: .85rem 0 0; */
     color: #999;
     font-size: 1rem;
     font-weight: 400;
     letter-spacing: .05em;
     text-transform: uppercase;
     text-align: center
 }

 @media(max-width:575.98px) {
     .upcoming-batch {
         padding: 2rem 0
     }

     .upcoming-batch-copy h2 {
         font-size: 2rem
     }

     .upcoming-batch-date {
         font-size: 2.5rem
     }

     .upcoming-offer {
         width: 100%
     }

     .upcoming-offer-content {
         padding: .85rem
     }

     .upcoming-offer-price {
         font-size: 1.45rem
     }

     .upcoming-offer-price del {
         font-size: 1.6rem
     }

     .upcoming-reserve {
         font-size: .95rem
     }
 }

 .promise-section {
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     padding: 4rem 0
 }

 .promise-grid {
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     gap: 1rem
 }

 .promise-card {
     display: flex;
     align-items: flex-end;
     min-height: 180px;
     padding: 1.5rem;
     border: 1px solid #777;
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     color: #fff
 }

 .promise-card h3 {
     margin: 0;
     color: #b7e4a0;
     font-size: clamp(1.5rem, 2.5vw, 2.2rem);
     line-height: 1.05;
     font-weight: 400;
     text-transform: uppercase
 }

 .promise-card p {
     margin: .45rem 0 0;
     color: #fff;
     font-size: .85rem;
     line-height: 1.25;
     font-weight: 400
 }

 .promise-intro {
     margin-bottom: 1.5rem;
     color: #fff
 }

 .promise-intro span {
     color: #b7e4a0
 }

 @media(max-width:575.98px) {
     .promise-section {
         padding: 2.5rem 0
     }

     .promise-grid {
         gap: .65rem
     }

     .promise-card {
         min-height: 125px;
         padding: .8rem
     }

     .promise-card h3 {
         font-size: 1.05rem
     }

     .promise-card p {
         font-size: .7rem
     }
 }

 .agenda-item:not(:last-child):before {
     left: 102px;
     top: 12px;
     transform: translateX(-50%)
 }

 @media(max-width:767px) {
     .agenda-item:not(:last-child):before {
         left: 76px;
         top: 12px;
         transform: translateX(-50%)
     }
 }

 #stories.section {
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     padding-top: 4rem;
     padding-bottom: 4rem
 }

 #stories .display-title {
     color: #fff
 }

 #stories .section-intro {
     color: #fff
 }

 #stories .eyebrow {
     color: #b7e4a0
 }

 .stories-carousel {
     position: relative
 }

 .stories-carousel .carousel-inner {
     padding: .25rem
 }

 .story-card {
     display: flex;
     flex-direction: column;
     height: 100%;
     border: 1px solid #777;
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     box-shadow: 6px 6px 0 #073b29;
     color: #fff
 }

 .story-card img {
     display: block;
     width: 100%;
     height: auto;
     aspect-ratio: 16/9;
     object-fit: cover;
     object-position: center 32%;
     background: #102b23
 }

 .story-card-content {
     display: flex;
     flex: 1;
     flex-direction: column;
     padding: 1rem
 }

 .story-card h3 {
     margin: 0 0 .85rem;
     color: #b7e4a0;
     font-size: 1.05rem;
     font-weight: 400
 }

 .story-card-details {
     display: flex;
     flex-direction: column;
     margin: 0;
     border-top: 1px solid #555
 }

 .story-card-details div {
     display: grid;
     grid-template-columns: 7.5rem 1fr;
     gap: .5rem;
     padding: .45rem 0;
     border-bottom: 1px solid #444;
     font-size: .78rem
 }

 .story-card-details dt {
     color: #aaa;
     font-size: .65rem;
     font-weight: 400;
     letter-spacing: .06em;
     text-transform: uppercase
 }

 .story-card-details dd {
     margin: 0;
     color: #fff
 }

 .stories-carousel .carousel-control-prev,
 .stories-carousel .carousel-control-next {
     width: 4%;
 }

 .stories-carousel .carousel-indicators {
     position: static;
     margin: 1rem 0 0
 }

 .stories-carousel .carousel-indicators button {
     background-color: #b7e4a0
 }

 .stories-carousel .carousel-control-prev-icon,
 .stories-carousel .carousel-control-next-icon {
     background-color: #000;
     padding: 1rem;
     background-size: 55%
 }

 @media(max-width:767px) {

     .stories-carousel .carousel-inner {
         padding: .25rem 0
     }

     .stories-carousel .carousel-item .row {
         --bs-gutter-x: 0;
         margin: 0
     }

     .stories-carousel .carousel-item .col-md-4 {
         width: 80%;
         padding: 0;
         margin-inline: auto
     }

     .stories-carousel .story-card-details div {
         grid-template-columns: 6.5rem minmax(0, 1fr)
     }

     .stories-carousel .carousel-control-prev,
     .stories-carousel .carousel-control-next {
         width: 10%;
         opacity: 1
     }

     .stories-carousel .carousel-control-prev-icon,
     .stories-carousel .carousel-control-next-icon {
         width: 2rem;
         height: 2rem;
         border-radius: 50%;
         background-color: #174734;
         box-shadow: 0 3px 12px #102b2355
     }

 }

 #gallery.gallery-section .gallery-grid {
     display: grid;
     grid-template-columns: repeat(4, minmax(0, 1fr));
     grid-auto-rows: auto;
     gap: 1rem
 }

 #gallery.gallery-section .gallery-item {
     display: block;
     width: 100%;
     aspect-ratio: 16/9;
     grid-column: auto;
     grid-row: auto;
     border: 1px solid #777;
     padding: 0;
     background: #000;
     overflow: hidden;
     cursor: zoom-in
 }

 #gallery.gallery-section .gallery-item:after,
 #gallery.gallery-section .gallery-item span {
     display: none
 }

 #gallery.gallery-section .gallery-item img {
     display: block;
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: transform .3s
 }

 #gallery.gallery-section .gallery-item:hover img {
     transform: scale(1.04)
 }

 #gallery.gallery-section .gallery-item.load-more-item {
     display: none
 }

 .gallery-load-more {
     display: block;
     margin: 1.5rem auto 0;
     padding: .8rem 2rem;
     border: 2px solid #b7e4a0;
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     color: #b7e4a0;
     font-size: .85rem;
     font-weight: 400;
     letter-spacing: .08em;
     text-transform: uppercase
 }

 .gallery-load-more:hover {
     background: #b7e4a0;
     color: #000
 }

 .gallery-load-more.is-hidden {
     display: none
 }

 @media(max-width:767px) {
     #gallery.gallery-section .gallery-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr));
         gap: .65rem
     }
 }

 .variations-section {
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     padding: 4rem 0
 }

 .variations-intro {
     max-width: 760px
 }

 .variations-intro .display-title {
     color: #fff
 }

 .variations-intro .section-intro {
     color: #fff
 }

 .variation-grid {
     display: grid;
     grid-template-columns: repeat(4, minmax(0, 1fr));
     gap: 1rem
 }

 .variation-card {
     position: relative;
     min-height: 390px;
     overflow: hidden;
     border: 1px solid #777;
     background: #000;
     color: #fff
 }

 .variation-card img {
     position: absolute;
     inset: 0;
     width: 100%;
     height: 100%;
     object-fit: cover;
     opacity: .72;
     transition: transform .35s
 }

 .variation-card:hover img {
     transform: scale(1.04)
 }

 .variation-card:after {
     content: "";
     position: absolute;
     inset: 35% 0 0;
     background: linear-gradient(transparent, #000e)
 }

 .variation-card-content {
     position: absolute;
     z-index: 1;
     left: 1.25rem;
     right: 1.25rem;
     bottom: 1.25rem
 }

 .variation-card-content .eyebrow {
     margin: 0 0 .45rem;
     color: #b7e4a0
 }

 .variation-card h3 {
     margin: 0;
     color: #fff;
     font-size: 1.35rem;
     line-height: 1.05;
     font-weight: 400;
     text-transform: uppercase
 }

 .variation-card p {
     margin: .5rem 0 0;
     color: #fff;
     font-size: .82rem;
     line-height: 1.3
 }

 .variation-card p strong {
     color: #b7e4a0
 }

 @media(max-width:767px) {
     .variations-section {
         padding: 2.5rem 0
     }

     .variation-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr))
     }

     .variation-card {
         min-height: 250px
     }

     .variation-card-content {
         left: .75rem;
         right: .75rem;
         bottom: .75rem
     }

     .variation-card h3 {
         font-size: 1rem
     }

     .variation-card p {
         font-size: .75rem
     }
 }

 .included-section {
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%) !important
 }

 .review-reels {
     display: flex;
     flex-direction: column;
     gap: 1rem;
     width: 100%;
     overflow: hidden
 }

 .review-reel-row {
     display: flex;
     width: max-content;
     gap: 1rem;
     animation: reviewReelForward 90s linear infinite
 }

 .review-reel-row.reverse {
     animation-name: reviewReelReverse
 }

 .review-reel {
     width: calc((100vw - 4rem)/5);
     aspect-ratio: 9/16;
     flex: 0 0 auto;
     background: #000;
     border: 1px solid #777;
     overflow: hidden
 }

 .review-reel iframe {
     width: 100%;
     height: 100%;
     border: 0;
     display: block
 }

 .review-reels:hover .review-reel-row {
     animation-play-state: paused
 }

 @keyframes reviewReelForward {
     from {
         transform: translateX(0)
     }

     to {
         transform: translateX(-50%)
     }
 }

 @keyframes reviewReelReverse {
     from {
         transform: translateX(-50%)
     }

     to {
         transform: translateX(0)
     }
 }

 @media(max-width:767px) {
     .review-reel {
         width: calc((100vw - 1rem)/2)
     }
 }

 @media(prefers-reduced-motion:reduce) {
     .review-reel-row {
         animation: none
     }
 }

 .closing-section {
     background: #000 !important
 }

 .closing-section .closing-card {
     background: transparent !important
 }

 .display-title,
 .upcoming-batch-copy h2,
 .closing-card h2 {
     font-size: clamp(2.5rem, 3vw, 3rem) !important;
     line-height: 1 !important;
     letter-spacing: -.03em
 }

 .location-section {
     background: #f2f5f0;
     padding: 5rem 0
 }

 .location-map {
     width: 100%;
     height: 100%;
     min-height: 420px;
     border: 1px solid #777
 }

 .location-copy h2 {
     color: #14241d
 }

 .location-copy .eyebrow {
     color: #07834b
 }

 .location-copy h3 {
     font-size: 1.05rem;
     color: #07834b;
     font-weight: 400;
     margin: 1.5rem 0 .4rem;
     text-transform: uppercase
 }

 .location-copy p {
     color: #66756d;
     line-height: 1.5;
     margin: 0
 }

 .location-copy .location-name {
     color: #14241d;
     font-size: 1.25rem;
     font-weight: 400;
     margin: 0
 }

 @media(max-width:991px) {
     .location-map {
         height: 360px;
         min-height: 0
     }

     .location-copy {
         padding-top: 0
     }
 }

 .certificate-section {
     background: linear-gradient(145deg, #000 0%, #171717 58%, #303030 100%);
     padding: 5rem 0
 }

 .certificate-image {
     display: block;
     width: 100%;
     height: auto;
     object-fit: contain;
     border: 0
 }

 .certificate-copy .eyebrow {
     color: #b7e4a0
 }

 .certificate-copy h2 {
     color: #fff
 }

 .certificate-copy p {
     color: #fff;
     line-height: 1.6
 }

 @media(max-width:991px) {
     .certificate-section {
         padding: 3rem 0
     }
 }

/* Training landing page visual system */
:root {
    --deep: #102b23;
    --forest: #174734;
    --green: #23744d;
    --acid: #b7e4a0;
    --paper: #faf7ef;
    --ink: #17372b;
    --muted: #5e7066;
    --line: #d8e3d8;
}

body {
    background: var(--paper);
    color: var(--ink);
    font-family: Arial, Helvetica, sans-serif;
    /* letter-spacing: .005em; */
    line-height: 1.7;
}

h1, h2, h3, h4 {
    font-family: Arial, Helvetica, sans-serif;
    letter-spacing: -.02em;
}

p {
    line-height: 1.7;
}

.topbar {
    background: #102b23 !important;
    background-image: none !important;
    border-bottom: 1px solid #ffffff24;
    color: #f7f2e5;
}

.navbar {
    background: rgba(255, 252, 244, .97);
    border-bottom: 1px solid #d8e3d8;
    box-shadow: 0 5px 22px #102b230d;
}

.navbar-actions .btn,
.hero-actions .btn-acid,
.closing-card .btn-acid {
    background: var(--acid) !important;
    border: 2px solid var(--acid) !important;
    border-radius: 999px !important;
    color: #183426 !important;
    box-shadow: 0 7px 18px #102b232a;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.navbar-actions .btn:hover,
.hero-actions .btn-acid:hover,
.closing-card .btn-acid:hover {
    background: #d5f1c9 !important;
    border-color: #d5f1c9 !important;
    color: #183426 !important;
    box-shadow: 0 11px 25px #102b2333;
    transform: translateY(-2px);
}

.hero {
    position: relative;
    padding: clamp(4rem, 7vw, 7rem) 0;
    background: radial-gradient(circle at 85% 16%, #76b78b65, transparent 31%),
        radial-gradient(circle at 4% 98%, #b7e4a030, transparent 29%),
        linear-gradient(135deg, #102b23 0%, #1d563b 62%, #2a6b46 100%) !important;
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .2;
    pointer-events: none;
    background-image: repeating-linear-gradient(130deg, transparent 0 55px, #ffffff14 56px 57px);
}

.hero .container {
    position: relative;
}

.hero h1 {
    max-width: 12ch;
    font-size: clamp(3rem, 5vw, 5.3rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.hero h1 em,
.event-kicker,
.hero-meta strong {
    color: #b7e4a0 !important;
}

.hero-copy {
    max-width: 52ch;
    color: #e1eee1 !important;
    font-size: 1.08rem;
    line-height: 1;
}

.hero-meta {
    margin: 2rem 0 1.4rem;
}

.hero-meta div {
    border-color: #ffffff50;
}

.hero-meta span {
    color: #d4e5d5 !important;
}

.hero-video {
    border: 7px solid #fffdf2 !important;
    border-radius: 22px;
    box-shadow: 0 30px 70px #071b1580;
    transform: rotate(1.5deg);
}

.hero-video iframe {
    filter: none;
}

.hero-promo {
    display: block;
    max-width: 510px;
    width: 100%;
}

.hero-offer {
    gap: .65rem;
}

.hero-offer-card {
    min-height: 82px;
    padding: .8rem 1rem;
    border: 1px solid #ffffff40;
    border-radius: 12px;
    background: #0b251dcc;
}

.hero-offer-date,
.hero-offer-price {
    color: #b7e4a0;
}

.hero-offer-label,
.hero-offer-special {
    color: #f5f7ec;
}

.hero-promo .hero-actions .btn {
    width: 100%;
    min-height: 54px;
    letter-spacing: .035em;
    margin-top: 1rem;
}

.hero-countdown {
    color: #d1e3d2;
}

.trust-strip {
    background: linear-gradient(135deg, #edf5e8, #dcebdd);
}

.trust-strip .container {
    position: relative;
    z-index: 1;
    margin-top: -1.4rem;
    /* border-radius: 16px; */
    background: #fffdf8;
    box-shadow: 0 16px 40px #102b231c;
    overflow: hidden;
}

.trust-item {
    padding: 1.4rem 1.6rem;
    border-color: #d8e3d8;
}

.trust-item strong {
    color: #174734;
    font-size: 1.2rem;
}

.section {
    padding-top: clamp(3.5rem, 6vw, 6rem);
    padding-bottom: clamp(3.5rem, 6vw, 6rem);
}

.display-title,
.upcoming-batch-copy h2,
.closing-card h2 {
    font-size: clamp(2.4rem, 4vw, 4rem) !important;
    line-height: 1.14 !important;
    letter-spacing: -.025em;
    margin-bottom: 1.1rem;
    font-weight: 900 !important;
}

.section-intro {
    max-width: 70ch;
    color: #5e7066;
    font-size: 1.07rem;
    line-height: 1.5;
}

.eyebrow {
    color: #b7e4a0;
}

#learn.section {
    background: linear-gradient(145deg, #e8f2e6 0%, #f7faf2 55%, #dfecdf 100%);
    padding-top: 5rem;
    padding-bottom: 5rem;
}

#learn .learn-group-heading h3 {
    color: #17372b;
    font-weight: 900 !important;
    text-transform: uppercase;
}


#learn .section-intro {
    color: #526a5c;
}

.learn-group-heading {
    border-color: #b8d0bc;
}

.learn-group .tech-card {
    border: 1px solid #c5d8c6;
    border-radius: 12px;
    background: linear-gradient(160deg, #fffefa, #f1f8ed);
    box-shadow: 0 5px 15px #17372b0c;
}

.learn-group .tech-card h4 {
    color: #174734;
}

.dark-panel,
.included-section {
    background: linear-gradient(145deg, #102b23, #174734) !important;
}

.dark-panel h2 span,
.included-section h2 span,
.knowledge-grid h3,
.included-grid h3 {
    color: #b7e4a0;
}

.dark-panel .farm-carousel {
    border: 7px solid #fffdf2;
    border-radius: 18px;
    box-shadow: 0 24px 55px #071b1555;
}

.knowledge-grid,
.included-grid {
    border-color: #ffffff35;
}

.knowledge-grid div,
.included-grid div {
    border-color: #ffffff35;
}

.knowledge-grid p {
    color: #d1e3d2;
}

.upcoming-batch {
    background: linear-gradient(120deg, #c9eabc 0%, #e5f4d7 52%, #b1ddb0 100%);
    padding: 3.5rem 0;
}

.upcoming-batch-copy h2,
.upcoming-batch-copy h2 span {
    color: #17372b;
    font-weight: 900 !important;
    text-transform: uppercase;
}

.upcoming-batch-date {
    border-color: #17372b;
    border-radius: 12px;
    color: #17372b;
}

.upcoming-offer {
    border: 0;
    border-radius: 18px;
    background: #102b23;
    box-shadow: 12px 12px 0 #174734;
    overflow: hidden;
}

.upcoming-offer img {
    padding: 0;
}

.upcoming-offer-content {
    padding: 1.4rem;
}

.upcoming-offer-label{
    color: #b7e4a0;
    font-size: 1rem;
}

.upcoming-offer-price {
    color: #b7e4a0;
    font-size: 2.5rem;
}

.upcoming-reserve {
    min-height: 50px;
    border-color: #b7e4a0 !important;
    border-radius: 999px !important;
    background: #b7e4a0 !important;
    color: #17372b !important;
}

.upcoming-reserve:hover {
    background: #d5f1c9 !important;
    border-color: #d5f1c9 !important;
}

.promise-section {
    background: linear-gradient(135deg, #fffefa, #eef5e9);
}

.promise-intro {
    color: #23744d;
}

.promise-card {
    border: 1px solid #d8e3d8;
    border-radius: 16px;
    background: linear-gradient(150deg, #f4f9f0, #dfeee0);
    color: #17372b;
}

.promise-card h3 {
    color: #174734;
    font-weight: 800 !important;
}

.promise-card p {
    color: #526a5c;
    line-height: 1.55;
}

.agenda-section,
.gallery-section,
.faq-section {
    background: linear-gradient(150deg, #fffefa, #f1f7ed);
}

.agenda-item p,
.knowledge-grid p,
.accordion-body {
    line-height: 1.6;
}

.agenda-item time,
.agenda-item span {
    color: #23744d;
}

.agenda-item i {
    border-color: #23744d;
    background: #faf7ef;
}

#stories.section {
    background: linear-gradient(145deg, #102b23, #174734);
}

#stories .eyebrow,
.story-card h3 {
    color: #b7e4a0;
}

.story-card {
    border-color: #ffffff35;
    border-radius: 14px;
    background: #214e3a;
    box-shadow: 6px 6px 0 #0b251d;
    overflow: hidden;
}

#gallery.gallery-section .gallery-item {
    border: 0;
    border-radius: 4px;
    box-shadow: 0 8px 25px #102b2319;
}

.gallery-load-more {
    border-color: #174734;
    border-radius: 999px;
    background: #174734;
    color: #fffdf8;
}

.gallery-load-more:hover {
    background: #23744d;
    color: #fffdf8;
}

.variations-section {
    background: linear-gradient(145deg, #dfecdf, #f3f8ef);
}

.variations-intro .display-title,
.variations-intro .section-intro {
    color: #17372b;
}

.variations-intro .eyebrow {
    color: #23744d;
}

.variation-card {
    border: 0;
    border-radius: 16px;
    box-shadow: 0 12px 30px #102b2325;
}

.variation-card p strong {
    color: #b7e4a0;
}

#reviews.section {
    background: linear-gradient(150deg, #fffefa, #edf5e8);
}

.review-reel {
    border-radius: 12px;
    border-color: #d8e3d8;
}

.certificate-section {
    background: linear-gradient(130deg, #dcebdd, #f1f8eb);
}

.certificate-copy h2,
.certificate-copy p {
    color: #17372b;
}

.certificate-copy .eyebrow {
    color: #23744d;
}

.certificate-image {
    border: 0;
    border-radius: 0;
    box-shadow: 0 18px 35px #102b2338;
}

.location-section {
    background: linear-gradient(150deg, #fffefa, #eaf3e7);
}

.location-map {
    border: 7px solid #fffdf8;
    border-radius: 18px;
    box-shadow: 0 18px 40px #102b231c;
}

.closing-section {
    background: #102b23 !important;
}

.closing-section .closing-card {
    border: 1px solid #ffffff35;
    border-radius: 18px;
    background: radial-gradient(circle at 90% 20%, #3b805355, transparent 40%), #174734 !important;
}

footer {
    background: #0b251d;
}

.mobile-cta {
    background: #102b23;
}

@media (max-width: 767px) {
    .hero {
        padding: 3.5rem 0 4rem;
    }

    .hero h1 {
        max-width: none;
        font-size: clamp(2.55rem, 11vw, 4rem);
    }

    .hero-video {
        transform: none;
    }

    .trust-strip .container {
        margin-top: -.8rem;
    }

    #learn.section {
        padding: 3.5rem 0;
    }

    .upcoming-batch {
        padding: 2.8rem 0;
    }

    .mobile-cta {
        border-radius: 14px;
        border-color: #b7e4a0;
        box-shadow: 0 12px 35px #071b1570;
    }

    .mobile-cta a {
        border-radius: 9px;
        background: #b7e4a0;
        color: #17372b;
    }
}

@media (max-width: 575.98px) {
    .learn-group .row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .65rem;
    }

    .learn-group .tech-card {
        min-height: 105px;
        aspect-ratio: auto;
        padding: .85rem;
    }

    .learn-group .tech-card h4 {
        font-size: .7rem;
        line-height: 1.2;
        font-weight: 900 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .navbar-actions .btn,
    .hero-actions .btn-acid,
    .closing-card .btn-acid {
        transition: none;
    }
}

body, body *, body *::before, body *::after {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 400 !important;
}

body a[href="https://rzp.io/rzp/practical-training"],
body a[href="https://rzp.io/rzp/practical-training"]::after {
    font-weight: 900 !important;
}

body a[href="https://rzp.io/rzp/practical-training"]::after {
    content: "→";
    display: inline-block;
    margin-left: .45em;
}

.lightbox {
    padding: 1.5rem;
}

.lightbox-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    width: min(100%, 1100px);
}

.lightbox-content img {
    display: block;
    max-width: calc(100vw - 9rem);
    max-height: 84vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 6px;
}

.lightbox-controls {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .75rem;
    flex: 0 0 auto;
}

.lightbox-controls button {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    padding: 0;
    border: 1px solid #b7e4a0;
    border-radius: 50%;
    background: #174734;
    color: #fff;
    font-size: 1.5rem;
    cursor: pointer;
}

.lightbox-controls button:hover,
.lightbox-controls button:focus-visible {
    background: #23744d;
}

.lightbox-count {
    color: #fff;
    font-size: .8rem;
    white-space: nowrap;
}

@media (max-width: 767px) {
    .lightbox {
        padding: 3.5rem 1rem 1rem;
    }

    .lightbox-content {
        flex-direction: column;
        gap: 1rem;
    }

    .lightbox-content img {
        max-width: 100%;
        max-height: calc(100dvh - 10rem);
    }

    .lightbox-controls {
        flex-direction: row;
        gap: 1rem;
    }
}

/* Included training books */
.included-grid {
    display: block;
    margin: 0;
    border: 0;
}

 .included-books {
    display: block;
    width: 100%;
    height: auto;
    clip-path: url(#included-book-cutouts);
}

/* Shared section titles, matching the Learn section. */
.display-title {
    font-size: clamp(2.4rem, 4vw, 4rem) !important;
    line-height: 1.14 !important;
    letter-spacing: -.025em;
    margin-bottom: 1.1rem;
    font-weight: 900;
    text-transform: uppercase;
    color: #17372b;
}


.display-white {
    font-size: clamp(2.4rem, 4vw, 4rem) !important;
    line-height: 1.14 !important;
    letter-spacing: -.025em;
    margin-bottom: 1.1rem;
    font-weight: 900 !important;
    text-transform: uppercase;
    color: #fff;
}

.display-title span {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    font-weight: inherit;
    text-transform: inherit;
    color: #23744d !important;
}

.display-white span {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    font-weight: inherit;
    text-transform: inherit;
    color: #b7e4a0 !important;
}

/* Payment methods beneath booking cards and the closing action. */
.payment-methods {
    display: block;
    width: 100%;
    max-width: 360px;
    height: auto;
    margin: 1.5rem 0 0;
    border: 0;
    border-radius: 8px;
    background: #fff;
}

.closing-card .payment-methods {
    margin: 0 auto;
}

@media (max-width: 575.98px) {
    .upcoming-batch .payment-methods {
        max-width: none;
    }
}

/* Cancellation reassurance at every reservation action. */
.refund-note {
    margin: .5rem 0 0;
    font-size: .9rem;
    line-height: 1.45;
    text-align: center;
    color: inherit;
}

.reservation-action {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 270px;
}

.hero .refund-note {
    color: #fff;
}

.closing-card .refund-note {
    margin: 0;
    max-width: 360px;
    align-self: center;
}

.mobile-cta .refund-note {
    grid-column: 1 / -1;
    margin: 0;
    color: #fff;
    font-size: .9rem;
}

@media (max-width: 767px) {
    body {
        padding-bottom: calc(155px + env(safe-area-inset-bottom, 0px));
    }
}

/* Technology pictograms share the cards' botanical green palette. */
.learn-group .tech-card > div {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .65rem;
}

.tech-icon {
    display: block;
    width: 68px;
    height: 68px;
    flex: 0 0 auto;
    color: #23744d;
}

@media (min-width: 992px) {
    .learn-group .tech-card {
        aspect-ratio: auto;
        height: 100%;
        min-height: 0;
        padding: .65rem .8rem;
        align-items: flex-start;
    }

    .learn-group .tech-card > div {
        gap: .35rem;
    }
}
