.agent-home{
  --ah-ink:#142033;
  --ah-muted:#617085;
  --ah-turquoise:#18b8b2;
  --ah-turquoise-dark:#07938f;
  --ah-soft:#effcfb;
  --ah-yellow:#ffd84d;
  --ah-line:#e4ecef;
  --ah-card:#ffffff;
  color:var(--ah-ink);
}

.agent-home *{
  box-sizing:border-box;
}

.agent-home .ah-wrap{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
}

.agent-home .ah-section{
  padding:72px 0;
}

.agent-home .ah-section-soft{
  background:#f6fafb;
}

.agent-home .ah-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:16px;
  padding:8px 13px;
  border-radius:999px;
  background:#e8fbf9;
  color:#087f7b;
  font-size:14px;
  font-weight:800;
}

.agent-home h1,
.agent-home h2,
.agent-home h3{
  color:var(--ah-ink);
  letter-spacing:-.025em;
}

.agent-home h1{
  margin:0;
  max-width:760px;
  font-size:clamp(38px,6vw,68px);
  line-height:1.02;
}

.agent-home h2{
  margin:0 0 14px;
  font-size:clamp(29px,4vw,44px);
  line-height:1.08;
}

.agent-home h3{
  margin:0 0 10px;
  font-size:21px;
}

.agent-home p{
  color:var(--ah-muted);
  line-height:1.65;
}

.agent-home .ah-hero{
  position:relative;
  overflow:hidden;
  padding:68px 0 76px;
  background:
    radial-gradient(circle at 86% 18%,rgba(255,216,77,.45),transparent 25%),
    radial-gradient(circle at 72% 70%,rgba(24,184,178,.16),transparent 34%),
    linear-gradient(135deg,#f4fffe 0%,#ffffff 55%,#fffaf0 100%);
}

.agent-home .ah-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  align-items:center;
  gap:48px;
}

.agent-home .ah-lead{
  max-width:720px;
  margin:22px 0 26px;
  font-size:19px;
  color:#516174;
}

.agent-home .ah-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.agent-home .ah-btn{
  display:inline-flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:13px 20px;
  border:1px solid #cad7dc;
  border-radius:14px;
  background:#fff;
  color:#172033;
  text-decoration:none;
  font-weight:800;
  transition:.18s ease;
}

.agent-home .ah-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 9px 26px rgba(27,55,70,.09);
}

.agent-home .ah-btn-primary{
  border-color:var(--ah-turquoise);
  background:var(--ah-turquoise);
  color:#fff;
}

.agent-home .ah-btn-primary:hover{
  background:var(--ah-turquoise-dark);
}

.agent-home .ah-btn-max{
  border-color:#172033;
  background:#172033;
  color:#fff;
}

.agent-home .ah-chips{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:25px;
}

.agent-home .ah-chip{
  padding:7px 11px;
  border:1px solid #dce9eb;
  border-radius:999px;
  background:rgba(255,255,255,.75);
  color:#4f6272;
  font-size:13px;
  font-weight:700;
}

.agent-home .ah-hero-card{
  padding:27px;
  border:1px solid rgba(24,184,178,.22);
  border-radius:26px;
  background:rgba(255,255,255,.9);
  box-shadow:0 24px 70px rgba(25,72,82,.12);
}

.agent-home .ah-hero-card-badge{
  display:inline-block;
  margin-bottom:17px;
  padding:7px 10px;
  border-radius:10px;
  background:var(--ah-yellow);
  color:#3e3511;
  font-size:13px;
  font-weight:900;
}

.agent-home .ah-list{
  display:grid;
  gap:13px;
  margin:18px 0 0;
  padding:0;
  list-style:none;
}

.agent-home .ah-list li{
  position:relative;
  padding-left:28px;
  color:#425568;
  line-height:1.45;
}

.agent-home .ah-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--ah-turquoise-dark);
  font-weight:900;
}

.agent-home .ah-heading{
  max-width:760px;
  margin-bottom:34px;
}

