.cabine-page{background:var(--paper)}
.cabine-intro{padding:48px var(--pad) 0}
.cabine-intro .breadcrumb{margin-bottom:34px}
.cabine-intro-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);min-height:660px;background:var(--paper2)}
.cabine-intro-copy{padding:clamp(44px,5vw,90px);display:flex;align-items:flex-start;flex-direction:column;justify-content:center}
.cabine-intro-copy h1{font:clamp(62px,6.8vw,120px)/.99 var(--serif);letter-spacing:-.045em;margin:25px 0 26px}
.cabine-intro-copy h1 em{font-style:normal;color:var(--rose-deep)}
.cabine-intro-copy>p:not(.eyebrow){max-width:470px;font-size:clamp(16px,1.3vw,19px);line-height:1.75;color:var(--muted);margin:0 0 32px}
.cabine-count{margin-top:52px;color:var(--muted);font-size:11px;letter-spacing:.16em}
.cabine-cover{display:block;position:relative;min-height:660px;overflow:hidden;background:#dccfc5}
.cabine-cover img{width:100%;height:100%;object-fit:cover;object-position:50% 53%;position:absolute;inset:0;transition:transform .75s cubic-bezier(.19,1,.22,1)}
.cabine-cover:hover img{transform:scale(1.03)}
.cabine-cover:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#30262494)}
.cabine-cover span{position:absolute;bottom:28px;right:34px;color:white;z-index:1;font-size:12px;letter-spacing:.09em}
.cabine-gallery{padding:105px var(--pad) 100px}
.cabine-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;max-width:1380px;margin:0 auto 46px}
.cabine-gallery-heading h2{font:clamp(46px,4.8vw,78px)/1.05 var(--serif);letter-spacing:-.025em;margin:16px 0 0}
.cabine-gallery-heading>p{max-width:300px;color:var(--muted);margin:0 0 5px}
.cabine-grid{max-width:1380px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 18px}
.cabine-card{margin:0;min-width:0}
.cabine-card a{display:block;overflow:hidden;aspect-ratio:3/4;background:var(--paper2)}
.cabine-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.19,1,.22,1)}
.cabine-card a:hover img{transform:scale(1.035)}
.cabine-card figcaption{padding:13px 2px 0;display:grid;gap:1px}
.cabine-card figcaption span{font:27px/1.15 var(--serif)}
.cabine-card figcaption small{font-size:12px;color:var(--muted);line-height:1.45}
.cabine-outro{max-width:1380px;margin:95px auto 0;border-top:1px solid var(--line);padding-top:36px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.cabine-outro p{max-width:570px;font:clamp(24px,2.3vw,36px)/1.22 var(--serif);margin:0}
.cabine-home-link{display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid var(--ink);padding:12px 0;margin:17px 0 5px;font-size:13px}
.cabine-home-link:hover span{transform:translate(2px,-2px)}
.cabine-home-link span{transition:transform .25s}
.cabine-viewer{position:fixed;inset:0;border:0;padding:0;margin:auto;width:100%;height:100%;max-width:none;max-height:none;background:#231e1d;color:#f8f4ed}
.cabine-viewer::backdrop{background:#231e1d}
.cabine-viewer[open]{display:grid;grid-template-rows:60px minmax(0,1fr) 78px}
.cabine-viewer-top,.cabine-viewer-bottom{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,50px);gap:20px}
.cabine-viewer-top>span{font-size:11px;letter-spacing:.18em;color:#dacbc0}
.cabine-close{background:transparent;border:0;color:inherit;font-size:40px;line-height:1;width:44px;height:44px}
.cabine-viewer-frame{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;padding:0 70px}
.cabine-viewer-frame img{width:auto;max-width:100%;height:100%;object-fit:contain}
.cabine-prev,.cabine-next{position:absolute;top:50%;transform:translateY(-50%);background:#f8f4ed1d;border:1px solid #f8f4ed55;color:inherit;width:45px;height:45px;border-radius:50%;font:32px/1 var(--serif)}
.cabine-prev{left:18px}.cabine-next{right:18px}
.cabine-viewer-bottom strong{font:24px/1.1 var(--serif);display:block}
.cabine-viewer-index{font-size:11px;color:#d8c4aa}
.cabine-share{font-size:13px;border-bottom:1px solid #d8c4aa;padding-bottom:4px;white-space:nowrap}
@media(max-width:1100px){
  .cabine-intro-grid{min-height:540px}.cabine-cover{min-height:540px}
  .cabine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
  .cabine-intro{padding:28px 0 0}.cabine-intro .breadcrumb{padding:0 26px;margin-bottom:24px}
  .cabine-intro-grid{display:flex;flex-direction:column-reverse}
  .cabine-cover{min-height:0;height:470px}.cabine-cover img{object-position:50% 57%}
  .cabine-intro-copy{padding:42px 26px 52px}
  .cabine-intro-copy h1{font-size:clamp(57px,11vw,90px);margin:18px 0}
  .cabine-intro-copy>p:not(.eyebrow){font-size:16px}
  .cabine-count{margin-top:32px}
  .cabine-gallery{padding:64px 26px 75px}
  .cabine-gallery-heading{display:block;margin-bottom:28px}
  .cabine-gallery-heading>p{margin-top:16px}
  .cabine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 13px}
  .cabine-card figcaption span{font-size:23px}
  .cabine-card figcaption small{display:none}
  .cabine-outro{margin-top:65px;display:block}.cabine-outro .button{margin-top:25px}
}
@media(max-width:480px){
  .cabine-cover{height:360px}
  .cabine-gallery{padding-inline:18px}
  .cabine-card a{aspect-ratio:3/4}
  .cabine-viewer[open]{grid-template-rows:54px minmax(0,1fr) 92px}
  .cabine-viewer-frame{padding:0 4px 55px}
  .cabine-prev,.cabine-next{top:auto;bottom:5px;transform:none}
  .cabine-prev{left:calc(50% - 54px)}.cabine-next{right:calc(50% - 54px)}
  .cabine-viewer-bottom{align-items:start;padding:8px 17px 14px}
  .cabine-viewer-bottom strong{font-size:20px}
  .cabine-share{font-size:12px;max-width:130px;white-space:normal;text-align:right}
}
@media(prefers-reduced-motion:reduce){.cabine-cover img,.cabine-card img{transition:none}}
