/*!
 * page-calendar.bundle.css — merged page-type stylesheet.
 * Built from: page-specific.css + eventCalendar.css
 * Source files preserved for rollback (point pageSpecificCSS
 * back at the individual files in header.php).
 */
 .home-hero{background:linear-gradient(135deg,var(--jinan-teal) 0%,var(--jinan-teal-dark) 100%);color:var(--white);padding:4rem 0;position:relative;overflow:hidden}.home-hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="rgba(255,255,255,0.1)" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:0.3}.home-hero .container{position:relative;z-index:2}.home-stats{background:var(--white);margin-top:-3rem;border-radius:var(--border-radius);box-shadow:var(--shadow-lg);padding:2rem;position:relative;z-index:3}.stat-item{text-align:center;padding:1rem}.stat-number{font-size:3rem;font-weight:700;color:var(--jinan-teal);display:block}.stat-label{font-size:1.1rem;color:var(--dark-grey);margin-top:0.5rem}.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.news-card{background:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition-standard)}.news-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.news-card-image{height:200px;background-size:cover;background-position:center;position:relative}.news-card-date{position:absolute;top:1rem;right:1rem;background:var(--jinan-teal);color:var(--white);padding:0.5rem;border-radius:var(--border-radius);font-size:0.875rem;font-weight:600}.news-card-content{padding:1.5rem}.news-card-title{font-size:1.25rem;font-weight:600;color:var(--dark-charcoal);margin-bottom:0.75rem;line-height:1.4}.news-card-excerpt{color:var(--text-muted);font-size:0.95rem;line-height:1.6;margin-bottom:1rem}.news-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:0.875rem;color:var(--text-muted)}.library-search{background:var(--light-grey);padding:2rem;border-radius:var(--border-radius);margin-bottom:2rem}.library-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.filter-btn{background:var(--white);border:1px solid var(--medium-grey);padding:0.5rem 1rem;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition-standard)}.filter-btn:hover,.filter-btn.active{background:var(--jinan-teal);color:var(--white);border-color:var(--jinan-teal)}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.book-card{background:var(--white);border-radius:var(--border-radius);padding:1rem;box-shadow:var(--shadow-sm);transition:var(--transition-standard);text-align:center}.book-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.book-cover{width:100px;height:140px;background:var(--light-grey);border-radius:4px;margin:0 auto 1rem;background-size:cover;background-position:center}.book-title{font-size:1rem;font-weight:600;color:var(--dark-charcoal);margin-bottom:0.5rem;line-height:1.3}.book-author{font-size:0.875rem;color:var(--text-muted);margin-bottom:0.75rem}.book-download{background:var(--jinan-teal);color:var(--white);border:none;padding:0.5rem 1rem;border-radius:var(--border-radius);font-size:0.875rem;cursor:pointer;transition:var(--transition-standard)}.book-download:hover{background:var(--jinan-teal-hover)}.faculty-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem}.faculty-card{background:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition-standard)}.faculty-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.faculty-image{height:250px;background-size:cover;background-position:center;position:relative}.faculty-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,0.7));color:var(--white);padding:1.5rem 1rem 1rem}.faculty-name{font-size:1.25rem;font-weight:600;margin-bottom:0.25rem}.faculty-title{font-size:0.95rem;opacity:0.9}.faculty-content{padding:1.5rem}.faculty-description{color:var(--text-muted);line-height:1.6;margin-bottom:1rem}.faculty-contact{font-size:0.875rem;color:var(--jinan-teal)}.calendar-container{background:var(--white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);overflow:hidden}.calendar-header{background:var(--jinan-teal);color:var(--white);padding:1.5rem;text-align:center}.calendar-month{font-size:1.5rem;font-weight:600;margin-bottom:0.5rem}.calendar-year{font-size:1.125rem;opacity:0.9}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day-header{background:var(--light-grey);padding:1rem 0.5rem;text-align:center;font-weight:600;font-size:0.875rem;color:var(--dark-grey)}.calendar-day{min-height:80px;border:1px solid var(--medium-grey);padding:0.5rem;position:relative}.calendar-day-number{font-weight:600;color:var(--dark-charcoal)}.calendar-event{background:var(--jinan-teal-light);color:var(--jinan-teal);padding:0.25rem;border-radius:3px;font-size:0.75rem;margin-top:0.25rem;cursor:pointer}.calendar-event:hover{background:var(--jinan-teal);color:var(--white)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem}.contact-info{background:var(--light-grey);padding:2rem;border-radius:var(--border-radius)}.contact-item{display:flex;align-items:flex-start;margin-bottom:1.5rem}.contact-icon{background:var(--jinan-teal);color:var(--white);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-inline-end:1rem;flex-shrink:0}.contact-details h4{color:var(--jinan-teal);margin-bottom:0.5rem;font-size:1.1rem}.contact-details p{color:var(--text-muted);margin:0;line-height:1.6}.contact-form{background:var(--white);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}@media (max-width:991.98px){.home-stats{margin-top:-2rem;padding:1.5rem}.stat-number{font-size:2.5rem}.news-grid,.faculty-grid,.book-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.contact-grid{grid-template-columns:1fr;gap:2rem}.calendar-grid{font-size:0.875rem}.calendar-day{min-height:60px}}@media (max-width:767.98px){.home-hero{padding:3rem 0}.home-stats{margin-top:-1.5rem;padding:1rem}.stat-number{font-size:2rem}.library-filters{gap:0.5rem}.filter-btn{padding:0.375rem 0.75rem;font-size:0.875rem}.news-grid,.faculty-grid,.book-grid{grid-template-columns:1fr}}.hideOut{display:none}.hideMe{float:right}.eventCalendar-wrap{position:relative;overflow:hidden}.eventCalendar-wrap .arrow{position:relative;float:right;z-index:5;bottom:5px;color:#c7c3c3}.eventCalendar-wrap .prev{right:38px !important}.eventCalendar-wrap .next{right:28px !important}.eventsCalendar-currentTitle .monthTitle{display:block;text-align:end;color:#c7c3c3;text-decoration:none;font-family:'Oswald',Helvetica,Arial,sans-serif;font-weight:300;font-size:25px}.eventsCalendar-monthWrap{position:absolute;top:0;left:0;z-index:2}.eventsCalendar-monthWrap.currentMonth{z-index:1;position:absolute;top:28px}.eventsCalendar-daysList{display:table;width:100%}.eventsCalendar-daysList.showAsWeek{display:block}.eventsCalendar-daysList li{display:table-cell}.eventsCalendar-daysList li.off{background:rgba(200,200,200,1)}.eventsCalendar-daysList li.dayWithEvents{background:rgba(70,135,102,0.5)}.eventsCalendar-daysList li.today{background:rgba(var(--jinan-gold-rgb), 1)}.eventsCalendar-daysList li.today a{color:#FFFFFF}.eventsCalendar-daysList li.current{background:rgba(70,135,102,1)}.eventsCalendar-daysList.showAsWeek li{display:block;float:left;height:35px;width:35px;margin:0 7px 7px 7px}.eventsCalendar-daysList.showAsWeek li.eventsCalendar-day-header{height:auto;padding-bottom:0;margin-bottom:0;text-align:center}.eventsCalendar-daysList li a{padding:7px 0 0 0;display:block;text-align:center;font-weight:500;font-size:15px;min-width:7px;text-decoration:none;color:#969696}.eventsCalendar-daysList li.current a{color:#FFFFFF;font-weight:900}.eventsCalendar-daysList li.dayWithEvents .badge{position:absolute;text-align:center;margin:-3px 0px 0px 29px;font-size:9px;font-weight:300;color:#ffffff;min-width:12px;min-height:12px;background:var(--jinan-gold);border-radius:6px;-webkit-box-shadow:0 0 5px rgba(0,0,0,0.33);-moz-box-shadow:0 0 5px rgba(0,0,0,0.33);box-shadow:0 0 5px rgba(0,0,0,0.33)}.eventsCalendar-loading{width:100%;height:100%;text-align:center;position:absolute;padding-top:28%;background:rgba(255,255,255,0.5);z-index:99999}.eventsCalendar-list{position:relative;z-index:1;padding:0;margin:0;height:100% !important;overflow:hidden}.eventsCalendar-list.oldEventList{z-index:2}.eventsCalendar-subtitle{padding-inline-start:5px;font-weight:bold;font-size:120%}.hasEvent{}.g6{height:356px}.sonOfTab .g6,.sonOfTabinfac .g6{height:742px}.eventCalendar-wrap{width:100% !important;height:100%}.eventsCalendar-slider{width:382px !important;position:relative;float:left;height:100% !important;background:#f3f3f3;padding:28px 0 0 0}.sonOfTab .eventsCalendar-slider,.sonOfTabinfac .eventsCalendar-slider{float:none;margin:auto;height:386px !important}.eventsCalendar-list-wrap{width:597px !important;position:relative;float:left;height:100%}.sonOfTab .eventsCalendar-list-wrap,.sonOfTabinfac .eventsCalendar-list-wrap{float:none;margin:auto}.eventsCalendar-monthWrap{width:100% !important;position:relative}.eventsCalendar-currentTitle{float:right;position:relative;display:block;right:58px;position:relative;bottom:14px}.eventsCalendar-daysList{position:relative;float:left;left:22px;padding:0;margin:0}.eventsCalendar-list li{margin:0;padding:11px;position:relative;display:inline-block;width:177px;height:49.5px;vertical-align:top;overflow:hidden}.eventsCalendar-list .tblb{background:#DDDDDD}.eventsCalendar-list .tbll{background:#D3D3D3}.eventsCalendar-list li time{font-size:10px;line-height:13px}.eventsCalendar-list li time em{float:left;font-style:normal}.eventsCalendar-list li time small{font-size:10px;float:left;background-color:#807E7E;color:#fff;padding:0 5px 0 4px;margin:0 0 0 3px}.eventsCalendar-list li .eventTitle{display:block;clear:both;font-size:11px;font-weight:bold;text-decoration:none}.eventsCalendar-list li a.eventTitle{color:#0E8EAB}.eventsCalendar-list li .location,.eventsCalendar-list li time{color:#011D00}.eventsCalendar-list li a.eventTitle:hover{text-decoration:underline}#destemp{clear:both;margin:0;font-size:80%;line-height:1.2em;left:0;position:absolute;top:0;width:598px;height:100%;background:white;z-index:3}.eventsCalendar-list .eventsCalendar-noEvents{width:100%;height:100%;padding:0;color:#FFFFFF;text-align:center}.eventsCalendar-list .eventsCalendar-noEvents p{padding:10px;margin:0;text-align:center}.fa-6x{font-size:316px}.eventsCalendar-list-content{width:100%;height:100%;overflow:hidden}#Acad{position:absolute;top:0;left:0;background:#ffffff;padding:12px 14px;font-size:23px;font-weight:800;color:var(--jinan-teal)}.event-title{position:relative;padding:17px 25px;width:546px;height:29px;color:#ffffff;margin:0;float:left;font-size:19px}.event-desc h3{color:var(--jinan-teal);font-size:15px;margin:3px 0 3px 0}.event-title h3 span{font-weight:100}.event-address{border-inline-end:none}.event-address h3{margin:5px 0 0 0;color:#ffffff}.event-address h3 span{font-weight:100;width:40px}.event-image-holder,.event-desc{padding:25px;width:248px;display:inline-block;vertical-align:top;height:243px;color:#898989}.event-desc{}.event-image-holder img{width:255px;height:176px}