*{margin:0;padding:0;box-sizing:border-box}

:root{
  --font-heading:'Cormorant Garamond',serif;
  --font-body:'Manrope',sans-serif;
  --text-main:rgba(255,255,255,0.92);
  --text-muted:rgba(255,255,255,0.7);
  --cold-accent:#8ca7bf;
  --cold-accent-soft:rgba(140,167,191,0.74);
  --warm-accent:#b8915f;
  --warm-accent-soft:rgba(184,145,95,0.76);
}

body{
  background:#0a0a0a;
  color:var(--text-main);
  font-family:var(--font-body);
  line-height:1.65;
  letter-spacing:.01em;
  -webkit-font-smoothing:antialiased;
}

h1,h2{
  font-family:var(--font-heading);
  color:#fff;
  font-weight:600;
  letter-spacing:.01em;
  line-height:1.1;
}

h2{
  font-size:clamp(2.1rem,4.2vw,3.2rem);
  margin-bottom:18px;
}

p{
  color:var(--text-muted);
  font-size:clamp(1rem,1.25vw,1.08rem);
  line-height:1.75;
}

/* CONTAINER */
.container{
  max-width:1200px;
  margin:0 auto;
  padding:0 32px;
}

/* SCROLL LINE */
.scroll-line{
  position:fixed;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  width:2px;
  height:180px;
  background:rgba(255,255,255,0.08);
  overflow:hidden;
  z-index:1000;
}

.scroll-line::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:calc(var(--scroll-progress,0) * 1%);
  background:color-mix(in srgb,var(--scroll-color,var(--cold-accent)) 72%,#111);
  box-shadow:0 0 10px color-mix(in srgb,var(--scroll-color,var(--cold-accent)) 35%,transparent);
  transition:background .35s ease,height .2s ease;
}

/* HERO */
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:900;
  background:linear-gradient(180deg,rgba(8,8,9,0.82),rgba(8,8,9,0.34) 70%,transparent);
  backdrop-filter:blur(5px);
}

.header-inner{
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.logo{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
}

.logo img{
  width:auto;
  max-width:172px;
  height:44px;
  object-fit:contain;
  display:block;
}

.main-nav{
  display:flex;
  align-items:center;
  gap:26px;
}

.main-nav a{
  text-decoration:none;
  color:rgba(255,255,255,0.84);
  font-size:.88rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:color .25s ease,opacity .25s ease;
}

.main-nav a:hover{
  color:#fff;
}

.nav-toggle{
  display:none;
  border:1px solid rgba(255,255,255,0.34);
  background:rgba(10,10,10,0.55);
  color:#fff;
  width:42px;
  height:42px;
  line-height:1;
  font-size:1.2rem;
  cursor:pointer;
}

.hero{
  height:100vh;
  display:flex;
  align-items:center;
  background:linear-gradient(rgba(5,6,9,.88),rgba(6,7,10,.54)),
             url('hero.jpg') center/cover;
}

.hero-inner{
  max-width:1200px;
  width:100%;
  padding-top:96px;
}

.title{
  font-size:clamp(4.5rem,13vw,8.4rem);
  -webkit-text-stroke:.8px rgba(255,255,255,0.72);
  color:rgba(255,255,255,0.08);
  line-height:.9;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:12px;
}

.tagline{
  margin:0 0 16px;
  font-size:clamp(.86rem,1.05vw,.95rem);
  color:rgba(255,255,255,0.72);
  line-height:1.5;
  text-transform:uppercase;
  letter-spacing:.18em;
  max-width:none;
  white-space:nowrap;
  position:relative;
  padding-top:14px;
}

.sub{
  margin-top:8px;
  margin-bottom:50px;
  max-width:48ch;
  font-size:clamp(.95rem,1.2vw,1.06rem);
  color:rgba(255,255,255,0.48);
  line-height:1.86;
}

.tagline::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:72px;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,0.45),transparent);
}

.hero-buttons{
  display:flex;
  gap:20px;
  align-items:center;
}

.btn,.btn-outline{
  padding:14px 28px;
  text-decoration:none;
  font-size:.95rem;
  font-weight:500;
  letter-spacing:.03em;
  line-height:1.2;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}

.btn{
  background:rgba(255,255,255,0.95);
  color:#111;
}

.btn:hover{
  transform:translateY(-1px);
  background:#fff;
}

.btn-outline{
  border:1px solid rgba(255,255,255,0.76);
  color:#fff;
  background:rgba(8,11,15,0.45);
  backdrop-filter:blur(2px);
}

.btn-outline:hover{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,0.95);
  background:rgba(8,11,15,0.62);
}

/* SECTIONS */
.section{padding:120px 0}

