*{
    margin: 0;
    padding: 0;
}

body{
    background-color: #000;
    font-family: "futura-pt-bold", sans-serif;
    font-weight: 700;
    font-style: normal;
}

main{
    justify-content: center;
    display: flex;
}

.congratulations_popup{
    display: none;
}

.introAnimation{
    /* background-image: url('../images/backgroundTiles.pngGrouped.png');
    background-repeat: no-repeat;
    background-size: cover;
    display: none !important; */
}

.frameContent{
    text-align: center;
}

.main_logo{
    margin-bottom: -4em;
}

.pageFrame h1,
.pageFrame h2 {
    color: #FCB315;
}

.age_check_buttons{
    display: flex;
    justify-content: center;
    gap: 1em;
    margin-top: 1.2em;
}

.age_check_buttons button{
    width: 120px;
    height: 35px;
    background: transparent;
    outline: 1px solid #ffffff;
    color: #ffffff;
    font-weight: bold;
    font-size: 19px;
    cursor: pointer;
    border: none;
}

.button_selected{
    background: #FCB315 !important;
    outline: 1px solid #FCB315 !important;
    color: #000000 !important;
    cursor: pointer;
}

.selected_quiz_answer{
    background: #FCB315 !important;
    outline: 1px solid #FCB315 !important;
    border: none !important;
    color: #000000 !important;
    cursor: pointer;

}

.provinceContainer{
    display: flex;
    align-items: center;
    gap: 1em;
    justify-content: center;
}

.sectionSpacer{
    margin-top: 2.3em;
}

#provinceSelect{
    width: 70px;
    height: 25px;
    text-align: center;
    font-family: "futura-pt", sans-serif;
    font-weight: bold;
    font-style: normal;
}

.store_details_form{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .6em;
    position: relative;
    max-width: 250px;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    text-align: center;
}


.default_btn{
    outline: none;
    border: none;
    width: 250px;
    height: 40px;
    font-weight: bold;
    font-size: 25px;
    margin-top: 1.3em;
}

.age_gate_submit_btn{
    outline: none;
    border: none;
    width: 250px;
    height: 40px;
    font-weight: bold;
    font-size: 25px;
    margin-top: 1.3em;
}

.store_details_form input[name="store_name"] {
    margin-top: 1em;
}

.store_details_form input[name="store_pincode"] {
    margin-top: 1.3em;
}

.tooltipSelector{
    width: 15px;
    height: 15px;
    background: transparent;
    position: absolute;
    bottom: 5.7em;
    right: .3em;
    cursor: pointer;
}

.footerPrint{
    font-size: 12px;
    text-transform: uppercase;
    line-height: 16px;
    color: #ffffff;
    font-family: "nitti", monospace;
    font-weight: 400;
    font-style: normal;
    max-width: 300px;
    text-align: center;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    margin-top: 4.5em;
    font-size: 12px;
}

.footerPrint span{
    text-decoration: underline;
    cursor: pointer;
}

.pageFrame h1{
    text-transform: uppercase;
}

.quizAnswerGuide h1{
    font-size: 20px;
    max-width: 350px;
    text-align: center;
    margin: 0 auto;
}

.quizAnswerGuide h2{
    font-size: 14px;
    max-width: 350px;
    text-align: center;
    margin: 0 auto;
    text-transform: uppercase;
    margin-top: 1em;
}

