/* =================================================================
   Muslina Theme — sections.css
   Tema editor section type'lari icin stiller (Glamora-standart, ms- prefix).
   - dynamic-section wrapper
   - 19 section type stili
   - product-card stilleri (Muslina boutique)
   ================================================================= */

/* ---------- 0) Dynamic section base ---------- */
.myt-dynamic-section{
    --ms-sec-color: var(--ms-text);
    --ms-sec-fw: 500;
    color: var(--ms-sec-color);
    font-weight: var(--ms-sec-fw);
}
.myt-dynamic-section h1, .myt-dynamic-section h2, .myt-dynamic-section h3, .myt-dynamic-section h4 {
    color: inherit;
}

/* ---------- 1) Marquee ---------- */
.ms-mq{
    overflow: hidden;
    background: var(--ms-bg-cream);
    color: var(--ms-text);
    padding: .85rem 0;
    border-block: 1px solid var(--ms-border);
}
.ms-mq-track{
    display:flex; align-items:center; gap: 3rem;
    white-space: nowrap;
    animation: ms-mq-scroll 24s linear infinite;
    font-size: .85rem; letter-spacing: .15em; text-transform: uppercase;
}
.ms-mq-item{ display:inline-flex; align-items:center; gap:.5rem; }
.ms-mq-sep{ opacity:.4; }
@keyframes ms-mq-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce){
    .ms-mq-track { animation: none; }
}

/* ---------- 2a) Swiper FAILSAFE fallback ----------
   Swiper kutuphanesi bazen body sonunda yuklenir; section icindeki inline
   `new Swiper(...)` cagrisi parse aninda calistigi icin Swiper henuz tanimsiz
   olabiliyor. Init basarisiz olursa swiper-wrapper duz blok olur ve her
   swiper-slide tum genisligi kaplar (tek sutun bug). Asagidaki kurallar
   `swiper-initialized` class'i eklenene kadar yatay flex layout'u garantiler. */
.ms-fc .swiper:not(.swiper-initialized) > .swiper-wrapper{
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    transform: none !important;
    width: 100%;
}
.ms-fc .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide{
    flex: 0 0 calc(50% - 8px);
    max-width: calc(50% - 8px);
    width: auto !important;
    margin: 0 !important;
}
@media (min-width: 576px){
    .ms-fc .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide{
        flex: 0 0 calc(50% - 8px); max-width: calc(50% - 8px);
    }
}
@media (min-width: 768px){
    .ms-fc .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide{
        flex: 0 0 calc(33.333% - 11px); max-width: calc(33.333% - 11px);
    }
}
@media (min-width: 992px){
    .ms-fc .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide{
        flex: 0 0 calc(25% - 12px); max-width: calc(25% - 12px);
    }
}

/* Slideshow / Image banner fallback: tek slide goster */
.ms-slideshow .swiper:not(.swiper-initialized) > .swiper-wrapper,
.ms-ib .swiper:not(.swiper-initialized) > .swiper-wrapper{
    display: block;
    transform: none !important;
}
.ms-slideshow .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide:not(:first-child),
.ms-ib .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide:not(:first-child){
    display: none;
}
.ms-slideshow .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide,
.ms-ib .swiper:not(.swiper-initialized) > .swiper-wrapper > .swiper-slide{
    width: 100% !important;
    transform: none !important;
}

/* ---------- 2) Slideshow (illustrated hero) ---------- */
.ms-slideshow{ position: relative; overflow: hidden; }
.ms-slideshow .swiper{ width: 100%; }
.ms-slide{
    position: relative;
    background-size: cover; background-position: center; background-repeat: no-repeat;
    display: flex; align-items: center;
    justify-content: center;
    box-sizing: border-box;
}
.ms-slide--align-left{ justify-content: flex-start; }
.ms-slide--align-center{ justify-content: center; }
.ms-slide--align-right{ justify-content: flex-end; }
@media (max-width: 767.98px){
    .ms-slide--align-left,
    .ms-slide--align-right{ justify-content: center; }
}
.ms-slide-overlay{
    position: absolute; inset: 0;
    background: rgba(0,0,0,.18);
    pointer-events: none;
}
.ms-slide-overlay--left{
    background: linear-gradient(90deg, rgba(0,0,0,.28) 0%, rgba(0,0,0,0) 55%);
}
.ms-slide-overlay--right{
    background: linear-gradient(270deg, rgba(0,0,0,.28) 0%, rgba(0,0,0,0) 55%);
}
.ms-slide-content{
    position: relative; z-index: 2;
    color: #fff;
    padding: 2rem var(--ms-container-pad);
    width: 100%;
    max-width: 540px;
    text-align: center;
}
.ms-slide--align-left .ms-slide-content{
    text-align: left;
    margin-right: auto;
    margin-left: 0;
}
.ms-slide--align-center .ms-slide-content{
    max-width: 760px;
    margin-inline: auto;
    text-align: center;
}
.ms-slide--align-right .ms-slide-content{
    text-align: right;
    margin-left: auto;
    margin-right: 0;
}
@media (max-width: 767.98px){
    .ms-slide-content{ max-width: 100%; text-align: center; margin-inline: auto; padding: 1.5rem var(--ms-container-pad); }
}
.ms-slide-eyebrow{
    display: inline-block;
    font-size: .72rem; letter-spacing: .3em; text-transform: uppercase;
    margin-bottom: 1rem; opacity: .9;
    font-weight: 500;
}
.ms-slide-title{
    font-family: var(--ms-font-display);
    font-weight: 300;
    font-size: clamp(36px, 5.5vw, 78px);
    line-height: 1.05;
    margin: 0 0 1rem;
    color: inherit;
    text-shadow: 0 2px 24px rgba(0,0,0,.35);
    letter-spacing: .01em;
    text-transform: uppercase;
}
.ms-slide-text{
    font-size: clamp(.78rem, 1.05vw, .92rem);
    max-width: 460px;
    margin: 0 0 1.6rem auto;
    color: inherit;
    opacity: .92;
    text-transform: uppercase;
    letter-spacing: .08em;
    line-height: 1.5;
    text-shadow: 0 2px 12px rgba(0,0,0,.35);
    font-weight: 400;
}
.ms-slide--align-center .ms-slide-text{ margin-inline: auto; }
@media (max-width: 767.98px){
    .ms-slide-text{ margin: 0 auto 1.6rem; }
}
.ms-slide-cta{
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .8rem 1.8rem;
    text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 500;
    border-radius: var(--ms-radius);
    border: 1px solid #fff;
    transition: background var(--ms-tr-fast), color var(--ms-tr-fast), border-color var(--ms-tr-fast);
}
.ms-slide-cta--solid{
    background: #fff;
    color: var(--ms-text-strong);
    border-color: #fff;
}
.ms-slide-cta--solid:hover{
    background: transparent;
    color: #fff;
    border-color: #fff;
}
.ms-slide-cta--ghost{
    background: transparent;
    color: inherit;
    border-color: currentColor;
}
.ms-slide-cta--ghost:hover{
    background: #fff;
    color: var(--ms-text-strong);
    border-color: #fff;
}
.ms-slide-overlay-link{
    position: absolute; inset: 0; z-index: 1;
}

