/* Apartment page shares the cabin/yurt layout and avoids homepage section class collisions. */
body.kc-apartment-page{padding:0;text-align:left}
/* Navigation uses colour alone for hover and active states. */
body.kc-apartment-page .kc-apartment-index a,
body.kc-apartment-page .kc-apartment-index a:hover,
body.kc-apartment-page .kc-apartment-index a:focus,
body.kc-apartment-page .kc-apartment-index a:active,
body.kc-apartment-page .kc-menu-list a,
body.kc-apartment-page .kc-menu-list a:hover,
body.kc-apartment-page .kc-menu-list a:focus,
body.kc-apartment-page .kc-menu-list .current-menu-item>a{border-color:transparent!important;text-decoration:none!important;box-shadow:none!important}
body.kc-apartment-page .kc-apartment-index a::before,
body.kc-apartment-page .kc-apartment-index a::after,
body.kc-apartment-page .kc-menu-list a::before,
body.kc-apartment-page .kc-menu-list a::after{border:0!important;box-shadow:none!important;background:none!important}

.kc-apartment-page .kc-cabin-hero-photo{min-height:460px}
.kc-apartment-page .kc-cabin-hero-copy{padding-block:65px}
.kc-apartment-index{background:var(--kc-forest);color:var(--kc-paper);scroll-margin-top:20px}
.kc-apartment-index>.kc-wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-block:22px}
.kc-apartment-index a{padding:9px 6px;text-decoration:none;font-size:16px;border-bottom:1px solid transparent}
/* Keep apartment navigation, gallery and disclosure states in the approved palette. */
body.kc-apartment-page .kc-apartment-index a,
body.kc-apartment-page .kc-apartment-index a:visited{color:var(--kc-paper)}
body.kc-apartment-page .kc-apartment-index a:hover,
body.kc-apartment-page .kc-apartment-index a:focus,
body.kc-apartment-page .kc-apartment-index a:active{color:var(--kc-paper)!important;background:var(--kc-ink);border-color:var(--kc-paper)}
body.kc-apartment-page .kc-apartment-section a:hover,
body.kc-apartment-page .kc-apartment-section a:focus,
body.kc-apartment-page .kc-apartment-section a:active,
body.kc-apartment-page .kc-apartment-section summary:hover,
body.kc-apartment-page .kc-apartment-section summary:focus{color:var(--kc-forest)!important}
body.kc-apartment-page .kc-apartment-section a:hover span,
body.kc-apartment-page .kc-apartment-section a:focus span{background:var(--kc-forest);color:var(--kc-paper)}
body.kc-apartment-page a:focus-visible,
body.kc-apartment-page summary:focus-visible,
body.kc-apartment-page button:focus-visible{outline:2px solid var(--kc-sage);outline-offset:4px}
body.kc-apartment-page .kc-menu-list a:hover,
body.kc-apartment-page .kc-menu-list a:focus,
body.kc-apartment-page .kc-menu-list a:active{background:var(--kc-forest)!important;color:var(--kc-paper)!important}
body.kc-apartment-page ::selection{background:var(--kc-sage);color:var(--kc-ink)}
body.kc-apartment-page a,body.kc-apartment-page summary{-webkit-tap-highlight-color:rgba(79,107,87,.22)}
.kc-apartment-section{padding-block:85px;scroll-margin-top:20px;background:var(--kc-paper)}
.kc-apartment-section:nth-of-type(odd){background:var(--kc-beige)}
.kc-apartment-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:55px;align-items:start}
.kc-apartment-copy{padding-top:12px;min-width:0}
.kc-apartment-copy h2{color:var(--kc-forest);font-size:clamp(34px,3.5vw,52px);line-height:1.15;margin:12px 0 24px}
.kc-apartment-meta{font-size:15px;border-bottom:1px solid var(--kc-sage);margin-bottom:24px}
.kc-apartment-meta ul{list-style:none;padding:0;margin:0 0 20px}
.kc-apartment-copy p{line-height:1.8;margin-bottom:22px}
.kc-apartment-copy .kc-eyebrow{margin-bottom:10px}
.kc-apartment-full{padding:4px 0 20px;font-size:16px}
.kc-apartment-inquiry{margin-top:25px}
.kc-apartment-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.kc-apartment-thumbs img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.kc-apartment-visuals img,.kc-apartment-page .kc-cabin-hero-photo img{filter:none!important;opacity:1!important;transform:none!important;image-rendering:auto}
.kc-apartment-page .kc-apartment-portrait{background:var(--kc-beige)}
.kc-apartment-page .kc-apartment-portrait img{height:490px;aspect-ratio:auto;object-fit:contain}
.kc-apartment-contact>p{max-width:850px;margin:0 auto 45px;font-family:var(--kc-serif);font-size:clamp(23px,2.5vw,32px);line-height:1.5;text-align:center}
.kc-apartment-contact>p strong{font-weight:400}
.kc-apartment-contact .wp-block-columns{gap:45px;align-items:center}
.kc-apartment-contact .wp-block-gallery{margin:0}
.kc-apartment-contact .wp-block-gallery img{width:100%;height:auto}
@media(max-width:1000px){.kc-apartment-layout{gap:30px}}
@media(max-width:760px){.kc-apartment-page .kc-cabin-hero-photo{min-height:0}.kc-apartment-page .kc-cabin-hero-copy{padding-block:45px}.kc-apartment-index>.kc-wrap{justify-content:flex-start;gap:5px 20px}.kc-apartment-index a{font-size:14px}.kc-apartment-section{padding-block:55px}.kc-apartment-layout{grid-template-columns:1fr;gap:28px}.kc-apartment-copy{padding-top:0}.kc-apartment-thumbs{gap:10px;margin-top:10px}.kc-apartment-page .kc-apartment-portrait img{height:420px}}
