/* ============================================================================
   POMPEIITRIPS.COM — DESIGN SYSTEM v5  «EDITORIAL MODERN»
   ----------------------------------------------------------------------------
   Обраний напрям. Античність — тільки як інскрипційні маркери розділів
   (римська цифра + латинське слово) і фрескові кольори. Уся сучасність —
   ПЛАСКА: жорсткі offset-тіні (без градієнтів і об'єму), кольорові дрібні
   елементи, чипси, прогрес-смужки, кольорові маркери +/−, темні смуги вердикту.

   ПАЛІТРА — РОЛІ:
   fresco red #A23020 — ТІЛЬКИ booking/money CTA (hover #872718)
   ochre #B98624 / gold #D9A441 — рейтинги, бейджі, увага; highlight #F0DEA6
   verdigris #3E7A6B — навігація й лінки
   green #1E7A4B / red #C22E1B — маркери «+» і «−» (тільки кружечки)
   ink #211C15 · grey #6E6558 · hairline #E5DDCE · dotted #C9BFAB
   plaster #FAF8F3 · card #FFFDF8 · band #F3EFE6 · ochre band #F5ECD6 · dark #221D16

   ФІРМОВІ ЕЛЕМЕНТИ:
   1. .pt-shead — подвійна лінія 3px double + маркер «V · COMPARATIO»
   2. .pt-btn — пласка кнопка з жорсткою тінню-зсувом; hover зсуває пластину
   3. .pt-index — нумерований індекс відправлень у hero
   4. .pt-stamp2 — повернутий штамп VERDICT
   5. .pt-ourcall — темна смуга вердикту в підвалі картки (full-bleed)
   6. .pt-rank — номер рейтингу в куті фото картки
   МОБІЛЬНЕ: таблиця порівняння перетворюється на стек карток (<table>
   лишається семантичним), чипси скролять горизонтально, CTA на всю ширину.
   ========================================================================= */