/* swiper navigation override (scope-li) */
.ms-slideshow .swiper-button-next,
.ms-slideshow .swiper-button-prev{
    color: #fff;
    width: 44px; height: 44px;
    background: rgba(0,0,0,.35);
    border-radius: 50%;
    transition: background var(--ms-tr-fast);
}
.ms-slideshow .swiper-button-next:hover,
.ms-slideshow .swiper-button-prev:hover{ background: var(--ms-primary); }
.ms-slideshow .swiper-button-next:after,
.ms-slideshow .swiper-button-prev:after{ font-size: 1rem; font-weight: 700; }
.ms-slideshow .swiper-pagination-bullet{
    background: #fff; opacity: .5;
    width: 8px; height: 8px;
    transition: width var(--ms-tr-fast), opacity var(--ms-tr-fast);
}
.ms-slideshow .swiper-pagination-bullet-active{
    opacity: 1; width: 24px; border-radius: 4px;
}
@media (prefers-reduced-motion: reduce){
    .ms-slideshow .swiper-wrapper { animation: none !important; transition: none !important; }
}

/* ---------- 3) Featured collection ---------- */
.ms-fc{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-fc-head{
    display:flex; align-items:center; justify-content:center; gap: 1rem;
    margin-bottom: 2.5rem;
    flex-wrap: wrap;
}
.ms-fc-title-wrap{ flex: 1; min-width: 0; text-align: center; }

/* Duygukaya tarzi tek satir baslik: "MARKA - BOLUM" - uppercase, regular weight */
.ms-fc-title,
.ms-section-title,
.ms-cl .ms-fc-title{
    font-family: var(--ms-font-body);
    font-size: clamp(20px, 2vw, 26px);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .04em;
    text-align: center;
    color: var(--ms-text-strong);
    margin: 0 0 2.5rem;
    line-height: 1.3;
}

/* Eski eyebrow/divider artik kullanilmiyor - gizle */
.ms-fc-eyebrow,
.ms-fc-divider,
.ms-section-divider{ display: none !important; }

.ms-fc-desc { color: var(--ms-muted); font-size: .9rem; max-width: 600px; margin: -1.5rem auto 2rem; text-align: center; }

.ms-fc-view-all{
    display:inline-flex; align-items:center; gap:.4rem;
    color: var(--ms-text-strong); font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 500;
    border-bottom: 1px solid var(--ms-text-strong); padding-bottom: 2px;
    transition: color var(--ms-tr-fast), border-color var(--ms-tr-fast);
}
.ms-fc-view-all:hover { color: var(--ms-primary); border-bottom-color: var(--ms-primary); }

/* ---------- 4) Featured product ---------- */
.ms-fp{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-fp-grid{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(1.5rem, 4vw, 4rem);
    align-items: center;
}
@media (max-width: 767.98px){ .ms-fp-grid{ grid-template-columns: 1fr; } }
.ms-fp-img{
    width: 100%; aspect-ratio: 4/5; object-fit: cover;
    border-radius: var(--ms-radius-card);
}
.ms-fp-eyebrow{ font-size:.7rem; letter-spacing:.3em; text-transform:uppercase; color: var(--ms-primary); }
.ms-fp-title{ font-family: var(--ms-font-display); font-size: clamp(28px, 3vw, 42px); margin: .5rem 0 .75rem; }
.ms-fp-desc { color: var(--ms-text-soft); margin-bottom: 1rem; }
.ms-fp-price{ font-size: 1.1rem; margin-bottom: 1.25rem; }
.ms-fp-price .old{ text-decoration: line-through; color: var(--ms-muted); margin-right: .5rem; }
.ms-fp-price .new{ color: var(--ms-discount); font-weight: 600; }

/* ---------- 5) Collection list ---------- */
.ms-cl{ padding-block: clamp(2rem, 4vw, 3.5rem); }
.ms-cl-item{
    position: relative;
    aspect-ratio: 4/5;
    overflow: hidden;
    border-radius: var(--ms-radius-card);
    background: var(--ms-bg-cream);
}
.ms-cl-item img{
    width:100%; height:100%; object-fit:cover;
    transition: transform .6s ease;
}
.ms-cl-item:hover img { transform: scale(1.05); }
.ms-cl-label{
    position: absolute; left: 0; right: 0; bottom: 0;
    padding: 1rem;
    background: linear-gradient(to top, rgba(0,0,0,.55), transparent);
    color: #fff;
    font-family: var(--ms-font-display); font-size: 1.4rem; font-weight: 500;
    text-align: center;
    letter-spacing: .02em;
}

/* ---------- 6) Rich text ---------- */
.ms-rt{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-rt-inner{ max-width: 760px; margin: 0 auto; text-align: center; }
.ms-rt-title{
    font-family: var(--ms-font-display);
    font-size: clamp(24px, 2.6vw, 36px); font-weight: 500;
    margin-bottom: 1rem;
}
.ms-rt-body{ color: var(--ms-text-soft); line-height: 1.8; }
.ms-rt-body p { margin-bottom: 1rem; }
.ms-rt-cta{ margin-top: 1.5rem; }

/* ---------- 7) Image with text ---------- */
.ms-iwt{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-iwt-grid{
    display:grid; grid-template-columns: 1fr 1fr;
    gap: clamp(1.5rem, 4vw, 4rem);
    align-items: center;
}
.ms-iwt--image-right .ms-iwt-grid { direction: rtl; }
.ms-iwt--image-right .ms-iwt-text { direction: ltr; }
.ms-iwt--image-right .ms-iwt-img-wrap { direction: ltr; }
@media (max-width: 767.98px){ .ms-iwt-grid{ grid-template-columns: 1fr; direction: ltr; } }

.ms-iwt-img-wrap{ overflow: hidden; border-radius: var(--ms-radius-card); }
.ms-iwt-img{ width: 100%; aspect-ratio: 1/1; object-fit: cover; transition: transform .6s ease; }
.ms-iwt-img-wrap:hover .ms-iwt-img { transform: scale(1.04); }
.ms-iwt-eyebrow{ font-size:.7rem; letter-spacing:.3em; text-transform:uppercase; color: var(--ms-primary); }
.ms-iwt-title{ font-family: var(--ms-font-display); font-size: clamp(24px, 2.6vw, 36px); margin: .5rem 0 .75rem; }
.ms-iwt-body{ color: var(--ms-text-soft); }

/* ---------- 8) Image banner ---------- */
.ms-ib{ padding-block: 0; }
.ms-ib-slide{
    position: relative;
    aspect-ratio: 21/9;
    background-size: cover; background-position: center;
    display:flex; align-items: center;
    color: #fff;
}
@media (max-width: 767.98px){ .ms-ib-slide{ aspect-ratio: 4/5; } }
.ms-ib-overlay{ position: absolute; inset: 0; pointer-events: none; }
.ms-ib-content{
    position: relative; z-index: 2;
    text-align: center;
    width: 100%;
    padding: 1rem var(--ms-container-pad);
}
.ms-ib-title{ font-family: var(--ms-font-display); font-size: clamp(28px, 4vw, 56px); margin-bottom: .5rem; color: inherit; }
.ms-ib-subtitle{ font-size: clamp(.9rem, 1.4vw, 1.1rem); margin-bottom: 1.4rem; opacity: .95; }
.ms-ib-btn{
    display:inline-flex; align-items:center; gap:.5rem;
    padding: .85rem 1.6rem;
    background: #fff; color: var(--ms-text);
    text-transform: uppercase; letter-spacing: .14em; font-size: .8rem; font-weight: 600;
    border-radius: var(--ms-radius);
    transition: background var(--ms-tr-fast);
}
.ms-ib-btn:hover{ background: var(--ms-primary); color: #fff; }

/* ---------- 9) Collage ---------- */
.ms-collage{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-collage-grid{ display:grid; gap: 1rem; }
.ms-collage-item{
    position: relative; overflow: hidden;
    aspect-ratio: 1/1; border-radius: var(--ms-radius-card);
    background: var(--ms-bg-cream);
}
.ms-collage-item img{ width:100%; height:100%; object-fit:cover; transition: transform .6s ease; }
.ms-collage-item:hover img{ transform: scale(1.06); }
.ms-collage-label{
    position: absolute; left:0; right:0; bottom:0; padding: 1rem;
    background: linear-gradient(to top, rgba(0,0,0,.55), transparent);
    color: #fff; font-family: var(--ms-font-display); font-size: 1.2rem;
}

/* ---------- 10) Multicolumn / güven bandı (ikon daire + metin altta) ---------- */
.ms-mc{ padding-block: clamp(2rem, 4vw, 3.25rem); }
.ms-mc-title{ text-align: center; font-family: var(--ms-font-display); font-size: clamp(24px, 2.6vw, 36px); margin-bottom: 2rem; }
.ms-mc-col{ text-align: center; padding: .35rem; }
.ms-mc-card{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:.55rem;
    max-width:220px;
    margin-inline:auto;
}
.ms-mc-col--icon .ms-mc-card{
    width:100%;
    aspect-ratio:auto;
    padding:0;
    border-radius:0;
    background:transparent;
    color:inherit;
    box-shadow:none;
}
.ms-mc-icon{
    display:inline-flex; align-items:center; justify-content:center;
    width:auto; height:auto;
    border:0;
    border-radius:0;
    background:transparent;
    color:inherit;
    font-size:clamp(1.6rem, 2.4vw, 2.2rem);
    margin:0;
    box-shadow:none;
    line-height:1;
}
.ms-mc-col--icon .ms-mc-icon{
    width:5.25rem;
    height:5.25rem;
    border-radius:50%;
    background:var(--ms-primary);
    color:#fff;
    font-size:1.75rem;
    box-shadow:0 0 0 3px #fff, 0 0 0 5px rgba(254,175,160,.45);
}
.ms-mc-col-img{ width: 96px; height: 96px; object-fit: cover; border-radius: 50%; margin: 0 auto .75rem; box-shadow: var(--ms-shadow-card); }
.ms-mc-col-title{
    font-family: var(--ms-font-display);
    font-size: 1.05rem;
    font-weight:800;
    margin:0;
    color: var(--ms-text-strong);
    line-height:1.2;
}
.ms-mc-col--icon .ms-mc-col-title{
    color: var(--ms-text-strong);
    font-size:clamp(.95rem, 1.15vw, 1.1rem);
    text-transform:none;
    letter-spacing:0;
    font-weight:700;
}
.ms-mc-col-text{ color: var(--ms-text-soft); font-size: .88rem; line-height:1.4; }
.ms-mc-col--icon .ms-mc-col-text{
    color: var(--ms-text-soft);
    font-size:clamp(.78rem, .9vw, .88rem);
    font-weight:500;
    line-height:1.4;
    max-width:11.5rem;
}
.ms-mc-col--icon .ms-mc-col-text p{ margin:0; }

/* ---------- 11) Collapsible content (FAQ) ---------- */
.ms-cc{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-cc-inner{ max-width: 780px; margin: 0 auto; }
.ms-cc-title{ text-align: center; font-family: var(--ms-font-display); font-size: clamp(24px, 2.6vw, 36px); margin-bottom: 1.75rem; }
.ms-cc .accordion-button{
    background: var(--ms-bg-soft);
    color: var(--ms-text);
    font-weight: 500;
    border-radius: var(--ms-radius);
    padding: 1rem 1.25rem;
}
.ms-cc .accordion-button:not(.collapsed){
    background: var(--ms-bg-cream);
    color: var(--ms-text);
    box-shadow: none;
}
.ms-cc .accordion-button:focus { box-shadow: none; border-color: var(--ms-primary); }
.ms-cc .accordion-item{
    border: 1px solid var(--ms-border);
    margin-bottom: .5rem;
    border-radius: var(--ms-radius);
    overflow: hidden;
}
.ms-cc .accordion-body{ background: var(--ms-bg); color: var(--ms-text-soft); }

/* ---------- 12) Email signup ---------- */
.ms-es{
    padding-block: clamp(2.5rem, 5vw, 4.5rem);
    background: var(--ms-bg-soft);
    text-align: center;
}
.ms-es-inner{ max-width: 640px; margin: 0 auto; }
.ms-es-title{ font-family: var(--ms-font-display); font-size: clamp(24px, 2.6vw, 36px); margin-bottom: .5rem; }
.ms-es-text{ color: var(--ms-muted); margin-bottom: 1.5rem; font-size: .9rem; }
.ms-es-form{
    display:flex; align-items:center;
    background: var(--ms-bg);
    border: 1px solid var(--ms-border);
    border-radius: var(--ms-radius-pill);
    padding: 4px 4px 4px 18px;
    max-width: 480px; margin: 0 auto;
}
.ms-es-input{ flex:1; background:transparent; border:0; outline:0; height:44px; font-size:.9rem; }
.ms-es-btn{
    height: 40px; padding: 0 1.5rem;
    background: var(--ms-text); color: var(--ms-bg);
    border: 0; border-radius: var(--ms-radius-pill);
    font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 600;
    transition: background var(--ms-tr-fast);
}
.ms-es-btn:hover{ background: var(--ms-primary-dark); }
.ms-es-msg{ font-size: .85rem; margin-top: .75rem; min-height: 1.2em; }
.ms-es-gdpr{ font-size: .75rem; color: var(--ms-muted); margin-top: 1rem; }

/* ---------- 13) Video ---------- */
.ms-vid{ padding-block: clamp(2rem, 4vw, 3.5rem); }
.ms-vid-title{ text-align:center; font-family: var(--ms-font-display); font-size: clamp(24px, 2.6vw, 36px); margin-bottom: 1.25rem; }
.ms-vid-frame{
    position: relative;
    aspect-ratio: 16/9;
    overflow: hidden; border-radius: var(--ms-radius-card);
    background: #000;
}
.ms-vid-frame iframe,
.ms-vid-frame video{
    position:absolute; inset:0; width:100%; height:100%; border:0;
}

/* ---------- 14) Blog posts ---------- */
.ms-bp{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-bp-title{ text-align:center; font-family: var(--ms-font-display); font-size: clamp(24px, 2.6vw, 36px); margin-bottom: 2rem; }
.ms-bp-card{
    background: var(--ms-bg);
    border: 1px solid var(--ms-border);
    border-radius: var(--ms-radius-card);
    overflow: hidden;
    transition: box-shadow var(--ms-tr), transform var(--ms-tr-fast);
}
.ms-bp-card:hover{ box-shadow: var(--ms-shadow-hover); transform: translateY(-2px); }
.ms-bp-img{ width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.ms-bp-body{ padding: 1.25rem; }
.ms-bp-meta{ font-size: .75rem; color: var(--ms-muted); letter-spacing: .1em; text-transform: uppercase; margin-bottom: .5rem; }
.ms-bp-h{ font-family: var(--ms-font-display); font-size: 1.25rem; margin: 0 0 .5rem; }
.ms-bp-excerpt{ font-size: .85rem; color: var(--ms-text-soft); }

/* ---------- 15) Custom HTML ---------- */
.ms-html{ padding-block: 1rem; }

/* ---------- 16) Page content (CMS) ---------- */
.ms-pc{ padding-block: clamp(2rem, 4vw, 3.5rem); }
.ms-pc-title{ font-family: var(--ms-font-display); font-size: clamp(28px, 3vw, 42px); margin-bottom: 1.25rem; }
.ms-pc-body{ color: var(--ms-text-soft); line-height: 1.8; }
.ms-pc-body img{ border-radius: var(--ms-radius-card); }

/* ---------- 17) Contact form ---------- */
.ms-cf{ padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.ms-cf-inner{ max-width: 720px; margin: 0 auto; }
.ms-cf-title{ font-family: var(--ms-font-display); font-size: clamp(24px, 2.6vw, 36px); margin-bottom: .5rem; text-align: center; }
.ms-cf-desc{ color: var(--ms-muted); margin-bottom: 2rem; text-align: center; font-size: .9rem; }
.ms-cf-form .form-control,
.ms-cf-form .form-select{
    border: 1px solid var(--ms-border);
    background: var(--ms-bg-soft);
    border-radius: var(--ms-radius);
    padding: .85rem 1rem;
    font-size: .9rem;
    color: var(--ms-text);
}
.ms-cf-form .form-control:focus{
    border-color: var(--ms-primary);
    background: var(--ms-bg);
    box-shadow: none;
}

/* ---------- 18) Campaign cart bundle (PDP scope) ---------- */
.ms-cb{
    padding-block: 1.75rem;
    background: var(--ms-bg-soft);
    border-radius: var(--ms-radius-card);
}
.ms-cb-heading{
    font-family: var(--ms-font-display);
    font-weight: 500;
    font-size: clamp(20px, 2.2vw, 30px);
    color: var(--ms-text);
    margin: 0 0 .35rem;
    text-align: left;
}
.ms-cb-meta{
    font-size: .8rem; color: var(--ms-muted);
    margin: 0 0 1.5rem;
    letter-spacing: .04em;
}
.ms-cb-meta strong { color: var(--ms-text); font-weight: 600; }

.ms-cb-grid{
    display: flex; flex-direction: column;
    gap: .75rem;
}

.ms-cb-card{
    display: flex;
    align-items: stretch;
    gap: 1rem;
    padding: 1rem;
    background: var(--ms-bg);
    border: 1px solid var(--ms-border);
    border-radius: var(--ms-radius-card);
    transition: border-color var(--ms-tr-fast), box-shadow var(--ms-tr-fast);
}
.ms-cb-card:hover{
    border-color: var(--ms-border-strong);
    box-shadow: var(--ms-shadow-card);
}
.ms-cb-x-card{
    border-color: var(--ms-primary);
    background: var(--ms-bg);
}
.ms-cb-y-row--disabled{
    opacity: .7;
    background: var(--ms-bg-soft);
}

.ms-cb-card-img{
    flex-shrink: 0;
    width: 88px; height: 88px;
    border-radius: var(--ms-radius);
    overflow: hidden;
    background: var(--ms-bg-cream);
}
.ms-cb-card-img img{
    width: 100%; height: 100%;
    object-fit: cover;
    display: block;
}
.ms-cb-card-img-ph{
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: var(--ms-muted);
    font-size: 1.5rem;
}

.ms-cb-card-body{
    flex: 1; min-width: 0;
    display: flex; flex-direction: column;
    gap: .35rem;
}

.ms-cb-card-head{
    display: flex; align-items: flex-start; justify-content: space-between;
    gap: .5rem;
}
.ms-cb-card-title{
    font-size: .9rem; font-weight: 500;
    color: var(--ms-text);
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden;
}

.ms-cb-included-badge{
    flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center;
    width: 22px; height: 22px;
    background: var(--ms-primary);
    color: #fff;
    font-size: .7rem; font-weight: 700;
    border-radius: 50%;
    line-height: 1;
}

.ms-cb-switch .form-check-input{
    width: 2.4em; height: 1.3em;
    margin-top: .15em;
    border-color: var(--ms-border);
    background-color: var(--ms-bg-cream);
}
.ms-cb-switch .form-check-input:checked{
    background-color: var(--ms-primary);
    border-color: var(--ms-primary);
}
.ms-cb-switch .form-check-input:focus{ box-shadow: 0 0 0 .15rem rgba(184,132,104,.25); }

.ms-cb-card-prices{
    display: flex; flex-wrap: wrap; align-items: center;
    gap: .35rem .5rem;
}
.ms-cb-badge-pct{
    display: inline-block;
    padding: 2px 8px;
    background: var(--ms-discount); color: #fff;
    font-size: .65rem; font-weight: 700;
    border-radius: var(--ms-radius);
    letter-spacing: .04em;
    line-height: 1.4;
}
.ms-cb-price-old{
    font-size: .8rem;
    color: var(--ms-muted);
    text-decoration: line-through;
}
.ms-cb-price-new{
    font-size: .95rem; font-weight: 600;
    color: var(--ms-text);
}
.ms-cb-x-card .ms-cb-price-new{ color: var(--ms-primary-dark); }
.ms-cb-price-note{
    font-size: .7rem;
    color: var(--ms-muted);
    margin-left: .25rem;
}
.ms-cb-card-note{
    font-size: .7rem; color: var(--ms-muted);
    letter-spacing: .04em;
}
.ms-cb-opt-link{
    display: inline-block;
    margin-top: .25rem;
    font-size: .8rem;
    color: var(--ms-primary);
    text-decoration: none;
    border-bottom: 1px solid currentColor;
    padding-bottom: 1px;
}
.ms-cb-opt-link:hover{ color: var(--ms-primary-dark); }

/* aside */
.ms-cb-aside{
    background: var(--ms-bg);
    border: 1px solid var(--ms-border);
    border-radius: var(--ms-radius-card);
    padding: 1.25rem;
    height: 100%;
    position: sticky; top: 100px;
}
@media (max-width: 991.98px){
    .ms-cb-aside{ position: static; }
}
.ms-cb-aside-info{
    display: flex; gap: .5rem;
    font-size: .8rem; color: var(--ms-muted);
    margin-bottom: 1.25rem;
    line-height: 1.45;
}
.ms-cb-aside-info i{ flex-shrink: 0; margin-top: 2px; color: var(--ms-primary); }

.ms-cb-aside-totals{ margin-bottom: 1.25rem; }

.ms-cb-sum-line{
    margin-bottom: .85rem;
    padding-bottom: .85rem;
    border-bottom: 1px solid var(--ms-border);
}
.ms-cb-sum-row{
    display: flex; justify-content: space-between; align-items: baseline;
    gap: .5rem;
    font-size: .85rem;
    color: var(--ms-text-soft);
}
.ms-cb-sum-row span:last-child{
    font-weight: 500; color: var(--ms-text);
}
.ms-cb-sum-hint{
    margin: .25rem 0 0;
    font-size: .7rem; color: var(--ms-muted);
    line-height: 1.4;
}
.ms-cb-kazanc{ color: #128653; font-weight: 600 !important; }

.ms-cb-sum-total{
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    padding-top: .5rem;
}
.ms-cb-sum-total-label{
    font-size: .75rem; color: var(--ms-muted);
    text-transform: uppercase; letter-spacing: .14em;
    margin-bottom: .25rem;
}
.ms-cb-total{
    font-family: var(--ms-font-display);
    font-size: clamp(22px, 2.4vw, 28px);
    font-weight: 600;
    color: var(--ms-text);
}

.ms-cb-submit{
    margin-top: .5rem;
    width: 100%;
}
.ms-cb-submit:disabled{ opacity: .5; cursor: not-allowed; }

/* =================================================================
   Product card — compact square storefront card
   ================================================================= */
.ms-pc{
    position: relative;
    background: var(--ms-bg);
}

.ms-pc-img-link{
    display: block;
    text-decoration: none;
}

.ms-pc-img-wrap{
    position: relative;
    overflow: hidden;
    /* Liste / grid: 2:3 — önceki 3:4'e göre biraz daha yüksek vitrin alanı */
    aspect-ratio: 2 / 3;
    background: transparent;
}
.ms-pc-img{
    width: 100%; height: 100%; object-fit: cover;
    transition: transform .6s ease, opacity .25s ease;
    display: block;
}
.ms-pc:hover .ms-pc-img{ transform: scale(1.03); }
.ms-pc-img-ph{
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: var(--ms-muted); font-size: 2rem;
}

.ms-pc-badges{
    position: absolute; top: 12px; left: 12px;
    display: flex; flex-direction: column; gap: 6px;
    z-index: 2;
    align-items: flex-start;
}
.ms-pc-badge{
    display: inline-block;
    padding: 4px 11px;
    background: #ffffff;
    color: var(--ms-text-strong);
    border-radius: var(--ms-radius-pill);
    font-size: .7rem;
    font-weight: 500;
    letter-spacing: .02em;
    line-height: 1.25;
    box-shadow: 0 1px 3px rgba(43,38,34,.06);
    white-space: nowrap;
}
.ms-pc-badge--new{ background: #ffffff; color: var(--ms-text-strong); }
.ms-pc-badge--discount{
    background: var(--ms-primary-bg);
    color: var(--ms-discount);
}
.ms-pc-badge--out{ background: var(--ms-bg-cream); color: var(--ms-text-strong); }

/* ---------- Product card action stack (favori / hizli goruntule / paylas) ----------
   Default state: sadece kalp ikonu, beyaz daire + soft shadow (image 2 gibi)
   Hover state: 3 ikon birden gozukur, hepsi beyaz daire (image 1 gibi) */
.ms-pc-actions{
    position: absolute; top: 12px; right: 12px;
    display: flex; flex-direction: column; gap: 8px;
    z-index: 3;
}
.ms-pc-act{
    width: 36px; height: 36px;
    background: #ffffff;
    border: 0;
    color: var(--ms-text-strong);
    font-size: .95rem;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 50%;
    cursor: pointer;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(43,38,34,.10);
    transition:
        opacity .25s ease,
        transform .25s ease,
        background var(--ms-tr-fast),
        box-shadow var(--ms-tr-fast),
        color var(--ms-tr-fast);
}
.ms-pc-act > i{ line-height: 1; }
.ms-pc-act:focus-visible{
    outline: 2px solid var(--ms-primary);
    outline-offset: 2px;
}

/* Default: sadece favori gozuksun, view ve share gizli ve yukaridan kayar */
.ms-pc-act--view,
.ms-pc-act--share{
    opacity: 0;
    transform: translateY(-8px) scale(.85);
    pointer-events: none;
}

/* Hover: view ve share da gorunur olsun, asagi dogru kayar (stagger) */
.ms-pc:hover .ms-pc-act--view,
.ms-pc:focus-within .ms-pc-act--view,
.ms-pc:hover .ms-pc-act--share,
.ms-pc:focus-within .ms-pc-act--share{
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}
.ms-pc:hover .ms-pc-act--view,
.ms-pc:focus-within .ms-pc-act--view{ transition-delay: .04s; }
.ms-pc:hover .ms-pc-act--share,
.ms-pc:focus-within .ms-pc-act--share{ transition-delay: .09s; }

/* Hover ikonun uzerine gelince: pembe renk + hafif buyume */
.ms-pc-act:hover{
    color: var(--ms-primary);
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(43,38,34,.16);
}
.ms-pc-act.is-active{ color: var(--ms-primary); }
.ms-pc-act.is-active i{ color: var(--ms-primary); }
.ms-pc-act--fav.is-active i::before{ content: "\f415"; }
.ms-pc-act.is-copied{ color: var(--ms-primary); }

/* Touch cihazlar (hover yok): 3 ikon hep gozuksun */
@media (hover: none){
    .ms-pc-act--view,
    .ms-pc-act--share{
        opacity: 1;
        transform: none;
        pointer-events: auto;
    }
}

.ms-pc-body{
    padding: .85rem .25rem 1.5rem;
    text-align: center;
}

.ms-pc-title{
    font-family: var(--ms-font-body);
    font-size: .9rem;
    font-weight: bold;
    color: var(--ms-text-strong);
    margin: 0 0 .5rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.4em;
}
.ms-pc-title a { color: inherit; }
.ms-pc-title a:hover { color: var(--ms-text-strong); text-decoration: none; }

.ms-pc-price{
    font-size: .85rem;
    color: var(--ms-text);
    display: inline-flex; align-items: baseline; gap: .55rem;
    flex-wrap: wrap;
    justify-content: center;
}
.ms-pc-price .ms-pc-old{
    text-decoration: line-through;
    color: var(--ms-muted);
    font-weight: 400;
}
.ms-pc-price .ms-pc-new{
    color: var(--ms-discount);
    font-weight: 500;
}

/* .ms-pc-hover artik kullanilmiyor (template'lerden kaldirildi).
   Hover-only davranis ms-pc-actions ile saglaniyor. */

/* ============================================================
   Home: 2-kolon image banner (kategori gorselleri ile)
   Edge-to-edge, padding container token ile sekmeyi onler.
   ============================================================ */
.ms-home-banners{
    margin: clamp(28px, 4vw, 56px) 0;
}
.ms-home-banners-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    padding: 0 var(--ms-container-pad, 16px);
}
.ms-home-banner{
    position: relative;
    display: block;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    color: #fff;
    background: var(--ms-bg-soft);
    text-decoration: none;
}
.ms-home-banner-img{
    position: absolute; inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform .8s ease;
}
.ms-home-banner:hover .ms-home-banner-img{ transform: scale(1.04); }
.ms-home-banner-overlay{
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.42) 100%);
    pointer-events: none;
}
.ms-home-banner-content{
    position: absolute;
    left: 0; right: 0; bottom: clamp(20px, 3vw, 40px);
    padding: 0 clamp(18px, 3vw, 36px);
    display: flex; flex-direction: column; align-items: flex-start; gap: .35rem;
    color: #fff;
}
.ms-home-banner-eyebrow{
    font-size: .68rem;
    letter-spacing: .22em;
    text-transform: uppercase;
    opacity: .9;
}
.ms-home-banner-title{
    font-family: var(--ms-font-display);
    font-size: clamp(20px, 2.4vw, 32px);
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: .01em;
}
.ms-home-banner-cta{
    display: inline-block;
    margin-top: .35rem;
    padding-bottom: 2px;
    font-size: .76rem;
    letter-spacing: .14em;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(255,255,255,.7);
    transition: border-color .25s ease, transform .25s ease;
}
.ms-home-banner:hover .ms-home-banner-cta{
    border-bottom-color: #fff;
    transform: translateX(4px);
}
@media (max-width: 767.98px){
    .ms-home-banners-grid{ grid-template-columns: 1fr; gap: 4px; }
    .ms-home-banner{ aspect-ratio: 16 / 11; }
    .ms-home-banner-content{ bottom: 18px; padding: 0 18px; }
}

/* ============================================================
   Home: Newsletter teaser (krem zemin, ortalı, sıcak)
   ============================================================ */
.ms-home-nl-teaser{
    background: var(--ms-bg-soft);
    padding: clamp(40px, 5vw, 72px) 0;
    margin-top: clamp(28px, 4vw, 56px);
}
.ms-home-nl-inner{
    max-width: 560px;
    margin: 0 auto;
    text-align: center;
}
.ms-home-nl-eyebrow{
    display: inline-block;
    font-size: .7rem;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--ms-primary);
    margin-bottom: .65rem;
}
.ms-home-nl-title{
    font-family: var(--ms-font-display);
    font-size: clamp(22px, 2.4vw, 30px);
    font-weight: 700;
    line-height: 1.3;
    color: var(--ms-text-strong);
    margin: 0 0 .65rem;
    letter-spacing: .005em;
}
.ms-home-nl-text{
    color: var(--ms-text-soft);
    font-size: .9rem;
    line-height: 1.6;
    margin: 0 0 1.4rem;
}
.ms-home-nl-form{
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid var(--ms-border);
    border-radius: var(--ms-radius-pill);
    padding: 5px 5px 5px 18px;
    overflow: hidden;
    gap: 6px;
}
.ms-home-nl-input{
    flex: 1; min-width: 0;
    background: transparent; border: 0; outline: 0;
    height: 40px;
    font-family: inherit; font-size: .88rem;
    color: var(--ms-text-strong);
}
.ms-home-nl-input::placeholder{ color: var(--ms-muted); }
.ms-home-nl-btn{
    display: inline-flex; align-items: center; justify-content: center;
    height: 38px; padding: 0 1.25rem;
    background: var(--ms-cta); color: #fff;
    border: 0;
    border-radius: var(--ms-radius-pill);
    font-size: .76rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase;
    white-space: nowrap;
    transition: background var(--ms-tr-fast);
}
.ms-home-nl-btn:hover{ background: var(--ms-cta-hover); }
.ms-home-nl-btn i{ font-size: .9rem; }

/* Ürün kartı = article.ms-pc; CMS blok da .ms-pc kullanıyor — kartlara CMS sayfa padding'i binmesin */
article.ms-pc[data-product-id]{
    padding-block: 0;
}

/* ============================================================
   Listing grid: XXL+ ekranlarda 5 col; tam genişlik + sıkı dikey aralık
   ============================================================ */
.ms-listing-page-wrap.container-fluid{
    width:min(100%,1280px);
    max-width:1280px;
    padding:0 0 40px;
}
.ms-listing-breadcrumb{
    min-height:44px;
    margin:0;
    padding:0;
    background:#f7f7f7;
    box-shadow:0 0 0 100vmax #f7f7f7;
    clip-path:inset(0 -100vmax);
}
.ms-listing-toolbar-left .ms-view-modes{
    padding-left:0;
    border-left:0;
}
.ms-listing-page-wrap #myt-category-product-grid{
    margin-inline:0;
}
.ms-listing-page-wrap .ms-pc-body{
    padding:10px 8px 4px;
    text-align:center;
}
.ms-listing-page-wrap .ms-pc-title{
    min-height:2.4em;
    font-size:.86rem;
    font-weight:800;
    line-height:1.2;
    -webkit-line-clamp:2;
    line-clamp:2;
}
.ms-listing-page-wrap .ms-pc-price{
    justify-content:center;
    font-size:1rem;
}
.ms-listing-page-wrap .ms-pc-buy{
    display:flex;
    justify-content:center;
    padding:8px;
}
.ms-listing-page-wrap .ms-pc-cart-btn{
    min-width:145px;
}
#myt-category-product-grid,
#myt-search-results-grid{
    --bs-gutter-y: .75rem;
}
@media (min-width: 768px){
    #myt-category-product-grid,
    #myt-search-results-grid{
        --bs-gutter-y: 1rem;
    }
}
@media (min-width: 1400px){
    #myt-category-product-grid,
    #myt-search-results-grid{
        --bs-gutter-x: 1.25rem;
        --bs-gutter-y: 1.1rem;
    }
    #myt-category-product-grid:not(.row-cols-lg-2):not(.row-cols-lg-3),
    #myt-search-results-grid:not(.row-cols-lg-2):not(.row-cols-lg-3){
        row-gap: 0;
    }
    #myt-category-product-grid.row-cols-lg-4,
    #myt-search-results-grid.row-cols-lg-4{
        --bs-gutter-x: 1.35rem;
    }
}
@media (min-width: 1600px){
    #myt-category-product-grid:not(.row-cols-lg-2):not(.row-cols-lg-3),
    #myt-search-results-grid:not(.row-cols-lg-2):not(.row-cols-lg-3){
        --bs-cols: 5;
    }
    #myt-category-product-grid:not(.row-cols-lg-2):not(.row-cols-lg-3) > .col,
    #myt-search-results-grid:not(.row-cols-lg-2):not(.row-cols-lg-3) > .col{
        flex: 0 0 auto;
        width: 20%;
    }
}

