/* Calypso Star, 2026-10 look: black, wide Archivo, gold only on prices and dates.
   Shared by the inside pages (support, FAQ, shipping, contact, about, privacy, digital,
   downloads, the Empathic Mirror guide). The homepage carries its own copy inline. */
:root{
  --black:#000; --white:#fff; --bone:#f1f0ec; --grey:#8d8d8d; --soft:#c9c9c9;
  --rule:rgba(255,255,255,.16); --gold:#e3c27a;
  --wide:"Archivo",system-ui,sans-serif; --pad:clamp(16px,4vw,64px);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--black);color:var(--white);font-family:var(--wide);font-size:16px;line-height:1.65}
img,video{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.xw{font-stretch:125%;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:.95}

/* header with the moon-and-star mark */
.cs-head{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--pad);background:#000;border-bottom:1px solid var(--rule)}
.cs-brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.cs-brand .mark{height:44px;width:auto}
.cs-brand .word{height:30px;width:auto}
.cs-nav ul{display:flex;align-items:center;gap:clamp(16px,3vw,40px);list-style:none;margin:0;padding:0}
.cs-nav a,.cart-link{white-space:nowrap;text-decoration:none;font:500 12px/1 var(--wide);font-stretch:125%;letter-spacing:.14em;text-transform:uppercase;color:inherit}
.cs-nav a:hover,.cart-link:hover,.cs-nav a[aria-current]{color:var(--gold)}
.cart-link{background:none;border:0;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:8px}
.cart-link .cart-count{position:static;display:none;min-width:20px;height:20px;padding:0 6px;border-radius:0;background:var(--gold);color:#000;font-size:11px;font-weight:700;align-items:center;justify-content:center;letter-spacing:0}

/* page heading */
.cs-hero{padding:clamp(56px,9vw,120px) var(--pad) clamp(28px,4vw,48px);border-bottom:1px solid var(--rule)}
.cs-hero .lab{display:block;font-stretch:125%;font-weight:500;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--grey);margin-bottom:16px}
.cs-hero h1{margin:0;font-size:clamp(40px,7vw,104px)}
.cs-hero p{margin:20px 0 0;max-width:56ch;color:var(--soft);font-size:18px}

/* readable body for policy and help text */
.prose{max-width:760px;padding:clamp(40px,6vw,80px) var(--pad);margin:0}
.prose h2{font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:clamp(22px,2.6vw,32px);line-height:1.1;margin:56px 0 16px}
.prose h2:first-child{margin-top:0}
.prose h3{font-stretch:115%;font-weight:700;font-size:19px;margin:32px 0 8px}
.prose p,.prose li{color:var(--soft)}
.prose ul,.prose ol{padding-left:20px}
.prose li{margin:6px 0}
.prose a{color:var(--white);text-decoration-color:var(--gold);text-underline-offset:4px}
.prose a:hover{color:var(--gold)}
.prose strong{color:var(--white)}
.prose details{border-top:1px solid var(--rule);padding:18px 0}
.prose details:last-of-type{border-bottom:1px solid var(--rule)}
.prose summary{cursor:pointer;font-stretch:115%;font-weight:700;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.prose summary::after{content:"+";color:var(--gold);font-weight:400}
.prose details[open] summary::after{content:"\2212"}
.prose summary::-webkit-details-marker{display:none}
.prose details > *:not(summary){margin-top:12px}

/* forms (contact, downloads lookup) */
.prose label{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--grey);margin:20px 0 8px}
.prose input,.prose textarea,.prose select{width:100%;background:#0d0d0d;border:1px solid #333;color:#fff;font:16px/1.4 var(--wide);padding:14px 16px;border-radius:0}
.prose input:focus,.prose textarea:focus{border-color:var(--gold);outline:none}
.prose button,.btn{display:inline-flex;align-items:center;gap:12px;font:600 13px/1 var(--wide);font-stretch:125%;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  padding:18px 34px;background:var(--white);color:#000;border:0;cursor:pointer;margin-top:20px;
  clip-path:polygon(14px 0,100% 0,calc(100% - 14px) 100%,0 100%)}
.prose button:hover,.btn:hover{background:var(--gold)}

/* link tiles (support page) */
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin:clamp(40px,6vw,80px) var(--pad)}
.tiles a{background:#000;padding:28px;text-decoration:none;display:block;min-height:150px}
.tiles a:hover{background:#0d0d0d}
.tiles b{display:block;font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:18px;margin-bottom:10px}
.tiles a:hover b{color:var(--gold)}
.tiles span{color:var(--grey);font-size:15px}

/* product grid (digital page; markup comes from build-static-shop.js) */
.deck-shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:48px 24px;padding:clamp(40px,6vw,80px) var(--pad)}
.deck-card{background:none;border:0;margin:0}
.deck-card-link{text-decoration:none;display:block}
.deck-card-image{position:relative;aspect-ratio:4/5;overflow:hidden;background:#111}
.deck-card-image img{width:100%;height:100%;object-fit:cover}
.deck-card-badge{position:absolute;left:12px;top:12px;background:#000c;color:#fff;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:6px 10px}
.deck-card-body{padding-top:16px}
.deck-card-body h3{font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:16px;line-height:1.2;margin:0 0 8px}
.deck-card-body p{color:var(--grey);font-size:14px;margin:0 0 12px}
.deck-card-foot{display:flex;justify-content:space-between;align-items:baseline}
.deck-card-price{color:var(--gold);font-stretch:125%;font-size:18px}
.deck-card-view{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey)}
.deck-card .add-btn,.deck-card [data-action="add-cart"]{width:100%;justify-content:center;margin-top:14px;font:600 12px/1 var(--wide);font-stretch:125%;letter-spacing:.14em;text-transform:uppercase;
  padding:15px 20px;background:#fff;color:#000;border:0;cursor:pointer;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%)}
.deck-card [data-action="add-cart"]:hover{background:var(--gold)}

/* footer with the full logo */
.cs-foot{margin-top:clamp(80px,10vw,140px);border-top:1px solid var(--rule);padding:56px var(--pad) 72px;display:grid;grid-template-columns:auto 1fr;gap:40px 64px;align-items:start;font-size:13px;color:var(--grey)}
.cs-foot .logo{width:120px;height:auto}
.cs-brand img{height:auto}
.cs-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 28px}
.cs-foot a{text-decoration:none}
.cs-foot a:hover{color:var(--white)}
.cs-foot small{display:block;margin-top:28px}

/* cart drawer (cart-panel.css) restyled */
.cart-panel{background:#0a0a0a;border-left:1px solid #2a2a2a;font-family:var(--wide);color:#fff}
.cart-header h3{font-family:var(--wide);font-stretch:125%;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.cart-checkout-btn{background:#fff;color:#000;border-radius:0;font-family:var(--wide);font-stretch:125%;text-transform:uppercase;letter-spacing:.12em}
.cart-checkout-btn:hover:not(:disabled){background:var(--gold);color:#000}

@media (max-width:760px){
  .cs-brand .word{display:none}
  .cs-brand .mark{height:38px}
  .cs-nav ul{gap:14px}
  .cs-nav a,.cart-link{font-size:11px;letter-spacing:.08em}
  .cs-foot{grid-template-columns:1fr}
}
@media (max-width:400px){ .cs-nav li.opt{display:none} }

/* old page bits that need a rule */
.hp,input.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.prose textarea{min-height:180px;resize:vertical}
.prose .contact-msg,.prose .dl-result{color:var(--gold)}
.deck-card{display:flex;flex-direction:column}
.deck-card .deck-card-link{flex:1}
