/* Staten Island Chimney Sweep -- soot sheet.
   Brushed brick and plum shadow on chimney-cream. */

:root
{
 --ss8-brick: #A94B2D;
 --ss8-brick-dark: #77321A;
 --ss8-ember: #EF9C4A;
 --ss8-ember-glow: #FFCD9B;
 --ss8-coast: #6B4A5E;
 --ss8-charcoal: #131110;
 --ss8-charcoal-2: #1D1A18;
 --ss8-charcoal-3: #2A2624;
 --ss8-cream: #F7F3EC;
 --ss8-cream-2: #EEE5D9;
 --ss8-ink: #161311;
 --ss8-muted: #6E6158;
 --ss8-line: rgba(19,17,16,.12);
 --ss8-gold: #DFAE45;
 --ss8-green-ok: #2D7C52;
 --ss8-radius: 16px;
 --ss8-radius-lg: 26px;
 --ss8-shadow-sm: 0 4px 14px rgba(19,17,16,.08);
 --ss8-shadow: 0 14px 40px rgba(19,17,16,.14);
 --ss8-shadow-lg: 0 30px 70px rgba(19,17,16,.26);
 --ss8-wrap: 1200px;
 --ss8-font: 'Instrument Sans',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
 --ss8-display: 'Yanone Kaffeesatz','Arial Narrow',var(--ss8-font);
 --ss8-header-h: 76px;
}

*,*::before,*::after
{
 box-sizing: border-box;
}

html
{
 scroll-behavior: smooth;
 scroll-padding-top: 90px;
 -webkit-text-size-adjust: 100%;
}

body
{
 margin: 0;
 font-family: var(--ss8-font);
 color: var(--ss8-ink);
 background: var(--ss8-cream);
 font-size: 17px;
 line-height: 1.65;
 overflow-x: hidden;
 -webkit-font-smoothing: antialiased;
}

img
{
 max-width: 100%;
 height: auto;
 display: block;
}

a
{
 color: var(--ss8-brick);
 text-decoration: none;
}

a:hover
{
 color: var(--ss8-brick-dark);
}

button
{
 font-family: inherit;
}

h1,h2,h3,h4
{
 font-family: var(--ss8-display);
 font-weight: 700;
 line-height: 1.08;
 margin: 0 0 .5em;
 letter-spacing: .4px;
 text-transform: uppercase;
}

h1
{
 font-size: clamp(2.15rem,5.4vw,4.15rem);
}

h2
{
 font-size: clamp(1.85rem,3.9vw,3rem);
}

h3
{
 font-size: clamp(1.15rem,1.7vw,1.45rem);
}

p
{
 margin: 0 0 1.1em;
}

.hearthspan
{
 width: min(var(--ss8-wrap),92%);
 margin-inline: auto;
}

.midslate
{
 text-align: center;
}

.hushaid8
{
 position: absolute;
 width: 1px;
 height: 1px;
 padding: 0;
 margin: -1px;
 overflow: hidden;
 clip: rect(0,0,0,0);
 white-space: nowrap;
 border: 0;
}

.stile-link
{
 position: absolute;
 left: -9999px;
 top: 0;
 background: var(--ss8-brick);
 color: #fff;
 padding: 12px 20px;
 z-index: 9999;
}

.stile-link:focus
{
 left: 10px;
 top: 10px;
}

:focus-visible
{
 outline: 3px solid var(--ss8-ember);
 outline-offset: 3px;
}

#bg-fx-ss
{
 position: fixed;
 inset: 0;
 z-index: 0;
 pointer-events: none;
 overflow: hidden;
}

#emberCanvas-ss
{
 position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 opacity: .55;
}

.emberhaze8
{
 position: absolute;
 border-radius: 50%;
 filter: blur(70px);
 opacity: .34;
 will-change: transform;
}

.emberhaze8-a
{
 width: 520px;
 height: 520px;
 background: radial-gradient(circle at 30% 30%,var(--ss8-ember),transparent 68%);
 top: -140px;
 left: -120px;
 animation: float1 26s ease-in-out infinite;
}

.emberhaze8-b
{
 width: 640px;
 height: 640px;
 background: radial-gradient(circle at 60% 40%,var(--ss8-brick),transparent 66%);
 top: 38%;
 right: -220px;
 animation: float2 32s ease-in-out infinite;
}

.emberhaze8-c
{
 width: 420px;
 height: 420px;
 background: radial-gradient(circle at 50% 50%,var(--ss8-gold),transparent 65%);
 bottom: -120px;
 left: 22%;
 animation: float3 29s ease-in-out infinite;
}

@keyframes float1
{
 0%,100%
 {
  transform: translate3d(0,0,0) scale(1);
 }
 50%
 {
  transform: translate3d(90px,120px,0) scale(1.16);
 }
}

@keyframes float2
{
 0%,100%
 {
  transform: translate3d(0,0,0) scale(1.05);
 }
 50%
 {
  transform: translate3d(-120px,-90px,0) scale(.9);
 }
}

@keyframes float3
{
 0%,100%
 {
  transform: translate3d(0,0,0) scale(.95);
 }
 50%
 {
  transform: translate3d(70px,-110px,0) scale(1.2);
 }
}

main,header,footer,.weathervane
{
 position: relative;
 z-index: 1;
}

.bellpull
{
 --ss8-bg: var(--ss8-brick);
 --ss8-fg: #fff;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: .6rem;
 background: var(--ss8-bg);
 color: var(--ss8-fg);
 font-weight: 700;
 font-size: 1.02rem;
 padding: 16px 30px;
 border-radius: 60px;
 border: 0;
 cursor: pointer;
 letter-spacing: .3px;
 box-shadow: 0 10px 26px rgba(178,58,33,.32);
 transition: transform .22s cubic-bezier(.2,.8,.3,1),box-shadow .22s,background .22s;
 position: relative;
 overflow: hidden;
 text-align: center;
}

.bellpull:hover
{
 transform: translateY(-3px);
 box-shadow: 0 18px 40px rgba(178,58,33,.42);
 color: #fff;
}

.bellpull:active
{
 transform: translateY(-1px);
}

.bellpull::after
{
 content: "";
 position: absolute;
 top: 0;
 left: -60%;
 width: 40%;
 height: 100%;
 background: linear-gradient(100deg,transparent,rgba(255,255,255,.42),transparent);
 transform: skewX(-18deg);
 animation: sheen 4.5s ease-in-out infinite;
}

@keyframes sheen
{
 0%,72%
 {
  left: -60%;
 }
 88%,100%
 {
  left: 135%;
 }
}

.bellpull-soot
{
 --ss8-bg: linear-gradient(135deg,var(--ss8-ember),var(--ss8-brick));
 box-shadow: 0 10px 26px rgba(240,128,60,.4);
}

.bellpull-pale8
{
 --ss8-bg: transparent;
 --ss8-fg: #fff;
 border: 2px solid rgba(255,255,255,.6);
 box-shadow: none;
}

