/* ============================================================
   TAPESH EVENTS GALLERY — APPROVED VISUAL PRESET
   v1.1.0
   The internal layout is custom and isolated from Elementor's
   container/grid defaults. Elementor controls may override it.
   ============================================================ */

.tpeg-block{
  --tpeg-purple:#3B0874;
  --tpeg-purple-2:#5D18A5;
  --tpeg-purple-3:#7A42BB;
  --tpeg-ink:#19092C;
  --tpeg-text:#625B6C;
  --tpeg-muted:#91899A;
  --tpeg-lilac:#A991C3;
  --tpeg-lilac-2:#C7B7D8;
  --tpeg-lilac-3:#EEE8F4;
  --tpeg-paper:#FBF9FD;
  --tpeg-line:#EBE4F1;
  --tpeg-radius:30px;
  --tpeg-max:1380px;
  direction:rtl;
  font-family:inherit;
  color:var(--tpeg-ink);
  isolation:isolate;
}
.tpeg-block *,
.tpeg-block *::before,
.tpeg-block *::after{box-sizing:border-box}
.tpeg-block img{display:block;max-width:100%}
.tpeg-block a{text-decoration:none;color:inherit}
.tpeg-block button{font:inherit}
.tpeg-shell{width:min(var(--tpeg-max),calc(100% - 40px));margin-inline:auto}

/* Full-bleed section backgrounds.
   The widget may sit inside a boxed Elementor container, but only the
   background should reach the viewport edges. The inner .tpeg-shell
   keeps its existing max-width and spacing unchanged. */
