*{
    /*border: 1px solid red !important;*/
}
/*************************************************************************************************************
 * ELEMENT: SWITCH
 **************************************************************************************************************/
/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;  
    width: 60px;
    height: 34px;
}

/* Hide default HTML checkbox */
.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

/* The slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

input:checked + .slider {
    background-color: #2196F3;
}

input:focus + .slider {
    box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
    transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}
/*************************************************************************************************************
 * ELEMENT: PROGRESS BAR
 **************************************************************************************************************/
.progress-bar, .progress-bar .progress  {
    height:8px;
}

.progress-bar {
    width:100%;
    background: #fff;
}

.progress-bar .progress {
    position: relative;
    background-color: #f58220;
}

.progress-bar .progress:after {
    position:absolute;
    display: block;
    content: '';
    height:16px;
    width:16px;
    right:0;
    top:-50%;
    border-radius: 50%;
    background-color: #f58220;
    transform: translateX(50%);
}

.progress-bar .count {
    color:#fff;
    position: absolute;
    display:block;
    bottom: 20px;
    right:0;
    transform: translateX(50%);
    font-family: "Helvetica Neue LT Std Cn", sans-serif;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 1px;
    text-transform: uppercase;
}
/*************************************************************************************************************
 * SECTION: GENERAL LAYOUT
 **************************************************************************************************************/
.section {
    align-items: center;
    padding: 50px 10px;
    display: flex;
    flex-direction: column;
}
/*************************************************************************************************************
 * SECTION: HERO
 **************************************************************************************************************/
/**
 * layout
 */
.section-hero {
    background-size: cover;
    background-position: center bottom;
}

.section-hero h1 {
    line-height: 0;
}

.section-hero h2 {
    font-family: 'Helvetica Neue LT Std Cn', sans-serif, '-apple-system';
    color:#fff;
    font-size: 40px;
    letter-spacing: 1px;
    line-height: 51px;
    font-weight: normal;
}

.section-hero .content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top:43px;
    gap: 43px;
}

.section-hero .text {
    text-align: center;
}

.section-hero .text > * {
    max-width:506px;
}

.section-hero .sub-content-1 {
    font-family: 'Helvetica Neue LT Std', sans-serif, '-apple-system';
    font-size: 19px;
    line-height: 27px;
    color: #fff;
    font-weight: 500;
    margin-top:23px;
}

.section-hero .sub-content-2 {
    font-family: 'Helvetica Neue LT Std', sans-serif, '-apple-system';
    font-size: 18px;
    line-height: 26px;
    color: #ffffff;
    font-weight: 400;
}

.section-hero hr {
    width: 205px;
    height: 1px;
    background-color: #f6f6f7;
    border: 0;
    opacity:0.45;
    margin: 25px auto;
}

.section-hero .progress-bar {
    margin-top:60px;
}

.section-hero .goal {
    margin-top:12px;
    font-size: 18px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 500;
    font-family: 'Helvetica Neue LT Std Cn', sans-serif, '-apple-system';
    display:flex;
    color: #fff;
    justify-content: space-between;
}

/**
 * DONATE
 */
.partners-donate {
    overflow: hidden;
    max-width: 410px;
}

.partners-donate-container {
    background: #fff;
    border-radius: 3px;
}

.partners-donate header {
    background-color: #f4f5f0;
    border: 1px solid #e0e0e0;
    font-size: 16px;
    letter-spacing: 1px;
    color: #7a7c81;
    font-family: 'Helvetica Neue LT Std', sans-serif, '-apple-system';
    text-align: center;
    font-weight: bold;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
}

.partners-donate .buttons {
    padding: 25px 20.5px;
}

.partners-donate .buttons-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 1fr;
    column-gap: 7.5px;
    row-gap: 9px;
}

.partners-donate .donate-button {
    border-radius: 4px;
    background-color: #f4f5f0;
    border: 1px solid #e0e0e0;
    font-size: 15px;
    color: #7a7c81;
    font-family: 'Helvetica Neue LT Std Cn', sans-serif, '-apple-system';;
    text-align: center;
    padding: 16.5px 0;
    font-weight: 500;
    cursor: pointer;
}

.partners-donate .donate-button[data-selected="true"] {
    background-color: #0693e3;
    color: #fff;
}

.partners-donate .amount-custom {
    grid-column-start: span 3;
    display:flex;
    flex-direction: column;
    align-items: center;
}

.partners-donate .amount-custom input {
    /**
     RESET
     */
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-background-clip: padding;
    -moz-background-clip: padding;
    background-clip:padding-box;
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
    color:#000;
    outline:0;
    margin:0;
    font-size: 17px;
    /*
    styles
     */
    vertical-align: middle;
    border:0;
    line-height: 20px;
    text-align:center;
    width:60px;
    background:transparent;
    height:100%;
}

.partners-donate .input-wrap {
    display:flex;
    align-items: baseline;
    background:white;
    padding:5px;
}
.partners-donate .input-wrap::before, .partners-donate .input-wrap::after {
    display:block;
    line-height: 20px;
    color:#0085ca;
    font-weight: 750;
    font-size: 17px;
}

