/* Remove gap at top of page */
html, body {
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove any gap from wrapper elements */
body > *,
.wp-site-blocks {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ensure header starts at top */
header,
header.wp-block-template-part {
    margin-top: 0 !important;
    position: relative !important;
    top: 0 !important;
}

/* Apply Kreon font to all headings */
h1, h2, h3, h4, h5, h6,
.wp-block-heading {
    font-family: 'Kreon', serif !important;
    font-weight: 600 !important;
}

/* ========================================
   HEADER SIZE AND MENU STYLING
   ======================================== */

/* Remove styling from outer header wrapper */
header.wp-block-template-part {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    background: none !important;
    background-color: transparent !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
}

/* Remove padding from header inner container */
header.wp-block-template-part .wp-block-group {
    padding-top: 0 !important;
}

/* Make logo bigger */
.wp-block-site-logo img {
    width: 120px !important;
    height: auto !important;
}

/* Make menu items bigger */
.wp-block-navigation .wp-block-navigation-item a {
    font-size: 18px !important;
    padding: 12px 20px !important;
    transition: all 0.3s ease !important;
}

/* Menu item hover effect */
.wp-block-navigation .wp-block-navigation-item a:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
    opacity: 1 !important;
}

/* Show submenu dropdown arrows (carets) */
.wp-block-navigation .wp-block-navigation-item button.wp-block-navigation__submenu-icon,
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: none !important;
    padding: 0 0 0 6px !important;
    margin: 0 !important;
    box-shadow: none !important;
    color: #ffffff !important;
    min-width: auto !important;
    height: auto !important;
    cursor: pointer !important;
}

/* Make caret icon itself a bit larger and nicely aligned */
.wp-block-navigation .wp-block-navigation__submenu-icon svg,
.wp-block-navigation .wp-block-navigation__submenu-icon img {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    transform: translateY(1px) !important;
}

/* Submenu styling */
.wp-block-navigation .wp-block-navigation__submenu-container {
    background-color: rgba(52, 73, 94, 0.95) !important;
    border-radius: 4px !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1) !important;
    padding: 8px 0 !important;
}

/* Submenu item styling */
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a {
    padding: 10px 20px !important;
    font-size: 16px !important;
}

/* Submenu item hover */
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
}

/* ========================================
   HIDE MOBILE MENU BUTTONS (ALL SCREEN SIZES)
   ======================================== */

/* Hide hamburger and close buttons on all screen sizes */
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
    display: none !important;
}

/* ========================================
   HIDE CART PRICE EXCEPT ON PRODUCTS PAGE
   ======================================== */

/* Hide cart container and price by default on all pages */
.woocommerce-mini-cart__total,
header a[href="/cart"],
header a[href*="/cart"] {
    display: none !important;
}

/* Hide the orange cart container div */
header a[href="/cart"] {
    display: none !important;
}

/* Hide parent div of cart link (the orange box) */
header div[style*="background:#d32f2f"] {
    display: none !important;
}

/* Show cart price and container only on products page and WooCommerce pages */
body.woocommerce header a[href*="/cart"],
body.woocommerce-page header a[href*="/cart"],
body.page-id-500 header a[href*="/cart"],
body.post-type-archive-product header a[href*="/cart"],
body.tax-product_cat header a[href*="/cart"],
body.single-product header a[href*="/cart"] {
    display: flex !important;
}

/* Show the orange container on products/shop pages */
body.woocommerce header div[style*="background:#d32f2f"],
body.woocommerce-page header div[style*="background:#d32f2f"],
body.page-id-500 header div[style*="background:#d32f2f"],
body.post-type-archive-product header div[style*="background:#d32f2f"],
body.tax-product_cat header div[style*="background:#d32f2f"],
body.single-product header div[style*="background:#d32f2f"] {
    display: block !important;
}

/* Remove underlines from all links */
a {
    text-decoration: none !important;
}

a:hover {
    text-decoration: none !important;
}

/* Add more spacing between sections */
.entry-content > * {
    margin-bottom: 60px !important;
}

/* Extra spacing for section headings */
.entry-content > h2 {
    margin-top: 80px !important;
    margin-bottom: 40px !important;
}

/* First element shouldn't have top margin */
.entry-content > *:first-child {
    margin-top: 0 !important;
}

/* Make header sticky */
header {
    position: sticky !important;
    top: 0 !important;
    z-index: 999 !important;
}

