:root{--primary:#2a96a5;--accent:#e8a830;--fg:#1a1d2e;--muted:#66677a;--bg:#fafafa;--border:#e5e5e9;--card:#fff}
    .ct-wrap{max-width:1200px;margin:0 auto;padding:0 1.5rem}
    .ct-eyebrow{color:var(--primary);font-weight:600;font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase}
    .ct-h2{font-family:"Playfair Display",serif;font-weight:700;color:var(--fg);font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.2;margin:.4rem 0 .6rem}
    .ct-lead{color:var(--muted);line-height:1.75;font-size:1.0625rem}
    .ct-icon{width:1.25rem;height:1.25rem;flex:none}

    /* TOURS SEARCH */
    .ct-tours{background:linear-gradient(135deg,#1a1d2e 0%,#2a3350 100%);padding:2.5rem 1.5rem}
    .ct-tours__inner{max-width:1100px;margin:0 auto}
    .ct-tours__title{font-family:"Playfair Display",serif;color:#fff;font-size:clamp(1.4rem,3.5vw,2rem);margin-bottom:1.25rem;text-align:center}
    .ct-tours__results{margin-top:2rem}
    .ct-tours__note{color:#c7cad8;margin-bottom:1.25rem}
    .ct-tours__note--warn{color:#f0d9a7}
    .ct-tours__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}
    .ct-hcard{display:flex;flex-direction:column;background:#fff;border-radius:.9rem;overflow:hidden;text-decoration:none;color:#1a1d2e}
    .ct-hcard__img{position:relative;aspect-ratio:4/3;background:#eef0ef}
    .ct-hcard__img img{width:100%;height:100%;object-fit:cover}
    .ct-hcard__ph{display:flex;align-items:center;justify-content:center;height:100%;color:#a7a99f;font-size:.85rem}
    .ct-hcard__stars{position:absolute;top:.6rem;left:.6rem;background:rgba(0,0,0,.55);color:#ffd166;font-size:.78rem;padding:.15rem .45rem;border-radius:.35rem}
    .ct-hcard__body{padding:.9rem 1rem 1.1rem;display:flex;flex-direction:column;gap:.3rem;flex:1}
    .ct-hcard__town{color:#66677a;font-size:.8rem}
    .ct-hcard__name{font-weight:600;line-height:1.3}
    .ct-hcard__bottom{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;padding-top:.5rem}
    .ct-hcard__price small{color:#66677a;font-size:.72rem;display:block}
    .ct-hcard__price b{font-size:1.15rem}
    .ct-hcard__go{color:#2a96a5;font-weight:600;font-size:.82rem}

    /* HERO */
    .ct-hero{position:relative;min-height:85vh;display:flex;align-items:flex-end;overflow:hidden}
    .ct-hero__bg{position:absolute;inset:0;z-index:0}
    .ct-hero__bg img{width:100%;height:100%;object-fit:cover}
    .ct-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(26,29,46,.85)0%,rgba(26,29,46,.3)45%,rgba(26,29,46,.55)100%)}
    .ct-hero__inner{position:relative;z-index:1;width:100%;padding-bottom:4rem;padding-top:3.5rem}
    .ct-crumbs{display:flex;align-items:center;gap:.4rem;color:hsla(0,0%,100%,.8);font-size:.875rem;margin-bottom:1.5rem;flex-wrap:wrap}
    .ct-crumbs a{color:hsla(0,0%,100%,.8)}.ct-crumbs a:hover{color:#fff}
    .ct-hero__tag{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:9999px;background:rgba(232,168,48,.92);color:var(--fg);font-size:.875rem;font-weight:500;margin-bottom:1.25rem}
    .ct-hero__title{font-family:"Playfair Display",serif;font-size:clamp(2.5rem,7vw,4rem);font-weight:700;color:#fff;line-height:1.1;margin-bottom:1.25rem;max-width:46rem}
    .ct-hero__lead{font-size:1.125rem;color:hsla(0,0%,100%,.9);line-height:1.7;max-width:40rem;margin-bottom:2rem}
    .ct-hero__btns{display:flex;flex-wrap:wrap;gap:.75rem}
    .ct-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:3rem;max-width:56rem}
    @media(max-width:640px){.ct-facts{grid-template-columns:repeat(2,1fr)}}
    .ct-fact{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:1rem;background:hsla(0,0%,100%,.15);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2)}
    .ct-fact__ic{padding:.5rem;border-radius:.75rem;background:hsla(0,0%,100%,.2);color:#fff;display:flex}
    .ct-fact__l{font-size:.75rem;color:hsla(0,0%,100%,.7)}
    .ct-fact__v{font-size:.9375rem;font-weight:600;color:#fff}

    /* SECTION base */
    .ct-sec{padding:3.25rem 0}
    .ct-sec--alt{background:hsl(60,15%,94%)}
    .ct-head{text-align:center;max-width:42rem;margin:0 auto 1.75rem}
    .ct-head .ct-h2{margin-bottom:.75rem}
    .ct-head p{color:var(--muted)}

    /* OVERVIEW */
    .ct-sec--tight{padding-top:1.75rem}
    .ct-sec--tightb{padding-bottom:1.75rem}
    .ct-article-wrap{margin:3rem 0 0}
    .ct-article-wrap:first-child{margin-top:0}
    .ct-article{color:var(--fg);line-height:1.75;font-size:1.0625rem}
    .ct-article p{margin-bottom:1rem}
    .ct-article img{border-radius:.75rem;margin:0 0 1rem;max-width:100%;height:auto}
    .ct-article img[style*="float"]{max-width:45%}
    @media(max-width:640px){.ct-article img[style*="float"]{float:none!important;max-width:100%;margin:0 0 1rem}}
    .ct-article a{color:var(--primary);text-decoration:underline}
    .ct-article h1,.ct-article h2,.ct-article h3{font-family:"Playfair Display",serif;margin:1.5rem 0 .75rem;line-height:1.25}
    .ct-lead--center{max-width:46rem;margin:0 auto;text-align:center}
    .ct-highlights{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
    @media(max-width:900px){.ct-highlights{grid-template-columns:1fr 1fr}}
    @media(max-width:520px){.ct-highlights{grid-template-columns:1fr}}
    .ct-hl{border:1px solid var(--border);background:var(--card);border-radius:1rem;padding:1.15rem 1.25rem;transition:box-shadow .3s}
    .ct-hl:hover{box-shadow:0 8px 24px rgba(0,0,0,.1)}
    .ct-hl__ic{display:inline-flex;padding:.55rem;border-radius:.65rem;background:rgba(42,150,165,.1);color:var(--primary);margin-bottom:.7rem}
    .ct-hl h3{font-weight:600;color:var(--fg);margin-bottom:.5rem}
    .ct-hl p{font-size:.875rem;color:var(--muted);line-height:1.6}

    /* REGIONS / ATTRACTIONS cards */
    .ct-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
    @media(max-width:768px){.ct-grid3{grid-template-columns:1fr}}
    .ct-tile{position:relative;overflow:hidden;border-radius:1rem;box-shadow:0 8px 24px rgba(0,0,0,.12);cursor:pointer}
    .ct-tile__img{position:relative;aspect-ratio:16/11}
    .ct-tile--wide .ct-tile__img{aspect-ratio:auto;height:100%}
    .ct-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
    .ct-tile:hover img{transform:scale(1.08)}
    .ct-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(26,29,46,.9)0%,rgba(26,29,46,.2)55%,transparent 100%)}
    .ct-tile__body{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;padding:.9rem 1rem;color:#fff}
    .ct-tile__tagline{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:hsla(0,0%,100%,.8);margin-bottom:.25rem}
    .ct-tile__name{font-size:1rem;font-weight:600;line-height:1.3;margin-bottom:.4rem}
    .ct-tile__desc{font-size:.82rem;color:hsla(0,0%,100%,.85);line-height:1.5;margin-bottom:.6rem}
    .ct-tile__foot{display:flex;align-items:center;justify-content:space-between}
    .ct-tile__price small{font-size:.75rem;color:hsla(0,0%,100%,.7);display:block}
    .ct-tile__price b{font-size:1rem}
    .ct-tile__arrow{padding:.45rem;border-radius:9999px;background:hsla(0,0%,100%,.2);display:flex;transition:background .3s}
    .ct-tile:hover .ct-tile__arrow{background:var(--accent);color:var(--fg)}

    /* Attractions bento */
    .ct-bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:240px;gap:1rem}
    @media(max-width:1024px){.ct-bento{grid-template-columns:1fr}}
    .ct-bento .ct-tile--feat{grid-column:span 2;grid-row:span 2}
    @media(max-width:1024px){.ct-bento .ct-tile--feat{grid-column:span 1;grid-row:span 1}}
    .ct-bento .ct-tile__img{position:absolute;inset:0;aspect-ratio:auto;height:100%}

    /* INFO + FAQ */
    .ct-info{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
    @media(max-width:900px){.ct-info{grid-template-columns:1fr;gap:2.5rem}}
    .ct-ess{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}
    @media(max-width:520px){.ct-ess{grid-template-columns:1fr}}
    .ct-ess__i{display:flex;gap:1rem;border:1px solid var(--border);background:var(--card);border-radius:1rem;padding:1.25rem}
    .ct-ess__ic{display:inline-flex;padding:.6rem;border-radius:.75rem;background:rgba(42,150,165,.1);color:var(--primary);height:fit-content}
    .ct-ess__l{font-weight:600;font-size:.875rem;color:var(--fg);margin-bottom:.2rem}
    .ct-ess__v{font-size:.875rem;color:var(--muted);line-height:1.55}
    .ct-visa{margin-top:2rem;border:1px solid rgba(42,150,165,.3);background:rgba(42,150,165,.06);border-radius:1rem;padding:1.5rem}
    .ct-visa__head{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}
    .ct-visa__ic{display:inline-flex;padding:.6rem;border-radius:.75rem;background:var(--primary);color:#fff}
    .ct-visa__title{font-weight:700;color:var(--fg);font-size:1.05rem}
    .ct-visa__badge{display:inline-block;margin-top:.25rem;padding:.15rem .7rem;border-radius:9999px;background:var(--accent);color:var(--fg);font-size:.8125rem;font-weight:600}
    .ct-visa__detail{color:var(--fg);line-height:1.65;margin-bottom:.75rem}
    .ct-visa__note{font-size:.8125rem;color:var(--muted);line-height:1.5;margin-top:.75rem}
    .ct-visa__note a{color:var(--primary);text-decoration:underline}
    .ct-visa__facts{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0}
    @media(max-width:520px){.ct-visa__facts{grid-template-columns:1fr}}
    .ct-visa__fact{background:#fff;border:1px solid var(--border);border-radius:.75rem;padding:.75rem 1rem}
    .ct-visa__fact-l{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.2rem}
    .ct-visa__fact-v{font-weight:600;color:var(--fg);font-size:.9375rem;line-height:1.4}
    .ct-visa__docs{margin-top:.5rem}
    .ct-visa__docs ul{margin:.4rem 0 0;padding-left:1.1rem;list-style:disc}
    .ct-visa__docs li{font-size:.875rem;color:var(--fg);line-height:1.6}
    /* Курорты — компактные чипсы: занимают одну строку вместо сетки широких карточек */
    .ct-resorts{display:flex;flex-wrap:wrap;gap:.4rem}
    .ct-resort{display:inline-flex;align-items:center;padding:.32rem .7rem;border:1px solid var(--border);border-radius:9999px;background:var(--card);transition:border-color .2s ease,color .2s ease}
    .ct-resort:hover{border-color:var(--primary);color:var(--primary)}
    .ct-resort__name{font-weight:500;font-size:.83rem;color:inherit}
    /* стрелка в чипсе только визуальный шум — прячем */
    .ct-resort__arrow{display:none}
    .ct-faq{margin-top:2rem;display:flex;flex-direction:column;gap:.75rem}
    .ct-faq details{border:1px solid var(--border);background:var(--card);border-radius:1rem;overflow:hidden}
    .ct-faq summary{list-style:none;cursor:pointer;padding:1.15rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-weight:500;color:var(--fg)}
    .ct-faq summary::-webkit-details-marker{display:none}
    .ct-faq summary svg{transition:transform .3s}
    .ct-faq details[open] summary svg{transform:rotate(180deg)}
    .ct-faq p{padding:0 1.25rem 1.25rem;font-size:.9375rem;color:var(--muted);line-height:1.65}

    /* CTA */
    .ct-cta__box{position:relative;overflow:hidden;border-radius:1.5rem}
    .ct-cta__box img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .ct-cta__box::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(26,29,46,.88),rgba(26,29,46,.5))}
    .ct-cta__body{position:relative;z-index:1;padding:4rem 3rem;max-width:38rem}
    @media(max-width:640px){.ct-cta__body{padding:2.5rem 1.5rem}}
    .ct-cta__body h2{font-family:"Playfair Display",serif;font-size:clamp(1.75rem,4vw,3rem);font-weight:700;color:#fff;margin-bottom:1rem;line-height:1.15}
    .ct-cta__body p{font-size:1.0625rem;color:hsla(0,0%,100%,.9);line-height:1.7;margin-bottom:2rem}
    .ct-cta__btns{display:flex;flex-wrap:wrap;gap:.75rem}
    .btn--glass{background:hsla(0,0%,100%,.2);backdrop-filter:blur(8px);color:#fff;border:1px solid hsla(0,0%,100%,.3)}
    .btn--glass:hover{background:hsla(0,0%,100%,.3)}

    /* RELATED */
    .ct-related__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
    @media(max-width:768px){.ct-related__grid{grid-template-columns:1fr}}
    .ct-related__i{display:block;padding:1.25rem 1.5rem;border:1px solid var(--border);border-radius:1rem;background:var(--card);transition:all .3s}
    .ct-related__i:hover{border-color:rgba(42,150,165,.5);box-shadow:0 4px 12px rgba(0,0,0,.08)}
    .ct-related__i h3{font-weight:600;font-size:1rem;color:var(--fg);margin-bottom:.35rem}
    .ct-related__i p{font-size:.875rem;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

    /* Список статей (вместо карточек) */
    .ct-related__list{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 2.5rem;max-width:64rem}
    @media(max-width:768px){.ct-related__list{grid-template-columns:1fr}}
    .ct-related__list li{border-bottom:1px solid var(--border)}
    .ct-related__row{display:flex;align-items:center;gap:1rem;padding:1.1rem 0;transition:padding-left .2s}
    .ct-related__row:hover{padding-left:.35rem}
    .ct-related__row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}
    .ct-related__row-title{font-weight:600;font-size:.95rem;color:var(--fg);line-height:1.35}
    .ct-related__row-desc{font-size:.8125rem;color:var(--muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
    .ct-related__row-arrow{flex:none;width:2rem;height:2rem;border-radius:50%;background:rgba(42,150,165,.1);color:var(--primary);display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}
    .ct-related__row-arrow svg{width:.9rem;height:.9rem}
    .ct-related__row:hover .ct-related__row-arrow{background:var(--primary);color:#fff}

    .ct-related__more{margin-top:.5rem;max-width:64rem}
    .ct-related__more summary{cursor:pointer;list-style:none;color:var(--primary);font-weight:600;font-size:.9rem;padding:1rem 0;display:flex;align-items:center;gap:.4rem}
    .ct-related__more summary::-webkit-details-marker{display:none}
    .ct-related__more summary::after{content:"↓";transition:transform .2s}
    .ct-related__more[open] summary::after{transform:rotate(180deg)}
    .ct-related__more .ct-related__list{margin-top:0}
.ct-citylist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:0 .7rem}
  @media(max-width:900px){.ct-citylist{grid-template-columns:repeat(4,1fr)}}
  @media(max-width:768px){.ct-citylist{grid-template-columns:repeat(3,1fr)}}
  @media(max-width:480px){.ct-citylist{grid-template-columns:repeat(2,1fr)}}
  .ct-citylist a{display:block;padding:.14rem 0;color:var(--fg);text-decoration:none;font-size:.825rem;line-height:1.6;border-bottom:1px solid transparent}
  .ct-citylist a:hover{color:var(--primary)}
  /* Погода по месяцам */
  .ct-weather{overflow-x:auto}
  .ct-wtable{width:100%;border-collapse:collapse;min-width:640px}
  .ct-wtable th,.ct-wtable td{padding:.6rem .5rem;text-align:center;border-bottom:1px solid var(--border);font-size:.9rem}
  .ct-wtable th{color:var(--muted);font-weight:600;font-size:.8rem}
  .ct-wtable td:first-child,.ct-wtable th:first-child{text-align:left;font-weight:600;color:var(--fg)}
  .ct-wtable .day{color:#d9822b;font-weight:600}
  .ct-wtable .night{color:#2a96a5;font-weight:600}
  .ct-wtable tr.is-now{background:rgba(232,168,48,.1)}
  .ct-wnote{color:var(--muted);font-size:.85rem;margin-top:.9rem}

/* Утилиты вместо инлайн-стилей */
.ct-crumb-cur{color:#fff;font-weight:500}
.ct-hero__price{display:inline-flex;align-items:baseline;gap:.5rem;background:rgba(232,168,48,.95);color:#1a1d2e;padding:.5rem 1rem;border-radius:9999px;font-weight:600;margin-bottom:1rem}
.ct-hero__price b{font-size:1.2rem}
.ct-note--center{text-align:center;max-width:640px;margin:0 auto}
.ct-center-mt{text-align:center;margin-top:1.25rem}
.ct-sec--pt{padding-top:1.5rem}
.ct-sec--pb-tight{padding-bottom:1.5rem}
.ct-sec--ptpb{padding-top:1.5rem;padding-bottom:2rem}
.ct-h2--sm{font-family:"Inter",sans-serif;font-size:1.05rem;margin-bottom:.9rem}
.ct-h2--sm-mt{font-family:"Inter",sans-serif;font-size:1.05rem;margin:2rem 0 .9rem}
.ct-citylist--2{grid-template-columns:repeat(2,1fr)}
.ct-sub{color:var(--muted);font-size:.85rem;margin-bottom:.75rem}
.ct-count0{margin-bottom:0}

/* Ближайшие даты прямых вылетов (страница «страна + город вылета») */
.ct-flightdates{display:flex;flex-wrap:wrap;gap:.4rem}
.ct-flightdate{font-size:.82rem;padding:.3rem .7rem;border-radius:9999px;background:#e6f6ec;color:#1d6b3f;font-weight:600;white-space:nowrap;transition:background .18s ease}
.ct-flightdate:hover{background:#c9ecd8}
.ct-flightdate--more{background:transparent;color:#66677a;font-weight:400}

/* Предупреждение о перелёте со стыковкой */
.ct-transfer-note{background:#fff8e6;border:1px solid #f1e2b8;border-radius:.85rem;padding:.85rem 1rem;font-size:.9rem;color:#6b5518;line-height:1.55}

/* Карточка региона без фото — не пустой тёмный прямоугольник, а плотный блок */
.ct-tile--noimg{background:linear-gradient(150deg,#1f2338,#2a3350);min-height:auto}
.ct-tile--noimg::after{display:none}
.ct-tile--noimg .ct-tile__body{position:static;padding:1.15rem 1.25rem}
.ct-tile__link{font-size:.85rem;font-weight:600;color:#fff}