/* ADV */
.adv-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.advantages{
  position:relative;
  background:
    radial-gradient(900px 320px at 12% 0%,rgba(140,167,191,0.08),transparent 62%),
    radial-gradient(760px 300px at 88% 100%,rgba(184,145,95,0.08),transparent 64%),
    linear-gradient(180deg,#0b0b0d 0%,#0d0d10 58%,#0d0d0f 100%);
}

.advantages::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.16),transparent);
}

.advantages::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.15),transparent);
}

.adv{
  min-height:128px;
  padding:14px 10px 12px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  transition:opacity .25s ease,transform .25s ease,color .25s ease;
}

.adv:hover{
  transform:translateY(-1px);
  opacity:.96;
}

.divider{
  display:none;
}

.adv-num{
  font-family:var(--font-heading);
  font-size:clamp(2rem,3.35vw,2.75rem);
  font-weight:600;
  letter-spacing:.02em;
  line-height:1;
  color:rgba(241,236,229,0.9);
}

.adv-text{
  margin-top:0;
  font-size:clamp(.68rem,1.05vw,.8rem);
  text-transform:uppercase;
  letter-spacing:.12em;
  opacity:.68;
  line-height:1.5;
  color:rgba(215,208,198,0.82);
}

/* FORMAT */
#formats{
  position:relative;
  background:
    linear-gradient(180deg,#0b0c10 0%,#0e0e10 45%,#100d0b 100%);
}

#formats::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(140,167,191,0.05) 0%,transparent 40%,rgba(184,145,95,0.05) 100%);
}

#formats::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.1;
  background-image:
    radial-gradient(circle at 20% 20%,rgba(255,255,255,0.12) 0 0.5px,transparent 0.7px),
    radial-gradient(circle at 70% 65%,rgba(255,255,255,0.1) 0 0.5px,transparent 0.8px);
  background-size:3px 3px,4px 4px;
  mix-blend-mode:soft-light;
}

.split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
}

.format-id{
  opacity:.45;
  margin-bottom:10px;
  font-size:.82rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.format-type{
  opacity:.75;
  margin-bottom:22px;
  font-size:.98rem;
}

.text-block p{
  opacity:.82;
  margin-bottom:30px;
  max-width:62ch;
}

.features{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
}

.feature-item{
  display:grid;
  grid-template-columns:44px 1fr;
  column-gap:18px;
  align-items:start;
  padding:18px 0 20px;
  border-top:1px solid rgba(255,255,255,0.13);
}

.features .feature-item:last-child{
  border-bottom:1px solid rgba(255,255,255,0.13);
}

.feature-num{
  font-size:.76rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  opacity:.82;
  line-height:1.5;
  padding-top:2px;
  font-weight:600;
  font-variant-numeric:tabular-nums;
}

.feature-title{
  color:rgba(255,255,255,0.94);
  font-size:clamp(1.04rem,1.45vw,1.2rem);
  line-height:1.42;
  font-weight:600;
  letter-spacing:.01em;
}

.feature-desc{
  margin-top:8px;
  color:rgba(255,255,255,0.62);
  font-size:clamp(.86rem,1.08vw,.94rem);
  line-height:1.68;
}

.feature-item .feature-title,
.feature-item .feature-desc{
  grid-column:2;
}

/* IMAGE */
.image{
  height:500px;
  position:relative;
  border-radius:0;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 20px 44px rgba(0,0,0,0.28);
}

.kran{
  --format-image:url('kran.jpg');
}

.samovar{
  --format-image:url('samovar.jpg');
}

.image::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--format-image);
  background-size:cover;
  background-position:center;
  transform:scale(1);
  transition:transform .9s cubic-bezier(.22,.61,.36,1);
  z-index:0;
}

.image::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.7));
  z-index:1;
  transition:background .4s ease;
}

.format:hover .image::after{
  transform:scale(1.08);
}

.format:hover .image::before{
  background:linear-gradient(rgba(0,0,0,.28),rgba(0,0,0,.68));
}

.image-label{
  position:absolute;
  bottom:24px;
  left:24px;
  z-index:2;
  font-size:clamp(.84rem,1.1vw,.95rem);
  line-height:1.5;
  letter-spacing:.02em;
  color:rgba(255,255,255,0.9);
  padding:10px 14px 11px;
  border-radius:0;
  border:1px solid rgba(255,255,255,0.18);
  border-left-width:2px;
  backdrop-filter:blur(4px);
  background:linear-gradient(145deg,rgba(10,10,10,0.72),rgba(10,10,10,0.42));
}

.label-accent{
  font-weight:600;
  letter-spacing:.03em;
}