/* Header styling to match production - full width background */
/* Only apply sticky to header, not content sections like Salty Stories */
header .wp-block-group.has-background,
header.wp-block-template-part .wp-block-group.has-background {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    position: sticky !important;
    top: 0 !important;
    z-index: 999 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Fix logo visibility and sizing */
.header-logo img,
.wp-block-site-logo img {
    max-height: 60px !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
}

.wp-block-site-logo {
    width: 160px !important;
}

/* Fix header navigation positioning - everything within content container */
.wp-block-group.alignfull {
    gap: 20px !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    max-width: 1280px !important; /* 1200px content + 40px padding on each side */
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    box-sizing: border-box !important;
    min-height: 100% !important;
    display: flex !important;
}

/* Logo within the container */
.wp-block-site-logo {
    margin-left: 0 !important;
    margin-right: 0 !important;
    flex-shrink: 0 !important;
}

/* Group containing navigation and cart button */
.wp-block-group.alignfull > .wp-block-group {
    flex-grow: 1 !important;
    gap: 40px !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Navigation - no extra margin */
.wp-block-navigation {
    margin-left: 0 !important;
}

.wp-block-navigation {
    flex-grow: 0 !important;
    margin-left: 0 !important;
    align-self: center !important;
}

/* Navigation styling */
.wp-block-navigation a {
    color: white !important;
    font-weight: 500;
    text-decoration: none;
}

.wp-block-navigation a:hover {
    opacity: 0.85;
}

/* Navigation dropdown styling for better readability */
.wp-block-navigation .wp-block-navigation__submenu-container {
    background-color: #3a5a7e !important;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    padding: 8px 0 !important;
    min-width: 220px;
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    padding: 12px 24px !important;
    color: white !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    display: block !important;
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: white !important;
}

/* Make sure dropdown text is white and visible */
.wp-block-navigation .wp-block-navigation__submenu-container a {
    color: white !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container a:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
}

/* Hero section cover block - Let the image show through the overlay */
.wp-block-cover.has-background-dim-50 .wp-block-cover__background {
    opacity: 0.5 !important; /* 50% overlay allows 50% of image to show through */
}

/* Make hero text bigger to match production */
.wp-block-cover h1 {
    font-size: clamp(42px, 4.5vw, 64px) !important; /* Slightly smaller: 42-64px instead of 48-72px */
    line-height: 1.2 !important;
    margin-bottom: 30px !important; /* Spacing between h1 and h3 */
}

.wp-block-cover h3 {
    font-size: clamp(22px, 2vw, 28px) !important; /* Increased from 18-24px to 22-28px */
    line-height: 1.4 !important;
    margin-bottom: 35px !important; /* Spacing between h3 and button */
}

/* Hero logo styling */
.wp-block-cover .wp-block-image {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.wp-block-cover .wp-block-image img {
    max-width: 160px !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    display: block !important;
}

/* Nudge hero logo slightly down so it doesn't appear cut off at the top */
.wp-block-cover .wp-block-columns .wp-block-column:last-child .wp-block-image img {
    margin-top: 12px !important;
}

/* Ensure hero logo figure is not constrained by generic figure rules */
.wp-block-cover .wp-block-column figure {
    height: auto !important;
    overflow: visible !important;
    margin-bottom: 0 !important;
}

/* Constrain hero columns to match page content width */
.wp-block-cover .wp-block-columns {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 40px !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    align-items: center !important; /* Ensure vertical centering */
    gap: 24px !important; /* Tighter space between text and logo */
}

/* Text column should fill all available space */
.wp-block-cover .wp-block-column:first-child {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    margin-top: 80px !important; /* Reduced for better spacing above hero text */
    flex-grow: 1 !important; /* Fill all available space */
    flex-shrink: 1 !important;
    flex-basis: 0 !important; /* Start from zero and grow to fill */
}

/* Logo column should be pushed to the right edge */
.wp-block-cover .wp-block-column:last-child {
    display: flex !important;
    justify-content: flex-end !important; /* Push logo to the right */
    align-items: center !important;
    padding: 0 !important; /* Remove all padding from logo column */
    margin: 0 !important; /* Remove all margin from logo column */
    flex-basis: auto !important; /* Let column shrink to fit content */
    width: auto !important; /* Don't force a specific width */
    flex-grow: 0 !important; /* Don't grow to fill space */
    flex-shrink: 0 !important; /* Don't shrink below content size */
}

/* Align hero text with page content and enable vertical centering */
.wp-block-cover .wp-block-column .wp-block-group.has-global-padding {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    height: 100% !important;
}

/* Ensure all hero text elements are left-aligned with each other */
.wp-block-cover .wp-block-columns h1,
.wp-block-cover .wp-block-columns h3,
.wp-block-cover .wp-block-columns .wp-block-buttons {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* Left-align hero section to match page content */
.wp-block-cover {
    align-items: flex-start !important;
    justify-content: center !important;
}

.wp-block-cover__inner-container {
    z-index: 2;
    position: relative;
    text-align: left !important;
    align-items: flex-start !important;
    width: 100% !important;
    max-width: none !important; /* Let children control width */
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important; /* No padding on container */
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Left-align hero section content - match h2 text position at 559px */
/* Parent .wp-block-group has 104px padding (WordPress global padding) */
/* h2 text is at 559px, so we need: 104px (parent) + 455px (h1 margin) = 559px */
.wp-block-cover .wp-block-group {
    padding-left: 0 !important; /* Remove WordPress global padding from hero parent */
    padding-right: 0 !important;
}

.wp-block-cover h1,
.wp-block-cover h3 {
    text-align: left !important;
    justify-content: flex-start !important;
    margin-left: 519px !important; /* Position to match h2 element */
    margin-right: auto !important;
    padding-left: 40px !important; /* Match h2 padding for text alignment */
    padding-right: 40px !important;
    max-width: 1200px !important; /* Constrain width */
}

/* Center the hero button */
.wp-block-cover .wp-block-buttons {
    text-align: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    max-width: 1200px !important; /* Constrain width */
}

/* Orange button styling - ALL buttons on the page */
.wp-block-button__link,
.wp-block-cover .wp-block-button__link,
.wp-block-buttons .wp-block-button__link {
    background-color: #d32f2f !important;
    color: white !important;
    border: none !important;
    padding: 12px 30px !important;
    font-size: 16px !important;
    display: inline-block !important;
    white-space: nowrap !important;
    border-radius: 4px !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    width: auto !important;
    min-width: fit-content !important;
}

.wp-block-button__link:hover {
    background-color: #b71c1c !important;
}

/* Fix column alignment in product section */
.wp-block-columns {
    align-items: stretch !important;
}

.wp-block-column {
    display: flex !important;
    flex-direction: column !important;
}

.wp-block-column > * {
    margin-top: 0 !important;
}

/* Align buttons at the bottom of each column */
.wp-block-column > .wp-block-buttons {
    margin-top: auto !important;
}

/* Salty Stories section button - keep centered and not wide */
.has-primary-background-color > .wp-block-button {
    text-align: center !important;
    width: auto !important;
    max-width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
}

.has-primary-background-color > .wp-block-button .wp-block-button__link {
    display: inline-block !important;
    width: auto !important;
}

/* Make product images same height with preserved aspect ratio */
.wp-block-columns .wp-block-column figure {
    height: 300px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    margin-bottom: 30px !important; /* Add spacing between images and text below */
}

.wp-block-columns .wp-block-column figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Override product image figure rule for hero logo so it's not clipped */
.wp-block-cover .wp-block-columns .wp-block-column figure {
    height: auto !important;
    overflow: visible !important;
    margin-bottom: 0 !important;
}

/* Add horizontal padding to body content, but NOT to full-width elements like hero */
.entry-content > *:not(.alignfull):not(.wp-block-cover) {
    padding-left: 40px !important;
    padding-right: 40px !important;
    max-width: 1200px;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Ensure hero/cover blocks and full-width images remain full width */
.entry-content > .wp-block-cover.alignfull,
.entry-content > .alignfull,
.entry-content > figure.alignfull {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* ========================================
   MOBILE RESPONSIVE STYLES
   ======================================== */

/* Tablet and below (max-width: 768px) */
@media (max-width: 768px) {
    /* Reset header layout for mobile */
    .wp-block-site-logo {
        margin-left: 10px !important;
        width: 120px !important;
    }
    
    .header-logo img,
    .wp-block-site-logo img {
        max-height: 40px !important;
    }
    
    /* Force WordPress navigation to use mobile menu */
    .wp-block-navigation:not(.has-modal-open) .wp-block-navigation__responsive-container:not(.is-menu-open) {
        display: none !important;
    }
    
    /* Mobile menu button remains hidden */
    .wp-block-navigation__responsive-container-open {
        display: none !important;
    }
    
    /* Adjust header layout for mobile */
    .wp-block-group.has-background {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    
    .wp-block-group.alignfull {
        flex-wrap: wrap !important;
        gap: 10px !important;
    }
    
    .wp-block-group.alignfull > .wp-block-group {
        width: auto !important;
        flex-grow: 0 !important;
    }
    
    /* Make hero text smaller on mobile */
    .wp-block-cover h1 {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }
    
    .wp-block-cover h3 {
        font-size: 16px !important;
    }
    
    /* Reduce hero padding on mobile */
    .wp-block-cover {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

       /* Mobile phones (max-width: 480px) */
       @media (max-width: 480px) {
           .wp-block-site-logo {
               width: 100px !important;
               margin-left: 5px !important;
           }
           
           .header-logo img,
           .wp-block-site-logo img {
               max-height: 35px !important;
           }
           
           /* Even smaller hero text for phones */
           .wp-block-cover h1 {
               font-size: 20px !important;
           }
           
           .wp-block-cover h3 {
               font-size: 14px !important;
           }
       }

/* ========================================
   EXPERIENCE SECTION LAYOUT (FIXED WITH BLOCKS)
   ======================================== */

/* Experience section wrapper - constrain to content width */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 160px !important; /* More space above Experience section */
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
}

/* Experience columns - proper side-by-side layout, text aligns with image top and bottom */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) > .wp-block-columns {
    display: flex !important;
    align-items: stretch !important; /* Make columns equal height */
    gap: 40px !important;
}

/* Experience text column - distribute content vertically */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important; /* Distribute content top to bottom */
}

/* Image column - 50% width (increased for larger image) */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:first-child {
    flex: 0 0 50% !important;
    max-width: 50% !important;
}

/* Text column - 50% width */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child {
    flex: 0 0 50% !important;
    max-width: 50% !important;
}

/* Experience image figure - full height of column */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:first-child figure {
    height: 100% !important;
    margin: 0 !important;
}

/* Experience image - stretch to match text height */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) img {
    width: 100% !important;
    height: 100% !important; /* Match text column height */
    object-fit: cover !important; /* Maintain ratio, crop left/right */
    object-position: center !important;
}

/* Match Experience section styles to live site */
.entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child h2:first-of-type {
    font-size: 100px !important;
    color: #EFEFEF !important;
    margin-bottom: -40px !important; /* Pull quote up */
    position: relative;
    z-index: 0;
}

/* Experience Quote - Blue Text - Robust Selector */
.wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child h2:nth-of-type(2),
.entry-content .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child h2:nth-of-type(2) {
    font-family: 'Basic', sans-serif !important;
    font-size: 25px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    font-style: normal !important;
    position: relative;
    z-index: 1;
    margin-top: 0 !important;
    color: #233A7A !important; /* Brand Blue */
}

/* Experience Quote - add bottom margin for spacing */
.wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child h2:nth-of-type(2),
.entry-content .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child h2:nth-of-type(2) {
    margin-bottom: 30px !important; /* Space below quote */
}

/* Mark Slats Citation - Blue Text - Robust Selector */
.wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child p,
.entry-content .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child p {
    color: #233A7A !important; /* Brand Blue */
    margin-bottom: 30px !important; /* Space below citation */
}

/* Read Mark's Story button - add top margin */
.wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child .wp-block-buttons,
.entry-content .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child .wp-block-buttons {
    margin-top: 20px !important; /* Space above button */
}

/* About Aries Section Styles - Direct targeting */
/* Target About Aries specifically - it's in a 50%-50% column layout with image on right */
.wp-block-group .wp-block-columns .wp-block-column[style*="flex-basis:50%"]:first-child h2:first-of-type {
    font-size: 100px !important;
    color: #EFEFEF !important;
    margin-bottom: -40px !important;
    line-height: 1 !important;
    position: relative;
    z-index: 0;
}

/* Also try with has() for browsers that support it */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child h2:first-of-type,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child h2:first-of-type {
    font-size: 100px !important;
    color: #EFEFEF !important;
    margin-bottom: -40px !important; /* Match Experience section */
    line-height: 1 !important;
    position: relative;
    z-index: 0;
}

/* Ensure the "Born out of need..." text sits on top */
.wp-block-group .wp-block-columns .wp-block-column[style*="flex-basis:50%"]:first-child h2:nth-of-type(2),
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child h2:nth-of-type(2),
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child h2:nth-of-type(2) {
    font-size: 40px !important; /* Increased from 25px to match real site */
    font-weight: 600 !important;
    position: relative;
    z-index: 10 !important; /* Higher z-index to sit on top */
    margin-top: 0 !important;
    background: transparent !important;
    color: #233A7A !important; /* Brand Blue */
    line-height: 1.2 !important; /* Adjusted line height for larger text */
}

/* About Aries paragraph text - Roboto font like real site */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child p,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child p {
    font-family: 'Roboto', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
    color: #333 !important;
}

/* About Aries Section Layout - Text aligns with image top and bottom */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-columns,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-columns {
    display: flex !important;
    align-items: stretch !important; /* Make columns equal height */
    gap: 40px !important;
}

/* About Aries - Text column 55%, image column 45% */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-columns .wp-block-column:first-child {
    flex-basis: 55% !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    width: 55% !important;
    max-width: 55% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important; /* Distribute content top to bottom */
}

.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-columns .wp-block-column:last-child {
    flex-basis: 45% !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    width: 45% !important;
    max-width: 45% !important;
    display: flex !important;
    justify-content: flex-end !important; /* Push content to the right */
}

/* About Aries image figure - align with "Born out of need" heading */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) figure,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) figure {
    width: 100% !important;
    height: calc(100% - 50px) !important; /* Account for watermark height */
    overflow: hidden !important;
    margin: 0 !important;
    margin-top: 50px !important; /* Push down to align with "Born out of need" */
}

/* About Aries image - stretch to match text height */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) img,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) img {
    width: 100% !important;
    height: 100% !important; /* Match text column height */
    object-fit: cover !important; /* Maintain ratio, crop left/right */
    object-position: center !important;
    display: block !important;
    border-radius: 4px !important;
}

/* Salty Stories Section Styles */
/* Target the group with the specific text alignment and padding that likely represents Salty Stories */
.wp-block-group.has-primary-background-color {
    background: linear-gradient(180deg, #233A7A 0%, #4064ac 100%) !important; /* Approximating gradient */
    color: white !important;
    position: relative !important; /* Remove sticky positioning */
    height: 260px !important;
}

/* Remove sticky positioning from Salty Stories section */
.wp-block-group.has-primary-background-color.has-background {
    position: relative !important;
    top: auto !important;
    z-index: auto !important;
}

/* Make inner group flex with column direction */
.wp-block-group.has-primary-background-color.has-background > .wp-block-group {
    display: flex !important;
    flex-direction: column !important;
}

/* Reorder elements: button first (order: 1), then headings (order: 2, 3) */
.wp-block-group.has-primary-background-color.has-background > .wp-block-group > .wp-block-buttons {
    order: 1 !important;
}

.wp-block-group.has-primary-background-color.has-background > .wp-block-group > .wp-block-heading:nth-of-type(1) {
    order: 2 !important;
}

.wp-block-group.has-primary-background-color.has-background > .wp-block-group > .wp-block-heading:nth-of-type(2) {
    order: 3 !important;
}

.wp-block-group.has-primary-background-color h2,
.wp-block-group.has-primary-background-color h3,
.wp-block-group.has-primary-background-color p,
.wp-block-group.has-primary-background-color a {
    color: white !important;
}

.wp-block-group.has-primary-background-color h2 {
    font-size: 40px !important;
    margin-top: 25px !important;
    margin-bottom: 25px !important;
}

.wp-block-group.has-primary-background-color h3 {
    font-size: 25px !important;
    font-weight: 400 !important;
    margin-top: 25px !important;
    margin-bottom: 25px !important;
}

/* Center button horizontally in primary background section */
.wp-block-group.has-primary-background-color .wp-block-buttons {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
}

.wp-block-group.has-primary-background-color .wp-block-button__link {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

/* On mobile, stack vertically */
@media (max-width: 768px) {
    .entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) > .wp-block-columns {
        flex-direction: column !important;
    }
    
    .entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:first-child,
    .entry-content > .wp-block-group:has(img[alt*="Mark Slats"]) .wp-block-column:last-child {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* ========================================
   SALTY STORIES & CONTACT SECTIONS LAYOUT
   ======================================== */

/* Salty Stories section wrapper - constrain to content width */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
}

/* Salty Stories columns - proper side-by-side layout */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) > .wp-block-columns {
    display: flex !important;
    align-items: flex-start !important;
    gap: 40px !important;
}

/* Image column - 40% width */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child {
    flex: 0 0 40% !important;
    max-width: 40% !important;
}

/* Text column - 60% width */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:last-child {
    flex: 0 0 60% !important;
    max-width: 60% !important;
}

/* Ensure image scales properly */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) img {
    width: 100% !important;
    height: auto !important;
}

/* Contact section wrapper - constrain to content width */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
}

/* Contact columns - proper side-by-side layout, aligned at top */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) > .wp-block-columns,
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-columns {
    display: flex !important;
    align-items: flex-start !important;
    gap: 40px !important;
}

