/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

/* Topbar Message Slider */
.topbar-slider {
    position: relative;
    width: 100%;
    display: block;
    text-align: center;
    flex: 1 1 auto;
    min-width: 0;
}

.topbar-slider p,
.topbar-slider ul,
.topbar-slider ol {
    margin: 0;
    padding: 0;
}

.topbar-slides {
    position: relative;
    width: 100%;
    display: grid;
    place-items: center;
    min-width: 0;
    z-index: 1;
    padding-left: 28px;
    padding-right: 28px;
}

.topbar-slide {
    grid-area: 1 / 1;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s ease;
    z-index: 1;
    max-width: 100%;
}

.topbar-slide.is-active {
    opacity: 1;
    pointer-events: auto;
}

.topbar-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    appearance: none;
    border: 0;
    background: transparent;
    padding: 4px 6px;
    line-height: 1;
    cursor: pointer;
    font-size: 18px;
    user-select: none;
    color: rgba(255,255,255,0.55);
    transition: color 0.2s ease;
    z-index: 10;
    pointer-events: auto;
}

.topbar-arrow:hover {
    color: rgba(255,255,255,0.9);
}

.topbar-arrow--prev { left: 0; }
.topbar-arrow--next { right: 0; }

@media (max-width: 600px) {
    .topbar-slides {
        padding-left: 22px;
        padding-right: 22px;
    }
    .topbar-arrow {
        font-size: 16px;
        padding: 3px 5px;
        opacity: 0.6;
    }
}

@media (prefers-reduced-motion: reduce) {
    .topbar-slide {
        transition: none;
    }
}

/* SHORT PRODUCT LIST */

/* Styling for product list  */

ul.shortlist {
    list-style-type: none; /* Remove default bullet points */
    margin-left: 0;
    padding-left: 0em; /* Add space to align content */
}

ul.shortlist li {
    position: relative; /* Needed for proper icon positioning */
    padding-left: 30px; /* Increased spacing between icon and text */
}

ul.shortlist li:before {
    content: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="%23d64744" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg>'); 
    display: inline-block;
    width: 16px; /* Adjust width for consistency */
    height: 16px; /* Adjust height for consistency */
    margin-right: 12px; /* Increased spacing between icon and text */
    margin-left: -30px; /* Keep icon positioned properly */
    vertical-align: middle; /* Keep vertical alignment */
    position: relative;
    top: -4px; /* Raise icon by 2px */
}

/* Styling for links in the list */
ul.shortlist li a {
    text-decoration: none; /* Remove underline from links */
    color: inherit; /* Inherit color from the parent list item */
}

ul.shortlist li a:hover {
    color: #000; /* Change the color when hovered */
    text-decoration: underline; /* Add underline when hovered */
} 



/* TABLES */
.table-wrapper {
    display: flex; /* Use flexbox layout for centering */
    justify-content: center; /* Center the table horizontally */
    overflow-x: auto; /* Enable horizontal scrolling */
    -webkit-overflow-scrolling: touch; /* Smooth scrolling on mobile devices */
    padding: 10px; /* Optional padding for better spacing */
    margin: 0 auto; /* Center the wrapper itself if needed */
}

.table-wrapper table {
    width: 100%; /* Ensure the table stretches within the wrapper */
    max-width: 600px; /* Optional: Set a max width for the table */
    border-collapse: collapse; /* Merge table borders */
    white-space: nowrap; /* Prevent text wrapping */
}

.table-wrapper th, .table-wrapper td {
    border: 1px solid #ddd; /* Simple border style for table cells */
    padding: 8px; /* Add some space inside cells */
    text-align: left; /* Align text to the left */
}
/* Frosted Glass Effect */
.ct-frosted-glass {
	backdrop-filter: blur(40px) brightness(200%);
	-webkit-backdrop-filter: blur(40px) brightness(200%);
}

