/* =========================================================
   IDPS GUNTUR - REFINED PREMIUM MOTION
   Purpose: elegant motion hierarchy without visual clutter.
========================================================= */
:root{
  --idps-motion-gold:#e8bd2f;
  --idps-motion-green:#075b2b;
  --idps-motion-green-deep:#043d1d;
  --idps-motion-ease:cubic-bezier(.22,.72,.22,1);
  --idps-motion-shadow:0 16px 36px rgba(4,61,29,.11);
}

/* Scroll progress: intentionally minimal. */
.idps-scroll-progress{
  position:fixed;
  inset:0 auto auto 0;
  width:0;
  height:2px;
  z-index:99999;
  pointer-events:none;
  background:linear-gradient(90deg,var(--idps-motion-gold),var(--idps-motion-green));
  transition:width .1s linear;
}

/* Header: no resizing/jumping on scroll. */
.site-header,
.site-brand img,
.site-navigation>a,
.site-nav-dropdown>summary{
  transition:box-shadow .28s ease,border-color .28s ease,background .28s ease,color .28s ease,transform .28s var(--idps-motion-ease);
}
.site-header.is-scrolled{
  box-shadow:0 8px 24px rgba(2,55,25,.09);
  border-bottom-color:rgba(7,91,43,.1);
  background:rgba(255,255,255,.985);
}
.site-brand img{filter:drop-shadow(0 3px 8px rgba(4,61,29,.05))}
@media(hover:hover) and (pointer:fine){
  .site-brand:hover img{transform:translateY(-1px)}
}

/* Navigation underline: clean and restrained. */
.site-navigation>a:not(.site-nav-cta),
.site-nav-dropdown>summary{position:relative}
.site-navigation>a:not(.site-nav-cta)::after,
.site-nav-dropdown>summary::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:5px;
  height:2px;
  border-radius:999px;
  background:var(--idps-motion-gold);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .24s var(--idps-motion-ease);
}
.site-navigation>a:not(.site-nav-cta):hover::after,
.site-navigation>a:not(.site-nav-cta).is-active::after,
.site-nav-dropdown>summary:hover::after{transform:scaleX(1)}
.site-nav-dropdown>summary i{transition:transform .24s var(--idps-motion-ease)}
.site-nav-dropdown[open]>summary i{transform:rotate(180deg)}
.site-submenu{transform-origin:top center;animation:idpsSubmenuIn .2s var(--idps-motion-ease) both}
.site-submenu a{display:flex;align-items:center;gap:7px;transition:color .2s ease,background .2s ease,padding .2s ease}
.site-submenu a::before{
  content:"\eaa0";
  font-family:IcoFont!important;
  font-size:11px;
  color:var(--idps-motion-gold);
  opacity:0;
  transform:translateX(-3px);
  transition:opacity .2s ease,transform .2s ease;
}
.site-submenu a:hover{padding-left:12px}
.site-submenu a:hover::before{opacity:1;transform:none}
@keyframes idpsSubmenuIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