.tpeg-head,
.tpeg-years,
.tpeg-cta{
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

/* Prevent a 1px/scrollbar rounding artefact from creating horizontal scroll. */
html{
  overflow-x:clip;
}

/* Prevent theme / global Elementor heading styles from changing preset */
.tpeg-block h1,
.tpeg-block h2,
.tpeg-block h3,
.tpeg-block p{
  font-family:inherit;
}
.tpeg-label{
  display:inline-flex;
  align-items:center;
  gap:9px;
  width:max-content;
  max-width:100%;
  padding:9px 14px;
  border:1px solid rgba(59,8,116,.09);
  border-radius:999px;
  background:linear-gradient(135deg,#fff,#F7F1FB);
  color:var(--tpeg-purple);
  font-size:13px;
  line-height:1.4;
  font-weight:800;
  box-shadow:0 8px 28px rgba(35,8,62,.04);
}
.tpeg-label-mark{
  color:var(--tpeg-purple-3);
  font-size:14px;
}

/* ============================================================
   HERO — image LEFT / copy RIGHT exactly as approved design
   ============================================================ */
.tpeg-head{
  padding:44px 0 42px;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 15%,rgba(169,145,195,.13),transparent 24%),
    linear-gradient(180deg,#FFFFFF 0%,#FDFBFE 100%);
}
.tpeg-breadcrumb{
  margin-bottom:34px;
  color:#91899A;
  font-size:12px;
  line-height:1.8;
  text-align:right;
}

.tpeg-breadcrumb-list{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:7px;
  margin:0;
  padding:0;
  direction:rtl;
}
.tpeg-breadcrumb-item{
  margin:0;
  padding:0;
  color:inherit;
  font:inherit;
}
.tpeg-breadcrumb-item a{
  color:inherit;
  font:inherit;
  text-decoration:none;
  transition:color .2s ease;
}
.tpeg-breadcrumb-item a:hover{
  color:var(--tpeg-purple);
}
.tpeg-breadcrumb-separator{
  margin:0;
  padding:0;
  color:inherit;
  opacity:.72;
  font:inherit;
  line-height:1;
  user-select:none;
}
.tpeg-head-grid{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:72px;
  align-items:center;
  direction:ltr; /* physical placement */
}
.tpeg-head-grid.tpeg-no-media{grid-template-columns:1fr}
.tpeg-head-media{
  direction:rtl;
  position:relative;
  aspect-ratio:1.28/1;
  min-width:0;
}
.tpeg-head-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:34px!important;
  box-shadow:0 24px 70px rgba(35,8,62,.12);
}
.tpeg-head-dot{
  position:absolute;
  border-radius:50%;
  background:#D5BCE7;
}
.tpeg-head-dot-a{width:21px;height:21px;left:-16px;bottom:12px}
.tpeg-head-dot-b{width:13px;height:13px;right:-15px;top:32px;background:#B997D4}
.tpeg-head-copy{
  direction:rtl;
  text-align:right;
  min-width:0;
}
.tpeg-head h1{
  margin:18px 0 0!important;
  color:var(--tpeg-ink);
  font-size:clamp(46px,5vw,72px);
  line-height:1.22;
  letter-spacing:-2px;
  font-weight:900;
}
.tpeg-head-lead{
  max-width:760px;
  margin:20px 0 0!important;
  color:var(--tpeg-text);
  font-size:15.5px;
  line-height:2.05;
  font-weight:500;
}

/* ============================================================
   YEARS NAV — generated from repeater cards
   ============================================================ */
.tpeg-years{
  padding:20px 0 74px;
  background:
    linear-gradient(180deg,#FDFBFE 0,#FFFFFF 150px,#FFFFFF 100%);
  overflow:visible;
}
.tpeg-years-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin-bottom:42px;
  padding:4px 2px;
  direction:rtl;
}
.tpeg-years-nav-main{
  min-width:0;
  display:flex;
  align-items:center;
  gap:16px;
}
.tpeg-years-nav-title{
  flex:0 0 auto;
  color:var(--tpeg-ink);
  font-size:15px;
  line-height:1.4;
  font-weight:900;
}
.tpeg-years-nav-label{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  color:var(--tpeg-purple);
  font-size:13px;
  font-weight:800;
  order:2;
}
.tpeg-years-nav-label svg{
  width:18px;
  height:18px;
  stroke:currentColor;
}
.tpeg-years-nav-main{order:1}
.tpeg-years-nav-list{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
  overflow-x:auto;
  padding:4px 2px 8px;
  scrollbar-width:none;
}
.tpeg-years-nav-list::-webkit-scrollbar{display:none}
.tpeg-year-chip{
  flex:0 0 auto;
  min-width:78px;
  min-height:48px;
  padding:0 18px;
  border:1px solid var(--tpeg-line);
  border-radius:14px;
  background:#fff;
  color:#6C6276;
  cursor:pointer;
  font-size:13px;
  font-weight:800;
  line-height:1;
  box-shadow:none;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;
}
.tpeg-year-chip:hover{
  transform:translateY(-2px);
  border-color:#D7C6E5;
}
.tpeg-year-chip.is-active{
  color:#fff;
  border-color:var(--tpeg-purple);
  background:linear-gradient(135deg,var(--tpeg-purple),var(--tpeg-purple-2));
  box-shadow:none;
}

/* ============================================================
   YEAR CARDS
   media LEFT / copy RIGHT
   ============================================================ */
.tpeg-year-stack{
  display:flex;
  flex-direction:column;
  gap:28px;
}
.tpeg-year-card{
  --mx:50%;
  --my:50%;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:46px;
  align-items:stretch;
  min-height:445px;
  padding:28px;
  scroll-margin-top:110px;
  border:1px solid var(--tpeg-line);
  border-radius:var(--tpeg-radius);
  background:#fff;
  box-shadow:0 22px 64px rgba(35,8,62,.06);
  overflow:visible;
  direction:ltr; /* first child is physically LEFT */
}
.tpeg-year-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  border-radius:inherit;
  background:radial-gradient(600px circle at var(--mx) var(--my),rgba(169,145,195,.08),transparent 42%);
  transition:opacity .25s ease;
}
.tpeg-year-card:hover::before{opacity:1}
.tpeg-year-no-media{grid-template-columns:1fr}
.tpeg-card-dot{
  position:absolute;
  top:32px;
  right:-8px;
  width:17px;
  height:17px;
  border:5px solid #F3ECF9;
  border-radius:50%;
  background:var(--tpeg-purple-2);
  box-shadow:0 0 0 1px rgba(93,24,165,.07);
}

/* Copy is RIGHT */
.tpeg-year-copy{
  direction:rtl;
  text-align:right;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px 22px 28px 8px;
}
.tpeg-year-kicker{
  color:var(--tpeg-purple);
  font-size:24px;
  line-height:1.4;
  font-weight:900;
}
.tpeg-year-copy h2{
  margin:18px 0 0!important;
  color:var(--tpeg-ink);
  font-size:clamp(30px,3vw,46px);
  line-height:1.4;
  letter-spacing:-1px;
  font-weight:900;
}
.tpeg-year-text{
  margin-top:18px;
  color:var(--tpeg-text);
  font-size:14px;
  line-height:2.15;
  font-weight:400;
}
.tpeg-year-text p{
  margin:0 0 12px!important;
  color:inherit;
  font-size:inherit;
  line-height:inherit;
}
.tpeg-year-text p:last-child{margin-bottom:0!important}
.tpeg-open-gallery{
  width:max-content;
  max-width:100%;
  margin-top:22px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--tpeg-purple);
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-size:13px;
  line-height:1.4;
  font-weight:900;
}
.tpeg-open-gallery span{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  flex:0 0 31px;
  border-radius:50%;
  background:#F2EBF8;
  transition:transform .2s ease,background .2s ease;
}
.tpeg-open-gallery:hover span{
  transform:translateX(-3px);
  background:#E9DDF3;
}

