/*
 Theme Name:   Nizia Wedding Theme
 Description:  Wedding site theme for Patrizia & Niño, built as a Bootscore child theme with ACF block sections.
 Author:       Nizia
 Template:     bootscore
 Version:      1.0.0
 Requires at least: 5.0
 Tested up to: 6.6
 Requires PHP: 7.4
 License: MIT License
 License URI: https://github.com/bootscore/bootscore-child/blob/main/LICENSE
 Text Domain:  nizia
*/

/*
All style editing is done via /assets/scss/_bootscore_custom.scss
*/

/*************** NIZIA DESIGN TOKENS ***************/
:root {
    --nizia-ink: #2f2a26;
    --nizia-muted: #7a6f66;
    --nizia-cream: #faf7f2;
    --nizia-sand: #efe6da;
    --nizia-gold: #b99664;
    --nizia-line: rgba(47, 42, 38, 0.12);
    --nizia-section-y: clamp(3rem, 6vw, 7rem);

    /* Canonical inner width — every block content wrapper uses these */
    --nizia-inner-max: 1680px;
    --nizia-inner-gutter: 24px;

    /* Display script for headings, names and other romantic accents */
    --nizia-font-script: "Mea Culpa", "Brush Script MT", cursive;

    /* Header metrics — the scroll transition animates between these */
    --nizia-header-h: 88px;
    --nizia-header-h-scrolled: 64px;

    /*
     * How far content must clear the fixed header. Kept separate from
     * --nizia-header-h, which drives the bar's own min-height: writing a
     * measured value back into that would feed into itself. custom.js
     * overwrites this with the real rendered height.
     */
    --nizia-header-offset: var(--nizia-header-h);
}

/*
 * Mea Culpa is a single-weight ornate script. It carries the display voice of
 * the site — headings, the brand, the couple's names — while body copy stays
 * on the readable sans inherited from Bootstrap.
 */
.nizia-script,
h1, .h1,
h2, .h2,
h3, .h3 {
    font-family: var(--nizia-font-script);
    font-weight: 400 !important;
    letter-spacing: normal !important;
}

/* The script has tall ascenders and deep descenders — it needs more leading
   than the sans it replaces, or consecutive lines collide. */
h1, .h1,
h2, .h2,
h3, .h3 {
    line-height: 1.35;
}

/*************** NIZIA INNER CONTAINER ***************/
/*
 * .nizia-inner is the single content wrapper used by every block in /blocks.
 * Bootstrap's own containers are aligned to the same width and gutter so a
 * block sitting next to a core block lines up on the same edge.
 */
.nizia-inner {
    width: 100%;
    max-width: var(--nizia-inner-max);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--nizia-inner-gutter);
    padding-right: var(--nizia-inner-gutter);
}

/* A .row inside .nizia-inner pulls back by its own gutter, so column content
   still lands on the 24px edge. No extra compensation needed. */

/*************** NIZIA HEADER ***************/

.nizia-header--fixed {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
    background: transparent;
    transition: background-color .4s ease, box-shadow .4s ease;
}

/*
 * Balanced three-column grid: half the menu | logo | half the menu.
 * The side columns are equal fractions and pull toward the centre, so the
 * logo sits on the true optical midpoint however long the link labels are.
 */
.nizia-header__bar {
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    column-gap: clamp(1.5rem, 3vw, 3rem);
    min-height: var(--nizia-header-h);
    transition: min-height .4s ease, padding .4s ease, background-color .4s ease;
}

.nizia-header__menu {
    align-items: center;
    min-width: 0;
}

.nizia-header__menu--left {
    grid-column: 1;
    grid-row: 1;
    justify-self: end;
}

.nizia-header__menu--right {
    grid-column: 3;
    grid-row: 1;
    justify-self: start;
}

.nizia-header__bar > .nizia-header__brand {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    margin: 0;
    padding: 0;
    font-family: var(--nizia-font-script);
    font-size: 1.75rem;
    line-height: 1;
}

/*
 * The monogram is black artwork on transparency. Reserving the aspect ratio
 * stops the header from reflowing when the PNG finishes loading.
 */