.partners-donate .input-wrap::before{
    content: '$';
}

.partners-donate .input-wrap::after {
    content: 'USD';
}

.partners-donate .donate-price {
    font-weight: 750;
    font-size: 17px;
}

.partners-donate .go-to-cart {
    border-radius: 4px;
    background-color: #0693e3;
    font-size: 16px;
    letter-spacing: 2px;
    color: #ffffff;
    font-family: 'Helvetica Neue LT Std', sans-serif, '-apple-system';
    text-align: center;
    text-transform: uppercase;
    padding: 17.5px 0;
    margin-top: 10px;
    display: block;
    text-decoration: none;
}

.partners-donate footer {
    height: 85px;
    border-top: 1px solid #e0e0e0;
    color:#7a7c81;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.partners-donate .error {
    color:#d00;
    font-size: 13px;
    text-align: center;
    margin-top: 10px;
}

.partners-donate .error.hide{
    display: block;
}

.partners-donate .hide {
    visibility:hidden;
}

.partners-donate .force-show {
    visibility: visible;
}

.partners-donate  .legal {
    margin:14px auto 0 auto;
    max-width:290px;
    font-size: 13px;
    letter-spacing: 0;
    line-height: 17px;
    color: #ffffff;
    font-weight: 400;
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    text-align: center;
}

/**
 * guidestar seal
 */
.secure-section {
    max-width: 90%;
    color:#fff;
}

/*************************************************************************************************************
 * SECTION: COMMITMENT
 **************************************************************************************************************/
.section-commitment header {
    max-width: 882px;
}
.section-commitment h2 {
    font-size: 70px;
    letter-spacing: 5px;
    line-height: 76px;
    text-transform: uppercase;
    color: #0693e3;
    font-weight: 400;
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    text-align: center;
}

.section-commitment .text-1 {
    color:#000;
    font-size: 19px;
    line-height: 30px;
    font-family: "Helvetica Neue LT Std Roman", sans-serif, '-apple-system';
    font-weight: 400;
    text-align: center;
}

.section-commitment .text-1 strong {
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
}

.section-commitment .subtitle{
    margin-top:30px;
    font-size: 30px;
    letter-spacing: 2px;
    color: #0693e3;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
}

.section-commitment .cards-wrapper {
    margin-top: 34px;
    padding: 0 83px;
}

.section-commitment .cards {
    max-width: 1250px;
    display: grid;
    gap:25px;
}

.section-commitment .cards .card {
    text-align: center;
}

.section-commitment .cards .image-wrapper {
    position: relative;
    padding-top: 60%;
}

.section-commitment .card img {
    position:absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
}

.section-commitment .card .title {
    display: block;
    margin-top:25px;
    font-size: 23px;
    letter-spacing: 2px;
    line-height: 28px;
    text-transform: uppercase;
    color: #0693e3;
    font-weight: 700;
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
}

.section-commitment .card .blurb {
    margin-top:10px;
    font-size: 19px;
    line-height: 29px;
    color: #000;
    font-weight: 400;
    font-family: "Helvetica Neue LT Std Roman", sans-serif, '-apple-system';
    text-align: center;
}

/*************************************************************************************************************
 * SECTION: VIDEO
 **************************************************************************************************************/