/* ---------- fonts ---------- */
@font-face{font-family:'Newsreader';src:url('/assets/fonts/newsreader-latin-opsz-normal.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'Newsreader';src:url('/assets/fonts/newsreader-latin-opsz-italic.woff2') format('woff2');font-weight:200 800;font-style:italic;font-display:swap}
@font-face{font-family:'Archivo';src:url('/assets/fonts/archivo-latin-wght-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Archivo';src:url('/assets/fonts/archivo-latin-wght-italic.woff2') format('woff2');font-weight:100 900;font-style:italic;font-display:swap}

/* ---------- tokens ---------- */
:root{
  --pt-ink:#211C15;--pt-ink2:#55503F;--pt-grey:#6E6558;--pt-faint:#B9B0A0;
  --pt-line:#E5DDCE;--pt-dot:#C9BFAB;
  --pt-paper:#FAF8F3;--pt-card:#FFFDF8;--pt-band:#F3EFE6;--pt-dark:#221D16;
  --pt-red:#A23020;--pt-red-deep:#872718;--pt-red-tint:#F7E9E4;
  --pt-ochre:#B98624;--pt-gold:#D9A441;--pt-hl:#F0DEA6;--pt-ochre-band:#F5ECD6;--pt-ochre-deep:#8A6410;
  --pt-verd:#3E7A6B;--pt-verd-deep:#2C5B4F;--pt-verd-tint:#E7F0EC;
  --pt-plus:#1E7A4B;--pt-minus:#C22E1B;
  --pt-lapis:#2F5680;--pt-lapis-tint:#E9EEF4;--pt-lapis-deep:#22405F;
  --pt-hair2:#DCD3C2;--pt-mint:#7FC9A4;
  /* ЦІНОВІ СМУГИ — послідовна шкала ОДНОГО тону (єгипетський синій із фресок).
     Ціна не буває «доброю» чи «поганою»: колір показує лише рівень витрат,
     від світлішого до глибшого. Жодного червоного — червоний тут означає
     тільки CTA і справжні попередження. */
  --pt-t1:#20707F;--pt-t1-bg:rgba(32,112,127,.14);   /* < $30   бірюза  */
  --pt-t2:#2F5680;--pt-t2-bg:rgba(47,86,128,.15);    /* $30–59  лазур   */
  --pt-t3:#3F4788;--pt-t3-bg:rgba(63,71,136,.14);    /* $60–99  індиго  */
  --pt-t4:#67366F;--pt-t4-bg:rgba(103,54,111,.14);   /* $100+   тірський пурпур */
  --tc:var(--pt-t2);--tcb:var(--pt-t2-bg);
  /* РЕЙТИНГ — власна зелена родина (terra verde). Усе від 4.0 це «добре»,
     різниця лише у глибині тону: відтінки хорошого, а не «увага».
     Помаранчевої/червоної зони тут не існує взагалі. */
  --pt-r1:#15774B;   /* ≥ 4.5      зелений */
  --pt-r2:#8C7A18;   /* 4.0–4.49   перехід зелений → оранжевий (олива-золото) */
  --pt-r3:#C2711A;   /* < 4.0      оранжевий */
  /* ТРИВАЛІСТЬ — нейтральний тон, довжину несе заповнення треку, не колір */
  --pt-len:#55503F;
  --pt-ease:cubic-bezier(.2,.7,.2,1);
  --pt-wrap:1240px;
  --pt-disp:'Newsreader',Georgia,serif;
  --pt-ui:'Archivo',system-ui,Segoe UI,Arial,sans-serif;
  --pt-insc:'Newsreader',Georgia,serif;
  --pt-sticky-h:0px;
  --pt-pad:48px;
}
@media(max-width:900px){:root{--pt-pad:20px}}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pt *{animation:none!important;transition-duration:0s!important}}
body.pt{margin:0;overflow-x:clip;background:var(--pt-paper);color:var(--pt-ink);font:400 17px/1.65 var(--pt-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.pt img{max-width:100%;display:block}
.pt a{color:var(--pt-verd);text-decoration:none}
.pt a:hover{color:var(--pt-verd-deep);text-decoration:underline;text-underline-offset:3px}
.pt :focus-visible{outline:2px solid var(--pt-verd);outline-offset:2px}
.pt-wrap{max-width:var(--pt-wrap);margin:0 auto;padding:0 var(--pt-pad)}
.pt [id]{scroll-margin-top:76px}
.pt-skip{position:absolute;left:-9999px;top:0;background:var(--pt-ink);color:#fff;padding:10px 16px;z-index:200}
.pt-skip:focus{left:0}

/* ---------- typography ---------- */
.pt h1,.pt h2,.pt h3{font-family:var(--pt-disp);font-weight:500;margin:0 0 .4em;color:var(--pt-ink)}
.pt h1{font-size:clamp(34px,5vw,62px);line-height:1.06;text-wrap:balance}
.pt h2{font-size:clamp(25px,3.2vw,38px);line-height:1.12}
.pt h3{font-size:clamp(18px,1.7vw,21px);line-height:1.28}
.pt .pt-it{font-style:italic}
.pt-lede{font-size:clamp(15.5px,1.35vw,17px);line-height:1.65;color:var(--pt-grey);max-width:60ch}
.pt-label{font-family:var(--pt-insc);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-grey)}
.pt-num{font-family:var(--pt-disp);font-weight:500;font-variant-numeric:lining-nums tabular-nums}
.pt p{margin:.4em 0 1em}
.pt .pt-muted{color:var(--pt-grey)}
.pt .pt-small{font-size:13.5px;line-height:1.55}
.pt strong{font-weight:600}
.pt-mark{background:linear-gradient(transparent 55%,var(--pt-hl) 55%);padding:0 2px;font-weight:600;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.pt-sec--dark .pt-mark{background:linear-gradient(transparent 55%,rgba(217,164,65,.42) 55%);color:#fff}

/* ---------- section head: double rule + inscription marker ---------- */
.pt-shead{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;border-bottom:3px double var(--pt-ink);padding-bottom:12px;margin:0 0 22px}
.pt-shead__mark{font-family:var(--pt-insc);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-red);white-space:nowrap}
.pt-shead h2{margin:0;flex:1 1 320px;min-width:0}
.pt-shead__meta{margin:0;font-size:13px;color:var(--pt-grey);white-space:nowrap}
.pt-sec--dark .pt-shead{border-bottom-color:#EDE7DB}
.pt-sec--dark .pt-shead__mark{color:var(--pt-gold)}
.pt-sec--dark .pt-shead__meta{color:var(--pt-faint)}
@media(max-width:640px){
  .pt-shead{gap:8px;padding-bottom:10px;margin-bottom:18px}
  .pt-shead__mark{flex:1 1 100%;font-size:11px}
  .pt-shead__meta{flex:1 1 100%;white-space:normal}
}

/* ---------- sections ---------- */
.pt-sec{padding:clamp(44px,5.5vw,72px) 0}
.pt-sec--band{background:var(--pt-band)}
.pt-sec--card{background:var(--pt-card)}
.pt-sec--dark{background:var(--pt-dark);color:#EDE7DB}
.pt-sec--dark h2,.pt-sec--dark h3{color:#FAF8F3}
.pt-sec--dark .pt-muted{color:var(--pt-faint)}
.pt-sec--dark a{color:#EDE7DB}
.pt-sec--tight{padding-top:0}

/* ---------- BUTTONS: пласкі, з жорсткою тінню-зсувом ---------- */
.pt-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 14.5px/1.1 var(--pt-ui);letter-spacing:.02em;padding:14px 22px;border:1px solid transparent;cursor:pointer;text-decoration:none;min-height:48px;transition:transform .15s var(--pt-ease),box-shadow .15s var(--pt-ease),background .15s,color .15s}
.pt a.pt-btn{text-decoration:none}
.pt-btn--book{background:var(--pt-red);color:var(--pt-paper);box-shadow:4px 4px 0 var(--pt-ink)}
.pt a.pt-btn--book,.pt a.pt-btn--book:hover{color:var(--pt-paper);text-decoration:none}
.pt-btn--book:hover{background:var(--pt-red-deep);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--pt-ink)}
.pt-btn--book:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--pt-ink)}
.pt-btn--dark{background:var(--pt-ink);color:var(--pt-paper);box-shadow:4px 4px 0 var(--pt-red)}
.pt a.pt-btn--dark,.pt a.pt-btn--dark:hover{color:var(--pt-paper);text-decoration:none}
.pt-btn--dark:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--pt-red)}
.pt-btn--dark:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--pt-red)}
.pt-btn--ghost{background:transparent;color:var(--pt-ink);border-color:var(--pt-ink)}
.pt a.pt-btn--ghost{color:var(--pt-ink)}
.pt-btn--ghost:hover{background:var(--pt-ink);color:var(--pt-paper)}
.pt a.pt-btn--ghost:hover{color:var(--pt-paper);text-decoration:none}
.pt-btn--ghost-light{background:transparent;color:#FAF8F3;border-color:rgba(250,248,243,.45)}
.pt a.pt-btn--ghost-light,.pt a.pt-btn--ghost-light:hover{color:#FAF8F3;text-decoration:none}
.pt-btn--ghost-light:hover{border-color:#FAF8F3;background:rgba(250,248,243,.1)}
.pt-btn--verd{background:var(--pt-verd);color:var(--pt-paper);box-shadow:4px 4px 0 var(--pt-ink)}
.pt a.pt-btn--verd,.pt a.pt-btn--verd:hover{color:var(--pt-paper);text-decoration:none}
.pt-btn--verd:hover{background:var(--pt-verd-deep);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--pt-ink)}
/* на темному тлі: читається як кнопка, а не як текстовий лінк */
.pt-btn--gold{background:transparent;color:var(--pt-gold);border-color:var(--pt-gold);box-shadow:3px 3px 0 rgba(217,164,65,.34)}
.pt a.pt-btn--gold{color:var(--pt-gold);text-decoration:none}
.pt-btn--gold:hover{background:var(--pt-gold);color:var(--pt-ink);transform:translate(-2px,-2px);box-shadow:5px 5px 0 rgba(217,164,65,.44)}
.pt a.pt-btn--gold:hover{color:var(--pt-ink);text-decoration:none}
.pt-btn--gold:active{transform:translate(1px,1px);box-shadow:2px 2px 0 rgba(217,164,65,.44)}
.pt-btn--sm{padding:10px 15px;font-size:12.5px;min-height:42px;box-shadow:3px 3px 0 var(--pt-ink)}
.pt-btn--sm:hover{box-shadow:4px 4px 0 var(--pt-ink)}
.pt-btn--gold.pt-btn--sm{box-shadow:3px 3px 0 rgba(217,164,65,.34)}
.pt-btn--gold.pt-btn--sm:hover{box-shadow:5px 5px 0 rgba(217,164,65,.44)}
.pt-btn--full{width:100%}
.pt-btn__price{font-family:var(--pt-disp);font-size:17px;font-weight:500;border-left:1px solid rgba(250,248,243,.42);padding-left:14px}

/* ---------- ЦІНОВІ РІВНІ: один атрибут перефарбовує всю групу ---------- */
[data-tier="1"]{--tc:var(--pt-t1);--tcb:var(--pt-t1-bg)}
[data-tier="2"]{--tc:var(--pt-t2);--tcb:var(--pt-t2-bg)}
[data-tier="3"]{--tc:var(--pt-t3);--tcb:var(--pt-t3-bg)}
[data-tier="4"]{--tc:var(--pt-t4);--tcb:var(--pt-t4-bg)}

/* ---------- chips / badges / ratings ---------- */
.pt-chip{display:inline-flex;align-items:center;gap:6px;font:600 12.5px/1 var(--pt-ui);padding:7px 10px;border:1px solid var(--pt-line);background:var(--pt-card);color:var(--pt-ink);white-space:nowrap}
/* ціна = чип рівня: колір + підкладка + кант зліва */
/* Ціна: чотири РІЗНІ тони, не сходинки одного (бірюза → лазур → індиго → пурпур).
   Це шкала витрат, а не оцінка: жодного «доброго» чи «поганого» кольору.
   Тірський пурпур на найдорожчому — римський колір розкоші, не попередження. */
.pt-price{display:inline-block;font-family:var(--pt-disp);font-size:19px;font-weight:600;line-height:1.25;padding:2px 10px;color:var(--tc);background:var(--tcb);border-left:3px solid var(--tc);white-space:nowrap;font-variant-numeric:lining-nums tabular-nums}
.pt-price--lg{font-size:26px;padding:2px 12px;border-left:0}
.pt-price--td{min-width:64px;text-align:center;font-size:17px;padding:3px 10px}
.pt-price--plain{font-size:17px;padding:2px 0;background:none;border-left:0}
.pt-chip--weak{background:var(--pt-card);border-color:var(--pt-dot);color:var(--pt-grey)}
/* бейдж = повернутий контурний штамп, а не заливка */
.pt-badge{position:absolute;z-index:3;top:14px;right:-6px;transform:rotate(4deg);font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;padding:5px 9px;white-space:nowrap;color:var(--bc);border:1.5px solid var(--bc);background:var(--bcb)}
[data-badge="top"]{--bc:#A6301E;--bcb:#FBE6E0}
[data-badge="rated"]{--bc:#0F7A57;--bcb:#E1F2EA}
[data-badge="value"]{--bc:#2C7F6E;--bcb:#E0F1ED}
[data-badge="full"]{--bc:#9A6E06;--bcb:#FAEDCF}
.pt-tier{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;padding:3px 7px;color:var(--tc);background:var(--tcb)}

/* Рейтинг: без підкладки — тільки цифра, зірки й колір смуги.
   П'ять зірок із точним частковим заповненням (--rp = оцінка / 5). */
.pt-stars{display:inline-flex;align-items:center;gap:7px;font:600 14px/1.35 var(--pt-ui);white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--rc,var(--pt-grey))}
[data-rate="hi"]{--rc:var(--pt-r1)}
[data-rate="mid"]{--rc:var(--pt-r2)}
[data-rate="low"]{--rc:var(--pt-r3)}
.pt-stars i{position:relative;display:inline-block;flex:none;font-style:normal;font-size:14px;line-height:1;letter-spacing:1.5px;color:var(--pt-line)}
.pt-stars i::before{content:"★★★★★"}
.pt-stars i::after{content:"★★★★★";position:absolute;left:0;top:0;width:var(--rp,90%);overflow:hidden;color:var(--rc)}
.pt-stars small{color:var(--pt-grey);font-weight:500;font-size:12px}
.pt-stars:not([data-rate]){color:var(--pt-grey);font-weight:500}
.pt-stars:not([data-rate]) i{display:none}

/* тривалість — короткий трек, заповнення = довжина дня */
.pt-dur{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-weight:600;color:var(--pt-ink)}
.pt-dur i{display:inline-block;width:26px;height:4px;background:var(--pt-line);position:relative;flex:none}
.pt-dur i::before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--lw,50%);background:var(--lc,var(--pt-len))}
[data-len="short"]{--lw:34%}
[data-len="half"]{--lw:67%}
[data-len="full"]{--lw:100%}
[data-len="free"]{--lc:var(--pt-dot);--lw:100%}
.pt-verified{display:inline-flex;align-items:center;gap:6px;font:600 12px var(--pt-ui);color:var(--pt-lapis-deep);background:var(--pt-lapis-tint);border:1px solid rgba(47,86,128,.25);padding:5px 9px}
.pt-verified::before{content:"✓";font-weight:800}

/* ---------- nav ---------- */
.pt-nav{position:sticky;top:0;z-index:60;background:rgba(250,248,243,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--pt-line)}
.pt-nav__in{max-width:var(--pt-wrap);margin:0 auto;padding:0 var(--pt-pad);display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px}
.pt-logo{display:inline-flex;align-items:center;gap:9px;font-family:var(--pt-disp);font-size:15px;letter-spacing:.24em;color:var(--pt-ink);font-weight:600;text-decoration:none;white-space:nowrap}
.pt-logo__m{width:20px;height:auto;flex:none;color:var(--pt-ink);display:block;margin-top:-1px}
.pt-drawer .pt-logo__m,.pt-sec--dark .pt-logo__m,.pt-footer .pt-logo__m{color:#FAF8F3}
.pt a.pt-logo:hover{color:var(--pt-ink);text-decoration:none}
.pt-logo b{color:var(--pt-red);font-weight:600}
.pt-nav__links{display:flex;gap:26px;font-size:14px;font-weight:500;margin-left:auto}
.pt-nav__links a{color:var(--pt-verd)}
.pt-nav__cta{display:flex;align-items:center;gap:12px}
.pt-nav .pt-btn--book{padding:10px 16px;font-size:13px;min-height:42px;box-shadow:3px 3px 0 var(--pt-ink)}
.pt-nav .pt-btn--book:hover{box-shadow:5px 5px 0 var(--pt-ink)}
.pt-burger{display:none;flex-direction:column;align-items:center;justify-content:center;background:none;border:1px solid var(--pt-line);width:46px;height:46px;cursor:pointer;padding:0}
.pt-burger span{display:block;width:20px;height:1.5px;background:var(--pt-ink);margin:2.5px 0;transition:.22s var(--pt-ease)}
@media(max-width:900px){
  .pt-nav__links{display:none}
  .pt-nav .pt-btn--book{display:none}
  .pt-burger{display:flex}
}
/* full-screen drawer */
.pt-drawer{position:fixed;inset:0;z-index:120;background:var(--pt-paper);display:none;flex-direction:column;padding:20px var(--pt-pad) 28px;overflow:auto;overscroll-behavior:contain}
.pt-drawer.is-open{display:flex}
.pt-drawer__top{display:flex;justify-content:space-between;align-items:center}
.pt-drawer__close{background:none;border:1px solid var(--pt-line);width:46px;height:46px;cursor:pointer;font-size:20px;line-height:1;color:var(--pt-ink)}
.pt-drawer nav{display:flex;flex-direction:column;margin-top:26px}
.pt-drawer nav a{font-family:var(--pt-disp);font-size:27px;padding:13px 0;border-bottom:1px solid var(--pt-line);color:var(--pt-ink);display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pt .pt-drawer nav a:hover{color:var(--pt-red);text-decoration:none}
.pt-drawer nav a span{font-family:var(--pt-ui);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--pt-grey)}
.pt-drawer__foot{margin-top:auto;padding-top:26px}
body.pt-locked{overflow:hidden}

/* ---------- hero ---------- */
.pt-hero{padding:clamp(26px,3.6vw,42px) 0 clamp(38px,4.4vw,60px)}
.pt-hero__in{max-width:var(--pt-wrap);margin:0 auto;padding:0 var(--pt-pad);display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(26px,4vw,56px);align-items:stretch}
.pt-hero__fig{position:relative;margin:0;overflow:hidden;min-height:300px;background:var(--pt-band)}
.pt-hero__fig img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.pt-hero__cap{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(to top,rgba(23,19,14,.92),rgba(23,19,14,.55) 60%,transparent);padding:46px 20px 16px;color:#FAF8F3}
.pt-hero__cap b{display:block;font-family:var(--pt-insc);font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-gold);margin-bottom:6px;font-weight:500}
.pt-hero__cap span{display:block;font-family:var(--pt-disp);font-size:15px;line-height:1.45;max-width:46ch}
@media(max-width:900px){
  .pt-hero__in{grid-template-columns:1fr;gap:24px}
  .pt-hero__fig{order:-1;min-height:0}
  .pt-hero__fig img{aspect-ratio:16/10}
}

/* ---------- hero index ---------- */
.pt-index{border-top:1px solid var(--pt-ink)}
.pt-index__row{display:flex;align-items:center;gap:12px;width:100%;padding:13px 10px;min-height:52px;background:none;border:0;border-bottom:1px solid var(--pt-line);border-left:4px solid transparent;cursor:pointer;color:var(--pt-ink);font-family:var(--pt-ui);text-align:left;transition:background .18s var(--pt-ease),border-color .18s,padding-left .18s}
.pt-index__row:hover{background:var(--pt-band)}
.pt-index__row i{font-style:normal;font-family:var(--pt-disp);font-size:14px;color:var(--pt-grey);width:30px;flex:none}
.pt-index__row b{font-weight:600;font-size:15px;flex:1;min-width:0}
.pt-index__row span{font-size:13px;color:var(--pt-grey);white-space:nowrap}
.pt-index__row em{font-style:normal;font-family:var(--pt-disp);font-size:15px;color:var(--pt-grey);white-space:nowrap;min-width:72px;text-align:right}
.pt-index__row.is-on{background:var(--pt-band);border-left-color:var(--pt-red);padding-left:14px}
.pt-index__row.is-on i,.pt-index__row.is-on em{color:var(--pt-red)}
.pt-index__row.is-on em{font-weight:600}
@media(max-width:560px){.pt-index__row span{display:none}.pt-index__row{padding:12px 8px;min-height:56px}}

/* ---------- figures strip ---------- */
.pt-figs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:3px double var(--pt-ink);border-bottom:1px solid var(--pt-line)}
.pt-figs div{padding:18px 8px;text-align:center;border-left:1px solid var(--pt-line)}
.pt-figs div:first-child{border-left:0}
.pt-figs b{display:block;font-family:var(--pt-disp);font-weight:500;font-size:clamp(19px,2.2vw,28px);line-height:1}
.pt-figs small{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--pt-grey);margin-top:5px}
@media(max-width:860px){
  .pt-figs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pt-figs div:nth-child(3n+1){border-left:0}
  .pt-figs div:nth-child(n+4){border-top:1px solid var(--pt-line)}
}

/* ---------- glance: 3 колонки з великою цифрою й крапковими лідерами ---------- */
.pt-glance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 44px;margin:0}
.pt-glance>div{border-top:2px solid var(--pt-ink);padding:16px 0 26px}
.pt-glance dt{font-family:var(--pt-insc);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-grey)}
.pt-glance dd{margin:10px 0 0}
.pt-glance__big{display:flex;align-items:baseline;gap:10px}
.pt-glance__big b{font-family:var(--pt-disp);font-size:34px;font-weight:500;line-height:1}
.pt-glance__big span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--pt-grey)}
.pt-glance__rows{display:flex;flex-direction:column;gap:7px;margin-top:14px}
.pt-glance__row{display:flex;align-items:baseline;font-size:13.5px}
.pt-glance__row span:first-child{color:var(--pt-ink2)}
.pt-glance__row i{flex:1;border-bottom:1px dotted var(--pt-dot);margin:0 8px;min-width:16px}
.pt-glance__row b{font-family:var(--pt-disp);font-size:15px;font-weight:600;white-space:nowrap}
.pt-glance__note{margin:12px 0 0;font-family:var(--pt-disp);font-style:italic;font-size:13px;color:var(--pt-grey)}
@media(max-width:900px){.pt-glance{grid-template-columns:1fr;gap:0}.pt-glance>div{padding:14px 0 20px}}

