/* Outer section */
.bsw-testimonials.wp-block-group.alignfull {
    background: #f8f7f4;
    padding-block: 3rem 4.5rem !important;
}

/* Content width 1354px — overrides the 1078px contentSize baked into
   already-inserted copies of the pattern */
.bsw-testimonials.wp-block-group.alignfull > * {
    max-width: 1354px;
}

/* "SEE OUR WEDDING" */
.bsw-testimonials__supertitle {
    font-family: var(--wp--preset--font-family--cormorant, 'Cormorant', serif) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    font-size: 60px !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    color: #8c857b !important;
    line-height: 1.1 !important;
    margin-block: 10px 0 !important;
}

/* "testimonials" — Brittany Signature script */
.bsw-testimonials__title {
    font-family: 'Brittany Signature', cursive !important;
    font-size: 60px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    color: #ba878f !important;
    line-height: 1 !important;
    margin-top: 5px;
}

/* Slider container */
.bsw-testimonials__slider-wrap {
    position: relative;
}

/* Stage — cross-fading photo stack left, static card right */
.bsw-testimonials__slider {
    display: flex;
    align-items: flex-start;
}

/* Quotes slider panning inside the card — override display:block with flex.
   Scoped to the quotes slider only; the photo slider fades and needs
   slick's default block layout */
.bsw-testimonials__quotes .slick-list,
.bsw-testimonials__quotes .slick-track {
    display: flex !important;
}

/* Photo stack — left half, proportional to original 697×449 */
.bsw-testimonials__photos {
    flex: 0 0 51.5%;
    min-width: 0;
}

.bsw-testimonials__photo {
    overflow: hidden;
    line-height: 0;
    position: relative;
    margin: 0;
    padding: 0;
    aspect-ratio: 697 / 449;
}

.bsw-testimonials__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

/* Card — right half, 40px lower, 3% left overlap.
   min-width: 0 is load-bearing: without it the quotes slick track (5× card
   width with clones) inflates the card's automatic minimum width and slick
   re-measures it into runaway growth */
.bsw-testimonials__card {
    flex: 0 0 51.5%;
    min-width: 0;
    margin-left: -3%;
    margin-top: 40px;
    position: relative;
    z-index: 1;
    background: #ba878f;
    padding: 2.75rem 3.5rem 2.5rem;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    aspect-ratio: 697 / 449;
}

/* Quotes slider fills the card; the nav below it stays pinned in place */
.bsw-testimonials__quotes {
    width: 100%;
    min-width: 0;
}

.bsw-testimonials__quote-slide {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    outline: none;
}

/* Couple name */
.bsw-testimonials__couple {
    font-family: var(--wp--preset--font-family--cormorant, 'Cormorant', serif) !important;
    font-style: italic !important;
    font-weight: 400 !important;
    font-size: 36px !important;
    color: #fff !important;
    line-height: 1.3 !important;
    margin-block: 0 !important;
}

/* Decorative rule below name */
.bsw-testimonials__rule {
    width: 43px;
    height: 1.5px;
    background: #d7a3ac;
    margin: 1rem auto;
    flex-shrink: 0;
}

/* Quote text */
.bsw-testimonials__quote {
    font-family: var(--wp--preset--font-family--cardo, 'Cardo', serif) !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
    color: #fff !important;
    margin-block: 0 !important;
    max-width: 472px;
}

/* Nav row — pinned to card bottom. Arrow-to-counter gap measured 62px in Figma */
.bsw-testimonials__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 62px;
    margin-top: auto;
    padding-top: 1.5rem;
}

/* Arrow buttons — 50×8px arrow, 1px stroke, small barbs, drawn as a CSS
   background so already-saved copies of the pattern pick up the design too */
.bsw-testimonials__arrow {
    width: 50px;
    height: 28px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 8' fill='none'%3E%3Cpath d='M50 4H1M1 4L4 1M1 4L4 7' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 50px 8px;
    border: none;
    padding: 0;
    cursor: pointer;
    opacity: 0.9;
    transition: opacity 0.15s ease;
}

.bsw-testimonials__arrow--next {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 8' fill='none'%3E%3Cpath d='M0 4H49M49 4L46 1M49 4L46 7' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Hide the thicker inline SVGs baked into already-saved copies */
.bsw-testimonials__arrow svg {
    display: none;
}

.bsw-testimonials__arrow:hover {
    opacity: 1;
}

.bsw-testimonials__arrow:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.6);
    outline-offset: 4px;
    border-radius: 2px;
}

/* Counter — number-to-slash gap measured 24px in Figma */
.bsw-testimonials__counter {
    display: inline-flex;
    align-items: center;
    gap: 24px;
    font-family: var(--wp--preset--font-family--cardo, 'Cardo', serif);
    font-size: 16px;
    line-height: 1.75;
    color: #fff;
    white-space: nowrap;
}

/* Slash — full-height 18×28 diagonal line in the design, not a text glyph.
   font-size: 0 collapses the &nbsp; padding baked into already-saved copies */
.bsw-testimonials__sep {
    font-size: 0;
    width: 18px;
    height: 28px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 28' fill='none'%3E%3Cline x1='17.75' y1='0.25' x2='0.25' y2='27.75' stroke='%23d7a3ac'/%3E%3C/svg%3E") no-repeat center / contain;
}

@media (max-width: 767px) {
    .bsw-testimonials.wp-block-group.alignfull {
        padding-block: 0 !important;
        background:white !important;
    }

    .bsw-testimonials__supertitle {
        font-size: 50px !important;
        letter-spacing: 0.15em !important;
        line-height: 1.05 !important;
    }

    .bsw-testimonials__title {
        font-size: 56px !important;
        margin-block: 0 4rem !important;
    }

    /* Stack photos on top, card below */
    .bsw-testimonials__slider {
        flex-direction: column;
        align-items: center;
    }

    .bsw-testimonials__photos {
        flex: none;
        width: 100%;
    }

    .bsw-testimonials__photo {
        aspect-ratio: 426 / 275;
    }

    .bsw-testimonials__card {
        flex: none !important;
        width: 90% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        margin-top: -40px !important;
        aspect-ratio: unset !important;
        min-height: 400px;
        padding: 2rem 1.75rem 1.5rem !important;
        box-sizing: border-box;
    }

    .bsw-testimonials__quote {
        max-width: none;
    }
}
