/* Pixel-built type system: display signage + proportional readable UI. */
:root{--display:LodgePixelDisplay,system-ui,sans-serif;--text:LodgePixelText,system-ui,sans-serif}
body,button,input,select{font-family:var(--text)}
.wordmark strong{font:400 30px/1 var(--display);letter-spacing:.045em}
.wordmark em{font:700 16px/1 var(--text);font-style:normal;letter-spacing:.1em;text-transform:uppercase;transform:none;color:var(--coral)}
.arrival h1{font:400 clamp(60px,4.85vw,82px)/.96 var(--display);letter-spacing:.015em}
.arrival h1 i{font:700 .58em/1.05 var(--text);font-style:normal;letter-spacing:.01em;text-transform:uppercase;transform:none;margin-left:.08em;white-space:nowrap}
.arrival-deck,.register-heading>p:last-child,.pool-copy p:last-child,.office-copy>p:not(.kicker){font-family:var(--text);font-size:clamp(18px,1.5vw,22px);line-height:1.48}
.key-button b,.desk-label b,.book-tools p b,.pool-stats dd,.sheet-image-wrap span{font-family:var(--display);font-weight:400;letter-spacing:.04em}
.road-sign span{font:400 27px/1 var(--display);letter-spacing:.035em}
.road-sign i,.roof-label span,.office-door i{font-family:var(--text);font-style:normal;font-weight:700;text-transform:uppercase;letter-spacing:.07em;transform:none}
.road-sign i{font-size:19px}.roof-label span{font-size:15px}.office-door i{font-size:15px}
.desk-guest strong,.desk-note{font-family:var(--text)}
.register-heading h2,.pool-copy h2,.office-copy h2,.sheet-copy h2{font-family:var(--display);font-weight:400;line-height:.96;letter-spacing:.02em}
.register-heading h2,.pool-copy h2,.office-copy h2{font-size:clamp(52px,5.4vw,84px)}
.guest-row .room-no{font:400 28px/1 var(--display);letter-spacing:.02em}
.guest-identity{grid-template-columns:62px minmax(0,1fr)}
.guest-identity>div{min-width:0}
.guest-identity b,.guest-habit b{font-family:var(--text)}
.guest-identity b{width:100%;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.key-tag{font-family:var(--display);font-weight:400;letter-spacing:.03em}
.register-empty b{font-family:var(--text)}
.pool-water:before{font-family:var(--display);font-weight:400;letter-spacing:.05em}
.pool-water:after{font-family:var(--display)}
.pool-stats dd{font-size:28px}
.office-window p{font:700 27px/1.1 var(--text);font-style:normal;text-transform:uppercase;letter-spacing:.07em}
.office-window b{font:400 54px/1 var(--display);letter-spacing:.05em}
.sheet-copy h2{font-size:clamp(38px,4.4vw,60px)}
.sheet-lead{font:700 22px/1.35 var(--text);font-style:normal;letter-spacing:.015em;transform:none}
.sheet-copy dd{font-family:var(--text)}
@media(max-width:720px){
 .office{grid-template-columns:minmax(0,1fr)}
 .wordmark strong{font-size:24px}.wordmark em{font-size:12px}
 .arrival h1{font-size:clamp(52px,15.5vw,70px);line-height:.96;letter-spacing:.01em}
 .guest-identity{grid-template-columns:48px minmax(0,1fr)}
 .arrival h1 i{font-size:.58em;margin-left:0}
 .register-heading h2,.pool-copy h2,.office-copy h2{font-size:clamp(46px,12.8vw,62px);line-height:1}
 .road-sign span{font-size:17px}.road-sign i{font-size:13px}.roof-label span{font-size:11px}
 .guest-row .room-no{font-size:24px}.office-window b{font-size:44px}
}
@media(max-width:360px){
 .wordmark em{display:none}.arrival h1{font-size:49px}.register-heading h2{font-size:44px}
 .office-window,.office-copy{width:100%;min-width:0}
 .office-window>div{padding:25px 24px}
}