/* COLORS */
.cold{
  background:
    radial-gradient(900px 420px at 14% 20%,rgba(88,111,134,0.16),transparent 60%),
    linear-gradient(180deg,rgba(10,14,20,0.82) 0%,rgba(8,11,15,0.56) 100%);
  position:relative;
}

.cold::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(140,167,191,0.34),rgba(184,145,95,0.24),transparent);
}

.warm{
  background:
    radial-gradient(860px 420px at 84% 18%,rgba(154,116,70,0.16),transparent 60%),
    linear-gradient(180deg,rgba(22,15,10,0.58) 0%,rgba(13,10,8,0.86) 100%);
}

.cold .format-id,
.cold .format-type{
  color:var(--cold-accent-soft);
}

.cold .text-block h2{
  color:#e3e9ef;
  text-shadow:0 0 24px rgba(110,132,154,0.2);
}

.cold .feature-num{
  color:var(--cold-accent);
  opacity:.98;
  text-shadow:0 0 18px rgba(124,200,255,0.28);
}

.cold .feature-item{
  border-top-color:rgba(124,200,255,0.22);
}

.cold .features .feature-item:last-child{
  border-bottom-color:rgba(124,200,255,0.22);
}

.cold .feature-title{
  color:#e5edf3;
}

.cold .feature-desc{
  color:rgba(203,215,225,0.7);
}

.warm .format-id,
.warm .format-type{
  color:var(--warm-accent-soft);
}

.warm .text-block h2{
  color:#efe3d6;
  text-shadow:0 0 24px rgba(158,124,86,0.2);
}

.warm .feature-num{
  color:var(--warm-accent);
  opacity:.98;
  text-shadow:0 0 18px rgba(255,191,114,0.25);
}

.warm .feature-item{
  border-top-color:rgba(255,191,114,0.2);
}

.warm .features .feature-item:last-child{
  border-bottom-color:rgba(255,191,114,0.2);
}

.warm .feature-title{
  color:#f1e3d3;
}

.warm .feature-desc{
  color:rgba(220,197,170,0.7);
}

.cold .image::before{
  background:linear-gradient(rgba(11,17,24,0.38),rgba(5,8,12,0.8));
}

.cold .image-label{
  border-color:rgba(140,167,191,0.32);
  box-shadow:0 8px 24px rgba(54,70,86,0.2);
}

.cold .label-accent{
  color:var(--cold-accent);
}

.warm .image::before{
  background:linear-gradient(rgba(30,20,13,0.34),rgba(14,10,7,0.78));
}

.warm .image-label{
  border-color:rgba(184,145,95,0.32);
  box-shadow:0 8px 24px rgba(90,64,38,0.18);
}

.warm .label-accent{
  color:var(--warm-accent);
}

/* BAR OPTIONS */
.bar-options{
  position:relative;
  background:
    radial-gradient(780px 280px at 10% 0%,rgba(140,167,191,0.05),transparent 58%),
    radial-gradient(780px 280px at 90% 100%,rgba(184,145,95,0.05),transparent 58%),
    linear-gradient(180deg,#0e0e10 0%,#0c0c0e 100%);
}

.bar-options::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(140,167,191,0.22),rgba(184,145,95,0.18),transparent);
}

.bar-options h2{
  margin-bottom:10px;
}

.bar-options-lead{
  margin:0 0 28px;
  max-width:48ch;
  color:rgba(255,255,255,0.58);
  font-size:clamp(.94rem,1.15vw,1.02rem);
  line-height:1.7;
}

.bar-options-list{
  border-top:1px solid rgba(255,255,255,0.12);
}

.bar-option{
  border-bottom:1px solid rgba(255,255,255,0.12);
}

.bar-option summary{
  list-style:none;
  cursor:pointer;
  padding:20px 0 18px;
  font-size:clamp(1.02rem,1.5vw,1.2rem);
  font-weight:500;
  letter-spacing:.01em;
  color:rgba(255,255,255,0.92);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.bar-option summary::-webkit-details-marker{
  display:none;
}

.bar-option summary::after{
  content:"+";
  flex-shrink:0;
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.1rem;
  font-weight:300;
  color:rgba(255,255,255,0.45);
  border:1px solid rgba(255,255,255,0.18);
  transition:transform .3s ease,color .25s ease,border-color .25s ease;
}

.bar-option[open] summary::after{
  content:"−";
  transform:rotate(0deg);
  color:rgba(255,255,255,0.75);
  border-color:rgba(255,255,255,0.28);
}

.bar-option p{
  margin:0 0 22px;
  padding-right:44px;
  max-width:62ch;
  color:rgba(255,255,255,0.6);
  font-size:clamp(.92rem,1.1vw,1rem);
  line-height:1.78;
}

.bar-option[open] summary{
  padding-bottom:10px;
}

/* BAR CAROUSEL — центр крупно, бока тусклее; loop; ПК 3 / планшет 2 / мобилка 1 + свайп */
.bar-carousel{
  position:relative;
  outline:none;
}

.bar-carousel:focus-visible{
  box-shadow:0 0 0 2px rgba(140,167,191,0.45);
  border-radius:4px;
}

.bar-carousel--jump .bar-slide,
.bar-carousel--jump .bar-slide-media img{
  transition:none !important;
}

.bar-carousel-indicator{
  margin-top:18px;
  width:100%;
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:10px;
  color:rgba(255,255,255,0.62);
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.72rem;
}

.bar-carousel-hint{
  display:none;
  margin:10px 0 0;
  text-align:center;
  font-size:.68rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.38);
}

