/*
Theme Name: Nexter Child
Description: Child theme of Nexter theme for safe customizations
Template: nexter
Version: 1.0.0
Author: Your Name
Author URI: 
Text Domain: nexter-child
*/

/*
=============================================================================
NEXTER CHILD THEME STYLES
=============================================================================
Add your custom styles below this line.
The parent theme styles are automatically loaded via functions.php
*/

/* Example: Custom styles go here */
/*
body {
    font-family: 'Your Custom Font', sans-serif;
}

.custom-class {
    color: #your-color;
}
*/

:root {
  --color-primary: #C1A65F;
  --color-secondary: #5A4E26;
  --color-text: #F4F0F0;
  --color-text-light-gray: #928787;
  --color-text-darker-white: rgba(209, 213, 220, 1);
  --color-accent: #C1A65F;
  --color-body-background: #1C191A;
  --color-footer-background: #231F20;
  --color-section-background: #090000;

  --font-primary: 'Baldwin Serif', sans-serif;
  --font-secondary: 'interstate-condensed', sans-serif;
  --font-text: 'interstate', sans-serif;
  --font-accent: 'interstate-condensed', sans-serif;

  /* Responsive Breakpoints */
  --breakpoint-large: 1320px;
  --breakpoint-desktop: 1024px;  
  --breakpoint-tablet: 768px;
  --breakpoint-mobile: 480px;

  /* Content Width */
  --content-width: 1240px;
}

/* Container Class for Centered Content */
.container {
    max-width: var(--content-width);
    width: 100%;
    margin: 0 auto;
    /* padding: 0 20px; */
}

p {
  font-size: 1.1rem;
}

/* Responsive Container Adjustments */
@media (max-width: 768px) {
    .container {
        width: 85%;
    }
    p {
      font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .container {
        width: 90%;
    }
    p {
      font-size: 0.85rem;
    }
    /**
        Override css for mobile menu
    */
    .plus-mobile-menu {
      right: -7px !important;
      left: inherit !important;
    }
}

/**
Override css for mobile menu
*/
.mobile-plus-toggle-menu .toggle-line {
    background: var(--color-primary) !important;
}

/**TERMS & CONDITIONS TABLE **/
.terms-table {
    width: calc(100% - 50px);
    border-collapse: collapse;
    margin-left: 50px;
    margin-top: 25px;
}
.terms-table td {
    border: 1px solid var(--color-text-light-gray);
    padding: 10px;
}

/* Action Buttons Component Styles */
.action-buttons {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Main Link/Purchase Button Styles */
.purchase-btn {
    display: inline-flex;
    padding: 11.5px 70px 12.5px 69.336px;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    background: var(--color-secondary);
    white-space: nowrap;
    text-decoration: none;
    letter-spacing: 1.2px;
    color: var(--color-text);
    font-family: var(--font-text);
    font-weight: 500;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
}

.purchase-btn:hover {
    background-color: var(--color-primary);
    transform: translateY(-1px);
    color: var(--color-text) !important;
}

/** Social icons styles **/
.social-icons-list {
    list-style: none;
    display: flex;
    gap: 1.5rem;
}

.social-icons-list li {
    margin: 0;
    padding: 0;
}

.social-icons-list li a {
    width: 26px;
    aspect-ratio: 1 / 1;
    transition: opacity 0.3s ease;
}

.social-icons-list li a:hover {
    opacity: 0.75;
}

/* Share Button Styles */
.share-btn {
    display: inline-flex;
    padding: 11.5px 75px 12.5px 74.336px;
    justify-content: center;
    align-items: center;
    gap: 9px;
    border-radius: 8px;
    background: #3A3537 !important;
    color: var(--color-text);
    font-family: var(--font-text);
    font-weight: 500;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
}

.share-btn:hover {
    color: var(--color-section-background);
    transform: translateY(-1px);
}

.share-btn svg {
    width: 18px;
    height: 18px;
}

/* Button Focus States for Accessibility */
.purchase-btn:focus,
.share-btn:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .purchase-btn,
    .share-btn {
        transition: none;
    }
    
    .purchase-btn:hover,
    .share-btn:hover {
        transform: none;
    }
}

/* Back Navigation */
.back-navigation {
    padding: 2rem 20px;
    position: relative;
    z-index: 10;
}

.back-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--color-text);
    text-decoration: none;
    font-family: var(--font-text);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.back-link:hover {
    color: var(--color-primary);
    transform: translateX(-3px);
}

.back-link svg {
    width: 16px;
    height: 16px;
    transition: transform 0.3s ease;
}

.back-link:hover svg {
    transform: translateX(-3px);
}

/** Mailchimp mods **/
.mc_form_inside {
  position: relative;
}
.mailchimp-form .mc_signup_submit_button {
  margin: 0;
  position: absolute;
  display: inline-block;
  top: 6px;
  right: 6px;
  max-width: 133px;
}
.mailchimp-form label {
  display: none;
}

/** Carousel Nav **/
.carousel-nav {
    display: flex;
    gap: 12px;
    align-items: center;
}

.carousel-nav__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50% !important;
    border: none;
    background-color: rgba(162, 141, 68, 0.8);
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0 !important;
    outline: none;
}

.carousel-nav__btn:hover {
    background-color: var(--color-secondary);
    transform: scale(1.05);
}

.carousel-nav__btn:disabled,
.carousel-nav__btn.disabled {
    opacity: 0.3;
    cursor: not-allowed;
    transform: none;
}

.carousel-nav__btn:disabled:hover,
.carousel-nav__btn.disabled:hover {
    background-color: rgba(162, 141, 68, 0.8);
    transform: none;
}

.carousel-nav__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FBF9F9;
}

.carousel-nav__icon svg {
    width: 24px;
    height: 24px;
}

/* Special Offers specific styling */
.special-offers .carousel-nav__btn {
    background-color: rgba(162, 141, 68, 0.9);
}

.special-offers .carousel-nav__btn:hover {
    background-color: var(--color-secondary);
}
/* Accessibility Improvements */
.post-card:focus,
.events-carousel__nav-btn:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .post-card,
    .post-card__button,
    .events-carousel__nav-btn,
    .events-carousel__track {
        transition: none;
    }
    
    .events-carousel__nav-btn:hover {
        transform: none;
    }
}

/* Reduced motion for navigation */
@media (prefers-reduced-motion: reduce) {
    .carousel-nav__btn {
        transition: none;
    }
    
    .carousel-nav__btn:hover {
        transform: none;
    }
}