/*
Theme Name: Ecomus La Forma
Theme URI: https://laforma.club
Author: DrFuri
Author URI: http://drfuri.com/
Description: La Forma WooCommerce WordPress Theme
Version: 1.0.4
Requires at least: 5.0
Tested up to: 5.8
Requires PHP: 7.0
License: GNU General Public License v2+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ecomus
Domain Path: /lang/
Tags: one-column, two-columns, left-sidebar, right-sidebar, full-width-template, post-formats, theme-options, threaded-comments, translation-ready
Template: ecomus
*/

.site-content p a {
    color: #C69160;
}

.site-content a.em-button {
    color: white;
}

.product-gallery-notice {
    background-color: rgba(255, 255, 255, 0.85);
    border-left: none;
    padding: 10px 15px;
    font-size: 14px;
    color: #333;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    pointer-events: none; /* Allow clicks to pass through to gallery controls */
}

.product-gallery-notice p {
    margin: 0;
    padding: 0;
    text-align: center;
}

/* Ensure the notice stays in place even with dynamic content */
.woocommerce-product-gallery .swiper-container,
.woocommerce-product-gallery .flex-viewport {
    overflow: visible !important;
}

/* For Elementor product pages */
.single-product.single-product-elementor .product-gallery-notice {
    margin-top: 15px;
}

.name-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.name-row .name-field {
    flex: 1 1 100%;
}

@media (min-width: 768px) {
    .name-row .name-field {
        flex: 1 1 48%;
    }
}

.tax-warning-message {
    margin: 0;
    padding: 10px 30px;
    font-size: 14px;
    color: #B29079;
}

.tax-warning-message-cart {
    margin: 0;
    padding: 10px 0;
    font-size: 14px;
    color: #B29079;
}


/*!* Force 16:9 thumbnails in any Ecomus blog list *!*/
/*.post--list .post-thumbnail,*/
/*article.post .post-thumbnail,*/
/*.blog-loop .post-thumbnail {*/
/*    aspect-ratio: 16/9;          !* keeps the frame wide *!*/
/*    overflow: hidden;            !* hides overflow crop *!*/
/*}*/
/*.post--list .post-thumbnail img,*/
/*article.post .post-thumbnail img,*/
/*.blog-loop .post-thumbnail img {*/
/*    width: 100%;*/
/*    height: 100%;*/
/*    object-fit: cover;           !* neat centre-crop *!*/
/*}*/


/* ──────────────────────────────────────────────
   TYPOGRAPHY & LAYOUT – single blog post
   ────────────────────────────────────────────── */
.single-post .entry-content {
    display: block;
    flex-flow: column!important;
}

.single-post .site-main,
.single-post .entry-content,
.single-post .entry-header   { /* tighten the column and center it */
    max-width: 46rem;      /* ≈ 736 px → ~65 cpl on 16–18 px text  */
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
}

/* Base copy – comfortable to read on a monitor */
:root{
    /* grows from 16 px on tiny screens to ~18 px on large desktops */
    --font-size-base: clamp(1rem, 0.95rem + 0.45vw, 1.125rem);
}
.single-post .entry-content p{
    font-size: var(--font-size-base);
    line-height: 1.65;
    margin: 0 0 1.25em;
    word-break: keep-all;
}

.single-post .entry-content a {
    color: #C69160;
}

/* Make lists & block-level elements align  visually */
.single-post .entry-content ul,
.single-post .entry-content ol{
    padding-left: 1.15em;
    margin-bottom: 1.25em;
}

/* Headings – smaller than before, but still clearly hierarchical */
.single-post .entry-title{            /* H1 shown in the header      */
    font-size: clamp(1.9rem, 1.55rem + 1vw, 2.4rem);  /* 30 – 38 px  */
    line-height: 1.25;
    margin: 0.4em 0 0.6em;
    text-align: center;
}

.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.single-post .entry-content h5{
    font-weight: 700;
    line-height: 1.3;
    margin: 2.1rem 0 0.8rem;
}
.single-post .entry-content h2{font-size:1.6rem;} /* 25-26 px */
.single-post .entry-content h3{font-size:1.4rem;} /* 22-23 px */
.single-post .entry-content h4,
.single-post .entry-content h5{font-size:1.2rem;}/* 19-20 px */

/* Meta information */
.single-post .entry-meta{
    font-size: .9rem;
    letter-spacing: .15px;
    margin-bottom: 1.2rem;
}