/* Text column - align content at top */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Contact section columns - same alignment as About Aries */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-columns {
    align-items: stretch !important;
}

/* Image column - fixed width, with top padding to allow watermark to appear above */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:first-child,
.wp-block-column[style*="40%"]:has(img[alt*="Lean Nelis"]) {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 300px !important;
    padding-top: 60px !important;
}

/* Remove margin from image figure */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:first-child figure {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Text column - stretch to fill remaining space */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child {
    flex: 1 1 auto !important;
    max-width: none !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Ensure first heading starts at very top */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child > h2:first-child,
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child > .wp-block-heading:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Contact section image - show full height, not cropped */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:first-child figure,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:first-child figure {
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
}

/* Ensure image scales properly */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
}

/* On mobile, stack vertically */
@media (max-width: 768px) {
    .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) > .wp-block-columns,
    .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) > .wp-block-columns {
        flex-direction: column !important;
    }
    
    .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:first-child,
    .wp-block-group:has(img[alt*="Lean Nelis Aries Vane Gear"]) .wp-block-column:last-child,
    .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:first-child,
    .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* ========================================
   PRODUCT SECTION (WORDPRESS BLOCKS)
   ======================================== */

/* Make product columns use flexbox to align buttons at bottom */
.wp-block-columns.alignwide .wp-block-column {
    display: flex !important;
    flex-direction: column !important;
}

/* Add spacing between product section elements */
.wp-block-columns.alignwide .wp-block-column h3 {
    margin-top: 25px !important;
    margin-bottom: 20px !important;
}

.wp-block-columns.alignwide .wp-block-column p {
    margin-bottom: 25px !important;
    flex-grow: 1 !important; /* Push button to bottom */
}

.wp-block-columns.alignwide .wp-block-column .wp-block-buttons {
    margin-top: auto !important; /* Align to bottom */
}

/* Better approach: wrap the three product sections in a flex container */
/* Target elements between "The Aries Vane Gear Webshop" and "Experience" */
.entry-content {
    display: block !important;
}

/* Create grid layout for product items */
.entry-content > h2 + figure,
.entry-content > h2 + figure ~ h3:nth-of-type(1),
.entry-content > h2 + figure ~ p:nth-of-type(1),
.entry-content > h2 + figure ~ button:nth-of-type(1),
.entry-content > h2 + figure ~ figure:nth-of-type(1),
.entry-content > h2 + figure ~ h3:nth-of-type(2),
.entry-content > h2 + figure ~ p:nth-of-type(2),
.entry-content > h2 + figure ~ button:nth-of-type(2),
.entry-content > h2 + figure ~ figure:nth-of-type(2),
.entry-content > h2 + figure ~ h3:nth-of-type(3),
.entry-content > h2 + figure ~ p:nth-of-type(3),
.entry-content > h2 + figure ~ button:nth-of-type(3) {
    display: inline-block !important;
    vertical-align: top !important;
    width: 30% !important;
    margin-right: 3% !important;
    box-sizing: border-box !important;
}

/* Make all buttons orange/red */
button,
.wp-block-button__link,
.wp-element-button,
a.wp-block-button__link {
    background-color: #d32f2f !important;
    color: white !important;
    border: none !important;
    padding: 12px 30px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    text-decoration: none !important;
    display: inline-block !important;
    font-weight: 600 !important;
}

