
/* local stand-ins for Typekit futura-pt (Futura on macOS, Jost elsewhere) */
@font-face { font-family: futura-pt; font-weight: 300; src: local("Futura Light"), local("Jost Light"), url("/fonts/jost_v20_92zatBhPNqw73oTd4jQmfxI.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: futura-pt; font-weight: 400; src: local("Futura Medium"), local("Futura"), url("/fonts/jost_v20_92zatBhPNqw73oTd4jQmfxI.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: futura-pt; font-weight: 500; src: local("Futura Medium"), url("/fonts/jost_v20_92zatBhPNqw73oTd4jQmfxI.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: futura-pt; font-weight: 700; src: local("Futura Bold"), url("/fonts/jost_v20_92zatBhPNqw73oTd4jQmfxI.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: "Source Sans Pro"; font-weight: 400; src: url("/fonts/sourcesans3_v19_nwpStKy2OAdR1K-IwhWudF-R3wwaZejf5HdF8Q.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: "Source Sans Pro"; font-weight: 700; src: url("/fonts/sourcesans3_v19_nwpStKy2OAdR1K-IwhWudF-R3wwaZejf5HdF8Q.woff2") format("woff2"); font-display: swap; }

/* image loader compensation: squarespace JS normally positions these */
.sqs-image-shape-container-element img, .image-block-wrapper img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
img[data-src] { opacity:1 !important; }
.sqs-image-shape-container-element { width:100%; }
button.sqs-block-image-button { all:unset; display:block; width:100%; cursor:pointer; }

/* product gallery (Brine): stack slides, JS picks active */
#productGallery .slide { display:none !important; }
#productGallery .slide.tmt-main { display:block !important; }
.intrinsic { position:relative; }
.intrinsic img, .intrinsic .content-fill { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
#productGallery .tmt-thumbs img { position:static !important; width:64px; height:64px; object-fit:cover; }
.tmt-thumbs { display:flex; gap:8px; margin-top:10px; flex-wrap:wrap; }
.tmt-thumbs img { width:64px; height:64px; object-fit:cover; cursor:pointer; opacity:.7; position:static !important; }
.tmt-thumbs img.tmt-current { opacity:1; outline:2px solid #c11515; }

/* lightbox */
.tmt-lightbox { position:fixed; inset:0; background:rgba(0,0,0,.88); display:flex; align-items:center; justify-content:center; z-index:9999; cursor:zoom-out; }
.tmt-lightbox img { max-width:92vw; max-height:92vh; width:auto !important; height:auto !important; position:static !important; object-fit:contain; }

/* archived-store notice on cart buttons */
.sqs-add-to-cart-button { opacity:.45; pointer-events:none; }
.tmt-archive-note { font-size:12px; letter-spacing:.05em; color:#999; margin-top:8px; }

/* matchmaking form lightbox */
.tmt-form-overlay { position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(0,0,0,.55); z-index:9999; overflow:auto; padding:40px 16px; }
.tmt-form-box { max-width:640px; margin:0 auto; background:#fff; padding:44px; position:relative; }
.tmt-form-close { position:absolute; top:10px; right:14px; font-size:30px; background:none; border:none; cursor:pointer; line-height:1; }
.tmt-form-box .form-item { margin-bottom:24px; }
.tmt-form-box input[type="text"], .tmt-form-box input[type="email"], .tmt-form-box select { width:100%; padding:10px; border:1px solid #ccc; font-family:inherit; font-size:15px; }
.tmt-form-box .form-button-wrapper input, .tmt-form-box input[type="submit"] { background:#c11515; color:#fff; border:none; padding:14px 28px; text-transform:uppercase; letter-spacing:1px; cursor:pointer; }