/* Announcement: polished background, no looping shine. */
.idps-announcement{
  background:linear-gradient(90deg,#056f2c,#087e34,#056f2c)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 4px 12px rgba(2,55,25,.08);
}

/* Reveal hierarchy: no blur, short travel, short stagger. */
.idps-motion-ready .idps-reveal{
  opacity:0!important;
  transform:translate3d(0,16px,0)!important;
  transition:
    opacity .58s var(--idps-motion-ease) var(--idps-delay,0ms),
    transform .58s var(--idps-motion-ease) var(--idps-delay,0ms)!important;
  will-change:opacity,transform;
}
.idps-motion-ready .idps-reveal[data-idps-motion="left"]{transform:translate3d(-14px,8px,0)!important}
.idps-motion-ready .idps-reveal[data-idps-motion="right"]{transform:translate3d(14px,8px,0)!important}
.idps-motion-ready .idps-reveal[data-idps-motion="zoom"]{transform:translate3d(0,10px,0) scale(.985)!important}
.idps-motion-ready .idps-reveal.is-visible{opacity:1!important;transform:none!important}

/* Hero: cinematic entry only; no pointer-follow glow. */
.herobannerarea.herobannerarea__university{isolation:isolate}
.idps-hero-accent{
  position:absolute;
  z-index:3;
  left:50%;
  top:48%;
  width:min(500px,54vw);
  aspect-ratio:1;
  border-radius:50%;
  pointer-events:none;
  opacity:.12;
  background:radial-gradient(circle,rgba(242,201,76,.48) 0,rgba(242,201,76,.12) 38%,transparent 70%);
  transform:translate(-50%,-50%);
}
.herobannerarea .swiper-slide-active .herobannerarea__small__title{animation:idpsHeroUp .58s .04s var(--idps-motion-ease) both}
.herobannerarea .swiper-slide-active .herobannerarea__title__heading__2{animation:idpsHeroUp .64s .10s var(--idps-motion-ease) both}
.herobannerarea .swiper-slide-active .herobannerarea__text{animation:idpsHeroUp .64s .17s var(--idps-motion-ease) both}
.herobannerarea .swiper-slide-active .hreobannerarea__button__2{animation:idpsHeroUp .64s .24s var(--idps-motion-ease) both}
@keyframes idpsHeroUp{from{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:none}}

/* Slider controls: premium, not oversized or flashy. */
.herobannerarea.herobannerarea__university .swiper-button-next,
.herobannerarea.herobannerarea__university .swiper-button-prev{
  border:1px solid rgba(255,255,255,.5)!important;
  background:rgba(3,61,29,.36)!important;
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  box-shadow:0 8px 20px rgba(0,0,0,.14);
  transition:transform .22s var(--idps-motion-ease),background .22s ease,border-color .22s ease!important;
}
@media(hover:hover) and (pointer:fine){
  .herobannerarea.herobannerarea__university .swiper-button-next:hover,
  .herobannerarea.herobannerarea__university .swiper-button-prev:hover{
    background:rgba(232,189,47,.94)!important;
    border-color:rgba(255,255,255,.8)!important;
    transform:translateY(-1px) scale(1.035);
  }
}
.herobannerarea.herobannerarea__university .swiper-button-next::after,
.herobannerarea.herobannerarea__university .swiper-button-prev::after{font-size:15px!important;font-weight:800!important}

/* Main CTA icons: use premium arrows only where they add meaning. */
.default__button,
.idps-button,
.site-nav-cta,
.cta__button{
  transition:transform .24s var(--idps-motion-ease),box-shadow .24s ease,background .24s ease,color .24s ease!important;
}
.idps-btn-icon,
.default__button > i[class*="arrow"]:not(.idps-btn-icon),
.idps-button > i[class*="arrow"]:not(.idps-btn-icon){
  display:inline-grid!important;
  place-items:center;
  width:25px;
  height:25px;
  margin-left:8px!important;
  border-radius:50%;
  background:rgba(255,255,255,.15);
  font-size:12px!important;
  transition:transform .22s var(--idps-motion-ease),background .22s ease!important;
}
@media(hover:hover) and (pointer:fine){
  .default__button:hover,
  .idps-button:hover,
  .site-nav-cta:hover,
  .cta__button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(4,61,29,.16)!important}
  .default__button:hover .idps-btn-icon,
  .idps-button:hover .idps-btn-icon,
  .site-nav-cta:hover .idps-btn-icon,
  .cta__button:hover .idps-btn-icon,
  .default__button:hover > i[class*="arrow"]:not(.idps-btn-icon),
  .idps-button:hover > i[class*="arrow"]:not(.idps-btn-icon){transform:translateX(2px)}
}
.herobannerarea .default__button .idps-btn-icon,
.herobannerarea .default__button > i[class*="arrow"]:not(.idps-btn-icon){background:rgba(7,91,43,.09)}
.herobannerarea .default__button:hover .idps-btn-icon,
.herobannerarea .default__button:hover > i[class*="arrow"]:not(.idps-btn-icon){background:rgba(255,255,255,.16)}