.nizia-header__brand img {
    max-height: 52px;
    width: auto;
    aspect-ratio: 1011 / 813;
    object-fit: contain;
    transition: max-height .4s ease, filter .4s ease;
}

/*
 * Recolour to white wherever the bar sits on something dark: over the hero,
 * and inside the condensed glass pill. `brightness(0)` flattens the artwork to
 * solid black first, so `invert(1)` lands on pure white while the transparent
 * background stays transparent — one file covers both cases.
 */
.nizia-header--overlay:not(.nizia-header--scrolled) .nizia-header__brand img,
.nizia-header--scrolled .nizia-header__brand img {
    filter: brightness(0) invert(1);
}

/*
 * Actions float clear of the grid so the search and toggler buttons never
 * push the logo off centre.
 */
.nizia-header__bar > .nizia-header__actions {
    position: absolute;
    top: 50%;
    right: 0;
    display: flex;
    align-items: center;
    transform: translateY(-50%);
    transition: right .4s ease;
}

/* The offcanvas carries the full menu for mobile. On desktop Bootstrap
   renders it inline, which would duplicate the split menus — so hide it. */
.nizia-header__bar > .offcanvas {
    grid-column: 1;
    grid-row: 1;
}

@media (min-width: 992px) {
    .nizia-header__bar > .offcanvas {
        display: none;
    }
}


/* ── Linear divider beneath the menu ─────────────────────────────────── */

/*
 * currentColor keeps the line white over the hero and ink-dark on inner
 * pages without a second rule. It fades out at both ends so it reads as a
 * drawn line rather than a hard border.
 */
.nizia-header__bar::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: min(880px, 78%);
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(
        to right,
        transparent 0%,
        currentColor 20%,
        currentColor 80%,
        transparent 100%
    );
    opacity: .45;
    transition: opacity .4s ease;
}

/* Inside the condensed pill a rule would fight the rounded edge */
.nizia-header--scrolled .nizia-header__bar::after {
    opacity: 0;
}

.nizia-header__btn {
    border: 1px solid transparent;
    border-radius: 999px;
    color: inherit;
    background: transparent;
    transition: background-color .25s ease, border-color .25s ease;
}

.nizia-header__btn:hover,
.nizia-header__btn:focus-visible {
    border-color: currentColor;
    background: rgba(255, 255, 255, .14);
}

/* Overlay state — front page, sitting on top of the hero image */
.nizia-header--overlay:not(.nizia-header--scrolled),
.nizia-header--overlay:not(.nizia-header--scrolled) .navbar-nav .nav-link,
.nizia-header--overlay:not(.nizia-header--scrolled) .nizia-header__brand,
.nizia-header--overlay:not(.nizia-header--scrolled) .nizia-header__btn {
    color: #fff;
}

/* Inner pages start on a solid bar so text stays legible */
.nizia-header--fixed:not(.nizia-header--overlay) {
    background: var(--nizia-cream);
    box-shadow: 0 1px 0 var(--nizia-line);
}


/* ── Scrolled state: rounded, transparent, blurred ───────────────────── */

.nizia-header--scrolled {
    background: transparent;
    box-shadow: none;
}

.nizia-header--scrolled .nizia-header__bar {
    min-height: var(--nizia-header-h-scrolled);
    max-width: 1320px;
    margin-top: .75rem;
    padding-left: 2rem;
    padding-right: 2rem;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: rgba(28, 23, 20, .32);
    backdrop-filter: blur(18px) saturate(160%);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    box-shadow: 0 10px 34px rgba(0, 0, 0, .18);
}

/* Keep the actions inside the pill's rounded edge */
.nizia-header--scrolled .nizia-header__bar > .nizia-header__actions {
    right: 2rem;
}

.nizia-header--scrolled,
.nizia-header--scrolled .navbar-nav .nav-link,
.nizia-header--scrolled .nizia-header__brand,
.nizia-header--scrolled .nizia-header__btn {
    color: #fff;
}

.nizia-header--scrolled .nizia-header__brand img {
    max-height: 40px;
}

.nizia-header--scrolled .nizia-header__btn:hover,
.nizia-header--scrolled .nizia-header__btn:focus-visible {
    background: rgba(255, 255, 255, .18);
}

