/* ============================================================
   CASA SOJOURN — furniture tourism page
   ============================================================ */
.csnums{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--ink-08);
  border-top:var(--rule);border-bottom:var(--rule);margin-top:clamp(1.5rem,3.4vw,3.25rem)}
.csnums>div{background:var(--paper);padding:clamp(1rem,2vw,1.625rem) clamp(0.75rem,1.6vw,1.25rem);
  display:flex;flex-direction:column;gap:0.375rem}
.csnums .n{font-family:var(--disp);font-weight:200;font-variation-settings:'wdth' 112;
  font-size:clamp(2.125rem,4.6vw,4rem);line-height:.94;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.csnums .k{font-size:0.6563rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-46)}
@media (max-width:680px){.csnums{grid-template-columns:repeat(2,1fr)}}

.routes{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(0.75rem,1.6vw,1.5rem)}
.routes .rt{display:flex;flex-direction:column;gap:0.75rem}
.routes .fr{aspect-ratio:3/4;overflow:hidden;background:var(--paper-2);border:var(--hair)}
.routes .fr image-slot{width:100%;height:100%}
.routes .tx{display:flex;flex-direction:column;gap:0.3125rem}
.routes .n{font-variant-numeric:tabular-nums;font-size:0.6563rem;color:var(--ink-46)}
.routes .t{font-family:var(--disp);font-weight:200;font-variation-settings:'wdth' 116;
  font-size:clamp(1.0625rem,1.8vw,1.4375rem);letter-spacing:-.022em;line-height:1.05}
.routes .g{font-size:0.8125rem;color:var(--ink-70);text-wrap:pretty}
.routes .w{font-size:0.6563rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-46);margin-top:3px}
.routes .rt:hover .t{color:var(--ink-46)}
@media (max-width:900px){.routes{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.routes{grid-template-columns:1fr}}

.days{border-top:var(--rule)}
.days .d{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(1.25rem,3vw,3.75rem);align-items:center;
  padding:clamp(1.375rem,3vw,3.25rem) 0;border-bottom:var(--hair)}
.days .d:nth-child(even) .fr{order:2}
.days .fr{aspect-ratio:4/3;overflow:hidden;background:var(--paper-2);border:var(--hair)}
.days .fr image-slot{width:100%;height:100%}
.days .tx{display:flex;flex-direction:column;gap:0.6875rem}
.days .kn{display:flex;align-items:baseline;gap:0.75rem;padding-bottom:0.5625rem;border-bottom:var(--hair)}
.days .kn .n{font-variant-numeric:tabular-nums;font-size:0.6875rem;color:var(--ink-46)}
.days .kn .t{font-size:0.6875rem;letter-spacing:.16em;text-transform:uppercase}
.days .kn .y{margin-left:auto;font-size:0.6875rem;color:var(--ink-46)}
.days h3{font-family:var(--disp);font-weight:200;font-variation-settings:'wdth' 118;
  letter-spacing:-.022em;line-height:1.02;font-size:clamp(1.3125rem,2.4vw,2.125rem);text-wrap:balance}
@media (max-width:820px){.days .d{grid-template-columns:1fr;gap:1rem}
  .days .d:nth-child(even) .fr{order:0}}

.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--ink-08);border:var(--rule)}
.tiers .ti{background:var(--paper);padding:clamp(1.25rem,2.6vw,2.25rem);display:flex;flex-direction:column;gap:0.75rem}
.tiers .ti.on{background:var(--band);color:var(--band-ink)}
.tiers .ti.on .kn,.tiers .ti.on .fix span{border-color:rgba(242,241,238,.16)}
.tiers .ti.on .kn .n,.tiers .ti.on .fix b{color:var(--band-ink-46)}
.tiers .ti.on .body,.tiers .ti.on .cap{color:rgba(242,241,238,.82)}
.tiers .kn{display:flex;align-items:baseline;gap:0.75rem;padding-bottom:0.5625rem;border-bottom:var(--hair)}
.tiers .kn .n{font-variant-numeric:tabular-nums;font-size:0.6875rem;color:var(--ink-46)}
.tiers .kn .t{font-size:0.6875rem;letter-spacing:.16em;text-transform:uppercase}
.tiers .fix{display:flex;flex-direction:column;border-top:var(--hair);margin-top:auto;padding-top:0.25rem}
.tiers .fix span{display:grid;grid-template-columns:4rem 1fr;gap:0.75rem;align-items:baseline;
  padding:0.5625rem 0;border-bottom:var(--hair);font-size:0.8125rem}
.tiers .fix b{font-size:0.6563rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-46);font-weight:400}
@media (max-width:820px){.tiers{grid-template-columns:1fr}}