.agent-home .ah-destinations{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.agent-home .ah-destination{
  display:flex;
  min-height:155px;
  flex-direction:column;
  justify-content:space-between;
  padding:22px;
  border:1px solid var(--ah-line);
  border-radius:21px;
  background:#fff;
  text-decoration:none;
  transition:.18s ease;
}

.agent-home .ah-destination:hover{
  transform:translateY(-2px);
  border-color:#b8dfdc;
  box-shadow:0 15px 38px rgba(25,62,75,.08);
}

.agent-home .ah-destination span{
  color:#728292;
  font-size:13px;
  font-weight:700;
}

.agent-home .ah-destination strong{
  display:block;
  margin-top:8px;
  color:var(--ah-ink);
  font-size:24px;
}

.agent-home .ah-arrow{
  margin-top:20px;
  color:var(--ah-turquoise-dark);
  font-weight:900;
}

.agent-home .ah-values{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.agent-home .ah-value{
  padding:23px;
  border:1px solid var(--ah-line);
  border-radius:20px;
  background:#fff;
}

.agent-home .ah-value-icon{
  display:flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
  border-radius:14px;
  background:#e8fbf9;
  font-size:22px;
}

.agent-home .ah-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  counter-reset:step;
}

.agent-home .ah-step{
  position:relative;
  padding:26px;
  border:1px solid var(--ah-line);
  border-radius:22px;
  background:#fff;
  counter-increment:step;
}

.agent-home .ah-step:before{
  content:"0" counter(step);
  display:inline-block;
  margin-bottom:25px;
  color:var(--ah-turquoise-dark);
  font-size:14px;
  font-weight:900;
}

.agent-home .ah-hotel-callout{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:30px;
  padding:34px;
  border-radius:26px;
  background:#172033;
}

.agent-home .ah-hotel-callout h2{
  color:#fff;
}

.agent-home .ah-hotel-callout p{
  max-width:720px;
  margin-bottom:0;
  color:#cad5df;
}

.agent-home .ah-hotel-callout .ah-btn{
  white-space:nowrap;
}

.agent-home .ah-useful{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.agent-home .ah-useful a{
  padding:20px;
  border:1px solid var(--ah-line);
  border-radius:18px;
  background:#fff;
  color:var(--ah-ink);
  text-decoration:none;
  font-weight:800;
}

.agent-home .ah-useful a span{
  display:block;
  margin-top:7px;
  color:#758493;
  font-size:13px;
  font-weight:500;
}

.agent-home .ah-faq{
  display:grid;
  gap:11px;
  max-width:900px;
}

.agent-home .ah-faq details{
  padding:0 20px;
  border:1px solid var(--ah-line);
  border-radius:16px;
  background:#fff;
}

.agent-home .ah-faq summary{
  cursor:pointer;
  padding:19px 0;
  color:var(--ah-ink);
  font-weight:800;
}

.agent-home .ah-faq details p{
  margin:0 0 20px;
}

.agent-home .ah-final{
  text-align:center;
  padding:78px 0;
  background:#eafbf9;
}

.agent-home .ah-final p{
  max-width:650px;
  margin:15px auto 0;
}

.agent-home .ah-final .ah-actions{
  justify-content:center;
}

@media(max-width:900px){
  .agent-home .ah-hero-grid{
    grid-template-columns:1fr;
  }

  .agent-home .ah-destinations{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .agent-home .ah-values{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .agent-home .ah-useful{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .agent-home .ah-wrap{
    width:min(100% - 24px,1180px);
  }

  .agent-home .ah-section{
    padding:52px 0;
  }

  .agent-home .ah-hero{
    padding:44px 0 54px;
  }

  .agent-home h1{
    font-size:40px;
  }

  .agent-home .ah-lead{
    font-size:17px;
  }

  .agent-home .ah-actions{
    display:grid;
  }

  .agent-home .ah-btn{
    width:100%;
  }

  .agent-home .ah-destinations,
  .agent-home .ah-values,
  .agent-home .ah-steps,
  .agent-home .ah-useful{
    grid-template-columns:1fr;
  }

  .agent-home .ah-hotel-callout{
    grid-template-columns:1fr;
    padding:26px;
  }
}


/* HOME EXPERT + HOTELS V1 */

.agent-home .ah-expert-section{
  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      #f5fffe 58%,
      #fffaf0 100%
    );
}

.agent-home .ah-expert-card{
  display:grid;
  grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);
  gap:44px;
  align-items:center;
  padding:36px;
  border:1px solid #dce9eb;
  border-radius:28px;
  background:#fff;
  box-shadow:0 20px 60px rgba(23,55,70,.08);
}

.agent-home .ah-expert-sign{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:18px;
}

.agent-home .ah-expert-initial{
  display:flex;
  width:112px;
  height:112px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:
    linear-gradient(
      145deg,
      #24c4bd,
      #0c918d
    );
  color:#fff;
  font-size:48px;
  font-weight:900;
  box-shadow:0 15px 35px rgba(11,147,143,.2);
}

.agent-home .ah-expert-name{
  margin-bottom:4px;
  color:#142033;
  font-size:25px;
  font-weight:900;
}

.agent-home .ah-expert-role{
  max-width:230px;
  color:#6b7988;
  line-height:1.45;
}

.agent-home .ah-expert-copy h2{
  max-width:700px;
}

.agent-home .ah-expert-copy p{
  max-width:760px;
}

.agent-home .ah-hotels-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}

.agent-home .ah-text-link{
  flex:0 0 auto;
  margin-bottom:36px;
  color:#078d88;
  font-weight:800;
  text-decoration:none;
}

.agent-home .ah-hotel-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}

.agent-home .ah-hotel-card{
  display:flex;
  min-width:0;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #e0e8eb;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 35px rgba(25,55,70,.06);
}

.agent-home .ah-hotel-visual{
  position:relative;
  display:flex;
  min-height:170px;
  align-items:flex-end;
  padding:18px;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 85% 10%,
      rgba(255,216,77,.75),
      transparent 34%
    ),
    linear-gradient(
      145deg,
      #dff8f5,
      #9fe4df
    );
}