/* =================================================================
   Reference-aligned homepage composition
   ================================================================= */
.myt-section--slideshow,
.myt-section--multicolumn,
.myt-section--collage,
.myt-section--featured_collection,
.myt-section--collection_list{
    width:min(100%,1280px);
    margin-inline:auto;
}
.myt-section--slideshow .ms-slide{
    height:auto !important;
    aspect-ratio:1280/545 !important;
}
.ms-slideshow .ms-slide-content{
    max-width:430px;
    margin-left:clamp(28px,14vw,220px);
    margin-right:auto;
    text-align:center;
}
.ms-slide-title{
    color:var(--ms-primary) !important;
    font-size:clamp(42px,5vw,72px);
    font-weight:800;
    line-height:.96;
    text-transform:none;
    text-shadow:none;
}
.ms-slide-text{
    font-family:var(--ms-font-display);
    font-size:1rem;
    font-weight:700;
    letter-spacing:0;
    text-transform:none;
    text-shadow:none;
}
.ms-slide-cta{
    min-width:210px;
    justify-content:center;
    padding:13px 30px;
    border-radius:var(--ms-radius);
    font-family:var(--ms-font-display);
    font-size:.85rem;
    font-weight:800;
}
.ms-slide-cta--solid{
    background:var(--ms-primary);
    border-color:var(--ms-primary);
    color:#fff;
    box-shadow:0 3px 0 rgba(143,64,52,.45);
}
.ms-slide-cta--solid:hover{
    background:var(--ms-cta-hover);
    border-color:var(--ms-cta-hover);
    color:#fff;
}