.cafe_delight_description{
    margin: 2em 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.cafe_delight_description h1{
    font-size: 20px;
    max-width: 350px;
    text-align: center;
    margin: 0 auto;
    margin: 1em 0;
}

.divider{
    width: 80%;
    height: 1px;
    background: #ffffff;
    margin: 0 auto;
}

.cafe_delight_description p{
    line-height: 16px;
    color: #ffffff;
    font-family: "nitti", monospace;
    font-weight: 400;
    font-style: normal;
    font-size: 15px;
    max-width: 350px;
    margin-top: 1.9em;
}

.sativa_chart_desc{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.sativa_chart_desc h1{
    color: #FFFFFF;
    font-size: 28px;
    letter-spacing: .1em;
}

.education_portal_submitBtn{
    margin-top: 2.8em;
}

.quiz_question{
    width: 250px;
    margin: 0 auto;
}

.multiple_choice{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: .5em;
    margin-top: 2.5em;
}

.multiple_choice p{
    color: #ffffff;
    font-family: "nitti", monospace;
    font-weight: 400;
    font-style: normal;
    border: 1px solid #fff;
    max-width: 300px;
    min-width: 300px;
    padding: 1em;
    line-height: 18px;
    font-size: 18px;
    cursor: pointer;
}

.quiz_submit_btn{
    margin-top: 4em;
}

.current_quiz_question{
    margin-top: 1em;
    color: #ffffff;
    font-family: "nitti", monospace;
    font-weight: 500;
    font-style: normal;
}

.yellow_popup{
    background: #FCB315;
    position: absolute;
    top: 20%;
    height: 430px;
    width: 80%;
    display: flex;
    align-items: center;
    flex-direction: column;
    box-sizing: border-box;
    padding-top: 2em;
}

.yellow_popup h2,
.yellow_popup p{
    color: #000000 !important;
}

.yellow_popup img{
    margin-top: 1.5em;
}

.yellow_popup p{
    font-family: "nitti", monospace;
    font-weight: 500;
    font-style: normal;
    text-align: center;
    max-width: 230px;
    line-height: 19px;
    margin-top: 1.3em;
}

.quiz_black_btn{
    cursor: pointer;
    font-family: "nitti", monospace;
    font-weight: 600;
    font-style: normal;
    color:#ffffff;
    background: #000000;
    border: none;
    outline: none;
    width: 270px;
    height: 40px;
    font-size: 18px;
    position: absolute;
    bottom: 2em;
}

.pageFrame{
    position: relative;
}

.overlay {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1; /* Ensure this is below the popup z-index if it's specified */
    background-color: rgba(0, 0, 0, 0.5);
}


.content-blur{
    filter: blur(5px);
}

.yellow_popup, .tooltipGuide {
    z-index: 2; /* Ensures content and popup are above the overlay */
}

.try_again_popup p{
    margin-top: 4em;
    font-size: 20px;
    line-height: 24px;
    max-width: 270px;
}

.customer_details h1{
    font-size: 22px;
    margin-bottom: .2em;
}

.thankYou h1{
    font-size: 28px;
}

.how_to_earn_more_btn{
    font-size: 15px;
    height: 55px;
    margin-top: 5em;
}

.pinsGuide{
    max-width: 350px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin: 0 auto;
    text-align: center;
}

.pinsGuide h2{
    font-size: 15px;
    text-transform: uppercase;
}

.pinsGuide img{
    margin-top: 1em;
}

.pinsGuide h2:last-of-type {
    margin-top: 1.5em;
}

.tooltipGuide{
    position: absolute;
    bottom: 11em;
    background: #ffffff;
    border-radius: 5px;
    width: 80%;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    display: none;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
}

.tooltipGuide h1{
    font-size: 20px;
    font-family: "nitti", monospace;
    font-weight: 400;
    font-style: normal;
    color: #000000;
    text-align: center;
    margin: 0 auto;
    max-width: 230px;
    line-height: 20px;
}

.close_tool_tip{
    position: absolute;
    font-family: "nitti", monospace;
    top: 0;
    right: .5em;
    font-size: 30px;
    font-weight: 500;
    font-style: normal;
    cursor: pointer;

}

.termsPolicy h1, .policyPages h1{
    font-size: 24px;
    max-width: 350px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 2em;
}

.termsPolicy h2, .policyPages h2{
    font-size: 18px;
    text-align: left;
    margin-left: 2em;
    margin-top: 1.5em;
}

.termsPolicy p, .policyPages p, .policyPages ul li{
    font-size: 12px;
    text-align: left;
    margin-left: 3em;
    color: #ffffff;
    max-width: 350px;
    font-family: "nitti", monospace;
    font-weight: 400;
    margin-top: .7em;
    list-style: none;
}

.suggestions-container {
    border: 1px solid #ccc;
    border-top: none;
    position: absolute;
    z-index: 1000;
    width: 200px; /* Match the input field width */
    background-color: #fff;
    display: none; /* Initially hidden */
    top: 5.5em;
    left: 85px;
    width: 252px;
    max-height: 160px;
    overflow-y: scroll;
}

#storeNameSuggestions{
    top: 3em;
    
}

.suggestions-container p {
    margin: 0;
    padding: 3px;
    cursor: pointer;
    font-size: 14px;
    font-family: "nitti", monospace;
    font-weight: 400;
    border-top: 1px solid #c3c3c3;
}

.suggestions-container p:hover {
    background-color: #f0f0f0;
}

.ageGate, 
.educationPortal,
.questionPortal,
.spintowin,
.dataCapture,
.thankYou,
.morePinsGuide,
.termsPolicy,
.sellSheet,
.rulesPage
.privacyPolicy{
    display: none;
}

.yellow_popup{
    display: none;
}

.ageGate{
    display: flex;
}

.pageFrame {
    display: none;
}

.policyPages{
   height: 2000px;
}

#wheel-container {
    position: relative;
    transform: scale(0.9);
}

