/*
Theme Name: Clairmont
Theme URI: https://getclairmont.com/
Author: Clairmont
Description: Clairmont store chrome and page looks from the Clairmont Shopify theme (ht-site-header, ht-site-footer, Horizon pages), with a Shopify-style one-page checkout for WooCommerce.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: clairmont
*/

/* copy: internal -- styles. Values measured on the Shopify store renders (2026-09-26 snapshot) and the Horizon settings. */

/* ---------------------------------------------------------------- fonts (the static pages' Inter files) */
@font-face{font-family:'Inter';font-style:normal;font-weight:300 800;font-display:swap;src:url(assets/fonts/cm-inter-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:300 800;font-display:swap;src:url(assets/fonts/cm-inter-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------------------------------------------------------------- base (Horizon: Inter 14px / 1.6, #111 on #fff) */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:#fff;color:#111;font-family:Inter,sans-serif;font-size:14px;line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;height:auto;vertical-align:middle}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6{font-family:Inter,sans-serif;font-weight:500;letter-spacing:normal;margin:0}
p{margin:0}
.sr-only,.screen-reader-text,.cm-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-to-content:focus{position:fixed!important;top:8px!important;left:8px!important;width:auto!important;height:auto!important;clip:auto!important;margin:0!important;padding:10px 14px!important;z-index:200;background:#fff;color:#111}
.cm-hp,.cmf__form .cm-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;flex:none!important;opacity:0!important;pointer-events:none!important}
body.admin-bar .cmh{top:32px}
@media (max-width:782px){body.admin-bar .cmh{top:46px}}
main.content-for-layout{display:block;min-height:40vh}
.cm-icon{width:16px;height:16px;flex:none}
.cm-icon--caret{width:10px;height:6px}
.cm-muted{color:rgba(17,17,17,.7)}

/* ---------------------------------------------------------------- buttons and inputs (Horizon: #111 primary, radius 0; inputs #E3DED6 border) */
.cm-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:16px 24px;border:0;border-radius:0;background:#111;color:#fff!important;font-size:14px;line-height:22.4px;font-weight:400;text-decoration:none;cursor:pointer;transition:opacity .2s}
.cm-button:hover{opacity:.88}
.cm-button--wide{padding-left:32px;padding-right:32px}
.cm-button--full{display:flex;width:100%}
.cm-input{display:block;width:100%;height:56px;padding:16px 20px;border:1px solid #E3DED6;border-radius:0;background:#fff;color:#111;font-size:14px;line-height:22.4px;outline:none;-webkit-appearance:none;appearance:none}
.cm-input::placeholder{color:rgba(17,17,17,.6)}
.cm-input:focus{border-color:#111}
.cm-input--area{height:258px;resize:vertical}
@media (max-width:749px){.cm-input{height:60px;font-size:16px;line-height:25.6px}.cm-input--area{height:290px}}

/* ---------------------------------------------------------------- rich text (Horizon .rte) */
.cm-rte{font-size:14px;line-height:1.6}
.cm-rte p{margin:14px 0}
.cm-rte>:first-child{margin-top:0}
.cm-rte>:last-child{margin-bottom:0}
.cm-rte h2{font-size:32px;line-height:1;font-weight:500;margin:40px 0 8px}
.cm-rte h3{font-size:24px;line-height:1.2;font-weight:500;margin:32px 0 8px}
.cm-rte h2:first-child,.cm-rte h3:first-child{margin-top:0}
.cm-rte ul,.cm-rte ol{margin:14px 0;padding-left:21px}
.cm-rte li{margin:0}
.cm-rte strong,.cm-rte b{font-weight:700}
.cm-rte a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.cm-rte a:hover{text-decoration-color:transparent}
.cm-rte details{margin:0}
.cm-rte summary{display:block;cursor:pointer;padding:11.2px 0;list-style:none}
.cm-rte summary::-webkit-details-marker{display:none}
.cm-rte details>p{margin:0 0 14px}

/* ---------------------------------------------------------------- page layouts */
.cm-page{padding:40px 40px 80px}
.cm-page__col{max-width:672px;margin:0 auto}
.cm-page__title{font-size:32px;line-height:1;font-weight:500;margin:0 0 32px}
.cm-page--contact{padding-bottom:84px}
.cm-page--contact .cm-page__title{text-align:center}
.cm-page--contact .cm-rte{max-width:320px;margin:0 auto;text-align:center}
.cm-page--contact .cm-rte ul{list-style-position:inside;padding-left:0}
.cm-contact{max-width:600px;margin:32px auto 0}
.cm-contact__form{display:flex;flex-direction:column;gap:14px}
.cm-contact__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cm-button--submit{align-self:flex-start}
.cm-form-msg{margin:0 0 14px;padding:12px 16px;border:1px solid #E3DED6}
.cm-form-msg--err{border-color:#b3261e;color:#b3261e}
@media (max-width:749px){
 .cm-page{padding:28px 16px 64px}
 .cm-page--contact .cm-page__title{margin-bottom:24px}
 .cm-contact{margin-top:22px}
 .cm-contact__row{grid-template-columns:1fr}
}

/* Shopify policy pages */
.shopify-policy__container.cm-policy{max-width:566px;margin:0 auto;padding:20px 16px 40px;font-size:14px}
.shopify-policy__title{text-align:center}
.shopify-policy__title h1{font-size:40px;line-height:1;font-weight:500;margin:0 0 10px}
@media (max-width:749px){.shopify-policy__title h1{font-size:32px}}

/* 404 (templates/404.json) */
.cm-404{display:flex;flex-direction:column;align-items:center;gap:20px;padding:100px 16px;text-align:center}
.cm-404__title{font-size:24px;line-height:1.2;font-weight:500}
.cm-404__text{margin-bottom:-4px}
.cm-list{max-width:1520px;margin:0 auto;padding:0 40px 80px}
.cm-list__title{font-size:20px;line-height:1;font-weight:500;text-align:center;margin:0 0 36px}
@media (max-width:749px){.cm-404{padding:72px 16px}.cm-list{padding:0 0 64px}.cm-list__title{margin-bottom:24px}}

/* ---------------------------------------------------------------- collection / search listing (Horizon main-collection) */
.cm-coll{max-width:1520px;margin:0 auto;padding:0 40px 80px}
.cm-coll__head{padding:48px 0 48px}
.cm-coll__title{font-size:32px;line-height:1;font-weight:500}
.cm-coll__desc{margin-top:12px}
.cm-coll__empty{padding:24px 0 40px}
.cm-facets{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 0;margin-bottom:8px;position:relative;z-index:5}
.cm-facets__filters{display:flex;align-items:center;gap:20px}
.cm-facets__right{display:flex;align-items:center;gap:20px}
.cm-facets__count{color:rgba(17,17,17,.75)}
.cm-facets__toggle{display:none}
.cm-facet{position:relative}
.cm-facet__summary{display:flex;align-items:center;gap:5px;height:44px;cursor:pointer;list-style:none;user-select:none;color:rgba(17,17,17,.75)}
.cm-facet__summary span{color:#111}
.cm-facet__summary::-webkit-details-marker{display:none}
.cm-facet[open] .cm-icon--caret{transform:rotate(180deg)}
.cm-facet__panel{position:absolute;top:calc(100% + 4px);left:0;min-width:180px;background:#fff;border:1px solid #E3DED6;padding:12.8px;z-index:20;box-shadow:0 10px 30px rgba(17,17,17,.06)}
.cm-facet--sort .cm-facet__panel{left:auto;right:0;padding:9px}
.cm-facet__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11.2px}
.cm-check{display:flex;align-items:center;gap:6px;cursor:pointer;line-height:16px;white-space:nowrap}
.cm-check input{position:absolute;opacity:0;width:1px;height:1px}
.cm-check__box{width:16px;height:16px;border:1px solid #111;border-radius:0;flex:none;display:inline-block;position:relative}
.cm-check input:checked+.cm-check__box{background:#111}
.cm-check input:checked+.cm-check__box::after{content:"";position:absolute;left:5px;top:1px;width:4px;height:9px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.cm-check input:focus-visible+.cm-check__box{outline:2px solid #111;outline-offset:2px}
.cm-check.is-disabled{opacity:.45;cursor:default}
.cm-facet__panel--price{min-width:360px}
.cm-price-range{display:flex;align-items:center;gap:13px}
.cm-price-field{display:flex;align-items:center;flex:1;height:48px;border:1px solid #E3DED6;padding:0 12.8px;gap:6px}
.cm-price-field span{color:rgba(17,17,17,.75)}
.cm-price-field input{width:100%;border:0;outline:none;background:transparent;font-size:14px;-moz-appearance:textfield}
.cm-price-field input::-webkit-outer-spin-button,.cm-price-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cm-price-note{margin-top:10px;color:rgba(17,17,17,.75)}
.cm-sort-opt{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 25px;min-width:180px;cursor:pointer;white-space:nowrap;position:relative}
.cm-sort-opt input{position:absolute;opacity:0;width:1px;height:1px}
.cm-sort-opt input:checked+span{font-weight:500}
.cm-sort-opt input:checked+span::before{content:"";position:absolute;left:9px;top:12px;width:4px;height:8px;border:solid #111;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.cm-sort-opt:hover{background:rgba(17,17,17,.04)}
.cm-facet--sort-mobile{display:none}
.cm-density{display:flex;align-items:center;gap:5px}
.cm-density__btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:4px;border:0;border-radius:3px;background:transparent;color:rgba(17,17,17,.45);cursor:pointer}
.cm-density__btn svg{width:20px;height:20px}
.cm-density__btn[aria-pressed="true"]{background:rgba(17,17,17,.08);color:#111}
.cm-density__btn--single{display:none}
.cm-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px}
.cm-grid[data-view="dense"]{grid-template-columns:repeat(6,minmax(0,1fr))}
.cm-grid__item{min-width:0}
.cm-card{display:flex;flex-direction:column;gap:4px;color:#111;text-decoration:none}
.cm-card__media{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#fff}
.cm-card__img{display:block;width:100%;height:100%;object-fit:cover}
.cm-badge{position:absolute;top:8px;right:8px;background:#fff;color:#111;font-size:13px;line-height:20.8px;padding:4px 10px;border-radius:0}
.cm-card__title{display:block;padding-top:4px;font-size:14px;line-height:22.4px}
.cm-card:hover .cm-card__title{text-decoration:underline;text-underline-offset:2px}
.cm-card__price{display:block;font-size:12px;line-height:14.4px;font-weight:500}
.cm-card__price .woocommerce-Price-amount{white-space:nowrap}
.cm-card__was{color:rgba(17,17,17,.8);margin-left:2px}
.cm-pagination{margin:40px 0 0;display:flex;justify-content:center}
.cm-pagination ul{list-style:none;display:flex;gap:6px;margin:0;padding:0}
.cm-pagination a,.cm-pagination span{display:inline-flex;min-width:36px;height:36px;align-items:center;justify-content:center;text-decoration:none}
.cm-pagination .current{border-bottom:1px solid #111}
@media (max-width:999px){.cm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cm-grid[data-view="dense"]{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:749px){
 .cm-coll{padding:0 0 64px}
 .cm-coll__head{padding:34px 16px 28px}
 .cm-facets{padding:0 16px;margin-bottom:8px;flex-wrap:wrap;gap:0}
 .cm-facets__toggle{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0;border:0;background:none;cursor:pointer;color:#111}
 .cm-facets__toggle .cm-icon{width:18px;height:18px}
 .cm-facets__filters{display:none;order:3;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:4px 0 12px;border-top:1px solid #E3DED6}
 .cm-facets.is-open .cm-facets__filters{display:flex}
 .cm-facets__filters .cm-facet{border-bottom:1px solid #E3DED6}
 .cm-facets__filters .cm-facet__summary{justify-content:space-between}
 .cm-facet__panel,.cm-facet--sort .cm-facet__panel{position:static;box-shadow:none;border:0;padding:0 0 14px;min-width:0}
 .cm-facet__panel--price{min-width:0}
 .cm-facet--sort-mobile{display:block}
 .cm-facets__count,.cm-facet--sort{display:none}
 .cm-density__btn--single{display:inline-flex}
 .cm-density__btn--dense{display:none}
 .cm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 12px}
 .cm-grid[data-view="single"]{grid-template-columns:minmax(0,1fr)}
 .cm-grid[data-view="dense"]{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cm-card{gap:4px}
 .cm-card__title,.cm-card__price{padding-left:8px;padding-right:8px}
 .cm-card__price{padding-bottom:4px}
 .cm-grid--list{padding:0}
}

/* search page (sections/search-header.liquid) */
.cm-search-head{max-width:1520px;margin:0 auto;padding:40px 40px 0}
.cm-search-head__title{font-size:32px;line-height:1;font-weight:500;margin:0 0 24px}
.cm-search-form{position:relative;display:flex;align-items:center;width:50%;min-width:280px}
.cm-search-form__icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);display:inline-flex;color:#111}
.cm-search-form__icon .cm-icon{width:20px;height:20px}
.cm-search-form__input{width:100%;height:56px;padding:16px 70px 16px 48px;border:1px solid #E3DED6;border-radius:0;background:#fff;font-size:14px;outline:none;-webkit-appearance:none;appearance:none}
.cm-search-form__input:focus{border-color:#111}
.cm-search-form__input::-webkit-search-cancel-button{-webkit-appearance:none}
.cm-search-form__reset{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:13px;color:rgba(17,17,17,.75)}
.cm-search-none{margin:20px 0 0}
.cm-search-head+.cm-coll .cm-facets{margin-top:24px}
@media (max-width:749px){.cm-search-head{padding:28px 16px 0}.cm-search-form{width:100%;min-width:0}.cm-search-form__input{font-size:16px}}

/* ---------------------------------------------------------------- cart (Horizon main-cart) */
.cm-cart-page{width:100%}
.cm-cart-page .woocommerce-notices-wrapper:empty{display:none}
.cm-cart-page .woocommerce-notices-wrapper{padding:16px 40px 0}
.cm-cart{display:grid;grid-template-columns:minmax(0,1fr) max(400px,calc((100vw - 1440px) / 2 + 400px));column-gap:48px;padding-left:max(40px,calc((100vw - 1440px) / 2))}
.cm-cart__main{padding:24px 0 48px;min-width:0}
.cm-cart__title h1{display:inline-flex;align-items:center;gap:11.2px;font-size:20px;line-height:1;font-weight:500}
.cm-bubble{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:rgba(17,17,17,.1);color:#111;font-size:13px;font-weight:400;line-height:1}
.cm-cart__items{margin-top:16px;container-type:inline-size}
.cm-line{display:grid;grid-template-columns:clamp(2.5rem,15cqi,7.5rem) minmax(0,1fr) minmax(6rem,auto);grid-template-areas:"media details price" "media quantity price";column-gap:14.4px;align-items:start;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid rgba(17,17,17,.1)}
.cm-line:last-of-type{border-bottom:0;padding-bottom:0;margin-bottom:0}
.cm-line__media{grid-area:media}
.cm-line__media a,.cm-line__media img{display:block}
.cm-line__media img{width:100%;aspect-ratio:.8;object-fit:cover}
.cm-line__details{grid-area:details;min-width:0;color:rgba(17,17,17,.7);font-size:14px}
.cm-line__title{display:block;font-size:16px;line-height:1.3;color:#111;text-decoration:none}
.cm-line__title:hover{text-decoration:underline}
.cm-line__variant,.cm-line__unit{margin-top:2px;font-size:14px}
.cm-line__unit s{color:rgba(17,17,17,.6)}
.cm-line__qty{grid-area:quantity;display:flex;align-items:center;gap:8px;margin-top:8px}
.cm-qty{display:inline-flex;align-items:center;height:44px;border:1px solid #E3DED6}
.cm-qty__btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:100%;padding:0;border:0;background:none;cursor:pointer;color:#111}
.cm-qty__btn svg{width:16px;height:16px}
.cm-qty .quantity{display:inline-flex}
.cm-qty .quantity label{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}
.cm-qty input.qty{width:40px;height:42px;padding:0;border:0;text-align:center;font-size:14px;background:transparent;-moz-appearance:textfield}
.cm-qty input.qty::-webkit-outer-spin-button,.cm-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cm-line__remove a.remove{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:#111;text-decoration:none}
.cm-line__remove svg{width:20px;height:20px}
.cm-line__price{grid-area:price;text-align:right;font-size:14px;min-width:6rem}
.cm-cart__actions{display:block}
.cm-cart__summary{background:#E3DED6;padding:24px 40px 48px}
.cm-cart__summary .cart-collaterals{max-width:400px}
.cm-cart-sum{display:flex;flex-direction:column}
.cm-acc{border-top:1px solid rgba(17,17,17,.1);border-bottom:1px solid rgba(17,17,17,.1)}
.cm-acc__summary{display:flex;align-items:center;justify-content:space-between;padding:14px 0;cursor:pointer;list-style:none}
.cm-acc__summary::-webkit-details-marker{display:none}
.cm-acc__icon svg{width:16px;height:16px;transition:transform .2s}
.cm-acc[open] .cm-acc__icon svg{transform:rotate(45deg)}
.cm-acc__body{padding:0 0 16px}
.cm-disc{display:flex;gap:8px}
.cm-disc__input{flex:1;min-width:0;height:44px;padding:0 14px;border:1px solid rgba(17,17,17,.25);background:#fff;font-size:14px;outline:none;border-radius:0}
.cm-disc__input:focus{border-color:#111}
.cm-disc__btn{height:44px;padding:0 20px;border:0;background:#111;color:#fff;cursor:pointer;font-size:14px;border-radius:0}
.cm-cart-sum__rows{display:flex;flex-direction:column;gap:6px;padding:16px 0 0}
.cm-cart-sum__row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cm-cart-sum__row--disc span:first-child{display:inline-flex;align-items:center;gap:6px}
.cm-cart-sum__row .woocommerce-remove-coupon{margin-left:6px;font-size:12px;color:rgba(17,17,17,.7)}
.cm-cart-sum__total{padding-top:20px;font-size:18px;font-weight:500}
.cm-cart-sum__total .woocommerce-Price-amount{font-weight:500}
.cm-cart-sum__tax{margin-top:4px;color:rgba(17,17,17,.8)}
.cm-cart-sum__tax small{font-size:12px}
.cm-cart-sum__tax a{color:inherit;text-decoration:underline}
.cm-cart-sum__ctas{margin-top:20px;display:flex;flex-direction:column;gap:10px}
.cm-cart-sum__ctas .checkout-button{min-height:54px}
.cm-cart-sum__ctas #wc-stripe-express-checkout-element{margin-top:0!important}
.cm-cart-sum__ctas #wc-stripe-express-checkout-button-separator{display:none!important}
.cm-cart-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:104px 16px 80px}
.cm-cart-empty__title{font-size:20px;line-height:1;font-weight:500}
.cm-cart-empty__body{display:flex;flex-direction:column;align-items:center;margin-top:19px}
.cm-cart-empty__body p{margin-bottom:14px}
.cm-cart-empty__body a:not(.cm-button){text-decoration:underline;text-underline-offset:2px}
.cm-cart-empty__body .cm-button{margin-top:12.8px}
.offer-related{padding:32px 0}
.offer-related__in{max-width:1520px;margin:0 auto;padding:0 40px}
.offer-related__title{font-size:24px;line-height:1.2;font-weight:500;text-align:center;margin:0 0 20px}
.offer-related__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.offer-related__card{display:block;text-decoration:none;color:inherit}
.offer-related__img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:6px;display:block}
.offer-related__name{margin-top:10px;font-size:14px;line-height:1.3}
.offer-related__price{font-size:14px;margin-top:4px}
.offer-related__price s{opacity:.55;margin-left:6px}
@media (max-width:999px){.cm-cart{grid-template-columns:minmax(0,1fr) 340px;column-gap:32px}.cm-cart__summary{padding:24px 24px 40px}}
@media (max-width:749px){
 .cm-cart{grid-template-columns:1fr;padding:0}
 .cm-cart__main{padding:24px 16px 24px}
 .cm-cart__summary{padding:24px 16px 32px}
 .cm-cart__summary .cart-collaterals{max-width:none}
 .cm-line{grid-template-columns:clamp(2.5rem,15cqi,7.5rem) minmax(0,1fr) auto}
 .cm-cart-empty{padding:56px 16px 72px}
 .offer-related__in{padding:0 16px}
 .offer-related__grid{grid-template-columns:1fr 1fr;gap:12px}
 .cm-cart-page .woocommerce-notices-wrapper{padding:16px 16px 0}
}

/* ---------------------------------------------------------------- notices (WooCommerce) */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-error,.woocommerce-message,.woocommerce-info{list-style:none;margin:0 0 16px;padding:12px 16px;border:1px solid #E3DED6;background:#fff;color:#111}
.woocommerce-error{border-color:#b3261e;color:#b3261e}
.woocommerce-error li,.woocommerce-message li,.woocommerce-info li{margin:0}
.woocommerce-message a.button,.woocommerce-info a.button,.woocommerce-error a.button{float:right;margin-left:12px;text-decoration:underline;color:inherit;background:none;border:0;padding:0}

/* ---------------------------------------------------------------- account (WooCommerce my-account in the Horizon page look) */
.cm-account{max-width:1520px;margin:0 auto;padding:40px 40px 80px}
.cm-account .woocommerce>h2,.cm-account form.login,.cm-account form.lost_reset_password,.cm-account .woocommerce-ResetPassword{max-width:400px;margin-left:auto;margin-right:auto}
.cm-account .woocommerce>h2{font-size:32px;line-height:1;font-weight:500;text-align:center;margin-bottom:32px}
.cm-account .form-row{margin:0 0 14px}
.cm-account .form-row label{display:block;margin-bottom:6px}
.cm-account .form-row .required{color:inherit;text-decoration:none;border:0}
.cm-account input.input-text,.cm-account input[type="text"],.cm-account input[type="email"],.cm-account input[type="password"],.cm-account select,.cm-account textarea{display:block;width:100%;height:56px;padding:16px 20px;border:1px solid #E3DED6;border-radius:0;background:#fff;font-size:14px;outline:none}
.cm-account textarea{height:auto}
.cm-account input:focus{border-color:#111}
.cm-account .password-input{position:relative;display:block}
.cm-account .show-password-input{position:absolute;right:14px;top:50%;transform:translateY(-50%);border:0;background:none;cursor:pointer;width:24px;height:24px;padding:0;opacity:.6}
.cm-account .show-password-input::after{content:"";display:block;width:18px;height:12px;border:1.5px solid #111;border-radius:50%}
.cm-account .woocommerce-form-login__rememberme{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.cm-account button.button,.cm-account .button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:16px 32px;border:0;border-radius:0;background:#111;color:#fff;font-size:14px;cursor:pointer;text-decoration:none}
.cm-account form.login button.button{width:100%}
.cm-account .lost_password{text-align:center;margin-top:16px}
.cm-account .lost_password a{text-decoration:underline;text-underline-offset:2px}
.cm-account .woocommerce{display:block}
.cm-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0 0 32px;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid #E3DED6}
.cm-account .woocommerce-MyAccount-navigation a{display:inline-block;padding:10px 0;text-decoration:none}
.cm-account .woocommerce-MyAccount-navigation .is-active a{border-bottom:1px solid #111}
.cm-account table{width:100%;border-collapse:collapse}
.cm-account th,.cm-account td{padding:12px 8px;border-bottom:1px solid #E3DED6;text-align:left}
@media (max-width:749px){.cm-account{padding:28px 16px 64px}}

/* ---------------------------------------------------------------- product page fallback (until the hand-built page exists) */
.cm-wc-wrap{max-width:1520px;margin:0 auto;padding:40px}
.cm-wc-wrap div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:start}
.cm-wc-wrap .woocommerce-product-gallery{position:relative;margin:0}
.cm-wc-wrap .woocommerce-product-gallery__wrapper{margin:0}
.cm-wc-wrap .woocommerce-product-gallery img{display:block;width:100%;height:auto}
.cm-wc-wrap .flex-control-thumbs{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:8px 0 0;padding:0}
.cm-wc-wrap .flex-control-thumbs img{cursor:pointer;opacity:.6}
.cm-wc-wrap .flex-control-thumbs img.flex-active{opacity:1}
.cm-wc-wrap .woocommerce-product-gallery__trigger{position:absolute;top:12px;right:12px;z-index:3;width:36px;height:36px;background:#fff;border-radius:50%;text-indent:-9999px;overflow:hidden}
.cm-wc-wrap .product_title{font-size:32px;line-height:1.1;font-weight:500;margin-bottom:12px}
.cm-wc-wrap .summary .price{font-size:18px;margin-bottom:16px}
.cm-wc-wrap .summary .price del{color:rgba(17,17,17,.6);margin-right:8px}
.cm-wc-wrap .summary .price ins{text-decoration:none}
.cm-wc-wrap .woocommerce-product-details__short-description{margin-bottom:20px}
.cm-wc-wrap table.variations{width:100%;border-collapse:collapse;margin-bottom:16px}
.cm-wc-wrap table.variations th,.cm-wc-wrap table.variations td{display:block;text-align:left;padding:0}
.cm-wc-wrap table.variations th{margin:12px 0 6px;font-weight:500}
.cm-wc-wrap table.variations select{width:100%;height:48px;padding:0 14px;border:1px solid #E3DED6;background:#fff;border-radius:0}
.cm-wc-wrap .reset_variations{display:inline-block;margin-top:8px;font-size:13px}
.cm-wc-wrap .woocommerce-variation-price{margin:8px 0 12px}
.cm-wc-wrap form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.cm-wc-wrap form.cart .quantity input{width:72px;height:54px;border:1px solid #E3DED6;text-align:center;border-radius:0}
.cm-wc-wrap .single_add_to_cart_button{flex:1;min-height:54px;padding:16px 24px;border:0;border-radius:0;background:#111;color:#fff;cursor:pointer}
.cm-wc-wrap .single_add_to_cart_button.disabled{opacity:.5}
.cm-wc-wrap .product_meta{display:none}
.cm-wc-wrap .woocommerce-tabs{grid-column:1/-1}
.cm-wc-wrap .woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:24px;margin:0 0 16px;padding:0;border-bottom:1px solid #E3DED6}
.cm-wc-wrap .woocommerce-tabs ul.tabs li a{display:inline-block;padding:10px 0;text-decoration:none}
.cm-wc-wrap .woocommerce-tabs ul.tabs li.active a{border-bottom:1px solid #111}
.cm-wc-wrap .related,.cm-wc-wrap .upsells{grid-column:1/-1}
.cm-wc-wrap .related>h2,.cm-wc-wrap .upsells>h2{font-size:24px;margin:24px 0 16px}
.cm-wc-wrap ul.products{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px;margin:0;padding:0}
.cm-wc-wrap ul.products li.product a{text-decoration:none;color:inherit}
.cm-wc-wrap ul.products li.product .woocommerce-loop-product__title{font-size:14px;font-weight:400;margin:8px 0 2px}
.cm-wc-wrap ul.products li.product .price{font-size:12px;font-weight:500}
.cm-wc-wrap ul.products li.product .button{display:none}
.cm-wc-wrap .onsale{position:absolute;top:8px;right:8px;z-index:2;background:#fff;font-size:13px;padding:4px 10px}
.cm-wc-wrap .woocommerce-product-gallery .onsale{display:none}
@media (max-width:749px){.cm-wc-wrap{padding:16px}.cm-wc-wrap div.product{grid-template-columns:1fr;gap:24px}.cm-wc-wrap ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
