/* Samotsvety only. A single interactive sculpture, with space reserved in the composition. */
.sam-roaming-page{position:relative;isolation:isolate}
.sam-roaming-page .sam-hero{padding-top:max(125px,9vw);background:radial-gradient(ellipse at 78% 30%,#1c7f952c,transparent 38%),linear-gradient(90deg,#111112f5,#1111129c),url('/img/locations-hero-bg.webp') center top/cover no-repeat}
.sam-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:3vw;min-height:480px}
.sam-roaming-page .sam-hero-content{text-align:left;margin:0;max-width:none;padding:20px 0}
.sam-roaming-page .sam-hero h1{font-size:clamp(38px,3.45vw,68px);line-height:1.12;letter-spacing:-.035em}
.sam-roaming-page .sam-hero h1 span{text-align:left!important;font-size:.58em;line-height:1.35;margin-top:18px}
.sam-roaming-page .sam-hero-content>p{font-size:clamp(14px,1.05vw,20px);max-width:38em;margin-bottom:28px}
.sam-roaming-page .sam-hero .sam-cta{margin:0;max-width:100%}
.sam-roaming-page .sam-text-link{display:flex;width:fit-content;margin-top:16px;font-size:clamp(13px,.96vw,18px)}
.sam-roaming-page .sam-hero-content>p.sam-hero-role{font-size:clamp(12px,.83vw,16px);color:#9baeb5;line-height:1.55;margin:24px 0 0;max-width:36em}
.sam-hero-sculpture{height:clamp(410px,40vw,650px);position:relative;display:grid;place-items:center;min-width:0}
.sam-logo-fallback{width:70%;height:auto;filter:drop-shadow(0 30px 45px #0006)}
.sam-sculpture-ready .sam-logo-fallback{visibility:hidden}
.sam-logo-instruction{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#94afb7;font-size:clamp(12px,.86vw,16px);letter-spacing:.01em}
.sam-logo-instruction>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.sam-logo-reset{position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);font-size:11px;color:#78929a;background:none;border:0;cursor:pointer;padding:5px;white-space:nowrap}
.sam-logo-reset:hover{color:#d2eaf0}
.sam-roaming-page .sam-stats{margin-top:50px;background:linear-gradient(120deg,#1c7f9512,#ffffff04);backdrop-filter:none}
.sam-roaming-page .sam-stats strong{font-size:clamp(25px,2.5vw,48px)}
.sam-roaming-page .sam-stats>div:last-child strong{font-size:clamp(20px,1.8vw,36px)}
.sam-guide-welcome{display:flex;align-items:center;justify-content:space-between;padding:30px 0 12px;margin-top:24px;color:#a6c1c8;font-size:clamp(13px,.95vw,18px)}
.sam-guide-welcome>span:last-child{font-size:25px;color:#83ccdc}
.sam-roaming-page .sam-journey-layout{display:block}
.sam-roaming-page .sam-chapter{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr);gap:6vw;position:relative;min-height:0;padding:65px 0 0;margin:0 0 175px;border:0;scroll-margin-top:110px}
.sam-roaming-page .sam-chapter-content{min-width:0;position:relative;z-index:2}
.sam-roaming-page .sam-chapter-content>p{font-size:clamp(14px,1.05vw,20px);color:#c5c9cc;line-height:1.65;margin:0 0 22px;max-width:40em}
.sam-roaming-page .sam-chapter-content>p.sam-caption,.sam-roaming-page .sam-chapter-content>p.sam-chapter-small{font-size:clamp(12px,.88vw,17px)}
.sam-roaming-page .sam-chapter[data-sam-stage=plot],.sam-roaming-page .sam-chapter[data-sam-stage=house]{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr)}
.sam-roaming-page :is([data-sam-stage=plot],[data-sam-stage=house]) .sam-chapter-content{grid-column:2;grid-row:1}
.sam-roaming-page :is([data-sam-stage=plot],[data-sam-stage=house]) .sam-guide-dock{grid-column:1;grid-row:1}
.sam-roaming-page .sam-chapter:last-child{margin-bottom:50px}
.sam-guide-dock{height:380px;min-width:0;position:relative;pointer-events:none;margin-top:25px}
.sam-roaming-page .sam-journey-heading{align-items:center}
.sam-roaming-page .sam-journey-heading h2{font-size:clamp(30px,3.05vw,65px)}
.sam-sculpture{position:fixed;left:0;top:0;z-index:5;pointer-events:none;contain:layout style;will-change:transform;isolation:isolate}
.sam-sculpture-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.sam-sculpture-light{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(ellipse,#69c0d30a,transparent 68%);filter:blur(20px);pointer-events:none}
.sam-sculpture-grab{position:absolute;inset:14%;background:none;border:0;padding:0;border-radius:50%;cursor:grab;pointer-events:auto;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
.sam-sculpture.is-grabbed .sam-sculpture-grab{cursor:grabbing}
.sam-sculpture-grab:focus-visible{outline:1px solid #8bcad788!important;outline-offset:10px!important}
.sam-sculpture-caption{position:absolute;top:92%;left:0;right:0;text-align:center;padding:0 10%;color:#92b4be;font-size:clamp(12px,.9vw,17px);line-height:1.5;pointer-events:none}
.sam-sculpture:is([data-stage=welcome],[data-stage=route]) .sam-sculpture-caption{display:none}
.sam-sculpture[data-stage=enquiry] .sam-sculpture-caption{font-size:12px;left:-50%;right:-50%}
.sam-guide-current .sam-step-label i{box-shadow:0 0 0 7px #69c0d31a,0 0 18px #69c0d33a}
.sam-roaming-page .sam-house-showcase{margin:0 0 24px;border:1px solid #ffffff18;background:#182023}
.sam-house-showcase img{width:100%;height:clamp(240px,26vw,500px);object-fit:cover;display:block}
.sam-house-showcase figcaption{font-size:clamp(12px,.9vw,18px);color:#b4cbd1;padding:14px 18px;line-height:1.5}
.sam-contact-people{margin:0 0 24px;background:linear-gradient(120deg,#1c7f9518,#ffffff04);border-bottom:1px solid #69c0d335;overflow:hidden}
.sam-contact-people img{display:block;width:100%;height:clamp(240px,24vw,430px);object-fit:contain;object-position:center bottom}
.sam-roaming-page .sam-faq{position:relative;z-index:2}
.sam-enquiry-landing{height:260px;position:relative;scroll-margin-top:120px}
.sam-enquiry-landing .sam-guide-dock{height:210px;width:100%;margin:0}
body:has(.sam-enquiry-form) .sam-sculpture{visibility:hidden!important}
.sam-sculpture-unavailable .sam-logo-instruction{display:none}
.sam-sculpture-unavailable .sam-guide-dock{visibility:hidden}
@media(min-width:1800px){.sam-guide-dock{height:430px}.sam-hero-grid{gap:5vw}}
@media(max-width:1000px){
 .sam-roaming-page .sam-hero{padding-top:100px}
 .sam-hero-grid{display:flex;flex-direction:column;gap:0;min-height:0}
 .sam-roaming-page .sam-hero-content{padding:15px 0 0;width:100%}
 .sam-roaming-page .sam-hero h1{font-size:clamp(32px,6.2vw,46px)}
 .sam-roaming-page .sam-hero h1 span{font-size:.65em;margin-top:14px}
 .sam-roaming-page .sam-hero-content>p{font-size:14px;margin-bottom:22px}
 .sam-roaming-page .sam-hero-content>p.sam-hero-role{font-size:12px;margin-top:20px}
 .sam-hero-sculpture{width:100%;height:330px;margin-top:15px}
 .sam-logo-fallback{width:200px}.sam-logo-instruction{bottom:13px;font-size:12px}.sam-logo-reset{bottom:-12px}
 .sam-roaming-page .sam-stats{margin-top:38px}.sam-roaming-page .sam-stats>div{padding:18px 10px}
 .sam-guide-welcome{margin-top:0;padding:26px 0 0}
 .sam-roaming-page .sam-chapter,.sam-roaming-page .sam-chapter[data-sam-stage=plot],.sam-roaming-page .sam-chapter[data-sam-stage=house]{display:flex;flex-direction:column;padding:30px 0 0;gap:20px;margin-bottom:65px;scroll-margin-top:85px}
 .sam-roaming-page .sam-chapter-content{order:2;width:100%}
 .sam-chapter>.sam-guide-dock{order:1;height:280px;width:100%;margin:0}
 .sam-roaming-page .sam-chapter-content>p{font-size:14px;margin-bottom:18px}
 .sam-roaming-page .sam-chapter-content>p.sam-caption,.sam-roaming-page .sam-chapter-content>p.sam-chapter-small{font-size:12px}
 .sam-roaming-page .sam-chapter h3{font-size:clamp(25px,5.5vw,36px)}
 .sam-roaming-page .sam-journey-heading{display:block;position:relative}.sam-roaming-page .sam-journey-heading h2{font-size:clamp(27px,5.8vw,40px)}
 .sam-journey-tools{display:block;text-align:left;max-width:none;margin-top:18px}.sam-journey-tools button{text-align:left}
 .sam-sculpture-caption{font-size:12px}
 .sam-roaming-page .sam-plot-tabs button{padding:10px 8px;min-width:0;flex:1 1 80px}
 .sam-roaming-page .sam-house-choices button{gap:10px}.sam-roaming-page .sam-house-choices img{width:66px}.sam-roaming-page .sam-house-choices strong{font-size:15px}
 .sam-roaming-page .sam-chapter .sam-plot-drawing{height:260px}.sam-roaming-page .sam-chapter .sam-plot-visual{padding:14px}
 .sam-house-showcase img{height:230px}.sam-contact-people img{height:260px}
 .sam-enquiry-landing{height:235px;scroll-margin-top:90px}.sam-enquiry-landing .sam-guide-dock{height:190px}
}
@media(prefers-reduced-motion:reduce){.sam-sculpture{will-change:auto}.sam-roaming-page *{scroll-behavior:auto!important}}