#wheel {
    width: 100%;
}

#arrow {
    position: absolute;
    top: -1.5em;
    left: 50%;
    transform: translateX(-50%) scale(0.8);
    z-index: 10;
    
    /* Adjust width as necessary */
}

#centercap{
    position: absolute;
    top: 9.3em;
    transform: translateX(-50%) scale(0.6);
    left: 50%;

}

#prize-alert {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 100;
}

.alert-content {
    background: white;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
}

#next-btn {
    margin-top: 10px;
    padding: 10px 20px;
    background-color: #009688;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.quick-start-btn{
  margin-top: 1em;
  margin-bottom: 1em;  
}

.hideIntroVideo{
    display: none !important;
}

.pageFrame.introAnimation {
    display: block;
}

#introVideo{
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

input, select, textarea, button {
    font-size: 16px; /* Minimum size to prevent zoom on iOS */
}

/* Updated Changes */
.delightresintitle{
    font-size: 20px !important;
    max-width: 350px !important;
    text-align: center !important;
    margin: 0 auto !important;
    margin: 1em 0 !important;
    color: #FCB315 !important;
}

.productCollectionTitle{
    margin-top: -3em !important;
}

.vanillaimageresin{
    margin: .5em 0 !important;
    margin-bottom: -3em !important;
}