/* Cards: subtle elevation only. */
.idps-card,
.idps-form-card,
.single__service,
.single__activity,
.primary,
.instructor__inner__wraper,
.instructor__sidebar,
.aboutarea__content__tap__wraper{
  transition:transform .3s var(--idps-motion-ease),box-shadow .3s ease,border-color .3s ease!important;
}
@media(hover:hover) and (pointer:fine){
  .idps-card:hover,
  .single__service:hover,
  .single__activity:hover,
  .primary:hover{transform:translateY(-4px);box-shadow:var(--idps-motion-shadow)!important}
}

/* Contact/card icon badge: no rotation. */
.idps-card>i:first-child{
  width:58px;
  height:58px;
  display:inline-grid!important;
  place-items:center;
  border-radius:16px;
  color:var(--idps-motion-green)!important;
  background:linear-gradient(145deg,#fff9dc,#eef8f0);
  border:1px solid rgba(7,91,43,.1);
  box-shadow:0 9px 20px rgba(4,61,29,.08),inset 0 1px #fff;
  font-size:27px!important;
  transition:transform .28s var(--idps-motion-ease),box-shadow .28s ease;
}
@media(hover:hover) and (pointer:fine){.idps-card:hover>i:first-child{transform:translateY(-2px) scale(1.025);box-shadow:0 12px 24px rgba(4,61,29,.11)}}

/* Existing service/list icons: premium but calm. */
.single__service .service__icon{filter:drop-shadow(0 7px 12px rgba(4,61,29,.11));transition:transform .3s var(--idps-motion-ease),filter .3s ease!important}
@media(hover:hover) and (pointer:fine){.single__service:hover .service__icon{transform:translateY(-2px) scale(1.035);filter:drop-shadow(0 9px 15px rgba(4,61,29,.15))}}
.aboutarea__list__2 li i{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  flex:0 0 24px;
  border-radius:50%;
  color:var(--idps-motion-green)!important;
  background:rgba(232,189,47,.17);
  box-shadow:inset 0 0 0 1px rgba(232,189,47,.22);
}

/* Home activity feature icons replace generic arrows, but stay balanced. */
.single__activity{position:relative;overflow:hidden;border:1px solid rgba(7,91,43,.08);border-radius:16px}
.single__activity .icon-style{
  width:54px!important;
  height:54px!important;
  min-width:54px;
  display:grid!important;
  place-items:center;
  border-radius:15px!important;
  box-shadow:0 9px 20px rgba(4,61,29,.09),inset 0 1px rgba(255,255,255,.65);
  transition:transform .28s var(--idps-motion-ease),box-shadow .28s ease!important;
}
.single__activity .icon-style i{font-size:23px!important;transition:transform .28s var(--idps-motion-ease)!important}
@media(hover:hover) and (pointer:fine){
  .single__activity:hover .icon-style{transform:translateY(-2px);box-shadow:0 12px 24px rgba(4,61,29,.12)}
  .single__activity:hover .icon-style i{transform:scale(1.035)}
}

/* Images: gentle zoom only. */
.educationarea__img,
.about__right__wraper__2,
.instructor__sidebar__img,
.single__gallery__img,
.idps-gallery-item{overflow:hidden}
.educationarea__img img,
.instructor__sidebar__img img,
.single__gallery__img img,
.idps-gallery-item img{transition:transform .55s var(--idps-motion-ease)!important}
@media(hover:hover) and (pointer:fine){
  .educationarea__img:hover img:first-child,
  .instructor__sidebar__img:hover img,
  .single__gallery__img:hover img,
  .idps-gallery-item:hover img{transform:scale(1.025)}
}
.idps-gallery-item{transition:transform .3s var(--idps-motion-ease),box-shadow .3s ease!important}
@media(hover:hover) and (pointer:fine){.idps-gallery-item:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(3,50,18,.12)!important}}

/* Inner page hero decoration: static, not endlessly moving. */
.idps-page-hero,
.breadcrumbarea{position:relative;overflow:hidden;isolation:isolate}
.idps-page-hero::before,
.breadcrumbarea::before{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  right:-105px;
  top:-145px;
  background:radial-gradient(circle,rgba(242,201,76,.20),transparent 68%);
  pointer-events:none;
  z-index:0;
}
.idps-page-hero>* ,
.breadcrumbarea .container{position:relative;z-index:2}

