/* =========================================================
   SRSS Kumhari — Site Stylesheet
   Fonts : Fraunces (headings) + Manrope (body)
   Palette: Sarkar Red + Marigold Orange (from institution logo)
   ========================================================= */

:root{
  --indigo-deep:   #5c1013;
  --indigo:        #8a1c1f;
  --indigo-soft:   #c1432b;
  --amber:         #e8791f;
  --amber-soft:    #f7ac54;
  --ink:           #2b201c;
  --muted:         #6e5c54;
  --bg-soft:       #fdf3ea;
  --line:          #f0e0d2;
  --radius:        14px;
  --radius-sm:     10px;
  --shadow:        0 10px 30px -12px rgba(92,16,19,.20);
  --shadow-lg:     0 25px 60px -18px rgba(92,16,19,.30);
  --ff-head:       'Fraunces', Georgia, serif;
  --ff-body:       'Manrope', -apple-system, BlinkMacSystemFont, sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--ff-body);
  color:var(--ink);
  background:#fff;
  line-height:1.7;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6{font-family:var(--ff-head); color:var(--indigo-deep); font-weight:700; margin:0;}
p{color:var(--muted); margin:0 0 1rem;}
a{text-decoration:none; color:inherit; transition:.25s ease;}
img{max-width:100%; display:block;}
ul{margin:0; padding:0;}
.container{max-width:1240px;}
@media(min-width:1260px){
  .container{
    max-width:90% !important;
  }
}
.section{padding:clamp(52px,8vw,96px) 0;}
.bg-soft{background:var(--bg-soft);}
.bg-indigo{background:linear-gradient(180deg,var(--indigo-deep),var(--indigo)); position:relative;}
.bg-indigo .section-eyebrow{color:var(--amber-soft);}
.bg-indigo p{color:#f0d6c4;}
.text-accent{color:var(--amber);}

.section-head{max-width:680px; margin:0 auto 48px;}
.section-eyebrow{
  display:inline-flex; align-items:center; gap:8px; font-family:var(--ff-body); font-weight:800; font-size:.76rem;
  letter-spacing:.13em; text-transform:uppercase; color:var(--amber); margin-bottom:14px;
}
.section-eyebrow::before{content:""; width:24px; height:2px; background:var(--amber); display:inline-block; border-radius:2px;}
.text-center .section-eyebrow::before{display:none;}
.text-center .section-eyebrow{justify-content:center;}
.section-title{font-size:clamp(1.7rem,1.2rem + 2vw,2.3rem); line-height:1.28;}
.text-white, .text-white p{color:#fff;}

.btn-cta{
  background:linear-gradient(135deg,var(--amber),#8f5220);
  color:#fff !important; border:none; font-weight:700; padding:.75rem 1.7rem;
  border-radius:10px; box-shadow:0 10px 22px -8px rgba(193,113,47,.5);
  transition:.3s ease; display:inline-flex; align-items:center; gap:8px; white-space:nowrap;
}
.btn-cta:hover{transform:translateY(-2px); box-shadow:0 16px 28px -8px rgba(193,113,47,.55); color:#fff;}
.btn-outline-cta{
  border:1.5px solid var(--indigo-soft); color:var(--indigo); padding:.72rem 1.6rem;
  border-radius:10px; font-weight:700; display:inline-flex; align-items:center; gap:8px; transition:.3s ease;
}
.btn-outline-cta:hover{background:var(--indigo); color:#fff; border-color:var(--indigo);}
.btn-outline-light-cta{
  border:1.5px solid rgba(255,255,255,.6); color:#fff; padding:.72rem 1.6rem;
  border-radius:10px; font-weight:700; display:inline-flex; align-items:center; gap:8px; transition:.3s ease;
}
.btn-outline-light-cta:hover{background:#fff; color:var(--indigo-deep);}

/* =========================== Preloader =========================== */
#preloader{
  position:fixed; inset:0; z-index:9999;
  background:radial-gradient(circle at 50% 42%,var(--indigo) 0%,var(--indigo-deep) 72%);
  display:flex; align-items:center; justify-content:center; transition:opacity .5s ease, visibility .5s ease;
}
#preloader.loaded{opacity:0; visibility:hidden;}
.loader-wrap{position:relative; width:132px; height:132px; display:flex; align-items:center; justify-content:center;}
.loader-logo{
  width:100px; height:100px; object-fit:contain; border-radius:50%; background:#fff;
  padding:6px; box-shadow:0 0 26px -2px rgba(247,172,84,.55); animation:pulseLogo 1.8s ease-in-out infinite;
}
.loader-ring{
  position:absolute; inset:0; border-radius:50%; border:3px solid rgba(255,255,255,.14);
  border-top-color:var(--amber); border-right-color:var(--amber-soft); animation:spin 1.3s linear infinite;
}
.loader-ring-2{inset:14px; border-width:2px; border-top-color:transparent; border-bottom-color:var(--amber-soft); animation:spin 1.8s linear infinite reverse;}
@keyframes spin{to{transform:rotate(360deg);}}
@keyframes pulseLogo{0%,100%{transform:scale(1); box-shadow:0 0 26px -2px rgba(247,172,84,.55);} 50%{transform:scale(1.06); box-shadow:0 0 34px 2px rgba(247,172,84,.75);}}

/* =========================== Top Bar =========================== */
.top-bar{background:var(--indigo-deep); color:#f0d6c4; font-size:.85rem; padding:8px 0;}
.header-contact li, .header-social li{display:inline-flex; align-items:center;}
.header-contact li{margin-right:22px;}
.header-contact i{color:var(--amber-soft); margin-right:7px;}
.header-contact a{color:#f0d6c4;}
.header-contact a:hover{color:#fff;}
.header-social li{margin-left:10px;}
.header-social a{
  width:28px; height:28px; border-radius:50%; background:rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center; font-size:.78rem; color:#f0d6c4;
}
.header-social a:hover{background:var(--amber); color:#fff;}

/* =========================== Navbar =========================== */
.site-navbar{background:#fff; box-shadow:0 2px 18px rgba(92,16,19,.06); z-index:1030; transition:.25s ease;}
.site-navbar.scrolled{box-shadow:0 8px 26px rgba(92,16,19,.14);}
.navbar-brand{display:flex; align-items:center; gap:12px; padding:10px 0;}
.brand-mark{
  width:85px; height:85px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  flex-shrink:0; transition:.3s ease;
}
.brand-mark img{width:100%; height:100%; object-fit:contain;}
.navbar-brand:hover .brand-mark{transform:rotate(-6deg) scale(1.05);}
.brand-text{display:flex; flex-direction:column; line-height:1.1;}
.brand-title{font-family:var(--ff-head); font-weight:800; font-size:1.35rem; color:var(--indigo-deep); letter-spacing:.02em;}
.brand-sub{font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); font-weight:600;}

.navbar-nav{align-items:center; gap:2px;}
.nav-link{
  font-weight:700; font-size:.9rem; color:var(--ink) !important; padding:10px 14px !important;
  border-radius:8px; position:relative;
}
.nav-link:hover, .nav-link.active{color:var(--indigo-soft) !important;}
.nav-link.active{color:var(--amber) !important;}
.dropdown-menu{border:none; border-radius:var(--radius-sm); box-shadow:var(--shadow-lg); padding:10px; margin-top:8px;}
.dropdown-item{border-radius:8px; padding:9px 14px; font-weight:600; font-size:.88rem;}
.dropdown-item:hover, .dropdown-item:focus{background:var(--bg-soft); color:var(--indigo);}

@media (min-width: 992px){
  .nav-item.dropdown:hover > .dropdown-menu{display:block; margin-top:0; animation:fadeDown .25s ease;}
}
@keyframes fadeDown{from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:translateY(0);}}
.btn-cta{margin-left:4px;}

/* =========================== Landing Hero (full-width slider) =========================== */
.hero-stack{position:relative;}
.hero-stack-media{height:78vh; min-height:480px; overflow:hidden; position:relative;}
.hero-stack-media .hero-slide{overflow:hidden; height:78vh; min-height:480px;}
.hero-stack-media .hero-slide img{
  width:100%; height:78vh; min-height:480px; object-fit:cover;
  transform:scale(1.06); transition:transform 6.5s ease-out;
}
.hero-stack-media .hero-slide.slick-active img{animation:kenBurns 7s ease-out forwards;}
@keyframes kenBurns{
  from{transform:scale(1.12) translate3d(0,0,0);}
  to{transform:scale(1) translate3d(0,-1.5%,0);}
}
.hero-stack-media::after{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:1;
  background:linear-gradient(0deg,rgba(92,16,19,.5) 0%,rgba(92,16,19,0) 32%);
}
.hero-stack .hero-slider .slick-dots{bottom:24px; z-index:3;}
.hero-stack .hero-slider .slick-dots li button:before{color:#fff; opacity:.6; font-size:9px;}
.hero-stack .hero-slider .slick-dots li.slick-active button:before{opacity:1; color:var(--amber);}

.hero-stack .slick-arrow{
  position:absolute; top:50%; z-index:3; width:46px; height:46px; border-radius:50%;
  background:rgba(255,255,255,.16); backdrop-filter:blur(4px); border:1.5px solid rgba(255,255,255,.35);
  color:#fff; display:flex !important; align-items:center; justify-content:center; font-size:0;
  transform:translateY(-50%); cursor:pointer; transition:.25s ease;
}
.hero-stack .slick-arrow:before{
  font-family:'Font Awesome 6 Free'; font-weight:900; font-size:1rem; color:#fff; opacity:1;
}
.hero-stack .slick-prev{left:26px;}
.hero-stack .slick-next{right:26px;}
.hero-stack .slick-prev:before{content:"\f104";}
.hero-stack .slick-next:before{content:"\f105";}
.hero-stack .slick-arrow:hover{background:var(--amber); border-color:var(--amber);}
@media (max-width:767.98px){.hero-stack .slick-arrow{display:none !important;}}

/* =========================== Wave divider =========================== */
.wave-divider{line-height:0; margin-top:-1px;}
.wave-divider svg{width:100%; height:60px; display:block;}
.wave-divider.wave-indigo-top svg path{fill:var(--indigo-deep);}
.wave-divider.wave-soft-top svg path{fill:var(--bg-soft);}
.wave-divider.wave-white-top svg path{fill:#fff;}

/* =========================== Our Inspiration =========================== */
.inspiration-section{position:relative;}
.inspiration-slider{border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-lg); position:relative;}
.insp-slide img{width:100%; height:440px; object-fit:cover;}
.inspiration-slider .slick-dots{position:absolute; bottom:16px; left:0; right:0; margin:0; z-index:2;}
.inspiration-slider .slick-dots li button:before{color:#fff; opacity:.6; font-size:9px;}
.inspiration-slider .slick-dots li.slick-active button:before{opacity:1; color:var(--amber);}
.inspiration-section p{font-size:1rem;}

/* =========================== About narrative block =========================== */
.narrative-block{
  position:relative; max-width:880px; margin:0 auto; text-align:center; padding:0 20px;
}
.narrative-block .quote-mark{font-family:var(--ff-head); font-size:5rem; color:var(--amber-soft); line-height:1; margin-bottom:-1.2rem;}
.narrative-block p{font-size:1.15rem; color:var(--ink); font-family:var(--ff-head); font-weight:500; line-height:1.6;}

/* =========================== Mission / Vision / Philosophy / Programs =========================== */
/* Numbered feature-card grid */
.feature-grid{max-width:980px; margin:0 auto;}
.feature-card{
  position:relative; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12);
  border-radius:18px; padding:38px 34px; height:100%; overflow:hidden; transition:.3s ease;
}
.feature-card:hover{background:rgba(255,255,255,.09); transform:translateY(-5px); border-color:rgba(255,255,255,.22);}
.feature-num{
  position:absolute; top:2px; right:22px; font-family:var(--ff-head); font-weight:700;
  font-size:5rem; line-height:1; color:rgba(255,255,255,.07); pointer-events:none;
}
.feature-icon{
  width:58px; height:58px; border-radius:14px; background:rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center; padding:12px; margin-bottom:20px; position:relative; z-index:1;
}
.feature-icon img{width:100%; height:100%; object-fit:contain;}
.feature-card h4{color:#fff; font-size:1.15rem; margin-bottom:10px; position:relative; z-index:1;}
.feature-card p{color:#f0d6c4; font-size:.92rem; margin-bottom:0; position:relative; z-index:1;}

/* =========================== Campus Life / Facilities =========================== */
.facility-full-item{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;
  box-shadow:var(--shadow); height:100%; display:flex; flex-direction:column; transition:.3s ease;
}
.facility-full-item:hover{transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--amber-soft);}
.facility-full-media{overflow:hidden;}
.facility-full-media img{width:100%; height:200px; object-fit:cover; display:block; transition:.5s ease;}
.facility-full-item:hover .facility-full-media img{transform:scale(1.08);}
.facility-full-item h3{margin:0; padding:16px; text-align:center; font-size:1rem; color:var(--indigo-deep); border-top:3px solid var(--amber);}

/* =========================== Value / info cards (generic reuse) =========================== */
.info-card{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px 26px; height:100%;
  transition:.3s ease; box-shadow:var(--shadow);
}
.info-card:hover{transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--amber-soft);}
.info-card .info-icon{
  width:56px; height:56px; border-radius:14px; background:var(--bg-soft); color:var(--indigo);
  display:flex; align-items:center; justify-content:center; font-size:1.3rem; margin-bottom:18px;
}

/* =========================== Footer =========================== */
.site-footer{background:var(--indigo-deep); color:#e6c3af; padding:70px 0 0; position:relative;}
.footer-wave{margin-top:-1px; line-height:0;}
.footer-wave svg{width:100%; height:50px; display:block;}
.footer-wave svg path{fill:var(--indigo-deep);}
.footer-brand{display:flex; align-items:center; gap:12px; margin-bottom:6px; position:relative; z-index:1;}
.footer-brand .brand-mark{width:56px; height:56px; background:#fff; border-radius:50%; padding:4px; box-shadow:0 6px 16px -4px rgba(0,0,0,.35);}
.footer-brand .brand-title{color:#fff;}
.footer-brand .brand-sub{color:#e3b9a4;}
.footer-heading{color:#fff; font-family:var(--ff-body); font-weight:800; font-size:.92rem; text-transform:uppercase; letter-spacing:.07em; margin-bottom:18px;}
.footer-about{font-size:.88rem; color:#e6c3af;}
.footer-links li{margin-bottom:12px;}
.footer-links a{color:#e6c3af; font-size:.9rem; display:inline-block; transition:.25s ease;}
.footer-links a strong{color:#fff;}
.footer-links a:hover{color:var(--amber-soft); padding-left:4px;}
.footer-contact li{display:flex; align-items:flex-start; gap:10px; margin-bottom:16px; font-size:.9rem;}
.footer-contact i{color:var(--amber-soft); margin-top:4px;}
.footer-contact a{color:#e6c3af;}
.footer-contact a:hover{color:var(--amber-soft);}
.footer-social{margin-top:22px;}
.footer-social li{display:inline-block; margin-right:10px;}
.footer-social a{
  width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,.06);
  display:flex; align-items:center; justify-content:center; color:#f0d6c4;
}
.footer-social a:hover{background:var(--amber); color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08); margin-top:56px; padding:22px 0; font-size:.85rem;}
.footer-bottom a{color:var(--amber-soft); font-weight:600;}

/* =========================== Back to top =========================== */
.back-to-top{
  position:fixed; right:26px; bottom:26px; width:46px; height:46px; border-radius:50%;
  background:var(--indigo); color:#fff; display:flex; align-items:center; justify-content:center;
  box-shadow:var(--shadow-lg); opacity:0; visibility:hidden; transform:translateY(10px);
  transition:.3s ease; z-index:999;
}
.back-to-top.show{opacity:1; visibility:visible; transform:translateY(0);}
.back-to-top:hover{background:var(--amber); color:#fff;}

/* =========================== Inner-page content blocks =========================== */
.content-block{padding:70px 0;}
.content-block h2.block-title{
  font-size:1.65rem; margin-bottom:20px; padding-bottom:14px; border-bottom:2px solid var(--line); position:relative;
}
.content-block h2.block-title::after{content:""; position:absolute; left:0; bottom:-2px; width:60px; height:2px; background:var(--amber);}
.content-block h4{font-size:1.1rem; color:var(--indigo-deep); margin:24px 0 12px;}
.lead-img{border-radius:var(--radius); box-shadow:var(--shadow); width:100%; object-fit:cover;}
.content-block ul.plain-list{list-style:none; margin-bottom:0;}
.content-block ul.plain-list li{position:relative; padding-left:28px; margin-bottom:10px; color:var(--muted); font-size:.95rem;}
.content-block ul.plain-list li::before{
  content:"\f00c"; font-family:'Font Awesome 6 Free'; font-weight:900; color:var(--amber);
  position:absolute; left:0; top:2px; font-size:.78rem;
}

.table-wrap{overflow-x:auto; border-radius:var(--radius); box-shadow:var(--shadow); margin-bottom:8px; -webkit-overflow-scrolling:touch;}
table.table-premium{width:100%; border-collapse:collapse; background:#fff; font-size:.88rem; min-width:560px;}
table.table-premium thead th{background:var(--indigo-deep); color:#fff; font-weight:700; padding:14px 16px; text-align:left; white-space:nowrap;}
table.table-premium tbody td{padding:13px 16px; border-bottom:1px solid var(--line); color:var(--ink); vertical-align:middle;}
table.table-premium tbody tr:last-child td{border-bottom:none;}
table.table-premium tbody tr:nth-child(even){background:var(--bg-soft);}
table.table-premium .btn-sm-view{
  display:inline-flex; align-items:center; gap:6px; background:var(--indigo); color:#fff; font-size:.78rem; font-weight:700;
  padding:6px 14px; border-radius:50px;
}
table.table-premium .btn-sm-view:hover{background:var(--amber);}

.faculty-grid .faculty-card{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius); text-align:center;
  padding:26px 16px; height:100%; transition:.3s ease;
}
.faculty-grid .faculty-card:hover{box-shadow:var(--shadow-lg); transform:translateY(-6px); border-color:var(--amber-soft);}
.faculty-photo-wrap{
  width:96px; height:96px; border-radius:50%; overflow:hidden; margin:0 auto 14px;
  border:3px solid var(--bg-soft); box-shadow:var(--shadow);
}
.faculty-photo-wrap img{width:100%; height:100%; object-fit:cover;}
.faculty-card h5{font-size:.96rem; margin-bottom:4px;}
.faculty-card .faculty-role{color:var(--amber); font-weight:700; font-size:.75rem; text-transform:uppercase; letter-spacing:.04em; margin-bottom:4px; display:block;}
.faculty-card .faculty-spec{color:var(--muted); font-size:.82rem;}

.info-strip{background:var(--bg-soft); border-radius:var(--radius); padding:24px 28px; margin-bottom:30px;}
.gallery-row img{width:100%; object-fit:cover;}

.icon-circle{
  width:66px; height:66px; margin:0 auto 16px; border-radius:50%; background:var(--bg-soft);
  display:flex; align-items:center; justify-content:center; font-size:1.4rem; color:var(--indigo);
}
.contact-info-list{list-style:none;}
.contact-info-list li{display:flex; align-items:flex-start; gap:18px; margin-bottom:26px;}
.contact-info-list li:last-child{margin-bottom:0;}
.contact-info-list .icon-circle{margin:0; flex-shrink:0;}
.contact-info-list strong{display:block; color:var(--indigo-deep); font-family:var(--ff-head); font-size:1.02rem; margin-bottom:4px;}
.contact-info-list span{color:var(--muted); font-size:.92rem;}
.contact-info-list span a{color:var(--muted);}
.contact-info-list span a:hover{color:var(--amber);}

/* =========================== Contact / Enquiry Forms =========================== */
.contact-form .form-control{
  border:1px solid var(--line); border-radius:var(--radius-sm); padding:.85rem 1.1rem;
  font-size:.94rem; background:#fff;
}
.contact-form .form-control:focus{border-color:var(--amber); box-shadow:0 0 0 3px rgba(193,113,47,.16); outline:none;}
.contact-form textarea.form-control{resize:vertical;}

/* =========================== Inner page banner =========================== */
.page-banner{
  background:linear-gradient(120deg,rgba(92,16,19,.92),rgba(138,28,31,.8)),url('../images/slider/home-slider-1.jpg');
  background-size:cover; background-position:center; padding:120px 0 70px; color:#fff;
}
.page-banner h1{color:#fff; font-size:clamp(1.7rem,1.2rem + 2vw,2.35rem); margin-bottom:12px;}
.breadcrumb-nav a{color:var(--amber-soft); font-weight:700;}
.breadcrumb-nav span{color:#f0d6c4; margin:0 8px;}
.page-placeholder{padding:90px 0; text-align:center;}
.page-placeholder i{font-size:2.6rem; color:var(--amber); margin-bottom:22px;}
.page-placeholder h3{margin-bottom:14px;}
.page-placeholder p{max-width:520px; margin:0 auto 28px;}

/* =========================== Floating light elements =========================== */
.floating-shapes{position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:1;}
.floating-shapes .shape{
  position:absolute; border-radius:50%; opacity:.55; filter:blur(.5px);
  animation:shapeFloat ease-in-out infinite;
}
.floating-shapes .shape-ring{background:none; border:2px solid rgba(247,172,84,.45);}
.floating-shapes .shape-dot{background:radial-gradient(circle at 32% 28%, var(--amber-soft), var(--amber) 70%); box-shadow:0 0 18px 2px rgba(232,121,31,.35);}
.floating-shapes .shape-soft{background:radial-gradient(circle at 32% 28%, rgba(255,255,255,.9), rgba(255,255,255,0) 70%);}

.hero-stack .floating-shapes{z-index:2;}
.hero-stack .shape-1{width:70px; height:70px; top:16%; left:7%; animation-duration:9s;}
.hero-stack .shape-2{width:16px; height:16px; top:66%; left:16%; animation-duration:6s; animation-delay:.6s;}
.hero-stack .shape-3{width:110px; height:110px; top:22%; right:9%; animation-duration:12s; animation-delay:.3s;}
.hero-stack .shape-4{width:22px; height:22px; bottom:16%; right:20%; animation-duration:7s; animation-delay:1.4s;}
.hero-stack .shape-5{width:12px; height:12px; top:40%; left:42%; animation-duration:5.5s; animation-delay:.9s;}

.bg-indigo{overflow:hidden;}
.bg-indigo > .container{position:relative; z-index:2;}
.bg-indigo .shape-1{width:90px; height:90px; top:8%; right:6%; animation-duration:10s;}
.bg-indigo .shape-2{width:14px; height:14px; top:70%; right:18%; animation-duration:6.5s; animation-delay:.8s;}
.bg-indigo .shape-3{width:50px; height:50px; bottom:6%; left:6%; animation-duration:11s; animation-delay:.4s;}
.bg-indigo .shape-4{width:10px; height:10px; top:20%; left:14%; animation-duration:5s; animation-delay:1.2s;}

.site-footer{overflow:hidden;}
.site-footer > .floating-shapes{z-index:0;}
.site-footer > .container, .site-footer .footer-wave, .site-footer .footer-bottom{position:relative; z-index:2;}
.site-footer .shape-1{width:80px; height:80px; top:6%; right:8%; animation-duration:10s;}
.site-footer .shape-2{width:16px; height:16px; top:40%; left:8%; animation-duration:7s; animation-delay:.5s;}
.site-footer .shape-3{width:12px; height:12px; bottom:20%; right:26%; animation-duration:6s; animation-delay:1s;}

@keyframes shapeFloat{
  0%,100%{transform:translate3d(0,0,0) scale(1);}
  50%{transform:translate3d(12px,-26px,0) scale(1.08);}
}
@media (prefers-reduced-motion: reduce){
  .floating-shapes .shape, .hero-stack-media .hero-slide.slick-active img, .loader-logo, .loader-ring{animation:none !important;}
}

/* =========================== Responsive =========================== */
@media (max-width: 991px){
  .navbar-collapse{padding:18px 0; max-height:80vh; overflow-y:auto;}
  .nav-link{padding:12px 6px !important;}
  .dropdown-menu{box-shadow:none; background:var(--bg-soft); padding:6px 6px 6px 16px;}
  .btn-cta{margin:10px 0 0;}
  .section{padding:56px 0;}
}
@media (max-width: 767.98px){
  .hero-stack-media, .hero-stack-media .hero-slide img{height:50vh; min-height:340px;}
  .insp-slide img{height:300px;}
}
@media (max-width: 575px){
  .header-contact li{margin-right:14px; font-size:.78rem;}
  .section-title{font-size:1.5rem;}
}