.bar-carousel-current{
  font-family:var(--font-heading);
  color:rgba(241,236,229,0.92);
  letter-spacing:.08em;
}

.bar-carousel-viewport{
  overflow:hidden;
  width:100%;
  position:relative;
  padding:12px 0 18px;
  touch-action:pan-y pinch-zoom;
}

.bar-carousel-viewport::before,
.bar-carousel-viewport::after{
  content:"";
  position:absolute;
  top:12px;
  bottom:18px;
  width:min(56px,10vw);
  z-index:4;
  pointer-events:none;
}

.bar-carousel-viewport::before{
  left:0;
  background:linear-gradient(90deg,rgba(12,12,14,0.48),rgba(12,12,14,0));
}

.bar-carousel-viewport::after{
  right:0;
  background:linear-gradient(270deg,rgba(12,12,14,0.48),rgba(12,12,14,0));
}

.bar-carousel-track{
  display:flex;
  gap:16px;
  align-items:stretch;
  will-change:transform;
  transform:translateZ(0);
  transition:transform .65s cubic-bezier(.33,1,.48,1);
}

.bar-carousel-track.is-instant{
  transition:none !important;
}

@media(prefers-reduced-motion:reduce){
  .bar-carousel-track{
    transition-duration:.01ms;
  }
}

.bar-slide{
  flex-shrink:0;
  border:1px solid rgba(255,255,255,0.1);
  background:rgba(10,10,12,0.38);
  overflow:hidden;
  border-radius:2px;
  opacity:.58;
  transform:scale(.94);
  filter:brightness(.92) saturate(.92);
  backface-visibility:hidden;
  transition:
    transform .5s cubic-bezier(.33,1,.48,1),
    opacity .45s cubic-bezier(.33,1,.48,1),
    filter .45s ease,
    border-color .4s ease,
    box-shadow .45s ease;
}

.bar-slide.is-active{
  opacity:1;
  transform:scale(1);
  filter:brightness(1) saturate(1);
  border-color:rgba(255,255,255,0.22);
  box-shadow:
    0 20px 48px rgba(0,0,0,0.4),
    0 0 0 1px rgba(255,255,255,0.06) inset;
  z-index:2;
}

.bar-slide.is-side-left,
.bar-slide.is-side-right{
  z-index:1;
}

.bar-slide.is-active:hover{
  transform:scale(1.02);
  border-color:rgba(255,255,255,0.28);
  box-shadow:
    0 28px 64px rgba(0,0,0,0.48),
    0 0 0 1px rgba(255,255,255,0.08) inset;
}

.bar-slide.is-side-left:hover,
.bar-slide.is-side-right:hover{
  transform:scale(0.96);
  opacity:.66;
  border-color:rgba(255,255,255,0.16);
  box-shadow:0 12px 32px rgba(0,0,0,0.28);
}

.bar-slide-media{
  height:260px;
  position:relative;
  overflow:hidden;
  border-radius:2px 2px 0 0;
  background:#070708;
  isolation:isolate;
}

.bar-slide-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transform:translateZ(0);
  backface-visibility:hidden;
}

.bar-slide-media::after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  bottom:0;
  width:100%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,0.08) 0%,
    rgba(0,0,0,0.35) 42%,
    rgba(0,0,0,0.88) 100%
  );
  pointer-events:none;
}

.bar-slide-body{
  padding:18px 18px 22px;
}

.bar-slide-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.bar-slide-num{
  font-family:var(--font-heading);
  font-size:1.6rem;
  line-height:1;
  letter-spacing:.08em;
  color:rgba(241,236,229,0.92);
}

.bar-slide-body h3{
  margin:0;
  font-size:1.12rem;
  font-weight:600;
  color:rgba(255,255,255,0.92);
  letter-spacing:.01em;
}