/* ---------- hub cards ---------- */
.pt-hubs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-left:1px solid var(--pt-line)}
.pt-hubs a{display:flex;flex-direction:column;padding:18px 18px 16px;border-right:1px solid var(--pt-line);border-bottom:1px solid var(--pt-line);border-top:3px solid var(--tc);color:var(--pt-ink);text-decoration:none;background:var(--pt-paper);transition:transform .18s var(--pt-ease),box-shadow .18s var(--pt-ease),background .18s}
.pt .pt-hubs a:hover{background:var(--pt-card);color:var(--pt-ink);text-decoration:none;transform:translateY(-4px);box-shadow:0 12px 26px rgba(33,28,21,.1)}
.pt-hubs__top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pt-hubs__top i{font-style:normal;font-family:var(--pt-disp);font-size:13px;color:var(--pt-grey)}
.pt-hubs b{display:block;font-weight:600;font-size:15.5px;margin:12px 0 6px;line-height:1.3}
.pt-hubs .pt-price{align-self:flex-start}
/* суцільна смужка рівня цін, як у концепті */
.pt-hubs__bar{display:block;margin-top:6px;height:4px;background:#EDE7D8;position:relative}
.pt-hubs__bar i{position:absolute;left:0;top:0;bottom:0;background:var(--tc);transition:width .3s var(--pt-ease)}
.pt-hubs a[data-tier="1"] .pt-hubs__bar i{width:25%}
.pt-hubs a[data-tier="2"] .pt-hubs__bar i{width:50%}
.pt-hubs a[data-tier="3"] .pt-hubs__bar i{width:75%}
.pt-hubs a[data-tier="4"] .pt-hubs__bar i{width:100%}
.pt-hubs__go{display:flex;align-items:center;gap:6px;margin-top:14px;font-size:13px;font-weight:600;color:var(--pt-verd)}
@media(max-width:900px){.pt-hubs{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* компактні плитки замість довгої колонки — 8 напрямків мають лишатись оглядовими */
@media(max-width:560px){
  .pt-hubs a{padding:12px 12px 14px}
  .pt-hubs__top i{font-size:12px}
  .pt-tier{font-size:9.5px;letter-spacing:.1em;padding:3px 5px}
  .pt-hubs b{font-size:13.5px;margin:9px 0 4px;line-height:1.25}
  .pt-hubs .pt-price{font-size:15px}
  .pt-hubs__go{display:none}
}
@media(max-width:340px){.pt-hubs{grid-template-columns:1fr}}

/* ---------- verdict cards ---------- */
.pt-verdict{position:relative;background:var(--pt-paper);border:1px solid var(--pt-line);padding:26px 24px 0;display:flex;flex-direction:column;min-width:0}
.pt-verdict--pick{border-color:var(--pt-red)}
.pt-stamp2{position:absolute;top:18px;right:-8px;transform:rotate(6deg);font-family:var(--pt-insc);font-size:11px;letter-spacing:.26em;color:var(--pt-red);border:1.5px solid var(--pt-red);padding:4px 8px;background:var(--pt-paper);text-transform:uppercase}
.pt-verdict h3{margin:0;padding-right:86px}
.pt-verdict__price{margin:8px 0 18px}
.pt-prosc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pt-prosc li{display:flex;gap:12px;font-size:14px;line-height:1.5;padding:5px 0}
.pt-prosc li::before{width:20px;height:20px;border-radius:50%;color:var(--pt-paper);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;flex:none;margin-top:1px}
.pt-prosc li.y::before{content:"+";background:var(--pt-plus)}
.pt-prosc li.n::before{content:"−";background:var(--pt-minus)}
.pt-ourcall{margin:20px -24px 0;padding:15px 24px 17px;background:var(--pt-ink);color:#EDE7DB;font-size:14px;line-height:1.55}
.pt-ourcall b{font-family:var(--pt-insc);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--pt-gold);font-weight:500}
.pt-verdict .pt-btn{margin:18px 0 24px}

/* ---------- filter chips ---------- */
.pt-tabs{display:flex;gap:8px;overflow-x:auto;contain:paint;-webkit-overflow-scrolling:touch;padding-bottom:8px;margin:0 0 4px;scrollbar-width:thin}
.pt-tab{display:flex;align-items:center;white-space:nowrap;border:1px solid var(--pt-hair2);background:transparent;color:var(--pt-ink);font:500 14px var(--pt-ui);padding:10px 16px;min-height:44px;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.pt-tab:hover{border-color:var(--pt-ink)}
.pt-tab.is-on{background:var(--pt-ink);color:var(--pt-paper);border-color:var(--pt-ink)}
.pt-tab b{font-weight:600}
.pt-tab span{font-family:var(--pt-disp);font-size:12.5px;opacity:.75;margin-left:8px}
a.pt-tab{text-decoration:none}
a.pt-tab:hover{background:var(--pt-card)}

/* ---------- панель фільтрів: 4 групи, логіка І ---------- */
.pt-filters{border-top:2px solid var(--pt-ink);border-bottom:1px solid var(--pt-line);margin:0 0 4px}
.pt-fgroup{display:flex;align-items:center;gap:16px;padding:9px 0;border-bottom:1px dotted var(--pt-dot);min-width:0}
.pt-fgroup:last-of-type{border-bottom:0}
.pt-fgroup__l{flex:none;width:74px;font-family:var(--pt-insc);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-grey)}
.pt-fchips{display:flex;gap:7px;overflow-x:auto;contain:paint;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:1px 0;min-width:0}
.pt-fchips .pt-tab{padding:7px 13px;min-height:38px;font-size:13.5px}
.pt-fstatus{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0;padding:10px 0;border-top:1px solid var(--pt-line);font-size:13px;color:var(--pt-grey)}
.pt-fstatus output{font-family:var(--pt-disp);font-size:14.5px;color:var(--pt-ink)}
.pt-fstatus output b{color:var(--pt-red);font-weight:600}
.pt-freset{background:none;border:1px solid var(--pt-dot);color:var(--pt-ink);font:600 12px var(--pt-ui);letter-spacing:.06em;padding:8px 13px;min-height:38px;cursor:pointer}
.pt-freset:hover{border-color:var(--pt-ink);background:var(--pt-ink);color:var(--pt-paper)}
.pt-noresult{display:none;padding:26px 0;font-family:var(--pt-disp);font-size:17px;color:var(--pt-grey)}
.pt-noresult.is-on{display:block}
.pt-pergroup{display:block;margin-top:3px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--pt-grey);font-weight:600}
.pt-price .pt-pergroup{font-family:var(--pt-ui);color:inherit;opacity:.72;margin-top:1px}
@media(max-width:760px){
  .pt-fgroup{display:block;padding:8px 0}
  .pt-fgroup__l{display:block;width:auto;margin-bottom:6px}
  .pt-fchips{margin:0 calc(var(--pt-pad) * -1);padding:1px var(--pt-pad)}
}

/* ---------- comparison table ---------- */
.pt-tablewrap{max-width:100%;overflow-x:auto;contain:paint;-webkit-overflow-scrolling:touch;margin-top:12px}
.pt-table{width:100%;min-width:920px;border-collapse:collapse;font-size:14px}
.pt-table thead tr{border-bottom:2px solid var(--pt-ink)}
.pt-table th{font-family:var(--pt-insc);font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-align:left;color:var(--pt-ink);padding:12px 12px;white-space:nowrap}
.pt-table th:first-child{padding-left:0;position:sticky;left:0;background:var(--pt-paper);z-index:1}
.pt-table th.pt-sort{cursor:pointer;user-select:none}
.pt-table th.pt-sort:hover{color:var(--pt-red)}
.pt-table th.pt-sort::after{content:"↕";margin-left:7px;opacity:.4;font-family:var(--pt-ui)}
.pt-table th.pt-sort.asc::after{content:"↑";opacity:1;color:var(--pt-red)}
.pt-table th.pt-sort.desc::after{content:"↓";opacity:1;color:var(--pt-red)}
.pt-table td{padding:14px 12px;border-bottom:1px solid var(--pt-line);vertical-align:top}
.pt-table td:first-child{padding-left:0;position:sticky;left:0;background:var(--pt-paper);max-width:330px}
.pt-table tbody tr:hover td{background:var(--pt-band)}
.pt-table tbody tr:hover td:first-child{background:var(--pt-band)}
.pt-table__name{font-weight:600;color:var(--pt-ink);border-bottom:1px solid var(--pt-dot)}
.pt .pt-table__name:hover{color:var(--pt-red);border-bottom-color:var(--pt-red);text-decoration:none}
.pt-table__note{display:block;font-family:var(--pt-disp);font-style:italic;color:var(--pt-grey);font-size:13px;margin-top:2px}
/* посилання на власний огляд — у таблиці й у картці каталогу */
/* орієнтир у євро поруч із доларом — тихіший за ціну, не конкурує з нею */
/* 404: сітка розділів — те саме, що в підвалі, але більшим кроком */
.pt-404{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2px 26px;margin:26px 0 0}
.pt-404 a{display:block;padding:13px 0;border-bottom:1px solid var(--pt-line);font-family:var(--pt-disp);font-size:19px;color:var(--pt-ink);text-decoration:none}
.pt-404 a:hover{color:var(--pt-red);text-decoration:none}
.pt-404 a::after{content:'\00a0→';color:var(--pt-faint)}
/* поточна сторінка в меню — тонка риска під пунктом, без зміни ваги шрифту,
   щоб рядок не «стрибав» при переході між сторінками */
.pt-nav__links a[aria-current="page"]{color:var(--pt-red);box-shadow:inset 0 -2px 0 var(--pt-red)}
.pt-drawer nav a[aria-current="page"]{color:var(--pt-red)}
.pt-drawer nav a[aria-current="page"]::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;background:var(--pt-red)}
.pt-drawer nav a{position:relative}
.pt-eur{display:block;margin-top:2px;font-family:var(--pt-ui);font-size:12px;font-weight:500;color:var(--pt-grey);letter-spacing:.01em;white-space:nowrap}
.pt-card__f .pt-eur{margin-top:3px}
.pt-table__rev,.pt-card__rev{display:inline-block;margin-top:5px;font-family:var(--pt-disp);font-size:12.5px;font-weight:700;letter-spacing:.02em;color:var(--pt-red);text-decoration:none;border-bottom:1px solid currentColor}
.pt-table__rev:hover,.pt-card__rev:hover{color:var(--pt-ink)}
.pt-card__rev{margin-top:7px}

/* ── КАТАЛОГ: КАРТКИ + ПЕРЕМИКАЧ ВИДУ + СОРТУВАННЯ ───────────────────────
   Ті самі дані, що й у таблиці, лише інша подача. Фільтри й сортування
   спільні: JS застосовує стан і до <tr>, і до .pt-card. */
.pt-viewbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;padding:12px 0 2px;border-bottom:1px solid var(--pt-line)}
.pt-viewbar__g{display:flex;align-items:center;gap:8px;min-width:0}
.pt-viewbar__l{flex:none;font-family:var(--pt-insc);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-grey)}
.pt-viewbar .pt-fchips{flex:1 1 auto}
.pt-viewbar .pt-tab{padding:7px 13px;min-height:38px;font-size:13.5px}
.pt-sortdir{font-family:var(--pt-disp);font-size:12.5px;opacity:.75;margin-left:6px}

.pt-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(276px,1fr));gap:20px;margin-top:18px}
.pt-card{display:flex;flex-direction:column;min-width:0;background:var(--pt-card);border:1px solid var(--pt-line);transition:box-shadow .16s var(--pt-ease),transform .16s var(--pt-ease),border-color .16s}
.pt-card:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--pt-line);border-color:var(--pt-dot)}
.pt-card__im{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--pt-band);border-bottom:1px solid var(--pt-line)}
.pt-card__im img{width:100%;height:100%;object-fit:cover;display:block}
.pt-card__b{display:flex;flex-direction:column;flex:1;padding:15px 16px 15px;min-width:0}
.pt-card__t{font-family:var(--pt-disp);font-size:17.5px;line-height:1.28;font-weight:500;color:var(--pt-ink);text-decoration:none;border-bottom:1px solid transparent}
.pt-card__t:hover{border-bottom-color:var(--pt-dot)}
.pt-card__n{display:block;font-family:var(--pt-disp);font-style:italic;color:var(--pt-grey);font-size:13px;line-height:1.45;margin:7px 0 0}
.pt-card__m{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:12px 0 0;font-size:12.5px;color:var(--pt-grey)}
.pt-card__m b{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--pt-faint);font-weight:500}
.pt-card__r{margin:10px 0 0}
.pt-card__o{font-size:12.5px;line-height:1.45;color:var(--pt-grey);border-top:1px dotted var(--pt-dot);padding-top:9px}
.pt-card__o b{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--pt-ink);font-weight:500;margin-right:5px}
/* .pt p задає margin і б'є .pt-card__f за специфічністю — тому тут повні селектори */
.pt-card p{margin:0}
.pt-card p.pt-card__m{margin:12px 0 0}
.pt-card p.pt-card__r{margin:10px 0 0}
.pt-card p.pt-card__o{margin:13px 0 0}
.pt-card p.pt-card__f{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:auto 0 0;padding-top:14px}
.pt-card__f .pt-price{font-size:18px}
.pt-card .pt-pergroup{font-size:10px;letter-spacing:.08em}

.pt-cards[hidden],.pt-tablewrap[hidden]{display:none}
.pt-card[hidden]{display:none}
@media(max-width:520px){
  .pt-cards{grid-template-columns:1fr;gap:16px}
  .pt-viewbar{gap:8px 14px}
}

