/* =============================================================================
   COMPONENTS
   Pills, buttons, forms, social icons, Stackable blocks, misc UI
   Source: customiser.css
============================================================================= */

@media (max-width: 768px) {
header	#ajaxsearchpro1_1 .probox .proinput input.orig, #ajaxsearchpro1_2 .probox .proinput input.orig, div.asp_m.asp_m_1 .probox .proinput input.orig {
    color: #000!important;
}
}

.d-grid.gap-2.mt-3 .btn:not(.js-qty-plus):not(.js-qty-minus){
    font-size: 1.2em!important;
    border-radius: 20px!important;
    padding: 8px;
    width: auto!important;
}

.d-flex.align-items-center.justify-content-between.mt-2 .btn:not(.js-qty-plus):not(.js-qty-minus):not(.js-remove-item){
    font-size: 1.2em!important;
    border-radius: 20px!important;
    padding: 8px;
    width: auto;
}

.btn-outline-secondary{
    border:#284241 2px solid;
    color: #284241;
    padding: 6px;
}

#sidecartOffcanvas .btn-outline-secondary:not(.js-qty-plus):not(.js-qty-minus){
    font-size: 0.9em;
    padding: 6px 35px;
    border-radius: 20px;
}

a#sidecartCheckoutBtn{
    border: #284241 1px solid;
}


/* --- Global form inputs -------------------------------------------------- */

/*
NEEDS SPECIFIC TARGETS
input {
    border-radius: 20px!important; /* !important-flag */
}
*/

select {
    border-radius: 20px!important; /* !important-flag */
}

.gform-theme--foundation .gfield textarea {
    inline-size: 100%;
    border: 0;
    border-radius: 20px;
}

/* --- Pills --------------------------------------------------------------- */

/* Consolidated from 3 definitions */
.tw-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 30px;
    border-radius: 20px;
    font-weight: 600;
    text-decoration: none;
    background: #492774;
    color: #fff!important;
    width: auto;
    transition: transform .08s ease, filter .2s ease;
}

.tw-pill:hover {
    transform: translateY(-1px);
}

/* Merged: background+color from base, filter+box-shadow from earlier definition */
.tw-pill.is-active {
    background: #492774!important;
    border: 0;
    color: #fff!important;
    filter: brightness(1);
    box-shadow: 1px 2px 10px 1px #2452544d;
}

.tw-pill:hover {
    background: #492774!important;
    border: 0;
    color: #fff!important;
    filter: brightness(1);
    box-shadow: 1px 2px 10px 1px #2452544d;
}




/* --- Stackable button overrides ------------------------------------------ */

/*
REMOVED THIS - CAUSING ALL SORTS OF ISSUES
.btn:not(.js-qty-plus):not(.js-qty-minus), #pwAddProductModal button {
    font-size: 1.2em!important;
    border-radius: 20px!important;
    padding: 8px;
	width: 20%;
}
*/

.wp-block-stackable-button.stk-block-button.shop-btn.stk-block.stk-omt5z0d .stk-link.stk-button.stk--hover-effect-darken {
    background: #245255!important;
}

.stk-q7nd470 .stk-button.stk-link.stk-button.stk--hover-effect-darken {
    background: #245255!important;
    border-top-left-radius: 20px!important;
    border-top-right-radius: 20px!important;
    border-bottom-right-radius: 20px!important;
    border-bottom-left-radius: 20px!important;
}

a.stk-link.stk-button.stk--hover-effect-darken {
    width: 200px;
    border-radius: 20px;
    background: #fff;
}

.stk-722c74f.shape-4.bg-pink-dark a.stk-link.stk-button.stk--hover-effect-darken {
    width: 200px;
}

/* --- Stackable block padding overrides ----------------------------------- */

.stk--column-flex.stk-block-content.stk-inner-blocks.stk-0572a51-inner-blocks {
    padding-right: 20px;
}

.stk--column-flex.stk-block-content.stk-inner-blocks.stk-2962d8a-inner-blocks {
    padding-right: 10px;
    padding-bottom: 12px;
}

.stk-block-content.stk-inner-blocks.stk-ceb1de6-inner-blocks { padding: 40px; }
.stk-block-content.stk-inner-blocks.stk-b57c7b2-inner-blocks { padding: 20px; }
.stk-block-content.stk-inner-blocks.stk-4ff64f0-inner-blocks { padding: 20px; }
.stk-block-content.stk-inner-blocks.stk-49fb4d7-inner-blocks { padding: 20px; }

.wp-block-stackable-columns.stk-block-columns.stk-block.stk-803a8d2 {
    margin-top: -80px;
}

:is(.stk-42d5f87, .stk-39868e7, .stk-31747d6) .stk-block-card__content {
    padding-bottom: 110px!important;
    padding-left: 50px;
    padding-right: 50px;
}

.stk-row.stk-inner-blocks.stk-block-content.stk-content-align.stk-a68bc45-column span.stk-img-wrapper.stk-img--shape.stk-image--shape-stretch img {
    max-height: 500px;
    object-fit: contain;
    width: auto!important;
}

/* --- Bg colour utilities ------------------------------------------------- */