/* Images – full-bleed inside the column, keep aspect ratio */
.single-post .entry-content img{
    display:block;
    max-width:100%;
    height:auto;
    margin:1.75rem 0;
    border-radius: .25rem;
}

/* ──────────────────────────────────────────────
   TAGS  – wrap long keyword pills nicely
   ────────────────────────────────────────────── */
.single-post .entry-tags{
    display:flex;
    flex-wrap:wrap;
    gap:.5rem;
    margin-top:2rem;
}
.single-post .entry-tags a{
    font-size:.85rem;
    padding:.4em .9em;
    background:#f5f5f5;
    border-radius:2rem;
    white-space:nowrap;        /* keeps each tag on one line  */
    max-width:100%;
    text-overflow:ellipsis;
    overflow:hidden;
}

/* ──────────────────────────────────────────────
   SHARE ICONS – make them less visually heavy
   ────────────────────────────────────────────── */
.single-post .entry-meta__share{
    margin-top:2.5rem;
    font-size:.85rem;
}
.single-post .post__socials-share .social-share-link{
    display:inline-flex;
    align-items:center;
    gap:.25rem;
    font-size:0;           /* hide label on desktop */
}
@media (hover:hover){
    .single-post .post__socials-share .social-share-link:hover svg{
        transform:scale(1.12);
    }
}

/* ──────────────────────────────────────────────
   COMMENTS FORM – wider input on large screens
   ────────────────────────────────────────────── */
.single-post #comment,
.single-post textarea{
    font-size:1rem;
    line-height:1.5;
    width:100%;
}

/* ──────────────────────────────────────────────
   DESIGN-SPEC TYPE SCALE
   (base 16 px; rem values = px ÷ 16)
   ────────────────────────────────────────────── */

/* HEADINGS */
.single-post .entry-title{                       /* H1 */
    font-size:2.75rem;            /* 44 px */
    line-height:3.5rem;           /* 56 px */
    font-weight:400;
    letter-spacing:0;
    text-align:center;
    margin:0.4em 0 0.6em;
}

.single-post .entry-content h2{     /* H2 */
    font-size:2rem;               /* 32 px */
    line-height:2.5rem;           /* 40 px */
    font-weight:400;
    letter-spacing:0;
    margin:2rem 0 .9rem;
}

.single-post .entry-content h3{
    font-size:1.5rem;             /* 24 px */
    line-height:2rem;             /* 32 px */
    font-weight:400;
    letter-spacing:0;
    margin:1.8rem 0 .8rem;
}
.single-post .entry-content h3 b,
.single-post .entry-content h3.strong{font-weight:700;} /* H3 Bold */

.single-post .entry-content h4,
.single-post .entry-content h5{
    font-size:1rem;               /* 16 px */
    line-height:1.5rem;           /* 24 px */
    font-weight:400;              /* H4 Regular */
    letter-spacing:0;
    margin:1.6rem 0 .7rem;
}
.single-post .entry-content h4 b,
.single-post .entry-content h5 b{font-weight:700;}      /* H4 Bold */

/* BODY TEXTS */
.single-post .entry-content p,
.single-post .entry-content li,
.single-post .entry-content blockquote{
    font-size:1.25rem;            /* 20 px – Body 1 */
    line-height:1.75rem;          /* 28 px */
    letter-spacing:0;
    margin:0 0 1.25em;
}

/* Smaller meta / tag text – Body 2 (16 px) */
.single-post .entry-meta,
.single-post .entry-tags a{
    font-size:1rem;               /* 16 px */
    line-height:1.5rem;           /* 24 px */
}

/* Body 3 for very small print (e.g. disclaimers) */
.small-print,
figcaption,
.entry-footer .copyright{
    font-size:.8125rem;           /* 13 px */
    line-height:1.125rem;         /* 18 px */
}

/* BUTTONS */
.wp-block-button a,
button,
.single-post .post__socials-share .social-share-link{
    font-weight:700;
    letter-spacing:.6px;
}
.wp-block-button a{font-size:1rem;}          /* Button 1 – 16 px */
button.small,
.single-post .post__socials-share .social-share-link{font-size:.875rem;} /* 14 px */

/* ──────────────────────────────────────────────
   LAYOUT & QUALITY-OF-LIFE RULES (unchanged)
   see previous answer for rationale
   ────────────────────────────────────────────── */
