.hero{min-height:740px;position:relative;isolation:isolate;color:var(--cream);display:flex;align-items:center;padding:80px 0 45px;background:var(--pine)}.hero:before{content:'';position:absolute;inset:0;z-index:-2;background:url('../assets/images/hero/altai-panorama.webp') center 32%/cover, url('../assets/images/hero/landscape.svg') center/cover}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,31,25,.94),rgba(16,36,29,.73) 43%,rgba(20,40,31,.09)),linear-gradient(0deg,rgba(12,30,23,.6),transparent 40%)}.hero .eyebrow{color:#dfc39f;max-width:450px}.hero h1{max-width:690px}.hero .lead{max-width:585px;color:#ece5d8;font-size:18px}.hero-facts{display:grid;grid-template-columns:repeat(4,1fr);max-width:750px;margin-top:65px}.hero-facts .fact:first-child{border:0;padding-left:0}.hero-foot{display:flex;justify-content:space-between;gap:25px;margin-top:42px;font-size:11px;letter-spacing:.12em;color:#d5d5c5}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.formats{display:grid;grid-template-columns:1fr 1fr;gap:24px}.intro-text{max-width:590px}.program-stats{display:flex;gap:35px;margin-top:32px}.program-stats strong{font:48px var(--serif);display:block}.program-stats span{font-size:13px}.evening-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:65px;align-items:center}.time-row{display:grid;grid-template-columns:135px 1fr;gap:20px;padding:24px 0;border-top:1px solid #ffffff40}.time-row strong{font-size:20px;font-weight:400}.contact-layout{width:100%}.page-intro{padding:75px 0 55px;background:var(--cream)}.page-intro h1{font-size:clamp(40px,5.5vw,70px);max-width:850px}.page-intro .lead{max-width:780px}.breadcrumb{font-size:12px;margin-bottom:30px;color:var(--muted)}.wide-copy{max-width:800px}.inclusions{display:grid;grid-template-columns:1fr 1fr;gap:50px}.inclusions h3{font-size:28px}.big-note{font:clamp(25px,3.5vw,40px)/1.3 var(--serif)}.hero-picture{position:absolute;inset:0;z-index:-2}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center}

/* Cloud layers move only over the upper sky, beneath the text contrast overlay. */
.hero{overflow:hidden}
.hero-picture img{object-position:center 32%}
.hero-clouds{position:absolute;inset:0 0 auto;height:20%;overflow:hidden;z-index:-2;pointer-events:none;mask-image:linear-gradient(#000 65%,transparent);-webkit-mask-image:linear-gradient(#000 65%,transparent)}
.hero-clouds-layer{position:absolute;top:0;left:0;width:calc(100% + 1000px);height:180px;background:url('../assets/images/hero/clouds.svg') 0 0/1000px 180px repeat-x;animation:cloud-drift 180s linear infinite;opacity:.65}
.hero-clouds-layer--far{top:-30px;opacity:.38;animation-duration:260s;animation-delay:-110s}
.hero-clouds-layer--near{top:18px;animation-delay:-65s}
.hero.clouds-offscreen .hero-clouds-layer{animation-play-state:paused}
@keyframes cloud-drift{from{transform:translateX(-1000px)}to{transform:translateX(0)}}
@media(max-width:767px){.hero-picture img{object-position:62% top}.hero-clouds{height:24%}.hero-clouds-layer{opacity:.45}.hero-clouds-layer--far{opacity:.25}.hero-foot{flex-wrap:wrap;align-items:center}}
@media(prefers-reduced-motion:reduce){.hero-clouds-layer{animation:none;transform:translateX(-200px)}}
.hero.clouds-tab-hidden .hero-clouds-layer{animation-play-state:paused}

.hero-clouds-layer{animation-play-state:paused}
.js .hero-clouds-layer{animation-play-state:running}
.js .hero.clouds-offscreen .hero-clouds-layer,.js .hero.clouds-tab-hidden .hero-clouds-layer{animation-play-state:paused}
.js .hero:before{background-image:url('../assets/images/hero/landscape.svg')}
@media(max-width:767px){html:not(.js) .hero:before{background-image:url('../assets/images/hero/altai-panorama-mobile.webp'),url('../assets/images/hero/landscape.svg');background-position:62% top}}

/* Editorial layout matching the site's cream sections and simple typography. */
.ancient-overview .grid-2{
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:48px;
}
.ancient-overview .lead{color:var(--pine)}
.ancient-overview .grid-2>div{min-width:0}
.ancient-overview .grid-2>div>p:last-of-type{margin-bottom:0}
.ancient-overview .cards-illustration img{border:1px solid var(--line)}
@media(max-width:800px){
  .ancient-overview .grid-2{grid-template-columns:minmax(0,1fr);gap:32px}
}
.master-portrait{
  aspect-ratio:1;
  width:100%;
  max-width:400px;
  margin-inline:auto;
  background:var(--cream);
  isolation:isolate;
}
.master-portrait::before{
  inset:-24px;
  background:url('../assets/images/master/master-portrait.webp') center/cover no-repeat;
  clip-path:none;
  filter:blur(18px);
  opacity:.6;
  transform:scale(1.12);
  pointer-events:none;
}
.master-portrait img{object-fit:contain}
.master-caption{width:100%;max-width:400px;margin-inline:auto;text-align:center}

.cards-illustration{margin:0;min-width:0}
.cards-illustration img{width:100%;height:auto;border-radius:var(--radius)}
.koschuny-intro{
  background:var(--cream) url('../assets/images/cards/folk-symbols.webp') center/cover no-repeat;
  padding-block:clamp(64px,8vw,112px);
}
.koschuny-intro .container{
  width:min(720px,calc(100% - 64px));
  padding:32px;
  background:rgba(250,246,238,.94);
  border:1px solid rgba(255,255,255,.65);
  border-radius:12px;
}
.koschuny-intro .lead{margin-bottom:0}
@media(max-width:560px){
  .koschuny-intro .container{width:calc(100% - 32px);padding:24px}
}

.participation-steps{background:#fff}

.contact-section-separated{position:relative}
.contact-section-separated::before{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:min(var(--max),calc(100% - 64px));
  height:1px;
  background:var(--wood);
  opacity:.45;
}
@media(max-width:800px){.contact-section-separated::before{width:calc(100% - 40px)}}
@media(max-width:560px){.contact-section-separated::before{width:calc(100% - 32px)}}

.altai-intro{
  background:var(--cream) url('../assets/images/altai/altai-intro.webp') center 55%/cover no-repeat;
  padding-block:clamp(64px,8vw,112px);
}
.altai-intro .container{
  padding:32px;
  background:rgba(250,246,238,.35);
  -webkit-backdrop-filter:blur(24px) saturate(115%);
  backdrop-filter:blur(24px) saturate(115%);
  border-radius:var(--radius);
}
.altai-intro .eyebrow,.altai-intro .breadcrumb{color:var(--pine)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .altai-intro .container{background:rgba(250,246,238,.8)}
}
.altai-intro .lead{margin-bottom:0}
.katun-photo{
  aspect-ratio:1;
  width:100%;
  background:var(--cream);
  isolation:isolate;
}
.katun-photo::before{
  inset:-24px;
  background:url('../assets/images/altai/oroktoy-bridge.webp') center/cover no-repeat;
  clip-path:none;
  filter:blur(18px);
  opacity:.7;
  transform:scale(1.12);
  pointer-events:none;
}
.katun-photo img{object-fit:contain}
@media(max-width:560px){.altai-intro .container{padding:24px}}

.program-details{text-align:right}

.master-portrait-link{transition:box-shadow .2s}
.master-portrait-link img{transition:transform .2s}
#program:hover .master-portrait-link,#program:focus-within .master-portrait-link{box-shadow:0 8px 24px rgba(24,53,45,.2)}
#program:hover .master-portrait-link img,#program:focus-within .master-portrait-link img{transform:scale(1.03)}
@media(prefers-reduced-motion:reduce){
  .master-portrait-link,.master-portrait-link img{transition:none}
  #program:hover .master-portrait-link img,#program:focus-within .master-portrait-link img{transform:none}
}

.koschuny-article h2{margin-top:48px;font-size:clamp(28px,3.5vw,40px)}
.koschuny-article .cards-illustration{margin-top:40px}

.linked-section{position:relative}
.section-link::after{content:'';position:absolute;inset:0;z-index:3;cursor:pointer}
.linked-section:hover .section-link{text-decoration:none}
.section-link:focus-visible{outline:none}
.section-link:focus-visible::after{outline:3px solid var(--clay);outline-offset:-5px}

.accommodation-intro{
  background:radial-gradient(ellipse at 85% 15%,rgba(155,118,80,.18),transparent 60%),linear-gradient(120deg,var(--paper),var(--cream) 55%,#e4e8dc);
}
.contacts-page .contact-section{
  background:radial-gradient(ellipse at 15% 20%,rgba(155,118,80,.13),transparent 55%),linear-gradient(125deg,var(--cream),#e8ede2 60%,#dce6dc);
}
@media(min-width:801px){
  .accommodation-intro,.contacts-page .contact-section{
    min-height:440px;
    padding-block:60px;
    display:flex;
    align-items:center;
  }
}