/* Footer: simple icon/link feedback, no rotation. */
/* Footer must never depend on scroll-reveal JS to be visible. */
.site-footer .idps-reveal{opacity:1!important;transform:none!important;transition:none!important;will-change:auto!important}

.site-footer{position:relative;overflow:hidden}
.site-footer::before{
  content:"";
  position:absolute;
  width:380px;
  height:380px;
  right:-170px;
  top:-210px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(232,189,47,.09),transparent 67%);
  pointer-events:none;
}
.site-footer .container{position:relative;z-index:2}
.site-footer-links a{display:inline-flex;align-items:center;gap:7px;transition:transform .2s ease,color .2s ease}
.site-footer-links a::before{content:"\eaa0";font-family:IcoFont!important;color:var(--idps-motion-gold);font-size:11px}
@media(hover:hover) and (pointer:fine){.site-footer-links a:hover{transform:translateX(2px)}}
.site-footer-contact i{
  width:32px;
  height:32px;
  flex:0 0 32px;
  margin-top:-3px!important;
  display:grid;
  place-items:center;
  border-radius:10px;
  color:var(--idps-motion-gold)!important;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
}
.site-socials a{transition:transform .24s var(--idps-motion-ease),background .24s ease!important}
@media(hover:hover) and (pointer:fine){.site-socials a:hover{transform:translateY(-2px);background:var(--idps-motion-gold)!important;color:var(--idps-motion-green-deep)!important}}

/* Floating contacts: no permanent pulse animation. */
.site-float{transition:transform .24s var(--idps-motion-ease),box-shadow .24s ease!important}
@media(hover:hover) and (pointer:fine){.site-float:hover{transform:translateY(-2px) scale(1.045)!important;box-shadow:0 12px 24px rgba(0,0,0,.2)}}

/* Forms / notices / tables: functional micro-feedback. */
.idps-field input,
.idps-field select,
.idps-field textarea{transition:border-color .22s ease,box-shadow .22s ease!important}
.idps-field input:focus,
.idps-field select:focus,
.idps-field textarea:focus{box-shadow:0 7px 18px rgba(7,91,43,.07)}
.idps-notice{transition:transform .26s var(--idps-motion-ease),box-shadow .26s ease!important}
@media(hover:hover) and (pointer:fine){.idps-notice:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(4,61,29,.08)!important}}
.table tbody tr{transition:background .2s ease}
.table tbody tr:hover{background:rgba(7,91,43,.035)}

/* Mobile: even calmer. */
@media(max-width:991px){
  .site-submenu{animation:none}
  .idps-hero-accent{width:78vw;opacity:.08}
  .site-navigation>a:not(.site-nav-cta)::after,
  .site-nav-dropdown>summary::after{display:none}
}
@media(max-width:640px){
  .idps-motion-ready .idps-reveal,
  .idps-motion-ready .idps-reveal[data-idps-motion="left"],
  .idps-motion-ready .idps-reveal[data-idps-motion="right"],
  .idps-motion-ready .idps-reveal[data-idps-motion="zoom"]{transform:translate3d(0,12px,0)!important}
  .idps-motion-ready .idps-reveal.is-visible{transform:none!important}
  .idps-scroll-progress{height:1px}
}

/* Reduced-motion users always get stable content. */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .idps-motion-ready .idps-reveal{opacity:1!important;transform:none!important}
  .idps-scroll-progress,.idps-hero-accent{display:none!important}
}

/* =========================================================
   ACTIVITY CARDS - LAYOUT CORRECTION (2026-08-11)
   Replaces the legacy oversized hex pseudo-shape with a
   contained premium icon badge so text can never overlap.
========================================================= */
.populerarea .row > [class*="col-"]{
  display:flex;
}

.single__activity{
  display:grid!important;
  grid-template-columns:68px minmax(0,1fr);
  align-items:start!important;
  gap:20px;
  width:100%;
  height:100%;
  padding:24px 24px!important;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(7,91,43,.10)!important;
  border-radius:20px!important;
  overflow:hidden!important;
  box-shadow:0 10px 30px rgba(4,61,29,.055);
  transition:transform .32s var(--idps-motion-ease),box-shadow .32s ease,border-color .3s ease!important;
}

