/* V44 — Adaptive architectural cinema. Composition stays above 820px. */
.hmp-story__final{display:none}
@media(min-width:821px){
  #top.hmp-story{
    --hero-gutter:clamp(32px,5.2vw,100px);
    --hero-intro:1;--hero-intro-y:0px;--hero-caption:0;
    --hero-final:0;--hero-scale:1;--hero-drift:0px;
    --hero-nav:var(--nav,76px);
  }
  #top .hmp-story__sticky{
    height:100vh;height:100svh;min-height:0;background:#15130f;
  }
  /* Fill a conventional desktop; cap wider screens at 1.96:1. Compared
     with the original 1672 × 940 frame, enlargement is limited to 10.2%.
     The height limit crops a little sky/lawn and preserves the buildings. */
  #top .hmp-story__media{
    inset:auto;
    top:calc(var(--hero-nav) + (100vh - var(--hero-nav))/2);
    top:calc(var(--hero-nav) + (100svh - var(--hero-nav))/2);
    left:50%;
    width:min(100%,calc((100vh - var(--hero-nav))*1.96));
    width:min(100%,calc((100svh - var(--hero-nav))*1.96));
    height:auto;aspect-ratio:1672/940;
    max-height:calc(100vh - var(--hero-nav));
    max-height:calc(100svh - var(--hero-nav));
    transform:translate(-50%,-50%);background:#15130f;
  }
  #top .hmp-story__video,#top .hmp-story__fallback{
    inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 44%;
    transform:translate3d(0,var(--hero-drift),0) scale(var(--hero-scale));
    transform-origin:53% 46%;
    filter:contrast(1.08) saturate(1.025) brightness(1.015);
  }
  #top .hmp-story__media:after{
    content:"";position:absolute;z-index:2;inset:0;pointer-events:none;
    background:linear-gradient(90deg,#15130f,transparent 2%,transparent 98%,#15130f);
  }
  #top .hmp-story__shade{top:var(--hero-nav);background:none}
  #top .hmp-story__shade:before,#top .hmp-story__shade:after{
    content:"";position:absolute;inset:0;pointer-events:none;
  }
  #top .hmp-story__shade:before{
    opacity:var(--hero-intro);
    background:radial-gradient(ellipse 82% 110% at 0 10%,rgba(12,12,9,.88),rgba(12,12,9,.64) 35%,rgba(12,12,9,.18) 66%,transparent 88%);
  }
  #top .hmp-story__shade:after{
    background:radial-gradient(ellipse 52% 42% at 0 92%,rgba(12,12,9,.74),rgba(12,12,9,.52) 50%,transparent),linear-gradient(0deg,rgba(12,12,9,.86),rgba(12,12,9,.50) 14%,rgba(12,12,9,.12) 29%,transparent 43%);
  }
  #top .hmp-story__sticky:after,#top .hmp-story__grain,
  #top .hmp-story__parcel,#top .hmp-story__intel{display:none}
  #top .hmp-story__body{max-width:none;padding:0;pointer-events:none}
  #top.hmp-story .hmp-story__intro{
    position:absolute;left:var(--hero-gutter);
    top:calc(var(--hero-nav) + clamp(38px,7vh,92px));
    width:min(760px,76vw);max-width:none;
    opacity:var(--hero-intro);transform:translate3d(0,var(--hero-intro-y),0);
    transition:none;pointer-events:auto;
  }
  #top[data-hero-intro-hidden="true"] .hmp-story__intro{visibility:hidden;pointer-events:none}
  #top .hmp-story__eyebrow{font-size:9px;letter-spacing:.23em;color:#e3d8c3;text-shadow:none}
  #top .hmp-story__eyebrow:before{background:#a9843c;width:34px;flex:none}
  #top .hmp-story__title{
    font-size:clamp(40px,4.65vw,80px);font-weight:400;line-height:1.02;
    letter-spacing:-.035em;max-width:none;margin-top:22px;
    color:#fbf7f0;text-shadow:0 2px 24px rgba(0,0,0,.12);
  }
  #top .hmp-story__title em{color:#c5a676}
  #top .hmp-story__lead{
    max-width:47ch;margin-top:22px;color:#eee6da;
    font-size:13px;line-height:1.8;text-shadow:none;
    text-align:left!important;text-align-last:left!important;
    text-wrap:pretty!important;hyphens:none;
  }
  #top .hmp-story__actions{gap:26px;margin-top:26px;flex-wrap:wrap}
  #top .hmp-story__action{
    min-height:44px;padding:0;border:0;border-bottom:1px solid rgba(213,188,143,.7);
    background:none;color:#fbf7f0;backdrop-filter:none;font-size:10px;
    letter-spacing:.10em;transition:color .2s,border-color .2s;
  }
  #top .hmp-story__action:first-child:after{content:"↗";margin-left:26px;font-size:21px;color:#c5a676}
  #top .hmp-story__action:last-child{font-size:9px;color:#d5cdbc;border-color:rgba(213,188,143,.3)}
  #top .hmp-story__action:hover{transform:none;background:none;color:#d5bb91;border-color:#d5bb91}
  #top .hmp-story__action:focus-visible,#top .hmp-story__final a:focus-visible{
    outline:2px solid #c5a676;outline-offset:7px;
  }
  #top .hmp-story__stagewrap{
    position:absolute;left:var(--hero-gutter);bottom:104px;
    width:min(440px,46vw);height:112px;margin:0;opacity:var(--hero-caption);
  }
  #top .hmp-story__stagehead{margin-bottom:12px;font-size:9px;line-height:1.4;color:#ede4d6;letter-spacing:.19em}
  #top .hmp-story__stagehead b{color:#c5a676;font-size:10px}
  #top .hmp-story__stagehead i{width:26px;background:#a9843c}
  #top .hmp-story__stage p{
    max-width:30ch;font-size:clamp(23px,2vw,30px);line-height:1.22;
    color:#fbf7f0;text-shadow:0 2px 18px rgba(0,0,0,.3);
    text-align:left!important;text-align-last:left!important;
    text-wrap:pretty!important;hyphens:none;overflow-wrap:break-word;
  }
  #top .hmp-story__final{
    display:block;position:absolute;z-index:4;left:var(--hero-gutter);bottom:104px;
    width:min(540px,70vw);opacity:var(--hero-final);visibility:hidden;pointer-events:none;
    transform:translateY(calc((1 - var(--hero-final))*12px));
  }
  #top[data-hero-final="true"] .hmp-story__final{visibility:visible;pointer-events:auto}
  #top .hmp-story__final h2{
    margin:0;font:400 clamp(36px,3.3vw,58px)/1.04 'Cormorant Garamond',Georgia,serif;
    color:#fbf7f0;letter-spacing:-.025em;text-shadow:0 2px 20px rgba(0,0,0,.2);
  }
  #top .hmp-story__final h2 em{font-weight:400;color:#c5a676}
  #top .hmp-story__final a{
    display:inline-flex;align-items:center;gap:28px;min-height:44px;
    margin-top:14px;color:#fbf7f0;border-bottom:1px solid #a9843c;
    font-size:10px;letter-spacing:.10em;text-transform:uppercase;
  }
  #top .hmp-story__final a span{color:#c5a676;font-size:21px}
  #top .hmp-story__final a:hover{color:#d5bb91}
  #top .hmp-story__rail{
    left:var(--hero-gutter);right:var(--hero-gutter);bottom:28px;
    gap:clamp(18px,2.5vw,44px);
  }
  #top .hmp-story__tick{font-size:8px;letter-spacing:.15em;padding-top:12px;color:#c4bcaf}
  #top .hmp-story__tick:before{height:1px;background:rgba(241,230,210,.25)}
  #top .hmp-story__tick:after{
    top:0;height:1px;width:calc(var(--hero-tick,0)*100%);background:#a9843c;transition:none;
  }
  #top .hmp-story__tick.is-active{color:#f5eee2}
  #top .hmp-story__hint{
    top:auto;bottom:104px;right:var(--hero-gutter);transform:none;
    font-size:8px;color:#e6dccb;letter-spacing:.18em;opacity:var(--hero-intro);
  }
}
@media(min-width:821px) and (max-height:700px){
  #top.hmp-story .hmp-story__intro{top:calc(var(--hero-nav) + 26px)}
  #top .hmp-story__title{font-size:clamp(38px,4.2vw,58px);margin-top:16px}
  #top .hmp-story__lead{margin-top:14px;line-height:1.6}
  #top .hmp-story__actions{margin-top:14px}
  #top .hmp-story__stagewrap{height:100px;bottom:90px}
  #top .hmp-story__final{bottom:90px}
  #top .hmp-story__final h2{font-size:38px}
}
@media(min-width:821px) and (prefers-reduced-motion:reduce){
  #top.hmp-story .hmp-story__intro{opacity:1;transform:none;visibility:visible}
  #top .hmp-story__shade:before{opacity:1}
  #top .hmp-story__video,#top .hmp-story__stagewrap,#top .hmp-story__final{display:none}
  #top .hmp-story__fallback{transform:none}
}
