/* Ровная сетка для блога категории */
.blog-grid{
  display:grid !important;
  grid-template-columns: repeat(var(--cols, 3), minmax(0,1fr));
  gap: 1.2rem;
}
.blog-card{ min-width:0; }
.head-action {
    display: block !important;
}
/* Адаптив */
@media (max-width: 992px){
  .blog-grid{ grid-template-columns: repeat(min(var(--cols, 3), 2), 1fr); }
}
@media (max-width: 576px){
  .blog-grid{ grid-template-columns: 1fr; }
}
.page-header h2, .categories-list h2 {
    font-size: 1.3rem;
    margin: 0;
}

.small-text{
	
}

.mod-languages  .form-control, .mod-languages .inputbox {
    display: block;
    width: 100%;
    height: calc(2.6rem + 4px);
    padding: .5rem 1rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 2px solid #edf5ff;
    border-radius: 8px;
    transition: border-color .15s 
ease-in-out, box-shadow .15s 
ease-in-out;
}

.press .item-intro{
	display: none !important;
}

.t4-content-inner {
    box-shadow: none;
    margin: auto;
    max-width: 100%;
    overflow-x: hidden;
}

.com-content-article {
    padding: 0px 0px;
}

.tp-qr-caption a{
	color: #fff;
}

.map_home{margin-top: 130px;}

.item-144 .page-header{
	display: none !important; 
}

.item-450 .page-header{
	display: none !important; 
}

.t4-section-2{
	padding-top: 100px !important;
}

.t4-section-3{
	padding-top: 0px !important;
}

.acm-slideshow .item {
    background: #12114a;
    -ms-flex-line-pack: center;
    align-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
;
    display: block \9;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    height: 1000px;
}

/* Фон слайдов */
.acm-slideshow .item {
  position: relative;
}

/* Картинка без прозрачности */
.acm-slideshow .item > .background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: 50% 50% !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  opacity: 0.3 !important; /* картинка полностью видимая */
}

/* Полупрозрачный слой поверх */
.acm-slideshow .item > .background::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.3); /* здесь регулируешь прозрачность */
  pointer-events: none;
}

/* Убираем их лишние затемнения, если есть */
.acm-slideshow::before,
.acm-slideshow::after,
.acm-slideshow .item::before,
.acm-slideshow .item::after {
  display: none !important;
}


/* === Fix slideshow height (responsive) === */
.acm-slideshow .item {
    height: 100vh;
    min-height: 520px;
    max-height: 900px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: -80px;
    padding-top: 50px;
}

/* фон уже cover — оставляем как есть */

/* Мобильные: компактнее */
@media (max-width: 768px){
  .acm-slideshow .item{
    height: 100vh;             /* ~60% высоты экрана */
    min-height: 360px;        /* запас для маленьких экранов */
    max-height: 640px;
	margin-bottom: -80px;
    padding-top: 0px;
  }
}

/* Очень маленькие устройства */
@media (max-width: 420px){
  .acm-slideshow .item{
    height: 100vh;
    min-height: 300px;
    max-height: 520px;
	  margin-bottom: -30px;
    padding-top: 50px;
  }
}

#droppicsgallery12.droppicsgalleryheapshot ul .img {
    width: 80% !important;
}