/* Without backdrop-filter a see-through bar over photos is unreadable */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .nizia-header--scrolled .nizia-header__bar {
        background: rgba(28, 23, 20, .93);
    }
}


/* ── Menu inside the header ──────────────────────────────────────────── */

@media (min-width: 992px) {
    .nizia-header .navbar-nav {
        flex-direction: row;
        align-items: center;
        gap: clamp(.25rem, 1vw, 1rem);
        margin: 0;
        padding: 0;
    }

    .nizia-header .navbar-nav .nav-link {
        position: relative;
        padding: .5rem .375rem;
        font-size: .875rem;
        font-weight: 500;
        letter-spacing: .18em;
        text-transform: uppercase;
        white-space: nowrap;
    }

    /* Underline grows out from the centre on hover */
    .nizia-header .navbar-nav .nav-link::after {
        content: "";
        position: absolute;
        bottom: .25rem;
        left: 50%;
        width: 0;
        height: 1px;
        background: currentColor;
        transform: translateX(-50%);
        transition: width .3s ease;
    }

    .nizia-header .navbar-nav .nav-link:hover::after,
    .nizia-header .navbar-nav .nav-link:focus-visible::after,
    .nizia-header .navbar-nav .current-menu-item > .nav-link::after {
        width: calc(100% - .75rem);
    }
}

/* Very wide menus: tighten before anything is forced to wrap */
@media (min-width: 992px) and (max-width: 1399.98px) {
    .nizia-header .navbar-nav .nav-link {
        font-size: .75rem;
        letter-spacing: .12em;
    }
}


/*************** NIZIA RETURN-TO-TOP ***************/

/*
 * Bootscore positions this with .top-button in main.css. These rules carry the
 * same specificity and load later, so they win without !important.
 */
.nizia-top-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    right: clamp(1.25rem, 3vw, 2.5rem);
    bottom: clamp(1.25rem, 3vw, 2.5rem);
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 50%;
    background: rgba(28, 23, 20, .34);
    backdrop-filter: blur(16px) saturate(160%);
    -webkit-backdrop-filter: blur(16px) saturate(160%);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
    color: #fff;
    text-decoration: none;
    /* Sits slightly low and rises into place as it fades in */
    transform: translateY(10px);
    transition:
        visibility 0s linear .35s,
        opacity .35s ease,
        transform .5s cubic-bezier(.22, 1, .36, 1),
        background-color .3s ease,
        border-color .3s ease,
        color .3s ease;
}

.nizia-top-button.visible {
    transform: translateY(0);
    transition:
        visibility 0s linear 0s,
        opacity .35s ease,
        transform .5s cubic-bezier(.22, 1, .36, 1),
        background-color .3s ease,
        border-color .3s ease,
        color .3s ease;
}

.nizia-top-button:hover,
.nizia-top-button:focus-visible {
    border-color: #fff;
    background: #fff;
    color: var(--nizia-ink);
}

/*
 * Hairline chevron drawn from two borders on a rotated square — finer than any
 * icon-font glyph at this size, and it inherits the button's colour for free.
 * The 2px nudge optically centres it: a rotated square's visual weight sits
 * below its geometric centre.
 */
.nizia-top-button::before {
    content: "";
    width: 11px;
    height: 11px;
    margin-top: 2px;
    border-top: 1.3px solid currentColor;
    border-right: 1.3px solid currentColor;
    transform: translateY(0) rotate(-45deg);
    transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

/* The arrow lifts on hover, echoing what the button does */
.nizia-top-button:hover::before,
.nizia-top-button:focus-visible::before {
    transform: translateY(-2px) rotate(-45deg);
}

/* Solid fallback where the blur is unavailable */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .nizia-top-button {
        background: rgba(28, 23, 20, .92);
    }
}

@media (max-width: 767.98px) {
    .nizia-top-button {
        width: 46px;
        height: 46px;
    }

    .nizia-top-button::before {
        width: 10px;
        height: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nizia-top-button,
    .nizia-top-button.visible {
        transform: none;
    }

    .nizia-top-button::before {
        transition: none;
    }
}


/* ── Content offset for the fixed header ─────────────────────────────── */

.nizia-has-fixed-header:not(.nizia-header-overlay) #content {
    padding-top: var(--nizia-header-offset);
}

