/* plinkoslot.online — архетип pennant, namespace pnt */

:root{
  --bg:#FFFFFF;          /* фон страницы — светлая тема, как на оригинале */
  --bg-soft:#FFF6F9;     /* очень светлая розовая подложка */
  --surface:#FFE6EF;     /* заливка секций и карточек */
  --surface-2:#FFD3E2;   /* вторая заливка, таблицы и выделенные блоки */
  --line:#FFB9D0;        /* границы, разделители, рамки таблиц */
  --pink:#FF6FA3;        /* основной акцент, фон главной кнопки */
  --pink-soft:#FF9FBD;   /* ховер, второстепенные акценты */
  --pink-mid:#E85F91;    /* активное состояние */
  --pink-deep:#D94F85;   /* нажатие */
  --plum:#4A1D2C;        /* основной текст */
  --plum-soft:#4E3441;   /* подписи, второстепенный текст */
  --gold:#FFBF19;        /* рейтинг, значки, акцент в цифрах */
  --green:#15AC24;       /* «да» в таблицах сравнения */
  --red:#E40539;         /* «нет» в таблицах сравнения */
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--bg);
  color:var(--plum);
  font-family:"Ysabeau","Segoe UI",system-ui,sans-serif;
  font-size:17px;
  line-height:1.62;
  overflow-x:hidden;
}

h1,h2,h3,.pnt-mark,.pnt-btn,.pnt-kpi-num{
  font-family:"Neucha","Ysabeau",cursive,sans-serif;
  font-weight:400;
  letter-spacing:.01em;
}

a{color:var(--pink-mid)}

p{margin:0 0 1.05rem}

.pnt-wrap{max-width:1060px;margin:0 auto;padding:0 20px}

/* ——— растяжка: лента треугольных вымпелов ——— */
.pnt-bunting{
  height:16px;
  background-image:
    linear-gradient(135deg,var(--pink) 50%,transparent 50%),
    linear-gradient(-135deg,var(--pink) 50%,transparent 50%);
  background-size:26px 16px;
  background-repeat:repeat-x;
}
.pnt-bunting-soft{
  background-image:
    linear-gradient(135deg,var(--surface-2) 50%,transparent 50%),
    linear-gradient(-135deg,var(--surface-2) 50%,transparent 50%);
}

/* ——— шапка: лого слева, кнопки-флажки справа на растяжке ——— */
.pnt-header{
  position:sticky;
  top:0;
  z-index:40;
  background:var(--bg);
  border-bottom:2px solid var(--line);
}
.pnt-head-inner{
  max-width:1060px;
  margin:0 auto;
  padding:.55rem 20px .35rem;
  display:flex;
  align-items:center;
  gap:16px;
}
.pnt-mark{
  font-size:1.6rem;
  line-height:1.1;
  color:var(--plum);
  white-space:nowrap;
}
.pnt-mark-pin{color:var(--pink)}
.pnt-mark-tail{color:var(--pink-mid);font-size:1.15rem}
.pnt-rope{
  flex:1 1 auto;
  height:3px;
  min-width:14px;
  background:linear-gradient(90deg,var(--line),var(--pink-soft));
  border-radius:2px;
}
.pnt-flags{
  display:flex;
  align-items:flex-start;
  gap:10px;
  position:relative;
  padding-top:9px;
}
.pnt-flags::before{
  content:"";
  position:absolute;
  left:-6px;right:-6px;top:3px;
  height:3px;
  background:var(--pink-soft);
  border-radius:2px;
}
.pnt-flag{position:relative;display:block}
.pnt-flag::before{
  content:"";
  position:absolute;
  top:-9px;
  left:50%;
  margin-left:-9px;
  width:18px;
  height:9px;
  background:var(--gold);
  clip-path:polygon(0 0,100% 0,50% 100%);
}
.pnt-flag-lead::before{background:var(--pink)}