.bellpull-pale8:hover
{
 background: rgba(255,255,255,.12);
 box-shadow: none;
}

.bellpull-night8
{
 --ss8-bg: var(--ss8-charcoal);
 box-shadow: 0 10px 26px rgba(19,17,16,.3);
}

.bellpull-grand
{
 padding: 19px 38px;
 font-size: 1.12rem;
}

.bellpull-broadside
{
 display: flex;
 width: 100%;
}

.weathervane
{
 background: var(--ss8-charcoal);
 color: #DFD2C1;
 font-size: .86rem;
 letter-spacing: .3px;
}

.weathervane .hearthspan
{
 display: flex;
 flex-wrap: wrap;
 gap: 8px 26px;
 align-items: center;
 justify-content: space-between;
 padding: 9px 0;
}

.weathervane b
{
 color: #fff;
}

.weathervane .wv8-bead
{
 display: inline-flex;
 align-items: center;
 gap: 7px;
}

.stokedember-dot
{
 width: 8px;
 height: 8px;
 border-radius: 50%;
 background: #4AC57F;
 box-shadow: 0 0 0 0 rgba(73,199,126,.7);
 animation: pulseDot 2s infinite;
}

@keyframes pulseDot
{
 70%
 {
  box-shadow: 0 0 0 9px rgba(73,199,126,0);
 }
 100%
 {
  box-shadow: 0 0 0 0 rgba(73,199,126,0);
 }
}

.ridgebeam8
{
 position: sticky;
 top: 0;
 z-index: 900;
 background: rgba(246,240,231,.86);
 backdrop-filter: blur(14px);
 -webkit-backdrop-filter: blur(14px);
 border-bottom: 1px solid var(--ss8-line);
 transition: box-shadow .3s,background .3s;
}

.ridgebeam8.ashed
{
 box-shadow: 0 8px 30px rgba(19,17,16,.13);
 background: rgba(246,240,231,.96);
}

.ridgebeam8 .hearthspan
{
 width: min(1360px,94%);
}

.catwalk8
{
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 18px;
 min-height: var(--ss8-header-h);
}

.guildmark
{
 display: flex;
 align-items: center;
 gap: 12px;
 color: var(--ss8-ink);
 flex: 0 0 auto;
}

.guildmark:hover
{
 color: var(--ss8-ink);
}

.guildmark-token
{
 width: 46px;
 height: 46px;
 flex: 0 0 auto;
 filter: drop-shadow(0 4px 8px rgba(178,58,33,.3));
}

.guildmark-slip
{
 display: flex;
 flex-direction: column;
 line-height: 1.05;
}

.guildmark-slip strong
{
 font-family: var(--ss8-display);
 font-size: 1.06rem;
 letter-spacing: .6px;
 text-transform: uppercase;
}

.guildmark-slip span
{
 font-size: .7rem;
 letter-spacing: 2.4px;
 text-transform: uppercase;
 color: var(--ss8-brick);
 font-weight: 600;
}

.ladderway
{
 display: flex;
 align-items: center;
 gap: 22px;
 list-style: none;
 margin: 0;
 padding: 0;
}

.ladderway a
{
 color: var(--ss8-ink);
 font-weight: 600;
 font-size: .92rem;
 white-space: nowrap;
 position: relative;
 padding: 6px 0;
}

.ladderway a::after
{
 content: "";
 position: absolute;
 left: 0;
 bottom: 0;
 height: 2px;
 width: 0;
 background: var(--ss8-brick);
 transition: width .28s;
}

.ladderway a:hover::after,.ladderway a.litflue::after
{
 width: 100%;
}

.catwalk8-drive
{
 display: flex;
 align-items: center;
 gap: 14px;
 flex: 0 0 auto;
}

.catwalk8-digits
{
 display: flex;
 flex-direction: column;
 line-height: 1.1;
 text-align: right;
}

.catwalk8-digits small
{
 font-size: .68rem;
 text-transform: uppercase;
 letter-spacing: 1.4px;
 color: var(--ss8-muted);
}

.catwalk8-digits b
{
 font-family: var(--ss8-display);
 font-size: 1.22rem;
 color: var(--ss8-brick);
}

.chimneydoor
{
 display: none;
 width: 48px;
 height: 44px;
 border: 1px solid var(--ss8-line);
 background: #fff;
 border-radius: 12px;
 cursor: pointer;
 padding: 0;
 position: relative;
}

.chimneydoor span
{
 position: absolute;
 left: 13px;
 width: 22px;
 height: 2px;
 background: var(--ss8-ink);
 transition: .3s;
}

.chimneydoor span:nth-child(1)
{
 top: 15px;
}

.chimneydoor span:nth-child(2)
{
 top: 21px;
}

.chimneydoor span:nth-child(3)
{
 top: 27px;
}

.chimneydoor[aria-expanded="true"] span:nth-child(1)
{
 top: 21px;
 transform: rotate(45deg);
}

.chimneydoor[aria-expanded="true"] span:nth-child(2)
{
 opacity: 0;
}

.chimneydoor[aria-expanded="true"] span:nth-child(3)
{
 top: 21px;
 transform: rotate(-45deg);
}

.rooftopfold
{
 position: relative;
 color: #fff;
 padding: clamp(56px,8vw,104px) 0 clamp(70px,9vw,120px);
 overflow: hidden;
 isolation: isolate;
}

.rooftopfold-scrim
{
 position: absolute;
 inset: 0;
 z-index: -2;
}

.rooftopfold-scrim img
{
 width: 100%;
 height: 100%;
 object-fit: cover;
 transform: scale(1.06);
 animation: kenburns 24s ease-in-out infinite alternate;
}

@keyframes kenburns
{
 to
 {
  transform: scale(1.17) translate3d(-1.5%,-1.5%,0);
 }
}

.rooftopfold::before
{
 content: "";
 position: absolute;
 inset: 0;
 z-index: -1;
 background: linear-gradient(100deg,rgba(18,14,12,.95) 0%,rgba(26,18,14,.86) 38%,rgba(181,57,31,.6) 74%,rgba(242,145,63,.42) 100%);
}

.rooftopfold-slates
{
 display: grid;
 grid-template-columns: 1.15fr .85fr;
 gap: 52px;
 align-items: center;
}

.ridgetag8
{
 display: inline-flex;
 align-items: center;
 gap: 9px;
 background: rgba(255,255,255,.12);
 border: 1px solid rgba(255,255,255,.26);
 color: #fff;
 padding: 8px 17px;
 border-radius: 60px;
 font-size: .79rem;
 font-weight: 700;
 letter-spacing: 1.6px;
 text-transform: uppercase;
 margin-bottom: 22px;
 backdrop-filter: blur(6px);
}

.rooftopfold h1
{
 color: #fff;
 text-shadow: 0 6px 30px rgba(0,0,0,.4);
}

.rooftopfold h1 .emberline8
{
 color: var(--ss8-ember-glow);
 display: inline-block;
}