.bg-pink-dark h3 { color: #fff; }
.bg-pink-dark h2 { color: #fff; }
.bg-pink-dark p  { color: #fff; }

.bg-white {
    background-color: #ffffff!important;
}

/* --- Image size overrides (Stackable) ------------------------------------ */

.stk-30e2a30 img {
    height: 80px!important;
    background-size: contain!important;
    object-fit: contain;
}

img.stk-img.wp-image-2530 { height: 59px!important; }
img.stk-img.wp-image-2525 { height: 70px!important; }

/* --- Gravity Forms: contact form (Form 2) -------------------------------- */

.charleft.ginput_counter.gfield_description {
    display: none;
}

/* Gravity form field descriptions styled as decorative text */
div#gfield_description_2_5,
div#gfield_description_2_6 {
    font-family: 'Caveat';
    font-size: 2.5em;
    text-align: center;
}

#field_2_7 .gfield_label.gform-field-label {
    display: none!important;
}

/* Base icon setup */
#field_2_7 .gchoice label::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 22px;
    color: #ffffff;
    margin-right: 12px;
    display: inline-block;
}

/* Radio button icons */
#field_2_7 .gchoice_2_7_0 label::before { content: "\f290"; }
#field_2_7 .gchoice_2_7_1 label::before { content: "\f06c"; }
#field_2_7 .gchoice_2_7_2 label::before { content: "\f466"; }
#field_2_7 .gchoice_2_7_3 label::before { content: "\f2b5"; }
#field_2_7 .gchoice_2_7_4 label::before { content: "\f075"; }

/* Radio layout */
#field_2_7 .gfield_radio {
    display: flex;
    flex-wrap: wrap;
    gap: 24px 40px;
    flex-direction: row;
}

#field_2_7 .gchoice {
    flex: 0 0 calc(33.333% - 27px);
    margin: 0!important;
    position: relative;
}

#field_2_7 input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

#field_2_7 .gchoice label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 11px 28px;
    min-height: 55px;
    width: 100%;
    min-width: 270px;
    background: #0b6b66;
    color: #ffffff;
    border-radius: 999px;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 2px solid transparent;
    box-sizing: border-box;
}

#field_2_7 .gchoice label:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}

#field_2_7 input[type="radio"]:checked + label {
    background: #095c57;
    border-color: #064a46;
    box-shadow: 0 0 0 4px rgba(11, 107, 102, 0.2);
}

@media (max-width: 991px) { /* was 1024px — aligned to Bootstrap lg */
    #field_2_7 .gchoice { flex: 0 0 calc(50% - 20px); }
}

@media (max-width: 640px) {
    #field_2_7 .gchoice { flex: 0 0 100%; }
}

/* Form 2 submit button */
input#gform_submit_button_2 {
    background: #005e5e;
    color: #fff;
    padding: 6px 35px;
    font-size: 1.1em;
}

form#gform_2 input { border-radius: 20px; }
select#input_2_4    { border-radius: 20px; }

/* Form 3 submit button */
input#gform_submit_button_3 {
    background: #245255;
    color: #fff;
}

.gform_heading {
    display: none!important;
}

/* --- Social icons -------------------------------------------------------- */

.ig-social span.zoom-social_icons-list-span {
    background-color: transparent!important;
}

.zoom-social-icons-list--no-labels .zoom-social_icons-list__item {
    display: inline-block;
    margin: 4px;
    border: 1px solid #fff!important; /* !important-flag: wpzoom-social-icons-styles.css resets this to none */
    border-radius: 50%;
    padding: 5px;
}

.footer-widgets-area .lsi-social-icons li {
    border: 1px solid #fff;
    border-radius: 50px;
}

/* --- Ajax search pro ----------------------------------------------------- */

#ajaxsearchpro1_1,
#ajaxsearchpro1_2,
div.asp_m.asp_m_1 {
    background: transparent!important;
    background-image: none!important;
}

@media(min-width: 991px){

    #ajaxsearchpro1_1 .probox .proinput input.orig,
    #ajaxsearchpro1_2 .probox .proinput input.orig,
    div.asp_m.asp_m_1 .probox .proinput input.orig {
        color: #fff!important;
    }

}

a.asp_res_url,
.asp_group_header,
.asp_keyword{
    color:#492774!important;
}

#ajaxsearchpro1_1 .probox .promagnifier .innericon svg,
#ajaxsearchpro1_2 .probox .promagnifier .innericon svg,
div.asp_m.asp_m_1 .probox .promagnifier .innericon svg {
    fill: #fff!important;
}

/* --- Archive page filter pill (archive header) --------------------------- */

.pw-cat-list__show-more {
    padding-left: 0;
}

/* --- circle SVG fill ----------------------------------------------------- */

circle.cls-2 {
    fill: transparent;
}

/* --- Category blog card nth-child background ----------------------------- */

.category-blog .row > .col-12.col-md-6.col-lg-4:nth-child(4n+4) .card {
    background-size: 97% 114%!important;
}


/*
Inline style fixes :-(
*/

.stk-3b242ix .stk-button__inner-text{
    color: #ffffff!important;
}