/* Gyanodaya CMS v1.1.6 — separate header/footer branding, admission CTA and WhatsApp */
@media (min-width:1101px){
  .header-brand-shell{min-height:102px}
  .premium-brand-logo{width:78px;height:78px;flex-basis:78px;padding:5px;border-radius:19px}
  .premium-brand-copy strong{font-size:clamp(21px,1.75vw,27px)}
  .premium-brand-copy small{font-size:14.5px}
}

.footer-brand{align-items:center;gap:18px;min-width:0}
.footer-brand img{width:92px!important;height:92px!important;flex:0 0 92px;object-fit:contain;background:#fff;border-radius:18px;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.footer-brand b{font-size:19px!important;line-height:1.25}
.footer-brand small{font-size:12px!important;line-height:1.5}
.footer-admission-cta{display:flex;align-items:center;gap:12px;width:fit-content;max-width:100%;margin:24px 0 21px;padding:10px 14px 10px 10px;border:1px solid rgba(255,215,119,.55);border-radius:14px;background:linear-gradient(135deg,#ffd66e,#f0b43c);color:#351600!important;box-shadow:0 12px 30px rgba(0,0,0,.18);transition:transform .2s ease,box-shadow .2s ease}
.footer-admission-cta:hover,.footer-admission-cta:focus-visible{transform:translateY(-2px);box-shadow:0 16px 36px rgba(0,0,0,.24)}
.footer-admission-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:11px;background:rgba(90,13,38,.12)}
.footer-admission-icon svg{width:23px;height:23px;fill:#5a0d26}
.footer-admission-cta>span:nth-child(2){display:flex;flex-direction:column;line-height:1.1}
.footer-admission-cta small{font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#795015}
.footer-admission-cta strong{margin-top:4px;font-size:15px;font-weight:850;color:#351600}
.footer-admission-arrow{width:18px;height:18px;margin-left:5px;fill:none;stroke:#5a0d26;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.footer-admission-cta:hover .footer-admission-arrow{transform:translateX(3px)}

.floating-whatsapp{position:fixed;right:24px;bottom:24px;z-index:850;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 14px 34px rgba(18,140,74,.34);border:3px solid rgba(255,255,255,.95);transition:transform .2s ease,box-shadow .2s ease}
.floating-whatsapp svg{width:32px;height:32px}
.floating-whatsapp:hover,.floating-whatsapp:focus-visible{transform:translateY(-4px) scale(1.03);box-shadow:0 18px 42px rgba(18,140,74,.42)}
.back-top{right:27px!important;bottom:94px!important}

@media(max-width:1100px){
  .premium-brand-logo{width:66px;height:66px;flex-basis:66px}
}
@media(max-width:700px){
  .premium-brand-logo{width:56px;height:56px;flex-basis:56px}
  .footer-brand img{width:78px!important;height:78px!important;flex-basis:78px}
  .floating-whatsapp{right:16px;bottom:16px;width:54px;height:54px}
  .floating-whatsapp svg{width:29px;height:29px}
  .back-top{right:19px!important;bottom:82px!important}
}
@media(max-width:460px){
  .premium-brand-logo{width:52px;height:52px;flex-basis:52px}
  .footer-admission-cta{width:100%;justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){.floating-whatsapp,.footer-admission-cta{transition:none!important}}


/* v1.1.8 — authentic social-media brand icons */
.footer-socials{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}
.footer-social-link{
  position:relative;
  display:grid!important;
  place-items:center;
  width:46px;
  height:46px;
  flex:0 0 46px;
  padding:0!important;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  overflow:hidden;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.footer-social-link::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.18),transparent 56%);
  pointer-events:none;
}
.footer-social-link svg{
  position:relative;
  z-index:1;
  display:block;
  width:22px;
  height:22px;
  max-width:22px;
  max-height:22px;
}
.footer-social-link.social-facebook{background:#1877f2}
.footer-social-link.social-youtube{background:#ff0000}
.footer-social-link.social-youtube svg{width:25px;max-width:25px}
.footer-social-link.social-instagram{background:radial-gradient(circle at 31% 107%,#fdf497 0 5%,#fd5949 42%,#d6249f 65%,#285aeb 94%)}
.footer-social-link:hover,
.footer-social-link:focus-visible{
  transform:translateY(-4px);
  filter:saturate(1.08) brightness(1.04);
  box-shadow:0 16px 32px rgba(0,0,0,.28);
}
.footer-social-link:focus-visible{
  outline:3px solid rgba(255,215,119,.9);
  outline-offset:3px;
}
@media(max-width:700px){
  .footer-socials{gap:10px;margin-top:18px}
  .footer-social-link{width:43px;height:43px;flex-basis:43px;border-radius:13px}
  .footer-social-link svg{width:21px;height:21px}
}
@media(prefers-reduced-motion:reduce){
  .footer-social-link{transition:none!important}
}


/* v1.1.9 — Google Map panel and consistent contact icons */
.info-card > .info-card-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 44px;
  border-radius:13px;
  background:linear-gradient(145deg,#fff6df,#f6ead0);
  color:var(--maroon);
  border:1px solid rgba(90,13,38,.08);
}
.info-card > .info-card-icon svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.map-box{
  min-height:320px;
  border:1px solid var(--line);
  box-shadow:0 14px 35px rgba(50,19,29,.08);
  background:#f8f4ee;
}
.map-box iframe{
  display:block;
  width:100%;
  height:360px;
  border:0;
}
.map-placeholder{
  min-height:320px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:32px;
  text-align:center;
  color:var(--muted);
}
.map-placeholder svg{
  width:42px;
  height:42px;
  margin-bottom:4px;
  fill:none;
  stroke:var(--maroon);
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.map-placeholder strong{font-size:16px;color:var(--maroon)}
.map-placeholder span{max-width:420px;font-size:13px;line-height:1.65}

.footer-contact-list{display:flex;flex-direction:column;gap:13px;margin:18px 0 17px}
.footer-contact-item{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0!important;
  line-height:1.65;
}
.footer-contact-item > span:last-child{min-width:0;overflow-wrap:anywhere}
.footer-contact-icon{
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  flex:0 0 29px;
  margin-top:1px;
  border-radius:9px;
  color:var(--gold-light);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
}
.footer-contact-icon svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.footer-contact-link{display:inline-flex!important;align-items:center;gap:7px;width:fit-content}
.footer-contact-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.footer-contact-link:hover svg{transform:translateX(3px)}

.back-top{display:grid;place-items:center}
.back-top svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

.field-help{display:block;margin-top:2px;color:var(--muted);font-size:11px;line-height:1.55;font-weight:500}

@media(max-width:700px){
  .map-box,.map-placeholder{min-height:270px}
  .map-box iframe{height:300px}
}