.pt-table td.pt-tdprice{text-align:right;white-space:nowrap}
.pt-table td.pt-tdbook{text-align:right;padding-right:0}
.pt-table tr.is-alt td{background:var(--pt-ochre-band);border-bottom:2px solid var(--pt-ink)}
.pt-table tr.is-alt td:first-child{background:var(--pt-ochre-band)}
.pt-table tr.is-alt:hover td{background:var(--pt-ochre-band)}
.pt-nolink{display:inline-block;border:1px solid var(--pt-ochre);color:var(--pt-ochre-deep);padding:8px 12px;font-size:12px;letter-spacing:.06em;white-space:nowrap}
tr.pt-hidden{display:none}
.pt-card.pt-hidden{display:none}
.pt-swipe{display:none;font-size:12px;color:var(--pt-grey);text-align:right;margin:8px 0 0}

/* ---------- MOBILE: таблиця → стек карток (семантика <table> зберігається) ---------- */
@media(max-width:820px){
  .pt-swipe{display:none!important}
  .pt-tablewrap{overflow:visible;contain:none;margin-top:16px}
  .pt-table{min-width:0;display:block}
  .pt-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .pt-table tbody,.pt-table tr,.pt-table td{display:block;width:100%}
  .pt-table tr{border:1px solid var(--pt-line);background:var(--pt-card);padding:16px;margin-bottom:14px}
  .pt-table tbody tr:hover td,.pt-table tbody tr:hover td:first-child{background:transparent}
  .pt-table td{border:0;padding:7px 0;display:flex;align-items:baseline;justify-content:space-between;gap:16px;max-width:none;position:static}
  .pt-table td:first-child{display:block;padding:0 0 12px;border-bottom:1px solid var(--pt-line);margin-bottom:6px;background:transparent!important;max-width:none}
  .pt-table td::before{content:attr(data-label);font:600 11px/1.4 var(--pt-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--pt-grey);flex:none}
  .pt-table td:first-child::before{display:none}
  .pt-table td.pt-tdprice{text-align:left}
  .pt-table td.pt-tdbook{padding:14px 0 0;display:block}
  .pt-table td.pt-tdbook::before{display:none}
  .pt-table td.pt-tdbook .pt-btn{width:100%}
  .pt-table tr.is-alt{border-color:var(--pt-ochre)}
  .pt-table tr.is-alt td{background:transparent;border-bottom:0}
  .pt-table tr.is-alt td:first-child{border-bottom:1px solid var(--pt-ochre)}
  .pt-nolink{display:block;text-align:center}
}

/* ---------- tour cards ---------- */
.pt-grid{display:grid;gap:26px}
.pt-grid>*{min-width:0}
.pt-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pt-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pt-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:960px){.pt-grid--3,.pt-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pt-grid--2,.pt-grid--3,.pt-grid--4{grid-template-columns:1fr}.pt-grid{gap:20px}}
.pt-card{position:relative;background:var(--pt-card);border:1px solid var(--pt-line);display:flex;flex-direction:column;min-width:0;transition:transform .25s var(--pt-ease),box-shadow .25s var(--pt-ease)}
.pt-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(33,28,21,.13)}
.pt-card__media{margin:0;position:relative;overflow:hidden}
.pt-card__media img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.pt-rank{position:absolute;top:0;left:0;z-index:2;background:var(--pt-paper);padding:6px 14px 8px;font-family:var(--pt-disp);font-size:21px;font-weight:500;color:var(--pt-ink);border-right:1px solid var(--pt-line);border-bottom:1px solid var(--pt-line)}
.pt-card__body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.pt-card__title{font-family:var(--pt-disp);font-weight:500;font-size:20px;margin:0 0 6px;line-height:1.28}
.pt-card__title a{color:var(--pt-ink);text-decoration:none}
.pt .pt-card__title a:hover{color:var(--pt-red);text-decoration:none}
/* факти туру: перший елемент — тривалість із треком, далі крапкові розділювачі */
.pt-card__facts{display:flex;flex-wrap:wrap;align-items:center;gap:5px 9px;font-size:13px;color:var(--pt-grey);margin:0 0 12px;line-height:1.45}
.pt-card__facts>span{display:inline-flex;align-items:center;gap:9px}
.pt-card__facts>span+span::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--pt-dot);flex:none}
/* стартова точка — це категорія, а не підпис */
.pt-card__from{display:inline-flex;align-items:center;gap:7px;width:-moz-fit-content;width:fit-content;font:600 10.5px/1 var(--pt-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--pt-verd-deep);background:var(--pt-verd-tint);border:1px solid rgba(62,122,107,.3);padding:5px 9px;margin:0 0 14px}
.pt-card__from::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--pt-verd);flex:none}
.pt-card__foot{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--pt-line);padding-top:14px;margin-top:auto}
.pt-card .pt-btn{margin-top:14px}
.pt-card__more{margin:10px auto 0;font-size:13px;border-bottom:1px solid var(--pt-dot);padding-bottom:1px}

/* ---------- itineraries ---------- */
.pt-itin{border-top:2px solid var(--pt-ink);padding-top:16px;min-width:0}
.pt-itin__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pt-itin__head h3{margin:0}
.pt-itin__head b{font-family:var(--pt-disp);color:var(--pt-red);font-size:17px;font-weight:500;white-space:nowrap}
.pt-itin ol{list-style:none;margin:18px 0 0;padding:0 0 0 5px;border-left:1px solid var(--pt-dot)}
.pt-itin li{position:relative;padding:0 0 18px 20px}
.pt-itin li::before{content:"";position:absolute;left:-10px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--pt-red);border:2px solid var(--pt-paper);box-shadow:0 0 0 1px var(--pt-red)}
.pt-itin li b{display:block;font-family:var(--pt-disp);font-size:13px;letter-spacing:.08em;color:var(--pt-grey);font-weight:500}
.pt-itin li span{display:block;font-size:14.5px;line-height:1.5;margin-top:2px}
.pt-itin__sum{margin:6px 0 0;font-size:13.5px;padding-top:12px;border-top:1px solid var(--pt-line)}