/* ——— кнопки ——— */
.pnt-btn{
  display:inline-block;
  padding:.625rem 1.25rem;
  border-radius:20px;
  text-transform:uppercase;
  text-decoration:none;
  font-size:.95rem;
  white-space:nowrap;
  transition:background .15s,color .15s;
}
.pnt-btn-main{
  background:var(--pink);
  color:#FFFFFF;
  border:2px solid var(--pink);
}
.pnt-btn-main:hover{background:var(--pink-mid);border-color:var(--pink-mid)}
.pnt-btn-main:active{background:var(--pink-deep);border-color:var(--pink-deep)}
.pnt-btn-ghost{
  background:transparent;
  color:var(--pink);
  border:2px solid var(--pink);
}
.pnt-btn-ghost:hover{background:var(--surface)}
.pnt-btn-wide{font-size:1.05rem;padding:.75rem 1.9rem}

/* ——— первый экран ——— */
.pnt-hero{
  background:var(--bg-soft);
  border-bottom:2px solid var(--line);
  padding:2.2rem 0 2rem;
}
.pnt-hero h1{
  font-size:2.35rem;
  line-height:1.18;
  margin:.2rem 0 .9rem;
  max-width:19ch;
}
.pnt-hero h1 span{color:var(--pink-mid)}
.pnt-lead{font-size:1.1rem;max-width:64ch;color:var(--plum-soft)}
.pnt-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:start}

.pnt-kpi{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:8px;
  margin:1.3rem 0 1.2rem;
}
.pnt-kpi-cell{
  background:var(--surface);
  border:2px solid var(--line);
  border-radius:12px 12px 12px 12px;
  padding:.6rem .5rem 1.05rem;
  text-align:center;
  position:relative;
  clip-path:polygon(0 0,100% 0,100% 78%,50% 100%,0 78%);
}
.pnt-kpi-num{display:block;font-size:1.32rem;color:var(--pink-mid);line-height:1.2}
.pnt-kpi-cap{display:block;font-size:.78rem;color:var(--plum-soft);line-height:1.3}

/* ——— секции ——— */
.pnt-sec{padding:2rem 0 1.5rem}
.pnt-sec-tint{background:var(--surface)}
.pnt-sec-pale{background:var(--bg-soft)}
.pnt-sec h2{
  font-size:1.72rem;
  line-height:1.24;
  margin:.2rem 0 .85rem;
  padding-left:26px;
  position:relative;
  max-width:34ch;
}
.pnt-sec h2::before{
  content:"";
  position:absolute;
  left:0;top:.5em;
  width:17px;height:15px;
  background:var(--pink);
  clip-path:polygon(0 0,100% 0,100% 55%,50% 100%,0 55%);
}
.pnt-sec h3{
  font-size:1.24rem;
  margin:1.4rem 0 .5rem;
  color:var(--pink-deep);
}
.pnt-sec ul{margin:0 0 1.05rem;padding-left:1.15rem}
.pnt-sec li{margin-bottom:.32rem}

.pnt-num{color:var(--pink-deep)}
.pnt-hi{color:var(--pink-mid)}
.pnt-gold{color:var(--gold)}
.pnt-yes{color:var(--green)}
.pnt-no{color:var(--red)}

.pnt-cols{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.pnt-card{
  background:var(--bg);
  border:2px solid var(--line);
  border-radius:14px;
  padding:1rem 1.1rem .6rem;
}
.pnt-card-tint{background:var(--surface-2);border-color:var(--pink-soft)}

/* ——— SVG-фигуры ——— */
.pnt-fig{margin:1.1rem 0 1.3rem}
.pnt-fig svg{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  background:var(--bg);
  border:2px solid var(--line);
  border-radius:14px;
}
.pnt-fig figcaption{
  font-size:.86rem;
  color:var(--plum-soft);
  margin-top:.45rem;
  padding-left:2px;
}
.pnt-fig-sm svg{max-width:520px}

/* ——— таблицы ——— */
.pnt-tbl-wrap{overflow-x:auto;margin:0 0 1.2rem;border-radius:10px}
table.pnt-tbl{
  border-collapse:collapse;
  width:100%;
  min-width:520px;
  border:1px solid var(--plum);
  background:var(--bg);
  font-size:.94rem;
}
table.pnt-tbl caption{
  caption-side:top;
  text-align:left;
  font-size:.88rem;
  color:var(--plum-soft);
  padding:0 0 .4rem;
}
table.pnt-tbl th,table.pnt-tbl td{
  border:1px solid var(--plum);
  padding:.45rem .6rem;
  text-align:center;
}
table.pnt-tbl thead th{background:var(--surface-2)}
table.pnt-tbl tbody tr:nth-child(even) td{background:var(--bg-soft)}

/* ——— клуб ——— */
.pnt-club{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:1rem 0 1.3rem}
.pnt-club-step{
  background:var(--surface-2);
  border:2px solid var(--pink-soft);
  padding:.65rem .5rem 1.15rem;
  text-align:center;
  clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%);
}
.pnt-club-name{display:block;font-size:1.02rem;color:var(--plum)}
.pnt-club-val{display:block;font-size:.8rem;color:var(--plum-soft)}