.bar-slide-body p{
  margin:0;
  color:rgba(255,255,255,0.62);
  line-height:1.75;
  font-size:.95rem;
  max-width:60ch;
}

.bar-carousel-arrow{
  position:absolute;
  top:calc(50% - 8px);
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(10,10,12,0.72);
  color:#fff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  backdrop-filter:blur(8px);
  z-index:6;
  transition:transform .28s ease,border-color .28s ease,background .28s ease,opacity .28s ease;
}

.bar-carousel-arrow:hover:not(:disabled){
  transform:translateY(-50%) scale(1.05);
  border-color:rgba(255,255,255,0.28);
  background:rgba(14,14,16,0.88);
}

.bar-carousel-arrow:disabled{
  opacity:.35;
  cursor:default;
}

.bar-carousel-arrow.left{
  left:4px;
}

.bar-carousel-arrow.right{
  right:4px;
}

.bar-carousel-arrow:active:not(:disabled){
  transform:translateY(-50%) scale(.97);
}

@media(max-width:900px){
  .bar-carousel-arrow{
    display:none;
  }

  .bar-carousel-hint{
    display:block;
  }

  .bar-carousel-viewport::before,
  .bar-carousel-viewport::after{
    width:min(28px,7vw);
  }

  .bar-carousel-viewport::before{
    background:linear-gradient(90deg,rgba(12,12,14,0.22),rgba(12,12,14,0));
  }

  .bar-carousel-viewport::after{
    background:linear-gradient(270deg,rgba(12,12,14,0.22),rgba(12,12,14,0));
  }

  .bar-slide.is-side-left,
  .bar-slide.is-side-right{
    opacity:.48;
    transform:scale(.93);
    filter:brightness(.88) saturate(.88);
  }

  .bar-slide-media{
    height:230px;
  }

  .bar-slide-body{
    padding:16px 14px 18px;
  }

  .bar-slide-body p{
    font-size:.92rem;
  }
}

/* EMOTION */
.emotion{
  position:relative;
  padding:clamp(100px,14vw,160px) 0 clamp(96px,12vw,140px);
  background:
    radial-gradient(900px 360px at 50% 20%,rgba(140,167,191,0.08),transparent 55%),
    radial-gradient(800px 320px at 50% 80%,rgba(184,145,95,0.07),transparent 55%),
    linear-gradient(180deg,#0b0b0d 0%,#0a0a0c 100%);
}

.emotion::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.14),transparent);
}

.emotion-inner{
  max-width:920px;
  margin:0 auto;
  text-align:center;
}

.emotion-quote{
  margin:0;
  font-family:var(--font-heading);
  font-size:clamp(2rem,5.2vw,3.75rem);
  font-weight:500;
  line-height:1.22;
  letter-spacing:.02em;
  color:rgba(252,248,242,0.96);
  text-shadow:
    0 0 40px rgba(140,167,191,0.18),
    0 0 56px rgba(184,145,95,0.12);
}

@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .emotion-quote{
    background:linear-gradient(
      120deg,
      rgba(255,255,255,0.98) 0%,
      rgba(200,218,232,0.95) 35%,
      rgba(232,210,180,0.92) 70%,
      rgba(255,252,246,0.98) 100%
    );
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    text-shadow:none;
    filter:drop-shadow(0 0 28px rgba(140,167,191,0.15)) drop-shadow(0 0 40px rgba(184,145,95,0.1));
  }
}

/* GALLERY */
.gallery{
  position:relative;
  background:
    radial-gradient(860px 320px at 12% 14%,rgba(140,167,191,0.07),transparent 62%),
    radial-gradient(920px 320px at 88% 86%,rgba(184,145,95,0.07),transparent 62%),
    linear-gradient(180deg,#0b0b0c 0%,#0c0c0d 100%);
}

.gallery::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.12),transparent);
}

.gallery h2{
  margin-bottom:14px;
}

.gallery-intro{
  margin-bottom:36px;
  max-width:58ch;
}

.gallery-intro p{
  margin:0 0 12px;
  color:rgba(255,255,255,0.66);
  font-size:clamp(.96rem,1.2vw,1.06rem);
  line-height:1.78;
}

.gallery-intro p:last-child{
  margin-bottom:0;
  color:rgba(255,255,255,0.52);
  font-size:clamp(.92rem,1.1vw,1.02rem);
}

.gallery-accent{
  color:var(--warm-accent);
  letter-spacing:.02em;
}

.premium-gallery{
  column-count:4;
  column-gap:14px;
}