.agent-home .ah-hotel-visual.has-image{
  background-size:cover;
  background-position:center;
}

.agent-home .ah-hotel-visual.has-image:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      to top,
      rgba(13,30,43,.72),
      rgba(13,30,43,.03) 65%
    );
}

.agent-home .ah-hotel-place{
  position:relative;
  z-index:2;
  display:inline-flex;
  max-width:100%;
  padding:8px 11px;
  border-radius:11px;
  background:rgba(255,255,255,.9);
  color:#263748;
  font-size:12px;
  font-weight:850;
}

.agent-home .has-image .ah-hotel-place{
  background:rgba(255,255,255,.92);
}

.agent-home .ah-hotel-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:19px;
}

.agent-home .ah-hotel-stars{
  margin-bottom:8px;
  color:#b78900;
  font-size:13px;
  font-weight:900;
}

.agent-home .ah-hotel-name{
  margin:0 0 11px;
  color:#172033;
  font-size:19px;
  line-height:1.25;
}

.agent-home .ah-hotel-format{
  margin-bottom:13px;
  color:#788697;
  font-size:13px;
}

.agent-home .ah-hotel-note{
  margin:0 0 14px;
  color:#526274;
  font-size:14px;
  line-height:1.55;
}

.agent-home .ah-hotel-points{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 17px;
}

.agent-home .ah-hotel-point{
  display:inline-flex;
  padding:6px 8px;
  border-radius:9px;
  background:#effaf9;
  color:#29736f;
  font-size:11px;
  font-weight:800;
}

.agent-home .ah-hotel-card .ah-btn{
  width:100%;
  min-height:44px;
  margin-top:auto;
  padding:10px 13px;
  font-size:13px;
}

.agent-home .ah-hotels-loading{
  grid-column:1/-1;
  padding:30px;
  border:1px dashed #cddbdd;
  border-radius:18px;
  background:#fff;
  color:#72808e;
  text-align:center;
}