/* News letter fix for WP Forms */
.ct-subscribe-form {
	--theme-form-field-height: 60px;
	--theme-form-field-padding: 0 25px;
	--theme-form-field-background-initial-color: #000;
	--theme-form-field-background-focus-color: rgba(0, 0, 0, 0.4);
	--theme-form-field-border-width: 0;
	--theme-text-color: #fff;
	
	
	--theme-button-min-height: 60px;
	--theme-button-background-initial-color: var(--theme-palette-color-1);
	--theme-button-text-initial-color: #fff; }

/* Responsive map */
@media only screen and (max-width: 1024px) {
.ct-map { height:400px; }
}

/* SALE Styling*/
.woocommerce .price ins .woocommerce-Price-amount {
  color: #d64744;
}

/*** CART ***/
.wc-block-components-product-badge.wc-block-components-sale-badge {
    background-color: #d64744;
    border: none;
	color:#FFF

}

/* Margin Page Bottom */
main#main {
    padding-bottom: 100px;
}

/***Category pages ***/

/* Text on category header */
.page-description {
    font-weight: 600;
}
	
summary {
    font-weight: 500;
}

/*Product name size*/
a.woocommerce-LoopProduct-link.woocommerce-loop-product__link {
    font-size: 22px;
}

.acf-back-in-stock {
    margin-bottom: 8px;
}

/*Styling of extra category text*/
.springs-category-text {
    margin-bottom: -40px !important;
	padding: 10px 10px 0px 10px;
}

/* Custom Header*/
.custom-category-title {
    font-size: clamp(2.1em, 5vw, 3.5em); 
    font-weight: 600;
    text-align: center;
    color: #fff;
}

/* Border before Related products */
.related.products {
    border-top: 1px solid #9E9E9E;
    padding-top: 30px;
}

/* Product Page Intro  */

.springs-product-intro {
    font-size: 18px !important;

}

/* Styling WP-heading*/
.wp-block-heading {
    margin-top: 60px;
}

/* Styling i Number-lists*/
ol.wp-block-list {
    counter-reset: list-counter;
}

ol.wp-block-list li {
    margin-bottom: 10px;
    list-style: none;
    position: relative;
}

ol.wp-block-list li::before {
    counter-increment: list-counter;
    content: counter(list-counter) ".";
    font-weight: bold;
    position: absolute;
    left: -2em;
}

/*Product Page Breadcrumb*/
.single-product .ct-container-full {
    margin-top: -30px;
}

.acf-video-embed {
    position: relative;
    width: 100%;
    max-width: 1200px; /* Maxbredd */
    margin: 0 auto; /* Centrerar videon */
}

.acf-video-embed iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9; /* Gör den responsiv */
}

/*Footer styling*/
.footer-list {
    list-style: none; /* Removes default bullet points */
    padding: 0;
    margin: 0;
}

.footer-list li {
    padding: 5px 0; /* Adds space between items */
    line-height: 9; /* Improves readability */
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* Subtle separator */
}

.footer-list li:last-child {
    border-bottom: none; /* Removes border from last item */
}

.footer-list a {
    text-decoration: none; /* Ensures clean links */
    display: inline-block;
    transition: opacity 0.2s ease-in-out;
}

.footer-list a:hover {
    opacity: 0.8; /* Subtle hover effect */
}

/* DOWNLOADS – Responsive two-column layout */

.product-downloads-list {
    display: grid;
    grid-template-columns: 1fr; /* alltid en kolumn */
    gap: 1.5em;
    max-width: 500px;
    margin: 2em auto 120px auto !important;
    padding: 0;
    list-style: none;
}

.product-downloads-list li {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    padding: 1.25em 1em;
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    background-color: #fcfcfc;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
    transition: background 0.2s ease, box-shadow 0.2s ease;
}

