/* SILO storefront additions to the user's original Chronicles brand and site styles. */
:root {
  --bg:var(--ground);--deep:#0d0906;--header:var(--ground-2);--surface:var(--panel);--raised:var(--panel-2);
  --paper:var(--white);--muted:var(--tan);--quiet:var(--grey);
  --gold-bright:var(--gold-hi);--gold-dark:var(--bronze);
  --border:var(--line);--border-strong:rgba(192,168,136,.44);
  --heading:var(--display);--label:var(--display);
}
html{scroll-padding-top:75px}
body{background:var(--ground);background-image:none!important;overflow-x:hidden}
body.locked{overflow:hidden}
button,input{font-family:var(--body)}
.site-head{background:rgba(16,12,9,.96);border-bottom:1px solid var(--line);padding:9px 30px}
.site-head.stuck{padding:9px 30px}
.site-head .lockup .seal{height:51px;width:51px;object-fit:contain}
.site-head .lockup .n1{font-size:20px;letter-spacing:2px}
.site-head .lockup .n2{letter-spacing:2.2px}
.site-head .site-nav{gap:2px}
.site-head .site-nav a{font-size:12.5px;letter-spacing:1.8px;padding:9px 10px}
.head-actions{margin-left:10px;display:flex;align-items:center;gap:10px}
.head-login,.head-cart{padding:11px 14px;color:var(--gold-hi);font-family:var(--display);font-size:11px;line-height:1.25;letter-spacing:1.4px;white-space:nowrap;background:transparent;border:1px solid var(--line);cursor:pointer}
.head-login:hover,.head-cart:hover{border-color:var(--gold-deep);background:var(--panel-2)}
.head-login:disabled{opacity:.45;cursor:not-allowed}
.head-login.cfx-connected{color:#a9ca98;border-color:#66845f}
.head-cart{display:flex;align-items:center;gap:11px;background:linear-gradient(180deg,#614c34,#443321);border-color:var(--gold-deep)}
.cart-count{min-width:20px;height:20px;border-radius:100%;display:inline-grid;place-items:center;color:var(--ground);font:bold 12px Georgia,serif;background:var(--gold)}
.site-head .burger{display:none;margin:0 0 0 2px}
.mobile-nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(16,12,9,.985);padding:14px 25px 24px;border-bottom:1px solid var(--line);box-shadow:0 22px 40px #0009}
.mobile-nav a{font-family:var(--display);letter-spacing:1.7px;font-size:13px;padding:14px 8px;display:block;border-bottom:1px solid var(--line-soft);text-decoration:none;color:var(--tan)}
.mobile-nav .mobile-login{margin:18px 0 0;width:100%}
.mobile-nav[hidden]{display:none!important}
.silo-hero{padding-top:122px;background:var(--ground);background-image:none!important}
.silo-hero .hero-mark{width:min(410px,70vw);height:auto;max-height:49vh;object-fit:contain;filter:drop-shadow(0 3px 14px rgba(0,0,0,.6))}
.silo-hero .sub{font-size:clamp(20px,3.4vw,34px);letter-spacing:clamp(5px,1.2vw,14px);text-indent:clamp(5px,1.2vw,14px);margin-top:3px}
.silo-hero .divider{margin:28px auto 26px}
.silo-hero .blurb{max-width:62ch}
.silo-hero .scroll-cue{margin-top:auto}
.silo-hero .btn{min-width:195px;text-align:center}
.hero .eyebrow{margin:0 0 19px}
.store-section{padding:96px 0;scroll-margin-top:76px}
.store-section .sec-head{max-width:66ch;margin-bottom:23px}
.featured-inner{display:grid;grid-template-columns:285px minmax(0,1fr);gap:70px;align-items:center}
.featured-art{display:grid;place-items:center;min-height:290px;border:1px solid var(--line);background:rgba(0,0,0,.16)}
.featured-art img{width:205px;height:auto;max-width:80%;object-fit:contain}
.featured-copy{max-width:700px}.featured-copy h2{margin:0 0 13px}.featured-copy>p:not(.kicker){font-size:16px;line-height:1.75;color:var(--tan)}.featured-copy .btn{margin-top:12px}
.qualities{margin-top:40px}.prose{max-width:72ch}
.join-lede{margin:0 auto 26px!important;max-width:58ch}
.site-foot .seal{height:43px;width:43px;object-fit:contain}
#footer-discord[hidden]{display:none!important}
/* We keep any data that comes from Tebex as text, not untrusted HTML. */
/* Script cards · product details from Tebex, clean editorial presentation */
.catalog{background:var(--ground)}
.section-header{display:flex;gap:45px;align-items:end;justify-content:space-between;border-bottom:1px solid var(--border-strong);padding-bottom:24px}
.section-header h2{margin-bottom:9px}
.section-header p:not(.section-kicker){margin:0;max-width:675px;color:var(--muted);font-size:15px;line-height:1.85}
.section-aside{font-size:12px;white-space:nowrap;align-self:end;padding-bottom:8px}
.catalog-tools{display:flex;justify-content:space-between;gap:25px;align-items:center;margin:28px 0 24px}
.filter-list{display:flex;flex-wrap:wrap;gap:9px}
.filter-button{background:transparent;color:#c7b092;border:1px solid #443226;padding:10px 14px;font:700 13px var(--heading);letter-spacing:.02em}
.filter-button:hover,.filter-button.active{background:#52402b;color:#f6e7cb;border-color:#ad8c5e}
.search-wrap{display:flex;align-items:center;gap:9px;max-width:280px;min-width:200px;border:1px solid #473328;padding:10px 13px;color:var(--gold)}
.search-wrap input{width:100%;min-width:0;border:0;background:transparent;outline:none;color:var(--paper);font:600 13px var(--heading)}
.search-wrap input::placeholder{color:#aa9478;opacity:1}
.catalog-notice{color:#c9b496;margin-bottom:17px;font-size:14px}.catalog-notice:empty{display:none}.catalog-notice.preview{padding:12px 17px;border:1px solid #876941;background:#2a2117}.catalog-notice.error{padding:12px 17px;border:1px solid #a06053;background:#3a211f;color:#ffd5ca}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.loading-card,.no-results{grid-column:1/-1;padding:60px 20px;text-align:center;border:1px solid var(--border);font:700 17px var(--heading);color:var(--muted)}
.product-card{min-width:0;background:#1d1611;border:1px solid #47362a;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
.product-card:hover{border-color:#aa865a;transform:translateY(-3px)}
.product-art{position:relative;height:230px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#231b14;border-bottom:1px solid #49382a}
.product-art img{display:block;width:100%;height:100%;object-fit:cover}
.product-top-tag{position:absolute;top:12px;left:12px;z-index:1;background:#1c140ee8;color:#e5cda9;padding:7px 9px;font:700 12px var(--label);letter-spacing:.12em;max-width:80%;overflow-wrap:anywhere}
.product-index{position:absolute;right:12px;bottom:10px;z-index:1;color:#ae9475;font:700 12px var(--label);letter-spacing:.1em}
.product-art-word{font:700 clamp(24px,3vw,37px)/1.3 var(--heading);letter-spacing:.04em;color:#e0c394;text-align:center;padding:20px;max-width:100%;overflow-wrap:anywhere}
.product-content{display:flex;flex-direction:column;flex:1;padding:25px 24px 23px}
.product-name{font:700 22px/1.3 var(--heading);color:#f1e1c9;margin:0 0 13px;overflow-wrap:anywhere}
.product-excerpt{font:400 14px/1.75 var(--body);color:#bda991;margin:0 0 25px;flex:1;overflow-wrap:anywhere}
.product-bottom{border-top:1px solid #423326;padding-top:18px;display:flex;align-items:end;justify-content:space-between;gap:12px}
.product-price{display:flex;flex-direction:column;color:#f1d39e;font:700 23px/1.3 var(--heading);white-space:nowrap}
.product-price small{color:#aa9170;font:700 11px/1.6 var(--label);letter-spacing:.13em}
.product-view{background:transparent;border:1px solid #856846;color:#e1c7a0;padding:12px 14px;white-space:nowrap;font:700 12px/1.1 var(--heading);letter-spacing:.02em}
.product-view:hover{background:#4a3725;color:#fff1d4}


/* Tebex cart and package detail overlay, preserving IDs and events */
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.81);z-index:100;backdrop-filter:blur(3px)}
.cart-panel{position:fixed;right:0;top:0;bottom:0;z-index:105;width:min(505px,100%);display:flex;flex-direction:column;background:#19110d;border-left:1px solid #6d5237;box-shadow:-18px 0 60px #000a}
.cart-header{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:1px solid #60472e;padding:29px 28px 23px}
.cart-header h2{font:700 27px/1.3 var(--heading);margin:8px 0 0;color:#f0d9b4}.cart-header-count{display:inline-grid;vertical-align:middle;place-items:center;background:#443221;border-radius:50%;font:700 12px var(--label);width:24px;height:24px;margin-left:9px;color:#f5ddba}
.icon-btn{background:#342619;border:1px solid #81613d;color:#f6ddbb;width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;font:400 30px/1 var(--body)}.icon-btn:hover{background:#5a3d21}
.cart-items{padding:8px 28px 15px;overflow-y:auto;flex:1;min-height:60px}
.cart-empty{padding:35px 4px;font:400 14px/1.8 var(--body);color:#b8a289}.cart-empty strong{display:block;font:700 19px var(--heading);margin-bottom:12px;color:#f0ddc1}
.cart-item{display:flex;align-items:center;gap:13px;padding:20px 0;border-bottom:1px solid var(--border)}
.cart-item-mark{flex:0 0 56px;height:56px;display:grid;place-items:center;background:#302317;color:var(--gold-bright);border:1px solid var(--border-strong);font:700 17px var(--heading)}
.cart-item-details{min-width:0;flex:1}.cart-item-details strong{display:block;overflow-wrap:anywhere;font:700 15px/1.4 var(--heading)}.cart-item-details small{display:block;margin-top:5px;color:var(--quiet);font:700 11px var(--label);letter-spacing:.07em}
.cart-remove{border:0;background:none;padding:6px 0;color:#e1ac9c;text-decoration:underline;font:600 12px var(--body)}
.cart-item-price{white-space:nowrap;font:700 15px var(--heading);color:var(--gold-bright)}
.cart-bottom{border-top:1px solid #60472e;padding:20px 28px 26px}
.cart-auth-box{border:1px solid var(--border);background:#251b14;padding:13px 15px;margin-bottom:20px}.cart-auth-box p{color:#c3ae94;font:400 12px/1.65 var(--body);margin:0 0 11px;overflow-wrap:anywhere}.cart-auth-box p:last-child{margin-bottom:0}
.cart-cfx-btn{max-width:none;width:100%;text-align:center;background:#3c2c1c}
.coupon-form label{font:700 13px var(--heading);color:#caaa81}.coupon-form>div{display:flex;gap:8px;margin-top:9px}
.coupon-form input{min-width:0;flex:1;border:1px solid #614a34;background:#130d09;color:var(--paper);padding:11px;font:600 13px var(--heading)}
.coupon-form button{border:1px solid #80603b;background:#483421;color:var(--paper);padding:10px 15px;font:700 12px var(--heading)}
.cart-coupons{color:var(--gold);font-size:12px;margin-top:7px}
.total-row{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--border);margin-top:17px;padding-top:17px;font:700 13px var(--heading);color:var(--muted)}.total-row strong{font:700 26px var(--heading);color:var(--gold-bright)}
.tax-note{color:var(--quiet);font-size:11px;margin:8px 0 16px}.checkout-btn{width:100%;justify-content:space-between}.checkout-btn:disabled{opacity:.45;cursor:not-allowed}.cart-footnote{display:block;font:400 11px var(--body);text-align:center;margin-top:9px;color:#ac977c}
.product-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:110;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);width:min(920px,calc(100% - 36px));max-height:min(625px,calc(100dvh - 36px));background:#19120e;border:1px solid #a17d53;box-shadow:0 25px 85px #000;overflow:hidden}
.modal-close{position:absolute;top:13px;right:13px;z-index:5}
.modal-art{display:flex;justify-content:center;align-items:center;min-width:0;min-height:365px;padding:22px;background:#291e14;border-right:1px solid #614a35}
.modal-art img{display:block;width:100%;max-width:100%;height:auto;max-height:415px;object-fit:contain}
.modal-art-text{font:700 25px/1.35 var(--heading);color:#e4c99f;text-align:center;overflow-wrap:anywhere}
.modal-body{min-width:0;min-height:0;display:flex;flex-direction:column;padding:38px 37px 32px;overflow:hidden}
.modal-body h2{font:700 clamp(25px,3vw,37px)/1.2 var(--heading);margin:15px 0 17px;overflow-wrap:anywhere}
.modal-rule{height:1px;background:#5a4431;margin-bottom:16px;flex-shrink:0}
#modal-description{min-width:0;max-width:100%;min-height:55px;max-height:235px;overflow-y:auto;overflow-x:hidden;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;color:#c7b39a;font:400 14px/1.8 var(--body);padding-right:4px}
.modal-purchase{border-top:1px solid var(--border);padding-top:19px;margin-top:21px;display:flex;align-items:end;justify-content:space-between;gap:15px;flex-wrap:wrap;flex-shrink:0}
.modal-purchase span{display:block;color:#aa9170;font:700 12px var(--label);letter-spacing:.13em}.modal-purchase strong{display:block;color:#f1d39e;font:700 25px var(--heading);margin-top:4px}.modal-purchase .btn{font-size:12px;min-height:45px;padding:11px 16px}
.toast{position:fixed;left:50%;bottom:20px;z-index:200;max-width:calc(100% - 30px);background:#3a2a1b;border:1px solid #bf9b67;color:#f4debd;padding:14px 20px;text-align:center;font:600 14px/1.5 var(--body);opacity:0;pointer-events:none;transform:translate(-50%,20px);transition:opacity .18s,transform .18s;overflow-wrap:anywhere}
.toast.show{transform:translate(-50%,0);opacity:1}



/* Small refinements to the reused product interface. */
.store-section .catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:20px 0 23px}
.store-section .search-wrap{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:0 12px;min-width:225px}
.store-section .search-wrap input{border:0;background:transparent;color:var(--white);padding:13px 6px;min-width:0;outline:0;font:14px var(--body)}
.store-section .search-wrap input::placeholder{color:var(--grey)}
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.product-card{border-radius:4px;background:linear-gradient(180deg,var(--panel),rgba(30,23,16,.6))}
.product-art{background:var(--ground-2)}
.product-content{padding:24px 23px 21px}
.product-name{font-size:21px;font-weight:400}
.product-price{color:var(--gold);font-size:21px;font-weight:400}
.product-view,.filter-button{font-family:var(--display);letter-spacing:1.2px;font-size:11px;font-weight:400}
.product-excerpt{font-size:15px}
.product-art-word{font-size:27px;font-weight:400}
.overlay{z-index:180}.cart-panel{z-index:185}.product-modal{z-index:190}.toast{z-index:220}
.product-modal{width:min(920px,calc(100% - 36px));grid-template-columns:minmax(0,.73fr) minmax(0,1.27fr);max-width:100%}
.modal-body{overflow:hidden}.modal-body h2{font-weight:400}
#modal-description{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap}
.product-modal .btn.primary{font-size:12px}
.cart-panel .btn.primary{width:100%;text-align:center}
.cart-header h2{font-weight:400}
.cart-cfx-btn{display:block;width:100%;max-width:100%}
.cart-auth-box .head-login[hidden]{display:none}
.coupon-form input:focus{border-color:var(--gold)}
@media(max-width:1200px){
  .site-head{padding-left:18px;padding-right:18px}
  .site-head.stuck{padding-left:18px;padding-right:18px}
  .site-head .site-nav{display:none}
  .site-head .burger{display:block}
  .mobile-nav:not([hidden]){display:block}
}
@media(max-width:880px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .featured-inner{grid-template-columns:1fr;gap:23px}
  .featured-art{min-height:195px}.featured-art img{width:140px}
  .head-actions{margin-left:auto}
}
@media(max-width:620px){
  .site-head,.site-head.stuck{padding:10px 15px}
  .site-head .lockup .seal{width:42px;height:42px}
  .site-head .lockup .n1{font-size:16px}
  .site-head .lockup .n2{font-size:9px;letter-spacing:1.3px}
  .head-actions{gap:6px}
  .head-actions>.head-login{display:none}
  .head-cart{padding:9px 8px;gap:6px;font-size:10px}
  .site-head .burger{padding:9px}
  .silo-hero{padding:118px 20px 0;min-height:100svh}
  .silo-hero .hero-mark{width:min(335px,75vw);max-height:40vh}
  .silo-hero .sub{font-size:22px;letter-spacing:5px;text-indent:5px}
  .silo-hero .eyebrow{font-size:10px;letter-spacing:2.2px}
  .silo-hero .creed{font-size:11px;line-height:1.7;letter-spacing:1.5px}
  .silo-hero .blurb{font-size:15px;line-height:1.65;margin-bottom:23px}
  .silo-hero .divider{margin:23px auto 19px}
  .silo-hero .hero-actions{display:flex;flex-direction:column;align-items:stretch;width:min(320px,100%)}
  .silo-hero .btn{min-width:0}
  .silo-hero .scroll-cue{padding-top:32px;padding-bottom:18px}
  .store-section{padding:70px 0}
  .store-section .catalog-tools{align-items:stretch;flex-direction:column;gap:14px}
  .store-section .search-wrap{width:100%}
  .filter-list{gap:7px}
  .product-grid{grid-template-columns:1fr;gap:16px}
  .product-art{height:205px}
  .product-bottom{flex-wrap:wrap}
  .product-modal{display:flex;flex-direction:column;max-height:calc(100dvh - 24px);overflow-y:auto;width:calc(100% - 22px)}
  .modal-art{min-height:115px;max-height:160px;padding:14px;border-right:0;border-bottom:1px solid var(--line);flex-shrink:0}
  .modal-art img{max-height:145px}
  .modal-body{padding:21px;overflow:visible;flex-shrink:0}
  .modal-body h2{font-size:27px}
  #modal-description{max-height:180px}
  .modal-purchase .btn{width:100%}
  .cart-header,.cart-items,.cart-bottom{padding-left:20px;padding-right:20px}
  .foot-note{gap:10px}
}