.myt-section--multicolumn .ms-mc{ padding-block:40px 32px; }
.myt-section--multicolumn .ms-mc .container{ max-width:1280px; }
.myt-section--multicolumn .ms-mc-row{
    --bs-gutter-x:20px;
    --bs-gutter-y:20px;
    justify-content:center;
}
.myt-section--multicolumn .ms-mc-col--icon .ms-mc-card{
    max-width:200px;
}

.ms-collage{ padding-block:0; }
.ms-collage .container,.ms-collage .container-fluid{ padding-inline:0; }
.ms-collage-grid{
    grid-template-columns:repeat(6,1fr) !important;
    grid-template-rows:repeat(2,min(24vw,320px));
    grid-auto-rows:min(24vw,320px);
    gap:0;
}
.ms-collage-item{
    height:100%;
    min-height:0;
    aspect-ratio:auto !important;
    border-radius:0;
    border:5px solid #fff;
}
.ms-collage-item:nth-child(1){ grid-column:1/3; grid-row:1/3; }
.ms-collage-item:nth-child(2){ grid-column:3/5; grid-row:1; }
.ms-collage-item:nth-child(3){ grid-column:5/7; grid-row:1; }
.ms-collage-item:nth-child(4){ grid-column:3/4; grid-row:2; }
.ms-collage-item:nth-child(5){ grid-column:4/7; grid-row:2; }
.ms-collage-label{
    padding:18px;
    font-size:clamp(1rem,2vw,1.75rem);
    font-weight:800;
    text-align:center;
}