/*
 * Mobile: no hamburger. The bar stacks into three rows —
 *   1. centred logo
 *   2. the linear divider
 *   3. the full menu, wrapped and centred at a small size
 */
@media (max-width: 991.98px) {
    :root {
        --nizia-header-h: 72px;
        --nizia-header-h-scrolled: 64px;
    }

    .nizia-header__bar {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
        row-gap: .625rem;
        min-height: 0;
        padding-top: .75rem;
        padding-bottom: .625rem;
    }

    .nizia-header__bar > .nizia-header__brand {
        grid-row: 1;
        grid-column: 1;
        font-size: 1.375rem;
    }

    .nizia-header__brand img {
        max-height: 44px;
    }

    /* Actions share row 1 with the logo, pinned right. Grid items may overlap
       in one cell, so the logo stays centred on the bar rather than on the
       space left over. */
    .nizia-header__bar > .nizia-header__actions {
        position: static;
        grid-row: 1;
        grid-column: 1;
        justify-self: end;
        align-self: center;
        transform: none;
    }

    /* The divider becomes a real grid row instead of an absolute overlay */
    .nizia-header__bar::after {
        position: static;
        grid-row: 2;
        grid-column: 1;
        justify-self: stretch;
        width: 100%;
        transform: none;
    }

    /*
     * Bootstrap's own `.navbar-expand .offcanvas` already strips the panel
     * chrome and forces `width: auto !important`. That rules out width: 100%,
     * so the row is filled with justify-self instead — which works precisely
     * because the width is auto.
     */
    .nizia-header__bar > .offcanvas {
        grid-row: 3;
        grid-column: 1;
        justify-self: stretch;
    }

    .nizia-header__bar > .offcanvas .offcanvas-body {
        padding: 0;
        overflow: visible;
    }

    .nizia-header__bar > .offcanvas .navbar-nav {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: .125rem .875rem;
        margin: 0;
        padding: 0;
    }

    .nizia-header__bar > .offcanvas .navbar-nav .nav-link {
        padding: .1875rem 0;
        font-size: .625rem;
        font-weight: 500;
        letter-spacing: .14em;
        text-transform: uppercase;
        white-space: nowrap;
    }

    /* A stadium radius looks wrong on a three-row block */
    .nizia-header--scrolled .nizia-header__bar {
        max-width: none;
        margin-left: var(--nizia-inner-gutter);
        margin-right: var(--nizia-inner-gutter);
        padding-left: 1.125rem;
        padding-right: 1.125rem;
        border-radius: 1.25rem;
    }
}

/*
 * Mobile: the header is not sticky. It sits at the top of the page and scrolls
 * away like any other content — a three-row header pinned to a phone screen
 * would eat too much of the viewport.
 */
@media (max-width: 991.98px) {
    /* Overlay pages stay absolute so the hero still runs underneath, but the
       header now travels with the document instead of the viewport. */
    .nizia-header--fixed {
        position: absolute;
    }

    /* Inner pages put it back in normal flow entirely */
    .nizia-header--fixed:not(.nizia-header--overlay) {
        position: static;
    }

    /* The condensed pill is a desktop behaviour only. The JS still toggles the
       class on resize, so every visual it applies is unwound here. */
    .nizia-header--scrolled .nizia-header__bar {
        min-height: 0;
        max-width: none;
        margin-top: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        box-shadow: none;
    }

    .nizia-header--scrolled .nizia-header__bar::after {
        opacity: .45;
    }

    /* …including the white text the glass bar needs, which would otherwise be
       invisible against the cream header on inner pages. */
    .nizia-header--scrolled:not(.nizia-header--overlay),
    .nizia-header--scrolled:not(.nizia-header--overlay) .navbar-nav .nav-link,
    .nizia-header--scrolled:not(.nizia-header--overlay) .nizia-header__brand,
    .nizia-header--scrolled:not(.nizia-header--overlay) .nizia-header__btn {
        color: var(--nizia-ink);
    }

    .nizia-header--overlay .navbar-nav .nav-link,
    .nizia-header--overlay .nizia-header__brand,
    .nizia-header--overlay .nizia-header__btn {
        color: #fff;
    }

    /* Same for the monogram: white only over the hero, never on the cream bar */
    .nizia-header--scrolled:not(.nizia-header--overlay) .nizia-header__brand img {
        filter: none;
    }

    .nizia-header--overlay .nizia-header__brand img {
        filter: brightness(0) invert(1);
    }

    /* The pill's shrink does not apply without a pill */
    .nizia-header--scrolled .nizia-header__brand img {
        max-height: 44px;
    }

    /*
     * Nothing overlaps the content any more, so both offsets go to zero.
     * These are plain rules rather than a variable override because custom.js
     * writes --nizia-header-offset as an inline style, which a media query
     * cannot outrank.
     */
    .nizia-has-fixed-header:not(.nizia-header-overlay) #content {
        padding-top: 0;
    }

    .nizia-section {
        scroll-margin-top: 0;
    }
}