.agent-home .ah-hotels-footnote{
  margin-top:16px;
  color:#86919e;
  font-size:12px;
}

@media(max-width:1000px){
  .agent-home .ah-hotel-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .agent-home .ah-expert-card{
    grid-template-columns:1fr;
    gap:26px;
    padding:25px;
  }

  .agent-home .ah-expert-sign{
    flex-direction:row;
    align-items:center;
  }

  .agent-home .ah-expert-initial{
    width:82px;
    height:82px;
    flex:0 0 82px;
    font-size:36px;
  }

  .agent-home .ah-hotels-head{
    display:block;
  }

  .agent-home .ah-text-link{
    display:inline-block;
    margin:-14px 0 28px;
  }
}

@media(max-width:600px){
  .agent-home .ah-hotel-grid{
    grid-template-columns:1fr;
  }

  .agent-home .ah-hotel-visual{
    min-height:190px;
  }
}

.agent-home .ah-expert-photo{
  display:block;
  width:min(100%,300px);
  aspect-ratio:4 / 5;
  object-fit:cover;
  object-position:center;
  border-radius:24px;
  box-shadow:0 18px 45px rgba(23,55,70,.14);
}

@media(max-width:760px){
  .agent-home .ah-expert-photo{
    width:125px;
    flex:0 0 125px;
    border-radius:18px;
  }
}


/* EXPERT PHOTO MOBILE FIX V2 */

.agent-home .ah-expert-photo{
  display:block !important;
  width:100% !important;
  max-width:320px !important;
  height:auto !important;
  aspect-ratio:4 / 5 !important;
  object-fit:cover !important;
  object-position:center top !important;
  border-radius:24px !important;
}

@media(max-width:760px){

  .agent-home .ah-expert-card{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:26px !important;
  }

  .agent-home .ah-expert-sign{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    width:100% !important;
    gap:16px !important;
  }

  .agent-home .ah-expert-photo{
    width:100% !important;
    max-width:none !important;
    height:auto !important;
    aspect-ratio:4 / 5 !important;
    object-fit:cover !important;
    object-position:center top !important;
    flex:none !important;
  }

  .agent-home .ah-expert-name{
    margin-top:2px !important;
  }

  .agent-home .ah-expert-role{
    max-width:none !important;
  }
}


/* COMPACT MOBILE V4 */