button:hover,
.wp-block-button__link:hover,
.wp-element-button:hover {
    background-color: #b71c1c !important;
}

/* Ensure product images have consistent height */
.entry-content figure img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
}

/* On mobile, stack products vertically */
@media (max-width: 768px) {
    .entry-content > h2 + figure,
    .entry-content > h2 + figure ~ h3,
    .entry-content > h2 + figure ~ p,
    .entry-content > h2 + figure ~ button,
    .entry-content > h2 + figure ~ figure {
        display: block !important;
        width: 100% !important;
        margin-right: 0 !important;
        margin-bottom: 20px !important;
    }
}

/* ========================================
   CONTACT SECTION STYLING (Match About Aries)
   ======================================== */

/* Contact us - Large watermark heading - positioned above the picture */
/* Use attribute contains selector */
.wp-block-column[style*="60"] > h2.wp-block-heading:first-of-type {
    font-size: 100px !important;
    color: #EFEFEF !important;
    line-height: 1 !important;
    position: relative !important;
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: -40px !important;
}

/* "Got a question?" - Blue quote heading - aligned with image top */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child h2:nth-of-type(2),
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child h2:nth-of-type(2) {
    font-size: 32px !important;
    font-weight: 600 !important;
    position: relative;
    z-index: 10 !important;
    margin-top: 0 !important;
    background: transparent !important;
    color: #233A7A !important; /* Brand Blue */
    line-height: 1.3 !important;
    margin-bottom: 20px !important;
}

/* Contact section paragraph text - Roboto font like About Aries */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child p,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child p {
    font-family: 'Roboto', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
    color: #333 !important;
}

/* "Kind regards," - remove bottom margin to connect with signature */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child p:nth-of-type(2),
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child p:nth-of-type(2) {
    margin-bottom: 0 !important;
}

/* Lean Nelis signature styling - handwritten effect */
.wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child p:last-of-type,
.entry-content .wp-block-group:has(img[alt*="Lean Nelis Aries Vanegear"]) .wp-block-column:last-child p:last-of-type {
    font-family: 'Caveat', cursive !important;
    font-size: 32px !important;
    font-weight: 600 !important;
    color: #233A7A !important; /* Brand Blue */
    margin-top: 0 !important;
    margin-bottom: 25px !important;
}

/* ========================================
   CONTACT FORM 7 STYLING - Matching Elementor Production
   ======================================== */

/* Contact form container - clean, no background */
.wpcf7 {
    margin-top: 25px !important;
    background: transparent !important;
    background-color: transparent !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Form wrapper */
.wpcf7 .elementor-form-fields-wrapper,
.wpcf7 form,
.wpcf7-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* Full width field wrapper */
.wpcf7 .form-field-full {
    width: 100% !important;
}

/* Form labels - matching Elementor style */
.wpcf7 label {
    display: block !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #333 !important;
    margin-bottom: 0 !important;
    line-height: 1 !important;
}

/* Remove extra spacing from line breaks after labels */
.wpcf7 p > br,
.wpcf7 label + br,
.wpcf7-form p br {
    display: none !important;
    height: 0 !important;
    line-height: 0 !important;
}

/* Form field wrappers - tighter spacing */
.wpcf7 p {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

/* Label to field spacing - minimal gap */
.wpcf7 .wpcf7-form-control-wrap {
    display: block !important;
    margin-top: 5px !important;
}

/* Spacing between form field groups */
.wpcf7 .form-field-full {
    margin-bottom: 10px !important;
}

/* Text inputs and textarea - Elementor style */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
    width: 100% !important;
    padding: 12px 15px !important;
    border: 1px solid #c5c5c5 !important;
    border-radius: 4px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 15px !important;
    color: #333 !important;
    background-color: #fff !important;
    transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
    box-sizing: border-box !important;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 textarea:focus {
    outline: none !important;
    border-color: #233A7A !important;
    box-shadow: 0 0 0 2px rgba(35, 58, 122, 0.1) !important;
}

/* Placeholder styling */
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
    color: #999 !important;
}

/* Textarea specific styling */
.wpcf7 textarea {
    min-height: 120px !important;
    resize: vertical !important;
    line-height: 1.5 !important;
}

/* Submit button - Elementor style with icon space */
.wpcf7 input[type="submit"],
.wpcf7 .wpcf7-submit {
    background-color: #d32f2f !important;
    color: white !important;
    border: none !important;
    padding: 15px 30px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    display: inline-block !important;
    margin-top: 10px !important;
}

.wpcf7 input[type="submit"]:hover,
.wpcf7 .wpcf7-submit:hover {
    background-color: #b71c1c !important;
}

/* Success/error messages */
.wpcf7-response-output {
    margin-top: 20px !important;
    padding: 16px 20px !important;
    border-radius: 8px !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

.wpcf7-mail-sent-ok {
    background-color: #d4edda !important;
    border: 1px solid #c3e6cb !important;
    color: #155724 !important;
}

.wpcf7-validation-errors,
.wpcf7-spam-blocked {
    background-color: #f8d7da !important;
    border: 1px solid #f5c6cb !important;
    color: #721c24 !important;
}

/* Validation error for individual fields */
.wpcf7-not-valid-tip {
    color: #d32f2f !important;
    font-size: 12px !important;
    margin-top: 6px !important;
    font-weight: 500 !important;
}

/* Invalid field styling */
.wpcf7-not-valid {
    border-color: #d32f2f !important;
}

/* Loading spinner */
.wpcf7-spinner {
    margin-left: 15px !important;
}

/* Hide hidden fields wrapper spacing */
.wpcf7 .wpcf7-form-control-wrap[data-name] {
    display: block !important;
}

/* Form row - Name and Email side by side */
.wpcf7 .form-row {
    display: flex !important;
    gap: 20px !important;
    margin-top: 2px !important;
    margin-bottom: 10px !important;
}

.wpcf7 .form-col {
    flex: 1 !important;
}

.wpcf7 .form-col label {
    display: block !important;
    margin-bottom: 0 !important;
}

.wpcf7 .form-col p,
.wpcf7 .form-field-full p,
.wpcf7-form .form-col p,
.wpcf7-form .form-field-full p,
.wpcf7 .elementor-form-fields-wrapper p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}

/* Ensure label is right above field */
.wpcf7 .form-col .wpcf7-form-control-wrap,
.wpcf7 .form-field-full .wpcf7-form-control-wrap {
    margin-top: 5px !important;
}

/* ========================================
   ARIES CLEAN HOMEPAGE RESTORE
   ======================================== */

:root {
    --aries-blue: #233A7A;
    --aries-blue-soft: #416F94;
    --aries-red: #E72C31;
    --aries-red-dark: #CE0409;
    --aries-paper: #FBFBFB;
    --aries-white: #FFFFFF;
    --aries-text: #000000;
    --aries-watermark: #EFEFEF;
}

body {
    background: var(--aries-paper) !important;
    color: var(--aries-text) !important;
    font-family: 'Basic', sans-serif !important;
    font-size: 16px !important;
}

.wp-site-blocks,
.wp-block-group,
main.wp-block-group {
    margin-top: 0 !important;
}

main.wp-block-group,
.wp-block-post-content.entry-content {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.aries-container,
.aries-header-container {
    width: min(1140px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
}

.entry-content > .aries-section,
.entry-content > .aries-hero,
.entry-content > .aries-salty,
.entry-content > .aries-social {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

.aries-site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: var(--aries-paper);
}

.aries-site-header__bar {
    background: var(--aries-blue);
    border-bottom: 3px solid var(--aries-red);
}

.aries-site-header__bar .aries-header-container {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    min-height: 66px;
    gap: 20px;
}

.aries-main-menu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
}

.aries-main-menu a,
.aries-mobile-menu a {
    color: #E9F6FF !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    padding: 15px 13px;
    text-decoration: none !important;
}

.aries-main-menu > a:hover,
.aries-main-menu__item:hover > a {
    box-shadow: inset 0 -3px 0 var(--aries-red);
}

body.home .aries-menu-link--home,
body.page-id-500 .aries-menu-link--products,
body.post-type-archive-product .aries-menu-link--products,
body.tax-product_cat .aries-menu-link--products,
body.single-product .aries-menu-link--products,
body.page-id-508 .aries-menu-link--resources,
body.blog .aries-menu-link--salty,
body.category-salty-stories .aries-menu-link--salty,
body.category-updates .aries-menu-link--salty,
body.category-spotlight .aries-menu-link--salty,
body.page-id-506 .aries-menu-link--salty,
body.page-id-836 .aries-menu-link--salty,
body.page-id-504 .aries-menu-link--about,
body.page-id-803 .aries-menu-link--about,
body.page-id-806 .aries-menu-link--about {
    color: var(--aries-white) !important;
    background: rgb(255 255 255 / 10%);
    box-shadow: inset 0 -3px 0 var(--aries-red);
}

.aries-main-menu__item {
    position: relative;
}

.aries-main-menu__item > a::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 7px;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid currentColor;
    vertical-align: middle;
}

.aries-submenu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 235px;
    background: var(--aries-blue);
    border-bottom: 3px solid var(--aries-red);
    opacity: 0;
    pointer-events: none;
    transform: translateY(8px);
    transition: opacity 160ms ease, transform 160ms ease;
}

