/* Responsive composition; bronze scene retained with a fifth chapter. */
html.scene-ready body{height:100dvh;min-height:100dvh;overflow:hidden}
.slide,.nav{overscroll-behavior:contain}
.chapter-controls{position:fixed;right:var(--gutter);bottom:16px;display:flex;align-items:center;gap:10px;z-index:30;pointer-events:auto;color:#eee7dd;background:#100e0ddd;border:1px solid #ffffff33;border-radius:28px;padding:2px 8px;font:12px Arial,sans-serif}
.chapter-controls button{border:0;background:none;color:inherit;font:22px Georgia;min-width:44px;min-height:44px}
.chapter-controls button:disabled{opacity:.3}
html:not(.scene-ready) .chapter-controls{display:none}
html.scene-ready .slide{bottom:max(var(--bottom),80px);max-height:calc(100dvh - var(--header) - max(var(--bottom),80px) - 20px);opacity:0;transition:opacity .45s ease,visibility 0s .45s}
html.scene-ready .slide.active{opacity:1;transition-delay:.14s,0s}
@media(prefers-reduced-motion:reduce){html.scene-ready .slide{transition:none}}
.photo-mask{pointer-events:none;color:white;visibility:hidden}
.photo-mask.active{pointer-events:auto;visibility:visible}
.photo-mask img{width:100%;height:100%;object-fit:cover;display:block}
.photo-mask span{position:absolute;bottom:0;left:0;right:0;padding:16px 12px;background:linear-gradient(transparent,#000c);font:14px/1.4 Arial,sans-serif}
.nav{min-width:0;overflow-x:auto;scrollbar-width:none}
.nav a{flex-shrink:0}
html:not(.scene-ready) body{min-height:100vh}
html:not(.scene-ready) .overlay{position:relative;pointer-events:auto}
html:not(.scene-ready) .slide{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;max-height:none;max-width:900px;visibility:visible;padding:40px 0;pointer-events:auto}
html:not(.scene-ready) .slide p,html:not(.scene-ready) .char{opacity:1;transform:none;filter:none}
html:not(.scene-ready) .grid,html:not(.scene-ready) .grid-horizontal,html:not(.scene-ready) .cursor-inner,html:not(.scene-ready) .cursor-outer{display:none}
html:not(.scene-ready) *{cursor:auto!important}
@media(min-width:1051px) and (max-width:1400px){.brand span{display:none}.nav{gap:12px}.nav i{display:none}}
body{min-height:1100vh}
#slide-5{left:var(--gutter);right:auto;width:44%;max-width:780px}
.slide .vacancy-note{margin-top:16px}
.vacancy-link{display:inline-flex;align-items:center;min-height:44px;margin-top:20px;color:#fff6ed;text-underline-offset:6px;font-size:16px}
@media(max-width:600px){#slide-5{left:var(--gutter);right:var(--gutter);width:auto}.nav{overflow-x:auto;scrollbar-width:none}.nav a{flex-shrink:0}}
:root{--gutter:clamp(20px,4.7vw,88px);--header:96px;--bottom:clamp(24px,8vh,96px)}
.overlay{padding:0 var(--gutter)}
.header{height:var(--header);gap:20px}
.brand{flex-shrink:0;letter-spacing:1.6px}
.brand img{width:clamp(48px,4.5vw,68px);height:clamp(48px,4.5vw,68px)}
.nav{gap:clamp(12px,1.8vw,28px)}
.nav a{font-size:12px;letter-spacing:1px;white-space:nowrap;padding:14px 0}
.booking{font-size:12px;white-space:nowrap;padding:14px 20px}
.grid{inset:0 var(--gutter)}
.grid-horizontal{top:var(--header)}
.slide{bottom:var(--bottom);max-height:calc(100dvh - var(--header) - var(--bottom) - 20px);overflow-y:auto;overflow-x:hidden;scrollbar-width:none;visibility:hidden;pointer-events:none}
.slide.active{visibility:visible;pointer-events:auto}
.slide::-webkit-scrollbar{display:none;width:0;height:0}
#slide-1,#slide-2,#slide-3,#slide-4{left:var(--gutter);right:auto;width:44%;max-width:780px}
#slide-2,#slide-3{left:auto;right:var(--gutter)}
#slide-4{left:calc(25% + var(--gutter));width:58%}
.slide .slide-title,#slide-1 h1,#slide-2 h2,#slide-3 h2,#slide-4 h2{font-size:clamp(44px,min(6.6vw,12vh),112px)!important;line-height:1.02;letter-spacing:-.025em;margin:0 0 clamp(16px,3vh,32px);max-width:100%;font-weight:400}
.slide p,#slide-2 p,#slide-3 p,#slide-4 p{font-size:clamp(16px,1.15vw,20px);line-height:1.6;letter-spacing:0;width:min(100%,36ch);margin:0;text-wrap:pretty}
.slide p br{display:none}
#slide-4 p br{display:block}
.desc-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2.4vw,40px);width:100%}
#slide-1 .desc-row .one,#slide-1 .desc-row .two{position:static;width:auto;margin:0}
.photo-mask{left:var(--gutter);top:calc(var(--header) + 20px);width:min(24vw,32vh,340px)}
.photo-placeholder{font-size:12px;letter-spacing:1px}
.photo-placeholder strong{font-size:clamp(20px,2vw,32px)}
a:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:1050px){
 :root{--header:132px}
 .header{display:grid;grid-template-columns:1fr auto;gap:0 16px;padding-top:8px}
 .nav{display:flex;grid-column:1/-1;grid-row:2;justify-content:space-between;gap:12px}
 .nav i{display:none}
 .brand small{font-size:9px}
 .desc-row{grid-template-columns:1fr;gap:12px}
}
@media(max-width:600px){
 :root{--header:124px;--bottom:max(24px,env(safe-area-inset-bottom))}
 .header{background:linear-gradient(#0009,transparent)}
 .brand{font-size:10px;letter-spacing:1px;gap:8px}
 .brand small{font-size:8px;letter-spacing:.8px}
 .booking{font-size:10px;padding:12px;letter-spacing:.5px}
 .booking i{display:none}
 .nav a{font-size:11px;letter-spacing:.2px;min-height:44px}
 #slide-1,#slide-2,#slide-3,#slide-4{left:var(--gutter);right:var(--gutter);width:auto;max-width:none}
 .slide .slide-title,#slide-1 h1,#slide-2 h2,#slide-3 h2,#slide-4 h2{font-size:clamp(38px,min(10.5vw,7.8vh),64px)!important}
 .slide{padding:16px 0 0;text-shadow:0 2px 18px #000,0 1px 4px #000}
 .overlay:before{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#000b);pointer-events:none}
 .slide p{font-size:16px}
 .desc-row{grid-template-columns:1fr;gap:10px;max-width:35ch}
 .photo-mask{top:calc(var(--header) + 12px);width:min(34vw,19vh)}
 .photo-placeholder{padding:10px;font-size:10px}
 .photo-placeholder strong{font-size:20px}
 .grid i:nth-child(2),.grid i:nth-child(4),.grid-progress{display:none}
}
@media(max-height:520px) and (min-width:601px){
 :root{--header:70px;--bottom:16px}
 .header{display:flex;padding:0}
 .nav{display:flex;max-width:52vw;gap:12px}
 .slide .slide-title,#slide-1 h1,#slide-2 h2,#slide-3 h2,#slide-4 h2{font-size:clamp(32px,9vh,48px)!important;margin-bottom:12px}
 .slide p{font-size:14px;line-height:1.4}
 .desc-row{gap:8px}
}
@media(pointer:coarse){*{cursor:auto!important}.cursor-inner,.cursor-outer{display:none}}
@media(prefers-reduced-motion:reduce){.slide-title .char,.slide p{transition:none!important;filter:none!important}}