.ms-iwt{
    background:var(--ms-bg-cream);
    min-height:483px;
    display:flex;
    align-items:center;
}
.ms-iwt .container{ padding-inline:0; }
.ms-iwt-grid{
    grid-template-columns:1fr 2fr;
    gap:0;
    min-height:483px;
}
.ms-iwt--image-right .ms-iwt-grid{ direction:ltr; }
.ms-iwt--image-right .ms-iwt-img-wrap{ grid-column:2; grid-row:1; }
.ms-iwt--image-right .ms-iwt-text{ grid-column:1; grid-row:1; }
.ms-iwt-img-wrap{
    border-radius:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:50px clamp(30px,12vw,200px);
}
.ms-iwt-img{
    width:100%;
    max-height:403px;
    aspect-ratio:1.11/1 !important;
    object-fit:cover;
}
.ms-iwt-text{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center !important;
    padding:50px 34px;
}
.ms-iwt-title{
    color:var(--ms-primary);
    font-size:clamp(42px,6vw,80px);
    font-weight:800;
    line-height:.9;
}
.ms-iwt-body{
    color:var(--ms-muted);
    font-family:var(--ms-font-display);
    font-size:1.1rem;
    font-weight:700;
    line-height:1.45;
}
.ms-iwt .ms-btn{
    min-width:230px;
    justify-content:center;
    background:var(--ms-primary);
    border-color:var(--ms-primary);
    color:var(--ms-on-primary);
    font-family:var(--ms-font-display);
    font-weight:800;
}

