/* Round 13: finish the retained compositions with room to breathe. */
.closing .closing-label{font-size:11px;letter-spacing:.24em;color:var(--soft);line-height:1.8}
.closing .book.lg{margin:0;padding:12px 0;border-radius:0;background:none;gap:12px;min-height:48px;border-bottom:0;font-size:16px;transition:color .3s,border-color .3s}
.closing .book.lg:hover{color:#8d7847;border-color:currentColor;background:none}
.closing .book.lg img{width:18px;height:18px}
.closing .back{font-size:11px;letter-spacing:.1em;opacity:.65;line-height:1.8}
/* Facing pages: a quiet portrait and a spacious invitation. */
.c151 .closing{grid-template-columns:1.05fr .95fr;padding:calc(var(--leap-vh, 100svh) * 0.13) 11vw calc(var(--leap-vh, 100svh) * 0.09);column-gap:7vw}
.c151 .closing figure{height:calc(var(--leap-vh, 100svh) * 0.65);max-height:760px}
.c151 .closing figure img{object-position:50% 45%}
.c151 .invite{min-height:0;padding:0;align-self:center}
.c151 .invite h2{font-size:clamp(28px,3.1vw,44px);line-height:1.6;margin:24px 0 32px}
.c151 .invite .back{margin-top:44px}
/* Light study: the small and large photographs share their baseline. */
.detail-152{align-items:end;grid-template-rows:1fr auto;row-gap:32px}
.detail-152 .detail-main{align-self:end;height:calc(var(--leap-vh, 100svh) * 0.74)}
.detail-152 .detail-inset{width:86%;height:calc(var(--leap-vh, 100svh) * 0.29);align-self:end;margin:0}
.detail-152 .detail-copy{align-self:center;padding:0}
/* A vertical invitation with a small reading line beside the lounge. */
.c152 .closing{grid-template-columns:13% minmax(0,1fr) 20%;grid-template-rows:1fr auto auto;column-gap:5vw;padding:calc(var(--leap-vh, 100svh) * 0.14) 9vw calc(var(--leap-vh, 100svh) * 0.1);row-gap:20px}
.c152 .closing .closing-label{grid-column:3;grid-row:1;align-self:end}
.c152 .closing h2{grid-column:1;grid-row:1/4;align-self:center;line-height:1.9}
.c152 .closing figure{grid-column:2;grid-row:1/4;height:calc(var(--leap-vh, 100svh) * 0.68)}
.c152 .closing .book{grid-column:3;grid-row:2;align-self:start;justify-self:start}
.c152 .closing .back{grid-column:3;grid-row:3;align-self:start;margin-bottom:calc(var(--leap-vh, 100svh) * 0.1)}
/* Scene index remains typography, with a full keyboard and pointer target. */
.c153 .space-index{gap:1px}
.c153 .space-index button{display:block;border:0;background:none;color:#828777;padding:9px 14px 9px 0;min-height:44px;text-align:left;cursor:pointer;font:inherit;letter-spacing:inherit;transition:color .4s,transform .6s var(--ease)}
.c153 .space-index button.current{color:var(--ink);transform:translateX(12px)}
.c153 .space-index button:hover{color:var(--ink)}
.c153 .space-index button:focus-visible{outline:1px solid var(--gold);outline-offset:5px}
/* A panoramic final spread: an uninterrupted image, with type beneath. */
.c153 .closing{padding:calc(var(--leap-vh, 100svh) * 0.12) 8vw calc(var(--leap-vh, 100svh) * 0.08);justify-content:center}
.c153 .closing figure{height:calc(var(--leap-vh, 100svh) * 0.57);width:100%}
.c153 .closing .invite{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:end;padding-top:28px;gap:9px 32px}
.c153 .closing .closing-label{grid-column:1;grid-row:1}
.c153 .closing h2{grid-column:1;grid-row:2;font-size:clamp(27px,3vw,42px)}
.c153 .closing .book{grid-column:2;grid-row:1/3;align-self:center}
.c153 .closing .back{margin-top:24px}
/* Material study: title sits in its own track, with no paper plate. */
.detail-155{grid-template-columns:1.15fr 1fr;column-gap:7vw}
.detail-155 .detail-copy{margin:0;padding:0 1vw 0 0;align-self:center}
.detail-155 .detail-copy h2{display:block;background:none;box-shadow:none;font-size:clamp(30px,3vw,44px);line-height:1.7}
.detail-155 .detail-copy p{margin:20px 0 0}
.detail-155 .detail-inset{width:76%;height:calc(var(--leap-vh, 100svh) * 0.28)}
/* An open letter: heading above a horizontal image, booking below. */
.c155 .closing{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-content:center;align-items:end;padding:calc(var(--leap-vh, 100svh) * 0.12) 12vw calc(var(--leap-vh, 100svh) * 0.08);gap:24px 5vw}
.c155 .closing .closing-label{grid-column:2;grid-row:1;align-self:end;justify-self:end;padding-bottom:6px}
.c155 .closing h2{grid-column:1;grid-row:1;font-size:clamp(28px,3vw,42px);line-height:1.5}
.c155 .closing h2 br{display:none}
.c155 .closing figure{grid-column:1/3;grid-row:2;width:100%;height:calc(var(--leap-vh, 100svh) * 0.51)}
.c155 .closing figure img{object-position:50% 50%}
.c155 .closing .book{grid-column:1;grid-row:3;justify-self:start}
.c155 .closing .back{grid-column:2;grid-row:3;justify-self:end;align-self:center}
@media(max-width:700px){
 .detail-152 .detail-main{height:calc(var(--leap-vh, 100svh) * 0.46);grid-column:1/3;grid-row:1}
 .detail-152 .detail-copy{align-self:start;grid-column:1;grid-row:2}
 .detail-152 .detail-inset{width:100%;height:calc(var(--leap-vh, 100svh) * 0.22);grid-column:2;grid-row:2;align-self:end}
 .detail-155 .detail-copy{padding:0;margin:0}
 .detail-155 .detail-copy h2{font-size:25px}
 .detail-155 .detail-copy p{margin:0}
 .detail-155 .detail-inset{width:100%;height:calc(var(--leap-vh, 100svh) * 0.22)}
 .c151 .closing,.c152 .closing,.c153 .closing,.c155 .closing{padding:88px 24px 48px;gap:24px;min-height:0}
 .c151 .closing figure{height:calc(var(--leap-vh, 100svh) * 0.46)}
 .c151 .invite h2{font-size:29px;margin:16px 0 22px}
 .c151 .invite .back{margin-top:28px}
 .c152 .closing{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto;gap:20px}
 .c152 .closing .closing-label{grid-column:1;grid-row:1;align-self:auto}
 .c152 .closing h2{grid-column:1;grid-row:2;writing-mode:horizontal-tb;justify-self:start;font-size:29px}
 .c152 .closing figure{grid-column:1;grid-row:3;width:100%;height:calc(var(--leap-vh, 100svh) * 0.47)}
 .c152 .closing .book{grid-column:1;grid-row:4}
 .c152 .closing .back{grid-column:1;grid-row:5;margin:6px 0 0}
 .c153 .closing figure{height:calc(var(--leap-vh, 100svh) * 0.4)}
 .c153 .closing .invite{grid-template-columns:1fr;grid-template-rows:auto auto auto;padding-top:0;gap:14px}
 .c153 .closing .book{grid-column:1;grid-row:3;justify-self:start}
 .c153 .closing h2{font-size:28px}
 .c153 .closing .back{margin-top:0}
 .c155 .closing{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto;gap:20px}
 .c155 .closing .closing-label{grid-column:1;grid-row:1;justify-self:start;padding:0}
 .c155 .closing h2{grid-column:1;grid-row:2;font-size:29px}
 .c155 .closing h2 br{display:block}
 .c155 .closing figure{grid-column:1;grid-row:3;height:calc(var(--leap-vh, 100svh) * 0.42)}
 .c155 .closing .book{grid-column:1;grid-row:4}
 .c155 .closing .back{grid-column:1;grid-row:5;justify-self:start;margin-top:6px}
}
/* Distinct final cadences, informed by the review: reveal, light, panorama, aperture. */
@media(prefers-reduced-motion:no-preference){
 .c151 .closing figure{clip-path:inset(30% 0);transition:clip-path 1.25s var(--ease)}
 .c151 .closing figure.seen{clip-path:inset(0)}
 .c152 .closing figure,.c152 .closing figure.seen{clip-path:none}
 .c152 .closing figure img{filter:brightness(.82);transform:scale(1.015);transition:filter 1.6s ease,transform 1.6s var(--ease)}
 .c152 .closing figure.seen img{filter:brightness(1);transform:none}
 .c155 .closing figure img{transform:scale(1.035);transition:transform 2.4s var(--ease)}
 .c155 .closing figure.seen img{transform:none}
}
html:not(.js) .closing .invite,html:not(.js) .closing h2,html:not(.js) .closing .book,html:not(.js) .members img,html:not(.js) .closing img{opacity:1!important;transform:none!important;clip-path:none!important;filter:none!important}

/* Round 14 mobile reading: each membership is a complete, independently revealed card. */
.plan-benefits{display:none}
@media(max-width:700px){
 body{font-size:15px;line-height:1.8}
 .top nav{gap:16px;font-size:14px;letter-spacing:.04em}
 .top nav a,.top nav button{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}
 .top .wordmark{min-height:44px;display:flex;align-items:center}
 .top .wordmark img{height:28px}
 .top .book{min-height:44px;padding:0;gap:8px}
 .brand p,.cap p,.c152 .cap p,.editorial .detail-copy p,.map-intro p{font-size:14px;line-height:1.8}
 .cap p{max-width:100%;letter-spacing:.03em}
 .members .tiers{--ph:clamp(180px,calc(var(--leap-vh, 100svh) * .28),260px)}
 .tiers .base-title{font-size:14px;letter-spacing:.08em}
 .tiers .base ul{flex-wrap:wrap;font-size:16px;gap:0 1.2em}
 .members .tier{display:block;margin-top:32px}
 .members .tier figure{width:100%;height:var(--ph)}
 .members .tier .head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:16px}
 .members .tier h3{font-size:20px;line-height:1.5;white-space:normal}
 .members .tier .price,.members .compare .price{font-size:24px;margin-top:0}
 .members .price small{font-size:14px;letter-spacing:0}
 .members .adds,.c155 .sum{padding:10px 0 0;font-size:14px;line-height:1.85}
 .c155 .sum{padding-top:12px;font-size:15px}
 .c155 .adds{padding-top:6px}
 .c152 .members{padding:86px 24px 48px}
 .c152 .compare{display:flex;flex-direction:column;gap:36px}
 .c152 .compare .plan{width:100%;min-width:0}
 .c152 .compare .plan figure{width:100%;height:clamp(200px,calc(var(--leap-vh, 100svh) * .3),300px)}
 .c152 .compare .plan-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:16px 0 12px}
 .c152 .compare h3{font-size:20px;min-height:0;line-height:1.5}
 .c152 .compare .price small{display:inline;font-size:14px}
 .c152 .compare-row{display:none}
 .c152 .plan-benefits{display:block;font-size:14px;line-height:1.9;color:var(--soft)}
 .c152 .plan-benefits li:first-child{font-size:15px;color:var(--ink);margin-bottom:4px}
 .plan-layout [data-leap-plan]{--plan-height:max(480px,calc(var(--leap-vh, 100svh) * .62))!important;min-height:480px}
 .closing .closing-label,.closing .back,.site-foot{font-size:14px}
 .closing .back,.site-foot a,.booking .close{min-height:44px;display:inline-flex;align-items:center}
 .booking .close{font-size:14px;padding:8px}
}

@media(max-width:700px){.top{background:linear-gradient(to bottom,var(--paper) 74%,transparent)}.c152 .frame,.c152 .masked{backface-visibility:hidden}.c152 .frame{will-change:transform}}

/* Mobile-only opposing picture planes, driven by native scrolling. */
@media(max-width:700px) and (prefers-reduced-motion:no-preference){
 .editorial{overflow:clip}
 .editorial figure,.editorial figure.seen{opacity:1;clip-path:none;transition:none;will-change:transform}
 .editorial .detail-main{transform:translate3d(var(--detail-main-x,0px),var(--detail-main-y,0px),0)}
 .editorial .detail-inset{transform:translate3d(var(--detail-inset-x,0px),var(--detail-inset-y,0px),0);position:relative;z-index:2}
 .editorial .detail-main img{transform:none;transition:none}
}