.rooftopfold-underline8
{
 font-size: clamp(1.02rem,1.5vw,1.2rem);
 color: #EBE0D3;
 max-width: 610px;
}

.rooftopfold-pulls
{
 display: flex;
 flex-wrap: wrap;
 gap: 14px;
 margin: 30px 0 26px;
}

.rooftopfold-charms
{
 display: flex;
 flex-wrap: wrap;
 gap: 10px 22px;
 list-style: none;
 padding: 0;
 margin: 0;
 font-size: .92rem;
 color: #E7DBCF;
}

.rooftopfold-charms li
{
 display: flex;
 align-items: center;
 gap: 8px;
}

.charm-check
{
 width: 20px;
 height: 20px;
 flex: 0 0 auto;
 border-radius: 50%;
 background: rgba(73,199,126,.2);
 display: grid;
 place-items: center;
}

.charm-check svg
{
 width: 12px;
 height: 12px;
 stroke: #6CE19E;
 fill: none;
 stroke-width: 3;
}

.luckcard
{
 background: linear-gradient(160deg,rgba(255,255,255,.98),rgba(246,240,231,.94));
 color: var(--ss8-ink);
 border-radius: var(--ss8-radius-lg);
 padding: 30px 28px;
 box-shadow: var(--ss8-shadow-lg);
 border: 1px solid rgba(255,255,255,.6);
 position: relative;
 animation: floaty 6.5s ease-in-out infinite;
}

@keyframes floaty
{
 0%,100%
 {
  transform: translateY(0);
 }
 50%
 {
  transform: translateY(-13px);
 }
}

.luckcard-token
{
 position: absolute;
 top: -18px;
 right: -10px;
 background: var(--ss8-brick);
 color: #fff;
 font-family: var(--ss8-display);
 font-size: .82rem;
 letter-spacing: 1.4px;
 padding: 9px 16px;
 border-radius: 40px;
 box-shadow: 0 8px 20px rgba(178,58,33,.4);
 text-transform: uppercase;
 animation: wobble 5s ease-in-out infinite;
}

@keyframes wobble
{
 0%,100%
 {
  transform: rotate(-3deg);
 }
 50%
 {
  transform: rotate(3deg);
 }
}

.luckcard-sum8
{
 font-family: var(--ss8-display);
 font-size: clamp(3.4rem,7vw,4.6rem);
 line-height: 1;
 color: var(--ss8-brick);
 display: flex;
 align-items: flex-start;
 gap: 4px;
 justify-content: center;
 margin: 6px 0 2px;
}

.luckcard-sum8 sup
{
 font-size: .42em;
 margin-top: .32em;
}

.luckcard h2
{
 font-size: 1.32rem;
 margin-bottom: 4px;
 text-align: center;
}

.luckcard .luckcard-whisper
{
 text-align: center;
 color: var(--ss8-muted);
 font-size: .9rem;
 margin-bottom: 16px;
}

.luckcard-tally
{
 list-style: none;
 margin: 0 0 20px;
 padding: 0;
 display: grid;
 gap: 9px;
 font-size: .95rem;
}

.luckcard-tally li
{
 display: flex;
 gap: 10px;
 align-items: flex-start;
}

.luckcard-tally svg
{
 width: 18px;
 height: 18px;
 flex: 0 0 auto;
 margin-top: 3px;
 stroke: var(--ss8-brick);
 fill: none;
 stroke-width: 3;
}

.luckcard-smallprint8
{
 font-size: .76rem;
 color: var(--ss8-muted);
 text-align: center;
 margin: 12px 0 0;
 line-height: 1.5;
}

.sootline
{
 background: var(--ss8-charcoal-2);
 color: #CCBFAE;
 overflow: hidden;
 padding: 13px 0;
 border-block: 1px solid rgba(255,255,255,.07);
}

.sootline-drift8
{
 display: flex;
 gap: 52px;
 white-space: nowrap;
 width: max-content;
 animation: scrollX 34s linear infinite;
 font-family: var(--ss8-display);
 letter-spacing: 2px;
 font-size: .94rem;
 text-transform: uppercase;
}

.sootline-drift8 span
{
 display: inline-flex;
 align-items: center;
 gap: 12px;
}

.sootline-drift8 b
{
 color: var(--ss8-ember);
}

@keyframes scrollX
{
 to
 {
  transform: translateX(-50%);
 }
}

section
{
 padding: clamp(56px,7vw,100px) 0;
 position: relative;
}

.slatehead
{
 max-width: 760px;
 margin: 0 auto 52px;
}

.slatehead.leftslate
{
 margin-inline: 0;
}

.chalkline8
{
 display: inline-flex;
 align-items: center;
 gap: 9px;
 color: var(--ss8-brick);
 font-weight: 800;
 letter-spacing: 2.4px;
 text-transform: uppercase;
 font-size: .78rem;
 margin-bottom: 14px;
}

.chalkline8::before
{
 content: "";
 width: 28px;
 height: 2px;
 background: var(--ss8-brick);
}

.foreword8
{
 font-size: 1.06rem;
 color: var(--ss8-muted);
}

.wash-hearth8
{
 background: linear-gradient(180deg,rgba(237,227,213,.75),rgba(246,240,231,.4));
}

.wash-soot8
{
 background: var(--ss8-charcoal);
 color: #DED2C5;
}

.wash-soot8 h2,.wash-soot8 h3
{
 color: #fff;
}

.wash-soot8 .foreword8
{
 color: #B8AB9A;
}

.wash-soot8 .chalkline8
{
 color: var(--ss8-ember-glow);
}

.wash-soot8 .chalkline8::before
{
 background: var(--ss8-ember);
}

.tallyhearth
{
 display: grid;
 grid-template-columns: repeat(4,1fr);
 gap: 22px;
}

.tallyhearth-stone
{
 background: #fff;
 border-radius: var(--ss8-radius);
 padding: 26px 20px;
 text-align: center;
 box-shadow: var(--ss8-shadow-sm);
 border: 1px solid var(--ss8-line);
 transition: transform .3s,box-shadow .3s;
}

.tallyhearth-stone:hover
{
 transform: translateY(-7px);
 box-shadow: var(--ss8-shadow);
}

.tallyhearth-stone b
{
 display: block;
 font-family: var(--ss8-display);
 font-size: clamp(2rem,3.6vw,2.9rem);
 color: var(--ss8-brick);
 line-height: 1;
}

.tallyhearth-stone span
{
 font-size: .87rem;
 color: var(--ss8-muted);
 letter-spacing: .6px;
}

.tradebench-row8
{
 display: grid;
 grid-template-columns: repeat(auto-fit,minmax(295px,1fr));
 gap: 26px;
}

.tradebench
{
 background: #fff;
 border-radius: var(--ss8-radius-lg);
 overflow: hidden;
 box-shadow: var(--ss8-shadow-sm);
 border: 1px solid var(--ss8-line);
 display: flex;
 flex-direction: column;
 transition: transform .35s cubic-bezier(.2,.8,.3,1),box-shadow .35s;
}