.aries-main-menu__item:hover .aries-submenu,
.aries-main-menu__item:focus-within .aries-submenu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.aries-submenu a {
    display: block;
    line-height: 1.25;
}

.aries-submenu a:hover {
    background: var(--aries-blue-soft);
}

.aries-cart-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 3px;
    background: var(--aries-white);
    color: var(--aries-blue) !important;
    border: 3px solid var(--aries-white);
    font-family: 'Rubik', sans-serif !important;
    font-weight: 500;
    text-decoration: none !important;
}

.aries-cart-link:hover {
    background: var(--aries-blue);
    color: var(--aries-white) !important;
}

.aries-cart-link__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background: var(--aries-blue);
    color: var(--aries-white);
    font-size: 11px;
}

.aries-catalog-header-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 20px;
    border-radius: 3px;
    background: var(--aries-white);
    color: var(--aries-blue) !important;
    border: 3px solid var(--aries-white);
    font-family: 'Rubik', sans-serif !important;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.15;
    text-decoration: none !important;
    white-space: nowrap;
}

.aries-catalog-header-link:hover {
    background: var(--aries-blue);
    color: var(--aries-white) !important;
}

.aries-site-header__logo {
    background: var(--aries-paper);
    margin-bottom: 0;
}

.aries-site-header__logo .aries-header-container {
    display: flex;
    align-items: center;
    min-height: 105px;
}

.aries-site-header__logo img {
    display: block;
    width: 150px;
    height: auto;
    margin: -30px 0 -15px;
}

.aries-mobile-menu {
    display: none;
}

.aries-hero {
    position: relative;
    min-height: 600px;
    margin-bottom: 150px !important;
    background-image: url('/wp-content/uploads/2018/05/aries_winvane_susanneHuber_2008-1500x1125.png.webp');
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
    color: var(--aries-white);
    overflow: hidden;
}

.aries-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, rgb(35 58 122 / 80%) 0%, rgb(35 58 122 / 46%) 100%);
}

.aries-hero__inner {
    position: relative;
    z-index: 1;
    min-height: 600px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 160px;
    align-items: center;
    gap: 35px;
}

.aries-hero__copy {
    max-width: 850px;
    padding: 50px;
}

.aries-hero h1 {
    margin: 0 0 28px;
    color: var(--aries-white) !important;
    font-family: 'Kreon', serif !important;
    font-size: clamp(42px, 5vw, 65px) !important;
    font-weight: 600 !important;
    line-height: 1.05 !important;
}

.aries-hero p {
    max-width: 620px;
    margin: 0 0 34px;
    color: var(--aries-white);
    font-family: 'Basic', sans-serif;
    font-size: 25px;
    line-height: 1.25;
}

.aries-hero__mark {
    width: 160px;
    max-height: 500px;
    object-fit: contain;
}

.aries-button,
.wpcf7-submit {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 38px;
    padding: 9px 18px !important;
    box-sizing: border-box !important;
    border: 0 !important;
    border-right: 2px solid transparent !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    background: var(--aries-red) !important;
    color: var(--aries-white) !important;
    font-family: 'Basic', sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    cursor: pointer;
}

.aries-button--cart::before,
.aries-button--mail::before,
.aries-button--pointer::after {
    content: "";
    display: inline-flex;
    width: 15px;
    height: 15px;
    flex: 0 0 15px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.aries-button--cart::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2 3h3l3 13h10l3-8H7'/%3E%3C/svg%3E");
}

.aries-button--mail::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E");
}

.aries-button--pointer::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 3l14 8-6 2 3 6-3 1-3-6-5 5z'/%3E%3C/svg%3E");
}

.aries-button:hover,
.wpcf7-submit:hover {
    background: var(--aries-red-dark) !important;
    border-color: #8A1215 !important;
    color: var(--aries-white) !important;
    box-shadow: 5px 5px 20px 0 rgb(0 0 0 / 11%);
}

.aries-section {
    margin: 0 !important;
    padding: 0;
}

.aries-shop {
    margin-bottom: 150px !important;
}

.aries-section-title {
    margin: 0 0 42px !important;
    color: var(--aries-blue) !important;
    font-family: 'Kreon', serif !important;
    font-size: 40px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-align: center;
}

.aries-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 38px;
    align-items: start;
}

.aries-product-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.aries-product-card__image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 250px;
    margin-bottom: 19px;
}

.aries-product-card__image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.aries-product-card:nth-child(1) .aries-product-card__image img {
    max-width: 48%;
}

.aries-product-card:nth-child(2) .aries-product-card__image img {
    max-width: 77%;
}

.aries-product-card h3 {
    margin: 0 0 14px !important;
    color: var(--aries-blue) !important;
    font-family: 'Kreon', serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
}

.aries-product-card h3 a {
    color: var(--aries-blue) !important;
    font-family: inherit !important;
}

.aries-product-card p {
    min-height: 58px;
    margin: 0 0 22px;
    font-family: 'Basic', sans-serif;
    line-height: 1.4;
}

.aries-story {
    margin-top: 0 !important;
    margin-bottom: 150px !important;
}

.aries-story--about {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
}

.aries-split {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 60px;
    align-items: center;
}

.aries-split__media img,
.aries-contact__media img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 5px;
}

.aries-split__copy {
    min-width: 0;
}

.aries-watermark {
    margin: -30px 0 -60px -50px !important;
    color: var(--aries-watermark) !important;
    font-family: 'Kreon', serif !important;
    font-size: clamp(72px, 7vw, 100px) !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

.aries-split__copy h2,
.aries-contact__copy h2 {
    position: relative;
    z-index: 1;
    margin: 0 0 22px !important;
    color: var(--aries-blue) !important;
    font-family: 'Kreon', serif !important;
    font-size: 40px !important;
    font-weight: 600 !important;
    line-height: 1.18 !important;
}

.aries-story--experience .aries-split__copy h2 {
    font-family: 'Basic', sans-serif !important;
    font-size: 25px !important;
    line-height: 1.3 !important;
}

.aries-split__copy p,
.aries-contact__copy p {
    font-family: 'Basic', sans-serif;
    line-height: 1.7;
}

.aries-credit {
    color: var(--aries-blue);
}

.aries-button--right {
    float: right;
}

.aries-salty {
    position: relative;
    margin: 0 !important;
    padding: 100px 0;
    overflow: hidden;
    background: linear-gradient(180deg, var(--aries-blue) 0%, var(--aries-blue-soft) 100%);
    color: var(--aries-white);
    text-align: center;
}

.aries-salty::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('/wp-content/uploads/2015/10/OldAries.gif');
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 28% auto;
    mix-blend-mode: multiply;
    pointer-events: none;
}

.aries-salty .aries-container {
    position: relative;
    z-index: 1;
}

.aries-salty h2 {
    margin: 0 0 20px !important;
    color: var(--aries-white) !important;
    font-family: 'Kreon', serif !important;
    font-size: 40px !important;
}

.aries-salty p {
    margin: 0 0 25px;
    color: var(--aries-white);
    font-family: 'Kreon', serif;
    font-size: 25px;
    font-weight: 600;
    line-height: 1.25;
}

.aries-contact {
    margin: 50px 0 100px !important;
}

.aries-contact__grid {
    display: grid;
    grid-template-columns: 30% 70%;
    gap: 40px;
    align-items: center;
}

.aries-contact__copy .aries-watermark {
    margin-bottom: -60px !important;
}

.aries-contact__copy h2 {
    margin-left: 10px !important;
    max-width: 620px;
}

.aries-contact__copy > p:not(.aries-watermark):not(.aries-signature) {
    margin-left: 12px;
}