/* Gallery is LEFT; inside it main image RIGHT + 2 thumbnails LEFT */
.tpeg-year-media{
  direction:rtl;
  position:relative;
  min-width:0;
  min-height:380px;
  display:grid;
  gap:12px;
  overflow:hidden;
  border-radius:22px;
}
.tpeg-count-1{
  grid-template-columns:1fr;
  grid-template-rows:1fr;
}
.tpeg-count-2{
  grid-template-columns:1fr 1fr;
  grid-template-rows:1fr;
}
.tpeg-count-3{
  grid-template-columns:minmax(0,1.42fr) minmax(130px,.58fr);
  grid-template-rows:1fr 1fr;
}
.tpeg-count-3 .tpeg-gallery-item:first-child{
  grid-column:1;
  grid-row:1 / span 2;
}
.tpeg-count-3 .tpeg-gallery-item:nth-child(2){
  grid-column:2;
  grid-row:1;
}
.tpeg-count-3 .tpeg-gallery-item:nth-child(3){
  grid-column:2;
  grid-row:2;
}
.tpeg-gallery-item{
  position:relative;
  width:100%;
  height:100%;
  min-height:170px;
  padding:0;
  border:0;
  border-radius:18px;
  background:#EEE8F4;
  overflow:hidden;
  cursor:zoom-in;
}
.tpeg-gallery-item::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(180deg,transparent 55%,rgba(20,6,35,.18));
  transition:opacity .25s ease;
}
.tpeg-gallery-item:hover::after{opacity:1}
.tpeg-gallery-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s cubic-bezier(.2,.7,.2,1);
}
.tpeg-gallery-item:hover img{transform:scale(1.035)}
.tpeg-gallery-hidden{display:none!important}
.tpeg-more-count{
  position:absolute;
  left:16px;
  bottom:16px;
  z-index:3;
  min-width:48px;
  height:40px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  background:rgba(38,10,64,.75);
  color:#fff;
  cursor:pointer;
  font-size:12px;
  font-weight:900;
  backdrop-filter:blur(7px);
}

/* ============================================================
   CTA matching approved reference
   ============================================================ */
