.phero{background:radial-gradient(ellipse 60% 80% at 85% 0%,rgba(126,13,21,.35),rgba(12,10,9,0) 70%),var(--ink)}
.phero.short{padding-bottom:30px}
.phero .lede a{color:var(--gold2)}
.note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding-top:40px;padding-bottom:80px;margin-top:40px;border-top:1px solid var(--line)}
.note p{margin:0;color:var(--mute);max-width:620px;font-size:18px}
.note b{color:var(--cream);font-weight:500}

/* The Count */
.sizes{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.size{display:grid;grid-template-columns:1fr;gap:14px 40px;padding:44px 0;border-top:1px solid var(--line);scroll-margin-top:80px}
.size .n{display:flex;align-items:baseline;gap:14px}
.size .n b{font-family:var(--display);font-weight:400;font-size:clamp(96px,22vw,190px);line-height:.85;letter-spacing:-.04em}
.size .n span{font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}
.size .q{font-family:var(--display);font-style:italic;font-size:clamp(22px,3.4vw,32px);line-height:1.2;margin:0 0 6px}
.size .ph{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.size .ph.one{grid-template-columns:1fr}
.size .ph img{width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--soot)}
.size .ph.one img{aspect-ratio:4/5;max-height:640px}
.size .ph:not(.one):has(img:nth-child(2):last-child){grid-template-columns:1fr 1fr}
@media (min-width:900px){
  .size{grid-template-columns:320px 1fr;grid-template-rows:auto 1fr}
  .size .n{grid-column:1;grid-row:1;flex-direction:column;gap:6px}
  .size .txt{grid-column:1;grid-row:2}
  .size .ph{grid-column:2;grid-row:1/3}
  .size .ph.one{max-width:520px}
}

/* gallery */
.masonry{columns:2;column-gap:10px}
@media (min-width:900px){.masonry{columns:3;column-gap:18px}}
.masonry>*{break-inside:avoid;margin:0 0 10px;width:100%}
@media (min-width:900px){.masonry>*{margin-bottom:18px}}
.tile{display:block;padding:0;border:0;background:var(--soot);color:inherit;cursor:zoom-in;position:relative;text-align:left;font:inherit}
.tile img{width:100%;height:auto}
.tile span{position:absolute;left:0;right:0;bottom:0;padding:40px 12px 10px;font-family:var(--display);font-style:italic;font-size:clamp(14px,1.6vw,19px);line-height:1.2;background:linear-gradient(rgba(12,10,9,0),rgba(12,10,9,.85))}
.tile-v{aspect-ratio:9/16}
.lb{border:0;padding:0;background:transparent;max-width:min(92vw,720px);max-height:92vh;color:var(--cream)}
.lb::backdrop{background:rgba(6,4,4,.92)}
.lb img{max-height:82vh;width:auto;max-width:100%;margin:0 auto}
.lb p{font-family:var(--display);font-style:italic;text-align:center;margin:10px 0 0;font-size:19px}
.lb-x{position:fixed;top:12px;right:12px;width:48px;height:48px;border:1px solid var(--line);background:var(--ink);color:var(--cream);font-size:28px;line-height:1;cursor:pointer}

/* about */
.split{display:grid;grid-template-columns:1fr;gap:34px;align-items:center;padding-bottom:40px}
.split figure{margin:0}
.split img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%}
.split h2,.how h2{font-size:clamp(36px,6vw,62px);margin:12px 0 18px}
.split h2 .it{color:var(--gold2)}
.split p{color:var(--mute);font-size:18px}
.marks{list-style:none;padding:0;margin:26px 0 0;border-top:1px solid var(--line)}
.marks li{padding:13px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:140px 1fr;gap:12px}
.marks b{font-family:var(--display);font-weight:400;font-size:20px}
.marks span{color:var(--mute)}
@media (min-width:900px){.split{grid-template-columns:1fr 1fr;gap:80px}}
.how{padding-top:40px}
.how ol{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:1fr;gap:0}
.how li{border-top:1px solid var(--line);padding:22px 0}
.how li b{font-family:var(--display);color:var(--gold);font-weight:400;font-size:18px}
.how h3{font-size:34px;margin:4px 0 8px}
.how p{color:var(--mute);margin:0}
.how a{color:var(--gold2)}
@media (min-width:900px){.how ol{grid-template-columns:repeat(3,1fr);gap:40px}}

