
:root{
    --dp-bg:#FAF8F4;
    --dp-bg2:#F1ECE5;
    --dp-ink:#28251F;
    --dp-muted:#746E65;
    --dp-line:#E0D8CE;
    --dp-accent:#89715C;
    --dp-max:1920px;
    --dp-pad:clamp(18px,1.8vw,34px);
    --dp-serif:"Cormorant Garamond",Georgia,serif;
    --dp-sans:"Manrope",Arial,sans-serif;
}

/* Uwolnienie pojedynczego produktu spod kontenera Astry */
body.single-product .site-content,
body.single-product #content,
body.single-product #primary,
body.single-product .content-area,
body.single-product .site-main,
body.single-product .ast-woocommerce-container{
    width:100%!important;max-width:none!important;margin:0!important;
    padding-left:0!important;padding-right:0!important;
}
body.single-product .site-content>.ast-container,
body.single-product #content>.ast-container{
    width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;
}

.dormina-product-page{background:var(--dp-bg);color:var(--dp-ink);font-family:var(--dp-sans);}
.dormina-product-page *{box-sizing:border-box;}
.dormina-product-shell{width:min(calc(100% - 2*var(--dp-pad)),var(--dp-max));margin:0 auto;}
.dormina-product-eyebrow{font:500 12px/1.4 var(--dp-sans);letter-spacing:.18em;text-transform:uppercase;color:#7A6F64;margin-bottom:18px;}
.dormina-product-page h1,.dormina-product-page h2,.dormina-product-page h3{font-family:var(--dp-serif);font-weight:500;color:var(--dp-ink);}

.dormina-product-top{background:#FBF9F6;}
.dormina-product-top__inner{
    width:min(calc(100% - 2*var(--dp-pad)),var(--dp-max));
    margin:auto;display:grid;grid-template-columns:minmax(0,58%) minmax(400px,42%);
    align-items:start;
}
.dormina-product-gallery{padding:34px 28px 38px 0;}
.dormina-product-buy{padding:clamp(58px,5vw,92px) clamp(34px,4vw,74px);position:sticky;top:20px;}
.dormina-product-buy h1{font-size:clamp(50px,3.5vw,70px);line-height:.98;letter-spacing:-.025em;margin:0 0 22px;}
.dormina-product-short{font-size:16px;color:var(--dp-muted);line-height:1.65;max-width:650px;}
.dormina-product-short p{margin-top:0;}
.dormina-product-price{font:500 32px/1.1 var(--dp-serif);margin:24px 0;border-bottom:1px solid var(--dp-line);padding-bottom:18px;}

.dormina-product-cart .variations{margin-bottom:20px!important;}
.dormina-product-cart .variations th,.dormina-product-cart .variations td{display:block;text-align:left;padding:0 0 8px!important;}
.dormina-product-cart .variations label{font-size:13px;font-weight:500;color:var(--dp-ink);}
.dormina-product-cart select{min-height:48px;border:1px solid #CFC6BB;background:white;border-radius:0;padding:0 12px;}
.dormina-product-cart .single_add_to_cart_button{
    min-height:54px!important;border-radius:0!important;background:var(--dp-accent)!important;
    font:500 14px/1 var(--dp-sans)!important;padding:18px 30px!important;width:100%;
}
.dormina-product-cart .quantity .qty{min-height:54px;border-radius:0;border:1px solid #D0C8BE;}
.dormina-product-microtrust{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--dp-line);margin-top:26px;padding-top:22px;gap:24px;}
.dormina-product-microtrust strong{display:block;font:500 19px/1.1 var(--dp-serif);margin-bottom:6px;}
.dormina-product-microtrust span{display:block;color:var(--dp-muted);font-size:12px;line-height:1.45;}

/* Woo gallery */
.dormina-product-gallery .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important;}
.dormina-product-gallery .woocommerce-product-gallery__image img{width:100%;height:auto;display:block;}
.dormina-product-gallery .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px!important;}
.dormina-product-gallery .flex-control-thumbs li{width:100%!important;float:none!important;margin:0!important;}

.dormina-product-story{padding:clamp(78px,6vw,110px) 0;}
.dormina-product-story__grid{display:grid;grid-template-columns:46% 54%;background:#F4EFE8;}
.dormina-product-story__copy{padding:clamp(58px,5vw,90px);}
.dormina-product-story h2{font-size:clamp(46px,3.4vw,64px);line-height:1;margin:0 0 22px;}
.dormina-product-story p{color:var(--dp-muted);font-size:16px;line-height:1.7;}
.dormina-product-benefits{display:grid;grid-template-columns:repeat(2,1fr);margin-top:34px;border-top:1px solid var(--dp-line);}
.dormina-product-benefits>div{padding:20px 18px;border-bottom:1px solid var(--dp-line);font:500 18px/1.1 var(--dp-serif);}
.dormina-product-benefits>div:nth-child(odd){border-right:1px solid var(--dp-line);}
.dormina-product-story__media{min-height:560px;background:#CDBFAF;display:grid;place-items:center;color:rgba(40,37,31,.45);font-size:11px;letter-spacing:.15em;text-transform:uppercase;}

.dormina-product-details{padding:0 0 clamp(84px,7vw,120px);}
.dormina-product-details h2{font-size:50px;line-height:1;margin:0 0 34px;}
.dormina-product-details__grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:22px;}
.dormina-product-detail-image{min-height:390px;background:#D5C8B9;display:flex;align-items:flex-end;padding:18px;font:500 18px/1.1 var(--dp-serif);}
.dormina-product-accordions{border-top:1px solid var(--dp-line);}
.dormina-product-accordions details{border-bottom:1px solid var(--dp-line);}
.dormina-product-accordions summary{cursor:pointer;list-style:none;padding:22px 6px;font:500 22px/1.1 var(--dp-serif);display:flex;justify-content:space-between;}
.dormina-product-accordions summary::-webkit-details-marker{display:none;}
.dormina-product-accordions summary:after{content:"+";font-family:var(--dp-sans);font-weight:300;}
.dormina-product-accordions details[open] summary:after{content:"−";}
.dormina-product-accordion-content{padding:0 6px 22px;color:var(--dp-muted);font-size:14px;line-height:1.65;}
.dormina-product-accordion-content table{font-size:13px;}

.dormina-product-bundle{background:#D0C1B0;}
.dormina-product-bundle__inner{display:grid;grid-template-columns:42% 58%;min-height:580px;}
.dormina-product-bundle__copy{padding:clamp(64px,6vw,108px);display:flex;flex-direction:column;justify-content:center;background:rgba(52,43,35,.34);color:#fff;}
.dormina-product-bundle__copy .dormina-product-eyebrow{color:rgba(255,255,255,.75);}
.dormina-product-bundle h2{font-size:clamp(48px,3.8vw,70px);line-height:.98;color:#fff;margin:0 0 20px;}
.dormina-product-bundle p{font-size:16px;line-height:1.65;max-width:560px;color:rgba(255,255,255,.88);}
.dormina-product-bundle__media{display:grid;place-items:center;color:rgba(40,37,31,.42);font-size:11px;letter-spacing:.15em;text-transform:uppercase;}
.dormina-product-button{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:52px;padding:17px 30px;background:#fff;color:var(--dp-ink)!important;text-decoration:none!important;font-size:13px;margin-top:12px;}
.dormina-product-button span{margin-left:10px;}
.dormina-product-button--disabled{opacity:.65;}

.dormina-product-reviews{padding:90px 0;background:#F7F3EE;}
.dormina-product-reviews h2{font-size:46px;}
.dormina-product-related{padding:clamp(78px,6vw,110px) 0;}
.dormina-product-related .related>h2{font-size:48px;margin-bottom:32px;}
.dormina-product-related ul.products{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:28px;}
.dormina-product-related ul.products li.product{width:auto!important;margin:0!important;}
.dormina-product-related ul.products li.product img{aspect-ratio:4/4.1;object-fit:cover;}

@media(max-width:1200px){
    .dormina-product-top__inner{grid-template-columns:55% 45%;}
    .dormina-product-buy{padding:50px 30px;position:static;}
    .dormina-product-buy h1{font-size:52px;}
}
@media(max-width:900px){
    .dormina-product-top__inner{grid-template-columns:1fr;}
    .dormina-product-gallery{padding:22px 0;}
    .dormina-product-buy{padding:42px 24px 58px;}
    .dormina-product-story__grid{grid-template-columns:1fr;}
    .dormina-product-story__media{min-height:420px;}
    .dormina-product-details__grid{grid-template-columns:1fr 1fr;}
    .dormina-product-accordions{grid-column:1/-1;}
    .dormina-product-bundle__inner{grid-template-columns:1fr;}
    .dormina-product-bundle__media{min-height:400px;order:-1;}
}
@media(max-width:767px){
    :root{--dp-pad:18px;}
    .dormina-product-buy h1{font-size:44px;}
    .dormina-product-microtrust{grid-template-columns:1fr;}
    .dormina-product-story{padding:54px 0;}
    .dormina-product-story__copy{padding:46px 20px;}
    .dormina-product-story h2{font-size:44px;}
    .dormina-product-benefits{grid-template-columns:1fr;}
    .dormina-product-benefits>div:nth-child(odd){border-right:0;}
    .dormina-product-details h2{font-size:42px;}
    .dormina-product-details__grid{grid-template-columns:1fr;}
    .dormina-product-accordions{grid-column:auto;}
    .dormina-product-detail-image{min-height:300px;}
    .dormina-product-bundle__copy{padding:48px 20px;}
    .dormina-product-related ul.products{grid-template-columns:1fr!important;}
}


/* ==========================================================
   v0.2 — produkt spokojniejszy, bardziej premium
   ========================================================== */

/* Top: trochę mniej monumentalny, lepszy balans 56/44 */
.dormina-product-top__inner{
    max-width:1780px;
    grid-template-columns:minmax(0,56%) minmax(410px,44%);
    gap:clamp(26px,2.2vw,46px);
}
.dormina-product-gallery{
    padding:32px 0 44px;
}
.dormina-product-buy{
    padding:clamp(54px,4.6vw,82px) clamp(28px,3.2vw,58px);
    position:sticky;
    top:24px;
}
.dormina-product-buy h1{
    font-size:clamp(48px,3.15vw,62px);
    line-height:1.01;
    max-width:640px;
    margin-bottom:18px;
}
.dormina-product-price{
    font-size:30px;
    margin:20px 0;
}

/* Galeria: jeden elegancki blok zamiast „domyślnego Woo” */
.dormina-product-gallery .woocommerce-product-gallery{
    max-width:100%;
}
.dormina-product-gallery .woocommerce-product-gallery__wrapper{
    background:#EEE6DD;
    overflow:hidden;
}
.dormina-product-gallery .woocommerce-product-gallery__image{
    aspect-ratio:1.08/1;
    overflow:hidden;
    background:#EEE6DD;
}
.dormina-product-gallery .woocommerce-product-gallery__image > a{
    display:block;
    width:100%;
    height:100%;
}
.dormina-product-gallery .woocommerce-product-gallery__image img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}

/* Miniatury bez 1., 2., 3. */
.dormina-product-gallery .flex-control-thumbs{
    list-style:none!important;
    padding:0!important;
    margin:14px 0 0!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:12px!important;
}
.dormina-product-gallery .flex-control-thumbs li{
    list-style:none!important;
    padding:0!important;
    margin:0!important;
}
.dormina-product-gallery .flex-control-thumbs li::marker{
    content:"";
    font-size:0;
}
.dormina-product-gallery .flex-control-thumbs img{
    width:100%!important;
    aspect-ratio:1/1;
    object-fit:cover;
    opacity:.78;
    border:1px solid transparent;
}
.dormina-product-gallery .flex-control-thumbs img.flex-active{
    opacity:1;
    border-color:#8A7664;
}

/* Neutralny zoom zamiast niebieskiego elementu */
.dormina-product-gallery .woocommerce-product-gallery__trigger{
    width:38px!important;
    height:38px!important;
    top:16px!important;
    right:16px!important;
    left:auto!important;
    border-radius:50%!important;
    background:rgba(250,248,244,.90)!important;
    border:1px solid rgba(40,37,31,.14)!important;
    box-shadow:none!important;
    z-index:5!important;
}
.dormina-product-gallery .woocommerce-product-gallery__trigger:before,
.dormina-product-gallery .woocommerce-product-gallery__trigger:after{
    border-color:#28251F!important;
}

/* Zakup */
.dormina-product-cart form.cart{
    margin-bottom:0!important;
}
.dormina-product-cart .quantity{
    margin-right:10px!important;
}
.dormina-product-cart .quantity .qty{
    width:68px;
    background:#fff;
}
.dormina-product-cart .single_add_to_cart_button{
    min-height:56px!important;
    background:#89715C!important;
    letter-spacing:.01em;
    transition:background .2s ease, transform .2s ease;
}
.dormina-product-cart .single_add_to_cart_button:hover{
    background:#6F5C4B!important;
    transform:translateY(-1px);
}
.dormina-product-microtrust{
    margin-top:22px;
    padding-top:20px;
}
.dormina-product-microtrust strong{
    font-size:18px;
}

/* Story: spokojniejsze proporcje */
.dormina-product-story{
    padding:76px 0 94px;
}
.dormina-product-story__grid{
    grid-template-columns:44% 56%;
    max-width:1780px;
}
.dormina-product-story__copy{
    padding:clamp(54px,4.4vw,78px);
}
.dormina-product-story h2{
    font-size:clamp(44px,3vw,58px);
}
.dormina-product-story__media{
    min-height:500px;
}

/* Detale mniej masywne */
.dormina-product-details{
    padding-bottom:94px;
}
.dormina-product-details h2{
    font-size:46px;
}
.dormina-product-detail-image{
    min-height:330px;
}
.dormina-product-accordions summary{
    font-size:20px;
    padding:20px 6px;
}

/* Bundle bez sztucznego „wyłączonego przycisku” */
.dormina-product-bundle__inner{
    min-height:520px;
    grid-template-columns:44% 56%;
}
.dormina-product-bundle__copy{
    padding:clamp(58px,5vw,90px);
}
.dormina-product-bundle h2{
    font-size:clamp(46px,3.45vw,64px);
}
.dormina-product-bundle-note{
    display:inline-block;
    margin-top:10px;
    color:rgba(255,255,255,.78);
    font-size:13px;
    border-bottom:1px solid rgba(255,255,255,.45);
    padding-bottom:4px;
    align-self:flex-start;
}

/* Related: własne, lekkie karty zamiast standardowego WooCommerce */
.dormina-product-related{
    padding:86px 0 104px;
    background:#FAF8F4;
}
.dormina-product-related__head{
    margin-bottom:34px;
}
.dormina-product-related__head h2{
    font-family:var(--dp-serif);
    font-size:48px;
    line-height:1;
    font-weight:500;
    margin:0;
}
.dormina-related-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:clamp(22px,2vw,34px);
}
.dormina-related-card__image{
    display:block;
    background:#DED2C5;
    aspect-ratio:4/4.05;
    overflow:hidden;
}
.dormina-related-card__image img{
    display:block;
    width:100%!important;
    height:100%!important;
    object-fit:cover;
    transition:transform .35s ease;
}
.dormina-related-card:hover .dormina-related-card__image img{
    transform:scale(1.018);
}
.dormina-related-card__body{
    padding-top:15px;
}
.dormina-related-card h3{
    margin:0 0 8px;
    font:500 28px/1.04 var(--dp-serif);
}
.dormina-related-card h3 a{
    color:var(--dp-ink);
    text-decoration:none;
}
.dormina-related-card p{
    color:var(--dp-muted);
    font-size:13px;
    line-height:1.55;
    margin:0 0 12px;
}
.dormina-related-card__bottom{
    padding-top:12px;
    border-top:1px solid var(--dp-line);
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:16px;
}
.dormina-related-card__price{
    font:500 20px/1.1 var(--dp-serif);
}
.dormina-related-card__link{
    color:var(--dp-ink)!important;
    text-decoration:none!important;
    border-bottom:1px solid #76685B;
    padding-bottom:3px;
    font-size:13px;
    white-space:nowrap;
}
.dormina-related-empty{
    grid-column:1/-1;
    background:#EEE7DE;
    padding:50px;
    text-align:center;
    color:var(--dp-muted);
}

/* Laptop */
@media(max-width:1350px) and (min-width:901px){
    .dormina-product-top__inner{
        grid-template-columns:54% 46%;
        gap:26px;
    }
    .dormina-product-buy{
        padding:44px 24px;
    }
    .dormina-product-buy h1{
        font-size:48px;
    }
    .dormina-product-gallery .woocommerce-product-gallery__image{
        aspect-ratio:1/1;
    }
}

/* Mobile/tablet */
@media(max-width:900px){
    .dormina-product-top__inner{
        grid-template-columns:1fr;
        max-width:none;
    }
    .dormina-product-gallery{
        padding:18px 0 20px;
    }
    .dormina-product-buy{
        position:static;
        padding:40px 22px 56px;
    }
    .dormina-product-gallery .flex-control-thumbs{
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
        gap:7px!important;
    }
    .dormina-related-grid{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:767px){
    .dormina-product-gallery .woocommerce-product-gallery__image{
        aspect-ratio:1/1.05;
    }
    .dormina-product-buy h1{
        font-size:42px;
    }
    .dormina-product-story__grid{
        grid-template-columns:1fr;
    }
    .dormina-product-story__media{
        min-height:340px;
    }
    .dormina-related-grid{
        grid-template-columns:1fr;
        gap:38px;
    }
    .dormina-product-related__head h2{
        font-size:42px;
    }
}


/* v0.3 */
.dormina-product-gallery .woocommerce-product-gallery__trigger{display:none!important;}

.dormina-native-select-hidden{
    position:absolute!important;width:1px!important;height:1px!important;
    opacity:0!important;pointer-events:none!important;
}
.dormina-variation-options{display:flex;flex-wrap:wrap;gap:10px;margin:5px 0 14px;}
.dormina-variation-option{
    appearance:none;background:#fff;border:1px solid #D4CCC2;color:var(--dp-ink);
    cursor:pointer;font-family:var(--dp-sans);
    transition:border-color .18s ease,background .18s ease,opacity .18s ease;
}
.dormina-variation-option:hover{border-color:#8A7664;}
.dormina-variation-option.is-selected{border-color:#28251F;box-shadow:inset 0 0 0 1px #28251F;}
.dormina-variation-option:disabled{opacity:.32;cursor:not-allowed;text-decoration:line-through;}
.dormina-variation-options--size .dormina-variation-option{min-width:76px;min-height:45px;padding:10px 14px;font-size:13px;}
.dormina-variation-options--color{gap:16px;}
.dormina-variation-options--color .dormina-variation-option{
    border:0;background:transparent;padding:0;min-width:64px;
    display:flex;flex-direction:column;align-items:center;gap:7px;box-shadow:none;
}
.dormina-color-dot{
    width:38px;height:38px;border-radius:50%;display:block;
    border:1px solid rgba(40,37,31,.18);outline:2px solid transparent;outline-offset:3px;
}
.dormina-variation-options--color .is-selected .dormina-color-dot{outline-color:#28251F;}
.dormina-color-name{font-size:11px;color:#665F57;white-space:nowrap;}

.dormina-product-story__media.has-image,
.dormina-product-detail-image.has-image,
.dormina-product-bundle__media.has-image{
    background-position:center;background-size:cover;background-repeat:no-repeat;
}
.dormina-product-detail-image.has-image span{background:rgba(250,248,244,.90);padding:8px 10px;}
.dormina-product-bundle__media.has-image span,
.dormina-product-story__media.has-image span{display:none;}


/* ==========================================================
   v0.4 — bardziej butikowa karta produktu
   ========================================================== */
:root{--dp-content-max:1560px;}
.dormina-product-shell,.dormina-product-top__inner{width:min(calc(100% - 2 * var(--dp-pad)),var(--dp-content-max));max-width:none;margin-left:auto;margin-right:auto;}
.dormina-product-story__grid{width:min(calc(100% - 2 * var(--dp-pad)),var(--dp-content-max));margin-left:auto;margin-right:auto;}
@media(min-width:901px){
 .dormina-product-top__inner{grid-template-columns:minmax(0,57%) minmax(390px,43%);align-items:start;gap:clamp(34px,3vw,58px);}
 .dormina-product-gallery{padding:24px 0 30px;}
 .dormina-product-gallery .woocommerce-product-gallery__wrapper{height:clamp(430px,calc(100vh - 235px),690px);min-height:0;}
 .dormina-product-gallery .woocommerce-product-gallery__image{height:100%!important;min-height:0!important;aspect-ratio:auto!important;}
 .dormina-product-gallery .woocommerce-product-gallery__image>a,.dormina-product-gallery .woocommerce-product-gallery__image img{height:100%!important;}
 .dormina-product-gallery .woocommerce-product-gallery__image img{object-fit:contain!important;background:#EEE6DD;}
 .dormina-product-gallery .flex-control-thumbs{height:72px;grid-template-columns:repeat(5,72px)!important;justify-content:start;gap:10px!important;overflow:hidden;}
 .dormina-product-gallery .flex-control-thumbs li,.dormina-product-gallery .flex-control-thumbs img{width:72px!important;height:72px!important;aspect-ratio:1/1;}
 .dormina-product-buy{padding:clamp(42px,4vh,62px) 0 34px clamp(8px,1vw,18px);position:sticky;top:18px;}
 .dormina-product-buy h1{font-size:clamp(44px,3vw,58px);max-width:590px;}
}
.dormina-product-cart .variations{border:0!important;margin:0 0 10px!important;}
.dormina-product-cart .variations tbody,.dormina-product-cart .variations tr,.dormina-product-cart .variations td{display:block!important;width:100%!important;border:0!important;}
.dormina-product-cart .variations th.label{display:none!important;}
.dormina-product-cart .variations td.value{padding:0 0 12px!important;}
.dormina-product-cart .reset_variations{font-size:11px;color:#8A8178;text-decoration:none;margin-top:3px;}
.dormina-variation-options--size{gap:18px;border-bottom:1px solid var(--dp-line);padding-bottom:12px;margin-bottom:18px;}
.dormina-variation-options--size .dormina-variation-option{min-width:0;min-height:0;padding:5px 0 7px;border:0!important;border-bottom:1px solid transparent!important;background:transparent!important;box-shadow:none!important;font-size:13px;color:#5F574F;}
.dormina-variation-options--size .dormina-variation-option:hover{color:var(--dp-ink);border-bottom-color:#A99887!important;}
.dormina-variation-options--size .dormina-variation-option.is-selected{color:var(--dp-ink);border-bottom-color:var(--dp-ink)!important;box-shadow:none!important;}
.dormina-variation-options--color{margin-top:4px;margin-bottom:20px;gap:18px;}
.dormina-color-dot{width:35px;height:35px;}
.dormina-product-cart form.cart{display:flex!important;align-items:stretch!important;gap:10px;flex-wrap:wrap;}
.dormina-product-cart .quantity{margin:0!important;display:inline-flex!important;align-items:stretch;height:56px;border:1px solid #CBC2B8;background:#fff;}
.dormina-product-cart .quantity .qty{width:42px!important;height:54px!important;min-height:54px!important;border:0!important;padding:0!important;text-align:center;background:#fff!important;color:var(--dp-ink);font:500 13px/1 var(--dp-sans);-moz-appearance:textfield;}
.dormina-product-cart .quantity .qty::-webkit-outer-spin-button,.dormina-product-cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.dormina-qty__btn{width:40px;height:54px;border:0;background:#fff;color:var(--dp-ink);font:400 19px/1 var(--dp-sans);cursor:pointer;padding:0;}
.dormina-qty__btn:hover{background:#F4EFE8;}
.dormina-qty__minus{border-right:1px solid #E0D8CE;}.dormina-qty__plus{border-left:1px solid #E0D8CE;}
.dormina-product-cart .single_add_to_cart_button{width:auto!important;flex:1 1 230px;height:56px!important;min-height:56px!important;margin:0!important;}
.dormina-product-cart .single_variation_wrap{width:100%;}
.dormina-product-cart .woocommerce-variation-add-to-cart{display:flex!important;align-items:stretch;gap:10px;width:100%;}
.dormina-product-cart .woocommerce-variation-price{margin-bottom:14px;}
.dormina-product-microtrust{grid-template-columns:1fr 1fr;}
.dormina-product-microtrust>div:nth-child(2) strong{font-size:0;}
.dormina-product-microtrust>div:nth-child(2) strong:after{content:'Czas realizacji: 12–14 dni roboczych';font:500 18px/1.1 var(--dp-serif);}
.dormina-product-microtrust>div:nth-child(2) span{font-size:0;}
.dormina-product-microtrust>div:nth-child(2) span:after{content:'Realizacja zamówień w Polsce';font:400 12px/1.45 var(--dp-sans);}
.dormina-product-bundle{width:100%;max-width:none;margin-left:0;margin-right:0;}.dormina-product-bundle__inner{width:100%;max-width:none;}
@media(max-width:1200px) and (min-width:901px){
 :root{--dp-content-max:1180px;}
 .dormina-product-gallery .woocommerce-product-gallery__wrapper{height:clamp(400px,calc(100vh - 220px),600px);}
 .dormina-product-gallery .flex-control-thumbs{height:62px;grid-template-columns:repeat(5,62px)!important;}
 .dormina-product-gallery .flex-control-thumbs li,.dormina-product-gallery .flex-control-thumbs img{width:62px!important;height:62px!important;}
}
@media(max-width:900px){
 .dormina-product-top__inner,.dormina-product-story__grid{width:calc(100% - 2 * var(--dp-pad));}
 .dormina-product-gallery .woocommerce-product-gallery__wrapper{height:auto;}
 .dormina-product-gallery .flex-control-thumbs{height:auto;}
 .dormina-product-cart .woocommerce-variation-add-to-cart,.dormina-product-cart form.cart{display:flex!important;flex-wrap:nowrap;}
}
@media(max-width:520px){
 .dormina-product-cart .quantity{flex:0 0 118px;}
 .dormina-product-cart .single_add_to_cart_button{min-width:0;padding-left:12px!important;padding-right:12px!important;}
}


/* ==========================================================
   v0.5 — MOBILE PRODUCT CARD
   Desktop pozostaje oparty na v0.4.
   ========================================================== */

.dormina-product-mobile-head,
.dormina-product-mobile-faq-title{
    display:none;
}

/* Desktop: three trust cards still fit calmly */
.dormina-product-microtrust{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
}
.dormina-trust-item{
    display:flex;
    gap:12px;
    align-items:flex-start;
    min-width:0;
}
.dormina-trust-icon{
    flex:0 0 26px;
    width:26px;
    height:26px;
    display:grid;
    place-items:center;
    font:400 17px/1 var(--dp-serif);
    color:#6E6256;
}
.dormina-trust-copy{
    display:flex;
    flex-direction:column;
    min-width:0;
}
.dormina-trust-copy strong{
    display:block;
}
.dormina-trust-copy span{
    display:block;
}

/* Remove v0.4 pseudo text replacement because v0.5 uses real copy. */
.dormina-product-microtrust > div:nth-child(2) strong{
    font-size:18px;
}
.dormina-product-microtrust > div:nth-child(2) strong:after,
.dormina-product-microtrust > div:nth-child(2) span:after{
    content:none!important;
}
.dormina-product-microtrust > div:nth-child(2) span{
    font-size:12px;
}

/* ---------------- MOBILE ---------------- */
@media(max-width:767px){

    html,
    body{
        max-width:100%;
    }

    .dormina-product-page,
    .dormina-product-page *{
        box-sizing:border-box;
    }

    /* TOP becomes one deliberate linear flow */
    .dormina-product-top{
        overflow:clip;
    }
    .dormina-product-top__inner{
        display:flex!important;
        flex-direction:column;
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
        gap:0!important;
    }

    .dormina-product-mobile-head{
        display:block;
        order:1;
        padding:20px 18px 14px;
        background:#FAF8F4;
    }

    .dormina-product-mobile-breadcrumb{
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        gap:6px;
        margin-bottom:16px;
        color:#857B71;
        font:500 10px/1.4 var(--dp-sans);
        letter-spacing:.08em;
        text-transform:uppercase;
    }
    .dormina-product-mobile-breadcrumb a{
        color:#857B71!important;
        text-decoration:none!important;
    }

    .dormina-product-mobile-head h1{
        margin:0;
        max-width:330px;
        font:500 clamp(34px,9.5vw,42px)/.99 var(--dp-serif);
        letter-spacing:-.025em;
        color:var(--dp-ink);
    }

    .dormina-product-mobile-price{
        margin-top:13px;
        font:500 25px/1 var(--dp-serif);
        color:var(--dp-ink);
    }

    .dormina-product-mobile-short{
        margin-top:13px;
        max-width:34em;
        color:#655F58;
        font:400 13px/1.55 var(--dp-sans);
    }
    .dormina-product-mobile-short p{
        margin:0;
    }

    /* Gallery directly after title */
    .dormina-product-gallery{
        order:2;
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
        padding:0 18px 22px!important;
        margin:0!important;
    }
    .dormina-product-gallery .woocommerce-product-gallery{
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
    }
    /* FlexSlider musi sam kontrolować szerokość tracka i slajdów.
       Wymuszanie width:100%!important blokowało zdjęcia 2+ na mobile. */
    .dormina-product-gallery .woocommerce-product-gallery__wrapper{
        height:auto!important;
        background:#EEE6DD;
    }
    .dormina-product-gallery .woocommerce-product-gallery__image{
        height:auto!important;
        min-height:0!important;
        aspect-ratio:1/1!important;
        overflow:hidden;
    }
    .dormina-product-gallery .woocommerce-product-gallery__image > a{
        width:100%!important;
        height:100%!important;
    }
    .dormina-product-gallery .woocommerce-product-gallery__image img{
        width:100%!important;
        height:100%!important;
        max-width:100%!important;
        object-fit:cover!important;
    }

    .dormina-product-gallery .flex-control-thumbs{
        width:100%!important;
        max-width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
        gap:7px!important;
        margin:8px 0 0!important;
        padding:0!important;
        height:auto!important;
        overflow:hidden!important;
    }
    .dormina-product-gallery .flex-control-thumbs li,
    .dormina-product-gallery .flex-control-thumbs img{
        width:100%!important;
        min-width:0!important;
        height:auto!important;
        aspect-ratio:1/1!important;
    }

    /* Purchase section is now only variations + CTA + trust */
    .dormina-product-buy{
        order:3;
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
        position:static!important;
        padding:4px 18px 38px!important;
        margin:0!important;
        background:#FAF8F4;
    }

    /* Desktop title/price/description are replaced by mobile head */
    .dormina-product-buy > .dormina-product-eyebrow,
    .dormina-product-buy > h1,
    .dormina-product-buy > .dormina-product-short,
    .dormina-product-buy > .dormina-product-price{
        display:none!important;
    }

    /* Variations: labels return on mobile */
    .dormina-product-cart .variations{
        width:100%!important;
        margin:0!important;
    }
    .dormina-product-cart .variations tr{
        margin:0 0 22px!important;
    }
    .dormina-product-cart .variations th.label{
        display:block!important;
        width:100%!important;
        margin:0 0 10px!important;
        padding:0!important;
        text-align:left!important;
        border:0!important;
    }
    .dormina-product-cart .variations th.label label{
        margin:0!important;
        color:var(--dp-ink);
        font:500 17px/1.1 var(--dp-serif);
        text-transform:none!important;
        letter-spacing:0!important;
    }
    .dormina-product-cart .variations td.value{
        display:block!important;
        width:100%!important;
        padding:0!important;
        margin:0!important;
    }

    /* Size options: clear tactile buttons */
    .dormina-variation-options--size{
        display:grid!important;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:8px!important;
        width:100%;
        margin:0!important;
        padding:0!important;
        border:0!important;
    }
    .dormina-variation-options--size .dormina-variation-option{
        width:100%;
        min-width:0!important;
        min-height:46px!important;
        padding:10px 6px!important;
        border:1px solid #D7CEC4!important;
        background:#fff!important;
        box-shadow:none!important;
        color:#5D554E;
        font:500 11px/1.15 var(--dp-sans);
    }
    .dormina-variation-options--size .dormina-variation-option.is-selected{
        color:#fff!important;
        background:#28251F!important;
        border-color:#28251F!important;
    }

    /* Color options: name under swatch */
    .dormina-variation-options--color{
        display:flex!important;
        flex-wrap:wrap!important;
        gap:14px!important;
        width:100%;
        margin:0!important;
        padding:0!important;
    }
    .dormina-variation-options--color .dormina-variation-option{
        min-width:48px!important;
    }
    .dormina-color-dot{
        width:38px!important;
        height:38px!important;
    }
    .dormina-color-name{
        max-width:64px;
        white-space:normal!important;
        text-align:center;
        font-size:10px!important;
        line-height:1.2;
    }

    .dormina-product-cart .reset_variations{
        display:inline-block;
        margin-top:9px!important;
    }

    /* Variation result must never push viewport */
    .dormina-product-cart,
    .dormina-product-cart form.cart,
    .dormina-product-cart .single_variation_wrap,
    .dormina-product-cart .woocommerce-variation-add-to-cart{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
    }

    .dormina-product-cart form.cart{
        display:block!important;
    }

    /* Quantity + CTA: safe grid = no sideways page scroll */
    .dormina-product-cart .woocommerce-variation-add-to-cart,
    .dormina-product-cart form.cart:not(.variations_form){
        display:grid!important;
        grid-template-columns:108px minmax(0,1fr)!important;
        align-items:stretch!important;
        gap:9px!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin-top:6px!important;
    }

    .dormina-product-cart .quantity{
        width:108px!important;
        min-width:0!important;
        max-width:108px!important;
        flex:none!important;
        height:52px!important;
        margin:0!important;
        display:grid!important;
        grid-template-columns:34px 40px 34px!important;
        align-items:stretch!important;
        border:1px solid #D3CAC0!important;
        background:#fff!important;
        overflow:hidden!important;
    }

    .dormina-product-cart .quantity .qty{
        width:40px!important;
        min-width:0!important;
        max-width:40px!important;
        height:50px!important;
        min-height:50px!important;
        padding:0!important;
        border:0!important;
        font-size:13px!important;
    }

    .dormina-qty__btn{
        width:34px!important;
        min-width:0!important;
        max-width:34px!important;
        height:50px!important;
        padding:0!important;
        font-size:18px!important;
    }

    .dormina-product-cart .single_add_to_cart_button{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        min-height:52px!important;
        height:52px!important;
        margin:0!important;
        padding:10px 8px!important;
        white-space:normal!important;
        font-size:11px!important;
        letter-spacing:.02em!important;
    }

    /* Trust becomes a vertical premium information stack */
    .dormina-product-microtrust{
        display:grid!important;
        grid-template-columns:1fr!important;
        width:100%;
        gap:0!important;
        margin:26px 0 0!important;
        padding:0!important;
        border-top:1px solid var(--dp-line)!important;
    }
    .dormina-trust-item{
        display:grid!important;
        grid-template-columns:32px minmax(0,1fr);
        gap:12px!important;
        align-items:start;
        padding:17px 0!important;
        border-bottom:1px solid var(--dp-line);
    }
    .dormina-trust-icon{
        width:30px!important;
        height:30px!important;
        font-size:18px!important;
    }
    .dormina-trust-copy strong{
        margin:0 0 3px!important;
        font:500 16px/1.16 var(--dp-serif)!important;
    }
    .dormina-trust-copy span{
        font:400 11px/1.45 var(--dp-sans)!important;
        color:#766E66!important;
    }

    /* Story: editorial, compact, one column */
    .dormina-product-story{
        padding:0!important;
        background:#F5F0E9;
        overflow:clip;
    }
    .dormina-product-story__grid{
        display:flex!important;
        flex-direction:column!important;
        width:100%!important;
        max-width:none!important;
        margin:0!important;
    }
    .dormina-product-story__copy{
        order:1;
        padding:44px 18px 34px!important;
    }
    .dormina-product-story h2{
        margin:0 0 14px!important;
        max-width:330px;
        font-size:38px!important;
        line-height:.98!important;
    }
    .dormina-product-story__copy > p{
        font-size:13px!important;
        line-height:1.6!important;
    }
    .dormina-product-benefits{
        grid-template-columns:1fr 1fr!important;
        margin-top:24px!important;
    }
    .dormina-product-benefits>div{
        min-height:54px;
        padding:12px 8px!important;
        font-size:11px!important;
    }
    .dormina-product-benefits>div:nth-child(odd){
        border-right:1px solid var(--dp-line)!important;
    }
    .dormina-product-story__media{
        order:2;
        width:100%!important;
        min-height:0!important;
        aspect-ratio:4/3;
    }

    /* Details + FAQ */
    .dormina-product-details{
        padding:46px 18px 58px!important;
        background:#FAF8F4;
    }
    .dormina-product-details .dormina-product-shell{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }
    .dormina-product-details > .dormina-product-shell > h2{
        margin:0 0 22px!important;
        font-size:36px!important;
        line-height:1!important;
    }
    .dormina-product-details__grid{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
    }
    .dormina-product-detail-image{
        width:100%!important;
        min-height:0!important;
        aspect-ratio:1/1.08;
    }
    .dormina-product-detail-image span{
        left:8px!important;
        bottom:8px!important;
        font-size:9px!important;
    }

    .dormina-product-accordions{
        grid-column:1/-1!important;
        width:100%;
        margin-top:28px;
    }
    .dormina-product-mobile-faq-title{
        display:block;
        margin:0 0 12px;
    }
    .dormina-product-mobile-faq-title .dormina-product-eyebrow{
        margin-bottom:8px;
    }
    .dormina-product-mobile-faq-title h3{
        margin:0;
        font:500 31px/1.02 var(--dp-serif);
    }
    .dormina-product-accordions details{
        border-top:1px solid #D8CFC5!important;
    }
    .dormina-product-accordions details:last-child{
        border-bottom:1px solid #D8CFC5!important;
    }
    .dormina-product-accordions summary{
        padding:18px 2px!important;
        font-size:17px!important;
        line-height:1.2!important;
    }
    .dormina-product-accordion-content{
        padding:0 2px 20px!important;
        font-size:12px!important;
        line-height:1.6!important;
    }

    /* Full-width set banner, deliberately dramatic */
    .dormina-product-bundle{
        width:100%!important;
        max-width:none!important;
        overflow:clip;
    }
    .dormina-product-bundle__inner{
        display:flex!important;
        flex-direction:column!important;
        width:100%!important;
        min-height:0!important;
    }
    .dormina-product-bundle__media{
        order:1!important;
        width:100%!important;
        min-height:0!important;
        aspect-ratio:4/3;
    }
    .dormina-product-bundle__copy{
        order:2!important;
        padding:42px 18px 46px!important;
    }
    .dormina-product-bundle h2{
        max-width:330px;
        margin-bottom:14px!important;
        font-size:43px!important;
        line-height:.95!important;
    }
    .dormina-product-bundle p{
        margin:0 0 12px;
        font-size:13px!important;
        line-height:1.55!important;
    }
    .dormina-product-button{
        width:auto!important;
        min-height:48px!important;
        margin-top:10px!important;
        padding:14px 20px!important;
        font-size:11px!important;
    }

    /* Related: two-up mobile grid, no page overflow */
    .dormina-product-related{
        padding:50px 18px 64px!important;
        overflow:clip!important;
    }
    .dormina-product-related .dormina-product-shell{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }
    .dormina-product-related__head{
        margin-bottom:20px!important;
    }
    .dormina-product-related__head h2{
        font-size:36px!important;
        line-height:1!important;
    }
    .dormina-related-grid{
        width:100%;
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:22px 10px!important;
    }
    .dormina-related-card{
        min-width:0!important;
    }
    .dormina-related-card__image{
        width:100%;
        aspect-ratio:4/5!important;
    }
    .dormina-related-card h3{
        font-size:19px!important;
        line-height:1.04!important;
    }
    .dormina-related-card p{
        display:none;
    }
    .dormina-related-card__bottom{
        display:block!important;
        padding-top:8px!important;
    }
    .dormina-related-card__price{
        display:block;
        margin-bottom:8px;
        font-size:17px!important;
    }
    .dormina-related-card__link{
        display:inline-block;
        font-size:10px!important;
    }

    /* Last safety net: children may shrink, but do not hide layout bugs with body overflow-x:hidden. */
    .dormina-product-top__inner > *,
    .dormina-product-cart *,
    .dormina-product-details__grid > *,
    .dormina-related-grid > *{
        min-width:0;
    }
}

@media(max-width:380px){
    .dormina-product-mobile-head,
    .dormina-product-gallery,
    .dormina-product-buy,
    .dormina-product-details,
    .dormina-product-related{
        padding-left:15px!important;
        padding-right:15px!important;
    }

    .dormina-product-cart .woocommerce-variation-add-to-cart,
    .dormina-product-cart form.cart:not(.variations_form){
        grid-template-columns:102px minmax(0,1fr)!important;
        gap:7px!important;
    }

    .dormina-product-cart .quantity{
        width:102px!important;
        max-width:102px!important;
        grid-template-columns:31px 40px 31px!important;
    }
    .dormina-qty__btn{
        width:31px!important;
        max-width:31px!important;
    }
    .dormina-product-cart .single_add_to_cart_button{
        font-size:10px!important;
    }
    .dormina-variation-options--size{
        gap:6px!important;
    }
}


/* ==========================================================
   v0.6 — smaller product title + mobile price below gallery
   + related products use shared Dormina Core card
   ========================================================== */

.dormina-product-mobile-after-gallery{
    display:none;
}

/* Product title: calmer on desktop as well */
@media(min-width:768px){
    .dormina-product-buy h1{
        max-width:560px!important;
        font-size:clamp(38px,2.55vw,48px)!important;
        line-height:1.02!important;
        letter-spacing:-.018em!important;
    }
}

/* Shared related card grid */
.dormina-related-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:20px!important;
    align-items:start!important;
}

.dormina-related-grid > .dormina-product-card{
    min-width:0;
}

@media(max-width:767px){
    .dormina-product-mobile-head{
        padding-bottom:12px!important;
    }

    .dormina-product-mobile-head h1{
        max-width:340px!important;
        font-size:clamp(27px,7.7vw,32px)!important;
        line-height:1.04!important;
        letter-spacing:-.018em!important;
    }

    /* price is no longer above the gallery */
    .dormina-product-mobile-after-gallery{
        display:block;
        order:3;
        width:100%;
        padding:0 18px 16px;
        background:#FAF8F4;
    }

    .dormina-product-mobile-after-gallery .dormina-product-mobile-price{
        margin:0!important;
        padding-top:0;
        font:550 21px/1.15 var(--dp-sans)!important;
        color:var(--dp-ink);
    }

    .dormina-product-buy{
        order:4!important;
        padding-top:0!important;
    }

    .dormina-related-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:24px 10px!important;
    }

    /* Old related-card rules no longer apply to the shared card. */
    .dormina-product-related__head h2{
        font-size:32px!important;
    }
}

@media(max-width:380px){
    .dormina-product-mobile-after-gallery{
        padding-left:15px!important;
        padding-right:15px!important;
    }
}


/* ==========================================================
   v0.7 — dostawa + bezpieczne płatności pod CTA
   ========================================================== */

.dormina-product-microtrust{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    margin-top:22px!important;
    padding-top:0!important;
    border-top:1px solid var(--dp-line);
}

.dormina-product-microtrust .dormina-trust-item{
    display:grid!important;
    grid-template-columns:30px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
    padding:15px 2px!important;
    border-bottom:1px solid var(--dp-line)!important;
    background:transparent!important;
}

.dormina-product-microtrust .dormina-trust-icon{
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    margin-top:1px;
    color:#89715C;
    font:400 18px/1 var(--dp-sans);
}

.dormina-product-microtrust .dormina-trust-icon--lock svg{
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.45;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dormina-product-microtrust .dormina-trust-copy{
    min-width:0;
    display:block!important;
}

.dormina-product-microtrust .dormina-trust-copy > strong{
    display:block;
    margin:0 0 3px;
    color:var(--dp-ink);
    font:600 12.5px/1.35 var(--dp-sans)!important;
    letter-spacing:.005em;
}

.dormina-product-microtrust .dormina-trust-copy > span:not(.dormina-payment-badges){
    display:block;
    color:var(--dp-muted);
    font:400 11px/1.5 var(--dp-sans)!important;
}

.dormina-payment-badges{
    display:flex!important;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
    margin-top:10px;
}

.dormina-payment-badge{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    gap:5px;
    min-height:27px;
    padding:5px 9px;
    border:1px solid rgba(40,37,31,.18);
    background:#fff;
    color:#28251F!important;
    border-radius:3px;
    white-space:nowrap;
    font:650 10px/1 var(--dp-sans)!important;
    letter-spacing:.015em;
}

.dormina-payment-badge--blik{
    position:relative;
    padding-right:18px;
    font-weight:750!important;
    letter-spacing:.025em!important;
}

.dormina-blik-dot{
    position:absolute;
    top:5px;
    right:7px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#E6322B;
}

.dormina-payment-badge--paynow{
    gap:7px;
}

.dormina-paynow-word{
    font-weight:750!important;
    letter-spacing:-.025em;
}

.dormina-payment-badge--paynow small{
    padding-left:7px;
    border-left:1px solid rgba(40,37,31,.16);
    color:#55504A;
    font:600 8.5px/1 var(--dp-sans)!important;
}

.dormina-payment-badge--transfer{
    font-weight:550!important;
    text-transform:none;
}

@media(max-width:767px){
    .dormina-product-microtrust{
        margin-top:18px!important;
    }

    .dormina-product-microtrust .dormina-trust-item{
        grid-template-columns:27px minmax(0,1fr)!important;
        gap:10px!important;
        padding:13px 0!important;
    }

    .dormina-product-microtrust .dormina-trust-icon{
        width:25px;
        height:25px;
        font-size:16px;
    }

    .dormina-product-microtrust .dormina-trust-copy > strong{
        font-size:11.5px!important;
    }

    .dormina-product-microtrust .dormina-trust-copy > span:not(.dormina-payment-badges){
        font-size:10.5px!important;
    }

    .dormina-payment-badges{
        gap:6px;
        margin-top:9px;
    }

    .dormina-payment-badge{
        min-height:25px;
        padding:5px 8px;
        font-size:9px!important;
    }

    .dormina-payment-badge--blik{
        padding-right:17px;
    }

    .dormina-payment-badge--paynow small{
        font-size:8px!important;
    }
}


/* ==========================================================
   v1.0 — potwierdzenie dodania do koszyka
   ========================================================== */

.dormina-product-add-feedback{
    margin-top:12px;
}

.dormina-product-add-feedback:empty{
    display:none;
}

.dormina-product-add-feedback .woocommerce-notices-wrapper{
    margin:0!important;
}

.dormina-product-add-feedback .woocommerce-message,
.dormina-product-add-feedback .woocommerce-info,
.dormina-product-add-feedback .woocommerce-error{
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:inherit!important;
}

.dormina-product-add-feedback .woocommerce-message::before,
.dormina-product-add-feedback .woocommerce-info::before,
.dormina-product-add-feedback .woocommerce-error::before{
    display:none!important;
}

.dormina-add-success{
    display:grid;
    grid-template-columns:28px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    width:100%;
    padding:12px 13px;
    border:1px solid rgba(86,104,76,.28);
    background:#F2F4EE;
    color:var(--dp-ink);
}

.dormina-add-success__icon{
    display:grid;
    place-items:center;
    width:25px;
    height:25px;
    border-radius:50%;
    background:#66775C;
    color:#fff;
    font:700 12px/1 var(--dp-sans);
}

.dormina-add-success__copy{
    min-width:0;
}

.dormina-add-success__copy strong{
    display:block;
    margin:0 0 2px;
    color:var(--dp-ink);
    font:600 11px/1.3 var(--dp-sans);
}

.dormina-add-success__copy small{
    display:block;
    color:var(--dp-muted);
    font:400 9.5px/1.4 var(--dp-sans);
}

.dormina-add-success__link{
    white-space:nowrap;
    color:var(--dp-ink)!important;
    font:600 8.5px/1.2 var(--dp-sans);
    letter-spacing:.06em;
    text-transform:uppercase;
    text-decoration:none!important;
    border-bottom:1px solid rgba(40,37,31,.35);
}

@media(max-width:767px){
    .dormina-add-success{
        grid-template-columns:25px minmax(0,1fr);
        gap:9px;
        padding:11px;
    }

    .dormina-add-success__link{
        grid-column:2;
        justify-self:start;
        margin-top:2px;
    }
}


/* ==========================================================
   v1.1 — kompaktowe potwierdzenie zakupu
   ========================================================== */

.dormina-product-add-feedback{
    margin:10px 0 0!important;
}

.dormina-product-add-feedback:empty{
    display:none!important;
}

.dormina-product-add-feedback .dormina-add-success{
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    width:100%!important;
    min-height:38px!important;
    margin:0!important;
    padding:8px 2px!important;
    border:0!important;
    border-top:1px solid rgba(86,104,76,.25)!important;
    border-bottom:1px solid rgba(86,104,76,.18)!important;
    background:transparent!important;
    box-shadow:none!important;
    color:var(--dp-ink)!important;
}

.dormina-product-add-feedback .dormina-add-success__icon{
    flex:0 0 auto!important;
    display:grid!important;
    place-items:center!important;
    width:20px!important;
    height:20px!important;
    border-radius:50%!important;
    background:#66775C!important;
    color:#fff!important;
    font:700 10px/1 var(--dp-sans)!important;
}

.dormina-product-add-feedback .dormina-add-success strong{
    margin:0!important;
    color:var(--dp-ink)!important;
    font:600 10.5px/1.25 var(--dp-sans)!important;
}

.dormina-product-add-feedback .dormina-add-success a{
    margin-left:auto!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    color:var(--dp-ink)!important;
    white-space:nowrap!important;
    text-decoration:none!important;
    font:600 9px/1.2 var(--dp-sans)!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
}

.dormina-product-add-feedback .dormina-add-success a:hover{
    color:var(--dp-accent,#89715C)!important;
}

/* Any remaining Woo error/info notices in this slot are quiet and compact. */
.dormina-product-add-feedback .woocommerce-error,
.dormina-product-add-feedback .woocommerce-info,
.dormina-product-add-feedback .woocommerce-message{
    margin:8px 0 0!important;
    padding:9px 11px!important;
    border:1px solid rgba(137,113,92,.2)!important;
    border-top:1px solid rgba(137,113,92,.2)!important;
    border-radius:0!important;
    background:#F5F0E9!important;
    box-shadow:none!important;
    color:var(--dp-muted)!important;
    font:500 9.5px/1.4 var(--dp-sans)!important;
}

.dormina-product-add-feedback .woocommerce-error::before,
.dormina-product-add-feedback .woocommerce-info::before,
.dormina-product-add-feedback .woocommerce-message::before{
    display:none!important;
}

/* Old v1.0 nested success markup must never affect the new bar. */
.dormina-add-success__copy,
.dormina-add-success__link{
    all:unset;
}

@media(max-width:767px){
    .dormina-product-add-feedback{
        margin-top:8px!important;
    }

    .dormina-product-add-feedback .dormina-add-success{
        min-height:36px!important;
        gap:7px!important;
        padding:7px 0!important;
    }

    .dormina-product-add-feedback .dormina-add-success strong{
        font-size:10px!important;
    }

    .dormina-product-add-feedback .dormina-add-success a{
        font-size:8px!important;
        letter-spacing:.04em!important;
    }
}


/* ==========================================================
   v1.2 — AJAX add-to-cart states
   ========================================================== */

.dormina-product-cart .single_add_to_cart_button{
    transition:
        background .16s ease,
        color .16s ease,
        opacity .16s ease;
}

.dormina-product-cart .single_add_to_cart_button.is-loading{
    cursor:wait!important;
    opacity:.72!important;
}

.dormina-product-cart .single_add_to_cart_button.is-added{
    background:#66775C!important;
    border-color:#66775C!important;
    color:#fff!important;
}

.dormina-product-add-feedback .dormina-add-ajax-error{
    width:100%;
    margin:0;
    padding:9px 11px;
    border:1px solid rgba(145,77,66,.24);
    background:#F8F1EF;
    color:#6B4C46;
    font:500 9.5px/1.4 var(--dp-sans);
}


/* ==========================================================
   v1.3 — remove duplicated native WooCommerce "View cart"
   ========================================================== */

.dormina-product-cart > .added_to_cart.wc-forward,
.dormina-product-cart form.cart + .added_to_cart.wc-forward,
.dormina-product-cart .added_to_cart.wc-forward{
    display:none!important;
}


/* ==========================================================
   v1.5 — isolated Dormina add-to-cart button
   ========================================================== */

.dormina-product-cart .dormina-native-add-button{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    padding:0!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
    pointer-events:none!important;
    opacity:0!important;
}

.dormina-product-cart .dormina-ajax-add-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:1 1 auto!important;
    min-height:52px!important;
    margin:0!important;
    padding:13px 20px!important;
    border:1px solid #987E67!important;
    border-radius:0!important;
    background:#987E67!important;
    color:#111!important;
    box-shadow:none!important;
    font-family:var(--dp-sans)!important;
    font-size:12px!important;
    font-weight:500!important;
    line-height:1.2!important;
    letter-spacing:.035em!important;
    text-transform:uppercase!important;
    cursor:pointer!important;
}

.dormina-product-cart .dormina-ajax-add-button:hover:not(:disabled){
    background:#28251F!important;
    border-color:#28251F!important;
    color:#fff!important;
}

.dormina-product-cart .dormina-ajax-add-button:disabled,
.dormina-product-cart .dormina-ajax-add-button.disabled{
    cursor:not-allowed!important;
    opacity:.45!important;
}

.dormina-product-cart .dormina-ajax-add-button.is-loading{
    cursor:wait!important;
    opacity:.72!important;
}

.dormina-product-cart .dormina-ajax-add-button.is-added{
    background:#66775C!important;
    border-color:#66775C!important;
    color:#fff!important;
    opacity:1!important;
}

@media(max-width:767px){
    .dormina-product-cart .dormina-ajax-add-button{
        min-height:48px!important;
        padding:12px 14px!important;
        font-size:11px!important;
    }
}


/* ==========================================================
   v1.8 — calmer product title + cleaner price typography
   ========================================================== */

@media(min-width:768px){
    .dormina-product-buy h1{
        max-width:620px!important;
        margin-bottom:20px!important;
        font-size:clamp(34px,2.25vw,42px)!important;
        line-height:1.04!important;
        letter-spacing:-.014em!important;
        font-weight:500!important;
    }

    .dormina-product-buy > .dormina-product-price{
        margin:20px 0 22px!important;
        padding-bottom:18px!important;
        color:var(--dp-ink)!important;
        font-family:var(--dp-sans)!important;
        font-size:24px!important;
        font-weight:500!important;
        line-height:1.2!important;
        letter-spacing:-.012em!important;
        font-variant-numeric:tabular-nums;
    }

    .dormina-product-buy > .dormina-product-price .amount,
    .dormina-product-buy > .dormina-product-price .woocommerce-Price-amount,
    .dormina-product-buy > .dormina-product-price .woocommerce-Price-currencySymbol{
        font-family:inherit!important;
        font-size:inherit!important;
        font-weight:inherit!important;
        line-height:inherit!important;
        letter-spacing:inherit!important;
    }
}

/* Keep mobile price clean and consistent too. */
@media(max-width:767px){
    .dormina-product-mobile-after-gallery .dormina-product-mobile-price,
    .dormina-product-mobile-after-gallery .dormina-product-mobile-price .amount,
    .dormina-product-mobile-after-gallery .dormina-product-mobile-price .woocommerce-Price-amount,
    .dormina-product-mobile-after-gallery .dormina-product-mobile-price .woocommerce-Price-currencySymbol{
        font-family:var(--dp-sans)!important;
        font-weight:500!important;
        letter-spacing:-.01em!important;
    }
}
\n\n/* ==========================================================\n   v1.9 — mobile WooCommerce gallery / FlexSlider fix\n   ========================================================== */\n@media(max-width:767px){\n    .dormina-product-gallery .flex-viewport{\n        width:100%!important;\n        max-width:100%!important;\n        overflow:hidden!important;\n    }\n\n    /* Do not set width on the FlexSlider track or slides here.\n       Their inline widths/transforms are calculated by WooCommerce. */\n    .dormina-product-gallery .woocommerce-product-gallery__wrapper{\n        max-width:none!important;\n    }\n\n    .dormina-product-gallery .woocommerce-product-gallery__image{\n        max-width:none!important;\n        float:left;\n    }\n}\n

/* ==========================================================
   v2.0 — final product heading / price typography
   ========================================================== */

/* Product name: use the same calm sans-serif language as product cards. */
@media(min-width:768px){
    .dormina-product-buy h1{
        max-width:650px!important;
        margin:0 0 20px!important;
        color:var(--dp-ink)!important;
        font-family:var(--dp-sans)!important;
        font-size:clamp(30px,2.05vw,34px)!important;
        font-weight:500!important;
        line-height:1.12!important;
        letter-spacing:-.018em!important;
        text-transform:none!important;
    }

    /* Price just above add-to-cart: a little more visible, still restrained. */
    .dormina-product-buy > .dormina-product-price{
        margin:20px 0 22px!important;
        padding-bottom:18px!important;
        color:var(--dp-ink)!important;
        font-family:var(--dp-sans)!important;
        font-size:28px!important;
        font-weight:500!important;
        line-height:1.15!important;
        letter-spacing:-.018em!important;
        font-variant-numeric:tabular-nums;
    }

    .dormina-product-buy > .dormina-product-price .amount,
    .dormina-product-buy > .dormina-product-price .woocommerce-Price-amount,
    .dormina-product-buy > .dormina-product-price .woocommerce-Price-currencySymbol,
    .dormina-product-buy > .dormina-product-price .dormina-price-from{
        font-family:inherit!important;
        font-size:inherit!important;
        font-weight:inherit!important;
        line-height:inherit!important;
        letter-spacing:inherit!important;
    }
}

/* Woo's own variation price is hidden: Dormina updates the main price instead. */
.dormina-product-cart .woocommerce-variation-price{
    display:none!important;
}

/* Mobile title gets the same Manrope treatment. */
@media(max-width:767px){
    .dormina-product-mobile-head h1{
        max-width:350px!important;
        margin:0!important;
        color:var(--dp-ink)!important;
        font-family:var(--dp-sans)!important;
        font-size:clamp(24px,7vw,28px)!important;
        font-weight:500!important;
        line-height:1.14!important;
        letter-spacing:-.018em!important;
        text-transform:none!important;
    }

    .dormina-product-mobile-price,
    .dormina-product-mobile-price .amount,
    .dormina-product-mobile-price .woocommerce-Price-amount,
    .dormina-product-mobile-price .woocommerce-Price-currencySymbol,
    .dormina-product-mobile-price .dormina-price-from{
        font-family:var(--dp-sans)!important;
        font-weight:500!important;
        letter-spacing:-.012em!important;
    }

    .dormina-product-mobile-price{
        font-size:23px!important;
        line-height:1.15!important;
    }
}

/* "od" should read as part of the price, not as a badge. */
.dormina-price-from{
    text-transform:none!important;
}


/* ==========================================================
   v2.1 — FINAL product title
   One shared title typography on desktop + mobile.
   ========================================================== */

body.single-product .dormina-product-page h1.dormina-product-title{
    color:#28251F!important;
    font-family:"Manrope",Arial,sans-serif!important;
    font-style:normal!important;
    font-weight:500!important;
    letter-spacing:-.018em!important;
    text-transform:none!important;
}

@media(min-width:768px){
    body.single-product .dormina-product-page
    .dormina-product-buy h1.dormina-product-title{
        width:auto!important;
        max-width:620px!important;
        margin:0 0 20px!important;
        font:500 30px/1.15 "Manrope",Arial,sans-serif!important;
        letter-spacing:-.018em!important;
    }
}

@media(max-width:767px){
    body.single-product .dormina-product-page
    .dormina-product-mobile-head h1.dormina-product-title{
        width:auto!important;
        max-width:350px!important;
        margin:0!important;
        font:500 26px/1.15 "Manrope",Arial,sans-serif!important;
        letter-spacing:-.018em!important;
    }
}


/* ==========================================================
   v2.2 — Dormina gallery per color
   ========================================================== */
.dormina-color-gallery{width:100%;min-width:0;}
.dormina-color-gallery__stage{
    position:relative;
    width:100%;
    height:clamp(430px,calc(100vh - 235px),690px);
    min-height:0;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#EEE6DD;
}
.dormina-color-gallery__main{
    width:100%;
    height:100%;
    display:block;
    object-fit:contain;
    background:#EEE6DD;
    opacity:1;
    transition:opacity .14s ease;
}
.dormina-color-gallery__main.is-changing{opacity:.25;}
.dormina-color-gallery__thumbs{
    display:flex;
    gap:10px;
    width:100%;
    margin-top:12px;
    padding:0 0 2px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:thin;
}
.dormina-color-gallery__thumb{
    flex:0 0 72px;
    width:72px;
    height:72px;
    padding:0;
    margin:0;
    border:1px solid transparent;
    border-radius:0;
    background:#EEE6DD;
    overflow:hidden;
    cursor:pointer;
    opacity:.72;
}
.dormina-color-gallery__thumb img{width:100%;height:100%;display:block;object-fit:cover;}
.dormina-color-gallery__thumb.is-active{opacity:1;border-color:#8A7664;}
.dormina-color-gallery__arrow{
    position:absolute;
    top:50%;
    z-index:3;
    width:42px;
    height:42px;
    margin:0;
    padding:0;
    transform:translateY(-50%);
    border:1px solid rgba(40,37,31,.18);
    border-radius:50%;
    background:rgba(250,248,244,.86);
    color:#28251F;
    font:300 30px/1 Arial,sans-serif;
    cursor:pointer;
    opacity:0;
    transition:opacity .18s ease,background .18s ease;
}
.dormina-color-gallery__stage:hover .dormina-color-gallery__arrow{opacity:1;}
.dormina-color-gallery__arrow:hover{background:#FAF8F4;}
.dormina-color-gallery__arrow:disabled{display:none;}
.dormina-color-gallery__arrow--prev{left:16px;}
.dormina-color-gallery__arrow--next{right:16px;}
.dormina-color-gallery--empty{aspect-ratio:1/1;background:#EEE6DD;display:grid;place-items:center;color:#8b8177;font-size:12px;}

@media(max-width:1200px) and (min-width:901px){
    .dormina-color-gallery__stage{height:clamp(400px,calc(100vh - 220px),600px);}
    .dormina-color-gallery__thumb{flex-basis:62px;width:62px;height:62px;}
}
@media(max-width:900px){
    .dormina-color-gallery__stage{height:auto;aspect-ratio:1/1;}
    .dormina-color-gallery__main{object-fit:cover;}
    .dormina-color-gallery__thumbs{gap:8px;}
    .dormina-color-gallery__thumb{flex-basis:64px;width:64px;height:64px;}
    .dormina-color-gallery__arrow{opacity:1;width:38px;height:38px;font-size:26px;}
}
@media(max-width:767px){
    .dormina-color-gallery__stage{aspect-ratio:1/1;touch-action:pan-y;}
    .dormina-color-gallery__main{object-fit:cover;}
    .dormina-color-gallery__thumbs{gap:7px;margin-top:8px;}
    .dormina-color-gallery__thumb{flex-basis:56px;width:56px;height:56px;}
    .dormina-color-gallery__arrow{width:34px;height:34px;font-size:24px;}
    .dormina-color-gallery__arrow--prev{left:9px;}
    .dormina-color-gallery__arrow--next{right:9px;}
}


/* ==========================================================
   v2.5 — new product architecture: Fabric / Collection / Category
   ========================================================== */
.dormina-product-classification{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    margin:22px 0 4px;
    padding:14px 0;
    border-top:1px solid var(--dp-line);
    border-bottom:1px solid var(--dp-line);
}
.dormina-product-classification__item{
    min-width:0;
    padding:1px 16px;
}
.dormina-product-classification__item:first-child{padding-left:0;}
.dormina-product-classification__item + .dormina-product-classification__item{
    border-left:1px solid var(--dp-line);
}
.dormina-product-classification__label{
    display:block;
    margin-bottom:5px;
    color:#8A8178;
    font:600 9px/1.3 var(--dp-sans);
    letter-spacing:.11em;
    text-transform:uppercase;
}
.dormina-product-classification a,
.dormina-product-classification__value{
    display:inline;
    color:var(--dp-ink)!important;
    font:500 14px/1.35 var(--dp-serif);
    text-decoration:none!important;
}
.dormina-product-classification a:hover{
    color:var(--dp-accent)!important;
}
.dormina-product-classification a span{
    display:inline;
    margin-left:3px;
    transition:transform .18s ease;
}
.dormina-product-classification a:hover span{
    display:inline-block;
    transform:translateX(2px);
}

/* Desktop block belongs to the purchase column; mobile gets its own copy. */
.dormina-product-mobile-head .dormina-product-classification{display:none;}

@media(max-width:767px){
    .dormina-product-mobile-head .dormina-product-classification{
        display:grid;
        grid-template-columns:1fr;
        margin:17px 0 0;
        padding:0;
        border-bottom:0;
    }
    .dormina-product-mobile-head .dormina-product-classification__item{
        display:grid;
        grid-template-columns:82px minmax(0,1fr);
        align-items:baseline;
        gap:8px;
        padding:8px 0;
        border-left:0!important;
        border-bottom:1px solid var(--dp-line);
    }
    .dormina-product-mobile-head .dormina-product-classification__label{
        margin:0;
        font-size:8px;
    }
    .dormina-product-mobile-head .dormina-product-classification a,
    .dormina-product-mobile-head .dormina-product-classification__value{
        font-size:14px;
    }
    .dormina-product-buy > .dormina-product-classification{
        display:none!important;
    }
}