/* ——— FAQ ——— */
.pnt-faq details{
  border:2px solid var(--line);
  border-radius:12px;
  background:var(--bg);
  margin-bottom:.55rem;
  padding:.1rem .9rem;
}
.pnt-faq summary{
  cursor:pointer;
  padding:.62rem 0;
  font-size:1.03rem;
  color:var(--pink-deep);
  list-style:none;
}
.pnt-faq summary::-webkit-details-marker{display:none}
.pnt-faq summary::before{
  content:"";
  display:inline-block;
  width:13px;height:11px;
  margin-right:9px;
  background:var(--pink-soft);
  clip-path:polygon(0 0,100% 0,50% 100%);
}
.pnt-faq details[open] summary::before{background:var(--gold)}
.pnt-faq p{margin:0 0 .8rem;color:var(--plum-soft)}

/* ——— отзыв ——— */
.pnt-quote{
  border-left:5px solid var(--pink);
  background:var(--bg);
  padding:.8rem 1rem .3rem;
  border-radius:0 12px 12px 0;
  margin:1.1rem 0;
}
.pnt-quote-sign{font-size:.85rem;color:var(--plum-soft)}

/* ——— блок источников и второй CTA ——— */
.pnt-sources{background:var(--surface-2);padding:2rem 0 1.8rem;border-top:2px solid var(--line)}
.pnt-cta-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:1.1rem}
.pnt-cta-note{font-size:.88rem;color:var(--plum-soft);max-width:44ch}

/* ——— подвал ——— */
.pnt-footer{background:var(--bg);padding:1.6rem 0 2.2rem;font-size:.9rem;color:var(--plum-soft)}
.pnt-footer p{margin:0 0 .5rem}
.pnt-legal{color:var(--plum)}
.pnt-age{
  display:inline-block;
  margin-top:.5rem;
  padding:.4rem .9rem;
  border:2px dashed var(--pink-soft);
  border-radius:14px;
  color:var(--plum);
}

/* ——— телефон ——— */
@media (max-width:640px){
  body{font-size:16px}
  .pnt-wrap{padding:0 14px}
  .pnt-head-inner{padding:.5rem 14px .3rem;gap:8px;flex-wrap:nowrap}
  .pnt-mark{font-size:1.16rem}
  .pnt-mark-tail{font-size:.9rem}
  .pnt-rope{min-width:8px}
  .pnt-flags{gap:6px;padding-top:8px}
  .pnt-btn{padding:.5rem .7rem;font-size:.76rem}
  .pnt-hero h1{font-size:1.72rem;max-width:none}
  .pnt-hero-grid{grid-template-columns:1fr;gap:16px}
  .pnt-kpi{grid-template-columns:repeat(2,1fr)}
  .pnt-kpi-cell:last-child{grid-column:1 / -1}
  .pnt-sec h2{font-size:1.4rem;max-width:none}
  .pnt-cols{grid-template-columns:1fr;gap:16px}
  .pnt-club{grid-template-columns:1fr 1fr}
  .pnt-club-step:last-child{grid-column:1 / -1}
  .pnt-fig svg{border-radius:10px}
  .pnt-btn-wide{width:100%;text-align:center}
}