/* ---------- ВОДЯНИЙ ЗНАК: гігантська римська цифра обведенням ---------- */
.pt-sec--wm{position:relative;overflow:hidden}
.pt-wm{position:absolute;font-family:var(--pt-disp);font-size:clamp(150px,20vw,260px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(33,28,21,.07);user-select:none;pointer-events:none;z-index:0}
.pt-wm--br{right:-20px;bottom:-70px}
.pt-wm--tl{left:-30px;top:-60px;-webkit-text-stroke-color:rgba(33,28,21,.06)}
.pt-sec--dark .pt-wm{-webkit-text-stroke-color:rgba(237,231,219,.09)}
.pt-sec--wm>.pt-wrap{position:relative;z-index:1}

/* ---------- сезони ---------- */
.pt-seasons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.pt-season{position:relative;padding:18px 18px 20px;border-top:3px solid var(--sc,var(--pt-grey));background:transparent}
[data-season="spring"]{--sc:#3E7A6B;--scb:rgba(62,122,107,.12)}
[data-season="summer"]{--sc:#A23020;--scb:rgba(162,48,32,.10)}
[data-season="autumn"]{--sc:#1E7A4B;--scb:rgba(185,134,36,.18)}
[data-season="winter"]{--sc:#8A6410;--scb:rgba(185,134,36,.18)}
.pt-season--best{background:var(--pt-paper);border:1px solid #1E7A4B;border-top:3px solid var(--sc);box-shadow:0 6px 20px rgba(33,28,21,.1)}
.pt-season__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.pt-season h3{margin:0;font-size:19px}
.pt-season__tag{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;padding:3px 7px;color:var(--sc);background:var(--scb);white-space:nowrap}
.pt-season__stamp{position:absolute;top:-14px;right:-8px;transform:rotate(4deg);font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;padding:5px 9px;white-space:nowrap;color:#1E7A4B;border:1.5px solid #1E7A4B;background:var(--pt-paper);z-index:2}
.pt-season p{font-size:14px;line-height:1.6;color:var(--pt-ink2);margin:0}
@media(max-width:900px){.pt-seasons{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media(max-width:560px){.pt-seasons{grid-template-columns:1fr}}

/* ---------- бюджет: крапкові лідери + темні підсумкові смуги ---------- */
.pt-budget{margin-top:16px;border-top:3px double var(--pt-ink);border-bottom:3px double var(--pt-ink);padding:14px 0 16px}
.pt-budget__rows{display:flex;flex-direction:column;gap:12px}
.pt-budget__row{display:flex;align-items:baseline;font-size:15px}
.pt-budget__row i{flex:1;border-bottom:1px dotted var(--pt-dot);margin:0 10px;min-width:20px}
.pt-budget__row b{font-family:var(--pt-disp);font-size:17px;font-weight:500;white-space:nowrap}
.pt-budget__tot{display:flex;flex-direction:column;gap:1px;margin-top:16px}
.pt-budget__tot div{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--pt-ink);color:#EDE7DB;padding:12px 16px}
.pt-budget__tot span{font-weight:600;font-size:14.5px}
.pt-budget__tot b{font-family:var(--pt-disp);font-size:19px;font-weight:600;white-space:nowrap}
.pt-budget__tot .pt-good{color:var(--pt-mint)}
.pt-budget__tot .pt-warn{color:var(--pt-gold)}

/* ---------- міні-статистика (круїз, транспорт) ---------- */
.pt-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 16px}
.pt-stat{border:1px solid var(--pt-hair2);padding:12px 14px;background:var(--pt-card)}
.pt-stat b{display:block;font-family:var(--pt-disp);font-size:24px;font-weight:500;line-height:1.15}
.pt-stat span{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--pt-grey)}
.pt-stat--alert{border-color:var(--pt-red);background:rgba(162,48,32,.06)}
.pt-stat--alert b,.pt-stat--alert span{color:var(--pt-red)}
@media(max-width:560px){.pt-stats{grid-template-columns:1fr}}

/* ---------- alerts / notes ---------- */
.pt-alert{border:1px solid var(--pt-line);border-left:4px solid var(--pt-ochre);background:var(--pt-card);padding:15px 18px;font-size:14.5px;line-height:1.6;margin:1em 0}
.pt-alert--red{border-left-color:var(--pt-red)}
.pt-alert--verd{border-left-color:var(--pt-verd)}
.pt-alert--lapis{border-left-color:var(--pt-lapis);background:var(--pt-lapis-tint);border-color:rgba(47,86,128,.22)}
.pt-note{border:1px solid var(--pt-ochre);background:var(--pt-card);display:inline-block;padding:10px 16px;font-size:13.5px}
.pt-note b{font-family:var(--pt-insc);letter-spacing:.18em;font-size:11px;color:var(--pt-ochre-deep);font-weight:500}

/* ---------- checklist ---------- */
.pt-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.pt-check li{display:flex;gap:12px;font-size:14.5px;line-height:1.5}
.pt-check li::before{content:"✓";width:18px;height:18px;border:1.5px solid var(--pt-red);flex:none;margin-top:2px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--pt-red)}

/* ---------- FAQ ---------- */
.pt-faq details{border-bottom:1px solid var(--pt-hair2)}
.pt-faq summary{cursor:pointer;list-style:none;padding:16px 4px;font-family:var(--pt-disp);font-size:18px;font-weight:500;display:flex;justify-content:space-between;gap:16px;align-items:baseline;min-height:44px}
.pt-faq summary::-webkit-details-marker{display:none}
.pt-faq summary:hover{color:var(--pt-red)}
.pt-faq summary::after{content:"+";font-family:var(--pt-disp);color:var(--pt-red);font-size:22px;line-height:1;flex:none;transition:transform .22s var(--pt-ease)}
.pt-faq details[open] summary::after{transform:rotate(45deg)}
.pt-faq__a{margin:0;padding:0 4px 18px;font-size:15px;line-height:1.65;color:var(--pt-ink2);max-width:72ch}
.pt-faqtoggle{background:none;border:1px solid var(--pt-ink);padding:10px 16px;font:500 12px var(--pt-ui);letter-spacing:.08em;cursor:pointer;min-height:44px;color:var(--pt-ink)}
.pt-faqtoggle:hover{background:var(--pt-ink);color:var(--pt-paper)}

/* ---------- sticky booking bar ---------- */
.pt-sticky{position:fixed;left:0;right:0;bottom:0;width:100%;max-width:100vw;overflow:hidden;z-index:70;background:var(--pt-dark);color:#EDE7DB;transform:translateY(110%);transition:transform .28s var(--pt-ease)}
.pt-sticky.is-on{transform:translateY(0)}
.pt-sticky__in{width:100%;max-width:var(--pt-wrap);margin:0 auto;padding:10px var(--pt-pad);display:flex;align-items:center;gap:14px}
.pt-sticky__t{min-width:0;flex:1 1 auto;overflow:hidden}
.pt-sticky__t small{display:block;font-family:var(--pt-insc);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--pt-gold)}
.pt-sticky__t b{display:block;font-size:14px;font-weight:600;color:#FAF8F3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.pt-sticky__price{font-family:var(--pt-disp);font-size:20px;color:#FAF8F3;white-space:nowrap;flex:none}
.pt-sticky .pt-btn{flex:none;box-shadow:3px 3px 0 var(--pt-gold)}
.pt-sticky .pt-btn:hover{box-shadow:5px 5px 0 var(--pt-gold)}
@media(max-width:620px){
  .pt-sticky__in{padding:9px 14px;gap:10px}
  .pt-sticky__t small{display:none}
  .pt-sticky__t b{font-size:13px;margin-top:0}
  .pt-sticky__price{font-size:18px}
  .pt-sticky .pt-btn{padding:11px 14px;min-height:44px;font-size:13px}
}
.pt-top{position:fixed;right:16px;bottom:calc(var(--pt-sticky-h) + 16px);z-index:69;width:46px;height:46px;border:1px solid var(--pt-ink);background:var(--pt-paper);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s,bottom .28s var(--pt-ease)}
.pt-top.is-on{opacity:1;pointer-events:auto}
.pt-top::before{content:"";position:absolute;left:50%;top:55%;width:10px;height:10px;border-left:1.6px solid var(--pt-ink);border-top:1.6px solid var(--pt-ink);transform:translate(-50%,-50%) rotate(45deg)}
@media(max-width:620px){.pt-top{width:42px;height:42px;right:12px;bottom:calc(var(--pt-sticky-h) + 12px)}
  .pt-sticky.is-on ~ .pt-top{opacity:0;pointer-events:none}}

/* ---------- footer ---------- */
.pt-footer{background:var(--pt-dark);color:var(--pt-faint);font-size:14px}
.pt-footer a{color:#EDE7DB}
.pt .pt-footer a:hover{color:#fff}
.pt-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;padding:52px 0 32px}
.pt-footer h4{font-family:var(--pt-insc);font-weight:500;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-gold);margin:0 0 14px}
.pt-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.pt-footer__ask{border-top:1px solid #3B342A;padding:22px 0}
.pt-footer__ask nav{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px}
.pt-footer__law{border-top:1px solid #3B342A;padding:18px 0 26px;font-size:12.5px;letter-spacing:.06em;line-height:1.7}
@media(max-width:960px){.pt-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.pt-footer__grid{grid-template-columns:1fr;gap:26px;padding:38px 0 26px}}

/* ---------- consent ---------- */
.pt-consent{position:fixed;z-index:130;left:16px;right:16px;bottom:16px;width:auto;max-width:min(520px,calc(100vw - 32px));margin:0 auto;background:var(--pt-card);border:1px solid var(--pt-ink);box-shadow:6px 6px 0 var(--pt-ink);padding:20px 22px;font-size:14px}
.pt-consent p{margin:0 0 14px;color:var(--pt-ink2)}
.pt-consent__btns{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:520px){.pt-consent__btns .pt-btn{flex:1 1 100%}}

/* ---------- reveal ----------
   Контент видимий ЗАВЖДИ. Ховаємо його тільки якщо JS точно живий
   (клас .pt-js ставить інлайновий скрипт у <head>). Немає JS — немає порожніх секцій. */
.pt-reveal{opacity:1;transform:none}
@media(max-width:760px){.pt-js .pt-reveal{opacity:1!important;transform:none!important}}
.pt-js .pt-reveal{opacity:0;transform:translateY(16px);transition:opacity .55s var(--pt-ease),transform .55s var(--pt-ease)}
.pt-reveal.is-in{opacity:1;transform:none}
.pt-reveal:nth-child(2){transition-delay:.07s}.pt-reveal:nth-child(3){transition-delay:.14s}
.pt-reveal:nth-child(4){transition-delay:.07s}.pt-reveal:nth-child(5){transition-delay:.14s}.pt-reveal:nth-child(6){transition-delay:.21s}
@media(prefers-reduced-motion:reduce){.pt-reveal{opacity:1;transform:none}}

/* ---------- misc ---------- */
.pt-updated{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--pt-grey)}
.pt-updated::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pt-verd)}
.pt-trust{font-family:var(--pt-disp);font-style:italic;font-size:13px;color:var(--pt-grey)}
.pt-imgframe{position:relative;overflow:hidden;border:1px solid var(--pt-line)}
.pt-bread{font-size:13px;color:var(--pt-grey);padding:14px 0 0}
.pt-bread a{color:var(--pt-grey)}
.pt-no{font-family:var(--pt-disp);font-size:44px;color:var(--pt-gold);line-height:1}
.pt-note3{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.pt-note3 p{flex:1}
.pt-note3 .pt-btn{margin-top:4px}
.pt-anchor-nav{display:flex;flex-wrap:wrap;gap:8px;margin:1.2em 0}
.pt-anchor-nav a{font-size:13px;font-weight:600;border:1px solid var(--pt-dot);padding:9px 14px;color:var(--pt-ink);min-height:40px;display:inline-flex;align-items:center}
.pt .pt-anchor-nav a:hover{border-color:var(--pt-ink);text-decoration:none}

/* ---------- компоненти внутрішніх сторінок ---------- */
/* інскрипційний рядок-«табличка» над блоком */
.pt-plate{display:flex;align-items:center;gap:12px;margin:0 0 14px;font-family:var(--pt-insc);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--pt-grey)}
.pt-plate b{font-weight:500;color:var(--pt-red);letter-spacing:.16em}
.pt-plate::after{content:"";flex:1;height:0;border-top:1px solid var(--pt-line)}
/* смуга ключових чисел */
.pt-chips{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:24px 0 0;padding:0;border-top:3px double var(--pt-ink);border-bottom:1px solid var(--pt-line)}
.pt-hora{padding:16px 10px;text-align:center;border-left:1px solid var(--pt-line);min-width:0}
.pt-hora:first-child{border-left:0}
.pt-hora .pt-num{display:block;font-size:clamp(19px,2.1vw,26px);line-height:1.1}
.pt-hora small{display:block;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--pt-grey);margin-top:5px}
@media(max-width:720px){
  .pt-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-hora:nth-child(odd){border-left:0}
  .pt-hora:nth-child(n+3){border-top:1px solid var(--pt-line)}
}
/* розділювач-стратиграфія */
.pt-strata{border:0;height:0;border-top:3px double var(--pt-ink);margin:clamp(30px,4vw,48px) 0}
.pt-sec--dark .pt-strata{border-top-color:#3B342A}
.pt-plate--dark{color:var(--pt-faint)}
.pt-plate--dark b{color:var(--pt-gold)}
.pt-plate--dark::after{border-top-color:#3B342A}
.pt-verdict__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 12px;padding-right:78px}
.pt-verdict__head h3{flex:1 1 auto;min-width:0}
.pt-card__flag{position:static;display:inline-flex;align-self:flex-start;transform:none;margin:0 0 10px}
/* маршрутна шкала: одна лінія, зупинки з часом */
.pt-route{position:relative;margin:26px 0 0;padding-left:18px}
.pt-route__bar{position:absolute;left:3px;top:6px;bottom:6px;width:2px;background:linear-gradient(to bottom,var(--pt-verd),var(--pt-ochre))}
.pt-route__stops{display:flex;flex-direction:column;gap:12px}
.pt-route__stop{position:relative;font-size:14.5px;line-height:1.5;color:var(--pt-grey)}
.pt-route__stop::before{content:"";position:absolute;left:-19px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--pt-paper);border:2px solid var(--pt-verd)}
.pt-route__stop b{display:inline-block;min-width:160px;color:var(--pt-ink);font-weight:600}
.pt-route__stop .pt-num{color:var(--pt-red);font-size:16px;margin-right:6px}
@media(max-width:560px){.pt-route__stop b{display:block;min-width:0}}
/* тесера — дрібний декоративний розділювач */
.pt-tess{border:0;height:6px;margin:clamp(26px,3.4vw,40px) 0;background:repeating-linear-gradient(90deg,var(--pt-dot) 0 6px,transparent 6px 12px)}
.pt-sec--dark .pt-tess{background:repeating-linear-gradient(90deg,#4A4132 0 6px,transparent 6px 12px)}
/* таблиця на темному тлі */
.pt-table--dark th{color:#FAF8F3}
.pt-table--dark thead tr{border-bottom-color:#EDE7DB}
.pt-table--dark td{border-bottom-color:#3B342A;color:#EDE7DB}
.pt-table--dark th:first-child,.pt-table--dark td:first-child{background:var(--pt-dark)}
.pt-table--dark tbody tr:hover td,.pt-table--dark tbody tr:hover td:first-child{background:#2C2419}
.pt-table--dark .pt-table__name{color:#FAF8F3;border-bottom-color:#5A5041}
.pt-table--dark .pt-table__note{color:var(--pt-faint)}
.pt-table--dark .pt-dur{color:#EDE7DB}
.pt-table--dark .pt-dur i{background:#3B342A}
@media(max-width:820px){.pt-table--dark tr{background:#2C2419;border-color:#3B342A}
  .pt-table--dark td:first-child{border-bottom-color:#3B342A}
  .pt-table--dark td::before{color:var(--pt-faint)}}
.pt-sticky__meta{display:block;font-size:12px;color:var(--pt-faint);margin-top:2px}
@media(max-width:620px){.pt-sticky__meta{display:none}}
.pt-hero__bg{display:none}

/* ============================================================================
   ТИП СТОРІНКИ «ХАБ» — власна архітектура поверх системи v5
   1. RESPONSUM — масthead без фотогероя: відповідь одразу, у плиті з тінню
   2. TABULA   — липка рейка розділів зі scrollspy і смугою прогресу
   3. CASTRA   — «табори», той самий словник, що й фільтри та групи рядків
   4. CAVEAT   — темна смуга застережень
   5. CONSILIUM — закриття «якщо ви X — беріть Y»
   ========================================================================= */
.pt-hubbar{display:flex;align-items:baseline;gap:12px;min-width:0}
.pt-hubbar span{font-family:var(--pt-insc);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--pt-red);white-space:nowrap}
.pt-hubbar i{color:var(--pt-dot);font-style:normal}

/* --- RESPONSUM --- */
.pt-mast{position:relative;overflow:hidden;padding:clamp(28px,3.4vw,44px) 0 clamp(30px,3.6vw,40px);border-bottom:1px solid var(--pt-line)}
.pt-mast__in{max-width:var(--pt-wrap);margin:0 auto;padding:0 var(--pt-pad);position:relative;z-index:1}
.pt-crumb{font-family:var(--pt-insc);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-grey);margin:0 0 16px}
.pt-crumb i{color:var(--pt-dot);font-style:normal;margin:0 6px}
.pt-mast__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,3.6vw,48px);align-items:start}
.pt-mast__grid>*{min-width:0}
.pt-mast h1{margin:0 0 18px}
.pt-mast__lede{font-size:16.5px;line-height:1.65;color:var(--pt-ink2);margin:0;max-width:58ch}
.pt-mast__cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px}
.pt-mast__alt{font-size:14.5px;font-weight:600;border-bottom:1px solid var(--pt-dot);padding-bottom:2px}
@media(max-width:900px){.pt-mast__grid{grid-template-columns:1fr}}

/* плита відповіді */
.pt-answer{background:var(--pt-card);border:1px solid var(--pt-ink);box-shadow:6px 6px 0 var(--pt-ink);padding:24px 24px 22px;max-width:460px}
.pt-answer img{width:calc(100% + 48px);max-width:calc(100% + 48px);height:auto;margin:-24px -24px 18px;aspect-ratio:16/8;object-fit:cover;border-bottom:1px solid var(--pt-ink)}
.pt-answer__l{font-family:var(--pt-insc);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--pt-red);margin:0 0 10px}
.pt-answer p{font-size:15px;line-height:1.6;margin:0 0 14px}
.pt-answer__key{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.pt-answer__key small{font-size:13px;color:var(--pt-grey)}
.pt-answer .pt-btn{width:100%}
.pt-alt{margin:18px -24px -22px;border-top:1px solid var(--pt-line);background:#F7F3EA;padding:2px 24px 6px}
.pt-alt a{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #EEE8D9;color:var(--pt-ink);min-height:44px}
.pt-alt a:last-child{border-bottom:0}
.pt .pt-alt a:hover{color:var(--pt-red);text-decoration:none}
.pt-alt b{font-family:var(--pt-insc);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-grey);flex:0 0 88px;font-weight:500}
.pt-alt em{flex:1;min-width:0;font-style:normal;font-size:13.5px;font-weight:600}
.pt-alt u{text-decoration:none;font-size:12px;font-weight:600;color:var(--pt-red);white-space:nowrap;border-bottom:1px solid var(--pt-red)}
@media(max-width:900px){.pt-answer{max-width:none}}
@media(max-width:460px){.pt-alt b{flex:0 0 100%}.pt-alt a{flex-wrap:wrap;gap:6px 10px}}

/* смуга ключових чисел масthead-а */
.pt-nums{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:3px double var(--pt-ink);margin:34px 0 0;padding:0}
.pt-nums div{padding:16px 14px 6px;border-left:1px solid var(--pt-line);min-width:0}
.pt-nums div:first-child{border-left:0}
.pt-nums dd{font-family:var(--pt-disp);font-size:clamp(18px,2vw,25px);font-weight:500;margin:0;line-height:1.15;color:var(--nc,var(--pt-ink))}
.pt-nums dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--pt-grey);margin-top:4px}
@media(max-width:820px){.pt-nums{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-nums div:nth-child(odd){border-left:0}
  .pt-nums div:nth-child(n+3){border-top:1px solid var(--pt-line)}}

/* --- TABULA: липка рейка розділів --- */
.pt-rail{position:sticky;top:0;z-index:35;background:var(--pt-band);border-bottom:1px solid var(--pt-line)}
.pt-rail__in{max-width:var(--pt-wrap);margin:0 auto;padding:0 var(--pt-pad);display:flex;gap:2px;overflow-x:auto;contain:paint;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.pt-rail__in::-webkit-scrollbar{display:none}
.pt-rail a{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:13px 14px;min-height:46px;font-size:13px;font-weight:500;color:var(--pt-grey);border-bottom:2px solid transparent;margin-bottom:-1px}
.pt-rail a i{font-family:var(--pt-disp);font-size:11px;font-style:normal;color:var(--pt-grey)}
.pt .pt-rail a:hover{color:var(--pt-ink);text-decoration:none}
.pt-rail a.is-cur{color:var(--pt-ink);font-weight:600;border-bottom-color:var(--pt-red)}
.pt-rail a.is-cur i{color:var(--pt-red)}
.pt-rail__track{height:2px;background:var(--pt-line)}
.pt-rail__prog{height:100%;width:0;background:var(--pt-ochre);transition:width .2s linear}

/* --- CASTRA: картки таборів --- */
.pt-camp{position:relative;background:var(--pt-paper);border:1px solid var(--pt-line);padding:26px 24px 0;display:flex;flex-direction:column;min-width:0}
.pt-camp img{width:calc(100% + 48px);max-width:calc(100% + 48px);height:auto;margin:-26px -24px 18px;aspect-ratio:16/8;object-fit:cover;border-bottom:1px solid var(--pt-line)}
.pt-camp h3{margin:0;max-width:78%}
.pt-camp__price{margin:8px 0 16px}
.pt-camp .pt-prosc{flex:1}
.pt-camp__go{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;border:1px solid var(--pt-ink);color:var(--pt-ink);padding:12px 16px;font:600 13.5px var(--pt-ui);cursor:pointer;background:none;box-shadow:3px 3px 0 var(--pt-ink);transition:transform .15s var(--pt-ease),box-shadow .15s var(--pt-ease),background .15s;width:100%}
.pt-camp__go:hover{background:var(--pt-ink);color:var(--pt-paper);transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--pt-ochre)}
.pt-camp .pt-ourcall{margin:18px -24px 0;padding:13px 24px 15px}
.pt-stamp3{position:absolute;top:16px;right:-8px;z-index:2;transform:rotate(6deg);font-family:var(--pt-insc);font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--pt-red);border:1.5px solid var(--pt-red);padding:4px 8px;background:var(--pt-paper);box-shadow:2px 2px 0 rgba(33,28,21,.32)}

/* --- CONTEXTUS: проза з буквицею + бічні числа --- */
.pt-ctx{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(26px,4vw,56px);margin-top:30px}
.pt-ctx>*{min-width:0}
.pt-ctx__body{font-size:16px;line-height:1.7;color:#3B362B}
.pt-ctx__body p{margin:0 0 16px;max-width:66ch}
.pt-ctx__body p:last-child{margin-bottom:0}
.pt-cap::first-letter{float:left;font-family:var(--pt-disp);font-size:58px;line-height:.82;padding:6px 10px 0 0;color:var(--pt-red)}
.pt-side{max-width:340px;align-self:start;border-top:2px solid var(--pt-ink);padding-top:4px}
.pt-side div{padding:14px 0;border-bottom:1px solid var(--pt-line);display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.pt-side span{font-size:13px;color:var(--pt-ink2);line-height:1.4}
.pt-side b{font-family:var(--pt-disp);font-size:21px;font-weight:500;white-space:nowrap;color:var(--sc,var(--pt-ink))}
@media(max-width:900px){.pt-ctx{grid-template-columns:1fr}.pt-side{max-width:none}}

/* --- INTERLUDIUM: фотосмуга на всю ширину --- */
.pt-band{margin:0;position:relative}
.pt-band img{width:100%;height:clamp(220px,32vw,420px);object-fit:cover}
.pt-band figcaption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(to top,rgba(23,19,14,.9),rgba(23,19,14,.45) 60%,transparent);color:#FAF8F3;padding:56px var(--pt-pad) 16px;font-family:var(--pt-disp);font-size:14.5px;line-height:1.5}
.pt-band figcaption span{display:block;max-width:var(--pt-wrap);margin:0 auto}

/* --- CAVEAT: пронумеровані застереження на темному --- */
.pt-caveats{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px}
.pt-caveats li{display:flex;gap:16px;padding:18px 0;border-top:1px solid #3B342A;min-width:0}
.pt-caveats b{font-family:var(--pt-disp);font-size:22px;color:var(--pt-gold);line-height:1;flex:none;min-width:34px}
.pt-caveats p{margin:0;font-size:14.5px;line-height:1.6;color:var(--pt-faint)}
.pt-caveats strong{color:#FAF8F3;font-weight:600;display:block;margin-bottom:4px}
.pt-caveats--paper li{border-top-color:var(--pt-line)}
.pt-caveats--paper b{color:var(--pt-ochre)}
.pt-caveats--paper p{color:var(--pt-ink2)}
.pt-caveats--paper strong{color:var(--pt-ink)}
@media(max-width:760px){.pt-caveats{grid-template-columns:1fr;gap:0}}

/* --- FENESTRAE: віджет доступності GetYourGuide ---
   Місце під віджет зарезервоване заздалегідь, щоб не було зсуву макета,
   поки сторонній скрипт вантажиться. Скелет ховається, щойно віджет змонтовано. */
.pt-gyg__note{margin:10px 0 0;font-size:13px;line-height:1.55;color:var(--pt-ink2)}
.pt-gyg__note b{font-family:var(--pt-disp);font-size:14px;color:var(--pt-ink);display:block;margin-bottom:2px}
.pt-gyg__note--up b{color:var(--pt-red)}
.pt-gyg{position:relative;border:1px solid var(--pt-line);background:var(--pt-card);min-width:0;min-height:420px}
.pt-gyg__slot{min-height:420px}
.pt-gyg iframe{display:block;width:100%;border:0}
.pt-gyg__skel{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:22px 20px;text-align:center;pointer-events:none}
.pt-gyg[data-mounted] .pt-gyg__skel{display:none}
.pt-gyg__skel b{font:600 13.5px var(--pt-ui);color:var(--pt-ink2)}
.pt-gyg__skel small{font-size:12px;line-height:1.5;color:var(--pt-grey)}
.pt-gyg__skel i{display:block;width:44px;height:3px;background:var(--pt-line);position:relative;overflow:hidden}
.pt-gyg__skel i::before{content:"";position:absolute;inset:0;width:40%;background:var(--pt-ochre);animation:pt-slide 1.3s var(--pt-ease) infinite}
@keyframes pt-slide{0%{transform:translateX(-100%)}100%{transform:translateX(250%)}}
@media(prefers-reduced-motion:reduce){.pt-gyg__skel i::before{animation:none}}

/* --- CONSILIUM: рядки «якщо ви X — беріть Y» --- */
.pt-pick__r{display:block;margin:2px 0 4px;font-size:12.5px;color:var(--pt-grey)}
.pt-picks{border-top:3px double var(--pt-ink)}
.pt-pick{display:grid;grid-template-columns:150px 1fr auto auto;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--pt-line)}
.pt-pick>b{font-family:var(--pt-insc);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--pt-red);font-weight:500}
.pt-pick>span{min-width:0;font-weight:600;font-size:15px}
@media(max-width:760px){.pt-pick{grid-template-columns:1fr auto;gap:8px 14px}
  .pt-pick>b{grid-column:1/-1}
  .pt-pick>span{grid-column:1/-1}
  .pt-pick .pt-btn{grid-column:2}}

/* ============================================================================
   ТИП СТОРІНКИ «ГАЙД» — процедурний контент: маршрути, розвилки, гроші
   ========================================================================= */
/* смуга ключових фактів під заголовком */
.pt-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px}
.pt-facts>div{border:1px solid var(--pt-ink);background:var(--pt-card);padding:14px 16px 12px;box-shadow:3px 3px 0 var(--pt-line);transition:transform .18s var(--pt-ease),box-shadow .18s var(--pt-ease);min-width:0}
.pt-facts>div:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--fc,var(--pt-dot))}
.pt-facts b{display:block;font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-grey);font-weight:500}
.pt-facts em{display:block;font-style:normal;font-family:var(--pt-disp);font-size:clamp(20px,2.2vw,27px);font-weight:500;margin:4px 0 2px;color:var(--fc,var(--pt-ink))}
.pt-facts small{display:block;font-size:11px;color:#8A8272;line-height:1.4}
@media(max-width:820px){.pt-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.pt-facts{grid-template-columns:1fr}}

/* маршрутна діаграма з перемикачем відправлення */
.pt-routebox{border:1px solid var(--pt-ink);background:var(--pt-card);box-shadow:5px 5px 0 var(--pt-ink);padding:24px 24px 20px;margin-top:8px}
.pt-legs{display:flex;align-items:stretch;gap:0}
.pt-leg{flex:1;min-width:0;display:flex;align-items:center}
.pt-leg__stop{flex:0 0 auto;max-width:190px;min-width:0}
.pt-leg__stop i{display:block;width:10px;height:10px;background:var(--lc,var(--pt-ink));transform:rotate(45deg);margin-bottom:8px}
.pt-leg__stop b{display:block;font-family:var(--pt-disp);font-size:16px;font-weight:500;line-height:1.25}
.pt-leg__stop small{display:block;font-size:11.5px;color:var(--pt-grey);margin-top:3px}
.pt-leg__track{flex:1;min-width:70px;padding:0 14px;text-align:center}
.pt-leg__track b,.pt-leg__track em{display:block;font-family:var(--pt-disp);font-size:13px;font-weight:600;font-style:normal}
.pt-leg__track em{color:var(--tkc,var(--pt-grey))}
.pt-leg__track span{position:relative;display:block;height:3px;background:var(--pt-ink);margin:6px 0}
.pt-leg__track span i{position:absolute;top:-3px;left:0;width:9px;height:9px;background:var(--lc,var(--pt-red));animation:pt-traverse 2.6s linear infinite}
@keyframes pt-traverse{0%{left:0}100%{left:calc(100% - 9px)}}
@media(prefers-reduced-motion:reduce){.pt-leg__track span i{animation:none}}
.pt-routebox__foot{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--pt-line);margin-top:20px;padding-top:14px;flex-wrap:wrap}
.pt-routebox__foot p{margin:0;font-size:13.5px;line-height:1.55;color:var(--pt-ink2);flex:1;min-width:220px}
.pt-routebox__foot b{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--pt-ochre);font-weight:500}
.pt-routebox__pick{flex:none;display:inline-flex;align-items:center;gap:5px}
@media(max-width:620px){
  .pt-routebox{padding:18px 16px 16px}
  .pt-routebox__foot{flex-direction:column;align-items:stretch;gap:12px}
  .pt-routebox__foot p{min-width:0}
  .pt-routebox__pick{align-self:flex-start}
  .pt-routebox__foot .pt-btn{width:100%;justify-content:center}
}
@media(max-width:760px){.pt-legs{flex-direction:column;gap:0}
  .pt-leg{width:100%}
  .pt-leg__track{padding:8px 0 8px 22px;text-align:left;min-width:0;width:100%}
  .pt-leg__track span{width:3px;height:26px;margin:4px 0}
  .pt-leg__track span i{animation:none;top:0;left:-3px}}

/* CAVE — застереження в рамці */
.pt-cave{margin-top:22px;border:2px solid var(--pt-red);background:var(--pt-card);padding:16px 20px;display:flex;gap:16px;align-items:flex-start;box-shadow:4px 4px 0 rgba(162,48,32,.25)}
.pt-cave b{font-family:var(--pt-insc);font-size:12px;letter-spacing:.22em;color:var(--pt-paper);background:var(--pt-red);padding:5px 9px;white-space:nowrap;font-weight:500}
.pt-cave p{margin:0;font-size:14.5px;line-height:1.6}
@media(max-width:560px){.pt-cave{flex-direction:column;gap:10px}}

/* HOROLOGIUM — смуга дня */
.pt-clock{border:1px solid var(--pt-ink);background:var(--pt-card);box-shadow:5px 5px 0 var(--pt-ink);padding:22px 24px 18px}
.pt-clock__scale{display:flex;justify-content:space-between;font-family:var(--pt-disp);font-size:12px;color:var(--pt-grey);margin-bottom:8px}
.pt-clock__bar{display:flex;height:36px;border:1px solid var(--pt-ink)}
.pt-clock__bar>span{display:flex;align-items:center;justify-content:center;min-width:0;font-size:11.5px;font-weight:600;padding:0 6px;text-align:center;line-height:1.25}
.pt-clock__am{flex:0 0 40%;background:rgba(62,122,107,.25);border-right:2px solid var(--pt-ink);color:var(--pt-verd-deep)}
.pt-clock__pm{flex:0 0 45%;background:rgba(185,134,36,.22);border-right:2px solid var(--pt-red);color:var(--pt-ochre-deep)}
.pt-clock__shut{flex:1;background:repeating-linear-gradient(45deg,var(--pt-band) 0 6px,var(--pt-line) 6px 12px);color:var(--pt-grey);font-weight:400}
.pt-clock__key{display:flex;gap:18px;margin-top:14px;flex-wrap:wrap}
.pt-clock__key span{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--pt-ink2)}
.pt-clock__key i{width:10px;height:10px;flex:none}
@media(max-width:640px){.pt-clock__bar>span{font-size:10px}.pt-clock__scale{font-size:11px}}

/* смуги порівняння вартості */
.pt-bars{border:1px solid var(--pt-line);background:var(--pt-card);padding:20px 22px}
.pt-bars__l{font-family:var(--pt-insc);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--pt-grey);margin:0 0 14px}
.pt-bar{display:flex;align-items:center;gap:14px;padding:7px 0}
.pt-bar>b{flex:0 0 200px;font:600 13px var(--pt-ui);min-width:0}
.pt-bar>span{flex:1;height:22px;background:var(--pt-band);position:relative;min-width:0}
.pt-bar>span i{position:absolute;left:0;top:0;bottom:0;width:var(--bw,50%);background:var(--tc);opacity:.85}
@media(max-width:640px){.pt-bar{flex-wrap:wrap;gap:6px 12px}.pt-bar>b{flex:1 1 100%}}

/* BIVIUM — розвилка на два шляхи */
.pt-fork{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;margin-top:24px;align-items:stretch}
.pt-fork>article{border:1px solid var(--pt-ink);background:var(--pt-card);padding:24px;display:flex;flex-direction:column;min-width:0}
.pt-fork b.pt-fork__l{font-family:var(--pt-insc);font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--fkc,var(--pt-grey))}
.pt-fork h3{margin:8px 0 12px;font-size:20px}
.pt-fork p{margin:0;font-size:14px;line-height:1.6;color:#3B362B;flex:1}
.pt-fork__aut{display:flex;align-items:center;justify-content:center;font-family:var(--pt-disp);font-size:13px;letter-spacing:.2em;color:var(--pt-grey)}
@media(max-width:860px){.pt-fork{grid-template-columns:1fr}.pt-fork__aut{padding:4px 0}}

/* фото як доказ усередині контенту, а не декор між секціями */
/* --- REVIEW DOSSIER · «Інструмент» -------------------------------------
   Перенесено з концепту Дизайнера як є: подвійні лінійки в заголовках,
   тверді зсунуті тіні, темна смуга дрібного шрифту з водяним §,
   інвентар із кольоровими верхніми кантами, зірки з частковим заливанням,
   таблиця альтернатив, що на телефоні стає картками. -------------------- */
.pt-dhead{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;border-bottom:3px double var(--pt-ink);padding-bottom:12px;margin:0}
.pt-dhead__k{font-family:var(--pt-insc);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-red);white-space:nowrap}
.pt-dhead h2{margin:0;font-size:clamp(22px,2.6vw,30px);line-height:1.15;font-weight:500}
.pt-sec--dark .pt-dhead{border-bottom-color:#EDE7DB}
.pt-sec--dark .pt-dhead__k{color:var(--pt-gold)}

.pt-dcrumb{font-family:var(--pt-insc);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-grey);margin:0 0 16px}
.pt-dcrumb i{font-style:normal;color:var(--pt-dot);margin:0 8px}

.pt-dplate{display:grid;grid-template-columns:1.35fr 1fr;gap:36px;align-items:end}
.pt-dplate>*{min-width:0}
.pt-dplate h1{margin:0 0 14px;font-size:clamp(30px,3.8vw,46px);line-height:1.1;font-weight:500;text-wrap:balance}
.pt-dplate__sub{font-size:15px;line-height:1.65;color:var(--pt-ink2);margin:0;max-width:58ch}
.pt-dplate__sub strong{color:var(--pt-ink)}
.pt-dplate__cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px}
.pt-dplate__cta .pt-btn{padding:14px 24px;font-size:14.5px;box-shadow:4px 4px 0 var(--pt-ink)}
.pt-dplate__cta .pt-btn:hover{box-shadow:6px 6px 0 var(--pt-ink)}
.pt-dplate__alt{font-size:14px;font-weight:600;border-bottom:1px solid var(--pt-dot);padding-bottom:2px}

.pt-idcard{border:1px solid var(--pt-ink);background:var(--pt-card);box-shadow:6px 6px 0 var(--pt-ink)}
.pt-idcard img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;background:var(--pt-band);border-bottom:1px solid var(--pt-ink)}
.pt-idcard__r{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px}
.pt-idcard__s{display:flex;align-items:baseline;gap:8px;min-width:0}
.pt-idcard__s b{font-family:var(--pt-disp);font-size:32px;font-weight:600;line-height:1;color:var(--rc,var(--pt-r2))}
.pt-idcard__s b i{font-style:normal;font-size:16px}
.pt-idcard__s small{font-size:12px;color:var(--pt-grey);line-height:1.4}
.pt-idcard__p{text-align:right;flex:none}
.pt-idcard__p em{display:block;font-style:normal;font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-grey);margin-bottom:2px}

.pt-panels{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:30px 0 0}
.pt-panels>*{min-width:0}
.pt-panel{border:1px solid var(--pt-ink);background:var(--pt-card);box-shadow:5px 5px 0 var(--pt-line);padding:22px 24px}
.pt-panel--tint{background:var(--pt-band)}
.pt-panel__k{font-family:var(--pt-insc);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-red);margin:0 0 6px}
.pt-panel h2{margin:0 0 4px;font-family:var(--pt-disp);font-weight:500;font-size:21px;border-bottom:3px double var(--pt-ink);padding-bottom:10px;line-height:1.2}
.pt-panel__d{font-size:13px;color:var(--pt-grey);margin:10px 0 12px;line-height:1.55}
.pt-panel__f{font-family:var(--pt-disp);font-style:italic;font-size:13px;color:var(--pt-ink2);margin:12px 0 0}
.pt-panel__f--rule{font-style:normal;font-family:var(--pt-ui);font-size:13.5px;line-height:1.6;border-top:1px solid var(--pt-hair2);padding-top:12px;margin-top:14px}

