/* October 14: three responsive banner layers; one dot per slide. */
.cfg-banner-carousel{position:relative;margin:0 24px;background:#e6f4ed;border-radius:0 0 26px 26px;overflow:hidden;isolation:isolate}
.cfg-banner-slide{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:20px;height:clamp(530px,39vw,630px);padding:40px clamp(30px,5.2vw,100px) 65px;background-position:center;background-size:cover;background-repeat:no-repeat;animation:cfg-banner-enter .45s ease-out}
.cfg-banner-slide[hidden]{display:none!important}
.cfg-banner-everyday{background-image:url('banner-everyday-v11.webp')}
.cfg-banner-minis{background-image:url('banner-minis-v11.webp')}
.cfg-banner-droppers{background-image:url('banner-droppers-v11.webp')}
.cfg-banner-copy{position:relative;z-index:2;max-width:660px;color:#12635f}
.cfg-banner-copy .eyebrow{font-size:11px;letter-spacing:.18em;line-height:1.6;margin:0 0 22px;color:#207b76}
.cfg-banner-copy h1,.cfg-banner-copy h2{font-size:clamp(43px,4.4vw,74px);line-height:1.04;letter-spacing:-.035em;margin:0 0 24px;color:#008f98}
.cfg-banner-copy h1 span{color:#2db956}
.cfg-banner-copy>p:not(.eyebrow){font-size:clamp(17px,1.3vw,21px);line-height:1.5;max-width:510px;margin:0 0 27px}
.cfg-banner-copy .button{background:#009e9c;color:white;border:0;min-height:52px;padding:13px 28px;font-size:18px;box-shadow:0 8px 24px #0e665d15}
.cfg-banner-copy .button:hover{background:#087d7a}
.cfg-banner-products{display:flex;align-items:flex-end;justify-content:center;gap:12px;min-width:0;padding:10px 0 5px}
.cfg-banner-bottle{display:block;overflow:visible;flex:0 1 31%;width:31%;height:340px;max-width:185px;filter:drop-shadow(0 17px 11px #285b4328)}
.cfg-banner-bottle-flo{height:355px;max-width:170px}
.cfg-banner-bottle-proteo{height:320px;max-width:220px;width:36%;flex-basis:36%}
.cfg-banner-lineup{min-width:0;filter:drop-shadow(0 20px 13px #083d3933)}
.cfg-banner-lineup svg{display:block;width:100%;height:370px;overflow:visible}
.cfg-banner-minis .cfg-banner-copy,.cfg-banner-minis .cfg-banner-copy h2{color:#fff}
.cfg-banner-minis .cfg-banner-copy h2{font-family:Montserrat,sans-serif;font-weight:750;font-size:clamp(40px,4vw,66px);line-height:1.08}
.cfg-banner-minis .cfg-banner-copy h2 span{color:#a1e88c}
.cfg-banner-minis .eyebrow{color:#daf2de}
.cfg-banner-minis .button{background:#f8faeb;color:#075d5d}
.cfg-banner-minis .button:hover{background:#d9f1cf}
.cfg-banner-droppers .cfg-banner-copy{padding-top:180px}
.cfg-banner-droppers .cfg-banner-copy h2{font-family:Montserrat,sans-serif;font-weight:700;font-size:clamp(36px,3.5vw,58px)}
.cfg-banner-droppers .cfg-banner-copy h2 em{font-family:Petrona,Georgia,serif;font-weight:500}
.cfg-banner-droppers .eyebrow{color:#106f71;margin-bottom:13px}
.cfg-banner-dropper-lineup svg{height:330px}
.cfg-banner-carousel .cfg-hero-controls{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:0;z-index:5;padding:0;border:0;background:none;backdrop-filter:none}
.cfg-banner-carousel .cfg-hero-controls button{display:grid;place-items:center;position:relative;width:40px;height:40px;min-height:40px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}
.cfg-banner-carousel .cfg-hero-controls button::before{content:none}
.cfg-banner-carousel .cfg-hero-controls button::after{content:'';position:static;width:10px;height:10px;border:1px solid #175c59;border-radius:50%;background:#fff9;box-shadow:0 1px 4px #ffffff80;transition:background .2s}
.cfg-banner-carousel .cfg-hero-controls button[aria-pressed=true]::after{background:#176d67;border-color:#176d67}
@keyframes cfg-banner-enter{from{opacity:.7}to{opacity:1}}
/* Larger WooCommerce Blocks cart and checkout details, without changing totals or payment logic. */
body.woocommerce-cart .wc-block-cart{font-size:18px}
body.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image{width:170px;padding-right:24px}
body.woocommerce-cart .wc-block-cart-item__image img{width:146px!important;height:160px!important;max-width:none;object-fit:contain}
body.woocommerce-cart .wc-block-cart .wc-block-components-product-name{font-size:24px!important;font-weight:600;line-height:1.3}
body.woocommerce-cart .wc-block-components-product-price{font-size:21px;line-height:1.4}
body.woocommerce-cart .wc-block-components-product-metadata{font-size:16px;line-height:1.5}
body.woocommerce-cart .wc-block-components-quantity-selector{width:140px;min-height:46px;margin-top:8px;border-radius:8px}
body.woocommerce-cart .wc-block-components-quantity-selector__input{font-size:19px!important;font-weight:650;min-height:46px!important}
body.woocommerce-cart .wc-block-components-quantity-selector__button{font-size:23px;width:42px;min-width:42px;min-height:46px}
body.woocommerce-cart .wc-block-cart-item__remove-link{min-width:44px;min-height:44px}
body.woocommerce-cart .wc-block-cart .wc-block-cart-items__header th,body.woocommerce-cart .wc-block-cart .wc-block-cart__totals-title{font-size:15px;letter-spacing:.04em}
body.woocommerce-cart .wc-block-components-totals-item{font-size:20px}
body.woocommerce-cart .wc-block-cart__submit-button{font-size:19px;min-height:56px}
body.woocommerce-checkout .wc-block-components-order-summary-item{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:18px;row-gap:7px;padding:22px 0;align-items:start}
body.woocommerce-checkout .wc-block-components-order-summary-item__image{grid-row:1/3;grid-column:1;width:96px!important;flex-basis:96px!important;padding:0;margin:0}
body.woocommerce-checkout .wc-block-components-order-summary-item__image img{width:96px!important;height:112px!important;max-width:none;object-fit:contain}
body.woocommerce-checkout .wc-block-components-order-summary-item__quantity{width:auto;min-width:28px;height:28px;line-height:26px;font-size:16px;font-weight:700;top:-4px;right:-6px;background:#edf6e9;color:#174f45;border:1px solid #a7c6af;border-radius:50%;padding:0 5px}
body.woocommerce-checkout .wc-block-components-order-summary-item__description{grid-column:2;grid-row:1;min-width:0;padding:0}
body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name{font-family:'Sofia Sans',sans-serif;font-size:21px!important;font-weight:650;line-height:1.25;letter-spacing:0;margin:0 0 7px}
body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-price{font-size:19px}
body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata{font-size:15px;line-height:1.4}
body.woocommerce-checkout .wc-block-components-order-summary-item__total-price{grid-column:2;grid-row:2;padding:0;text-align:left;font-size:19px;font-weight:600}
body.woocommerce-checkout .wc-block-components-totals-item{font-size:18px}
body.woocommerce-checkout .wc-block-components-totals-footer-item{font-size:23px}
@media(min-width:1100px){body.woocommerce-checkout .wc-block-checkout__sidebar{width:40%}body.woocommerce-checkout .wc-block-checkout__main{width:60%;padding-right:5%}}
@media(max-width:1000px){.cfg-banner-slide{padding-left:36px;padding-right:36px;gap:12px}.cfg-banner-bottle{height:280px}.cfg-banner-bottle-flo{height:300px}.cfg-banner-bottle-proteo{height:270px}.cfg-banner-lineup svg{height:300px}.cfg-banner-copy h1{font-size:49px}}
@media(max-width:760px){
 .cfg-banner-carousel{margin:0;border-radius:0 0 22px 22px}
 .cfg-banner-slide{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;height:650px;gap:14px;padding:32px 26px 54px;background-position:55% center}
 .cfg-banner-copy{max-width:510px;margin:auto;width:100%}
 .cfg-banner-copy .eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:14px}
 .cfg-banner-copy h1,.cfg-banner-copy h2,.cfg-banner-minis .cfg-banner-copy h2{font-size:clamp(38px,7vw,52px);margin-bottom:16px}
 .cfg-banner-copy>p:not(.eyebrow){font-size:17px;line-height:1.4;margin-bottom:19px;max-width:430px}
 .cfg-banner-copy .button{font-size:17px;min-height:48px;padding:11px 23px}
 .cfg-banner-products{width:100%;max-width:440px;margin:auto;gap:13px;padding:0}
 .cfg-banner-bottle{height:220px;max-width:120px}.cfg-banner-bottle-flo{height:235px;max-width:110px}.cfg-banner-bottle-proteo{height:213px;max-width:155px}
 .cfg-banner-lineup{width:100%;max-width:470px;margin:auto}
 .cfg-banner-lineup svg{height:245px}
 .cfg-banner-droppers{background-position:65% center}
 .cfg-banner-droppers .cfg-banner-copy{padding-top:0}
 .cfg-banner-droppers .cfg-banner-copy h2{font-size:clamp(33px,6.5vw,46px)}
 .cfg-banner-dropper-lineup svg{height:225px}
 body.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image{width:110px;padding-right:14px}
 body.woocommerce-cart .wc-block-cart-item__image img{width:96px!important;height:118px!important}
 body.woocommerce-cart .wc-block-cart .wc-block-components-product-name{font-size:21px!important}
 body.woocommerce-cart .wc-block-components-product-price{font-size:19px}
 body.woocommerce-cart .wc-block-components-product-metadata{font-size:15px}
}
@media(max-width:400px){.cfg-banner-slide{padding-left:22px;padding-right:22px;height:640px}.cfg-banner-copy h1,.cfg-banner-minis .cfg-banner-copy h2{font-size:38px}.cfg-banner-bottle{height:190px}.cfg-banner-bottle-flo{height:210px}.cfg-banner-bottle-proteo{height:190px}.cfg-banner-lineup svg{height:215px}}
@media(prefers-reduced-motion:reduce){.cfg-banner-slide{animation:none}.cfg-banner-carousel *{transition:none!important}}

.cfg-banner-carousel:has(.cfg-banner-minis:not([hidden])) .cfg-hero-controls button::after{border-color:#fff;background:transparent;box-shadow:none}
.cfg-banner-carousel:has(.cfg-banner-minis:not([hidden])) .cfg-hero-controls button[aria-pressed=true]::after{background:#fff}
body.woocommerce-cart .wc-block-components-product-metadata p,body.woocommerce-checkout .wc-block-components-product-metadata p{font-size:15px!important;line-height:1.45!important}
body.woocommerce-checkout .wc-block-components-order-summary-item__quantity>span[aria-hidden]{color:#174f45!important;font-size:16px!important;font-weight:700}
@media(max-width:760px){
 body.woocommerce-cart .wc-block-cart table.wc-block-cart-items{width:100%;table-layout:fixed}
 body.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px 16px;width:100%;min-width:0;padding:22px 0}
 body.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image{grid-area:1 / 1 / 3 / 2;width:96px!important;padding:0!important}
 body.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__product{grid-area:1 / 2 / 2 / 3;min-width:0;padding:0}
 body.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__total{grid-area:2 / 2 / 3 / 3;display:flex;align-items:center;justify-content:space-between;width:100%;min-width:0;padding:8px 0 0;border-top:1px solid #dbe5d9}
 body.woocommerce-cart .wc-block-cart-item__total:before{content:'Item total';font-size:14px;color:#5b7264}
 body.woocommerce-cart .wc-block-cart-item__quantity{flex-wrap:wrap;gap:6px}
 body.woocommerce-cart .wc-block-cart-item__wrap{min-width:0}
 body.woocommerce-cart .wc-block-components-product-name{overflow-wrap:anywhere}
}