@media(max-width:640px){

  .agent-home .ah-section{
    padding:38px 0;
  }

  .agent-home .ah-heading{
    margin-bottom:22px;
  }

  .agent-home h2{
    font-size:28px;
  }

  .agent-home .ah-heading p{
    margin-bottom:0;
  }


  /* СТРАНЫ: 2 В РЯД */

  .agent-home .ah-destinations{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .agent-home .ah-destination{
    min-height:112px !important;
    padding:14px !important;
    border-radius:16px !important;
  }

  .agent-home .ah-destination span{
    font-size:10px !important;
    line-height:1.25;
  }

  .agent-home .ah-destination strong{
    margin-top:5px;
    font-size:19px !important;
    line-height:1.15;
  }

  .agent-home .ah-arrow{
    margin-top:12px !important;
    font-size:12px;
  }


  /* КАК ВЫБИРАЕМ: 2 В РЯД */

  .agent-home .ah-values{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .agent-home .ah-value{
    padding:15px !important;
    border-radius:16px !important;
  }

  .agent-home .ah-value-icon{
    width:36px !important;
    height:36px !important;
    margin-bottom:11px !important;
    border-radius:11px !important;
    font-size:18px !important;
  }

  .agent-home .ah-value h3{
    margin-bottom:7px;
    font-size:17px !important;
    line-height:1.2;
  }

  .agent-home .ah-value p{
    margin:0;
    font-size:13px !important;
    line-height:1.45;
  }


  /* ПОЛЕЗНО ЗНАТЬ: ТОЖЕ 2 В РЯД */

  .agent-home .ah-useful{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .agent-home .ah-useful a{
    padding:14px !important;
    border-radius:15px !important;
    font-size:15px;
  }

  .agent-home .ah-useful a span{
    margin-top:5px;
    font-size:11px !important;
    line-height:1.35;
  }


  /* ШАГИ ОСТАВЛЯЕМ ПО ОДНОМУ, НО УМЕНЬШАЕМ */

  .agent-home .ah-step{
    padding:19px !important;
    border-radius:17px !important;
  }

  .agent-home .ah-step:before{
    margin-bottom:15px !important;
  }

  .agent-home .ah-step h3{
    font-size:18px !important;
  }

  .agent-home .ah-step p{
    margin-bottom:0;
    font-size:14px;
  }


  /* БЛОК МАРГАРИТЫ ЧУТЬ КОМПАКТНЕЕ */

  .agent-home .ah-expert-card{
    padding:20px !important;
  }

  .agent-home .ah-expert-copy h2{
    font-size:27px !important;
  }

  .agent-home .ah-expert-copy p{
    font-size:14px;
  }

}


/* MOBILE HOTELS SLIDER V5 */

@media(max-width:640px){

  .agent-home .ah-hotel-grid{
    display:flex !important;
    grid-template-columns:none !important;
    gap:12px !important;

    overflow-x:auto !important;
    overflow-y:hidden !important;

    padding:2px 2px 12px !important;

    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;

    scrollbar-width:none;
  }

  .agent-home .ah-hotel-grid::-webkit-scrollbar{
    display:none;
  }

  .agent-home .ah-hotel-card{
    flex:0 0 84% !important;
    width:84% !important;
    min-width:0 !important;

    scroll-snap-align:start;

    border-radius:18px !important;
  }

  .agent-home .ah-hotel-visual{
    min-height:112px !important;
    height:112px !important;
    padding:13px !important;
  }

  .agent-home .ah-hotel-place{
    padding:7px 9px !important;
    font-size:11px !important;
    border-radius:9px !important;
  }

  .agent-home .ah-hotel-body{
    padding:15px !important;
  }

  .agent-home .ah-hotel-stars{
    margin-bottom:5px !important;
    font-size:12px !important;
  }

  .agent-home .ah-hotel-name{
    margin-bottom:7px !important;
    font-size:18px !important;
    line-height:1.2 !important;
  }

  .agent-home .ah-hotel-format{
    margin-bottom:8px !important;
    font-size:12px !important;
  }

  .agent-home .ah-hotel-note{
    display:-webkit-box;
    overflow:hidden;

    margin-bottom:10px !important;

    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;

    font-size:13px !important;
    line-height:1.4 !important;
  }

  .agent-home .ah-hotel-points{
    gap:5px !important;
    margin-bottom:12px !important;
  }

  .agent-home .ah-hotel-point{
    padding:5px 7px !important;
    font-size:10px !important;
  }

  .agent-home .ah-hotel-card .ah-btn{
    min-height:42px !important;
    padding:9px 11px !important;
    font-size:12px !important;
    border-radius:12px !important;
  }

  .agent-home .ah-hotels-footnote{
    margin-top:8px !important;
  }

}


/* HOMEPAGE_MOBILE_SPACING_V5 */
@media(max-width:640px){

  /* Было 38px сверху и снизу у каждой секции */
  .agent-home .ah-section{
    padding:22px 0 !important;
  }

  /* Заголовок ближе к карточкам */
  .agent-home .ah-heading{
    margin-bottom:16px !important;
  }

  /* Небольшой отступ между меткой и заголовком */
  .agent-home .ah-eyebrow{
    margin-bottom:10px !important;
  }

}


/* HOMEPAGE_MOBILE_SPACING_V6 */
@media(max-width:640px){

  .agent-home .ah-section{
    padding:14px 0 !important;
  }

  .agent-home .ah-heading{
    margin-bottom:12px !important;
  }

  .agent-home .ah-eyebrow{
    margin-bottom:7px !important;
  }

}