.ms-fc{ padding-block:50px 0; }
.ms-fc-layout--promo{
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:0;
    align-items:stretch;
}
.ms-fc-promo{ display:block; min-height:100%; overflow:hidden; }
.ms-fc-promo img{ width:100%; height:100%; object-fit:cover; display:block; }
.ms-fc-products{ min-width:0; }
.ms-fc-layout--promo .ms-fc-products > .row{
    --bs-gutter-x:0;
    --bs-gutter-y:0;
    margin:0;
}
.ms-fc-layout--promo .ms-pc{ padding:5px; }

.ms-pc-img-wrap{
    aspect-ratio:1/1;
    background:var(--ms-bg-soft);
}
.ms-pc-body{
    padding:8px 8px 5px;
    text-align:left;
}
.ms-pc-title{
    min-height:0;
    margin:0 0 4px;
    font-size:.84rem;
    font-weight:400;
    line-height:1.2;
    -webkit-line-clamp:1;
    line-clamp:1;
}
.ms-pc-price{
    justify-content:flex-start;
    font-family:var(--ms-font-display);
    font-size:.92rem;
    font-weight:800;
}
.ms-pc-price .ms-pc-new{ color:var(--ms-text-strong); font-weight:800; }
.ms-pc-badges{ top:5px; left:5px; }
.ms-pc-badge{
    padding:4px 8px;
    border-radius:0;
    background:var(--ms-primary);
    color:var(--ms-on-primary);
    box-shadow:none;
    font-family:var(--ms-font-display);
    font-size:.66rem;
    font-weight:800;
}
.ms-pc-badge--new,.ms-pc-badge--discount{ background:var(--ms-primary); color:var(--ms-on-primary); }
.ms-pc-actions{ top:6px; right:6px; }
.ms-pc-act{ width:30px; height:30px; }
.ms-pc-buy{ padding:0 8px 5px; }
.ms-pc-cart-btn{
    min-height:31px;
    padding:6px 15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    border:0;
    border-radius:var(--ms-radius);
    background:var(--ms-primary);
    color:var(--ms-on-primary);
    font-family:var(--ms-font-display);
    font-size:.72rem;
    font-weight:800;
    text-transform:uppercase;
}
.ms-pc-cart-btn:hover{ background:var(--ms-cta-hover); color:var(--ms-on-primary); }