.gallery-item{
  display:inline-block;
  width:100%;
  margin:0 0 14px;
  position:relative;
  height:240px;
  overflow:hidden;
  break-inside:avoid;
  border:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0);
  background:#151515 center/cover no-repeat;
  cursor:pointer;
  transition:transform .5s ease,border-color .35s ease,filter .35s ease,opacity .6s ease;
  filter:saturate(.88) contrast(1.04);
  opacity:0;
  transform:translateY(26px);
}

.gallery-item:focus{
  outline:none;
}

.gallery-item:focus-visible{
  outline:2px solid rgba(184,145,95,0.22);
  outline-offset:2px;
}

.gallery-item.is-visible{
  opacity:1;
  transform:translateY(0);
}

.gallery-item::before{
  content:"";
  position:absolute;
  inset:-1px;
  background:linear-gradient(180deg,rgba(6,6,7,0.08),rgba(6,6,7,0.72));
  pointer-events:none;
}

.gallery-item span{
  position:absolute;
  left:14px;
  bottom:12px;
  z-index:2;
  font-size:.74rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.82);
}

.gallery-item:hover{
  transform:translateY(-4px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.16);
  filter:saturate(1) contrast(1.07);
}

/* GALLERY MODAL */
.gallery-modal{
  position:fixed;
  inset:0;
  z-index:2000;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,0.78);
  backdrop-filter:blur(6px);
  padding:18px;
}

.gallery-modal.is-open{
  display:flex;
}

.gallery-modal-inner{
  position:relative;
  width:min(980px, 96vw);
  border:1px solid rgba(255,255,255,0.14);
  background:linear-gradient(180deg,rgba(16,16,18,0.92),rgba(10,10,12,0.88));
  border-radius:0;
  overflow:hidden;
}

.gallery-modal-media{
  position:relative;
  background:#0a0a0b;
}

.gallery-modal-media img{
  width:100%;
  height:auto;
  display:block;
  max-height:74vh;
  object-fit:contain;
}

.gallery-modal-close{
  position:absolute;
  top:12px;
  right:12px;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(0,0,0,0.35);
  color:#fff;
  cursor:pointer;
  z-index:3;
  font-size:1.5rem;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
}

.gallery-modal-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(0,0,0,0.35);
  color:#fff;
  cursor:pointer;
  z-index:3;
  backdrop-filter:blur(6px);
  display:flex;
  align-items:center;
  justify-content:center;
}

.gallery-modal-nav.prev{
  left:12px;
}

.gallery-modal-nav.next{
  right:12px;
}

.gallery-modal-caption{
  padding:14px 18px 18px;
  border-top:1px solid rgba(255,255,255,0.12);
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.gallery-modal-title{
  font-family:var(--font-heading);
  font-size:1.1rem;
  color:rgba(241,236,229,0.92);
  letter-spacing:.02em;
}

.gallery-modal-counter{
  color:rgba(255,255,255,0.58);
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.74rem;
}

@media(max-width:900px){
  .gallery-modal-inner{
    width:100%;
  }
  .gallery-modal-nav{
    display:none;
  }
}

.premium-gallery .gallery-item:nth-child(1){height:420px;}
.premium-gallery .gallery-item:nth-child(2){height:300px;}
.premium-gallery .gallery-item:nth-child(3){height:360px;}
.premium-gallery .gallery-item:nth-child(4){height:280px;}
.premium-gallery .gallery-item:nth-child(5){height:340px;}
.premium-gallery .gallery-item:nth-child(6){height:300px;}
.premium-gallery .gallery-item:nth-child(7){height:260px;}
.premium-gallery .gallery-item:nth-child(8){height:430px;}
.premium-gallery .gallery-item:nth-child(9){height:320px;}
.premium-gallery .gallery-item:nth-child(10){height:280px;}
.premium-gallery .gallery-item:nth-child(11){height:350px;}
.premium-gallery .gallery-item:nth-child(12){height:300px;}

.g1{background-image:url('gallery/g1.jpg');}
.g2{background-image:url('gallery/g2.jpg');}
.g3{background-image:url('gallery/g3.jpg');}
.g4{background-image:url('gallery/g4.jpg');}
.g5{background-image:url('gallery/g5.jpg');}
.g6{background-image:url('gallery/g6.jpg');}
.g7{background-image:url('gallery/g7.jpg');}
.g8{background-image:url('gallery/g8.jpg');}
.g9{background-image:url('gallery/g9.jpg');}
.g10{background-image:url('gallery/g10.jpg');}
.g11{background-image:url('gallery/g11.jpg');}
.g12{background-image:url('gallery/g12.jpg');}

/* PROCESS */
.process{
  position:relative;
  background:
    radial-gradient(700px 240px at 50% 0%,rgba(255,255,255,0.03),transparent 50%),
    linear-gradient(180deg,#0c0c0d 0%,#0b0b0c 100%);
}

.process::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.12),transparent);
}