.single__activity:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(7,91,43,.18)!important;
  box-shadow:0 18px 38px rgba(4,61,29,.10)!important;
}

.single__activity .icon-style{
  position:relative!important;
  isolation:isolate;
  display:grid!important;
  place-items:center!important;
  width:68px!important;
  height:68px!important;
  min-width:68px!important;
  padding:0!important;
  margin:2px 0 0!important;
  border-radius:20px!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(18,45,35,.14),inset 0 1px rgba(255,255,255,.32)!important;
  transition:transform .3s var(--idps-motion-ease),box-shadow .3s ease!important;
}

.single__activity .icon-style::after{
  content:"";
  position:absolute;
  inset:8px;
  z-index:-1;
  border-radius:16px;
  background:rgba(255,255,255,.12);
}

.single__activity .icon-style.pulm{background:linear-gradient(145deg,#9f218f,#74166d)!important}
.single__activity .icon-style.blue{background:linear-gradient(145deg,#10b3e8,#087fae)!important}
.single__activity .icon-style.orange{background:linear-gradient(145deg,#ff7a19,#e94f00)!important}
.single__activity .icon-style.yellow{background:linear-gradient(145deg,#ffb53b,#f1840d)!important}
.single__activity .icon-style.pink{background:linear-gradient(145deg,#f72c62,#c91848)!important}
.single__activity .icon-style.green{background:linear-gradient(145deg,#08c9bb,#068e86)!important}

/* Kill the template's 90x100 absolute hexagon; it caused the overlap. */
.single__activity .icon-style i::after{
  content:none!important;
  display:none!important;
}

.single__activity .icon-style i{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  font-size:30px!important;
  line-height:1!important;
  color:#fff!important;
  transform:none!important;
}

.single__activity .icon-style i::before{
  position:static!important;
  left:auto!important;
  top:auto!important;
  display:block!important;
  margin:0!important;
  font-size:30px!important;
  line-height:1!important;
  color:#fff!important;
  z-index:1!important;
}

.single__activity:hover .icon-style{
  transform:translateY(-2px) scale(1.025)!important;
  box-shadow:0 15px 28px rgba(18,45,35,.18),inset 0 1px rgba(255,255,255,.35)!important;
}
.single__activity:hover .icon-style i{transform:none!important}

.single__activity .activity__content{
  min-width:0;
  margin:0!important;
  padding:0!important;
}

.single__activity .activity__content .activity__title{
  margin:0 0 8px!important;
  font-size:20px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:-.2px;
}

.single__activity .activity__content .activity__desc{
  margin:0!important;
  padding:0!important;
  max-width:none!important;
  font-size:14.5px!important;
  line-height:1.65!important;
  color:#4c5752!important;
}

@media(max-width:991px){
  .single__activity{
    grid-template-columns:60px minmax(0,1fr);
    gap:16px;
    padding:20px!important;
    border-radius:18px!important;
  }
  .single__activity .icon-style{
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    border-radius:17px!important;
  }
  .single__activity .icon-style i::before{font-size:27px!important}
  .single__activity .activity__content .activity__title{font-size:19px!important}
}

@media(max-width:767px){
  .populerarea .row > [class*="col-"]{display:block}
  .single__activity{
    grid-template-columns:54px minmax(0,1fr);
    gap:14px;
    height:auto;
    padding:18px!important;
  }
  .single__activity .icon-style{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    border-radius:15px!important;
  }
  .single__activity .icon-style i::before{font-size:24px!important}
  .single__activity .activity__content .activity__title{
    font-size:18px!important;
    margin-bottom:6px!important;
  }
  .single__activity .activity__content .activity__desc{
    font-size:14px!important;
    line-height:1.6!important;
  }
}

@media(max-width:420px){
  .single__activity{
    grid-template-columns:48px minmax(0,1fr);
    gap:12px;
    padding:16px!important;
  }
  .single__activity .icon-style{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    border-radius:14px!important;
  }
  .single__activity .icon-style i::before{font-size:22px!important}
}