@media (max-width: 380px) {
    .nizia-header__bar > .offcanvas .navbar-nav {
        gap: .125rem .625rem;
    }

    .nizia-header__bar > .offcanvas .navbar-nav .nav-link {
        font-size: .5625rem;
        letter-spacing: .1em;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nizia-header--fixed,
    .nizia-header__bar,
    .nizia-header__brand img {
        transition: none;
    }
}

/* Shared block shell — every /blocks section renders inside this */
.nizia-section {
    position: relative;
    padding-top: var(--nizia-section-y);
    padding-bottom: var(--nizia-section-y);
    /* Anchor jumps must clear the fixed header instead of landing under it */
    scroll-margin-top: var(--nizia-header-offset);
}

.nizia-section > .nizia-inner {
    position: relative;
    z-index: 1;
}

.nizia-section-title {
    margin-bottom: 1rem;
}

.nizia-section-lead {
    color: var(--nizia-muted);
    max-width: 62ch;
}

.nizia-eyebrow {
    display: inline-block;
    margin-bottom: .75rem;
    font-size: .75rem;
    letter-spacing: .18em !important;
    text-transform: uppercase;
    color: var(--nizia-gold);
}

/* Editor-only hint when a block has no content yet */
.nizia-block-placeholder {
    padding: 2rem;
    border: 1px dashed var(--nizia-line);
    border-radius: .5rem;
    text-align: center;
    color: var(--nizia-muted);
    background: var(--nizia-cream);
}



html {
    scroll-behavior: smooth;
    font-size: 16px;
}

h1,
.h1 {
    font-size: 4rem !important;
    line-height: 1.2;
}

h2,
.h2 {
    font-size: 3rem !important;
    line-height: 1.2;
}

h3,
.h3 {
    font-size: 2rem !important;
    line-height: 1.2;
}

h5,
.h5 {
    line-height: 1.2;
}

h6,
.h6 {
    font-size: 1.25rem !important;
    line-height: 1.2;
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
a,
btn {
    letter-spacing: normal !important;
    /*letter-spacing: .8px !important;*/ /*apply on specific font styles only*/
}

p {
    line-height: 1.6;
    font-size: 16px;
}

p.lead {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
}

.header-row.container {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

@media (min-width: 768px) {
    p.lead {
        font-size: 20px;
    }
}

@media (max-width: 767px) {

    h1,
    .h1 {
        font-size: calc(2rem + 1.5vw) !important;
    }

    h2,
    .h2 {
        font-size: 32px !important;
    }

    h3,
    .h3 {
        font-size: 28px !important;
    }

    h5,
    .h5 {
        font-size: 20px !important;
    }

    h6,
    .h6 {
        font-size: 1rem !important;
    }
}

/*#main {*/
/*	background: #F5F5F5;*/
/*}*/

.nizia-container,
.nizia-container-inner>div {
    margin-left: 0;
    margin-right: 0;
    padding-left: var(--nizia-inner-gutter) !important;
    padding-right: var(--nizia-inner-gutter) !important;
    width: 100%;
    max-width: var(--nizia-inner-max);
}

.container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
    width: 100%;
    max-width: var(--nizia-inner-max);
    padding-left: var(--nizia-inner-gutter);
    padding-right: var(--nizia-inner-gutter);
}

.nizia-container-inner {
    justify-content: center !important;
}

.container-fluid {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* auto paddings */
.auto-padding {
    padding: calc(1.813rem + 1.5625vw);
    padding-left: 12px;
    padding-right: 12px;
}

.left-full-column,
.right-full-column {
    --gap: 6rem;
    --offset: calc((100vw - 1681px) / 2 + 4px);
    --y-offset: 45px;
    padding-top: var(--y-offset);
    padding-bottom: var(--y-offset);
}

.left-full-column {
    padding-left: var(--offset);
    padding-right: var(--gap);
}

.right-full-column {
    padding-right: var(--offset);
    padding-left: var(--gap);
}

h3.porto-sicon-title {
    font-weight: 700;
}

.page-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.limit-words {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
}

.thumb-info img {
    width: 100%;
    /* ensure the image covers the width */
    height: 100%;
    /* ensure the image covers the height */
    object-fit: cover;
    /* cover the container, maintaining the aspect ratio */
    /*  	max-height: 600px; */
    overflow: hidden;
}

.thumb-info .partners-logo {
    transition: 0.3s;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    max-width: 90%;
}

.blog-masonry-image img {
    min-height: 300px;
    max-height: 300px !important;
}

.min-h-880-max-900 {
    min-height: 880px;
    max-height: 900px;
}

.min-h-825 {
    height: 100%;
    min-height: 825px;
    max-height: 825px;
}

.justify-content-space-between {
    justify-content: space-between;
}

.gutenberg-hb>.porto-block>*:not(.porto-section),
.gutenberg-hb .porto-section>*:not(.container),
.gutenberg-hb .porto-section>.container>* {
    margin-right: 0;
}

.sticky-header {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    background-color: #f5f5f54f !important;
    animation: fadeInDown 0.3s ease-out;
}

#header, .sticky-header .header-main.sticky {
    border-top: none;
}

#footer .footer-bottom .footer-left {
    padding: 10px 0 10px 0;
}

@media (min-width: 768px) {}

@media (min-width: 992px) {
    html, p {
        font-size: 18px;
    }

    .auto-padding {
        padding: calc(2.813rem + 1.5625vw);
    }

    .left-full-column,
    .right-full-column {
        --y-offset: calc(2.813rem + 1.5625vw);
    }
}

@media (min-width: 1600px) {
   
}

@media (max-width: 1760px) {

    .left-full-column,
    .right-full-column {
        --gap: 2rem;
    }

    .left-full-column {
        padding-left: 12px;
    }

    .right-full-column {
        padding-right: 12px;
    }
}

@media (max-width: 1400px) {
    .left-full-column {
        padding-right: 12px;
    }

    .right-full-column {
        padding-left: 12px;
    }
}





/* ── Review card inner — white background ── */
.rpi-card-inner.rpi-logo.rpi-logo-google {
    background: #fff !important;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.10) !important;
}

/* ── Arrows — icon only, no button style ── */
.rpi-ltgt.rpi-lt.rpi-slider-prev,
.rpi-ltgt.rpi-gt.rpi-slider-next {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    width: auto !important;
    height: auto !important;
    padding: 8px !important;
    cursor: pointer !important;
    opacity: 0.6 !important;
    transition: opacity 0.2s ease !important;
}

.rpi-ltgt.rpi-lt.rpi-slider-prev:hover,
.rpi-ltgt.rpi-gt.rpi-slider-next:hover {
    opacity: 1 !important;
    background: transparent !important;
    border: none !important;
}

.rpi-img-wrap::before{
    display:none!important;
}


/* ── See all / Review us buttons ── */
.rpi-review_us.rpi-clickable a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 12px 12px !important;
    border-radius: 100% !important;
    background: #1a73e8 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    border: none !important;
    transition: background 0.2s ease !important;
    white-space: nowrap !important;
}

.rpi-review_us.rpi-clickable a:hover {
    background: #1558b0 !important;
    color: #fff !important;
}


.rpi-reply rpi-scroll {
	color:#131842!important;
}



.template-11-bg{
	background-color:#fcfcfc!important;
}