.product-downloads-list li:hover {
    background-color: #f5f5f5;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}

.product-downloads-list a {
    font-weight: 600;
    color: #0073aa;
    text-decoration: none;
    position: relative;
    padding-left: 28px;
    display: inline-block;
    font-size: 1rem;
}

.product-downloads-list a::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%230073aa' viewBox='0 0 24 24'%3E%3Cpath d='M6 2a2 2 0 0 0-2 2v16.002A1.998 1.998 0 0 0 6 22h12a2 2 0 0 0 2-2V8.828a2 2 0 0 0-.586-1.414l-5.828-5.828A2 2 0 0 0 12.172 1H6zm6 1.414L18.586 10H13a1 1 0 0 1-1-1V3.414zM8 13h8v2H8v-2zm0 4h8v2H8v-2z'/%3E%3C/svg%3E");
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
}

.download-lang {
    font-size: 1.2em;
    display: inline-block;
    margin-left: 0.5em;
    line-height: 1;
}

/* Only show flag icons – no language code */
.download-lang[data-lang="EN"]::before {
    content: "🇬🇧";
}
.download-lang[data-lang="DE"]::before {
    content: "🇩🇪";
}
.download-lang[data-lang="NL"]::before {
    content: "🇳🇱";
}

.download-desc {
    font-size: 0.9em;
    color: #444;
    line-height: 1.4;
}

/* Footer fix*/
.ct-container .wp-block-list {
    margin-top: -15px;
}

/*Stock status*/
p.stock.available-on-backorder,
p.stock.out-of-stock {
    font-weight: 700;
    margin-bottom: 3px;
}
/* Hide Category on product page*/
.product_meta .posted_in {
    display: none !important;
}

/*Widget Headings Fix*/
.widget-title {
  margin-top: 0;
}


/* Variation styling*/
form.variations_form table.variations {
    margin-bottom: 2.5em
}


/*** CART BUTTONS & QUANTITY STYLING ***/

/* Background color of the entire quantity block */
.ct-cart-actions .quantity {
  background-color: #e6f7ef !important; /* light green */
}

/* Styling the input field inside quantity block */
.ct-cart-actions .quantity input.qty {
  background-color: #e6f7ef !important;
  border: 2px solid #3cb878 !important;
  color: #000000 !important;
}

/* Plus and minus buttons */
.ct-cart-actions .quantity .ct-increase,
.ct-cart-actions .quantity .ct-decrease {
  background-color: #3cb878 !important;
  color: #ffffff !important;
}

/* Hover effect for plus and minus buttons */
.ct-cart-actions .quantity .ct-increase:hover,
.ct-cart-actions .quantity .ct-decrease:hover {
  background-color: #319b64 !important;
}

/* Add to cart button on single product page */
.single_add_to_cart_button.button.alt {
  background-color: #3cb878 !important;
  color: #ffffff !important;
  border: none !important;
}

/* Hover effect for add to cart */
.single_add_to_cart_button.button.alt:hover {
  background-color: #319b64 !important;
  color: #ffffff !important;
}

/*** ADDITIONAL BUTTON STYLES ***/

/* Generic forward button (e.g. view cart) */
button.wc-forward {
  background-color: #3cb878 !important;
  color: #ffffff !important;
  border: none !important;
}

/* Checkout button with .checkout class */
button.checkout.wc-forward {
  background-color: #3cb878 !important;
  color: #ffffff !important;
}

/* Alternative checkout button style */
.checkout-button.button.alt.wc-forward {
  background-color: #3cb878 !important;
  color: #ffffff !important;
  border: none !important;
}

/* Place order button on checkout page */
button#place_order {
  background-color: #3cb878 !important;
  color: #ffffff !important;
  border: none !important;
}

/* Hover styles for all checkout-related buttons */
button.wc-forward:hover,
button.checkout.wc-forward:hover,
.checkout-button.button.alt.wc-forward:hover,
button#place_order:hover {
  background-color: #319b64 !important;
  color: #ffffff !important;
}