.process h2{
  margin-bottom:28px;
}

.process-list{
  border-top:1px solid rgba(255,255,255,0.14);
}

.process-item{
  display:grid;
  grid-template-columns:80px minmax(0,1fr);
  column-gap:18px;
  padding:26px 0 28px;
  border-bottom:1px solid rgba(255,255,255,0.14);
  opacity:0;
  transform:translateY(20px);
  transition:opacity .6s ease,transform .6s ease;
}

.process-item.is-visible{
  opacity:1;
  transform:translateY(0);
}

.process-num{
  font-family:var(--font-heading);
  font-size:clamp(1.7rem,2.4vw,2.2rem);
  line-height:1;
  color:rgba(241,236,229,0.86);
  letter-spacing:.04em;
}

.process-content h3{
  margin:0 0 8px;
  font-family:var(--font-body);
  font-size:clamp(1.02rem,1.6vw,1.28rem);
  font-weight:500;
  letter-spacing:.01em;
  color:rgba(255,255,255,0.92);
}

.process-content p{
  margin:0;
  max-width:64ch;
  color:rgba(255,255,255,0.62);
  font-size:clamp(.93rem,1.18vw,1.02rem);
  line-height:1.78;
}

/* PRICING */
.pricing{
  position:relative;
  background:linear-gradient(180deg,#0b0b0c 0%,#0a0a0b 100%);
}

.pricing::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.1),transparent);
}

/* CTA */
.cta{
  position:relative;
  background:linear-gradient(180deg,#0a0a0b 0%,#09090a 100%);
}

.cta::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.1),transparent);
}

.cta h2{
  margin-bottom:12px;
}

.cta > .container > p{
  max-width:52ch;
  margin-bottom:0;
}

.pricing h2{
  margin-bottom:24px;
}

.pricing-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.price-card{
  padding:24px 0 26px;
  border-top:1px solid rgba(255,255,255,0.16);
}

.price-card h3{
  margin:0 0 10px;
  font-family:var(--font-body);
  font-size:clamp(1.05rem,1.6vw,1.24rem);
  font-weight:500;
  color:rgba(255,255,255,0.9);
}

.price-value{
  margin-bottom:10px;
  font-family:var(--font-heading);
  font-size:clamp(2rem,3.2vw,2.8rem);
  line-height:1;
  color:rgba(241,236,229,0.94);
  letter-spacing:.02em;
}

.price-card p{
  margin:0;
  max-width:48ch;
  font-size:clamp(.92rem,1.1vw,1rem);
  line-height:1.75;
  color:rgba(255,255,255,0.6);
}

.pricing-note{
  margin:16px 0 0;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,0.12);
  font-size:.9rem;
  color:rgba(255,255,255,0.52);
  line-height:1.7;
}

/* CTA */
.contacts{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:30px;
  max-width:620px;
}

.contacts a{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,0.22);
  text-decoration:none;
  color:rgba(255,255,255,0.9);
  text-align:left;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:.82rem;
  background:rgba(12,12,14,0.52);
  transition:border-color .25s ease,background .25s ease,color .25s ease,transform .25s ease;
}

.contacts a:hover{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,0.42);
  background:rgba(18,18,20,0.72);
  color:#fff;
}

.cta-accent{
  color:var(--warm-accent);
  letter-spacing:.03em;
}

.contact-phone{
  display:inline-block;
  margin-top:18px;
  text-decoration:none;
  font-family:var(--font-heading);
  font-size:clamp(1.45rem,2.7vw,2.2rem);
  line-height:1.05;
  letter-spacing:.03em;
  color:rgba(241,236,229,0.94);
  transition:color .25s ease,opacity .25s ease;
}

.contact-phone:hover{
  color:#fff;
}

/* FOOTER */
.footer{
  text-align:center;
  padding:40px;
  opacity:.62;
  font-size:.92rem;
  line-height:1.8;
}

/* MOBILE */
@media(max-width:900px){

.hero-inner{padding:86px 20px 0}
.title{
  -webkit-text-stroke:.7px rgba(255,255,255,0.72);
  letter-spacing:.03em;
  margin-bottom:10px;
}

.tagline{
  letter-spacing:.14em;
  padding-top:12px;
  margin-bottom:12px;
  white-space:normal;
}

.tagline::before{
  width:56px;
}

.emotion{
  padding:72px 0 64px;
}

.emotion-quote{
  font-size:clamp(1.65rem,7vw,2.35rem);
  line-height:1.25;
}

.bar-options-lead{
  margin-bottom:20px;
}

.bar-option summary{
  padding:16px 0 14px;
  font-size:1rem;
}

.bar-option p{
  padding-right:0;
  margin-bottom:18px;
}

.gallery-intro{
  margin-bottom:28px;
}

.site-header{
  background:linear-gradient(180deg,rgba(8,8,9,0.9),rgba(8,8,9,0.54) 78%,transparent);
}

.header-inner{
  min-height:64px;
}

.logo{
  z-index:3;
}

.logo img{
  width:auto;
  max-width:134px;
  height:36px;
}

.nav-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  z-index:3;
}