.pt-sub{padding:9px 0;border-bottom:1px solid var(--pt-line)}
.pt-sub__t{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.pt-sub__t b{font-size:14px;font-weight:600}
.pt-sub__t em{font-style:normal;font-family:var(--pt-disp);font-size:19px;font-weight:600;color:var(--sc)}
.pt-sub__bar{display:block;height:6px;background:#EEE8D9;margin-top:7px}
.pt-sub__bar i{display:block;height:100%;width:var(--sw);background:var(--sc)}
.pt-sub__n{display:block;font-size:12.5px;color:var(--pt-grey);margin-top:5px;line-height:1.5}

.pt-anat{display:flex;height:30px;border:1px solid var(--pt-ink);background:var(--pt-card)}
.pt-anat i{display:block;height:100%}
.pt-anat__l{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:12.5px;line-height:1.45}
.pt-anat__l strong{font-family:var(--pt-disp);font-size:15px;display:block}

.pt-optc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 0}
.pt-optc__b{position:relative;text-align:left;padding:14px 16px 16px;min-height:44px;cursor:pointer;background:var(--pt-card);border:1px solid var(--pt-hair2);border-top:3px solid var(--ac);box-shadow:2px 2px 0 var(--pt-line);transition:box-shadow .18s var(--pt-ease),border-color .18s var(--pt-ease);font:inherit;color:inherit;min-width:0}
.pt-optc__b:hover{border-color:var(--pt-ink)}
.pt-optc__b.is-on{border-color:var(--pt-ink);box-shadow:4px 4px 0 var(--pt-ink)}
.pt-optc__b[data-audio]{background:#F5ECD6}
.pt-optc__t{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ac)}
.pt-optc__n{display:block;font-weight:600;font-size:14px;margin:6px 0 2px;line-height:1.3}
.pt-optc__m{display:block;font-size:12px;color:var(--pt-grey)}
.pt-optc__g{display:inline-block;margin-top:8px;font-size:11px;font-weight:700;letter-spacing:.06em;padding:3px 8px;border:1px solid currentColor}
.pt-optc__g--a{color:var(--pt-ochre-deep);background:rgba(185,134,36,.16)}
.pt-optc__g--l{color:var(--pt-verd-deep);background:rgba(62,122,107,.12)}
.pt-optc__b .pt-price{margin-top:10px}

.pt-optd{border:1px solid var(--pt-ink);background:var(--pt-card);box-shadow:5px 5px 0 var(--pt-ink);padding:22px 26px;margin-top:14px}
.pt-optd__g{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:start}
.pt-optd__g>*{min-width:0}
.pt-optd__k{font-family:var(--pt-insc);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--pt-red);margin:0 0 10px}
.pt-optd p{margin:0 0 12px;font-size:14.5px;line-height:1.65;color:var(--pt-ink2)}
.pt-optd .pt-btn{margin-top:2px}
.pt-optsw{display:none}