.tradebench:hover
{
 transform: translateY(-10px);
 box-shadow: var(--ss8-shadow-lg);
}

.tradebench-plate
{
 position: relative;
 aspect-ratio: 16/10;
 overflow: hidden;
 background: var(--ss8-charcoal-3);
}

.tradebench-plate img
{
 width: 100%;
 height: 100%;
 object-fit: cover;
 transition: transform .7s cubic-bezier(.2,.8,.3,1);
}

.tradebench:hover .tradebench-plate img
{
 transform: scale(1.09);
}

.tradebench-plate::after
{
 content: "";
 position: absolute;
 inset: 0;
 background: linear-gradient(180deg,transparent 42%,rgba(20,16,14,.72));
}

.tradebench-token
{
 position: absolute;
 left: 18px;
 bottom: 16px;
 z-index: 2;
 width: 46px;
 height: 46px;
 border-radius: 13px;
 background: var(--ss8-brick);
 display: grid;
 place-items: center;
 box-shadow: 0 8px 20px rgba(178,58,33,.45);
}

.tradebench-token svg
{
 width: 24px;
 height: 24px;
 stroke: #fff;
 fill: none;
 stroke-width: 1.9;
 stroke-linecap: round;
 stroke-linejoin: round;
}

.tradebench-notes8
{
 padding: 24px 24px 26px;
 display: flex;
 flex-direction: column;
 flex: 1;
}

.tradebench-notes8 h3
{
 margin-bottom: 8px;
}

.tradebench-notes8 p
{
 font-size: .95rem;
 color: var(--ss8-muted);
 margin-bottom: 16px;
}

.tradebench-notes8 ul
{
 list-style: none;
 margin: 0 0 18px;
 padding: 0;
 font-size: .9rem;
 display: grid;
 gap: 6px;
}

.tradebench-notes8 li
{
 display: flex;
 gap: 9px;
 align-items: flex-start;
 color: #494139;
}

.tradebench-notes8 li::before
{
 content: "";
 width: 7px;
 height: 7px;
 border-radius: 50%;
 background: var(--ss8-ember);
 flex: 0 0 auto;
 margin-top: 8px;
}

.tradebench-pull
{
 margin-top: auto;
 font-weight: 700;
 display: inline-flex;
 align-items: center;
 gap: 8px;
 font-size: .95rem;
}

.tradebench-pull svg
{
 width: 16px;
 height: 16px;
 stroke: currentColor;
 fill: none;
 stroke-width: 2.4;
 transition: transform .3s;
}

.tradebench:hover .tradebench-pull svg
{
 transform: translateX(5px);
}

.tellboard-row
{
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 52px;
 align-items: center;
}

.tellboard-tells
{
 display: grid;
 gap: 14px;
 margin: 0;
 padding: 0;
 list-style: none;
}

.tellboard-tells li
{
 display: flex;
 gap: 15px;
 background: rgba(255,255,255,.05);
 border: 1px solid rgba(255,255,255,.1);
 border-radius: 14px;
 padding: 16px 18px;
 align-items: flex-start;
 transition: transform .3s,border-color .3s,background .3s;
}

.tellboard-tells li:hover
{
 transform: translateX(7px);
 border-color: rgba(240,128,60,.55);
 background: rgba(240,128,60,.08);
}

.tellboard-tells .tb8
{
 width: 38px;
 height: 38px;
 flex: 0 0 auto;
 border-radius: 11px;
 background: rgba(240,128,60,.16);
 display: grid;
 place-items: center;
}

.tellboard-tells .tb8 svg
{
 width: 20px;
 height: 20px;
 stroke: var(--ss8-ember-glow);
 fill: none;
 stroke-width: 2;
 stroke-linecap: round;
 stroke-linejoin: round;
}

.tellboard-tells b
{
 display: block;
 color: #fff;
 font-family: var(--ss8-display);
 letter-spacing: .5px;
 font-size: 1.02rem;
 text-transform: uppercase;
}

.tellboard-tells span
{
 font-size: .92rem;
 color: #B4A797;
}

.tellboard-plate
{
 position: relative;
 border-radius: var(--ss8-radius-lg);
 overflow: hidden;
 box-shadow: var(--ss8-shadow-lg);
}

.tellboard-plate img
{
 width: 100%;
 aspect-ratio: 4/5;
 object-fit: cover;
}

.tellboard-slip8
{
 position: absolute;
 left: 20px;
 bottom: 20px;
 right: 20px;
 background: rgba(19,17,16,.82);
 backdrop-filter: blur(9px);
 border: 1px solid rgba(255,255,255,.14);
 border-radius: 16px;
 padding: 16px 18px;
 color: #fff;
}

.tellboard-slip8 b
{
 font-family: var(--ss8-display);
 display: block;
 color: var(--ss8-ember-glow);
 letter-spacing: 1px;
}

.tellboard-slip8 span
{
 font-size: .88rem;
 color: #C8BBAA;
}

.brushstrokes
{
 display: grid;
 grid-template-columns: repeat(4,1fr);
 gap: 24px;
 counter-reset: step;
 position: relative;
}

.brushstrokes-stroke
{
 background: #fff;
 border-radius: var(--ss8-radius);
 padding: 34px 24px 26px;
 box-shadow: var(--ss8-shadow-sm);
 border: 1px solid var(--ss8-line);
 position: relative;
 transition: transform .35s,box-shadow .35s;
}

.brushstrokes-stroke:hover
{
 transform: translateY(-8px);
 box-shadow: var(--ss8-shadow);
}

.brushstrokes-numb
{
 position: absolute;
 top: -20px;
 left: 24px;
 width: 44px;
 height: 44px;
 border-radius: 14px;
 background: linear-gradient(140deg,var(--ss8-ember),var(--ss8-brick));
 color: #fff;
 font-family: var(--ss8-display);
 font-size: 1.3rem;
 display: grid;
 place-items: center;
 box-shadow: 0 10px 22px rgba(178,58,33,.35);
}

.brushstrokes-stroke h3
{
 font-size: 1.12rem;
 margin-top: 8px;
}

.brushstrokes-stroke p
{
 font-size: .93rem;
 color: var(--ss8-muted);
 margin: 0;
}

.sootalbum
{
 display: grid;
 grid-template-columns: repeat(4,1fr);
 gap: 16px;
}

.sootalbum-plate8
{
 position: relative;
 border-radius: 18px;
 overflow: hidden;
 box-shadow: var(--ss8-shadow-sm);
 aspect-ratio: 1;
 background: var(--ss8-charcoal-3);
}

.sootalbum-plate8:nth-child(1),.sootalbum-plate8:nth-child(6)
{
 grid-row: span 2;
 aspect-ratio: 1/2.06;
}

.sootalbum-plate8 img
{
 width: 100%;
 height: 100%;
 object-fit: cover;
 transition: transform .8s cubic-bezier(.2,.8,.3,1);
}

.sootalbum-plate8:hover img
{
 transform: scale(1.1);
}

