/* GLOBAL VARIABLES */
:root {
    --yellow-color: #ffdd00;
    --white-color: #fff;
    --black-color: #000;
    --grey-color: #666;

    /* Discount */
    --discount-text-red: #cd0000;
    --discount-text-blue: #0b0989;
}

/* FONTS */
@font-face {
    font-family: "Helvetica";
    font-style: normal;
    font-weight: normal;
    src: local('Helvetica'), url('../css/fonts/Helvetica.ttf'), format('ttf');
}

/* GLOBAL RESET */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* GLOBAL STYLES */

body {
    background-image: url('../img/survivalupgrades/landing-page/bgr/powergrid_small.webp');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 0% 25%;
    background-attachment: fixed;
}

body:after {
    content: ' ';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.3;
    z-index: -1;
}

.container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.highlight:hover {
    content: 'needs photo';
}

/* DESIGN */
/* REUSABLE */
.bgr-white {
    background-color: #FFF;
}

.mx-center {
    margin: 0 auto;
}

.text-bold {
    font-weight: bold;
}

.text-italic {
    font-style: italic;
}

.text-underline {
    text-decoration: underline;
}

.video {
    align-self: center;
    justify-self: center;
}

.video iframe {
    height: 300px;
}

.reusable-grid {
    display: grid;
    column-gap: 30px;
    row-gap: 30px;
    justify-content: center;
}

.reusable-grid--1-col {
    grid-template-columns: 1fr;
}

.reusable-grid--2-col {
    grid-template-columns: repeat(2, 1fr);
}

.reusable-grid--3-col {
    grid-template-columns: repeat(3, 1fr);
}

.reusable-grid--center-vertical {
    align-items: center;
}

.reusable-flex {
    display: flex;
}

.reusable-flex--dir-column {
    flex-direction: column;
}

.reusable-flex--dir-row {
    flex-direction: row;
}

.reusable-flex--gap-30 {
    gap: 30px;
}


.img18 {
    grid-column: 1 / -1;
}

.img-set {
    width: 100% !important;
}


/* TODO DELETE AFTER FINAL */
.todo {
    color: #555;
    border: 1px solid #000;
}

.todo p {
    margin: 0;
    font-size: 24px;
    font-family: Arial, Helvetica, sans-serif;
}

/* Content */
/* -- Headline Section -- */
.headline-section {
    color: #FFF;
    padding: 25px 25px;
    max-width: 1300px
}

.headline-section>* {
    font-family: 'nobel' !important;
}

.headline-1 {
    font-size: 75px;
    font-weight: 700 !important;
}

.headline-2 {
    font-size: 50px;
    font-weight: 300;
}

.headline-2--wrapped {
    font-size: 50px;
    font-weight: 300;
    width: 1030px;
}

.headline-3 {
    font-size: 30px;
    font-weight: 400;
    margin-top: 20px;
    margin-bottom: 25px;
}


/* -- TSL Section -- */
.tsl-section {
    max-width: 900px;
    padding: 50px 70px;
    margin-left: auto;
    margin-right: auto;
    /* margin-top: 20px; */
}

.tsl-header {
    margin-bottom: 40px;
}

.tsl-header p {
    font-size: 32px;
}

