/* 
 * CSS classes to replace inline styles for better maintainability 
 * Moving from inline style attributes to CSS classes
 */

/* Header logo - Reserve space to prevent CLS */
.header-bar__logo {
    min-height: 142.5px;
    display: flex;
    align-items: center;
}

.header-bar__logo-link {
    display: block;
    width: 250px;
    height: 142.5px;
}

.header-bar__logo img {
    display: block;
    width: 250px;
    height: 142.5px;
    object-fit: contain;
}

/* Display utilities */
.hidden {
    display: none;
}

/* Hide search functionality */
.site-header__search { 
    display: none !important; 
}

/* Fix footer overlap on product pages */
.template-product .main-content {
    margin-bottom: 50px;
    padding-bottom: 50px;
}

.template-product .shopify-section--footer {
    clear: both;
    position: relative;
    z-index: 10;
}

/* Ensure footer doesn't overlap content */
.page-container {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.main-content {
    flex: 1 0 auto;
}

.shopify-section--footer {
    flex-shrink: 0;
}

/* Hide all Add to Cart buttons and cart-related elements */
.product-form__cart-submit,
button[data-add-to-cart],
.btn[name="add"],
.site-header__cart,
.cart-popup-wrapper {
    display: none !important;
}

/* Style for Request Info button */
.request-info-btn {
    background-color: #333;
    color: white;
    padding: 12px 24px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    width: 100%;
    transition: background-color 0.3s ease;
}

.request-info-btn:hover {
    background-color: #555;
}

/* Modal styles */
.request-info-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    overflow: auto;
}

.request-info-modal-content {
    background-color: #fefefe;
    margin: 5% auto;
    padding: 30px;
    border: 1px solid #888;
    width: 90%;
    max-width: 600px;
    position: relative;
}

.request-info-close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    position: absolute;
    right: 15px;
    top: 10px;
}

.request-info-close:hover,
.request-info-close:focus {
    color: black;
}

.request-info-form label {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
}

.request-info-form input,
.request-info-form textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 15px;
    border: 1px solid #ddd;
    font-size: 16px;
}

.request-info-form textarea {
    min-height: 120px;
    resize: vertical;
}

.request-info-form button {
    background-color: #333;
    color: white;
    padding: 12px 24px;
    border: none;
    cursor: pointer;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.request-info-form button:hover {
    background-color: #555;
}

/* Layout utilities */
.image-wrapper-720 {
    max-width: 720px;
}

.aspect-ratio-square {
    padding-top: 100.0%;
}

.aspect-ratio-wide {
    padding-top: 75.0%;
}

/* Common image max-width values */
.max-width-345 {
    max-width: 345.0px;
}

.max-width-720 {
    max-width: 720px;
}

/* Background positioning */
.bg-center {
    background-position: center;
}

.bg-center-cover {
    background-position: center center;
}

/* Specific aspect ratios for product images */
.aspect-ratio-98-54 {
    padding-top: 98.53966146697643%;
}

.aspect-ratio-77-95 {
    padding-top: 77.95408507765023%;
}

.aspect-ratio-100-06 {
    padding-top: 100.06249999999999%;
}

.aspect-ratio-99-95 {
    padding-top: 99.94999999999999%;
}

.aspect-ratio-98-45 {
    padding-top: 98.45619451949055%;
}

.aspect-ratio-78-90 {
    padding-top: 78.90449438202246%;
}

.aspect-ratio-75-51 {
    padding-top: 75.51134771644719%;
}

.aspect-ratio-201-17 {
    padding-top: 201.1738811445341%;
}

.aspect-ratio-176-52 {
    padding-top: 176.5169902912621%;
}

.aspect-ratio-126-92 {
    padding-top: 126.91559704395176%;
}

.aspect-ratio-124-88 {
    padding-top: 124.87512487512487%;
}

.aspect-ratio-100-10 {
    padding-top: 100.1036269430052%;
}

.aspect-ratio-97-58 {
    padding-top: 97.58333333333334%;
}

.aspect-ratio-108-42 {
    padding-top: 108.41666666666667%;
}

.aspect-ratio-100-08 {
    padding-top: 100.08333333333336%;
}

.aspect-ratio-100-17 {
    padding-top: 100.17921146953405%;
}

/* Feature row image styles */
.feature-row-image-177 {
    padding-top: 177.77777777777777%;
}

/* Custom margins */
.custom-margin {
    margin: 30px 15px 20px 15px;
}

/* Hero background styles */
.hero-bg-website {
    background-image: url('/cdn/shop/files/website-background_2048x.jpg');
    background-position: center;
}

.hero-bg-website-noscript {
    background-image: url('/cdn/shop/files/website-background_2048x.jpg?v=1636076736');
    background-position: center center;
}