/* order builder */
.builder{display:grid;grid-template-columns:1fr;gap:34px;padding-bottom:80px}
@media (min-width:980px){.builder{grid-template-columns:1fr 380px;gap:56px;align-items:start}.ticket{position:sticky;top:96px}}
.ob fieldset{border:0;margin:0 0 34px;padding:0;min-width:0}
.ob legend{font-family:var(--display);font-size:28px;padding:0;margin-bottom:14px;display:flex;align-items:baseline;gap:12px}
.ob legend b{font-weight:400;font-size:15px;color:var(--gold);font-family:var(--body);letter-spacing:.2em}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{position:relative}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border:1px solid var(--line);cursor:pointer;font-size:15px;transition:border-color .2s,background-color .2s;color:var(--cream)}
.chips label:hover span{border-color:var(--gold)}
.chips input:checked+span{background:var(--deep);border-color:var(--rose)}
.chips input:focus-visible+span{outline:2px solid var(--gold2);outline-offset:3px}
.count-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.count-chips span{flex-direction:column;justify-content:center;gap:0;padding:10px 4px;min-height:84px;text-align:center;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.count-chips span b{font-family:var(--display);font-weight:400;font-size:34px;letter-spacing:-.02em;color:var(--cream);text-transform:none;line-height:1.05}
.count-chips input:checked+span{color:#f6d9d9}
.swatches i{width:18px;height:18px;border-radius:50%;display:inline-block;border:1px solid rgba(255,255,255,.3)}
.hint{color:var(--gold2);font-size:15px;margin:12px 0 0}
.rush{color:#ffb4b4}
.fl{display:block;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:14px 0 8px}
.fl small{text-transform:none;letter-spacing:0}
.ob input[type=text],.ob input[type=date],.ob select,.ob textarea{width:100%;min-height:50px;background:var(--soot);border:1px solid var(--line);color:var(--cream);font:inherit;font-size:17px;padding:12px 14px;border-radius:0;-webkit-appearance:none;appearance:none;color-scheme:dark}
.ob select{background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.ob textarea{resize:vertical;font-family:var(--display);font-style:italic;font-size:19px}
.ob input:focus,.ob select:focus,.ob textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 1px var(--gold)}
.row2{display:grid;grid-template-columns:1fr;gap:0 14px}
@media (min-width:600px){.row2{grid-template-columns:1fr 1fr}}
.ticket{background:var(--soot);border:1px solid var(--line)}
.tk-in{padding:26px 22px}
.tk-num{font-family:var(--display);font-size:96px;line-height:.9;margin:10px 0 14px;display:flex;align-items:baseline;gap:10px;letter-spacing:-.03em}
.tk-num small{font-family:var(--body);font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}
.ticket dl{margin:0 0 18px;border-top:1px solid var(--line)}
.ticket dl div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.ticket dt{color:var(--mute)}
.ticket dd{margin:0;text-align:right}
.cardmock{background:#f5efe4;color:#2a2320;padding:18px 18px 22px;text-align:center;margin:0 0 18px;box-shadow:inset 0 0 0 5px #f5efe4,inset 0 0 0 6px #2a2320;min-height:150px}
.cardmock svg{width:22px;height:22px;fill:#2a2320;display:block;margin:2px auto 0}
.cm-brand{font-family:var(--script);font-size:17px;display:block;line-height:1;margin-top:2px}
.cardmock p{font-family:var(--display);font-style:italic;font-size:21px;line-height:1.25;margin:12px 0 0;overflow-wrap:anywhere}
.btn.wide{width:100%;margin-top:10px}
.tk-small{font-size:13.5px;color:var(--mute);margin:14px 0 0}
.tk-small a{color:var(--gold2)}
#copied{white-space:pre-wrap}

/* contact */
.contact{padding-bottom:90px}
.contact .big{display:block;text-decoration:none;font-family:var(--display);font-size:clamp(38px,9vw,92px);line-height:1.05;padding:20px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}
.contact .big small{display:block;font-family:var(--body);font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.contact .big:hover{color:var(--gold2)}
.info{margin:10px 0 34px;border-top:1px solid var(--line)}
.info div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.info dt{color:var(--gold);font-size:13px;letter-spacing:.2em;text-transform:uppercase}
.info dd{margin:0;color:var(--cream)}