.aries-signature {
    display: inline-block;
    margin: -50px 0 24px 20px !important;
    color: var(--aries-blue) !important;
    font-family: 'Caveat', cursive !important;
    font-size: 50px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    transform: rotate(-10deg);
}

.aries-contact .wpcf7 {
    max-width: 760px;
    margin-top: 0 !important;
    padding: 10px !important;
}

.aries-contact .wpcf7-form {
    display: block !important;
}

.aries-contact .elementor-form-fields-wrapper {
    display: flex !important;
    flex-wrap: wrap;
    gap: 0;
    margin-left: -10px;
    margin-right: -10px;
}

.aries-contact .form-field-full,
.aries-contact .form-row {
    width: 100%;
}

.aries-contact .form-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 !important;
}

.aries-contact .form-col,
.aries-contact .form-field-full {
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 20px !important;
}

.aries-contact label {
    display: block !important;
    padding-bottom: 10px;
    color: var(--aries-blue) !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
}

.aries-contact textarea,
.aries-contact input[type="text"],
.aries-contact input[type="email"] {
    width: 100% !important;
    border: 1px solid var(--aries-blue-soft) !important;
    border-radius: 5px !important;
    background: var(--aries-white) !important;
    color: var(--aries-blue) !important;
    font-family: 'Basic', sans-serif !important;
    font-size: 16px !important;
}

.aries-contact textarea {
    min-height: 115px !important;
}

.aries-contact .wpcf7-submit {
    width: 100%;
    margin-left: 10px;
    margin-right: 10px;
}

.aries-social {
    margin: 0 0 35px !important;
    text-align: center;
}

.aries-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 4px;
    background: var(--aries-blue);
    color: var(--aries-white) !important;
    font-family: Arial, sans-serif !important;
    font-size: 21px;
    font-weight: 700;
    text-decoration: none !important;
}

.aries-footer {
    color: var(--aries-white);
    font-family: 'Basic', sans-serif;
}

.aries-footer__main {
    border-top: 3px solid var(--aries-red);
    background: var(--aries-blue);
    padding: 40px 0 20px;
}

.aries-footer h2 {
    margin: 0 0 20px !important;
    color: var(--aries-white) !important;
    font-family: 'Kreon', serif !important;
    font-size: 28px !important;
}

.aries-footer__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(120px, 180px);
    gap: 30px;
    align-items: center;
}

.aries-footer__addresses {
    columns: 2;
    column-gap: 48px;
}

.aries-footer p {
    margin: 0 0 16px;
    color: var(--aries-white);
    line-height: 1.45;
}

.aries-footer a {
    color: var(--aries-white) !important;
    text-decoration: underline !important;
}

.aries-footer__logo {
    text-align: right;
}

.aries-footer__logo img {
    width: 180px;
    max-width: 100%;
    height: auto;
}

.aries-footer__legal {
    background: #1B2D5F;
    padding: 10px 20px;
    text-align: center;
}

.aries-footer__legal p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
}

.aries-page-shell,
body.page-id-504 main.wp-block-group,
body.page-id-803 main.wp-block-group,
body.page-id-806 main.wp-block-group,
body.page-id-836 main.wp-block-group {
    width: min(1120px, calc(100% - 40px));
    margin: 0 auto;
    padding: 60px 0 90px;
}

body.page-id-504 .entry-content > *,
body.page-id-508 .entry-content > *,
body.page-id-803 .entry-content > *,
body.page-id-806 .entry-content > *,
body.page-id-836 .entry-content > * {
    width: min(1120px, 100%) !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
}

body.page-id-504 .entry-content.wp-block-post-content > *,
body.page-id-508 .entry-content.wp-block-post-content > *,
body.page-id-803 .entry-content.wp-block-post-content > *,
body.page-id-806 .entry-content.wp-block-post-content > *,
body.page-id-836 .entry-content.wp-block-post-content > * {
    width: min(1120px, 100%) !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
}

body.page-id-508 .entry-content.wp-block-post-content > .aries-page-shell.aries-resource-page,
body .entry-content.wp-block-post-content > .aries-page-shell {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.aries-page-title,
.aries-archive-heading h1,
.woocommerce-products-header__title {
    margin: 0 0 48px !important;
    color: var(--aries-blue) !important;
    font-family: 'Kreon', serif !important;
    font-size: 42px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
}

.aries-page-shell h2,
body.page-id-504 main.wp-block-group h2,
body.page-id-803 main.wp-block-group h2,
body.page-id-806 main.wp-block-group h2,
body.page-id-836 main.wp-block-group h2 {
    margin: 52px 0 24px !important;
    color: var(--aries-blue) !important;
    font-family: 'Kreon', serif !important;
    font-size: 30px !important;
    line-height: 1.25 !important;
}

.aries-page-shell p,
body.page-id-504 main.wp-block-group p,
body.page-id-803 main.wp-block-group p,
body.page-id-806 main.wp-block-group p,
body.page-id-836 main.wp-block-group p {
    margin: 0 0 22px;
    font-size: 17px;
    line-height: 1.55;
}

.aries-resource-page h2 {
    margin-top: 0 !important;
}

.aries-resource-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    align-items: start;
}

.aries-resource-card {
    display: block;
    color: var(--aries-blue) !important;
    font-family: 'Rubik', sans-serif;
    font-weight: 500;
    text-align: center;
    text-decoration: none !important;
}

.aries-resource-card img {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    margin: 0 0 18px;
}

.aries-resource-card span {
    display: block;
    font-family: 'Kreon', serif;
    font-size: 25px;
    line-height: 1.2;
}

.aries-resource-card small {
    display: block;
    margin-top: 10px;
    color: var(--aries-black);
    font-family: 'Basic', sans-serif;
    font-size: 16px;
    line-height: 1.4;
}

.aries-mounting-gallery {
    display: grid;
    grid-auto-columns: minmax(185px, 1fr);
    grid-auto-flow: column;
    gap: 18px;
    margin: 28px 0 60px;
    padding: 0 0 18px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
}

.aries-mounting-gallery__item {
    display: block;
    min-width: 185px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    scroll-snap-align: start;
    text-decoration: none !important;
    background: #f3f3f3;
}

.aries-mounting-gallery__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.2s ease;
}

.aries-mounting-gallery__item:hover img {
    transform: scale(1.035);
}

.aries-resource-page__video-title {
    margin-top: 64px !important;
    font-size: 40px !important;
}

.aries-video-section {
    margin-top: 34px;
}

.aries-video-section h3 {
    margin: 0 0 22px !important;
    color: var(--aries-blue) !important;
    font-family: 'Kreon', serif !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
}

.aries-video-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.aries-video-card {
    aspect-ratio: 16 / 9;
    background: #111;
}

.aries-video-card iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.aries-video-card--link {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: var(--aries-blue);
    color: var(--aries-white) !important;
    font-family: 'Rubik', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.35;
    text-align: center;
    text-decoration: none !important;
}

.aries-video-card--link:hover {
    background: var(--aries-red);
}

.aries-contact-page__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 30px;
    align-items: start;
}

.aries-contact-page__form-panel h2,
.aries-contact-page__map-panel h2 {
    margin-top: 0 !important;
}

.aries-contact-page__form-panel > p {
    margin-bottom: 26px;
}

.aries-contact-page .wpcf7 {
    max-width: none;
    margin-top: 0 !important;
}

.aries-contact-page .wpcf7-form {
    display: block !important;
}

.aries-contact-page label {
    color: var(--aries-blue) !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important;
}

.aries-contact-page textarea,
.aries-contact-page input[type="text"],
.aries-contact-page input[type="email"] {
    border: 1px solid var(--aries-blue-soft) !important;
    border-radius: 5px !important;
    color: var(--aries-blue) !important;
    font-family: 'Basic', sans-serif !important;
}

.aries-contact-page .wpcf7-submit {
    width: auto;
    min-width: 150px;
}

.aries-contact-page__map-panel iframe {
    display: block;
    width: 100%;
    height: 300px;
    border: 0;
}

.aries-contact-page__address {
    margin-top: 26px;
}

.aries-contact-page__address p {
    margin-bottom: 16px;
}

.aries-contact-page__address a,
.aries-contact-page__service a {
    color: var(--aries-blue) !important;
    font-weight: 700;
}

.aries-contact-page__service {
    max-width: 760px;
    margin-top: 54px;
}

.aries-terms-page {
    max-width: 980px;
}

.aries-terms-page__intro {
    max-width: 780px;
    font-size: 19px !important;
    line-height: 1.55 !important;
}