.ms-rt{ background:#f7f7f7; padding-block:90px; }
.ms-rt-title{
    color:var(--ms-text-soft);
    font-size:clamp(38px,5vw,60px);
    font-weight:800;
}
.ms-rt-body{
    font-family:var(--ms-font-display);
    font-size:1.1rem;
    font-weight:700;
}

@media (max-width:767.98px){
    .myt-section--slideshow .ms-slide{
        aspect-ratio:375/305 !important;
    }
    .ms-slideshow .ms-slide-content{
        max-width:48%;
        margin-left:5%;
        padding:10px 0;
    }
    .ms-slide-title{ font-size:clamp(24px,8vw,34px); }
    .ms-slide-text{ font-size:.58rem; line-height:1.25; margin-bottom:8px; }
    .ms-slide-cta{ min-width:0; padding:7px 15px; font-size:.56rem; }
    .ms-slideshow .swiper-button-next,.ms-slideshow .swiper-button-prev{ display:none; }

    .myt-section--multicolumn .ms-mc{ padding-block:20px 16px; }
    .myt-section--multicolumn .ms-mc-title{ display:none; }
    .myt-section--multicolumn .ms-mc-row{
        --bs-gutter-x:8px;
        --bs-gutter-y:12px;
        flex-wrap:wrap;
    }
    .myt-section--multicolumn .ms-mc-row > .col{
        flex:0 0 50%;
        width:50%;
        max-width:50%;
    }
    .myt-section--multicolumn .ms-mc-col--icon .ms-mc-card{ max-width:160px; }
    .myt-section--multicolumn .ms-mc-col--icon .ms-mc-icon{
        width:3.25rem;
        height:3.25rem;
        font-size:1.15rem;
        box-shadow:0 0 0 2px #fff, 0 0 0 3px rgba(254,175,160,.45);
    }
    .myt-section--multicolumn .ms-mc-col--icon .ms-mc-col-title{ font-size:.82rem; }
    .myt-section--multicolumn .ms-mc-col--icon .ms-mc-col-text{ font-size:.7rem; }

    .ms-collage-grid{
        grid-template-columns:repeat(6,1fr) !important;
        grid-template-rows:repeat(2,145px);
        grid-auto-rows:145px;
    }
    .ms-collage-item{ border-width:3px; }
    .ms-collage-label{ padding:8px; font-size:.7rem; }

    .ms-iwt{ min-height:0; padding-block:50px !important; }
    .ms-iwt-grid,.ms-iwt--image-right .ms-iwt-grid{
        grid-template-columns:1fr;
        min-height:0;
    }
    .ms-iwt--image-right .ms-iwt-img-wrap,
    .ms-iwt--image-right .ms-iwt-text{ grid-column:1; }
    .ms-iwt--image-right .ms-iwt-text{ grid-row:1; }
    .ms-iwt--image-right .ms-iwt-img-wrap{ grid-row:2; }
    .ms-iwt-text{ padding:0 25px 30px; }
    .ms-iwt-title{ font-size:46px; }
    .ms-iwt-body{ font-size:.9rem; }
    .ms-iwt-img-wrap{ padding:0 50px; }
    .ms-iwt-img{ max-height:300px; }

    .ms-fc{ padding-block:10px 0; }
    .ms-fc-layout--promo{ grid-template-columns:1fr; }
    .ms-fc-promo{ aspect-ratio:1/1; }
    .ms-fc-layout--promo .ms-fc-products > .row > .col{ width:50%; }
    .ms-pc{ padding:5px; }
    .ms-pc-title{ font-size:.72rem; }
    .ms-pc-price{ font-size:.8rem; }
    .ms-pc-actions .ms-pc-act--view,
    .ms-pc-actions .ms-pc-act--share{ display:none; }
    .ms-pc-cart-btn{ min-height:25px; padding:5px 10px; font-size:.62rem; }

    .ms-rt{ padding-block:70px; }
    .ms-rt-title{ font-size:38px; }
    .ms-rt-body{ font-size:.9rem; }
}
