.hero{width:calc(100% - 112px);max-width:1320px;margin:auto;grid-template-columns:1.12fr 1fr;background:var(--sage);min-height:730px;overflow:clip}
.hero-image>img{height:760px;max-height:none}
.hero-content{position:relative;z-index:1;margin:60px 0 40px -80px;padding:55px 45px;background:var(--paper);align-items:flex-start;text-align:left}
.hero-content h1{font-size:clamp(62px,6.1vw,88px)}
.hero-content>p{font-size:14px;line-height:1.9}
.hero-bottom{margin-top:40px;gap:24px;font-size:12px}
.hero-image>span{padding-right:100px}
.header-book svg,.text-link svg{transition:transform .4s cubic-bezier(.16,1,.3,1)}
.header-book:hover svg{transform:translate(3px,-3px)}
.text-link:hover svg{transform:translateX(5px)}
.button{background:transparent;color:var(--olive);transition:background .3s,color .3s}
.button:hover{background:var(--olive);color:var(--paper)}
.gallery-grid{display:flex;gap:28px;align-items:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:8px 0 25px;scrollbar-width:thin;scrollbar-color:var(--olive) var(--sage)}
.gallery-image{flex:0 0 40%;scroll-snap-align:start;min-width:0}
.gallery-image.middle{margin-top:65px;order:0}
.gallery-image img,.gallery-image.middle img{height:490px;aspect-ratio:auto;object-fit:cover;transition:filter .6s}
.gallery-image.middle img{object-fit:contain;background:var(--sage)}
.gallery-image:hover img{filter:brightness(1.025) saturate(.9)}
.gallery-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px}
.gallery-controls>span{font-size:12px;color:var(--muted);margin-right:10px}
.gallery-controls button{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--olive);border-radius:50%;background:transparent;color:var(--olive);cursor:pointer;transition:background .2s,color .2s}
.gallery-controls button:hover:not(:disabled){background:var(--olive);color:var(--paper)}
.gallery-controls button:disabled{opacity:.35;cursor:default}
summary{transition:color .25s}
summary:hover{color:var(--olive)}
summary>span{transition:transform .35s cubic-bezier(.16,1,.3,1)}
@media(prefers-reduced-motion:no-preference){
  .hero-image{animation:staff-curtain .95s cubic-bezier(.16,1,.3,1)}
  .hero-content{animation:staff-cover .8s cubic-bezier(.16,1,.3,1)}
  details[open]>div{animation:staff-treatment .3s cubic-bezier(.16,1,.3,1)}
  .lightbox[open]{animation:staff-look .4s cubic-bezier(.16,1,.3,1)}
  @keyframes staff-curtain{from{clip-path:inset(0 16% 0 0);filter:brightness(.85)}to{clip-path:inset(0);filter:brightness(1)}}
  @keyframes staff-cover{from{transform:translateX(28px)}to{transform:translateX(0)}}
  @keyframes staff-treatment{from{opacity:.4;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
  @keyframes staff-look{from{transform:scale(.97);opacity:.6}to{transform:scale(1);opacity:1}}
}
@media(max-width:1100px){.hero{width:calc(100% - 64px)}.hero-content{margin-left:-50px;padding:40px 28px}.hero-bottom{align-items:flex-start;text-align:left}.gallery-image{flex-basis:46%}.gallery-image img,.gallery-image.middle img{height:420px}}
@media(max-width:760px){.hero{width:100%;min-height:0;grid-template-columns:minmax(0,1fr)}.hero-image>img{height:430px;object-position:50% 42%}.hero-image>span{display:none}.hero-content{order:0;margin:-45px 0 0 24px;padding:32px 24px 30px;align-items:flex-start;min-width:0}.hero-content h1{font-size:clamp(43px,11.5vw,68px)}.hero-content>p{font-size:13px;margin-top:18px}.hero-bottom{margin-top:28px;flex-direction:row;align-items:center;gap:12px}.hero-bottom>span{max-width:135px}.hero-bottom small{font-size:12px}.hero-bottom>a{font-size:22px}.gallery-image{flex-basis:82%}.gallery-grid{gap:18px}.gallery-image img,.gallery-image.middle img{height:390px}.gallery-image.middle{margin-top:35px}.gallery-controls{justify-content:space-between}.gallery-controls>span{flex:1}.gallery-controls button{width:44px;height:44px}}
