/*
 * RCS Interface Studio v2.2.0
 * Header/menu style presets and premium floating support hub.
 */

.rcs-site-header{
    transition:background-color .22s ease,box-shadow .22s ease;
}

/* -------------------------------------------------------------------------
   Header & Menu Style Studio — desktop layouts
   ------------------------------------------------------------------------- */
@media (min-width:1281px){
    /* Executive Two-Row: the default and best option for longer menus. */
    .rcs-site-header.rcs-header-style-split .rcs-header-inner{
        min-height:132px;
        grid-template-columns:clamp(210px,14vw,250px) minmax(0,1fr) auto !important;
        grid-template-rows:auto auto;
        column-gap:28px;
        row-gap:10px;
        padding-top:14px;
        padding-bottom:10px;
    }
    .rcs-site-header.rcs-header-style-split .rcs-logo-link{
        grid-column:1;
        grid-row:1;
    }
    .rcs-site-header.rcs-header-style-split .rcs-header-actions{
        grid-column:3;
        grid-row:1;
        justify-self:end;
    }
    .rcs-site-header.rcs-header-style-split .rcs-nav{
        grid-column:1 / -1;
        grid-row:2;
        width:100%;
        padding:6px 12px;
        border:1px solid var(--rcs-colour-nav-rail-border,#dfeae4);
        border-radius:16px;
        background:linear-gradient(180deg,var(--rcs-colour-nav-rail-bg,#f7faf8),#f1f7f4);
        box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 8px 24px rgba(6,53,31,.045);
    }
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul{
        justify-content:center;
        gap:clamp(14px,1.65vw,30px)!important;
    }
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li>a{
        min-height:44px;
        padding:0 10px!important;
        border-radius:10px;
        font-size:13px;
        font-weight:820;
    }
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li>a .rcs-menu-item-icon{
        display:none!important;
    }
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li>a:hover,
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li>a:focus-visible{
        padding-inline:10px!important;
        background:var(--rcs-colour-nav-hover-bg,#fff);
        box-shadow:none;
    }
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li.current-menu-item>a,
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li.current-menu-ancestor>a,
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li.current_page_item>a,
    .rcs-site-header.rcs-header-style-split .rcs-nav>ul>li.current_page_ancestor>a{
        padding-inline:13px!important;
        background:var(--rcs-colour-nav-active-bg,var(--rcs-green));
        color:var(--rcs-colour-nav-active-text,#fff);
        box-shadow:0 7px 18px rgba(0,107,58,.15);
    }

    /* Classic Clean: minimal rail with an active underline. */
    .rcs-site-header.rcs-header-style-classic{
        box-shadow:0 8px 28px rgba(6,53,31,.065);
    }
    .rcs-site-header.rcs-header-style-classic .rcs-header-inner{
        min-height:92px;
        grid-template-columns:clamp(205px,13vw,240px) minmax(0,1fr) auto!important;
        gap:clamp(20px,1.5vw,30px);
        padding-block:12px;
    }
    .rcs-site-header.rcs-header-style-classic .rcs-nav{
        padding:0;
        border:0;
        border-radius:0;
        background:transparent;
        box-shadow:none;
    }
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul{
        gap:clamp(18px,1.25vw,28px)!important;
    }
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li>a{
        min-height:56px;
        padding:0 2px!important;
        border:0;
        border-radius:0;
        background:transparent!important;
        color:var(--rcs-colour-nav-text,#163026);
        box-shadow:inset 0 -3px 0 transparent!important;
        font-size:13px;
        font-weight:800;
    }
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li>a .rcs-menu-item-icon{
        display:none!important;
    }
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li>a:hover,
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li>a:focus-visible{
        padding-inline:2px!important;
        color:var(--rcs-colour-nav-hover-text,var(--rcs-green-dark));
        box-shadow:inset 0 -3px 0 var(--rcs-colour-nav-active-bg,var(--rcs-green))!important;
    }
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li.current-menu-item>a,
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li.current-menu-ancestor>a,
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li.current_page_item>a,
    .rcs-site-header.rcs-header-style-classic .rcs-nav>ul>li.current_page_ancestor>a{
        padding-inline:2px!important;
        background:transparent!important;
        border:0!important;
        color:var(--rcs-colour-nav-active-bg,var(--rcs-green))!important;
        box-shadow:inset 0 -3px 0 var(--rcs-colour-nav-active-bg,var(--rcs-green))!important;
    }

    /* Modern Pill: compact icons and individual rounded navigation chips. */
    .rcs-site-header.rcs-header-style-pill .rcs-header-inner{
        min-height:96px;
        grid-template-columns:clamp(205px,13vw,235px) minmax(0,1fr) auto!important;
        gap:clamp(16px,1.25vw,24px);
    }
    .rcs-site-header.rcs-header-style-pill .rcs-nav{
        padding:6px;
        border:1px solid var(--rcs-colour-nav-rail-border,#dfeae4);
        border-radius:999px;
        background:var(--rcs-colour-nav-rail-bg,#f5f9f7);
        box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
    }
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul{
        gap:3px!important;
    }
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li>a{
        min-height:46px;
        padding:0 clamp(9px,.65vw,13px)!important;
        gap:7px;
        border-radius:999px;
        font-size:11px;
        font-weight:850;
    }
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li>a .rcs-menu-item-icon{
        display:grid!important;
        width:18px;
        height:18px;
        flex:0 0 18px;
    }
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li>a:hover,
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li>a:focus-visible{
        padding-inline:clamp(9px,.65vw,13px)!important;
        border-color:var(--rcs-colour-nav-rail-border,#dfeae4);
        background:var(--rcs-colour-nav-hover-bg,#fff);
        box-shadow:0 6px 16px rgba(6,53,31,.08);
    }
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li.current-menu-item>a,
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li.current-menu-ancestor>a,
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li.current_page_item>a,
    .rcs-site-header.rcs-header-style-pill .rcs-nav>ul>li.current_page_ancestor>a{
        padding-inline:clamp(9px,.65vw,13px)!important;
        border-radius:999px;
    }

    /* Corporate Contrast: dark premium header with a protected logo panel. */
    .rcs-site-header.rcs-header-style-dark{
        background:linear-gradient(115deg,var(--rcs-green-dark),var(--rcs-green))!important;
        border-bottom:1px solid rgba(255,255,255,.14);
        box-shadow:0 12px 34px rgba(3,31,19,.2);
    }
    .rcs-site-header.rcs-header-style-dark::after{
        background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
    }
    .rcs-site-header.rcs-header-style-dark .rcs-header-inner{
        min-height:100px;
        grid-template-columns:clamp(220px,14vw,260px) minmax(0,1fr) auto!important;
        gap:clamp(18px,1.5vw,28px);
    }
    .rcs-site-header.rcs-header-style-dark .rcs-logo-link{
        width:min(var(--rcs-header-logo-width,205px),230px);
        min-width:min(var(--rcs-header-logo-width,205px),230px);
        max-width:230px;
        padding:9px 13px;
        border:1px solid rgba(255,255,255,.52);
        border-radius:15px;
        background:#fff;
        box-shadow:0 10px 24px rgba(0,0,0,.12);
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav{
        padding:6px 10px;
        border:1px solid rgba(255,255,255,.18)!important;
        border-radius:16px;
        background:rgba(255,255,255,.09)!important;
        box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul{
        gap:clamp(8px,.75vw,15px)!important;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li>a{
        min-height:48px;
        padding:0 8px!important;
        color:#fff!important;
        font-size:12px;
        font-weight:820;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li>a .rcs-menu-item-icon{
        display:none!important;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li>a:hover,
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li>a:focus-visible{
        padding-inline:8px!important;
        border-color:rgba(255,255,255,.16)!important;
        background:rgba(255,255,255,.12)!important;
        color:#fff!important;
        box-shadow:none;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li.current-menu-item>a,
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li.current-menu-ancestor>a,
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li.current_page_item>a,
    .rcs-site-header.rcs-header-style-dark .rcs-nav>ul>li.current_page_ancestor>a{
        padding-inline:11px!important;
        border-color:#fff!important;
        background:#fff!important;
        color:var(--rcs-green-dark)!important;
        box-shadow:0 8px 20px rgba(0,0,0,.14);
    }
    .rcs-site-header.rcs-header-style-dark .rcs-client-login-button{
        border-color:rgba(255,255,255,.42)!important;
        background:rgba(255,255,255,.08)!important;
        color:#fff!important;
        box-shadow:none;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-client-login-button:hover,
    .rcs-site-header.rcs-header-style-dark .rcs-client-login-button:focus-visible{
        border-color:#fff!important;
        background:rgba(255,255,255,.16)!important;
        color:#fff!important;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-header-actions .rcs-header-cta{
        border-color:#fff!important;
        background:#fff!important;
        color:var(--rcs-green-dark)!important;
        box-shadow:0 10px 24px rgba(0,0,0,.14);
    }
    .rcs-site-header.rcs-header-style-dark .rcs-header-actions .rcs-header-cta:hover,
    .rcs-site-header.rcs-header-style-dark .rcs-header-actions .rcs-header-cta:focus-visible{
        background:#edf7f2!important;
        color:var(--rcs-green-dark)!important;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav .sub-menu{
        background:var(--rcs-colour-dropdown-bg,#fff)!important;
        border-color:rgba(6,53,31,.16)!important;
        border-top-color:#fff!important;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-nav .sub-menu a{
        color:var(--rcs-colour-dropdown-text,#294338)!important;
    }

    /* If a selected single-row style genuinely cannot fit, retain the reliable drawer. */
    .rcs-site-header.rcs-header-style-split.rcs-header-overflow .rcs-header-inner{
        min-height:86px;
        grid-template-columns:minmax(190px,1fr) auto auto!important;
        grid-template-rows:auto;
        padding-block:10px;
    }
    .rcs-site-header.rcs-header-style-split.rcs-header-overflow .rcs-logo-link{grid-column:1;grid-row:1}
    .rcs-site-header.rcs-header-style-split.rcs-header-overflow .rcs-mobile-toggle{grid-column:2;grid-row:1}
    .rcs-site-header.rcs-header-style-split.rcs-header-overflow .rcs-header-actions{grid-column:3;grid-row:1}
    .rcs-site-header.rcs-header-style-split.rcs-header-overflow .rcs-nav{
        grid-column:auto;
        grid-row:auto;
    }
}

/* Dark style also carries through to the mobile/tablet shell. */
@media (max-width:1280px){
    .rcs-site-header.rcs-header-style-dark{
        background:linear-gradient(115deg,var(--rcs-green-dark),var(--rcs-green))!important;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-logo-link{
        padding:6px 9px;
        border-radius:11px;
        background:#fff;
    }
    .rcs-site-header.rcs-header-style-dark .rcs-mobile-toggle,
    .rcs-site-header.rcs-header-style-dark .rcs-client-login-button{
        border-color:rgba(255,255,255,.4)!important;
        background:rgba(255,255,255,.09)!important;
        color:#fff!important;
    }
}

/* -------------------------------------------------------------------------
   Premium Quote Basket & Quick Contact Hub
   ------------------------------------------------------------------------- */
.rcs-floating-actions{
    right:24px!important;
    bottom:24px!important;
    width:min(292px,calc(100vw - 48px))!important;
    gap:12px!important;
    padding:15px!important;
    overflow:hidden;
    border:1px solid rgba(6,53,31,.12)!important;
    border-radius:24px!important;
    background:var(--rcs-colour-floating-bg,rgba(255,255,255,.97))!important;
    box-shadow:0 24px 64px rgba(6,53,31,.18)!important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
}
.rcs-floating-actions::before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:4px;
    background:linear-gradient(90deg,var(--rcs-green-dark),var(--rcs-green),var(--rcs-accent,var(--rcs-green)));
}
.rcs-floating-heading{
    display:grid;
    gap:4px;
    padding:2px 3px 0;
}
.rcs-floating-title{
    color:var(--rcs-colour-floating-text,var(--rcs-green-dark))!important;
    font-size:12px!important;
    font-weight:950!important;
    letter-spacing:.065em!important;
}
.rcs-floating-subtitle{
    color:#677c73;
    font-size:11px;
    font-weight:700;
    line-height:1.35;
}
.rcs-floating-action-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
}
.rcs-floating-action{
    position:relative;
    min-height:72px!important;
    display:grid!important;
    grid-template-columns:32px minmax(0,1fr);
    align-items:center!important;
    justify-content:stretch!important;
    column-gap:9px!important;
    padding:11px 12px!important;
    overflow:hidden;
    border:1px solid rgba(0,107,58,.14)!important;
    border-radius:17px!important;
    background:var(--rcs-colour-email-bg,#f5faf7)!important;
    color:var(--rcs-colour-email-text,var(--rcs-green-dark))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.82)!important;
    text-align:left!important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
.rcs-floating-action:hover,
.rcs-floating-action:focus-visible{
    transform:translateY(-2px);
    border-color:rgba(0,107,58,.3)!important;
    box-shadow:0 10px 22px rgba(6,53,31,.11)!important;
}
.rcs-floating-action-whatsapp{
    border-color:transparent!important;
    background:linear-gradient(135deg,var(--rcs-colour-whatsapp-bg,var(--rcs-green)),var(--rcs-green-dark))!important;
    color:var(--rcs-colour-whatsapp-text,#fff)!important;
    box-shadow:0 12px 25px rgba(0,107,58,.2)!important;
}
.rcs-floating-action-icon{
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:rgba(0,107,58,.09);
    color:var(--rcs-green);
}
.rcs-floating-action-whatsapp .rcs-floating-action-icon{
    background:rgba(255,255,255,.15);
    color:#fff;
}
.rcs-floating-action-icon svg{
    width:18px;
    height:18px;
}
.rcs-floating-action-copy{
    min-width:0;
    display:grid;
    gap:3px;
}
.rcs-floating-action-label{
    color:inherit!important;
    font-size:13px!important;
    font-weight:950!important;
}
.rcs-floating-action small{
    color:#687d74!important;
    font-size:10px!important;
    font-weight:750!important;
}
.rcs-floating-action-whatsapp small{
    color:rgba(255,255,255,.82)!important;
}
.rcs-floating-action-grid>.rcs-floating-action:last-child:nth-child(odd){
    grid-column:1 / -1;
}

.rcs-enquiry-basket{
    right:24px!important;
    bottom:166px!important;
    width:min(292px,calc(100vw - 48px))!important;
    background:transparent!important;
}
.rcs-basket-tab{
    width:100%!important;
    min-width:0!important;
    min-height:74px;
    grid-template-columns:42px minmax(0,1fr) 38px!important;
    grid-template-rows:auto auto;
    column-gap:12px!important;
    row-gap:2px!important;
    padding:13px 14px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:24px!important;
    background:linear-gradient(135deg,var(--rcs-colour-basket-bg,var(--rcs-green-dark)),var(--rcs-green))!important;
    box-shadow:0 24px 60px rgba(6,53,31,.24)!important;
    text-align:left;
    transition:transform .18s ease,box-shadow .18s ease!important;
}
.rcs-basket-tab:hover,
.rcs-basket-tab:focus-visible{
    transform:translateY(-2px);
    box-shadow:0 28px 66px rgba(6,53,31,.29)!important;
}
.rcs-basket-tab-icon{
    grid-column:1;
    grid-row:1 / 3;
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:rgba(255,255,255,.13);
    color:var(--rcs-colour-basket-text,#fff);
}
.rcs-basket-tab-icon svg{
    width:22px;
    height:22px;
}
.rcs-basket-tab-kicker{
    grid-column:2;
    grid-row:1;
    color:rgba(255,255,255,.73)!important;
    font-size:10px!important;
    letter-spacing:.09em!important;
}
.rcs-basket-tab-label{
    grid-column:2;
    grid-row:2;
    color:var(--rcs-colour-basket-text,#fff)!important;
    font-size:16px!important;
    line-height:1.05!important;
}
.rcs-basket-tab strong{
    grid-column:3!important;
    grid-row:1 / 3!important;
    min-width:36px!important;
    height:36px!important;
    margin:0!important;
    background:#fff!important;
    color:var(--rcs-green-dark)!important;
    box-shadow:0 5px 14px rgba(0,0,0,.12);
}

@media (max-width:700px){
    .rcs-floating-actions{
        left:8px!important;
        right:8px!important;
        bottom:max(8px,env(safe-area-inset-bottom))!important;
        width:auto!important;
        padding:8px!important;
        border-radius:18px!important;
    }
    .rcs-floating-actions::before{
        height:3px;
    }
    .rcs-floating-heading{
        display:none;
    }
    .rcs-floating-action-grid{
        gap:7px!important;
    }
    .rcs-floating-action{
        min-height:56px!important;
        grid-template-columns:28px minmax(0,1fr);
        column-gap:8px!important;
        padding:8px 10px!important;
        border-radius:13px!important;
    }
    .rcs-floating-action-icon{
        width:28px;
        height:28px;
        border-radius:9px;
    }
    .rcs-floating-action-icon svg{
        width:16px;
        height:16px;
    }
    .rcs-floating-action-label{
        font-size:12px!important;
    }
    .rcs-floating-action small{
        font-size:9px!important;
    }
    .rcs-enquiry-basket{
        left:auto!important;
        right:10px!important;
        bottom:calc(82px + env(safe-area-inset-bottom))!important;
        width:58px!important;
    }
    .rcs-basket-tab{
        width:58px!important;
        min-width:58px!important;
        min-height:58px!important;
        height:58px!important;
        display:grid!important;
        grid-template-columns:1fr!important;
        grid-template-rows:1fr!important;
        place-items:center;
        padding:0!important;
        border-radius:50%!important;
    }
    .rcs-basket-tab-icon{
        grid-column:1!important;
        grid-row:1!important;
        width:36px;
        height:36px;
        border-radius:12px;
    }
    .rcs-basket-tab-kicker,
    .rcs-basket-tab-label{
        display:none!important;
    }
    .rcs-basket-tab strong{
        position:absolute;
        top:-4px;
        right:-4px;
        grid-column:auto!important;
        grid-row:auto!important;
        min-width:24px!important;
        width:24px;
        height:24px!important;
        border:2px solid #fff;
        font-size:10px!important;
    }
}

/* -------------------------------------------------------------------------
   v2.2.5 Collapsible quick-contact panel
   Keep the contact options hidden until the visitor opens them.
   ------------------------------------------------------------------------- */
.rcs-floating-actions[data-rcs-quick-contact]{
    right:24px!important;
    bottom:24px!important;
    width:min(292px,calc(100vw - 48px))!important;
    display:grid!important;
    justify-items:end;
    gap:10px!important;
    padding:0!important;
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
}
.rcs-floating-actions[data-rcs-quick-contact]::before{
    display:none!important;
}
.rcs-floating-panel[hidden]{
    display:none!important;
}
.rcs-floating-panel{
    position:relative;
    width:100%;
    display:grid;
    gap:12px;
    padding:15px;
    overflow:hidden;
    border:1px solid rgba(6,53,31,.12);
    border-radius:24px;
    background:var(--rcs-colour-floating-bg,rgba(255,255,255,.98));
    box-shadow:0 24px 64px rgba(6,53,31,.18);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    transform-origin:bottom right;
    animation:rcsQuickContactIn .18s ease-out both;
}
.rcs-floating-panel::before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:4px;
    background:linear-gradient(90deg,var(--rcs-green-dark),var(--rcs-green),var(--rcs-accent,var(--rcs-green)));
}
.rcs-floating-panel .rcs-floating-heading{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 34px;
    align-items:start;
    gap:10px;
    padding:3px 2px 0;
}
.rcs-floating-panel .rcs-floating-heading>span:first-child{
    min-width:0;
    display:grid;
    gap:4px;
}
.rcs-floating-close{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid rgba(6,53,31,.12);
    border-radius:50%;
    background:#f4f9f6;
    color:var(--rcs-green-dark);
    cursor:pointer;
    transition:background .18s ease,transform .18s ease,border-color .18s ease;
}
.rcs-floating-close:hover,
.rcs-floating-close:focus-visible{
    border-color:rgba(0,107,58,.28);
    background:#eaf5ef;
    transform:rotate(4deg);
}
.rcs-floating-close svg{
    width:16px;
    height:16px;
}
.rcs-floating-toggle{
    width:168px;
    min-height:56px;
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    align-items:center;
    gap:10px;
    padding:9px 14px 9px 10px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:999px;
    background:linear-gradient(135deg,var(--rcs-green-dark),var(--rcs-green));
    color:#fff;
    box-shadow:0 15px 34px rgba(6,53,31,.24);
    cursor:pointer;
    text-align:left;
    transition:transform .18s ease,box-shadow .18s ease;
}
.rcs-floating-toggle:hover,
.rcs-floating-toggle:focus-visible{
    transform:translateY(-2px);
    box-shadow:0 18px 40px rgba(6,53,31,.3);
}
.rcs-floating-toggle-icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:rgba(255,255,255,.15);
    color:#fff;
}
.rcs-floating-toggle-icon svg{
    width:20px;
    height:20px;
}
.rcs-floating-toggle-copy{
    min-width:0;
    display:grid;
    gap:2px;
}
.rcs-floating-toggle-copy strong{
    color:#fff;
    font-size:13px;
    font-weight:950;
    line-height:1.1;
}
.rcs-floating-toggle-copy small{
    color:rgba(255,255,255,.76);
    font-size:9px;
    font-weight:750;
    line-height:1.15;
}
.rcs-floating-actions.is-open .rcs-floating-toggle{
    box-shadow:0 12px 28px rgba(6,53,31,.2);
}
@keyframes rcsQuickContactIn{
    from{opacity:0;transform:translateY(8px) scale(.98)}
    to{opacity:1;transform:translateY(0) scale(1)}
}
@media (prefers-reduced-motion:reduce){
    .rcs-floating-panel{animation:none}
    .rcs-floating-toggle,
    .rcs-floating-close{transition:none}
}
@media (max-width:700px){
    .rcs-floating-actions[data-rcs-quick-contact]{
        left:auto!important;
        right:10px!important;
        bottom:max(10px,env(safe-area-inset-bottom))!important;
        width:min(292px,calc(100vw - 20px))!important;
        padding:0!important;
        border-radius:0!important;
    }
    .rcs-floating-panel{
        padding:13px;
        border-radius:20px;
    }
    .rcs-floating-panel .rcs-floating-heading{
        display:grid!important;
    }
    .rcs-floating-toggle{
        width:58px;
        min-width:58px;
        height:58px;
        min-height:58px;
        grid-template-columns:1fr;
        place-items:center;
        gap:0;
        padding:0;
        border-radius:50%;
    }
    .rcs-floating-toggle-icon{
        width:36px;
        height:36px;
        border-radius:12px;
    }
    .rcs-floating-toggle-copy{
        display:none;
    }
}


/* -------------------------------------------------------------------------
   v2.2.15 Compact Quote Basket
   Keep the quote builder easy to find without covering page content.
   ------------------------------------------------------------------------- */
@media (min-width:701px){
    .rcs-enquiry-basket{
        width:184px!important;
    }
    .rcs-basket-tab{
        width:184px!important;
        min-width:184px!important;
        min-height:56px!important;
        grid-template-columns:36px minmax(0,1fr) 30px!important;
        grid-template-rows:1fr!important;
        column-gap:9px!important;
        row-gap:0!important;
        padding:9px 10px!important;
        border-radius:999px!important;
        box-shadow:0 16px 36px rgba(6,53,31,.22)!important;
    }
    .rcs-basket-tab:hover,
    .rcs-basket-tab:focus-visible{
        transform:translateY(-1px);
        box-shadow:0 19px 42px rgba(6,53,31,.27)!important;
    }
    .rcs-basket-tab-icon{
        grid-column:1!important;
        grid-row:1!important;
        width:36px!important;
        height:36px!important;
        border-radius:12px!important;
    }
    .rcs-basket-tab-icon svg{
        width:19px!important;
        height:19px!important;
    }
    .rcs-basket-tab-kicker{
        display:none!important;
    }
    .rcs-basket-tab-label{
        grid-column:2!important;
        grid-row:1!important;
        align-self:center;
        font-size:13px!important;
        line-height:1.1!important;
        white-space:nowrap;
    }
    .rcs-basket-tab strong{
        grid-column:3!important;
        grid-row:1!important;
        align-self:center;
        min-width:30px!important;
        width:30px!important;
        height:30px!important;
        font-size:12px!important;
        line-height:30px!important;
        box-shadow:0 4px 11px rgba(0,0,0,.11)!important;
    }
}