.sootalbum-plate8 figcaption
{
 position: absolute;
 inset: auto 0 0 0;
 padding: 34px 16px 14px;
 background: linear-gradient(transparent,rgba(20,16,14,.86));
 color: #fff;
 font-size: .85rem;
 font-weight: 600;
 transform: translateY(6px);
 opacity: 0;
 transition: .35s;
}

.sootalbum-plate8:hover figcaption
{
 transform: translateY(0);
 opacity: 1;
}

.hearthwords
{
 display: grid;
 grid-template-columns: repeat(3,1fr);
 gap: 24px;
}

.hearthword
{
 background: #fff;
 border-radius: var(--ss8-radius);
 padding: 28px 26px;
 box-shadow: var(--ss8-shadow-sm);
 border: 1px solid var(--ss8-line);
 position: relative;
 transition: transform .35s,box-shadow .35s;
}

.hearthword:hover
{
 transform: translateY(-8px);
 box-shadow: var(--ss8-shadow);
}

.hearthword .chimquote
{
 position: absolute;
 top: 16px;
 right: 22px;
 font-family: var(--ss8-display);
 font-size: 4.2rem;
 color: rgba(178,58,33,.13);
 line-height: 1;
}

.luckstars8
{
 display: flex;
 gap: 3px;
 margin-bottom: 12px;
}

.luckstars8 svg
{
 width: 18px;
 height: 18px;
 fill: var(--ss8-gold);
}

.hearthword p
{
 font-size: .98rem;
 color: #494139;
}

.hearthword footer
{
 display: flex;
 align-items: center;
 gap: 12px;
 margin-top: 16px;
 border-top: 1px solid var(--ss8-line);
 padding-top: 14px;
}

.visage8
{
 width: 42px;
 height: 42px;
 border-radius: 50%;
 background: linear-gradient(140deg,var(--ss8-brick),var(--ss8-ember));
 color: #fff;
 display: grid;
 place-items: center;
 font-family: var(--ss8-display);
 font-size: 1.05rem;
 flex: 0 0 auto;
}

.hearthword footer b
{
 display: block;
 font-size: .95rem;
}

.hearthword footer span
{
 font-size: .8rem;
 color: var(--ss8-muted);
}

.routeboard
{
 display: flex;
 flex-wrap: wrap;
 gap: 11px;
 justify-content: center;
 list-style: none;
 padding: 0;
 margin: 0 0 30px;
}

.routeboard li
{
 background: #fff;
 border: 1px solid var(--ss8-line);
 border-radius: 60px;
 padding: 10px 20px;
 font-size: .92rem;
 font-weight: 600;
 box-shadow: var(--ss8-shadow-sm);
 transition: transform .25s,background .25s,color .25s,border-color .25s;
}

.routeboard li:hover
{
 transform: translateY(-4px);
 background: var(--ss8-brick);
 color: #fff;
 border-color: var(--ss8-brick);
}

.hearthside-qa
{
 max-width: 880px;
 margin-inline: auto;
}

.hearthside-qa details
{
 background: #fff;
 border: 1px solid var(--ss8-line);
 border-radius: 14px;
 margin-bottom: 12px;
 box-shadow: var(--ss8-shadow-sm);
 overflow: hidden;
 transition: box-shadow .3s;
}

.hearthside-qa details[open]
{
 box-shadow: var(--ss8-shadow);
}

.hearthside-qa summary
{
 cursor: pointer;
 list-style: none;
 padding: 20px 58px 20px 22px;
 font-weight: 700;
 font-size: 1.03rem;
 position: relative;
}

.hearthside-qa summary::-webkit-details-marker
{
 display: none;
}

.hearthside-qa summary::after
{
 content: "";
 position: absolute;
 right: 22px;
 top: 50%;
 width: 12px;
 height: 12px;
 border-right: 2.6px solid var(--ss8-brick);
 border-bottom: 2.6px solid var(--ss8-brick);
 transform: translateY(-70%) rotate(45deg);
 transition: transform .3s;
}

.hearthside-qa details[open] summary::after
{
 transform: translateY(-25%) rotate(-135deg);
}

.hearthside-qa .hearthside-qa-notes
{
 padding: 0 22px 20px;
 color: var(--ss8-muted);
 font-size: .97rem;
}

.hearthside-qa .hearthside-qa-notes p:last-child
{
 margin-bottom: 0;
}

.bellband8
{
 position: relative;
 color: #fff;
 text-align: center;
 overflow: hidden;
 isolation: isolate;
}

.bellband8 .bellband8-scrim
{
 position: absolute;
 inset: 0;
 z-index: -2;
}

.bellband8 .bellband8-scrim img
{
 width: 100%;
 height: 100%;
 object-fit: cover;
}

.bellband8::before
{
 content: "";
 position: absolute;
 inset: 0;
 z-index: -1;
 background: linear-gradient(120deg,rgba(140,43,22,.94),rgba(19,17,16,.9));
}

.bellband8 h2
{
 color: #fff;
 font-size: clamp(2rem,4.4vw,3.3rem);
}

.bellband8 p
{
 color: #F0E4D7;
 max-width: 660px;
 margin-inline: auto;
 font-size: 1.06rem;
}

.bellband8-pulls
{
 display: flex;
 gap: 15px;
 justify-content: center;
 flex-wrap: wrap;
 margin-top: 28px;
}

.bellband8-digits
{
 display: block;
 font-family: var(--ss8-display);
 font-size: clamp(2rem,5vw,2.9rem);
 color: #fff;
 margin-top: 20px;
 letter-spacing: 1px;
}

.bellband8-digits:hover
{
 color: var(--ss8-ember-glow);
}

.yardgate-row
{
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 44px;
 align-items: start;
}

.yardgate-row>*
{
 min-width: 0;
}

.yardgate-lines a,.ashpan8 address a
{
 overflow-wrap: anywhere;
}

.chalkcard8
{
 background: #fff;
 border-radius: var(--ss8-radius-lg);
 padding: 34px 32px;
 box-shadow: var(--ss8-shadow);
 border: 1px solid var(--ss8-line);
}

.slot8b
{
 margin-bottom: 16px;
}

.slot8b label
{
 display: block;
 font-weight: 700;
 font-size: .86rem;
 margin-bottom: 7px;
 letter-spacing: .4px;
}

.slot8b input,.slot8b select,.slot8b textarea
{
 width: 100%;
 padding: 14px 16px;
 border: 1.6px solid var(--ss8-line);
 border-radius: 12px;
 font-size: 1rem;
 font-family: inherit;
 background: #FBF9F5;
 color: var(--ss8-ink);
 transition: border-color .25s,box-shadow .25s,background .25s;
}

.slot8b input:focus,.slot8b select:focus,.slot8b textarea:focus
{
 outline: none;
 border-color: var(--ss8-brick);
 background: #fff;
 box-shadow: 0 0 0 4px rgba(178,58,33,.12);
}

.slot8b textarea
{
 resize: vertical;
 min-height: 110px;
}

.twinslate
{
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 16px;
}