/* Section 2 (clean, updated) */
.droppicsgalleryheapshot { position: relative; margin: 0; box-sizing: border-box; }
.tranaevent__container p { margin-bottom: 0; font-size: 17px;
    color: #333; }

.tranaevent.about.clean { padding: 0; background: transparent; }
.tranaevent__container { width: 100%; margin: 0 auto; }

.tranaevent__title {
  margin: 0 0 30px;
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.15; font-weight: 800; letter-spacing: -0.02em; text-align: center;
}

.tranaevent__intro {
  max-width: 100%; margin: 0 auto 36px; text-align: left;
  color: #2b2b2b; font-size: clamp(16px, 2.2vw, 18px); line-height: 1.7;
}

.tranaevent__note { margin-top: 10px; font-size: clamp(16px, 2.2vw, 18px); line-height: 1.7; color: #2b2b2b; }

.tranaevent__subtitle-main { margin: 6px 0 40px; font-size: clamp(20px, 2.6vw, 26px); font-weight: 700; text-align: center; }

.tranaevent__split { display: grid; gap: 32px; align-items: start; }

/* Ключ: треки через minmax(0, fr), а элементам — min-width:0 */
.tranaevent__split--40-60 { grid-template-columns: minmax(0, 0.5fr) minmax(0, 0.5fr); }
.tranaevent__media, .tranaevent__content { min-width: 0; }

.tranaevent__media { margin: 0; border-radius: 16px; position: relative; overflow: visible; }
.tranaevent__media img { display: block; width: 100%; height: auto; }

/* Принуждаем контейнер галереи вписаться в колонку */
.tranaevent__media .droppicsgalleryheapshot,
.tranaevent__media .droppicsgalleryheapshot > ul {
  width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important;
}

/* Если тема задаёт ширину элементам — не даём её раздувать колонку */
.tranaevent__media .droppicsgalleryheapshot ul .img {
  max-width: 100% !important;
}

/* Список */
.tranaevent__list {
  list-style: none; padding: 0; margin: 0 0 12px;
  display: grid; gap: 12px; color: #333; font-size: 17px; line-height: 1.65;
}
.tranaevent__list li { position: relative; padding-left: 32px; }
.tranaevent__list li::before {
  content: "✓"; position: absolute; left: 0; top: 0.08em; font-weight: 800; font-size: 16px;
  width: 26px; height: 26px; display: inline-grid; place-items: center; border-radius: 6px;
  color: #fff; background: linear-gradient(135deg, #ff4db8 0%, #7b61ff 100%);
}

.tranaevent__recognition { margin: 6px 0 0; font-size: 15.5px; line-height: 1.6; color: #333a56; }

/* Адаптив */
@media (max-width: 1024px) {
  .tranaevent__container { width: min(100%, 94vw); }
  .tranaevent__split--40-60 { grid-template-columns: 1fr; }
  .tranaevent__intro { max-width: 100%; }
  #droppicsgallery12.droppicsgalleryheapshot ul .img {
    width: 100% !important;
}
	.tranaevent__media{
		padding: 20px;
	}
}

.tranaevent__subtitle{
	text-align: center;
}
/* Section 3: About the Event (RSVP styled to match) */
.tranaevent.about-event.clean{ padding:56px 0; background:transparent; }
.tranaevent__title{ margin:0 0 22px; }

.tranaevent.about-event .tranaevent__subtitle{
  margin:0 0 10px; font-size:clamp(18px,2.2vw,22px); font-weight:700;
}

.tranaevent__split--55-45{
  display:grid;
  grid-template-columns:minmax(0,0.55fr) minmax(0,0.45fr);
  gap:32px; align-items:start;
}
.tranaevent__content{ min-width:0; }

/* checklist (shared) */
.tranaevent.about-event .tranaevent__list{
  list-style:none; padding:0; margin:8px 0 14px;
  display:grid; gap:10px; font-size:16px; line-height:1.65; color:#333a56;
}
.tranaevent.about-event .tranaevent__list li{
  position:relative; padding-left:32px;
}
.tranaevent.about-event .tranaevent__list li::before{
  content:"✓"; position:absolute; left:0; top:0.08em;
  width:22px; height:22px; display:inline-grid; place-items:center;
  font-weight:800; font-size:14px; color:#fff; border-radius:6px;
  background:linear-gradient(135deg,#ff4db8 0%, #7b61ff 100%);
}

/* compact list variant for RSVP */
.tranaevent__list--compact{ gap:8px; font-size:15.5px; }

/* notes and links */
.tranaevent.about-event .tranaevent__note{ margin:6px 0 8px; color:#333a56; }
.tranaevent__rsvp-lead{ margin:8px 0 6px; color:#1f2552; }
.tranaevent__rsvp-link a{ color:#7b61ff; text-decoration:underline; }
.tranaevent__rsvp-sep{ margin:0 6px; color:#9aa0b6; }

/* left column — keep info+CTA tidy */
.tranaevent__content--left{ display:flex; flex-direction:column; }
.tranaevent__info--inline{
  margin-top:10px; padding-top:16px;
  display:grid; grid-template-columns:1fr auto 1fr; gap:18px;
  align-items:center; border-top:1px solid rgba(31,37,82,.15);
}
.tranaevent__divider{ width:1px; height:44px; background:rgba(31,37,82,.15); }
.tranaevent__info-item{ display:flex; align-items:flex-start; gap:12px; }
.tranaevent__info-ico{
  width:32px; height:32px; border-radius:50%;
  background:linear-gradient(135deg,#ff4db8 0%, #7b61ff 100%);
  display:grid; place-items:center; flex:0 0 32px;
}
.tranaevent__info-ico svg{ width:16px; height:16px; }
.tranaevent__info-text{ color:#1f2552; line-height:1.5; }
.tranaevent__info-text strong{ font-weight:800; }

.tranaevent__cta--inline{ margin-top:18px; display:flex; justify-content:center; }
.tranaevent__btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:14px 28px; border-radius:9999px; font-weight:800;
  letter-spacing:.02em; text-transform:uppercase; text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease;
  -webkit-tap-highlight-color: transparent;
}
.tranaevent__btn--primary{
  background:linear-gradient(135deg,#ff4db8 0%, #7b61ff 100%);
  color:#fff; box-shadow:0 8px 24px rgba(123,97,255,.35);
}
.tranaevent__btn--primary:hover{ transform:translateY(-1px); box-shadow:0 12px 28px rgba(123,97,255,.45); }
.tranaevent__btn--primary:focus-visible{ outline:2px solid #7b61ff; outline-offset:3px; }

/* responsive */
@media (max-width:1024px){
  .tranaevent.about-event.clean{ padding:40px 0; }
  .tranaevent__split--55-45{ grid-template-columns:1fr; gap:22px; }

  .tranaevent__info--inline{
    grid-template-columns:1fr; gap:12px;
  }
  .tranaevent__divider{ display:none; }
  .tranaevent__info-item{ justify-content:center; text-align:center; }
}



/* Section 3: About the Event (RSVP styled to match) */
.tranaevent.about-event.clean{ padding:56px 0; background:transparent; }
.tranaevent__title{ margin:0 0 22px; }

.tranaevent.about-event .tranaevent__subtitle{
  margin:30px 0 10px; font-size:clamp(18px,2.2vw,22px); font-weight:700;
}

.tranaevent__split--55-45{
  display:grid;
  grid-template-columns:minmax(0,0.55fr) minmax(0,0.45fr);
  gap:32px; align-items:start;
}
.tranaevent__content{ min-width:0; }

/* checklist (shared) */
.tranaevent.about-event .tranaevent__list{
  list-style:none; padding:0; margin:8px 0 14px;
  display:grid; gap:10px; font-size:16px; line-height:1.65; color:#333a56;
}
.tranaevent.about-event .tranaevent__list li{
  position:relative; padding-left:32px;
}
.tranaevent.about-event .tranaevent__list li::before{
  content:"✓"; position:absolute; left:0; top:0.08em;
  width:22px; height:22px; display:inline-grid; place-items:center;
  font-weight:800; font-size:14px; color:#fff; border-radius:6px;
  background:linear-gradient(135deg,#ff4db8 0%, #7b61ff 100%);
}

/* compact list variant for RSVP */
.tranaevent__list--compact{ gap:8px; font-size:15.5px; }

/* notes and links */
.tranaevent.about-event .tranaevent__note{ margin:6px 0 8px; color:#333a56; }
.tranaevent__rsvp-lead{ margin:8px 0 6px; color:#1f2552; }
.tranaevent__rsvp-link a{ color:#7b61ff; text-decoration:underline; }
.tranaevent__rsvp-sep{ margin:0 6px; color:#9aa0b6; }

/* left column — keep info+CTA tidy */
.tranaevent__content--left{ display:flex; flex-direction:column; }
.tranaevent__info--inline{
  margin-top:10px; padding-top:16px;
  display:grid; grid-template-columns:1fr auto 1fr; gap:18px;
  align-items:center; border-top:1px solid rgba(31,37,82,.15);
}
.tranaevent__divider{ width:1px; height:44px; background:rgba(31,37,82,.15); }
.tranaevent__info-item{ display:flex; align-items:flex-start; gap:12px; }
.tranaevent__info-ico{
  width:32px; height:32px; border-radius:50%;
  background:linear-gradient(135deg,#ff4db8 0%, #7b61ff 100%);
  display:grid; place-items:center; flex:0 0 32px;
}
.tranaevent__info-ico svg{ width:16px; height:16px; }
.tranaevent__info-text{ color:#1f2552; line-height:1.5; }
.tranaevent__info-text strong{ font-weight:800; }

.tranaevent__cta--inline{ margin-top:18px; display:flex; justify-content:center; }
.tranaevent__btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:14px 28px; border-radius:9999px; font-weight:800;
  letter-spacing:.02em; text-transform:uppercase; text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease;
  -webkit-tap-highlight-color: transparent;
}
.tranaevent__btn--primary{
  background:linear-gradient(135deg,#ff4db8 0%, #7b61ff 100%);
  color:#fff; box-shadow:0 8px 24px rgba(123,97,255,.35);
}
.tranaevent__btn--primary:hover{ transform:translateY(-1px); box-shadow:0 12px 28px rgba(123,97,255,.45); }
.tranaevent__btn--primary:focus-visible{ outline:2px solid #7b61ff; outline-offset:3px; }

/* responsive */
@media (max-width:1024px){
  .tranaevent.about-event.clean{ padding:40px 0; }
  .tranaevent__split--55-45{ grid-template-columns:1fr; gap:22px; }

  .tranaevent__info--inline{
    grid-template-columns:1fr; gap:12px;
  }
  .tranaevent__divider{ display:none; }
  .tranaevent__info-item{ justify-content:center; text-align:center; }
}


/* Timeline: 2 колонки на десктопе, одна под другой на мобилке */
.tranaevent__timeline-2col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 32px;
}

.tranaevent__timeline-col {
  display: grid;
  gap: 22px;
}

.tranaevent__timeline-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.tranaevent__timeline-item time {
  flex: 0 0 auto;
  min-width: 56px;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.4;
  color: #000; /* чёрный цвет */
}

.tranaevent__timeline-body {
  font-size: 17px;
    color: #333;
  line-height: 1.6;
  
}

@media (max-width: 768px) {
  .tranaevent__timeline-2col {
    grid-template-columns: 1fr;
  }
}



/* ===== Partners & Sponsors heading ===== */
.elden{background-color: #000}
.s-heading{ text-align:center; margin:0 0 24px; position:relative; }
.s-heading__eyebrow{
  font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  font-size:14px; line-height:1; margin-bottom:10px;
  background:linear-gradient(135deg,#ff4db8 0%, #7b61ff 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.s-heading__title{
  margin:0; font-weight:800; letter-spacing:-0.02em;
  font-size:clamp(28px,4.8vw,48px); line-height:1.15; color:#10163a;
}
.tranaevent.sponsors .s-heading{ margin-top:8px; margin-bottom:20px; }

/* ====== Sponsors / Honorees (tranaevent) ====== */
.tranaevent.sponsors.clean{ padding:48px 0; background:transparent; }
.tranaevent.sponsors .tranaevent__title{ margin:0 0 16px; text-align:center; }

/* tier titles */
.s-tier{ margin:24px 0 12px; font-weight:800; font-size:clamp(18px,2.2vw,22px); color:#1f2552; text-align:center; }
.s-tier--platinum{ color:#5b3dfc; }
.s-tier--gold{ color:#c28a00; }
.s-tier--silver{ color:#6e7a8d; }
.s-tier--friends{ color:#2458d8; }
.s-tier--supporters{ color:#40506a; }
.s-tier--inkind{ color:#6a3dc9; }
.s-tier--volunteers,
.s-tier--press{ color:#1f2552; }

.s-paragraph{ margin:6px 0 18px; color:#2b2b2b; line-height:1.65; text-align:center; }

/* grids */
.s-grid{
  --cols:4; --gap:16px;
  list-style:none; padding:0; margin:0 0 10px;
  display:grid; gap:var(--gap);
  grid-template-columns:repeat(var(--cols), minmax(0,1fr));
  justify-content:center;
  justify-items:stretch;   /* фикс: растягиваем карточки на всю колонку */
}
.s-grid--honorees{ --cols:3; --gap:18px; }
.s-grid--platinum{ --cols:4; }
.s-grid--gold{ --cols:6; }
.s-grid--silver{ --cols:6; }
.s-grid--friends{ --cols:7; }
.s-grid--supporters{ --cols:8; }
.s-grid--inkind{ --cols:6; }

/* cards */
.s-grid > .s-card{ width:100%; } /* гарантируем ширину ячейки */
.s-card{
  background:#fff; border-radius:14px; padding:14px 10px; text-align:center;
  box-shadow:0 4px 18px rgba(20,22,40,.06);
  transition:transform .15s ease, box-shadow .15s ease;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-height:140px; width:100%; min-width:0; /* фикс схлопывания */
}
.s-card:hover{ transform:translateY(-2px); box-shadow:0 10px 26px rgba(20,22,40,.12); }

.s-card__link{
  display:flex; flex-direction:column; align-items:center;
  text-decoration:none; color:#1f2552; width:100%; min-width:0; /* фикс */
}

/* logos */
.s-card__logo{ width:100%; aspect-ratio:4/3; display:grid; place-items:center; margin:0 auto 8px; }
.s-card__logo img{ max-width:90%; max-height:80%; object-fit:contain; display:block; }

/* portraits */
.s-card--person .s-card__photo{ width:100%; aspect-ratio:1/1; border-radius:12px; overflow:hidden; margin:0 auto 10px; }
.s-card--person .s-card__photo img{ width:100%; height:100%; object-fit:cover; display:block; }

/* text */
.s-card__name{ font-weight:800; font-size:14px; line-height:1.25; margin-bottom:4px; text-align:center; }
.s-card__meta{ font-size:12.5px; line-height:1.35; color:#495067; text-align:center; }

.s-card__photo,
.s-card__logo {
  position: relative;
}

.s-ribbon {
  position: absolute;
  bottom: 30px;                  /* отступ от нижнего края */
  left: 50%;
  transform: translateX(-50%);   /* по центру */
  background: linear-gradient(135deg, #ff6b6b, #e84141);
  color: #fff;
  font: 600 12px/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 6px 18px;
  border-radius: 4px;
  box-shadow: 0 3px 8px rgba(0,0,0,.25);
  pointer-events: none;
  white-space: nowrap;
}


/* responsive */
@media (max-width: 1200px){
  .s-grid--gold{ --cols:5; }
  .s-grid--silver{ --cols:5; }
  .s-grid--friends{ --cols:6; }
  .s-grid--supporters{ --cols:6; }
  .s-grid--inkind{ --cols:5; }
}
@media (max-width: 992px){
  .s-grid--honorees{ --cols:2; }
  .s-grid--platinum{ --cols:3; }
  .s-grid--gold{ --cols:4; }
  .s-grid--silver{ --cols:4; }
  .s-grid--friends{ --cols:4; }
  .s-grid--supporters{ --cols:4; }
  .s-grid--inkind{ --cols:4; }
}
@media (max-width: 640px){
  .s-grid{ --cols:2; }
  .s-card__name{ font-size:13px; }
  .s-card__meta{ font-size:12px; }
	.s-ribbon {
    position: absolute;
    bottom: 11px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #ff6b6b, #e84141);
    color: #fff;
    font: 600 11px / 1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: .05em;
    padding: 5px 5px;
    border-radius: 4px;
    box-shadow: 0 3px 8px rgba(0, 0, 0, .25);
    pointer-events: none;
    white-space: nowrap;
    /* width: 100%; */
}
}


/* ===== Event Video (responsive) ===== */
.tranaevent.video.clean{ padding:40px 0; background:transparent; }
.video-wrap{
  position:relative; width:100%;
  aspect-ratio:16/9;           /* современный способ */
  background:#000; border-radius:16px; overflow:hidden;
  box-shadow:0 8px 24px rgba(16,22,58,.12);
}
.video-wrap iframe{
  position:absolute; inset:0; width:100%; height:100%; border:0;
}

/* Фолбек для старых браузеров без aspect-ratio */
@supports not (aspect-ratio: 16/9){
  .video-wrap{ padding-top:56.25%; }
  .video-wrap iframe{ position:absolute; top:0; left:0; width:100%; height:100%; }
}

@media (max-width:1024px){
  .tranaevent.video.clean{ padding:32px 0; }
}
@media (max-width:640px){
  .tranaevent.video.clean{ padding:24px 0; }
}


.site-footer {
  padding: 20px 0;
  text-align: center;
}

.site-footer .footer-content p {
  margin: 4px 0;
  font-size: 15px;
  color: #fff;
}

.site-footer .footer-content a {
  color: #e812b8;
  text-decoration: none;
  font-weight: 600; /* можно убрать, если не нужно утолщение */
}

.site-footer .footer-content a:hover {
  text-decoration: underline;
}


.contact .plain-style .contact-information .inner .contact-left img
 {
    border-radius: 0%;
}

/* ===== Sponsorship Packet (TraNa) ===== */
.tranaevent.packet.clean {
  padding: 40px 0;
  background: transparent;
}
.tranaevent.packet .tranaevent__container {
  width: min(100%, 1100px);
  margin: 0 auto;
}

/* ===== Unified cards (no visible gaps) ===== */
.tp-card {
  background: #fff;
  border: 1px solid rgba(16,22,58,.10);
  padding: 20px 22px;
  margin: 0;
  box-shadow: none;
  border-left: none;
  border-right: none;
  border-radius: 0;
}
.tp-card:first-of-type {
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  box-shadow: 0 10px 24px rgba(16,22,58,.06);
}
.tp-card:last-of-type {
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
  box-shadow: 0 10px 24px rgba(16,22,58,.06);
}

.tp-title {
  margin: 0 0 10px;
  font-weight: 900;
  letter-spacing: -.01em;
  font-size: clamp(22px,2.6vw,28px);
  color: #10163a;
}
.tp-title-underline {
  margin: 0 0 12px;
  font-weight: 900;
  letter-spacing: -.01em;
  font-size: clamp(22px,2.6vw,28px);
  color: #10163a;
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 4px;
}
.tp-subtitle {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 10px 0 6px;
  font-weight: 800;
  color: #10163a;
  font-size: clamp(18px,2.2vw,22px);
}
.tp-ico {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: linear-gradient(135deg,#ff4db8,#7b61ff);
  display: inline-block;
}
.tp-ico--badge {
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M17 3H7a2 2 0 0 0-2 2v10l7 4 7-4V5a2 2 0 0 0-2-2z"/></svg>') center / 70% 70% no-repeat;
  -webkit-mask: inherit;
}

.tp-text {
  color: #2b2b2b;
  line-height: 1.7;
}
.tp-text p {
  margin: 0 0 10px;
}

/* ===== Checks: gradient tick, no squares ===== */
.tp-check {
  list-style: none !important;
  margin: 8px 0 12px !important;
  padding: 0 !important;
  display: grid !important;
  gap: 8px !important;
}
.tp-check li {
  position: relative !important;
  padding-left: 30px !important;
}
/* Убираем старые квадраты */
.tp-check li::before,
.tp-check li::after {
  all: unset !important;
}

/* Градиентная галочка */
.tp-check li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.05em !important;
  font-weight: 900 !important;
  font-size: 18px !important;
  background: linear-gradient(135deg,#ff4db8,#7b61ff) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* Плоский вариант (IMPORTANT NOTES): синие галочки */
.tp-check--plain li::before {
  content: "✓" !important;
  background: none !important;
  -webkit-text-fill-color: #6f6bff !important;
  color: #6f6bff !important;
}

/* Dash lists */
.tp-dash {
  list-style: none;
  margin: 6px 0 6px 0;
  padding: 0 0 0 22px;
  display: grid;
  gap: 6px;
}
.tp-dash li {
  position: relative;
  padding-left: 14px;
}
.tp-dash li::before {
  content: "—";
  position: absolute;
  left: 0;
  top: 0;
  color: #6a7087;
  font-weight: 700;
}

.tp-note {
  margin: 6px 0 14px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f6f3ff;
  color: #3a2c8a;
  font-weight: 800;
}

.tp-head {
  margin: 14px 0 8px;
  font-weight: 900;
  color: #10163a;
  font-size: clamp(18px,2.2vw,22px);
}
.tp-head--linklike {
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 4px;
}

/* ===== Sponsor tiers (no colors) ===== */
.tp-tier {
  margin: 12px 0 8px;
  font-weight: 900;
  letter-spacing: .01em;
  color: #10163a;
}

/* Bullets with ❖ */
.tp-bullets {
  list-style: none;
  margin: 6px 0 12px;
  padding-left: 0;
}
.tp-bullets li {
  position: relative;
  margin: 4px 0;
  padding-left: 26px;
}
.tp-bullets li::before {
  content: "❖";
  position: absolute;
  left: 0;
  top: 0;
  color: #10163a;
  font-weight: 900;
}

.tp-h5 {
  margin: 10px 0 6px;
  font-weight: 800;
  color: #10163a;
}
.tp-h5--important {
  text-transform: uppercase;
}

.tp-italic {
  font-style: italic;
  color: #2b2b2b;
}

.tp-sign em {
  font-style: italic;
}

/* Decorative heart */
.tp-heart {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  background: linear-gradient(135deg,#ff4db8 0%,#7b61ff 100%);
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M12 21s-6.716-4.81-9.193-7.287A5.5 5.5 0 1 1 12 6.414a5.5 5.5 0 1 1 9.193 7.299C18.716 16.19 12 21 12 21z"/></svg>') center / contain no-repeat;
  -webkit-mask: inherit;
}

/* ===== Contacts block: two columns, no grey background ===== */
.tp-highlight {
  margin: 6px 0 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #fff7b8;
  font-weight: 700;
  color: #3d2f00;
}

.tp-contact-grid {
  display: grid;
  grid-template-columns: 1fr 260px;
  gap: 20px;
  align-items: start;
}
.tp-contacts {
  display: grid;
  gap: 10px;
  margin: 8px 0 10px;
}
.tp-contact {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  background: transparent;
  border: none;
  padding: 0;
  border-radius: 0;
  color: #10163a;
}
.tp-contact:hover {
  background: transparent;
  text-decoration: underline;
}
.tp-cico {
  width: 20px;
  height: 20px;
  display: inline-block;
  color: #10163a;
}
.tp-cico--phone {
  background: currentColor;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M6.6 10.8c1.2 2.3 3.1 4.2 5.4 5.4l1.8-1.8c.2-.2.5-.3.8-.2 1 .3 2 .5 3 .5.4 0 .7.3.7.7v2.8c0 .4-.3.7-.7.7C9.7 19.9 4.1 14.3 4.1 7.4c0-.4.3-.7.7-.7h2.8c.4 0 .7.3.7.7 0 1 .2 2 .5 3 .1.3 0 .6-.2.8l-1.8 1.8z"/></svg>') center/contain no-repeat;
}
.tp-cico--mail {
  background: currentColor;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 4-8 5L4 8V6l8 5 8-5v2z"/></svg>') center/contain no-repeat;
}
.tp-cico--web {
  background: currentColor;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm6.9 6h-3.2a15.2 15.2 0 0 0-1.9-4.4A8.02 8.02 0 0 1 18.9 8zM12 4c.8 1.1 1.5 2.6 2 4H10c.5-1.4 1.2-2.9 2-4zM4.1 8h3.2c.4-1.6 1.1-3.2 1.9-4.4A8.02 8.02 0 0 0 4.1 8zM4 10h3.8c-.1.7-.1 1.3-.1 2s0 1.3.1 2H4a8 8 0 0 1 0-4zm3.3 6H4.1a8.02 8.02 0 0 0 5.1 4.4c-.8-1.2-1.5-2.8-1.9-4.4zm4.7 4c-.8-1.1-1.5-2.6-2-4h4c-.5 1.4-1.2-2.9-2-4zm2.8-.4c.8-1.2 1.5-2.8 1.9-4.4h3.2A8.02 8.02 0 0 1 14.8 19.6zM20 14h-3.8c.1-.7.1-1.3.1-2s0-1.3-.1-2H20a8 8 0 0 1 0 4z"/></svg>') center/contain no-repeat;
}
.tp-cico--card {
  background: currentColor;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M20 4H4a2 2 0 0 0-2 2v2h20V6a2 2 0 0 0-2-2zm2 6H2v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6zM6 16H4v-2h2v2z"/></svg>') center/contain no-repeat;
}

.tp-qr {
  margin-top: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  text-align: center;
}
.tp-qr img {
  width: 180px;
  height: auto;
  border-radius: 10px;
  border: 1px solid rgba(16,22,58,.12);
}
.tp-qr-caption {
  display: inline-block;
  background: #e31b53;
  color: #fff;
  font-weight: 800;
  padding: 8px 12px;
  border-radius: 9999px;
}

/* Responsive */
@media (max-width: 900px) {
  .tp-contact-grid { grid-template-columns: 1fr 220px; }
}
@media (max-width: 768px) {
  .tp-card { padding: 16px; }
  .tp-qr img { width: 160px; }
  .tp-contact-grid { grid-template-columns: 1fr; }
  .tp-qr { margin-top: 14px; }
}
@media (max-width: 520px) {
  .tp-qr img { width: 140px; }
}


/* ===== Buy Ticket block ===== */
.bt-scope{
  --bt-bg:#0d0f1f;
  --bt-bg-2:#101432;
  --bt-card:#fff;
  --bt-ink:#10163a;
  --bt-muted:#6a7087;
  --bt-brand-a:#ff4db8;
  --bt-brand-b:#7b61ff;
  --bt-border:rgba(16,22,58,.12);
  --bt-shadow:0 12px 34px rgba(16,22,58,.12);
  --bt-font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}

.bt-scope .buyticket{
  max-width:960px;
  margin:0 auto;
  padding:40px 20px 64px;
  color:var(--bt-ink);
  font:var(--bt-font);
  background:#f6f7fb;
}

/* HERO */
.bt-scope .bt-hero{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  margin-bottom:28px;
  color:#fff;
  text-align:center;
  padding:40px 22px;
  box-shadow: var(--bt-shadow);
}
.bt-scope .bt-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.bt-scope .bt-eyebrow{
  position:relative;
  z-index:1;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
  font-size:20px;
  color:#e812b8;
  opacity:.95;
}
.bt-scope .bt-title{
  position:relative;
  z-index:1;
  margin:8px 0 8px;
  font-weight:900;
  letter-spacing:-.02em;
  font-size:clamp(28px,4.6vw,34px);
  line-height:1.12;
  color:#333;
}
.bt-scope .bt-sub{
  position:relative;
  z-index:1;
  margin:0 auto;
  max-width:740px;
  color:#333;
  opacity:.9;
}

/* LAYOUT */
.bt-scope .bt-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:22px;
  align-items:start;
}
.bt-scope .bt-card{
  background:var(--bt-card);
  border:1px solid var(--bt-border);
  border-radius:16px;
  box-shadow:var(--bt-shadow);
}
.bt-scope .bt-card__hd{
  padding:18px 20px;
  border-bottom:1px solid var(--bt-border);
  font-weight:800;
  letter-spacing:-.01em;
}
.bt-scope .bt-card__bd{
  padding:18px 20px;
}

/* DETAILS */
.bt-scope .bt-cols{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.bt-scope .bt-item{
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.bt-scope .bt-item__ico{
  flex:0 0 28px;
  width:28px;
  height:28px;
  border-radius:9999px;
  background:linear-gradient(135deg,var(--bt-brand-a),var(--bt-brand-b));
  display:grid;
  place-items:center;
  color:#fff;
  font-size:14px;
  font-weight:800;
}
.bt-scope .bt-item__txt strong{
  font-weight:800;
}
.bt-scope .bt-note{
  margin-top:10px;
  color:var(--bt-muted);
  font-size:14px;
}

/* TICKETS */
.bt-scope .bt-cta{
  display:grid;
  gap:14px;
}
.bt-scope .bt-tier{
  display:grid;
  gap:8px;
}
.bt-scope .bt-price{
  font-size:28px;
  font-weight:800;
  letter-spacing:-.01em;
}
.bt-scope .bt-price small{
  font-size:14px;
  font-weight:600;
  color:var(--bt-muted);
}
.bt-scope .bt-btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:14px 22px;
  border-radius:9999px;
  text-decoration:none;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.02em;
  background:linear-gradient(135deg,var(--bt-brand-a),var(--bt-brand-b));
  color:#fff;
  box-shadow:0 10px 28px rgba(123,97,255,.35);
  transition:transform .15s ease, box-shadow .15s ease;
}
.bt-scope .bt-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 32px rgba(123,97,255,.45);
}
.bt-scope .bt-btn--outline{
  background:#fff;
  color:var(--bt-ink);
  border:2px solid transparent;
  background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,var(--bt-brand-a),var(--bt-brand-b));
  background-origin:border-box;
  background-clip:padding-box,border-box;
  box-shadow:none;
  text-transform:none;
  letter-spacing:0;
  font-weight:700;
}

/* TERMS */
.bt-scope .bt-terms{
  margin-top:8px;
  font-size:14px;
  color:var(--bt-muted);
}
.bt-scope .bt-list{
  margin:0;
  padding-left:18px;
}
.bt-scope .bt-list li{
  margin:6px 0;
}

/* RESPONSIVE */
@media (max-width:920px){
  .bt-scope .bt-grid{grid-template-columns:1fr}
  .bt-scope .bt-cols{grid-template-columns:1fr}
}