.tpeg-cta{
  padding:26px 0 84px;
  background:#fff;
}
.tpeg-cta-box{
  display:grid;
  grid-template-columns:1.28fr .72fr;
  gap:34px;
  align-items:center;
  min-height:330px;
  padding:42px 54px;
  border:1px solid #E8DCF1;
  border-radius:var(--tpeg-radius);
  background:
    radial-gradient(circle at 88% 20%,rgba(122,66,187,.055),transparent 24%),
    linear-gradient(135deg,#F8F2FC,#F1E7F8);
  overflow:hidden;
  direction:ltr;
}
.tpeg-cta-no-visual{
  grid-template-columns:1fr;
}
.tpeg-cta-copy{
  direction:rtl;
  text-align:right;
}
.tpeg-cta-visual{
  direction:rtl;
  min-height:220px;
  display:grid;
  place-items:center;
}
.tpeg-cta-visual-img{
  width:190px;
  max-width:100%;
  height:auto;
  object-fit:contain;
  border-radius:0;
  background:transparent;
  filter:none;
}
.tpeg-cta-copy h2{
  margin:0!important;
  color:var(--tpeg-ink);
  font-size:clamp(34px,3.6vw,54px);
  line-height:1.45;
  letter-spacing:-1.2px;
  font-weight:900;
}
.tpeg-cta-copy p{
  margin:14px 0 0!important;
  max-width:760px;
  color:var(--tpeg-text);
  font-size:14px;
  line-height:2;
}
.tpeg-cta-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:12px;
  margin-top:26px;
}
.tpeg-btn{
  min-height:52px;
  padding:0 22px;
  border:1px solid transparent;
  border-radius:15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  font-size:13px;
  font-weight:900;
  transition:transform .2s ease,box-shadow .2s ease;
}
.tpeg-btn:hover{transform:translateY(-2px)}
.tpeg-btn-primary{
  color:#FFFFFF;
  background:#3B0874;
  border-color:#3B0874;
  box-shadow:0 10px 24px rgba(59,8,116,.13);
}
.tpeg-btn-secondary{
  color:#3B0874;
  border-color:#C7B7D8;
  background:#FFFFFF;
  box-shadow:none;
}

.tpeg-btn-icon{
  --tpeg-btn-icon-size:16px;
  width:var(--tpeg-btn-icon-size);
  height:var(--tpeg-btn-icon-size);
  min-width:var(--tpeg-btn-icon-size);
  display:inline-grid;
  place-items:center;
  line-height:1;
}
.tpeg-btn-icon i,
.tpeg-btn-icon svg{
  width:100%;
  height:100%;
  font-size:var(--tpeg-btn-icon-size);
  fill:currentColor;
}
.tpeg-btn-icon img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

/* ============================================================
   CUSTOM LIGHTBOX — RTL UI, physical arrows match sides
   ============================================================ */