.chalkaside8
{
 font-size: .79rem;
 color: var(--ss8-muted);
 margin-top: 12px;
 text-align: center;
}

.chalkline8b
{
 display: none;
 padding: 14px 16px;
 border-radius: 12px;
 font-size: .94rem;
 margin-bottom: 16px;
}

.chalkline8b.cleansweep8
{
 display: block;
 background: rgba(46,125,81,.1);
 color: #2D7C52;
 border: 1px solid rgba(46,125,81,.3);
}

.chalkline8b.missweep8
{
 display: block;
 background: rgba(178,58,33,.1);
 color: var(--ss8-brick-dark);
 border: 1px solid rgba(178,58,33,.3);
}

.yardgate-lines
{
 list-style: none;
 padding: 0;
 margin: 0 0 26px;
 display: grid;
 gap: 16px;
}

.yardgate-lines li
{
 display: flex;
 gap: 16px;
 align-items: flex-start;
}

.yardgate-token
{
 width: 48px;
 height: 48px;
 flex: 0 0 auto;
 border-radius: 14px;
 background: rgba(178,58,33,.1);
 display: grid;
 place-items: center;
}

.yardgate-token svg
{
 width: 22px;
 height: 22px;
 stroke: var(--ss8-brick);
 fill: none;
 stroke-width: 1.9;
 stroke-linecap: round;
 stroke-linejoin: round;
}

.yardgate-lines b
{
 display: block;
 font-family: var(--ss8-display);
 letter-spacing: .6px;
 text-transform: uppercase;
 font-size: .95rem;
}

.yardgate-lines a,.yardgate-lines span
{
 color: var(--ss8-muted);
 font-size: 1rem;
}

.yardgate-lines a:hover
{
 color: var(--ss8-brick);
}

.parcel-frame8
{
 border-radius: var(--ss8-radius);
 overflow: hidden;
 box-shadow: var(--ss8-shadow-sm);
 border: 1px solid var(--ss8-line);
 line-height: 0;
}

.parcel-frame8 iframe
{
 width: 100%;
 height: 290px;
 border: 0;
}

.bellwatch
{
 background: #fff;
 border: 1px solid var(--ss8-line);
 border-radius: var(--ss8-radius);
 padding: 22px 24px;
 box-shadow: var(--ss8-shadow-sm);
 margin-bottom: 26px;
}

.bellwatch dl
{
 display: grid;
 grid-template-columns: auto 1fr;
 gap: 8px 18px;
 margin: 0;
 font-size: .95rem;
}

.bellwatch dt
{
 font-weight: 700;
}

.bellwatch dd
{
 margin: 0;
 text-align: right;
 color: var(--ss8-muted);
}

.ashpan8
{
 background: var(--ss8-charcoal);
 color: #AA9D8C;
 padding: 70px 0 0;
 font-size: .95rem;
}

.ashpan8-row
{
 display: grid;
 grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
 gap: 38px;
 padding-bottom: 44px;
}

.ashpan8 h4
{
 color: #fff;
 font-size: 1rem;
 letter-spacing: 1.6px;
 margin-bottom: 18px;
}

.ashpan8 a
{
 color: #AA9D8C;
}

.ashpan8 a:hover
{
 color: var(--ss8-ember-glow);
}

.ashpan8-lines
{
 list-style: none;
 padding: 0;
 margin: 0;
 display: grid;
 gap: 10px;
}

.ashpan8-token
{
 display: flex;
 align-items: center;
 gap: 12px;
 margin-bottom: 16px;
 color: #fff;
}

.ashpan8-token strong
{
 font-family: var(--ss8-display);
 font-size: 1.1rem;
 letter-spacing: .6px;
 text-transform: uppercase;
}

.ashpan8-lip
{
 border-top: 1px solid rgba(255,255,255,.1);
 padding: 20px 0;
 display: flex;
 flex-wrap: wrap;
 gap: 10px 24px;
 justify-content: space-between;
 font-size: .84rem;
}

.nightlantern
{
 position: fixed;
 right: 22px;
 bottom: 26px;
 z-index: 950;
 display: inline-flex;
 align-items: center;
 gap: 12px;
 background: linear-gradient(135deg,var(--ss8-brick),var(--ss8-brick-dark));
 color: #fff;
 padding: 15px 24px 15px 17px;
 border-radius: 60px;
 font-weight: 800;
 letter-spacing: .4px;
 box-shadow: 0 16px 40px rgba(178,58,33,.5);
 transition: transform .3s cubic-bezier(.2,.8,.3,1),box-shadow .3s;
}

.nightlantern:hover
{
 transform: scale(1.06) translateY(-3px);
 color: #fff;
 box-shadow: 0 22px 52px rgba(178,58,33,.6);
}

.nightlantern .nl8-halo
{
 position: relative;
 width: 40px;
 height: 40px;
 border-radius: 50%;
 background: rgba(255,255,255,.18);
 display: grid;
 place-items: center;
 flex: 0 0 auto;
}

.nightlantern .nl8-halo::before,.nightlantern .nl8-halo::after
{
 content: "";
 position: absolute;
 inset: 0;
 border-radius: 50%;
 border: 2px solid rgba(255,255,255,.6);
 animation: ring 2.6s ease-out infinite;
}

.nightlantern .nl8-halo::after
{
 animation-delay: 1.3s;
}

@keyframes ring
{
 0%
 {
  transform: scale(1);
  opacity: .85;
 }
 100%
 {
  transform: scale(2.1);
  opacity: 0;
 }
}

.nightlantern svg
{
 width: 20px;
 height: 20px;
 stroke: #fff;
 fill: none;
 stroke-width: 2;
 animation: shake 3.2s ease-in-out infinite;
}

@keyframes shake
{
 0%,86%,100%
 {
  transform: rotate(0);
 }
 90%
 {
  transform: rotate(-14deg);
 }
 94%
 {
  transform: rotate(14deg);
 }
}

.nightlantern .nl8-slip
{
 display: flex;
 flex-direction: column;
 line-height: 1.15;
}

.nightlantern .nl8-slip small
{
 font-size: .66rem;
 text-transform: uppercase;
 letter-spacing: 1.4px;
 opacity: .85;
 font-weight: 600;
}

.nightlantern .nl8-slip b
{
 font-family: var(--ss8-display);
 font-size: 1.12rem;
 letter-spacing: .6px;
}

.bootbar8
{
 display: none;
 position: fixed;
 left: 0;
 right: 0;
 bottom: 0;
 z-index: 960;
 background: rgba(19,17,16,.97);
 backdrop-filter: blur(12px);
 border-top: 1px solid rgba(255,255,255,.12);
 padding: 9px 10px calc(9px + env(safe-area-inset-bottom));
}

.bootbar8 ul
{
 list-style: none;
 margin: 0;
 padding: 0;
 display: grid;
 grid-template-columns: 1.4fr 1fr 1fr;
 gap: 8px;
}