.aries-terms-page__summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin: 42px 0 18px;
    border-top: 2px solid rgba(35, 58, 122, 0.16);
    border-bottom: 2px solid rgba(35, 58, 122, 0.16);
}

.aries-terms-page__summary-item {
    padding: 22px 24px;
    border-right: 1px solid rgba(35, 58, 122, 0.16);
}

.aries-terms-page__summary-item:last-child {
    border-right: 0;
}

.aries-terms-page__summary-item strong,
.aries-terms-page__summary-item span {
    display: block;
}

.aries-terms-page__summary-item strong {
    margin-bottom: 8px;
    color: var(--aries-blue);
    font-family: 'Rubik', sans-serif;
    font-size: 15px;
    line-height: 1.25;
    text-transform: uppercase;
}

.aries-terms-page__summary-item span {
    color: var(--aries-black);
    font-size: 16px;
    line-height: 1.45;
}

.aries-terms-section {
    padding: 30px 0 8px;
    border-top: 1px solid rgba(35, 58, 122, 0.14);
}

.aries-terms-section:first-of-type {
    border-top: 0;
}

.aries-terms-section h2 {
    margin-top: 0 !important;
}

.aries-terms-list {
    margin: 0 0 22px 1.2em;
    padding: 0;
}

.aries-terms-list li {
    margin: 0 0 12px;
    font-size: 17px;
    line-height: 1.55;
}

.aries-terms-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 28px;
    margin: 0 0 24px;
}

.aries-terms-details div {
    margin: 0;
}

.aries-terms-details dt {
    margin: 0 0 4px;
    color: var(--aries-blue);
    font-family: 'Rubik', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
}

.aries-terms-details dd {
    margin: 0;
    font-size: 17px;
    line-height: 1.45;
}

.aries-terms-page a {
    color: var(--aries-blue) !important;
    font-weight: 700;
}

.aries-withdrawal-form {
    margin: 0 0 24px;
    padding: 22px 24px;
    border: 1px solid rgba(35, 58, 122, 0.22);
    background: #fff;
}

.aries-withdrawal-form p {
    margin-bottom: 14px;
}

.aries-withdrawal-form p:last-child {
    margin-bottom: 0;
}

body .aries-post-archive.wp-block-group {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 0 90px;
}

.aries-archive-heading {
    width: min(1120px, calc(100% - 40px));
    margin: 0 auto !important;
    padding-top: 10px;
}

.aries-post-query {
    width: min(1120px, calc(100% - 40px));
    margin: 0 auto;
}

.aries-post-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 38px 22px;
}

.aries-post-card {
    margin: 0 !important;
}

.aries-post-card .wp-block-post-featured-image {
    margin: 0 0 18px !important;
}

.aries-post-card .wp-block-post-featured-image img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.aries-post-card__date,
.aries-post-card time {
    color: var(--aries-red);
    font-family: 'Rubik', sans-serif;
    font-size: 13px;
    font-weight: 500;
}

.aries-post-card h2 {
    margin: 8px 0 12px !important;
    font-family: 'Kreon', serif !important;
    font-size: 26px !important;
    line-height: 1.2 !important;
}

.aries-post-card h2 a {
    color: var(--aries-blue) !important;
    text-decoration: none !important;
}

.aries-post-card .wp-block-post-excerpt {
    margin: 0;
    font-size: 16px;
    line-height: 1.45;
}

.aries-post-card .wp-block-post-excerpt__more-link {
    color: var(--aries-red) !important;
    font-family: 'Rubik', sans-serif;
    font-weight: 500;
    text-decoration: none !important;
}

.woocommerce-shop main.wp-block-group,
.post-type-archive-product main.wp-block-group {
    padding: 60px 0 90px;
}

.woocommerce-shop main.site-main,
.post-type-archive-product main.site-main {
    width: min(1120px, calc(100% - 40px));
    margin: 0 auto;
    padding: 0;
}

.woocommerce-shop .woocommerce-breadcrumb,
.post-type-archive-product .woocommerce-breadcrumb {
    display: none;
}

.woocommerce-result-count,
.woocommerce-ordering {
    margin-bottom: 34px !important;
    font-size: 15px;
}

.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 46px 20px;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
    content: none !important;
}

.woocommerce ul.products li.product {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    text-align: left;
}

.woocommerce ul.products li.product a img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    margin: 0 0 18px !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: var(--aries-blue);
    font-family: 'Kreon', serif;
    font-size: 25px;
    line-height: 1.2;
    padding: 0 !important;
}

.woocommerce ul.products li.product .price {
    color: var(--aries-black) !important;
    font-family: 'Basic', sans-serif;
    font-size: 16px;
}

.woocommerce ul.products li.product .button {
    display: inline-block !important;
    min-height: 0 !important;
    margin-top: 12px !important;
    padding: 10px 16px !important;
    border-radius: 3px !important;
    background: var(--aries-red) !important;
    color: var(--aries-white) !important;
    font-family: 'Rubik', sans-serif;
    font-size: 16px !important;
    font-weight: 500;
    line-height: 1 !important;
    box-sizing: border-box;
}

.aries-catalog-note {
    margin: 0 0 28px;
    color: var(--aries-black);
    font-family: 'Basic', sans-serif;
    font-size: 18px;
    line-height: 1.45;
}

.woocommerce ul.products li.product .aries-catalog-order-button,
.aries-catalog-order-button {
    width: auto !important;
    max-width: 100%;
    min-height: 0 !important;
    padding: 10px 16px !important;
    border-radius: 3px !important;
    background: var(--aries-red) !important;
    color: var(--aries-white) !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500;
    line-height: 1.1 !important;
    text-align: center;
    white-space: normal;
}

.aries-catalog-single-cta {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid rgba(35, 58, 122, 0.18);
}

.aries-catalog-single-cta p {
    margin: 0 0 14px;
    color: var(--aries-black);
    font-family: 'Basic', sans-serif;
    font-size: 18px;
    line-height: 1.45;
}

.aries-catalog-contact-notice {
    margin: 0 0 28px;
    padding: 18px 0 20px;
    border-bottom: 1px solid rgba(35, 58, 122, 0.18);
}

.aries-catalog-contact-notice h2 {
    margin: 0 0 8px;
    color: var(--aries-blue);
    font-family: 'Lora', serif;
    font-size: 26px;
    line-height: 1.2;
}

.aries-catalog-contact-notice p {
    margin: 0;
}

.aries-catalog-contact-notice__product {
    margin-top: 10px !important;
    color: var(--aries-blue);
    font-family: 'Rubik', sans-serif;
    font-weight: 500;
}

.woocommerce ul.products li.product .added_to_cart {
    display: flex !important;
    width: fit-content;
    align-items: center;
    min-height: 28px;
    margin-top: 10px !important;
    margin-left: 0 !important;
    color: var(--aries-blue) !important;
    font-family: 'Rubik', sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
}

.woocommerce ul.products li.product .added_to_cart:hover {
    color: var(--aries-red) !important;
    text-decoration: underline;
}

.aries-checkout-trust {
    width: min(1120px, calc(100% - 40px));
    margin: 0 auto 34px !important;
    padding: 22px 0 24px;
    border-top: 3px solid var(--aries-red);
    border-bottom: 1px solid rgba(35, 58, 122, 0.18);
    color: var(--aries-black);
}

