.pair,.gallery-card{position:relative}
.want-result{display:block;margin:10px 0 0 auto;padding:8px 17px;min-height:44px;border:1px solid #aa8b53;border-radius:24px;background:#e5d1a6;color:#28221a;font:600 12px Manrope,sans-serif;cursor:pointer;letter-spacing:.3px}
.want-result:hover{background:#f1dfb8}
.gallery-card .want-result{margin:0 12px 12px auto}
.pair-transition{max-width:240px}
.transition-screen{position:relative;width:100%;background:transparent;aspect-ratio:9/16;overflow:hidden;border-radius:3px}
.transition-screen video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain}
.transition-screen>span{position:absolute;top:10px;left:10px;padding:5px 9px;background:#191612bd;color:white;letter-spacing:1px;font-size:9px;pointer-events:none}
.story-crop{position:relative;aspect-ratio:3/4;overflow:hidden;background:#ded7ca}
.story-crop img{position:absolute!important;top:-9.2%;left:0;width:100%;height:118.5%!important;aspect-ratio:auto!important;object-fit:fill!important}
#inspiration-dialog{padding:0;width:min(740px,calc(100% - 28px));max-height:90svh;overflow:auto;border:1px solid #ae905b;border-radius:17px;background:#f2efe7;color:#26231f;box-shadow:0 25px 100px #0008}
#inspiration-dialog[open]{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}
#inspiration-dialog::backdrop{background:#14110edd;backdrop-filter:blur(5px)}
.modal-close{position:absolute;top:8px;right:8px;width:44px;height:44px;border:1px solid #bba67f;border-radius:50%;background:#f2efe7;z-index:2;font-size:27px;cursor:pointer}
#inspiration-preview{background:#211d17;display:flex;align-items:center;justify-content:center;min-height:0}
#inspiration-preview>img,#inspiration-preview>video{width:100%;max-height:70svh;object-fit:contain;display:block}
#inspiration-preview>.story-crop{width:100%}
.inspiration-copy{padding:64px 25px 28px;align-self:center}
.inspiration-copy h2{font-size:clamp(29px,3vw,40px);line-height:1.05;margin:18px 0}
.inspiration-copy p{font-size:12px;color:#706655}
.inspiration-copy .btn{width:100%;padding:16px 12px}
.cancel-inspiration{display:block;margin:15px auto 0;border:0;border-bottom:1px solid #b9a27c;background:none;padding:8px;color:#655842;font-size:12px;cursor:pointer}
#chosen-inspiration[hidden]{display:none!important}
#chosen-inspiration{position:relative;padding:16px;margin:18px 0;background:#29241d;border:1px solid #9c8050;border-radius:8px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#chosen-inspiration>div:first-child{flex:1;min-width:0;font-size:12px}
#chosen-label{display:block;color:#d7c39b;font-size:11px}
#remove-inspiration{background:none;border:0;color:#e7d4ac;font-size:24px;min-width:44px;min-height:44px;cursor:pointer}
#chosen-preview{width:100%;height:125px;display:flex;justify-content:center;overflow:hidden}
#chosen-preview>img,#chosen-preview>video{max-width:100%;height:100%;object-fit:contain}
#chosen-preview .story-crop{width:94px}
#chosen-inspiration p,#chosen-inspiration small{margin:0;width:100%;font-size:11px;color:#c6bda9;line-height:1.6}
#share-inspiration,#download-inspiration{padding:10px 12px;min-height:44px;border:1px solid #b49b6a;border-radius:4px;background:transparent;color:#f2e4c7;font-size:11px;cursor:pointer}
#share-inspiration:disabled{opacity:.5;cursor:wait}
@media(max-width:600px){#inspiration-dialog[open]{grid-template-columns:1fr}#inspiration-preview>img,#inspiration-preview>video{max-height:39svh}#inspiration-preview>.story-crop{width:min(200px,100%)}.inspiration-copy{padding:22px}.inspiration-copy h2{font-size:30px}.inspiration-copy .eyebrow{font-size:8px}.modal-close{position:sticky;margin-left:auto;top:8px;margin-bottom:-44px;grid-column:1;grid-row:1;z-index:3}#inspiration-preview{grid-column:1;grid-row:1}}

.story-crop{aspect-ratio:390/585}

/* Keep the video in view above the compact headline and booking link. */
.hero {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: stretch;
  min-height: max(600px, 94svh);
  height: auto;
  padding: 110px var(--gutter) clamp(36px, 7vh, 76px);
}
.hero-media { inset: 0; width: 100%; mask-image: none; }
.hero-media img, .hero-media video { object-fit: cover; object-position: 50% 46%; }
.hero-media img, .hero-media.playing video { opacity: 1; }
.hero:after {
  background: linear-gradient(0deg, #161411ee, #1614116b 38%, transparent 67%),
              linear-gradient(90deg, #16141180, transparent 55%);
}
.hero-inner { padding: 0; margin: 0; }
.hero h1 {
  font-size: clamp(38px, 5vw, 66px);
  letter-spacing: -.035em;
  margin: 10px 0 0;
}
.hero .actions { margin: 16px 0 0; }
.hero-inner > p, .hero-inner > .micro, .hero-note, .hero-bottom { display: none; }
.hero .video-control { background: #161411bb; color: white; }
@media (max-width: 800px) {
  .hero { min-height: max(560px, 90svh); padding-bottom: 34px; }
  .hero-media img, .hero-media video { object-position: 54% 40%; }
  .hero:after { background: linear-gradient(0deg, #161411f5, #16141154 43%, transparent 70%); }
  .hero .actions .btn { min-height: 44px; }
}

@media (min-width: 801px) {
  .hero {
    justify-content: center;
    min-height: clamp(630px, 94svh, 1000px);
    padding: 110px 0 48px;
    background: radial-gradient(ellipse at 0% 70%, #282018, #161411 60%);
  }

  .hero-media {
    inset: 0 0 0 auto;
    width: 81%;
    mask-image: linear-gradient(90deg, transparent 0%, #0004 12%, #000b 25%, #000 43%);
  }

  .hero-media img, .hero-media video {
    object-fit: cover;
    object-position: center 43%;
  }

  .hero::after {
    background: linear-gradient(0deg, #16141138, transparent 27%);
    pointer-events: none;
  }

  .hero-inner {
    width: 33.33%;
    padding-inline: clamp(24px, 3.6vw, 72px) clamp(16px, 2vw, 36px);
  }

  .hero h1 { font-size: clamp(38px, 4.2vw, 78px); }
  .hero .actions { flex-wrap: wrap; gap: 14px 22px; }
}

.ester-tools { flex-wrap: wrap; }
.ester-tools button { flex: 1 1 auto; }
.gallery-heading > div { min-width: 0; }
#download-inspiration { display: inline-flex; align-items: center; }
@media (min-width: 801px) and (max-width: 1050px) {
  .contact { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
}
@media (max-width: 600px) {
  #inspiration-dialog[open] { grid-template-columns: minmax(0, 1fr); }
}

/* Reserve the header's height before the first scroll. */
body { padding-top: 68px; }
header, header.scrolled {
  padding: 0;
  background: #1b1713;
  backdrop-filter: none;
}
header .nav, header.scrolled .nav {
  height: 68px;
  padding: 6px var(--gutter);
  border: 0;
  border-bottom: 1px solid #ffffff20;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
header .brand img { width: 36px; }
header .nav .btn { padding: 11px 16px; min-height: 42px; }
.hero { min-height: clamp(550px, calc(100svh - 68px), 1000px); padding-top: 58px; }
.hero .video-control { top: 15px; }
@media (max-width: 800px) {
  body { padding-top: 62px; }
  header .nav, header.scrolled .nav { height: 62px; }
  .hero { min-height: max(470px, calc(100svh - 62px)); }
}
@media (max-width: 380px) {
  header .nav, header.scrolled .nav { padding-inline: 8px; }
  header .nav .btn { padding-inline: 8px; }
}
