:root{--black:#171a19;--iron:#242a28;--steel:#55605d;--brick:#944f37;--rust:#a96f4d;--paper:#e8e2d7;--pale:#f4f0e8;--green:#283b32;--ink:#202423;--soft:#6d716e;--line:rgba(32,36,35,.24);--line-dark:rgba(232,226,215,.18);--serif:"Iowan Old Style","Baskerville","Times New Roman",serif;--sans:"Arial Narrow","Helvetica Neue",Arial,sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--pad:clamp(1.3rem,4vw,4.8rem);--space:clamp(5rem,8vw,8rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--pale);color:var(--ink);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-underline-offset:.2em}p,h1,h2,h3{margin-top:0}h1,h2,h3{font-weight:700;line-height:.91;letter-spacing:-.055em}h1{font-size:clamp(3.8rem,8vw,8rem)}h2{font-size:clamp(3rem,6vw,6rem)}h3{font-size:clamp(2rem,3vw,3.2rem)}.sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}.skip{position:fixed;z-index:200;top:0;left:50%;padding:.7rem 1rem;background:var(--rust);transform:translate(-50%,-150%)}.skip:focus{transform:translate(-50%,.5rem)}.serial,.chapter,.wayfinding{font-family:var(--mono);font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.chapter,.wayfinding{color:var(--rust)}.lead{font-family:var(--serif);font-size:clamp(1.25rem,1.9vw,1.6rem);line-height:1.48}.button{display:inline-flex;min-height:3.2rem;align-items:center;justify-content:center;padding:.8rem 1.3rem;border:1px solid currentColor;font-family:var(--mono);font-size:.65rem;font-weight:700;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.button.dark{background:var(--iron);color:var(--paper)}.button.dark:hover{background:var(--brick)}.button.light{color:var(--paper)}.button.light:hover{background:var(--paper);color:var(--iron)}.text-link{display:inline-flex;gap:1rem;align-items:center;font-family:var(--mono);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.text-link::after{content:"";width:2.8rem;border-top:1px solid;transition:width .2s}.text-link:hover::after{width:4rem}.text-link.light{color:var(--paper)}.fine{color:#999d99;font-size:.72rem}
.header{position:relative;z-index:100;display:grid;min-height:5.5rem;grid-template-columns:17rem 1fr auto;align-items:center;padding:0 var(--pad);border-bottom:1px solid var(--line-dark);color:var(--paper)}.header.solid{background:var(--black)}.brand{display:flex;gap:.8rem;align-items:center;font-family:var(--sans);font-size:1rem;font-weight:700;line-height:1;text-decoration:none;text-transform:uppercase}.brand small{display:block;margin-top:.35rem;font-family:var(--mono);font-size:.46rem;font-weight:400;letter-spacing:.12em}.stamp{display:grid;width:2.7rem;aspect-ratio:1;place-items:center;border:2px solid var(--rust);color:var(--rust);font-family:var(--mono);font-size:.65rem;font-weight:700}.nav{display:flex;justify-content:center;gap:clamp(1rem,2.2vw,2.3rem)}.nav a{position:relative;font-family:var(--mono);font-size:.61rem;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.nav a::after{content:"";position:absolute;right:50%;bottom:-.65rem;left:50%;border-top:2px solid var(--rust);transition:.2s}.nav a:hover::after,.nav a[aria-current]::after{right:0;left:0}.book{padding:.7rem 1rem;border:1px solid var(--rust);font-family:var(--mono);font-size:.61rem;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.book:hover{background:var(--rust);color:var(--paper)}.menu{display:none;width:2.7rem;height:2.7rem;border:0;background:none;color:inherit}.menu i{display:block;width:1.5rem;margin:.38rem auto;border-top:1px solid}
.arrival-band{display:grid;grid-template-columns:.65fr 1.3fr 1fr;gap:3rem;align-items:end;padding:3.5rem var(--pad);border-bottom:8px solid var(--black);background:var(--paper)}.arrival-band h1{margin:0;font-family:var(--sans);font-size:clamp(2.3rem,4.8vw,5rem);text-transform:uppercase}.arrival-band>div{font-family:var(--mono);font-size:.66rem}.arrival-band>div p{margin-bottom:.35rem}.mill{display:grid;grid-template-columns:.82fr 1.18fr;min-height:68rem;background:var(--pale)}.mill-copy{display:flex;flex-direction:column;justify-content:center;padding:var(--space) var(--pad)}.mill-copy h2{margin:2rem 0}.mill-copy p:not(.lead){color:var(--soft)}.mill-copy .text-link{margin-top:1.5rem}.mill-image{position:relative;min-height:55rem}.mill-image img{object-position:center}.mill-image>span{position:absolute;left:0;bottom:0;padding:.8rem 1rem;background:var(--black);color:var(--paper);font-family:var(--mono);font-size:.6rem;letter-spacing:.08em}.rooms-looms{padding:var(--space) var(--pad);background:var(--paper)}.rooms-heading{display:flex;justify-content:space-between;gap:3rem;align-items:start;margin-bottom:4rem}.rooms-heading h2{margin:0}.rooms-looms article{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end;padding:3.2rem 0;border-top:2px solid var(--ink)}.rooms-looms article:last-of-type{border-bottom:2px solid var(--ink)}.rooms-looms article.reverse>div:first-child{grid-column:2;grid-row:1}.rooms-looms article.reverse>div:last-child{grid-column:1;grid-row:1}.rooms-looms article span,.rooms-looms article strong{font-family:var(--mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}.rooms-looms article h3{margin:1rem 0 0}.rooms-looms article p{max-width:35rem;color:var(--soft);font-family:var(--serif);font-size:1.15rem}.room-action{display:flex;justify-content:space-between;gap:3rem;align-items:center;margin-top:3rem}.room-action p{max-width:34rem;color:var(--soft)}.shift{display:grid;grid-template-columns:.55fr 1.25fr .55fr;min-height:40rem;background:var(--iron);color:var(--paper)}.shift-copy,.shift-hours{display:flex;flex-direction:column;justify-content:center;padding:4rem var(--pad)}.shift-copy h2{margin:2rem 0}.shift-copy p,.shift-hours p{color:#b9b7b0}.shift-image{min-height:34rem}.shift-hours strong{color:var(--rust);font-family:var(--mono);font-size:.65rem}.shift-hours .text-link{margin-top:1.5rem}.midnight{display:grid;grid-template-columns:.2fr 1fr .55fr;gap:clamp(2rem,6vw,7rem);align-items:end;padding:var(--space) var(--pad);background:var(--brick);color:var(--pale)}.midnight .chapter{color:var(--paper)}.midnight h2{margin:0}.midnight>div p{max-width:42rem;font-family:var(--serif);font-size:1.2rem}.midnight>a{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 0;border-top:2px solid;border-bottom:2px solid;font-family:var(--mono);font-size:.8rem;text-decoration:none;text-transform:uppercase}.midnight small{grid-column:3;color:var(--paper)}
.casino-page{background:var(--black);color:var(--paper)}.casino-header{position:sticky;top:0}.rail{display:flex;width:100%;height:calc(100svh - 5.5rem);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-color:var(--rust) var(--iron)}.rail-band{position:relative;flex:0 0 100vw;height:100%;scroll-snap-align:start;overflow:hidden}.rail-intro{display:grid;grid-template-columns:.15fr 1fr .35fr;gap:4rem;align-items:center;padding:var(--pad);background:var(--brick)}.rail-intro>div:nth-child(2){max-width:65rem}.rail-intro h1{margin:2rem 0}.rail-intro p{max-width:46rem;font-family:var(--serif);font-size:1.35rem}.rail-intro small{display:block;margin-top:1.5rem}.rail-count,.rail-instruction{font-family:var(--mono);font-size:.65rem;letter-spacing:.1em}.rail-instruction{align-self:end;padding-bottom:1rem}.floor-band>img{position:absolute;inset:0}.floor-band::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,12,11,.7),transparent 55%)}.image-label{position:absolute;z-index:2;left:var(--pad);bottom:var(--pad);max-width:45rem}.image-label h2{margin:1rem 0}.image-label p{font-family:var(--serif);font-size:1.2rem}.rules-band{display:grid;grid-template-columns:.85fr 1.15fr;background:var(--paper);color:var(--ink)}.rules-copy{display:flex;flex-direction:column;justify-content:center;padding:3rem var(--pad)}.rules-copy h2{margin:1.5rem 0}.rules-copy>p{color:var(--soft)}.rules-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:1.5rem;border-top:1px solid var(--line);border-left:1px solid var(--line)}.rules-grid>div{padding:1rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.rules-grid span{color:var(--brick);font-family:var(--mono);font-size:.63rem}.rules-grid p{margin:.5rem 0 0;color:var(--soft);font-size:.8rem}.rules-image{height:100%}.mezz-band{display:grid;grid-template-columns:1.2fr .8fr;background:var(--green)}.mezz-image{height:100%}.mezz-copy{display:flex;flex-direction:column;justify-content:center;padding:var(--pad)}.mezz-copy h2{margin:1.5rem 0}.mezz-copy p{color:#b9b7b0;font-family:var(--serif);font-size:1.2rem}.mezz-copy .text-link{margin-top:1.5rem}.bar-band{display:grid;grid-template-columns:1.15fr .85fr;background:var(--iron)}.bar-image{height:100%}.bar-copy{display:flex;flex-direction:column;justify-content:center;padding:var(--pad)}.bar-copy h2{margin:1.5rem 0}.bar-copy p{color:#b9b7b0}.bar-copy .button{align-self:flex-start;margin-top:1.5rem}
.ledger{padding:0 var(--pad);background:var(--paper)}.ledger-head{display:grid;grid-template-columns:.4fr 1fr .7fr;gap:4rem;align-items:end;padding:var(--space) 0 4rem;border-bottom:4px solid var(--ink)}.ledger-head h1{margin:0}.ledger-head>p{color:var(--soft);font-family:var(--serif);font-size:1.25rem}.desk-row{display:grid;grid-template-columns:.4fr .8fr 1fr .8fr;gap:3rem;padding:3rem 0;border-bottom:1px solid var(--line)}.desk-row>span,.service-rows>div>span{font-family:var(--mono);font-size:.63rem}.desk-row h2{margin:0;font-size:2.5rem}.desk-row>div:nth-child(2)>p,.desk-row>p{color:var(--soft)}.desk-row>div:nth-child(3) a{display:block;overflow-wrap:anywhere}.enquiry-form{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(3rem,8vw,9rem);padding:var(--space) 0;border-bottom:4px solid var(--ink)}.enquiry-form h2{margin:2rem 0}.enquiry-form>div p{color:var(--soft)}.enquiry-form form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.enquiry-form label{display:flex;flex-direction:column;gap:.45rem;font-family:var(--mono);font-size:.65rem;text-transform:uppercase}.enquiry-form label.full{grid-column:1/-1}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;padding:.9rem;border:0;border-bottom:2px solid var(--ink);border-radius:0;background:rgba(255,255,255,.35);font:inherit;color:var(--ink)}.enquiry-form button{justify-self:start}.service-rows{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:4px solid var(--ink)}.service-rows>div{min-height:22rem;padding:3rem;border-right:1px solid var(--line)}.service-rows>div:last-child{border:0}.service-rows h3{margin:2rem 0 1rem;font-size:2.2rem}.service-rows p{color:var(--soft)}.service-rows a{display:block;font-size:.75rem;overflow-wrap:anywhere}.arrival-notes{display:grid;grid-template-columns:.8fr 1.2fr;gap:8rem;padding:var(--space) 0}.arrival-notes h2{margin:2rem 0}.arrival-notes address{color:var(--soft);font-family:var(--serif);font-size:1.15rem;font-style:normal}.ruled>div{padding:1.2rem 0;border-top:1px solid var(--line)}.ruled>div:last-child{border-bottom:1px solid var(--line)}.ruled span{font-family:var(--mono);font-size:.65rem}.ruled p{margin:.4rem 0 0;color:var(--soft)}
.footer{padding:4rem var(--pad) 2rem;background:var(--black);color:var(--paper)}.footer-rule{display:flex;gap:2rem;align-items:center;font-family:var(--mono);font-size:.6rem}.footer-rule i{flex:1;border-top:1px solid var(--steel)}.footer-name{display:flex;gap:2rem;align-items:flex-start;padding:5rem 0}.footer-name h2{margin:0}.footer-ledger{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--steel);border-left:1px solid var(--steel)}.footer-ledger>div{display:flex;flex-direction:column;padding:1.5rem;border-right:1px solid var(--steel);border-bottom:1px solid var(--steel)}.footer-ledger span{color:var(--rust);font-family:var(--mono);font-size:.62rem}.footer-ledger p{color:#aba9a2}.footer-ledger a{font-size:.74rem}.footer-base{display:flex;justify-content:space-between;gap:2rem;padding-top:1.5rem;color:#858681;font-family:var(--mono);font-size:.58rem;text-transform:uppercase}.casino-footer{display:none}
@media(max-width:980px){.header{grid-template-columns:1fr auto}.book{display:none}.menu{display:block}.nav{position:fixed;inset:5.5rem 0 0;display:flex;flex-direction:column;justify-content:flex-start;gap:0;padding:3rem var(--pad);background:var(--black);opacity:0;pointer-events:none;transform:translateY(-1rem);transition:.2s}.nav.open{opacity:1;pointer-events:auto;transform:none}.nav a{padding:1rem 0;border-bottom:1px solid var(--line-dark);font-family:var(--sans);font-size:1.7rem;font-weight:700;letter-spacing:-.02em;text-transform:none}.nav a::after{display:none}.arrival-band{grid-template-columns:1fr 1.5fr}.arrival-band>div{grid-column:2}.mill{grid-template-columns:1fr 1fr}.shift{grid-template-columns:1fr}.shift-copy,.shift-hours{padding:4rem var(--pad)}.shift-image{height:32rem}.midnight{grid-template-columns:.2fr 1fr}.midnight>a,.midnight small{grid-column:2}.rail{display:block;height:auto;overflow:visible}.rail-band{height:auto;min-height:42rem}.rail-intro{grid-template-columns:.15fr 1fr}.rail-instruction{display:none}.floor-band{height:42rem}.rules-band,.mezz-band,.bar-band{grid-template-columns:1fr 1fr}.casino-footer{display:block}.ledger-head{grid-template-columns:.3fr 1fr}.ledger-head>p{grid-column:2}.desk-row{grid-template-columns:.3fr 1fr 1fr}.desk-row>p{grid-column:2/4}.service-rows{grid-template-columns:1fr 1fr}.service-rows>div:last-child{grid-column:1/3;border-top:1px solid var(--line)}}
@media(max-width:720px){.header{min-height:5rem}.nav{inset:5rem 0 0}.arrival-band,.mill,.rooms-looms article,.shift,.midnight,.rail-intro,.rules-band,.mezz-band,.bar-band,.ledger-head,.desk-row,.enquiry-form,.service-rows,.arrival-notes{grid-template-columns:1fr}.arrival-band{gap:1.5rem;padding-top:3rem}.arrival-band>div{grid-column:auto}.mill-copy{padding-top:5rem;padding-bottom:5rem}.mill-image{min-height:42rem}.rooms-heading{flex-direction:column}.rooms-looms article{gap:1.5rem}.rooms-looms article.reverse>div:first-child,.rooms-looms article.reverse>div:last-child{grid-column:auto;grid-row:auto}.room-action{align-items:flex-start;flex-direction:column}.shift-image{height:28rem}.midnight>a,.midnight small{grid-column:auto}.rail-intro{padding:4rem var(--pad)}.rail-count{margin-bottom:2rem}.rail-band{min-height:0}.floor-band{height:36rem}.rules-copy,.mezz-copy,.bar-copy{padding:4rem var(--pad)}.rules-image,.mezz-image,.bar-image{height:30rem}.mezz-image,.bar-image{order:1}.mezz-copy,.bar-copy{order:2}.rules-grid{grid-template-columns:1fr}.casino-footer{display:block}.ledger{padding:0 var(--pad)}.ledger-head{gap:2rem}.ledger-head>p,.desk-row>p{grid-column:auto}.enquiry-form form{grid-template-columns:1fr}.enquiry-form label.full{grid-column:auto}.service-rows>div,.service-rows>div:last-child{grid-column:auto;min-height:0;border-right:0;border-bottom:1px solid var(--line)}.arrival-notes{gap:3rem}.footer-name{padding:4rem 0}.footer-ledger{grid-template-columns:1fr}.footer-base{align-items:flex-start;flex-direction:column}}
@media(max-width:430px){.brand{font-size:.82rem}.brand small{font-size:.4rem}.stamp{width:2.35rem}.arrival-band h1{font-size:2.4rem}.rail-intro h1{font-size:4rem}}
.rail{overscroll-behavior-x:contain;scroll-behavior:smooth}.rail-controls{position:fixed;z-index:120;right:var(--pad);bottom:1.5rem;display:grid;grid-template-columns:3rem auto 3rem;align-items:center;border:1px solid var(--steel);background:rgba(23,26,25,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--paper)}.rail-controls button{width:3rem;height:3rem;border:0;background:transparent;color:inherit;font-size:1.1rem;cursor:pointer}.rail-controls button:hover:not(:disabled),.rail-controls button:focus-visible{background:var(--rust)}.rail-controls button:disabled{color:var(--steel);cursor:not-allowed}.rail-controls span{min-width:5.5rem;padding:0 .9rem;border-right:1px solid var(--steel);border-left:1px solid var(--steel);font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-align:center}@media(max-width:980px){.rail{scroll-snap-type:none}.rail-controls{display:none}}