/* Meister New Styling */
@font-face {
    font-family: 'Meister';
    src: url('../fonts/Meister-Regular OTF.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Meister';
    src: url('../fonts/Meister-Bold OTF.otf') format('opentype');
    font-weight: bold;
    font-style: normal;
}


.pageFrame{
    width: 100%;
    max-width: 450px;
    height: 100%;
    background-image: url('../images/patternbg.png');
    background-repeat: repeat-y;
    background-size: cover;
    display: flex;
    align-items: center;
    flex-direction: column;
    background-color: #f68d39;
}

.main_logo{
    margin: 3em 0;
}

.store_details{
    display: flex;
    background: #0d4734;
    padding: 3em 0;
    color: #ffffff;
    font-family: 'Meister', sans-serif;
    /* font-weight: 500; */
}

.inputFormTitles{
    align-self: start;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 2px;
}

.form_submission_separator{
    margin-bottom: .3em;
}

.form_submission_separator2{
    margin-bottom: .3em;
}

.store_details_form{
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
}

.store_details_form input[type=text]{
    width: 340px;
    text-align: left;
    font-weight: bold;
    color: #ffffff;
    height: 45px;
    text-indent: 15px;
    background: #092b17;
    outline: none;
    border: none;
    font-family: 'Meister', sans-serif;
    border-radius: 3px;
}

.store_details_form ::-webkit-input-placeholder{
    text-align: left;
    font-weight: bold;
    color: #ffffff;
    text-indent: 15px;

}

.age_gate_submit_btn{
    background: #931924 !important;
    border-radius: 3px;
    color: #ffffff !important;
    height: 60px;
    font-family: 'Meister', sans-serif !important;
}

.age_gate_btns{
    background: #931924 !important;
    border-radius: 3px;
    border: none;
    outline: none;
    color: #ffffff !important;
    height:40px;
    font-family: 'Meister', sans-serif !important;
    width: 250px !important;
    font-weight: bold;
    cursor: pointer;
}

.social-icons .icon {
    display: inline-block;
    width: 35px; /* Adjust according to the size of the individual icons */
    height: 35px;
    background-image: url('../images/Group 1 (3).png'); /* Path to the image file */
    background-size: auto;
    background-repeat: no-repeat;
}

.social-icons{
    margin-top: 1em;
}

.social-icons .facebook {
    background-position: 0 0; /* Position for Facebook icon */
}

.social-icons .twitter {
    background-position: -45px 0; /* Position for Twitter icon (adjust based on the icon width) */
}

.social-icons .instagram {
    background-position: -90px 0; /* Position for Instagram icon (adjust based on the icon width) */
}

.terms_container{
    background: #0d4734;
    padding: 3em;
}

.chillOutAgeVerification {
    width: 100%;
    height: 100vh;
    display: flex;
    /* justify-content: center; */
    padding-top: 2em;
    align-items: center;
    font-family: 'Meister', sans-serif !important;

}

.ageVerificationContent {
    background-color: #f6e2b5;
    border-radius: 200px;
    border: 10px solid #fff;
    padding: 40px 20px;
    text-align: center;
    width: 65%;
    max-width: 300px;
}

.ageVerificationLogo img {
    height: auto;
    margin-bottom: 20px;
    margin: 3em 0;
}

.ageVerificationTitle {
    color: #931924 !important; /* Drambuie Orange */
    font-size: 42px;
    margin: 0;
    font-family: 'Meister', sans-serif !important;
}

.ageVerificationSubtitle {
    color: #931924;
    font-size: 9px;
    margin: 0 auto;
    text-transform: uppercase;
    margin-bottom: 20px;
    letter-spacing: 1px;
    margin-top: 7px;
    align-self: center;
    text-align: center;
    font-family: 'Meister', sans-serif !important;
    white-space: nowrap;

}

.ageVerificationForm {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    flex-direction: column;
    /* flex-wrap: wrap; */
}

.ageVerificationInput {
    width: 20%;
    padding: 10px;
    font-size: 18px;
    text-align: center;
    border: 2px solid #014024;
    border-radius: 5px;
    background: #092b17;
    font-weight: bold;
    color: #FFFFFF;
}

.ageVerificationInput::placeholder {
    color: #FFFFFF;
    font-weight: bold;
}

.ageVerificationButton {
    background-color: #931924; /* Drambuie Orange */
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    border: none;
    padding: 10px 0;
    width: 90%;
    border-radius: 5px;
    cursor: pointer;
    text-align: center;
    margin: 0 auto;
    transition: background-color 0.3s;
    margin-right: auto;
    margin-top: 2em;
}

.ageVerificationButton:hover {
    background-color: #e35d19;
}

.notice-be-responsible{
    color: #931924 !important;
}

/* Updated for BadLands */
.ageVerificationTitle {
    font-size: 42px;
    margin: 0;
    font-family: 'Meister', sans-serif !important;
    line-height: 41px;
    padding-bottom: .1em;
}



.languageToggle span{
    color: #ffffff;
    cursor: pointer;
}

.defaultActiveLanguage{
    color: #931924 !important;
}

.winpasslargeimg{
    margin: 1em 0;
}

.store_details_form h3{
    font-size: 12px;
    margin-bottom: .5em;
    font-weight: 500;
    letter-spacing: 2px;
}

.store_details{
    padding-top: 1.5em;
}

.rules_container{
    background: #0d4734;
    padding: 2em;
    width: 75%;
    margin: 0 auto;
    border-radius: 30px;
}

.termsPolicy h2, .policyPages h2 {
    margin-left: 0;
}

.termsPolicy p, .policyPages p, .policyPages ul li{
    margin-left: 0;
}

/* ========== MODAL POPUP STYLES ========== */

.modal-overlay {
    /* Hidden by default */
    display: none; 
    
    /* Full-screen overlay */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    /* Dark semi-transparent background */
    background: rgba(0, 0, 0, 0.75);
    
    /* Make sure it's on top of everything */
    z-index: 1000;
    
    /* Center the content */
    justify-content: center;
    align-items: center;
    
    /* Add a subtle fade-in */
    animation: fadeIn 0.3s ease-in-out;
}

.modal-content {
    background: #1a1a1a; /* Dark background */
    color: #ffffff;      /* White text */
    padding: 30px;
    border-radius: 5px;
    border: 1px solid #ff6600; /* Drambuie orange border */
    text-align: center;
    width: 70%;
    max-width: 300px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.5);
    font-family: 'proxima-nova', sans-serif; /* Using your Typekit font */
    transform: scale(0.95);
    animation: popIn 0.3s ease-in-out forwards;
}