.bootbar8 a
{
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 3px;
 padding: 9px 4px;
 border-radius: 12px;
 color: #E9DDD0;
 font-size: .72rem;
 font-weight: 700;
 letter-spacing: .4px;
 text-transform: uppercase;
}

.bootbar8 a svg
{
 width: 19px;
 height: 19px;
 stroke: currentColor;
 fill: none;
 stroke-width: 2;
 stroke-linecap: round;
 stroke-linejoin: round;
}

.bootbar8 .bb8-pull
{
 background: linear-gradient(135deg,var(--ss8-brick),var(--ss8-brick-dark));
 color: #fff;
 box-shadow: 0 6px 18px rgba(178,58,33,.5);
 animation: mbPulse 2.4s ease-in-out infinite;
}

@keyframes mbPulse
{
 0%,100%
 {
  box-shadow: 0 6px 18px rgba(178,58,33,.5);
 }
 50%
 {
  box-shadow: 0 6px 26px rgba(240,128,60,.85);
 }
}

.fluerise
{
 position: fixed;
 right: 26px;
 bottom: 104px;
 z-index: 940;
 width: 46px;
 height: 46px;
 border-radius: 50%;
 background: var(--ss8-charcoal);
 color: #fff;
 display: grid;
 place-items: center;
 box-shadow: var(--ss8-shadow);
 opacity: 0;
 visibility: hidden;
 transform: translateY(10px);
 transition: .3s;
 border: 0;
 cursor: pointer;
}

.fluerise.brushedin
{
 opacity: 1;
 visibility: visible;
 transform: translateY(0);
}

.fluerise svg
{
 width: 18px;
 height: 18px;
 stroke: #fff;
 fill: none;
 stroke-width: 2.6;
}

.emerge8
{
 opacity: 0;
 transform: translateY(34px);
 transition: opacity .8s cubic-bezier(.2,.8,.3,1),transform .8s cubic-bezier(.2,.8,.3,1);
}

.emerge8.sootless
{
 opacity: 1;
 transform: none;
}

.emerge8.ssb1
{
 transition-delay: .1s;
}

.emerge8.ssb2
{
 transition-delay: .2s;
}

.emerge8.ssb3
{
 transition-delay: .3s;
}

.emerge8.ssb4
{
 transition-delay: .4s;
}

.emerge8.ssb5
{
 transition-delay: .5s;
}

.emerge8.ssb6
{
 transition-delay: .6s;
}

@media (max-width:1080px)
{
 .rooftopfold-slates
 {
  grid-template-columns: 1fr;
  gap: 44px;
 }
 .luckcard
 {
  max-width: 520px;
 }
 .tallyhearth
 {
  grid-template-columns: repeat(2,1fr);
 }
 .brushstrokes
 {
  grid-template-columns: repeat(2,1fr);
  row-gap: 38px;
 }
 .hearthwords
 {
  grid-template-columns: 1fr;
 }
 .ashpan8-row
 {
  grid-template-columns: 1fr 1fr;
 }
 .sootalbum
 {
  grid-template-columns: repeat(3,1fr);
 }
}

@media (max-width:1440px)
{
 .ladderway
 {
  gap: 18px;
 }
 .ladderway a
 {
  font-size: .9rem;
 }
 .catwalk8-digits
 {
  display: none;
 }
}

@media (max-width:1240px)
{
 .ladderway
 {
  gap: 15px;
 }
 .ladderway a
 {
  font-size: .86rem;
 }
 .ladderway li:has(.catwalk8-faded)
 {
  display: none;
 }
 .catwalk8-faded
 {
  display: none;
 }
}

@media (max-width:1150px)
{
 .ladderway
 {
  position: fixed;
  inset: var(--ss8-header-h) 0 auto 0;
  background: var(--ss8-cream);
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 10px 6% 26px;
  border-bottom: 1px solid var(--ss8-line);
  box-shadow: var(--ss8-shadow);
  transform: translateY(-135%);
  transition: transform .4s cubic-bezier(.2,.8,.3,1);
  max-height: calc(100vh - var(--ss8-header-h));
  overflow: auto;
 }
 .ladderway.flungwide
 {
  transform: translateY(0);
 }
 .ladderway li:has(.catwalk8-faded)
 {
  display: block;
 }
 .catwalk8-faded
 {
  display: block;
 }
 .ladderway li
 {
  border-bottom: 1px solid var(--ss8-line);
 }
 .ladderway a
 {
  display: block;
  padding: 15px 0;
  font-size: 1.05rem;
 }
 .chimneydoor
 {
  display: block;
 }
 .catwalk8-digits
 {
  display: none;
 }
 .catwalk8-drive .bellpull
 {
  padding: 12px 20px;
  font-size: .92rem;
 }
 .tellboard-row,.yardgate-row
 {
  grid-template-columns: 1fr;
  gap: 34px;
 }
 .nightlantern
 {
  display: none;
 }
 .bootbar8
 {
  display: block;
 }
 body
 {
  padding-bottom: 74px;
 }
 .fluerise
 {
  bottom: 88px;
  right: 16px;
 }
}

@media (max-width:640px)
{
 body
 {
  font-size: 16px;
 }
 .weathervane .hearthspan
 {
  justify-content: center;
  text-align: center;
  font-size: .8rem;
  gap: 6px 16px;
  padding: 7px 0;
 }
 .weathervane .wv8-fold,.weathervane .wv8-cry
 {
  display: none;
 }
 .catwalk8-pull-slip
 {
  display: none;
 }
 .catwalk8-drive .bellpull
 {
  padding: 12px 14px;
  border-radius: 50%;
 }
 .catwalk8-drive
 {
  gap: 9px;
 }
 .tallyhearth,.brushstrokes
 {
  grid-template-columns: 1fr 1fr;
  gap: 14px;
 }
 .sootalbum
 {
  grid-template-columns: repeat(2,1fr);
  gap: 10px;
 }
 .sootalbum-plate8:nth-child(1),.sootalbum-plate8:nth-child(6)
 {
  grid-row: span 1;
  aspect-ratio: 1;
 }
 .twinslate
 {
  grid-template-columns: 1fr;
 }
 .chalkcard8
 {
  padding: 26px 20px;
 }
 .ashpan8-row
 {
  grid-template-columns: 1fr;
  gap: 30px;
 }
 .rooftopfold-pulls .bellpull
 {
  flex: 1 1 100%;
 }
 .catwalk8
 {
  gap: 8px;
 }
 .guildmark
 {
  min-width: 0;
  gap: 9px;
 }
 .guildmark-token
 {
  width: 38px;
  height: 38px;
 }
 .guildmark-slip
 {
  min-width: 0;
 }
 .guildmark-slip span
 {
  font-size: .56rem;
  letter-spacing: 1.2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
 }
 .guildmark-slip strong
 {
  font-size: .85rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
 }
 .tallyhearth .tallyhearth-stone
 {
  padding: 20px 12px;
 }
 .tradebench-notes8,.chalkcard8
 {
  overflow-wrap: break-word;
 }
}