.main-nav{
  position:absolute;
  top:64px;
  left:0;
  right:0;
  display:none;
  flex-direction:column;
  gap:0;
  background:rgba(8,8,9,0.95);
  border-top:1px solid rgba(255,255,255,0.12);
  border-bottom:1px solid rgba(255,255,255,0.12);
}

.site-header.nav-open .main-nav{
  display:flex;
}

.main-nav a{
  width:100%;
  font-size:.78rem;
  letter-spacing:.08em;
  padding:14px 20px;
  border-bottom:1px solid rgba(255,255,255,0.08);
}

.main-nav a:last-child{
  border-bottom:none;
}

.hero-buttons{
  flex-direction:column;
  align-items:stretch;
  gap:12px;
  max-width:320px;
}

.hero-buttons .btn,
.hero-buttons .btn-outline{
  text-align:center;
  width:100%;
}

.scroll-line{
  left:10px;
  height:120px;
}

.split{grid-template-columns:1fr}

.image{
  height:380px;
  border-radius:0;
}

.format:hover .image::after{
  transform:scale(1.04);
}

.image-label{
  left:16px;
  right:16px;
  bottom:16px;
  width:fit-content;
  max-width:calc(100% - 32px);
  padding:9px 12px;
  font-size:.82rem;
  line-height:1.45;
  border-left-width:2px;
}

.premium-gallery{
  column-count:2;
  column-gap:10px;
}

.premium-gallery .gallery-item,
.premium-gallery .gallery-item:nth-child(1),
.premium-gallery .gallery-item:nth-child(2),
.premium-gallery .gallery-item:nth-child(3),
.premium-gallery .gallery-item:nth-child(4),
.premium-gallery .gallery-item:nth-child(5),
.premium-gallery .gallery-item:nth-child(6),
.premium-gallery .gallery-item:nth-child(7),
.premium-gallery .gallery-item:nth-child(8),
.premium-gallery .gallery-item:nth-child(9),
.premium-gallery .gallery-item:nth-child(10),
.premium-gallery .gallery-item:nth-child(11),
.premium-gallery .gallery-item:nth-child(12){
  height:190px;
}

.process h2{
  margin-bottom:20px;
}

.process-item{
  grid-template-columns:54px minmax(0,1fr);
  column-gap:12px;
  padding:18px 0 20px;
}

.process-num{
  font-size:1.4rem;
}

.process-content h3{
  font-size:1rem;
  margin-bottom:6px;
}

.process-content p{
  font-size:.9rem;
  line-height:1.7;
}

.pricing h2{
  margin-bottom:18px;
}

.pricing-grid{
  grid-template-columns:1fr;
  gap:6px;
}

.price-card{
  padding:18px 0 20px;
}

.price-value{
  font-size:2rem;
}

.price-card p{
  font-size:.9rem;
}

.pricing-note{
  margin-top:12px;
  font-size:.84rem;
  line-height:1.62;
}

.contacts{
  gap:9px;
  max-width:360px;
}

.contacts a{
  width:100%;
  text-align:left;
  padding:13px 14px;
}

.contact-phone{
  margin-top:14px;
  font-size:clamp(1.25rem,6.2vw,1.7rem);
}

.adv-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.adv{
  min-height:108px;
  padding:10px 6px 8px;
}

.adv-num{
  font-size:clamp(1.65rem,7vw,2.05rem);
}

.adv-text{
  font-size:.66rem;
  letter-spacing:.1em;
}

.feature-item{
  grid-template-columns:38px 1fr;
  column-gap:14px;
  padding:14px 0 16px;
}

.feature-num{
  font-size:.7rem;
}

.feature-title{
  font-size:1rem;
}

.feature-desc{
  font-size:.86rem;
}

}

@media(min-width:901px){
  .adv-grid{
    grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr) 1px minmax(0,1fr) 1px minmax(0,1fr);
    align-items:center;
    gap:24px;
  }

  .divider{
    display:block;
    width:1px;
    height:62px;
    background:linear-gradient(180deg,transparent,rgba(255,255,255,0.2),transparent);
  }
}