.single-post .site-main,
.single-post .entry-content,
.single-post .entry-header {
    max-width:54rem;
    margin:auto;
    padding:0 2rem;
}
.single-post .entry-content img{display:block;max-width:100%;height:auto;margin:1.75rem 0;border-radius:.25rem;}
.single-post .entry-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem;}
.single-post .entry-tags a{padding:.4em .9em;background:#f5f5f5;border-radius:2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.single-post .entry-meta__share{margin-top:2.5rem;font-size:.875rem;}
.single-post .post__socials-share .social-share-link{display:inline-flex;align-items:center;gap:.25rem;font-size:0;}
@media (hover:hover){
    .single-post .post__socials-share .social-share-link:hover svg{transform:scale(1.12);}
}
@media (max-width: 768px) {
    .single-post .entry-title{                       /* H1 */
        font-size:1.75rem;            /* 44 px */
        line-height:2.5rem;           /* 56 px */
        font-weight:400;
        letter-spacing:0;
        text-align:center;
        margin:0.4em 0 0.6em;
    }

    .single-post .site-main{max-width:52rem;}
    .single-post .site-main,
    .single-post .entry-content,
    .single-post .entry-header   { /* tighten the column and center it */
        padding: 0;
    }

    .single-post .entry-content p,
    .single-post .entry-content li,
    .single-post .entry-content blockquote{
        font-size:1rem;            /* 20 px – Body 1 */
        line-height:1.5rem;          /* 28 px */
        letter-spacing:0;
        margin:0 0 1em;
    }
    .single-post .e-con-inner {
        padding: 0!important;
    }
}


.single-post .entry-footer .entry-tags, .single-post .entry-footer .entry-meta__share {
    width: 100%!important;
}

.single-post .entry-footer .entry-tags + .entry-meta__share {
    justify-content: flex-start!important;
}

.ecomus-recent-posts-widget .em-button-category {
    display: none;
}

.short-description__content p {
    margin: 0;
}



/* Product info block styling */
.laforma-info-product-block {
    background-color: #F4F4F4;
    border-radius: 16px;
    padding: 8px;
    margin-top: 25px;
    margin-bottom: 25px;
    font-family: 'Lato', sans-serif;
}

.laforma-info-product-block .item {
    display: flex;
    align-items: start;
    font-size: 16px;
    font-weight: 400;
    color: #1A1A1A;
    margin-bottom: 4px;
    line-height: 24px;
}

.laforma-info-product-block .item:last-child {
    margin-bottom: 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .laforma-info-product-block {
        padding: 15px 20px;
    }

    .laforma-info-product-block .item {
        font-size: 16px;
        margin-bottom: 12px;
    }

    .laforma-info-product-block .item:before {
        width: 20px;
        height: 20px;
        margin-right: 12px;
    }
}

/* container */
.wc-etd{
    margin-top:1em;        /* space above */
    color:#B29079;         /* pick the exact shade from your palette */
    line-height:1.3;
}

/* “Estimated delivery” */
.wc-etd-label{
    font-size:16px;
    line-height: 24px;
    font-weight:400;
}

/* “24 MAY – 28 MAY” */
.wc-etd-dates{
    display:inline-block;  /* keeps the whole range together */
    margin-top:.15em;
    font-size:16px;
    line-height: 24px;  /* a bit larger */
    font-weight:700;       /* bold */
    text-transform:uppercase;
}

.subscribe-form .sib-email-area {
    display: flex;
}

.subscribe-form .sib-email-area input[type="email"] {
    margin: 0;
    border-radius: 8px;
}
.subscribe-form .sib-email-area input[type="submit"] {
    border-radius: 8px;
    margin-left: 8px;
}

@media (max-width: 768px) {
    .subscribe-form.sib-email-area input[type="submit"] {
        margin-left: 0;
    }

    .subscribe-form .sib-email-area {
        flex-flow: column;
    }

    .subscribe-form .sib-email-area input[type="email"] {
        width: 100%;
        margin: 0 0 10px 0;
    }

    .subscribe-form .sib-email-area input[type="submit"] {
        width: 100%;
        margin: 0;
    }

    .compare-text p {
        margin-bottom: 0!important;
        margin-top: 20px!important;
    }
}

.ecomus-subscribe-box__title {
    text-transform: uppercase;
}

.single-product div.product .woocommerce-product-gallery .swiper-button {
    color: white;
    background-color: #C69160;
    border-color: white;
}

.single-post .entry-thumbnail {
    max-height: none!important;
    aspect-ratio: auto 1920 / 1080;
    margin-top: 0;
}

/*.single-product div.product .woocommerce-product-gallery .swiper-button:hover {*/
/*    color: white;*/
/*    background-color: #C69160;*/
/*    border-color: white;*/
/*}*/