.tpeg-lightbox{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:var(--tpeg-lb-overlay, rgba(13,5,22,.9));
  backdrop-filter:blur(12px);
}
.tpeg-lightbox.is-open{display:flex}
.tpeg-lightbox-dialog{
  position:relative;
  width:min(1200px,100%);
  height:min(820px,calc(100vh - 48px));
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  direction:ltr;
  border:1px solid rgba(255,255,255,.12);
  border-radius:26px;
  background:var(--tpeg-lb-panel, #FFFFFF);
  box-shadow:0 30px 100px rgba(0,0,0,.35);
}
.tpeg-lightbox-stage{
  position:relative;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  padding:24px;
  background:var(--tpeg-lb-stage, #0D0712);
}
.tpeg-lightbox-image{
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:16px;
}
.tpeg-lightbox-side{
  position:relative;
  direction:rtl;
  text-align:right;
  padding:42px 34px;
  color:var(--tpeg-ink,#19092C);
  display:flex;
  flex-direction:column;
  justify-content:center;
  justify-content:safe center;
  overflow-y:auto;
  background:var(--tpeg-lb-panel, #FFFFFF);
  border-left:1px solid #EEE8F4;
}
.tpeg-lightbox-side::before{
  content:"";
  width:42px;
  height:4px;
  margin-bottom:24px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--tpeg-purple,#3B0874),var(--tpeg-purple-3,#7A42BB));
}
.tpeg-lightbox-year{color:var(--tpeg-lb-accent, #7A42BB);
  font-size:13px;
  font-weight:900;
}
.tpeg-lightbox-title{
  margin-top:9px;
  color:var(--tpeg-lb-title, #19092C);
  font-size:21px;
  font-weight:900;
  line-height:1.65;
}
.tpeg-lightbox-caption{
  margin-top:12px;
  color:var(--tpeg-lb-text, #625B6C);
  font-size:13px;
  line-height:2;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.tpeg-lightbox-counter{
  margin-top:24px;
  color:var(--tpeg-lb-accent, #3B0874);
  font-size:12px;
  font-weight:800;
  direction:ltr;
  text-align:right;
}
.tpeg-lightbox-close,
.tpeg-lightbox-left,
.tpeg-lightbox-right{
  position:absolute;
  z-index:4;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  background:var(--tpeg-lb-arrow-bg, rgba(24,9,36,.76));
  color:var(--tpeg-lb-arrow-color, #fff);
  cursor:pointer;
  font-size:21px;
  line-height:1;
  transition:background .2s ease,transform .2s ease;
}
.tpeg-lightbox-close:hover,
.tpeg-lightbox-left:hover,
.tpeg-lightbox-right:hover{background:#4B1B72}
.tpeg-lightbox-close{top:18px;right:18px}
.tpeg-lightbox-left{
  top:50%;
  left:18px;
  transform:translateY(-50%);
}
.tpeg-lightbox-left::before{content:"←"}
.tpeg-lightbox-right{
  top:50%;
  right:18px;
  transform:translateY(-50%);
}
.tpeg-lightbox-right::before{content:"→"}

/* Reveal */
.tpeg-block .tpeg-reveal{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1);
}
.tpeg-block .tpeg-reveal.tpeg-visible{
  opacity:1;
  transform:none;
}
.elementor-editor-active .tpeg-block .tpeg-reveal,
body.elementor-editor-active .tpeg-block .tpeg-reveal{
  opacity:1!important;
  transform:none!important;
}
.tpeg-block.tpeg-no-motion *,
.tpeg-block.tpeg-no-motion *::before,
.tpeg-block.tpeg-no-motion *::after{
  animation:none!important;
  transition:none!important;
}
.tpeg-block.tpeg-no-motion .tpeg-reveal{
  opacity:1!important;
  transform:none!important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1100px){
  .tpeg-shell{width:min(var(--tpeg-max),calc(100% - 32px))}
  .tpeg-head-grid{gap:42px}
  .tpeg-year-card{gap:28px;padding:24px}
  .tpeg-year-copy{padding-inline:14px 4px}
  .tpeg-lightbox-dialog{grid-template-columns:minmax(0,1fr) 280px}
}

@media(max-width:767px){
  .tpeg-shell{width:min(var(--tpeg-max),calc(100% - 24px))}

  .tpeg-head{
    padding:28px 0 30px;
  }
  .tpeg-breadcrumb{
    margin-bottom:18px;
    font-size:11px;
  }
  .tpeg-head-grid{
    grid-template-columns:1fr;
    gap:24px;
    direction:rtl;
  }
  .tpeg-head-media{
    order:1;
    aspect-ratio:1.28/1;
  }
  .tpeg-head-copy{
    order:2;
    text-align:center;
  }
  .tpeg-head-copy .tpeg-label{margin-inline:auto}
  .tpeg-head h1{
    font-size:38px;
    letter-spacing:-1px;
  }
  .tpeg-head-lead{
    font-size:14px;
    line-height:2;
  }

  .tpeg-years{
    padding-top:12px;
  }
  .tpeg-years-nav{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    margin-bottom:22px;
  }
  .tpeg-years-nav-main{
    display:block;
    width:100%;
  }
  .tpeg-years-nav-title{
    margin-bottom:10px;
  }
  .tpeg-years-nav-label{
    order:2;
    align-self:flex-start;
  }
  .tpeg-years-nav-list{
    width:calc(100vw - 12px);
    margin-inline-start:-6px;
    padding-inline:6px 16px;
  }
  .tpeg-year-chip{
    min-width:70px;
    min-height:44px;
    padding:0 15px;
  }

  .tpeg-year-stack{gap:18px}
  .tpeg-year-card{
    grid-template-columns:1fr;
    gap:18px;
    min-height:0;
    padding:16px;
    border-radius:24px;
    direction:rtl;
    scroll-margin-top:80px;
  }
  .tpeg-year-media{
    order:1;
    min-height:300px;
  }
  .tpeg-year-copy{
    order:2;
    padding:8px 8px 14px;
  }
  .tpeg-year-kicker{
    font-size:18px;
  }
  .tpeg-year-copy h2{
    margin-top:10px!important;
    font-size:28px;
    line-height:1.45;
  }
  .tpeg-year-text{
    margin-top:12px;
    font-size:13.5px;
    line-height:2.05;
  }
  .tpeg-count-2{
    grid-template-columns:1fr 1fr;
  }
  .tpeg-count-3{
    grid-template-columns:1fr 1fr;
    grid-template-rows:210px 135px;
  }
  .tpeg-count-3 .tpeg-gallery-item:first-child{
    grid-column:1 / span 2;
    grid-row:1;
  }
  .tpeg-count-3 .tpeg-gallery-item:nth-child(2){
    grid-column:1;
    grid-row:2;
  }
  .tpeg-count-3 .tpeg-gallery-item:nth-child(3){
    grid-column:2;
    grid-row:2;
  }
  .tpeg-gallery-item{min-height:130px}
  .tpeg-card-dot{right:-6px;top:24px}

  .tpeg-cta{
    padding:18px 0 56px;
  }
  .tpeg-cta-box{
    grid-template-columns:1fr;
    direction:rtl;
    gap:14px;
    padding:28px 22px;
    text-align:center;
  }
  .tpeg-cta-copy{
    text-align:center;
    order:2;
  }
  .tpeg-cta-visual{
    min-height:145px;
    order:1;
  }
  .tpeg-cta-visual-img{
    width:150px;
    border-radius:20px;
  }
  .tpeg-cta-copy h2{
    font-size:31px;
  }
  .tpeg-cta-actions{
    justify-content:center;
  }

  .tpeg-lightbox{
    padding:10px;
  }
  .tpeg-lightbox-dialog{
    height:calc(100vh - 20px);
    grid-template-columns:1fr;
    grid-template-rows:minmax(0,1fr) auto;
    border-radius:20px;
  }
  .tpeg-lightbox-stage{
    padding:12px;
  }
  .tpeg-lightbox-side{
    padding:22px 20px;
    justify-content:flex-start;
  }
  .tpeg-lightbox-side::before{
    margin-bottom:14px;
  }
  .tpeg-lightbox-title{
    font-size:17px;
  }
  .tpeg-lightbox-caption{
    font-size:12px;
    line-height:1.8;
  }
  .tpeg-lightbox-close{
    top:12px;
    right:12px;
  }
  .tpeg-lightbox-left{
    left:10px;
  }
  .tpeg-lightbox-right{
    right:10px;
  }
}

@media(prefers-reduced-motion:reduce){
  .tpeg-block *,
  .tpeg-block *::before,
  .tpeg-block *::after,
  .tpeg-lightbox *{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
  .tpeg-block .tpeg-reveal{
    opacity:1!important;
    transform:none!important;
  }
}


/* Keep SVG asset crisp and transparent in all themes. */
.tpeg-cta-visual img[src$=".svg"]{
  background:transparent;
  box-shadow:none!important;
  border:0!important;
  padding:0!important;
}