.modal-title {
    color: #ff6600; /* Orange title */
    margin: 0 0 15px 0;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.modal-text {
    margin: 0 0 25px 0;
    font-size: 1rem;
    line-height: 1.5;
}

.modal-button {
    background-color: #ff6600;
    color: #ffffff;
    border: none;
    padding: 12px 30px;
    font-size: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 3px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.modal-button:hover {
    background-color: #e65c00; /* Slightly darker on hover */
}

/* Animations for the modal */
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes popIn {
    from { opacity: 0; transform: scale(0.9); }
    to { opacity: 1; transform: scale(1); }
}

.languageToggle span.active-lang {
    font-weight: bold;
    color: #931924; /* Jager orange for active language */
}

.title-enter-below{
    max-width: 300px !important;
}


.languageToggle{
    position: absolute !important;
    bottom: 67px !important;
    right: 1em;
    top: auto !important;
    margin-top: 1em;
}

.register_form_details{
    background: none;
    padding-top: 0;
    margin-top: -1em;
}

.email-notif-msg{
    font-size: 14px;
    color:#FFFFFF;
    margin-top: 1em;
    font-weight: 300;
}

.landingPageFadeOut {
    background-image: url('../images/splashLanding.png');
    height: 100vh;
    width: 100%;

    /* Add/update these properties */
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top; /* This is the key change */
}

/*
  --- Font Face Declarations ---
  This assumes your 'fonts' folder is in the root, one level UP from this 'css' folder.
  The path '../fonts/' correctly navigates from /css/style.css to /fonts/.
*/

@font-face {
    font-family: 'Metropolis Black';
    /* Use '../' to go up one directory from 'css' to the root, then into 'fonts' */
    src: url('../fonts/Metropolis-Black.otf') format('opentype');
    font-weight: 900; /* This is a "Black" weight */
    font-style: normal;
}

@font-face {
    font-family: 'Gotham Book';
    src: url('../fonts/Gotham-Book.ttf') format('truetype');
    font-weight: 400; /* This is a "Book" or "Regular" weight */
    font-style: normal;
}


/*
  --- Page-Specific Styles ---
  These rules target the classes from your HTML.
*/

/* 1. Set the background for the whole section */
.pageFrame.policyPages.termsPolicy {
}

/* 2. Set the default font and color for the text container */
.rules_container {
    /* Use Gotham Book for all text inside this container by default */
    font-family: 'Gotham Book', sans-serif; 
    /* Set the default text color (body copy) to white */
    color: #FFFFFF; 
    background:#000;
}

/* 3. Style all headlines (h1, h2) */
.rules_container h1,
.rules_container h2 {
    /* Use Metropolis Black for headlines */
    font-family: 'Metropolis Black', sans-serif; 
    /* Use a gold color for headlines. You can change this hex code if you have a specific one. */
    color: #D3AF37; 
    /* As requested, font-size is not being changed. */
}

/* 4. Style the paragraphs (p) */
.rules_container p {
    /* These will automatically inherit 'Gotham Book' and 'white' from .rules_container */
    /* As requested, font-size is not being changed. */
    font-family: 'Gotham Book', sans-serif; 
}

/* Optional: Ensure <strong> tags also use the correct font family (just bolder) */
.rules_container strong {
    /* This ensures 'strong' text doesn't default to a different browser font */
    /* It will inherit the color (white) from the <p> tag */
    font-family: 'Gotham Book', sans-serif; 
}