.tsl-paragraphs {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.tsl-paragraphs>p,
.custom-list,
.custom-list--check-p {
    font-size: 23px;
    font-family: Arial, Helvetica, sans-serif;
    margin: 0;
}

.custom-list {
    list-style: none;
}

.custom-list>li:before {
    content: '\2014';
    margin-right: 10px;
}

.delimiter {
    margin: 30px 0;
    border-top: 1px solid #333;
}

.guarantee-badge,
.article-img {
    margin: 40px auto;
    width: 70%;
}

/* References Custom Styling */
.ref-text p {
    color: #9C9C9C !important;
    font-size: 13px !important;
}

.ref-link {
    word-break: break-all;
}

.accordion-button {
    font-size: 1.2em !important;
    background-color: #c5e8b7;
}

.accordion-button:focus {
    border-color: #abe098;
}

.accordion-button:hover {
    background-color: #abe098;
}

.accordion-button:not(.collapsed) {
    color: black;
    background-color: #abe098;
}

/* CTA BUTTONS */
.cta-container {
    align-self: center;
}

.bttn,
.bttn:link,
.bttn:visited {
    /* links */
    display: inline-block;
    text-decoration: none !important;
    font-size: 32px;
    font-weight: 600;
    padding: 20px 32px;
    border-radius: 9px;

    /* button */
    border: none;
    cursor: pointer;
    font-family: inherit;

    transition: 300ms;
    transition-property: all;
}

.bttn--cta,
.bttn--cta:link,
.bttn--cta:visited {
    background-color: #ffd500;
    color: #333;
}

.bttn--cta:hover,
.bttn--cta:active {
    background-color: #edbf12;
    color: #333;
}

/* BUY BUTTON */

.buy-container-width {
    margin: 0 -20px 0 -20px;
}

.buy-container {
    box-shadow: 0 0 10px -5px #333;
    border-radius: 30px;
    padding: 0 0 30px 0;
    /* width: 500px; */
    overflow: hidden;
}

.buy-container p {
    margin: 0;
}

.product-type {
    background-color: #b05c24;
    padding: 40px 0;
}

.product-type-txt {
    color: #fff;
    text-align: center;
    font-size: 24px;
    margin-bottom: 0;
    font-weight: 700;
}

.product-buy {
    display: flex;
    flex-direction: column;
    align-items: center;
    align-self: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 25px;
}

.price-shipping {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-top: 20px;
}

.price,
.shipping {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.price-txt {
    font-size: 80px !important;
    font-weight: bold;
}

.shipping-fee {
    font-weight: bold;
    font-size: 16px !important;
}

.shipping-txt {
    color: #b05c24;
    font-weight: bold;
    font-size: 16px !important;
}

.bttn-add,
.bttn-add:link,
.bttn-add:visited {
    /* link/text*/
    display: inline-block;
    text-decoration: none !important;
    padding: 22px 20px;
    border-radius: 9px;
    font-size: 24px;
    font-weight: 700;

    /* button */
    border: none;
    cursor: pointer;
    font-family: inherit;

    background: linear-gradient(to bottom, #fed502, #efbd10);
    box-shadow: 0 5px 10px rgb(0 0 0 / 15%);
    color: #111;

}

.bttn-buy a,
.bttn-buy a:hover {
    text-decoration: none;
    color: #000;
}

.guarantee-txt {
    color: #924d20;
    font-weight: bold;
    font-size: 20px !important;
    margin-bottom: 0;
    text-align: center;
}

.guarantee {
    display: flex;
    flex-direction: row;
    align-self: normal;
}

.guarantee:before,
.guarantee:after {
    content: "";
    flex: 1 1;
    border-bottom: 1px solid #000;
    margin: auto;
    margin: auto 15px;
}

.payments {
    display: flex;


}

.payments img {
    display: block;
    margin: 0 auto;
    height: auto;
    width: 80%;
    max-width: 100%;
}

.mockup {
    width: 100% !important;
}

.padding-row {
    padding-bottom: 20rem;
}

/* Discount Page */
.headline-section--discount {
    color: #000;
    max-width: 1300px;
    margin-bottom: 50px;
}

.headline-1--discount {
    font-size: 75px;
    font-weight: 700 !important;
    color: var(--discount-text-red);
}

.headline-2--discount {
    font-size: 50px;
    font-weight: 500;
    color: var(--discount-text-blue);
}

.headline-3--discount {
    font-size: 30px;
    font-weight: 400;
    margin-top: 20px;
    margin-bottom: 25px;
}

.title-above-btn,
.title-above-btn--discount {
    font-size: 38px !important;
    text-align: center;
    font-weight: 700;
}

.custom-list--check {}

.custom-list--check-item {}

.custom-list--check-bullet {
    display: inline;
    max-width: 30px !important;
}

.custom-list--check-p {
    display: inline;
}



.guarantee-section {
    margin-top: 50px;
}

figcaption {
    text-align: center;
}

/* QUERIES */

@media (max-width: 1200px) {

    .headline-2,
    .headline-2--discount {
        font-size: 45px
    }
}

@media (max-width: 991px) {

    .headline-1,
    .headline-1--discount {
        font-size: 60px;
    }

    .tsl-header p {
        font-size: 30px;
    }

    .tsl-paragraphs p,
    .custom-list,
    .custom-list--check-p {
        font-size: 22px;
    }

    .headline-2,
    .headline-2--discount {
        font-size: 40px
    }

    .headline-2--wrapped {
        font-size: 35px;
        width: 720px;
    }
}

@media (max-width: 767px) {
    .buy-container {
        width: 385px;
    }

    .article-img.reusable-grid--2-col,
    .bttn-buy.reusable-grid--2-col {
        grid-template: revert;
    }

    .headline-2--wrapped {
        font-size: 35px;
        font-weight: 300;
        width: 400px;
    }
}

@media (max-width: 500px) {
    .buy-container {
        width: 100%;
    }

    .bttn-add,
    .bttn-add:link,
    .bttn-add:visited {
        padding: 22px 30px;
        font-size: 24px;

    }

    .headline-1,
    .headline-1--discount {
        font-size: 38px;
    }

    .headline-2,
    .headline-2--discount {
        font-size: 24px
    }
}

@media (max-width: 480px) {
    .headline-section {
        padding: 50px 22px;
    }

    .tsl-section {
        padding: 48px 30px;
    }

    .tsl-header p {
        font-size: 21px;
    }

    .tsl-paragraphs p,
    .custom-list,
    .custom-list--check-p {
        font-size: 20px;
    }

    .guarantee:before,
    .guarantee:after {
        border-bottom: 0;
        margin: 0;
    }

    .headline-2--wrapped {
        font-size: 25px;
        font-weight: 300;
        width: 290px;
    }

}

@media (max-width: 400px) {
    .price-shipping {
        flex-direction: column;
    }

    .payments img {
        width: 90%;
    }

    .guarantee-txt {
        font-size: 16px !important;
    }

    .bttn-add,
    .bttn-add:link,
    .bttn-add:visited {
        font-size: 18px;
        padding: 22px 20px;

    }
}