.section-video {
    background: url(https://storage.googleapis.com/harvest.org/harvestsite/0d1ec46e-rectangle-1088-min.jpg) no-repeat center top, linear-gradient(180deg, #F5751A 423px, transparent 0);
    background-size: auto 423px, auto auto;
    display:flex;
    flex-direction: column;
    text-align: center;
}
.section-video header {
    width:100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.section-video h2 {
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    font-size: 38px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 400;
    line-height: 1;
}

.section-video .video-wrapper-wrapper {
    margin-top:59px;
    max-width: 960px;
    width:75%;
}

.section-video .video-wrapper {
    width: 100%;
    position:relative;
    padding-bottom: 56.25%;
    height: 0;
}

.section-video .video {
    position: absolute;
    left:0;
    top: 0;
    width:100%;
    height:100%;
}

.section-video .details {
    display: flex;
    flex-direction: column;
}

.section-video .details h2 {
    margin-top: 76px;
    font-size: 70px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #0693e3;
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    font-weight: 400;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.section-video .details h2 .subtitle {
    font-size: 30px;
    letter-spacing: 2px;
    line-height: 44px;
}

.section-video .row {
    display: inline-flex;
    justify-content: center;
}

.section-video .row1 {
    margin-top: 44px;
}

.section-video .row {
    margin-top: 37px;
}

.section-video .price-card {
    width:33%;
    max-width: 310px;
    text-align: center;
    padding:0 5px;
}

.price-card .price {
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    font-size: 30px;
    letter-spacing: 1px;
    line-height: 24px;
    color: #0693e3;
    font-weight: 400;
}

.price-card .price strong{
    font-size: 50px;
    letter-spacing: 2px;
    line-height: 24px;
    font-weight: 500;
    text-transform: uppercase;
}

.price-card .text {
    font-family: "Helvetica Neue LT Std Roman", sans-serif, '-apple-system';
    font-size: 19px;
    line-height: 26px;
    color: #000000;
    font-weight: 400;
}

/*************************************************************************************************************
 * SECTION: VIDEO
 **************************************************************************************************************/
.section-benefits {
    background: url(https://storage.googleapis.com/harvest.org/harvestsite/cfcac863-bg-benefits.jpg);
    background-size: cover;
    text-align:center;
}

.section-benefits h2 {
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    font-size: 70px;
    letter-spacing: 6px;
    line-height: 76px;
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 700;
}

.section-benefits .subtitle {
    font-family: "Helvetica Neue LT Std Roman", sans-serif, '-apple-system';
    font-size: 19px;
    line-height: 33px;
    color: #ffffff;
    font-weight: 400;
}

.section-benefits .subtitle strong {
    font-family: "Helvetica Neue LT Std", sans-serif, '-apple-system';
}

.section-benefits h3 {
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    font-size: 30px;
    letter-spacing: 2px;
    line-height: 44px;
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 500;
}

.section-benefits .benefits {
    margin-top:38px;
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    width:100%;
    gap:50px;
    max-width:961px;
}

.section-benefits .benefit {
    text-align: center;
    color:#fff;
}

.section-benefits .benefit img {
    height:74px;
}

.section-benefits .benefit h4 {
    margin-top:17px;
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    font-size: 22px;
    letter-spacing: 2px;
    line-height: 28px;
    color: #ffffff;
}

.section-benefits .benefit .text {
    margin-top:19px;
    font-family: 'Helvetica Neue LT Std Roman', sans-serif, '-apple-system';
    font-size: 19px;
    line-height: 28px;
    color: #ffffff;
    font-weight: 400;
}

.section-quote {
    text-align:center;
    display:flex;
    justify-content: center;
}

.section-quote blockquote {
    margin-top: 65px;
    max-width:735px;
}

.section-quote blockquote:before {
    font-family: 'Helvetica Neue LT Std Roman', sans-serif, '-apple-system';
    font-size: 121px;
    line-height:0;
    quotes:initial;
    color:#0693e3;
    content: open-quote;
    display: block;
}

.section-quote blockquote div {
    font-family: 'Helvetica Neue LT Std Roman', sans-serif, '-apple-system';
    font-size: 36px;
    line-height: 52px;
    color: #185a7d;
    font-weight: 400;
}

.section-quote cite {
    font-family: "Helvetica Neue LT Std Cn", sans-serif, '-apple-system';
    font-size: 25px;
    line-height: 49px;
    font-style: normal;
    text-transform: uppercase;
    color: #0693e3;
    font-weight: 700;
}
/*************************************************************************************************************
 * SECTION: VIDEO
 **************************************************************************************************************/
/*************************************************************************************************************
 * SECTION: RESPONSIVE
 **************************************************************************************************************/
/*
 * MAX:725
 */
@media only screen and (max-width:725px){
    /*************************************************************************************************************
 * SECTION: HERO
 **************************************************************************************************************/
    .section-hero .content {
        display: flex;
        margin-top: 43px;
        gap: 20px;
        flex-direction: column;
        align-items: center;
    }
    /*************************************************************************************************************
 * SECTION: COMMITMENT
 **************************************************************************************************************/
    .section-commitment .cards-wrapper {
        padding: 0 20px;
    }

    .section-commitment .cards {
        grid-template-columns: 1fr !important;
    }
    /*************************************************************************************************************
 * SECTION: VIDEO
 **************************************************************************************************************/
    .section-video {
        background: url(https://storage.googleapis.com/harvest.org/harvestsite/0d1ec46e-rectangle-1088-min.jpg) no-repeat center top, linear-gradient(180deg, #F5751A 350px, transparent 0);
        background-size: 100% 350px, auto auto;
    }
}
/*
 * MAX:475
 */
@media only screen and (max-width:475px) {
    /*************************************************************************************************************
 * SECTION: COMMITMENT
 **************************************************************************************************************/
    .section-commitment h2 {
        font-size:40px;
    }
    .section-commitment .cards-wrapper {
        padding: 0;
    }
    /*************************************************************************************************************
 * SECTION: VIDEO
 **************************************************************************************************************/
    .section-video {
        background: url(https://storage.googleapis.com/harvest.org/harvestsite/0d1ec46e-rectangle-1088-min.jpg) no-repeat center top, linear-gradient(180deg, #F5751A 275px, transparent 0);
        background-size: 100% 275px, auto auto;
    }

    .section-video .row {
        flex-direction: column;
    }

    .section-video .row2 {
        margin-top: 0;
    }

    .section-video .price-card {
        width:100%;
        max-width: initial;
        margin-bottom: 35px;
    }

    /*************************************************************************************************************
 * SECTION: BENEFITS
 **************************************************************************************************************/
    .section-benefits .benefits {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(3, 1fr);
    }
}