.aries-checkout-trust__intro {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.aries-checkout-trust__eyebrow {
    margin: 0;
    color: var(--aries-blue);
    font-family: 'Rubik', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    text-transform: uppercase;
}

.aries-checkout-trust h2 {
    margin: 0;
    color: var(--aries-blue);
    font-family: 'Kreon', serif;
    font-size: 30px;
    line-height: 1.15;
}

.aries-checkout-trust__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.aries-checkout-trust__item {
    min-width: 0;
    padding-right: 18px;
    border-right: 1px solid rgba(35, 58, 122, 0.18);
}

.aries-checkout-trust__item:last-child {
    border-right: 0;
    padding-right: 0;
}

.aries-checkout-trust h3 {
    margin: 0 0 7px;
    color: var(--aries-blue);
    font-family: 'Rubik', sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
}

.aries-checkout-trust p {
    margin: 0;
    font-family: 'Basic', sans-serif;
    font-size: 15px;
    line-height: 1.45;
}

.aries-checkout-trust a {
    color: var(--aries-blue) !important;
    font-weight: 600;
}

.aries-checkout-trust a:hover {
    color: var(--aries-red) !important;
    text-decoration: underline !important;
}

@media (max-width: 1024px) {
    .aries-container,
    .aries-header-container {
        width: min(1024px, calc(100% - 40px));
    }

    .aries-resource-grid,
    .aries-video-grid,
    .aries-post-grid,
    .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aries-site-header__logo {
        margin-bottom: 0;
    }

    .aries-watermark {
        margin-left: 0 !important;
    }

    .aries-contact__grid {
        grid-template-columns: 1fr 2fr;
    }

    .aries-checkout-trust__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aries-terms-page__summary {
        grid-template-columns: 1fr;
    }

    .aries-terms-page__summary-item,
    .aries-terms-page__summary-item:last-child {
        border-right: 0;
        border-bottom: 1px solid rgba(35, 58, 122, 0.16);
    }

    .aries-terms-page__summary-item:last-child {
        border-bottom: 0;
    }

    .aries-checkout-trust__item:nth-child(2) {
        border-right: 0;
        padding-right: 0;
    }
}

@media (max-width: 767px) {
    .aries-container,
    .aries-header-container {
        width: calc(100% - 22px);
    }

    .aries-page-shell,
    body.page-id-504 main.wp-block-group,
    body.page-id-803 main.wp-block-group,
    body.page-id-806 main.wp-block-group,
    body.page-id-836 main.wp-block-group,
    .woocommerce-shop main,
    .post-type-archive-product main {
        width: calc(100% - 22px);
        padding: 36px 0 60px;
    }

    .aries-page-title,
    .aries-archive-heading h1,
    .woocommerce-products-header__title {
        font-size: 34px !important;
        margin-bottom: 30px !important;
    }

    .aries-resource-grid,
    .aries-video-grid,
    .aries-post-grid,
    .aries-contact-page__grid,
    .woocommerce ul.products {
        grid-template-columns: 1fr;
    }

    .aries-checkout-trust {
        width: calc(100% - 22px);
        margin-bottom: 28px !important;
        padding: 18px 0 20px;
    }

    .aries-checkout-trust__intro {
        display: block;
    }

    .aries-checkout-trust h2 {
        margin-top: 6px;
        font-size: 25px;
    }

    .aries-checkout-trust__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .aries-checkout-trust__item,
    .aries-checkout-trust__item:nth-child(2) {
        padding: 0 0 14px;
        border-right: 0;
        border-bottom: 1px solid rgba(35, 58, 122, 0.16);
    }

    .aries-checkout-trust__item:last-child {
        padding-bottom: 0;
        border-bottom: 0;
    }

    .aries-mounting-gallery {
        grid-auto-columns: minmax(150px, 70vw);
        gap: 14px;
        margin-bottom: 42px;
    }

    body.page-id-504 .entry-content.wp-block-post-content > *,
    body.page-id-508 .entry-content.wp-block-post-content > *,
    body.page-id-803 .entry-content.wp-block-post-content > *,
    body.page-id-806 .entry-content.wp-block-post-content > *,
    body.page-id-836 .entry-content.wp-block-post-content > * {
        width: calc(100% - 22px) !important;
    }

    .aries-site-header__bar .aries-header-container {
        justify-content: space-between;
        min-height: 38px;
    }

    .aries-main-menu {
        display: none;
    }

    .aries-mobile-menu {
        display: block;
        position: relative;
    }

    .aries-mobile-menu summary {
        display: inline-flex;
        width: 26px;
        height: 26px;
        flex-direction: column;
        justify-content: center;
        gap: 4px;
        cursor: pointer;
        list-style: none;
    }

    .aries-mobile-menu summary::-webkit-details-marker {
        display: none;
    }

    .aries-mobile-menu summary span {
        display: block;
        width: 16px;
        height: 2px;
        background: var(--aries-white);
    }

    .aries-mobile-menu nav {
        position: absolute;
        top: 100%;
        left: -11px;
        min-width: 220px;
        background: var(--aries-blue);
        border-bottom: 3px solid var(--aries-red);
        padding: 5px 0;
    }

    .aries-mobile-menu a {
        display: block;
        padding: 14px 25px;
    }

    .aries-cart-link {
        padding: 5px 8px;
        font-size: 12px;
        gap: 6px;
    }

    .aries-catalog-header-link {
        min-height: 42px;
        padding: 0 10px;
        font-size: 13px;
        white-space: normal;
    }

    .aries-site-header__logo .aries-header-container {
        min-height: 70px;
    }

    .aries-site-header__logo img {
        width: 96px;
        margin: 0;
    }

    .aries-hero {
        min-height: 0;
        margin-bottom: 75px !important;
        background-image: url('/wp-content/uploads/2018/05/aries_winvane_susanneHuber_2008-741x486.png.webp');
    }

    .aries-hero__inner {
        min-height: 345px;
        display: block;
    }

    .aries-hero__copy {
        max-width: 300px;
        padding: 68px 5px 35px;
    }

    .aries-hero h1 {
        font-size: 31px !important;
        line-height: 1.08 !important;
        margin-bottom: 18px !important;
    }

    .aries-hero p {
        font-size: 17px;
        line-height: 1.25;
        margin-bottom: 24px;
    }

    .aries-hero__mark {
        display: none;
    }

    .aries-shop {
        margin-bottom: 95px !important;
    }

    .aries-section-title {
        font-size: 30px !important;
        margin-bottom: 32px !important;
    }

    .aries-product-grid,
    .aries-split,
    .aries-contact__grid,
    .aries-footer__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .aries-product-card {
        margin-bottom: 34px;
    }

    .aries-product-card__image {
        height: auto;
        min-height: 0;
    }

    .aries-product-card:nth-child(1) .aries-product-card__image img {
        max-width: 42%;
    }

    .aries-product-card:nth-child(2) .aries-product-card__image img,
    .aries-product-card:nth-child(3) .aries-product-card__image img {
        max-width: 100%;
    }

    .aries-product-card p {
        min-height: 0;
    }

    .aries-story,
    .aries-story--about {
        margin-bottom: 80px !important;
    }

    .aries-story--experience {
        min-height: 330px;
    }

    .aries-story--experience .aries-split__media {
        display: none;
    }

    .aries-watermark {
        margin: 0 0 -30px 0 !important;
        font-size: 72px !important;
        line-height: 0.95 !important;
        overflow-wrap: normal;
        word-break: normal;
    }

    .aries-story--about .aries-watermark {
        max-width: 260px;
    }

    .aries-split__copy h2,
    .aries-contact__copy h2 {
        font-size: 28px !important;
    }

    .aries-story--experience .aries-split__copy h2 {
        font-size: 20px !important;
    }

    .aries-button--right {
        float: none;
    }

    .aries-salty {
        padding: 55px 0;
    }

    .aries-salty h2 {
        font-size: 28px !important;
    }

    .aries-salty p {
        font-size: 18px;
    }

    .aries-contact {
        margin-bottom: 70px !important;
    }

    .aries-contact__media {
        max-width: 275px;
    }

    .aries-contact .form-row {
        grid-template-columns: 1fr;
    }

    .aries-contact .wpcf7 {
        max-width: 100%;
        padding: 0 !important;
    }

    .aries-contact .elementor-form-fields-wrapper {
        margin-left: 0;
        margin-right: 0;
    }

    .aries-contact .form-col,
    .aries-contact .form-field-full {
        padding-left: 0;
        padding-right: 0;
    }

    .aries-contact .wpcf7-submit {
        width: auto;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .aries-contact-page__grid {
        gap: 42px;
    }

    .aries-contact-page__map-panel iframe {
        height: 280px;
    }

    .aries-contact-page .wpcf7 .form-row {
        flex-direction: column !important;
        gap: 20px !important;
    }

    .aries-contact-page .wpcf7-submit {
        max-width: 100%;
    }

    .aries-terms-page__intro {
        font-size: 17px !important;
    }

    .aries-terms-page__summary {
        margin-top: 30px;
    }

    .aries-terms-page__summary-item {
        padding: 18px 0;
    }

    .aries-terms-details {
        grid-template-columns: 1fr;
    }

    .aries-withdrawal-form {
        padding: 18px 16px;
    }

    .aries-signature {
        margin-top: -22px !important;
        font-size: 42px !important;
    }

    .aries-footer__addresses {
        columns: 1;
    }

    .aries-footer__logo {
        text-align: center;
    }

    .aries-footer__legal p {
        font-size: 12px;
    }
}

body.home .wp-site-blocks > main.wp-block-group {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.home .wp-block-post-content.entry-content {
    width: 100% !important;
    max-width: 100% !important;
}

body.home .entry-content > .aries-hero,
body.home .entry-content > .aries-salty,
body.home .entry-content > .aries-social,
body.home .entry-content > .aries-section {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
