/* Homepage slider and registration countdown enhancements. */
.home-slideshow { position:relative; }
.home-slideshow .carousel-item { position:relative; aspect-ratio:16/9; background:#4a3025; isolation:isolate; }
.home-slideshow .carousel-item::after { content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg,rgba(30,18,12,.06) 15%,rgba(30,18,12,.18) 42%,rgba(25,14,9,.92) 100%); }
.home-slideshow .carousel-item img { position:relative; z-index:0; width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.home-slideshow .carousel-item.active img { transform:scale(1.025); }
.home-slideshow .carousel-caption { right:0; bottom:0; left:0; z-index:2; padding:clamp(30px,5vw,58px) clamp(24px,5vw,58px) clamp(34px,4vw,48px); text-align:left; text-shadow:0 2px 16px rgba(0,0,0,.6); }
.home-slideshow-caption h2 { display:inline-block; max-width:90%; padding:10px 16px; border-left:4px solid #d8b37a; border-radius:6px; background:rgba(38,23,16,.88); color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:clamp(1.35rem,2.7vw,2.45rem); line-height:1.18; margin:0 0 10px; box-shadow:0 8px 24px rgba(20,10,5,.2); }
.home-slideshow-caption div { max-width:620px; color:#fff; font-size:clamp(.82rem,1.15vw,1rem); line-height:1.7; }
.home-slideshow-caption div p { margin:0; }
.home-slideshow .carousel-indicators { z-index:3; margin-bottom:16px; }
.home-slideshow .carousel-indicators [data-bs-target] { width:26px; height:4px; margin-inline:4px; border:0; border-radius:99px; opacity:.65; }
.home-slideshow .carousel-indicators .active { opacity:1; background:#fff; }
.home-slideshow .carousel-control-prev,.home-slideshow .carousel-control-next { z-index:3; width:10%; opacity:.8; }
.hero .home-slideshow { margin-top:4px; border-radius:16px; box-shadow:0 24px 55px -32px #4a302599; }
.source-landing main > .registration-countdown-section { position:relative; overflow:hidden; padding:54px 0 !important; border-bottom:0; background:linear-gradient(135deg,#4a3025 0%,#6d4933 52%,#3a251c 100%); }
.registration-countdown-section::before,.registration-countdown-section::after { content:''; position:absolute; border-radius:50%; pointer-events:none; }
.registration-countdown-section::before { width:260px; height:260px; top:-140px; right:8%; background:#d8b37a33; filter:blur(2px); }
.registration-countdown-section::after { width:180px; height:180px; bottom:-110px; left:10%; background:#fff8ef14; }
.registration-countdown-card { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,1.05fr); align-items:center; gap:42px; width:min(100%,1040px); margin:auto; padding:34px 42px; border:1px solid #ffffff2e; border-radius:24px; background:#fff8ef14; box-shadow:0 24px 70px #1d100b55, inset 0 1px #ffffff24; backdrop-filter:blur(12px); }
.source-landing main > .campus-tour-section { padding:58px 0 !important; background:#f4efe8; border-top:1px solid #e8e2da; }
.campus-tour-section .section-heading { width:min(100%,760px); margin-inline:auto; }
.campus-tour-section .section-heading h2 { margin-bottom:10px !important; font-size:clamp(1.8rem,3vw,2.35rem); }
.campus-tour-section .section-heading p { font-size:14px; }
.registration-countdown-content { color:#fff8ef; }
.registration-countdown-kicker { display:flex; align-items:center; gap:9px; margin-bottom:12px; color:#e8c99e; font-size:11px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; }
.registration-countdown-status { width:9px; height:9px; border-radius:50%; background:#9bd39a; box-shadow:0 0 0 5px #9bd39a26; animation:countdown-status-pulse 1.8s ease-in-out infinite; }
.registration-countdown-card h2 { margin:0 0 10px; color:#fff8ef; font-family:'Playfair Display',Georgia,serif; font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.15; }
.registration-countdown-description { max-width:38ch; margin:0 0 14px; color:#eadfd4; font-size:13px; line-height:1.7; }
.registration-countdown-date { margin:0; color:#d6c0aa; font-size:11px; }
.registration-countdown-date strong { color:#fff8ef; }
.registration-countdown-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.registration-countdown-item { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:118px; padding:15px 8px; border:1px solid #ffffff2c; border-radius:16px; background:#fff8ef12; box-shadow:inset 0 1px #ffffff1f,0 10px 25px #1d100b20; }
.registration-countdown-item strong { color:#fff8ef; font-family:'Playfair Display',Georgia,serif; font-size:clamp(2rem,4vw,3rem); line-height:1; text-shadow:0 4px 20px #1d100b99; }
.registration-countdown-item span { margin-top:10px; color:#e8c99e; font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; }
.registration-countdown-seconds strong { animation:countdown-number-pulse 1s ease-in-out infinite; }
@keyframes countdown-number-pulse { 0%,100% { opacity:1; transform:translateY(0); } 50% { opacity:.7; transform:translateY(-3px); } }
@keyframes countdown-status-pulse { 0%,100% { opacity:1; box-shadow:0 0 0 5px #9bd39a26; } 50% { opacity:.65; box-shadow:0 0 0 9px #9bd39a12; } }
@media(max-width:767px) {
    .home-slideshow .carousel-item { aspect-ratio:4/3; }
    .home-slideshow .carousel-caption { padding:42px 20px 30px; }
    .home-slideshow-caption h2 { max-width:100%; font-size:1.35rem; }
    .home-slideshow-caption div { font-size:.75rem; line-height:1.5; }
    .source-landing main > .registration-countdown-section { padding:38px 0 !important; }
    .registration-countdown-card { grid-template-columns:1fr; gap:24px; padding:26px 20px; border-radius:20px; }
    .registration-countdown-card h2 { font-size:1.8rem; }
    .registration-countdown-description { font-size:12px; }
    .registration-countdown-item { min-height:82px; padding:12px 4px; }
    .registration-countdown-item strong { font-size:1.8rem; }
    .registration-countdown-item span { margin-top:7px; font-size:9px; }
    .source-landing main > .campus-tour-section { padding:44px 0 !important; }
}
