/* Ovrform account access and commerce components. */
.ovr-modal-open{overflow:hidden}
.ovr-dialog,.ovr-cart-drawer{color:var(--ink,#0f1115);font-family:var(--sans,Archivo,Arial,sans-serif);box-sizing:border-box}
.ovr-dialog *,.ovr-cart-drawer *{box-sizing:border-box}
.ovr-dialog::backdrop,.ovr-cart-drawer::backdrop{background:rgba(15,17,21,.58)}
.ovr-entry-gate::backdrop{background:rgba(15,17,21,.88);backdrop-filter:blur(5px)}
.ovr-dialog{padding:0;border:0;max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 24px 80px #0003}
.ovr-dialog [hidden],.ovr-auth [hidden],.ovr-cart-drawer [hidden]{display:none!important}
.ovr-entry-gate{width:min(760px,calc(100% - 48px));max-width:760px;background:var(--white,#faf9f5);border-top:5px solid #157f45;border-radius:0}
.ovr-entry-content{padding:48px 52px}
.ovr-gate-logo{width:145px;height:auto;margin:0 0 32px;display:block}
.ovr-entry-gate h2{font:700 34px/1.1 var(--sans,Archivo,Arial,sans-serif);font-stretch:125%;letter-spacing:-.025em;margin:0 0 22px}
.ovr-gate-intro{font-size:17px;line-height:1.6;color:#4a4f52;margin:0 0 24px}
.ovr-entry-checks{border-top:1px solid #deddd5}
.ovr-entry-checks label{display:flex;align-items:flex-start;gap:15px;padding:21px 4px;border-bottom:1px solid #deddd5;cursor:pointer;font-size:16px;line-height:1.55}
.ovr-entry-checks input,.ovr-attestations input{appearance:auto;accent-color:#0f1115;flex:0 0 22px;width:22px!important;height:22px!important;min-height:0!important;padding:0!important;margin:2px 0 0!important;border-radius:3px;cursor:pointer}
.ovr-entry-checks strong{font-weight:500}
.ovr-gate-policy{font-size:14px;line-height:1.65;color:#4a4f52;margin:24px 0 28px}
.ovr-gate-policy a,.ovr-attestations a{color:#157f45;text-decoration:underline;text-underline-offset:3px}
.ovr-gate-actions{display:grid;grid-template-columns:1fr 110px;gap:14px}
.ovr-primary,.ovr-secondary{display:flex;align-items:center;justify-content:center;min-height:54px;padding:16px 22px;border:1px solid #0f1115;border-radius:4px;font:700 12px/1.4 var(--mono,monospace);letter-spacing:.08em;text-transform:uppercase;text-align:center;text-decoration:none!important;cursor:pointer;transition:background .15s ease}
.ovr-primary{background:#0f1115;color:#fff!important}
.ovr-primary:hover{background:#24292b}
.ovr-dialog button.ovr-primary:disabled,.ovr-account-inline button.ovr-primary:disabled{background:#c6c4bc;border-color:#c6c4bc;color:#fff;cursor:not-allowed}
.ovr-secondary{background:transparent;color:#4a4f52;border-color:#c8c6bd}
.ovr-dialog button:focus-visible,.ovr-dialog a:focus-visible,.ovr-cart-drawer button:focus-visible,.ovr-cart-drawer a:focus-visible{outline:2px solid #157f45;outline-offset:4px}
.ovr-dialog-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;padding:0;background:none;border:0;color:#626861;font:300 32px/1 Arial,sans-serif;cursor:pointer;border-radius:4px}
.ovr-dialog-close:hover{background:#f0eee9}
.ovr-auth-dialog{width:min(560px,calc(100% - 40px));max-width:560px;background:#fff;border-radius:10px;padding:42px 48px}
.ovr-auth-dialog>.ovr-dialog-close{position:absolute;right:9px;top:7px}
.ovr-auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #d9d7ce;margin-bottom:30px;gap:0}
.ovr-auth-tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:16px 5px 18px;margin-bottom:-1px;color:#999e92;font:700 12px/1.4 var(--mono,monospace);text-transform:uppercase;letter-spacing:.1em;cursor:pointer}
.ovr-auth-tabs button[aria-selected=true]{color:#0f1115;border-bottom-color:#0f1115}
.ovr-auth h2{font-size:30px;line-height:1.14;letter-spacing:-.025em;font-stretch:125%;margin:0 0 14px}
.ovr-auth-intro{font-size:16px;line-height:1.6;margin:0 0 25px;color:#4a4f52}
.ovr-input-label{display:block;font-size:12px;font-weight:600;margin:18px 0 8px}
.ovr-auth input[type=email],.ovr-auth input[type=password],.ovr-auth input[type=text]{width:100%;min-height:52px;padding:13px 15px;border:1px solid #cac8be;border-radius:4px;background:#faf9f5;color:#0f1115;font:400 16px/1.4 var(--sans,Archivo,Arial,sans-serif)}
.ovr-auth input:focus{outline:2px solid #157f4533;outline-offset:1px;border-color:#157f45}
.ovr-field-help{font-size:12px;line-height:1.5;color:#6e7268;margin:9px 0 23px}
.ovr-attestations{margin:0 0 22px;padding:18px;border:1px solid #dbd8ce;border-radius:4px;background:#faf9f5;min-width:0}
.ovr-attestations legend{padding:0 7px;font:700 10px/1.5 var(--mono,monospace);letter-spacing:.12em;text-transform:uppercase;color:#6e7268}
.ovr-attestations label{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.55;cursor:pointer;margin:0 0 16px}
.ovr-attestations label:last-child{margin-bottom:0;font-size:12px}
.ovr-attestations strong{font-weight:650}
.ovr-auth .ovr-primary{width:100%}
.ovr-auth-footnote{font-size:12px;color:#6e7268;text-align:center;line-height:1.5;margin:18px 0}
.ovr-auth-switch{text-align:center;font-size:14px;color:#4a4f52;margin:20px 0 0}
.ovr-auth-switch button{display:inline;padding:0;background:none;border:0;font:600 14px var(--sans,Archivo,Arial,sans-serif);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ovr-password-field{position:relative}
.ovr-password-field input{padding-right:70px!important}
.ovr-password-field button{position:absolute;right:4px;top:4px;min-width:58px;height:44px;background:none;border:0;font:700 10px var(--mono,monospace);text-transform:uppercase;cursor:pointer}
.ovr-reset-password{display:inline-block;margin:16px 0 25px;font-size:13px;text-decoration:underline;text-underline-offset:3px}
.ovr-form-feedback,.ovr-product-cart-feedback{font-size:14px;line-height:1.5;color:#972d2d;background:#fff0ed;border:1px solid #e6b8b2;border-radius:4px;padding:12px;margin:0 0 18px;flex-basis:100%}
.ovr-account-inline{max-width:560px;margin:0 auto 50px;padding:36px 42px;background:#fff;border:1px solid #deddd5;border-radius:8px}
.ovr-catalog-gate{min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:72px;padding-bottom:90px}
.ovr-catalog-gate h1{font-size:clamp(36px,4vw,56px);max-width:850px;line-height:1.1;letter-spacing:-.025em;margin:0 0 24px}
.ovr-catalog-gate>p:not(.eyebrow){max-width:510px;color:#626861;font-size:17px;line-height:1.6;margin-bottom:30px}
.ovr-catalog-gate .button{display:inline-flex;padding:18px 24px;background:#0f1115;color:#fff;border-radius:4px;font:700 12px var(--mono,monospace);text-transform:uppercase}
.ovr-gate-home{font-size:13px;margin-top:23px;text-decoration:underline;text-underline-offset:4px}
.ovr-product-benefits{padding:0!important;margin:28px 0 32px!important;list-style:none;display:flex;flex-direction:column;gap:18px}
.ovr-product-benefits li{display:flex;align-items:flex-start;gap:16px;font-size:16px;line-height:1.5;margin:0!important}
.ovr-benefit-icon{width:34px;height:34px;flex:0 0 34px;display:flex;align-items:center;justify-content:center;background:#0f1115;color:#fff;border-radius:3px}
.ovr-product-benefits li>span:last-child{padding-top:3px}
.ovr-product-disclaimer{border:1px solid #c8c6bd;padding:22px;margin:26px 0 20px;clear:both}
.woocommerce div.product .ovr-product-disclaimer h2{font:700 10px/1.6 var(--mono,monospace);letter-spacing:.1em;text-transform:uppercase;color:#4a4f52;margin:0 0 14px}
.ovr-product-disclaimer p{font-size:13px;line-height:1.55;color:#292e30;margin:0 0 15px}
.ovr-product-disclaimer p:last-child{margin-bottom:0}
.ovr-product-disclaimer strong{font-weight:650}
.ovr-disclaimer-divider{padding-top:16px;border-top:1px solid #dbd8ce}
.ovr-cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(480px,100%);max-width:100%;height:100dvh;max-height:100dvh;padding:0;border:0;background:#fff;overflow:hidden;overscroll-behavior:contain;box-shadow:-12px 0 45px #0002}
.ovr-cart-drawer[open]{display:flex;flex-direction:column}
.ovr-cart-header{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid #dbd8ce;flex:none;gap:12px}
.ovr-cart-header h2{font-size:24px;line-height:1.2;font-stretch:118%;margin:0;font-weight:700;letter-spacing:-.02em}
.ovr-cart-shipping{flex:none;background:#dff0e3;color:#14713b;font-size:14px;line-height:1.5;font-weight:600;text-align:center;padding:12px 22px;margin:0}
.ovr-cart-content{display:flex;flex-direction:column;flex:1;min-height:0}
.ovr-cart-lines{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:24px 26px 10px}
.ovr-cart-lines>ul{padding:0;margin:0;list-style:none}
.ovr-cart-line{display:grid;grid-template-columns:72px minmax(0,1fr) auto;column-gap:16px;margin:0 0 28px;padding:0}
.ovr-cart-image{display:block;width:72px;height:72px;border:1px solid #e0dfd8;border-radius:5px;overflow:hidden;background:white}
.ovr-cart-image img{width:100%;height:100%;object-fit:contain}
.ovr-cart-name{display:block;font-size:16px;font-weight:600;line-height:1.3;color:#0f1115;text-decoration:none;overflow-wrap:anywhere}
.ovr-cart-meta{font-size:12px;line-height:1.5;color:#777d70;margin:6px 0 10px}
.ovr-cart-meta dl,.ovr-cart-meta p{padding:0;margin:0}
.ovr-cart-meta dt{display:none}
.ovr-cart-meta dd{display:inline;margin:0}
.ovr-cart-meta>span{display:block}
.ovr-cart-line-total{font-size:15px;white-space:nowrap;line-height:1.4}
.ovr-cart-line-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ovr-drawer-quantity{display:flex;align-items:center;justify-content:space-between;border:1px solid #cac8be;border-radius:3px;height:42px;min-width:104px}
.ovr-drawer-quantity button{width:34px;height:40px;border:0;background:none;font:400 20px/1 var(--sans,Archivo,Arial,sans-serif);cursor:pointer;color:#292e30}
.ovr-drawer-quantity button:disabled{opacity:.35;cursor:not-allowed}
.ovr-drawer-quantity span{min-width:30px;text-align:center;font-size:15px;font-weight:600}
.ovr-cart-remove{background:none;border:0;padding:8px 0;color:#777d70;font:400 12px var(--sans,Archivo,Arial,sans-serif);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ovr-cart-totals{padding:22px 26px 24px;border-top:1px solid #dbd8ce;background:#fff;flex:none}
.ovr-cart-shipping-row,.ovr-cart-subtotal{display:flex;justify-content:space-between;align-items:center;gap:16px}
.ovr-cart-shipping-row{font-size:14px;color:#626861;margin-bottom:12px}
.ovr-cart-shipping-row strong{color:#17924a}
.ovr-cart-subtotal{font-size:23px;line-height:1.4;letter-spacing:-.02em}
.ovr-cart-totals>p{font-size:11px;line-height:1.5;color:#777d70;margin:8px 0 18px}
.ovr-view-cart{display:block;margin-top:14px;text-align:center;font-size:12px;text-decoration:underline;text-underline-offset:3px}
.ovr-cart-loading{padding:40px 26px;color:#626861;font-size:15px}
.ovr-cart-feedback{flex:none;margin:0;padding:12px 26px;background:#fff0ed;color:#972d2d;font-size:13px;line-height:1.5}
.ovr-drawer-empty{padding:35px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex:1}
.ovr-drawer-empty>span{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:#f0eee9;border-radius:6px;font-size:28px;margin-bottom:24px}
.ovr-drawer-empty h3{font-size:25px;margin:0 0 15px}
.ovr-drawer-empty p{font-size:15px;line-height:1.6;color:#626861;margin:0 0 25px}
@media(max-width:781px){
 .ovr-entry-gate{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}
 .ovr-entry-content{padding:27px 23px}
 .ovr-gate-logo{width:120px;margin-bottom:25px}
 .ovr-entry-gate h2{font-size:29px;line-height:1.08;margin-bottom:18px}
 .ovr-gate-intro{font-size:14px;line-height:1.55;margin-bottom:20px}
 .ovr-entry-checks label{font-size:14px;gap:12px;padding:16px 0;line-height:1.5}
 .ovr-gate-policy{font-size:12px;line-height:1.6;margin:20px 0 24px}
 .ovr-gate-actions{grid-template-columns:1fr 78px;gap:10px}
 .ovr-gate-actions button{min-height:50px;padding:14px 12px;font-size:11px}
 .ovr-auth-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:38px 23px 28px;border-radius:8px}
 .ovr-auth-tabs{margin-bottom:24px}
 .ovr-auth-tabs button{font-size:11px;padding:12px 3px 16px}
 .ovr-auth h2{font-size:28px;line-height:1.12}
 .ovr-auth-intro{font-size:15px;line-height:1.55;margin-bottom:22px}
 .ovr-attestations{padding:14px}
 .ovr-attestations label{font-size:13px;gap:10px}
 .ovr-attestations label:last-child{font-size:11px}
 .ovr-account-inline{padding:22px 18px}
 .ovr-catalog-gate{min-height:500px;padding-top:55px;padding-bottom:65px}
 .ovr-catalog-gate h1{font-size:36px}
 .ovr-catalog-gate>p:not(.eyebrow){font-size:16px}
 .ovr-product-benefits{gap:18px;margin:28px 0!important}
 .ovr-product-benefits li{font-size:15px;gap:14px}
 .ovr-product-disclaimer{padding:19px;margin-top:28px}
 .ovr-product-disclaimer p{font-size:13px;line-height:1.6}
 .ovr-cart-header{padding:15px 18px}
 .ovr-cart-header h2{font-size:22px}
 .ovr-cart-shipping{font-size:12px;padding:11px 18px}
 .ovr-cart-lines{padding:22px 18px 4px}
 .ovr-cart-line{grid-template-columns:60px minmax(0,1fr) auto;gap:12px;margin-bottom:26px}
 .ovr-cart-image{width:60px;height:60px}
 .ovr-cart-name{font-size:15px}
 .ovr-cart-meta{font-size:11px}
 .ovr-cart-line-total{font-size:14px}
 .ovr-cart-line-controls{gap:8px}
 .ovr-drawer-quantity{height:44px;min-width:98px}
 .ovr-drawer-quantity button{width:32px;height:42px}
 .ovr-cart-totals{padding:18px 18px max(20px,env(safe-area-inset-bottom))}
 .ovr-cart-subtotal{font-size:22px}
}
@media(max-width:350px){
 .ovr-entry-content,.ovr-auth-dialog{padding-left:18px;padding-right:18px}
 .ovr-entry-gate h2,.ovr-auth h2{font-size:25px}
 .ovr-cart-line{grid-template-columns:48px minmax(0,1fr) auto;gap:10px}
 .ovr-cart-image{width:48px;height:48px}
 .ovr-cart-name{font-size:14px}
 .ovr-cart-line-total{font-size:13px}
 .ovr-cart-line-controls{gap:3px}
}
@media(prefers-reduced-motion:reduce){.ovr-primary,.ovr-secondary{transition:none}}

.ovr-entry-checks label,.ovr-attestations label{font-weight:400}