.pt-cmp{width:100%;border-collapse:collapse;font-size:12.5px}
.pt-cmp th{text-align:left;padding:6px 8px 6px 0;font-family:var(--pt-insc);font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;border-bottom:2px solid var(--pt-ink);white-space:nowrap}
.pt-cmp td{padding:8px 8px 8px 6px;border-bottom:1px solid var(--pt-line);border-left:3px solid transparent;line-height:1.4}
.pt-cmp td:not(:first-child){border-left:0}
.pt-cmp tbody tr{cursor:pointer}
.pt-cmp tbody tr:hover td{background:#F7F3EA}
.pt-cmp tr.is-on td{background:#F5ECD6}
.pt-cmp tr.is-on td:first-child{border-left-color:var(--pt-red)}
.pt-cmp .n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.pt-cmp__f{margin:10px 0 0;font-size:12px;line-height:1.55;color:var(--pt-ink2)}

.pt-inv{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:24px 0 0}
.pt-inv>*{min-width:0}
.pt-inv__c{border:1px solid var(--pt-ink);background:var(--pt-card);border-top:4px solid var(--ic)}
.pt-inv__k{font-family:var(--pt-insc);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ic);margin:0;padding:14px 20px 8px}
.pt-inv__c>div{display:flex;gap:14px;padding:11px 20px;border-top:1px solid var(--pt-line)}
.pt-inv__c i{font-style:normal;color:var(--pt-paper);font-weight:700;background:var(--ic);width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:12px;margin-top:2px}
.pt-inv__c p{margin:0;font-size:14px;line-height:1.6;color:var(--pt-ink2)}
.pt-inv__c p strong{font-weight:600;color:var(--pt-ink)}

.pt-strip{border:1px solid var(--pt-ink);background:var(--pt-card);box-shadow:5px 5px 0 var(--pt-line);padding:20px 22px;overflow-x:auto;contain:paint;margin-top:24px}
.pt-strip ol{list-style:none;display:flex;gap:0;margin:0;padding:0;min-width:740px}
.pt-strip li{flex:1;min-width:0;padding:0 14px 0 0}
.pt-strip__r{display:block;height:3px;background:var(--pt-ink);position:relative}
.pt-strip__r i{position:absolute;left:0;top:-4px;width:10px;height:10px;background:var(--dc);transform:rotate(45deg)}
.pt-strip b{display:block;font-family:var(--pt-disp);font-size:13.5px;font-weight:600;margin-top:10px}
.pt-strip span{display:block;font-size:12px;color:var(--pt-grey);margin-top:2px;line-height:1.45}
.pt-strip__f{margin:14px 0 0;font-size:12.5px;color:var(--pt-grey)}

.pt-figs3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 0}
.pt-figs3 figure{margin:0;border:1px solid var(--pt-ink);background:var(--pt-card);padding:6px}
.pt-figs3 img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:var(--pt-band)}
.pt-figs3 figcaption{font-family:var(--pt-disp);font-style:italic;font-size:12px;color:var(--pt-grey);padding:7px 4px 2px;line-height:1.5}