@media (max-width:400px)
{
 .hearthspan
 {
  width: 94%;
 }
 .brushstrokes
 {
  grid-template-columns: 1fr;
  row-gap: 34px;
 }
 .tallyhearth
 {
  gap: 10px;
 }
 .guildmark-token
 {
  width: 34px;
  height: 34px;
 }
 .guildmark-slip strong
 {
  font-size: .8rem;
 }
 .catwalk8-drive .bellpull
 {
  padding: 11px 13px;
 }
 .chimneydoor
 {
  width: 44px;
 }
}

@media (prefers-reduced-motion:reduce)
{
 *,*::before,*::after
 {
  animation-duration: .001ms!important;
  animation-iteration-count: 1!important;
  transition-duration: .001ms!important;
 }
 html
 {
  scroll-behavior: auto;
 }
 .emerge8
 {
  opacity: 1;
  transform: none;
 }
}

@media print
{
 .ridgebeam8,.nightlantern,.bootbar8,.fluerise,#bg-fx-ss,.sootline
 {
  display: none!important;
 }
 body
 {
  background: #fff;
  color: #000;
 }
}

.luckcard-luck
{
 font-family: var(--ss8-display);
 font-size: clamp(3rem,6.4vw,4.3rem);
 line-height: 1;
 color: var(--ss8-brick);
 text-align: center;
 letter-spacing: 2px;
 margin: 8px 0 2px;
}

.luckcard-luck small
{
 display: block;
 font-family: var(--ss8-font);
 font-size: .31em;
 letter-spacing: 3.4px;
 color: var(--ss8-coast);
 font-weight: 800;
 margin-top: 6px;
}

.luckcard .luckcard-tally svg
{
 stroke: var(--ss8-coast);
}

.token-luck
{
 background: var(--ss8-coast);
 box-shadow: 0 8px 20px rgba(30,111,104,.42);
}

.charm-check-plum
{
 background: rgba(30,111,104,.22);
}

.charm-check-plum svg
{
 stroke: #C9A3BD;
}

.shudder-aside
{
 display: flex;
 gap: 12px;
 align-items: flex-start;
 background: rgba(242,145,63,.1);
 border: 1px solid rgba(242,145,63,.34);
 border-radius: 14px;
 padding: 16px 18px;
 margin-top: 24px;
}

.shudder-aside svg
{
 width: 22px;
 height: 22px;
 flex: 0 0 auto;
 margin-top: 2px;
 stroke: var(--ss8-brick);
 fill: none;
 stroke-width: 2;
 stroke-linecap: round;
 stroke-linejoin: round;
}

.shudder-aside p
{
 margin: 0;
 font-size: .94rem;
}

.sweepdesk-card
{
 background: linear-gradient(158deg,var(--ss8-charcoal) 0%,var(--ss8-charcoal-2) 55%,#3B261D 100%);
 color: #DDD0C2;
 border-radius: var(--ss8-radius-lg);
 padding: 38px 34px;
 box-shadow: var(--ss8-shadow-lg);
 border: 1px solid rgba(255,255,255,.09);
 position: relative;
 overflow: hidden;
}

.sweepdesk-card::before
{
 content: "";
 position: absolute;
 top: -90px;
 right: -70px;
 width: 260px;
 height: 260px;
 border-radius: 50%;
 background: radial-gradient(circle,rgba(242,145,63,.34),transparent 68%);
 filter: blur(14px);
 animation: float1 18s ease-in-out infinite;
}

.sweepdesk-card>*
{
 position: relative;
 z-index: 1;
}

.sweepdesk-chalk
{
 display: inline-flex;
 align-items: center;
 gap: 9px;
 color: var(--ss8-ember-glow);
 font-weight: 800;
 letter-spacing: 2.4px;
 text-transform: uppercase;
 font-size: .74rem;
 margin-bottom: 12px;
}

.sweepdesk-chalk::before
{
 content: "";
 width: 26px;
 height: 2px;
 background: var(--ss8-ember);
}

.sweepdesk-card h3
{
 color: #fff;
 font-size: clamp(1.4rem,2.4vw,1.9rem);
 margin-bottom: 10px;
}

.sweepdesk-card p
{
 color: #B6A998;
 font-size: .99rem;
}

.sweepdesk-digits
{
 display: block;
 font-family: var(--ss8-display);
 font-size: clamp(2.1rem,4.6vw,3rem);
 color: #fff;
 letter-spacing: 1px;
 margin: 20px 0 18px;
 text-align: center;
 transition: color .25s,transform .25s;
}

.sweepdesk-digits:hover
{
 color: var(--ss8-ember-glow);
 transform: scale(1.03);
}

.sweepdesk-bellwatch
{
 text-align: center;
 font-size: .92rem;
 margin: 18px 0 0;
 color: #B6A998;
}

.sweepdesk-bellwatch strong
{
 color: #fff;
}

.sweepdesk-primer
{
 margin-top: 26px;
 padding-top: 22px;
 border-top: 1px solid rgba(255,255,255,.12);
}

.sweepdesk-primer h4
{
 color: #fff;
 font-size: .92rem;
 letter-spacing: 1.8px;
 margin-bottom: 14px;
}

.sweepdesk-primer ol
{
 margin: 0;
 padding: 0;
 list-style: none;
 counter-reset: ce;
 display: grid;
 gap: 12px;
}

.sweepdesk-primer li
{
 counter-increment: ce;
 display: flex;
 gap: 13px;
 align-items: flex-start;
 font-size: .94rem;
 color: #C4B7A6;
}

.sweepdesk-primer li::before
{
 content: counter(ce);
 flex: 0 0 auto;
 width: 26px;
 height: 26px;
 border-radius: 8px;
 background: rgba(242,145,63,.18);
 color: var(--ss8-ember-glow);
 font-family: var(--ss8-display);
 font-size: .9rem;
 display: grid;
 place-items: center;
 margin-top: 1px;
}

@media (max-width:640px)
{
 .sweepdesk-card
 {
  padding: 28px 22px;
 }
}

.hearthword p
{
 font-size: .95rem;
 line-height: 1.62;
}

.hearthword footer b
{
 font-size: .92rem;
 line-height: 1.3;
}

.hearthword .visage8 svg
{
 display: block;
}

@media (max-width:1080px)
{
 .hearthwords
 {
  gap: 22px;
 }
}

.bootbar8 ul.bb8-pair
{
 grid-template-columns: 1.7fr 1fr;
}

/* squeezes for the narrowest screens */
@media (max-width: 392px)
{
 .guildmark-slip strong
 {
  max-width: 46vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
 }
 .catwalk8-pull
 {
  padding-inline: 13px;
 }
}

.bootbar8 ul
{
 grid-template-columns: 1fr;
}

.brushstrokes > *
{
 min-width: 0;
}

.brushstrokes-stroke h3
{
 overflow-wrap: anywhere;
}

.tallyhearth-stone b span
{
 font-size: inherit;
 color: inherit;
 letter-spacing: 0;
}