.pt-ledg2{display:grid;grid-template-columns:1fr 1fr;gap:20px 44px;margin:28px 0 0}
.pt-ledg2>div{display:flex;gap:16px;min-width:0}
.pt-ledg2 b{font-family:var(--pt-disp);font-size:22px;color:var(--pt-gold);line-height:1.2;min-width:36px;flex:none;font-weight:500}
.pt-ledg2 p{margin:0;font-size:14px;line-height:1.65;color:#C7BEAE}
.pt-ledg2 p strong{color:#FAF8F3;font-weight:600}

.pt-alts{width:100%;border-collapse:collapse;font-size:14px;margin-top:20px}
.pt-alts th{text-align:left;padding:12px 16px 12px 0;font-family:var(--pt-insc);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;border-bottom:2px solid var(--pt-ink)}
.pt-alts th:last-child,.pt-alts td:last-child{text-align:right;padding-right:0}
.pt-alts td{padding:14px 12px 14px 0;border-bottom:1px solid var(--pt-hair2);vertical-align:top;line-height:1.45}
.pt-alts tr:hover td{background:#EEE8D9}
.pt-alts a{font-weight:600;color:var(--pt-ink);border-bottom:1px solid var(--pt-dot)}
.pt-alts a:hover{color:var(--pt-red)}
.pt-alts em{display:block;font-family:var(--pt-disp);font-style:italic;color:var(--pt-grey);font-size:13px;margin-top:3px}
.pt-alts__f{margin:16px 0 0;font-size:13px;line-height:1.6;color:var(--pt-ink2);max-width:78ch}

.pt-qa2{display:grid;grid-template-columns:1fr 1fr;gap:6px 44px;margin:14px 0 0}
.pt-qa2>div{border-bottom:1px solid var(--pt-line);padding:14px 0 16px;min-width:0}
.pt-qa2 h3{font-family:var(--pt-disp);font-weight:500;font-size:17.5px;margin:0 0 8px;letter-spacing:0}
.pt-qa2 p{margin:0;font-size:14px;line-height:1.65;color:var(--pt-ink2)}

.pt-method{border-top:2px solid var(--pt-ink);margin:36px 0 0;padding:14px 0 0;font-size:13px;line-height:1.65;color:var(--pt-ink2);max-width:86ch}
.pt-method b{font-family:var(--pt-insc);letter-spacing:.18em;font-size:11px;color:var(--pt-red);font-weight:500}

@media(max-width:1080px){.pt-optd__g{grid-template-columns:minmax(0,1fr)}}
@media(max-width:980px){
  .pt-dplate,.pt-panels,.pt-figs3,.pt-qa2,.pt-ledg2,.pt-inv{grid-template-columns:minmax(0,1fr)}
  .pt-ledg2{gap:18px}
}
/* Перемикач опцій на телефоні: горизонтальна стрічка зі снапом.
   Картки перестають з'їдати екран, панель деталей лишається одразу під ними,
   а сусідня картка визирає з краю — видно, що це стрічка, а не список. */
@media(max-width:720px){
  .pt-optc{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;contain:paint;gap:10px;padding:2px 2px 10px;margin:14px -2px 0;
    scrollbar-width:thin}
  .pt-optc__b{flex:0 0 78%;scroll-snap-align:start;padding:12px 14px 14px}
  .pt-optc__b.is-on{box-shadow:3px 3px 0 var(--pt-ink)}
  .pt-optc__n{font-size:13.5px}
  .pt-optd{margin-top:2px;padding:18px 18px 20px}
  .pt-optd__k{margin-bottom:8px;letter-spacing:.14em;font-size:10px}
  .pt-optd p{font-size:14px}
  .pt-optsw{display:flex;align-items:center;gap:10px;margin:12px 0 0;font-size:12.5px;
    line-height:1.4;color:var(--pt-grey)}
  .pt-optsw span{flex:0 1 auto;min-width:0}
  .pt-optsw::after{content:"";flex:1 1 24px;height:0;border-top:1px dotted var(--pt-dot)}
  .pt-optsw b{font-weight:700;color:var(--pt-ink)}
}

@media(max-width:860px){
  .pt-optc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-alts thead{display:none}
  .pt-alts,.pt-alts tbody{display:block;width:100%}
  .pt-alts tr{display:grid;grid-template-columns:1fr 1fr;gap:2px 14px;border:1px solid var(--pt-line);border-top:3px solid var(--pt-ink);margin-bottom:12px;padding:12px 14px;background:var(--pt-card)}
  .pt-alts td{display:block;padding:5px 0;border:0;text-align:left}
  .pt-alts td:first-child{grid-column:1/-1}
  .pt-alts td:last-child{text-align:left}
  .pt-alts td[data-th]::before{content:attr(data-th);display:block;font-family:var(--pt-insc);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-grey);margin-bottom:3px}
}
@media(max-width:560px){
  .pt-idcard__r{flex-direction:column;align-items:flex-start;gap:10px}
  .pt-idcard__s small{line-height:1.5}
  .pt-idcard__p{text-align:left}
  /* таблиця порівняння → картки з рівною сіткою «підпис / значення» */
  .pt-cmp{display:block;width:100%}
  .pt-cmp thead{display:none}
  .pt-cmp tbody,.pt-cmp tr,.pt-cmp td{display:block;width:100%}
  .pt-cmp tr{border:1px solid var(--pt-line);border-top:3px solid var(--pt-ink);background:var(--pt-card);padding:12px 14px 10px;margin:0 0 10px}
  .pt-cmp tr.is-on{background:#F5ECD6;border-color:var(--pt-ink)}
  .pt-cmp tr.is-on td{background:none}
  .pt-cmp td{display:flex;align-items:baseline;gap:12px;border:0;padding:4px 0;text-align:left}
  .pt-cmp td.n{text-align:left}
  .pt-cmp td::before{content:attr(data-label);flex:0 0 84px;font-family:var(--pt-insc);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--pt-grey);position:static;width:auto;text-align:left;line-height:1.75}
  .pt-cmp td:first-child{display:block;padding:0 0 8px;margin-bottom:6px;border-bottom:1px solid var(--pt-line)}
  .pt-cmp td:first-child::before{content:none}
  .pt-cmp td:first-child b{font-family:var(--pt-disp);font-size:16px;font-weight:600;color:var(--pt-ink)}
  .pt-cmp td .pt-price{font-size:17px}
  .pt-anat__l{flex-direction:column;gap:6px}
  .pt-anat__l span{text-align:left!important}
}

/* --- SERVICE PAGES (about / contact / privacy / disclosure) -------------- */
.pt-doc{max-width:820px;margin:0 auto;padding:clamp(26px,3.2vw,40px) var(--pt-pad) clamp(46px,5vw,70px)}
.pt-doc__crumb{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--pt-grey);margin:0 0 14px}
.pt-doc h1{font-size:clamp(28px,3.6vw,42px);line-height:1.12;margin:0 0 14px}
.pt-doc__lede{font-size:16.5px;line-height:1.62;color:var(--pt-ink2);margin:0 0 6px;max-width:66ch}
.pt-doc__meta{font-family:var(--pt-insc);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--pt-faint);margin:20px 0 0;padding-top:14px;border-top:1px solid var(--pt-line)}
.pt-doc h2{font-size:clamp(19px,2vw,23px);line-height:1.25;margin:38px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--pt-ink)}
.pt-doc h3{font-family:var(--pt-ui);font-size:14px;font-weight:700;letter-spacing:.01em;margin:22px 0 6px;color:var(--pt-ink)}
.pt-doc p{font-size:15.5px;line-height:1.68;color:var(--pt-ink2);margin:0 0 12px;max-width:72ch}
.pt-doc p strong{color:var(--pt-ink)}
.pt-doc ul{margin:0 0 14px;padding:0;list-style:none;max-width:72ch}
.pt-doc li{position:relative;padding-left:18px;font-size:15px;line-height:1.6;color:var(--pt-ink2);margin:0 0 8px}
.pt-doc li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;background:var(--pt-dot)}
.pt-doc li b,.pt-doc li strong{color:var(--pt-ink)}
.pt-doc a{border-bottom:1px solid var(--pt-dot)}
.pt-doc table{width:100%;border-collapse:collapse;margin:6px 0 14px;font-size:13.5px}
.pt-doc th{font-family:var(--pt-insc);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--pt-grey);font-weight:500;text-align:left;padding:0 12px 7px 0;border-bottom:1px solid var(--pt-ink)}
.pt-doc td{padding:10px 12px 10px 0;border-bottom:1px solid var(--pt-line);color:var(--pt-ink2);line-height:1.5;vertical-align:top}
.pt-doc td code{font-size:12.5px;color:var(--pt-ink);background:var(--pt-band);padding:1px 5px}
.pt-doc__note{border-left:3px solid var(--pt-verd);background:var(--pt-verd-tint);padding:12px 16px;margin:14px 0 16px;max-width:72ch}
.pt-doc__note p{margin:0;font-size:14.5px;color:var(--pt-ink2)}
.pt-doc__links{display:flex;flex-wrap:wrap;gap:10px 18px;margin:26px 0 0;padding-top:16px;border-top:1px solid var(--pt-line)}
.pt-doc__links a{font-size:14px;font-weight:600;border-bottom:1px solid var(--pt-dot);padding-bottom:2px}
@media(max-width:620px){
  .pt-doc{padding-left:20px;padding-right:20px}
  .pt-doc table,.pt-doc thead,.pt-doc tbody,.pt-doc tr,.pt-doc td{display:block;width:100%}
  .pt-doc thead{display:none}
  .pt-doc tr{border-bottom:1px solid var(--pt-ink);padding:10px 0}
  .pt-doc td{border:0;padding:3px 0 3px 42%;position:relative}
  .pt-doc td::before{content:attr(data-label);position:absolute;left:0;top:3px;width:38%;font-family:var(--pt-insc);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--pt-grey)}
}

/* --- HERO PHOTO (guide mast) ------------------------------------------- */
.pt-hshot{margin:0;position:relative;border:1px solid var(--pt-ink);background:var(--pt-card);box-shadow:6px 6px 0 var(--pt-line)}
.pt-hshot img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.pt-hshot figcaption{padding:10px 14px 11px;border-top:1px solid var(--pt-line);font-family:var(--pt-disp);font-size:13px;line-height:1.45;color:var(--pt-grey)}
.pt-hshot__tag{position:absolute;top:0;left:0;background:var(--pt-dark);color:#F5EFE2;font-family:var(--pt-insc);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;padding:5px 9px}
@media(max-width:900px){.pt-hshot{margin-top:26px;box-shadow:4px 4px 0 var(--pt-line)}.pt-hshot img{aspect-ratio:4/3}}
.pt-evid{margin:0 0 22px;border:1px solid var(--pt-line);background:var(--pt-card)}
.pt-evid img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.pt-evid figcaption{padding:11px 14px;font-family:var(--pt-disp);font-size:13.5px;line-height:1.5;color:var(--pt-grey);border-top:1px solid var(--pt-line)}
.pt-evid--in{margin:-24px -24px 16px;border:0;border-bottom:1px solid var(--pt-line);background:none}
.pt-evid--in img{aspect-ratio:16/7}

/* дві двері — комерційний вихід із секції витрат, обидві однакової ваги */
.pt-doors{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
.pt-door{border:1px solid var(--pt-ink);background:var(--pt-card);padding:20px 22px;display:flex;flex-direction:column;min-width:0}
.pt-door--book{box-shadow:5px 5px 0 var(--pt-ink)}
.pt-door b{font-family:var(--pt-insc);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--pt-grey);font-weight:500}
.pt-door p{margin:10px 0 16px;font-size:14.5px;line-height:1.6;flex:1}
.pt-door .pt-btn,.pt-door .pt-mast__alt{align-self:flex-start}
@media(max-width:760px){.pt-doors{grid-template-columns:1fr}}

/* редакційне посилання в рядку таблиці — підпорядковане кнопці */
.pt-more{display:inline-block;margin-top:6px;font-family:var(--pt-disp);font-size:13px;color:var(--pt-verd);border-bottom:1px solid var(--pt-line)}
.pt .pt-more:hover{color:var(--pt-verd-deep);border-bottom-color:var(--pt-verd);text-decoration:none}

/* ---------- LEGACY: сумісність зі сторінками, які ще не переведені ---------- */
.pt-chip--price{font-family:var(--pt-disp);font-size:17px;font-weight:600;padding:2px 10px;border:0;border-left:3px solid var(--tc);color:var(--tc);background:var(--tcb)}
.pt-chip--rating{background:var(--pt-t2-bg);border-color:transparent;color:var(--pt-ochre-deep);font-variant-numeric:tabular-nums}
.pt-badge--flat{position:static;transform:none;display:inline-block;top:auto;right:auto;font-size:9.5px;letter-spacing:.16em;padding:3px 7px;--bc:var(--pt-grey);--bcb:transparent}
.pt-badge--red{--bc:#A23020}
.pt-badge--verd{--bc:#3E7A6B}
.pt-badge--ochre{--bc:#8A6410}
.pt-tier--best{--tc:var(--pt-t1);--tcb:var(--pt-t1-bg)}
.pt-tier--combo{--tc:var(--pt-t3);--tcb:var(--pt-t3-bg)}
