/**
 * Cambrian Hall - Page Specific Styles
 * Following MVC best practices - separate CSS file
 */

/* ==========================================================================
   Common Page Styles
   ========================================================================== */
:root {
   --primary-navy: #1a3a5c;
   --gold-accent: #d4a844;
   --secondary-blue: #5a8cc8;
   --orange-accent: #e8a04c;
   --text-dark: #1a3a5c;
   --text-body: #4a5568;
   --bg-light: #f7f8fa;
   --white: #ffffff;
   --shadow-sm: 0 5px 20px rgba(0,0,0,0.08);
   --shadow-md: 0 10px 40px rgba(0,0,0,0.1);
   --shadow-lg: 0 20px 60px rgba(0,0,0,0.15);
   --radius-sm: 8px;
   --radius-md: 12px;
   --radius-lg: 16px;
   --radius-xl: 20px;
   --transition: all 0.3s ease;
}

/* Section Title Enhancements */
.tp-section-title-pre {
   color: var(--gold-accent);
   font-weight: 600;
   letter-spacing: 2px;
   text-transform: uppercase;
   font-size: 14px;
}

.tp-section-title {
   color: var(--primary-navy);
   font-weight: 700;
}

/* ==========================================================================
   Page Hero Banner (Common for all pages)
   ========================================================================== */
.page-hero-banner {
   position: relative;
   width: 100%;
   height: 400px;
   overflow: hidden;
}

.page-hero-banner img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.page-hero-overlay {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0.5));
   display: flex;
   align-items: center;
   justify-content: center;
}

.page-hero-overlay h2 {
   color: #fff;
   font-size: 48px;
   font-weight: 700;
   text-align: center;
   text-shadow: 2px 2px 8px rgba(0,0,0,0.3);
}

.page-hero-overlay p {
   color: rgba(255,255,255,0.9);
   font-size: 20px;
   text-align: center;
   margin-top: 10px;
}

@media (max-width: 991px) {
   .page-hero-banner {
      height: 300px;
   }

   .page-hero-overlay h2 {
      font-size: 36px;
   }
}

@media (max-width: 575px) {
   .page-hero-banner {
      height: 250px;
   }

   .page-hero-overlay h2 {
      font-size: 28px;
   }
}

/* ==========================================================================
   Admission Page Styles
   ========================================================================== */

/* Registration Form Wrapper */
.registration-form-wrapper {
   background: var(--white);
   border-radius: var(--radius-xl);
   padding: 50px 40px;
   box-shadow: var(--shadow-lg);
   position: relative;
   overflow: hidden;
}

.registration-form-wrapper::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 5px;
   background: linear-gradient(90deg, var(--gold-accent), var(--secondary-blue), var(--gold-accent));
}

.form-header {
   margin-bottom: 40px;
}

.form-header h3 {
   color: var(--primary-navy);
   font-size: 32px;
   font-weight: 700;
   margin-bottom: 10px;
}

.form-header p {
   color: var(--text-body);
   font-size: 16px;
}

/* Form Styles */
.registration-form .form-group {
   margin-bottom: 25px;
}

.registration-form label {
   display: block;
   color: var(--primary-navy);
   font-weight: 600;
   font-size: 14px;
   margin-bottom: 8px;
}

.registration-form label .required {
   color: #e53e3e;
}

.registration-form .form-control {
   width: 100%;
   padding: 14px 18px;
   border: 2px solid #e2e8f0;
   border-radius: var(--radius-sm);
   font-size: 15px;
   color: var(--primary-navy);
   transition: var(--transition);
   background: var(--bg-light);
}

.registration-form .form-control:focus {
   outline: none;
   border-color: var(--gold-accent);
   background: var(--white);
   box-shadow: 0 0 0 4px rgba(212, 168, 68, 0.1);
}

.registration-form .form-control::placeholder {
   color: #a0aec0;
}

.registration-form select.form-control {
   cursor: pointer;
   appearance: none;
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%231a3a5c' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-position: right 15px center;
   padding-right: 40px;
}

.registration-form textarea.form-control {
   resize: vertical;
   min-height: 100px;
}

/* Style native selects */
.registration-form select.no-nice-select {
   width: 100%;
   padding: 14px 18px;
   border: 2px solid #e2e8f0;
   border-radius: var(--radius-sm);
   font-size: 15px;
   color: var(--primary-navy);
   transition: var(--transition);
   background: var(--bg-light);
   cursor: pointer;
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%231a3a5c' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-position: right 15px center;
   padding-right: 40px;
}

.registration-form select.no-nice-select:focus {
   outline: none;
   border-color: var(--gold-accent);
   background-color: var(--white);
   box-shadow: 0 0 0 4px rgba(212, 168, 68, 0.1);
}

.registration-form .nice-select.no-nice-select {
   display: none !important;
}

.submit-btn {
   padding: 16px 50px !important;
   font-size: 16px !important;
   font-weight: 600 !important;
   background: linear-gradient(135deg, var(--gold-accent) 0%, #e8b84c 100%) !important;
   border: none !important;
   color: var(--primary-navy) !important;
   border-radius: var(--radius-sm) !important;
   transition: var(--transition) !important;
   box-shadow: 0 5px 20px rgba(212, 168, 68, 0.4);
}

.submit-btn:hover {
   transform: translateY(-3px);
   box-shadow: 0 10px 30px rgba(212, 168, 68, 0.5);
}

/* Important Info Box */
.important-info-box {
   background: var(--white);
   padding: 40px;
   border-radius: var(--radius-lg);
   box-shadow: var(--shadow-md);
   border-left: 5px solid var(--gold-accent);
   position: relative;
}

.important-info-box::before {
   content: '\f05a';
   font-family: 'Font Awesome 6 Pro', 'Font Awesome 6 Free';
   font-weight: 900;
   position: absolute;
   top: -20px;
   left: 30px;
   width: 40px;
   height: 40px;
   background: var(--gold-accent);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--white);
   font-size: 18px;
}

.important-info-list {
   list-style: none;
   padding: 0;
   margin: 0;
}

.important-info-list li {
   display: flex;
   align-items: flex-start;
   gap: 15px;
   margin-bottom: 20px;
   padding-bottom: 20px;
   border-bottom: 1px solid #eee;
}

.important-info-list li:last-child {
   margin-bottom: 0;
   padding-bottom: 0;
   border-bottom: none;
}

.important-info-list li i {
   color: var(--gold-accent);
   font-size: 20px;
   margin-top: 3px;
   flex-shrink: 0;
}

.important-info-list li span {
   color: var(--text-body);
   font-size: 15px;
   line-height: 1.7;
}

/* Step Cards */
.step-card {
   background: var(--white);
   padding: 40px 30px;
   border-radius: var(--radius-lg);
   box-shadow: var(--shadow-md);
   text-align: center;
   height: 100%;
   position: relative;
   transition: var(--transition);
   border-bottom: 4px solid transparent;
}

.step-card:hover {
   transform: translateY(-10px);
   box-shadow: var(--shadow-lg);
   border-bottom-color: var(--gold-accent);
}

.step-card__number {
   position: absolute;
   top: -20px;
   left: 50%;
   transform: translateX(-50%);
   width: 45px;
   height: 45px;
   background: linear-gradient(135deg, var(--gold-accent) 0%, #e8b84c 100%);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 20px;
   font-weight: 700;
   color: var(--primary-navy);
   box-shadow: 0 5px 20px rgba(212, 168, 68, 0.4);
}

.step-card__icon {
   width: 80px;
   height: 80px;
   background: linear-gradient(135deg, var(--primary-navy) 0%, var(--secondary-blue) 100%);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   margin: 25px auto 25px;
   transition: var(--transition);
}

.step-card:hover .step-card__icon {
   transform: scale(1.1);
}

.step-card__icon i {
   font-size: 32px;
   color: var(--white);
}

.step-card h4 {
   color: var(--primary-navy);
   font-size: 20px;
   margin-bottom: 15px;
   font-weight: 600;
}

.step-card p {
   color: var(--text-body);
   font-size: 15px;
   line-height: 1.7;
   margin: 0;
}

/* Documents List */
.documents-list {
   display: flex;
   flex-direction: column;
   gap: 12px;
}

.document-item {
   display: flex;
   align-items: center;
   gap: 15px;
   background: var(--white);
   padding: 18px 22px;
   border-radius: var(--radius-sm);
   transition: var(--transition);
   border: 1px solid #eee;
}

.document-item:hover {
   transform: translateX(10px);
   border-color: var(--gold-accent);
   box-shadow: var(--shadow-sm);
}

.document-item i {
   color: #4CAF50;
   font-size: 22px;
}

.document-item span {
   color: var(--text-body);
   font-size: 15px;
   font-weight: 500;
}

/* Download Forms Box */
.download-forms-box {
   background: linear-gradient(135deg, var(--primary-navy) 0%, var(--secondary-blue) 100%);
   padding: 45px;
   border-radius: var(--radius-lg);
   text-align: center;
   position: relative;
   overflow: hidden;
}

.download-forms-box::before {
   content: '';
   position: absolute;
   top: -50%;
   right: -50%;
   width: 100%;
   height: 100%;
   background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
}

.download-forms-box h4 {
   color: var(--white);
   font-size: 26px;
   margin-bottom: 12px;
   position: relative;
}

.download-forms-box p {
   color: rgba(255,255,255,0.85);
   font-size: 16px;
   margin-bottom: 30px;
   position: relative;
}

.download-buttons {
   display: flex;
   flex-direction: column;
   gap: 15px;
   position: relative;
}

.download-btn {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 12px;
   background: rgba(255,255,255,0.1);
   border: 2px solid rgba(255,255,255,0.3);
   padding: 18px 28px;
   border-radius: var(--radius-sm);
   color: var(--white);
   font-weight: 600;
   font-size: 16px;
   transition: var(--transition);
   text-decoration: none;
}

.download-btn:hover {
   background: var(--gold-accent);
   border-color: var(--gold-accent);
   color: var(--primary-navy);
   transform: translateY(-3px);
}

.download-btn i {
   font-size: 26px;
}

/* Admission Contact Banner */
.admission-contact {
   position: relative;
   overflow: hidden;
}

.admission-contact::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* ==========================================================================
   Contact Page Styles
   ========================================================================== */

/* Contact Info Cards */
.contact-info-card {
   background: var(--white);
   border-radius: var(--radius-lg);
   padding: 40px 30px;
   text-align: center;
   height: 100%;
   transition: var(--transition);
   border: 1px solid #eee;
   position: relative;
   overflow: hidden;
}

.contact-info-card::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 4px;
   background: var(--gold-accent);
   transform: scaleX(0);
   transition: var(--transition);
}

.contact-info-card:hover {
   transform: translateY(-10px);
   box-shadow: var(--shadow-lg);
   border-color: transparent;
}

.contact-info-card:hover::before {
   transform: scaleX(1);
}

.contact-info-icon {
   width: 90px;
   height: 90px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   margin: 0 auto 25px;
   transition: var(--transition);
}

.contact-info-card:hover .contact-info-icon {
   transform: scale(1.1) rotate(5deg);
}

.contact-info-icon i {
   font-size: 36px;
   color: var(--white);
}

.contact-info-icon.gold {
   background: linear-gradient(135deg, var(--gold-accent) 0%, #e8b84c 100%);
   box-shadow: 0 10px 30px rgba(212, 168, 68, 0.3);
}

.contact-info-icon.blue {
   background: linear-gradient(135deg, var(--secondary-blue) 0%, #4a7ab8 100%);
   box-shadow: 0 10px 30px rgba(90, 140, 200, 0.3);
}

.contact-info-icon.orange {
   background: linear-gradient(135deg, var(--orange-accent) 0%, #d89040 100%);
   box-shadow: 0 10px 30px rgba(232, 160, 76, 0.3);
}

.contact-info-card h4 {
   color: var(--primary-navy);
   font-size: 22px;
   font-weight: 700;
   margin-bottom: 15px;
}

.contact-info-card p {
   color: var(--text-body);
   font-size: 15px;
   line-height: 1.8;
   margin: 0;
}

.contact-info-card a {
   color: var(--text-body);
   text-decoration: none;
   transition: var(--transition);
}

.contact-info-card a:hover {
   color: var(--gold-accent);
}

/* Contact Form */
.contact-form-wrapper {
   background: var(--white);
   border-radius: var(--radius-xl);
   padding: 50px;
   box-shadow: var(--shadow-lg);
   position: relative;
}

.contact-form-wrapper::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 5px;
   background: linear-gradient(90deg, var(--primary-navy), var(--gold-accent), var(--primary-navy));
   border-radius: var(--radius-xl) var(--radius-xl) 0 0;
}

.contact-form .form-group {
   margin-bottom: 25px;
}

.contact-form label {
   display: block;
   color: var(--primary-navy);
   font-weight: 600;
   font-size: 14px;
   margin-bottom: 10px;
}

.contact-form .form-control {
   width: 100%;
   padding: 15px 20px;
   border: 2px solid #e2e8f0;
   border-radius: var(--radius-sm);
   font-size: 15px;
   color: var(--primary-navy);
   transition: var(--transition);
   background: var(--bg-light);
}

.contact-form .form-control:focus {
   outline: none;
   border-color: var(--gold-accent);
   background: var(--white);
   box-shadow: 0 0 0 4px rgba(212, 168, 68, 0.1);
}

.contact-form textarea.form-control {
   min-height: 150px;
   resize: vertical;
}

.contact-form .submit-btn {
   background: linear-gradient(135deg, var(--primary-navy) 0%, var(--secondary-blue) 100%) !important;
   color: var(--white) !important;
   padding: 16px 45px !important;
   border: none !important;
   border-radius: var(--radius-sm) !important;
   font-weight: 600 !important;
   font-size: 16px !important;
   cursor: pointer;
   transition: var(--transition) !important;
   box-shadow: 0 5px 20px rgba(26, 58, 92, 0.3);
}

.contact-form .submit-btn:hover {
   transform: translateY(-3px);
   box-shadow: 0 10px 30px rgba(26, 58, 92, 0.4);
}

/* Office Hours Card */
.office-hours-card {
   background: var(--white);
   border-radius: var(--radius-lg);
   padding: 40px;
   box-shadow: var(--shadow-md);
   position: relative;
   overflow: hidden;
}

.office-hours-card::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   bottom: 0;
   width: 5px;
   background: linear-gradient(180deg, var(--gold-accent), var(--secondary-blue));
}

.office-hours-card .hours-row {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 18px 0;
   border-bottom: 1px solid #eee;
}

.office-hours-card .hours-row:last-child {
   border-bottom: none;
}

.office-hours-card .day {
   font-weight: 600;
   color: var(--primary-navy);
   font-size: 16px;
}

.office-hours-card .time {
   color: var(--text-body);
   font-size: 15px;
}

.office-hours-card .time.closed {
   color: #e53e3e;
   font-weight: 600;
}

/* Map Section */
.map-wrapper {
   border-radius: var(--radius-lg);
   overflow: hidden;
   box-shadow: var(--shadow-lg);
}

.map-wrapper iframe {
   display: block;
}

/* ==========================================================================
   Alumni Page Styles
   ========================================================================== */

/* Alumni Benefits Cards */
.alumni-benefit-card {
   background: var(--white);
   border-radius: var(--radius-lg);
   padding: 40px 30px;
   text-align: center;
   height: 100%;
   transition: var(--transition);
   position: relative;
   overflow: hidden;
   border: 1px solid #eee;
}

.alumni-benefit-card::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   height: 4px;
   background: linear-gradient(90deg, var(--gold-accent), var(--secondary-blue));
   transform: scaleX(0);
   transition: var(--transition);
}

.alumni-benefit-card:hover {
   transform: translateY(-10px);
   box-shadow: var(--shadow-lg);
   border-color: transparent;
}

.alumni-benefit-card:hover::after {
   transform: scaleX(1);
}

.alumni-benefit-icon {
   width: 85px;
   height: 85px;
   border-radius: 50%;
   background: linear-gradient(135deg, var(--primary-navy) 0%, var(--secondary-blue) 100%);
   display: flex;
   align-items: center;
   justify-content: center;
   margin: 0 auto 25px;
   transition: var(--transition);
   box-shadow: 0 10px 30px rgba(26, 58, 92, 0.2);
}

.alumni-benefit-card:hover .alumni-benefit-icon {
   transform: scale(1.1) rotate(-5deg);
   background: linear-gradient(135deg, var(--gold-accent) 0%, #e8b84c 100%);
   box-shadow: 0 10px 30px rgba(212, 168, 68, 0.3);
}

.alumni-benefit-icon i {
   font-size: 32px;
   color: var(--white);
}

.alumni-benefit-card h4 {
   color: var(--primary-navy);
   font-size: 20px;
   font-weight: 700;
   margin-bottom: 15px;
}

.alumni-benefit-card p {
   color: var(--text-body);
   font-size: 15px;
   line-height: 1.7;
   margin: 0;
}

/* Notable Alumni Cards */
.alumni-profile-card {
   background: var(--white);
   border-radius: var(--radius-xl);
   overflow: hidden;
   box-shadow: var(--shadow-md);
   transition: var(--transition);
   height: 100%;
}

.alumni-profile-card:hover {
   transform: translateY(-10px);
   box-shadow: var(--shadow-lg);
}

.alumni-profile-header {
   background: linear-gradient(135deg, var(--primary-navy) 0%, var(--secondary-blue) 100%);
   padding: 40px 30px;
   text-align: center;
   position: relative;
}

.alumni-profile-header::after {
   content: '';
   position: absolute;
   bottom: -30px;
   left: 50%;
   transform: translateX(-50%);
   width: 0;
   height: 0;
   border-left: 40px solid transparent;
   border-right: 40px solid transparent;
   border-top: 30px solid var(--secondary-blue);
}

.alumni-profile-img {
   width: 140px;
   height: 140px;
   border-radius: 50%;
   border: 5px solid var(--white);
   box-shadow: 0 10px 30px rgba(0,0,0,0.2);
   object-fit: cover;
   margin: 0 auto;
}

.alumni-profile-body {
   padding: 50px 30px 30px;
   text-align: center;
}

.alumni-profile-body h4 {
   color: var(--primary-navy);
   font-size: 24px;
   font-weight: 700;
   margin-bottom: 8px;
}

.alumni-profile-body .designation {
   display: inline-block;
   background: linear-gradient(135deg, var(--gold-accent) 0%, #e8b84c 100%);
   color: var(--primary-navy);
   padding: 6px 20px;
   border-radius: 20px;
   font-size: 14px;
   font-weight: 600;
   margin-bottom: 20px;
}

.alumni-profile-body p {
   color: var(--text-body);
   font-size: 15px;
   line-height: 1.8;
   margin: 0;
}

/* Alumni Stats Section */
.alumni-stats {
   background: linear-gradient(135deg, var(--primary-navy) 0%, var(--secondary-blue) 100%);
   padding: 80px 0;
   position: relative;
   overflow: hidden;
}

.alumni-stats::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.stat-item {
   text-align: center;
   padding: 30px;
   position: relative;
}

.stat-number {
   font-size: 56px;
   font-weight: 800;
   color: var(--gold-accent);
   line-height: 1;
   margin-bottom: 10px;
}

.stat-label {
   color: rgba(255,255,255,0.9);
   font-size: 18px;
   font-weight: 500;
}

/* ==========================================================================
   Responsive Styles
   ========================================================================== */

@media (max-width: 991px) {
   .registration-form-wrapper {
      padding: 40px 30px;
   }

   .contact-form-wrapper {
      padding: 40px 30px;
   }

   .alumni-profile-header {
      padding: 30px 20px;
   }

   .stat-number {
      font-size: 42px;
   }
}

@media (max-width: 767px) {
   .registration-form-wrapper {
      padding: 30px 20px;
   }

   .form-header h3 {
      font-size: 26px;
   }

   .important-info-box {
      padding: 30px 20px;
   }

   .download-forms-box {
      padding: 30px 20px;
   }

   .contact-form-wrapper {
      padding: 30px 20px;
   }

   .alumni-profile-img {
      width: 120px;
      height: 120px;
   }

   .stat-number {
      font-size: 36px;
   }

   .stat-label {
      font-size: 14px;
   }
}

/* ==========================================================================
   Home Page - Service Cards Fix
   ========================================================================== */

/* Fix for equal height service cards in the academic programs slider */
.tp-service-5-item {
   height: 100%;
}

.tp-service-5-thumb {
   height: 520px;
   overflow: hidden;
}

.tp-service-5-thumb img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.tp-service-5-title {
   min-height: 60px;
   display: flex;
   align-items: center;
}

/* Responsive adjustments */
@media (max-width: 991px) {
   .tp-service-5-thumb {
      height: 420px;
   }

   .tp-service-5-title {
      min-height: 50px;
   }
}

@media (max-width: 767px) {
   .tp-service-5-thumb {
      height: 300px;
   }

   .tp-service-5-title {
      min-height: auto;
   }
}

/* ==========================================================================
   Home Page - Blog/News Cards Fix
   ========================================================================== */

/* Fix for equal height blog cards in News & Insights section */
.tp-blog-area .row {
   display: flex;
   flex-wrap: wrap;
}

.tp-blog-area .row > [class*="col-"] {
   display: flex;
}

.tp-blog-item {
   display: flex;
   flex-direction: column;
   height: 100%;
   width: 100%;
}

.tp-blog-thumb {
   height: 250px;
   overflow: hidden;
}

.tp-blog-thumb a {
   display: block;
   height: 100%;
}

.tp-blog-thumb img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.tp-blog-content {
   flex: 1;
   display: flex;
   flex-direction: column;
}

.tp-blog-title.home-5 {
   min-height: 60px;
   display: flex;
   align-items: center;
}

.tp-blog-btn {
   margin-top: auto;
}

/* Responsive adjustments */
@media (max-width: 991px) {
   .tp-blog-thumb {
      height: 220px;
   }

   .tp-blog-title.home-5 {
      min-height: 50px;
   }
}

@media (max-width: 767px) {
   .tp-blog-thumb {
      height: 200px;
   }

   .tp-blog-title.home-5 {
      min-height: auto;
   }
}

/* ==========================================================================
   Home Page - About Section Images
   ========================================================================== */

/* Container for the two images */
.about-image-container {
   position: relative;
   width: 100%;
   max-width: 450px;
   height: 400px;
   border-radius: 20px;
   overflow: hidden;
   box-shadow: 0 25px 80px rgba(26, 58, 92, 0.25);
   animation: container-float 5s ease-in-out infinite;
}

/* Float animation for container */
@keyframes container-float {
   0%, 100% {
      transform: translateY(0) rotate(0deg);
      box-shadow: 0 25px 80px rgba(26, 58, 92, 0.25);
   }
   25% {
      transform: translateY(-15px) rotate(1deg);
   }
   50% {
      transform: translateY(-25px) rotate(0deg);
      box-shadow: 0 45px 100px rgba(26, 58, 92, 0.15);
   }
   75% {
      transform: translateY(-15px) rotate(-1deg);
   }
}

/* Base styles for both images */
.about-img {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: opacity 1s ease-in-out;
}

/* Crossfade animation */
@keyframes crossfade-1 {
   0%, 45% {
      opacity: 1;
   }
   50%, 95% {
      opacity: 0;
   }
   100% {
      opacity: 1;
   }
}

@keyframes crossfade-2 {
   0%, 45% {
      opacity: 0;
   }
   50%, 95% {
      opacity: 1;
   }
   100% {
      opacity: 0;
   }
}

.about-img-1 {
   animation: crossfade-1 8s ease-in-out infinite;
   z-index: 2;
}

.about-img-2 {
   animation: crossfade-2 8s ease-in-out infinite;
   z-index: 1;
}

/* Pause animations on hover */
.about-image-container:hover {
   animation-play-state: paused;
}

.about-image-container:hover .about-img {
   animation-play-state: paused;
}

/* Decorative border */
.about-image-container::before {
   content: '';
   position: absolute;
   top: -5px;
   left: -5px;
   right: -5px;
   bottom: -5px;
   background: linear-gradient(135deg, var(--gold-accent, #d4a844) 0%, var(--secondary-blue, #5a8cc8) 50%, var(--gold-accent, #d4a844) 100%);
   border-radius: 24px;
   z-index: -1;
   opacity: 0.7;
   animation: border-glow 4s ease-in-out infinite;
}

@keyframes border-glow {
   0%, 100% {
      opacity: 0.5;
      transform: scale(1);
   }
   50% {
      opacity: 0.8;
      transform: scale(1.02);
   }
}

/* Responsive adjustments */
@media (max-width: 991px) {
   .about-image-container {
      max-width: 100%;
      height: 350px;
   }
}

@media (max-width: 767px) {
   .about-image-container {
      height: 280px;
      margin-bottom: 30px;
   }

   @keyframes container-float {
      0%, 100% {
         transform: translateY(0);
      }
      50% {
         transform: translateY(-12px);
      }
   }
}

/* ==========================================================================
   Breadcrumb Styles Fix
   ========================================================================== */

/* Breadcrumb Container */
.breadcrumb__area {
   position: relative;
}

.breadcrumb__content {
   position: absolute;
   bottom: 30px;
   left: 0;
   right: 0;
   z-index: 10;
   padding: 20px;
   background: linear-gradient(to top, rgba(26, 58, 92, 0.9), transparent);
}

.breadcrumb__title {
   color: #fff !important;
   font-size: 42px !important;
   font-weight: 700 !important;
   margin-bottom: 15px !important;
   text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

/* Breadcrumb List */
.breadcrumb__list {
   display: flex !important;
   align-items: center !important;
   gap: 12px !important;
   flex-wrap: wrap !important;
   visibility: visible !important;
   opacity: 1 !important;
}

.breadcrumb__list span {
   color: #fff !important;
   font-size: 15px !important;
   font-weight: 500 !important;
   visibility: visible !important;
   opacity: 1 !important;
   display: inline-block !important;
}

.breadcrumb__list span a {
   color: rgba(255, 255, 255, 0.9) !important;
   text-decoration: none !important;
   transition: all 0.3s ease !important;
   visibility: visible !important;
   opacity: 1 !important;
}

.breadcrumb__list span a:hover {
   color: #d4a844 !important;
}

/* Breadcrumb Divider */
.breadcrumb__list .dvdr {
   color: #d4a844 !important;
   display: inline-flex !important;
   align-items: center !important;
   visibility: visible !important;
   opacity: 1 !important;
}

.breadcrumb__list .dvdr i {
   font-size: 12px !important;
   color: #d4a844 !important;
   visibility: visible !important;
   opacity: 1 !important;
}

/* Responsive Breadcrumb */
@media (max-width: 767px) {
   .breadcrumb__title {
      font-size: 28px !important;
   }

   .breadcrumb__content {
      bottom: 20px;
      padding: 15px;
   }

   .breadcrumb__list span {
      font-size: 13px !important;
   }
}

/* ==========================================================================
   Footer Styles - Responsive & Attractive
   ========================================================================== */

/* Footer Main Styling */
.tp-footer-5-area {
   background: linear-gradient(135deg, #1a3a5c 0%, #0d1f30 100%) !important;
   position: relative;
   overflow: hidden;
}

.tp-footer-5-area::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
   pointer-events: none;
}

/* Footer Logo Section */
.tp-footer-logo {
   text-align: center;
}

.tp-footer-logo img {
   max-width: 100px !important;
   border-radius: 12px !important;
   background: #fff !important;
   padding: 8px !important;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
   transition: transform 0.3s ease;
}

.tp-footer-logo img:hover {
   transform: scale(1.05);
}

.tp-footer-logo h4 {
   font-size: 24px !important;
   font-weight: 700 !important;
   margin-top: 15px !important;
   color: #fff !important;
   letter-spacing: 1px;
}

/* Footer Widget Titles */
.tp-footer-widget-title {
   color: #fff !important;
   font-size: 20px !important;
   font-weight: 700 !important;
   margin-bottom: 25px !important;
   position: relative;
   padding-bottom: 15px;
}

.tp-footer-widget-title::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   width: 50px;
   height: 3px;
   background: linear-gradient(90deg, #d4a844, transparent);
   border-radius: 3px;
}

/* Footer Links */
.tp-footer-widget-content ul {
   list-style: none;
   padding: 0;
   margin: 0;
}

.tp-footer-widget-content ul li {
   margin-bottom: 12px;
}

.tp-footer-widget-content ul li a {
   color: #b8c5d4 !important;
   font-size: 15px;
   transition: all 0.3s ease;
   display: inline-block;
   position: relative;
   padding-left: 0;
}

.tp-footer-widget-content ul li a::before {
   content: '→';
   position: absolute;
   left: -20px;
   opacity: 0;
   transition: all 0.3s ease;
   color: #d4a844;
}

.tp-footer-widget-content ul li a:hover {
   color: #d4a844 !important;
   padding-left: 20px;
}

.tp-footer-widget-content ul li a:hover::before {
   opacity: 1;
   left: 0;
}

/* Footer Column Spacing */
.tp-footer-col-3 {
   padding-right: 30px;
}

.tp-footer-col-4 {
   padding-left: 30px;
}

/* Footer Contact Items */
.tp-footer-contact-item {
   margin-bottom: 20px !important;
   padding: 15px;
   background: rgba(255, 255, 255, 0.05);
   border-radius: 10px;
   transition: all 0.3s ease;
}

.tp-footer-contact-item:hover {
   background: rgba(255, 255, 255, 0.1);
   transform: translateX(5px);
}

.tp-footer-contact-icon {
   width: 45px;
   height: 45px;
   min-width: 45px;
   background: linear-gradient(135deg, #d4a844, #e8b84c) !important;
   border-radius: 50%;
   display: flex !important;
   align-items: center;
   justify-content: center;
   margin-right: 15px !important;
}

.tp-footer-contact-icon i {
   color: #1a3a5c !important;
   font-size: 18px;
}

.tp-footer-contact-text p {
   margin: 0;
   color: #b8c5d4 !important;
   font-size: 14px;
   line-height: 1.6;
}

/* Footer Social Icons */
.tp-footer-widget-social {
   display: flex;
   gap: 12px;
}

.tp-footer-widget-social a {
   width: 50px !important;
   height: 50px !important;
   border-radius: 50% !important;
   background: rgba(255, 255, 255, 0.1) !important;
   display: inline-flex !important;
   align-items: center !important;
   justify-content: center !important;
   transition: all 0.3s ease !important;
   border: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-footer-widget-social a:hover {
   background: #d4a844 !important;
   transform: translateY(-5px);
   box-shadow: 0 10px 25px rgba(212, 168, 68, 0.3);
}

.tp-footer-widget-social a i {
   font-size: 20px !important;
   color: #fff !important;
   transition: color 0.3s ease;
}

.tp-footer-widget-social a:hover i {
   color: #1a3a5c !important;
}

/* Footer Motto */
.tp-footer-motto p {
   color: #d4a844 !important;
   font-style: italic !important;
   font-size: 20px !important;
   font-weight: 500;
   margin-top: 25px;
   padding: 15px 20px;
   background: rgba(212, 168, 68, 0.1);
   border-left: 3px solid #d4a844;
   border-radius: 0 8px 8px 0;
}

/* Footer Copyright */
.tp-footer-copyright {
   border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
   padding: 30px 0 !important;
   margin-top: 30px;
}

.tp-footer-copyright-inner p {
   color: #8a9bb0 !important;
   font-size: 14px;
   margin: 0;
}

.tp-footer-copyright-inner a {
   color: #b8c5d4 !important;
   transition: color 0.3s ease;
}

.tp-footer-copyright-inner a:hover {
   color: #d4a844 !important;
}

/* Footer Responsive Styles */
@media (max-width: 991px) {
   .tp-footer-5-area {
      padding-top: 80px !important;
   }

   .tp-footer-col-3,
   .tp-footer-col-4 {
      padding-left: 0;
      padding-right: 0;
   }

   .tp-footer-widget {
      text-align: center;
   }

   .tp-footer-widget-title::after {
      left: 50%;
      transform: translateX(-50%);
   }

   .tp-footer-widget-content ul li a::before {
      display: none;
   }

   .tp-footer-widget-content ul li a:hover {
      padding-left: 0;
   }

   .tp-footer-contact-item {
      justify-content: center;
   }

   .tp-footer-widget-social {
      justify-content: center;
   }

   .tp-footer-motto p {
      text-align: center;
      border-left: none;
      border-radius: 8px;
   }
}

@media (max-width: 767px) {
   .tp-footer-5-area {
      padding-top: 60px !important;
   }

   .tp-footer-logo h4 {
      font-size: 20px !important;
   }

   .tp-footer-widget-title {
      font-size: 18px !important;
   }

   .tp-footer-contact-item {
      flex-direction: column;
      text-align: center;
   }

   .tp-footer-contact-icon {
      margin: 0 auto 10px !important;
   }

   .tp-footer-copyright {
      text-align: center;
   }

   .tp-footer-copyright-inner {
      text-align: center !important;
      margin-bottom: 10px;
   }

   .tp-footer-copyright .col-md-5 .tp-footer-copyright-inner {
      margin-bottom: 0;
   }
}

@media (max-width: 575px) {
   .tp-footer-5-area {
      padding-top: 50px !important;
   }

   .tp-footer-widget {
      margin-bottom: 30px !important;
   }

   .tp-footer-motto p {
      font-size: 16px !important;
      padding: 12px 15px;
   }

   .tp-footer-widget-social a {
      width: 45px !important;
      height: 45px !important;
   }

   .tp-footer-widget-social a i {
      font-size: 18px !important;
   }
}

/* ==========================================================================
   Home Page - Blog Section Title Centering
   ========================================================================== */

/* Blog Section Title Centering */
.tp-blog-5-area .tp-blog-title-wrapper,
.tp-blog-title-wrapper {
   text-align: center !important;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
}

.tp-blog-5-area .tp-blog-title-wrapper .tp-section-title-pre,
.tp-blog-5-area .tp-blog-title-wrapper .tp-section-title,
.tp-blog-title-wrapper .tp-section-title-pre,
.tp-blog-title-wrapper .tp-section-title {
   text-align: center !important;
   display: block;
   width: 100%;
   margin-left: auto;
   margin-right: auto;
   padding-left: 0 !important;
}

/* Hide the square icon before blog section title */
.tp-blog-title-wrapper .tp-section-title-pre::after,
.tp-blog-title-wrapper .tp-section-title-pre::before {
   display: none !important;
   content: none !important;
}

/* ==========================================================================
   Mobile Navigation Fixes
   ========================================================================== */

/* Hamburger button visibility fix */
.hamburger-btn span {
   background-color: #1a3a5c !important;
}

/* Style hamburger button */
.hamburger-btn {
   width: 40px;
   height: 30px;
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   gap: 6px;
   background: transparent;
   border: none;
   cursor: pointer;
   padding: 0;
}

.hamburger-btn span {
   display: block;
   width: 100%;
   height: 3px;
   background-color: #1a3a5c !important;
   border-radius: 3px;
   transition: all 0.3s ease;
}

.hamburger-btn span:first-child {
   width: 60%;
}

/* Mobile hamburger wrapper (below 992px) */
.tp-header-hamburger-mobile {
   padding: 10px 0;
}

/* Hide tablet hamburger on desktop (1200px and above) */
@media (min-width: 1200px) {
   .tp-header-hamburger {
      display: none !important;
   }
}

/* Show tablet hamburger (992px - 1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
   .tp-header-hamburger {
      display: flex !important;
      align-items: center;
      justify-content: flex-end;
      padding: 10px 0;
   }
}

/* Offcanvas mobile menu styling */
.offcanvas__area {
   background: #1a3a5c !important;
}

/* Mobile menu text color fix */
.tp-main-menu-mobile ul li > a {
   color: #ffffff !important;
}

.tp-main-menu-mobile ul li ul li a {
   color: rgba(255, 255, 255, 0.85) !important;
}

.tp-main-menu-mobile ul li:hover > a {
   color: #d4a844 !important;
}

/* Dropdown toggle button (arrow) styling */
.tp-main-menu-mobile ul li.has-dropdown > a .dropdown-toggle-btn {
   display: flex !important;
   align-items: center;
   justify-content: center;
   width: 35px;
   height: 35px;
   border: 2px solid rgba(255, 255, 255, 0.3) !important;
   border-radius: 5px;
   color: #ffffff !important;
   background: rgba(255, 255, 255, 0.1);
}

.tp-main-menu-mobile ul li.has-dropdown > a .dropdown-toggle-btn:hover {
   background: #d4a844 !important;
   border-color: #d4a844 !important;
   color: #1a3a5c !important;
}

.tp-main-menu-mobile ul li.has-dropdown > a .dropdown-toggle-btn i {
   color: #ffffff !important;
   font-size: 14px;
}

.tp-main-menu-mobile ul li.has-dropdown > a .dropdown-toggle-btn:hover i {
   color: #1a3a5c !important;
}

/* Submenu background */
.tp-main-menu-mobile ul li .submenu {
   background: rgba(0, 0, 0, 0.2) !important;
   border-radius: 8px;
   margin: 10px 0;
   padding: 10px 0 !important;
}

.tp-main-menu-mobile ul li .submenu li a {
   padding-left: 15px !important;
   font-size: 15px !important;
}

/* Border between menu items */
.tp-main-menu-mobile ul li:not(:last-child) a {
   border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* Offcanvas close button */
.offcanvas__close-btn {
   color: #ffffff !important;
   border: 2px solid rgba(255, 255, 255, 0.3) !important;
   background: rgba(255, 255, 255, 0.1) !important;
}

.offcanvas__close-btn:hover {
   background: #d4a844 !important;
   border-color: #d4a844 !important;
   color: #1a3a5c !important;
}

/* Offcanvas content text */
.offcanvas__text p,
.offcanvas__contact-content a,
.offcanvas__contact-content-icon i,
.offcanvas__title {
   color: #ffffff !important;
}

.offcanvas__contact-content a:hover {
   color: #d4a844 !important;
}

/* Social icons in offcanvas */
.offcanvas__social a {
   background: rgba(255, 255, 255, 0.1) !important;
   color: #ffffff !important;
   border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.offcanvas__social a:hover {
   background: #d4a844 !important;
   color: #1a3a5c !important;
   border-color: #d4a844 !important;
}

/* Make sure hamburger is visible on smaller screens */
@media (max-width: 1199px) {
   .tp-header-main-menu {
      display: none !important;
   }

   .tp-header-hamburger {
      display: flex !important;
   }

   .hamburger-btn {
      width: 40px;
      height: 30px;
      position: relative;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 5px 0;
   }

   .hamburger-btn span {
      display: block;
      width: 100%;
      height: 3px;
      background-color: #1a3a5c !important;
      border-radius: 3px;
      position: relative;
      right: auto;
      top: auto;
   }

   .hamburger-btn span:nth-child(1) {
      width: 60%;
   }

   .hamburger-btn span:nth-child(2) {
      width: 100%;
      transform: none;
      right: auto;
   }
}

/* Additional mobile menu fixes for smaller screens */
/* ==========================================================================
   Featured News Section - Using Existing Classes
   ========================================================================== */

/* Featured News Row - Equal Heights */
.featured-news-row {
   display: flex;
   align-items: stretch;
}

/* Featured News Slide - Background Image Support */
.featured-news-slide {
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
   height: 500px;
   border-radius: 20px;
   overflow: hidden;
}

.featured-news-slide .tp-hero-title-pre div span,
.featured-news-slide .tp-hero-title div span {
   opacity: 1;
   transform: translateY(0);
}

.featured-news-slider {
   border-radius: 20px;
   overflow: hidden;
   box-shadow: 0 20px 60px rgba(26, 58, 92, 0.2);
   height: 500px;
}

/* Cards Wrapper - Match Slider Height */
.featured-news-cards {
   display: flex;
   flex-direction: column;
   gap: 15px;
   height: 500px;
}

.featured-news-cards .tp-blog-item {
   flex: 1;
   display: flex;
   flex-direction: column;
   border-radius: 15px;
   overflow: hidden;
   box-shadow: 0 10px 40px rgba(26, 58, 92, 0.12);
   max-height: calc(50% - 7.5px);
}

.featured-news-cards .tp-blog-thumb {
   height: 60%;
   overflow: hidden;
}

.featured-news-cards .tp-blog-thumb img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.featured-news-cards .tp-blog-content {
   height: 40%;
   display: flex;
   flex-direction: column;
   justify-content: center;
   padding: 15px;
}

.featured-news-cards .tp-blog-content::after {
   display: none;
}

.featured-news-cards .tp-blog-meta {
   font-size: 12px;
   color: #d4a844;
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: 1px;
   margin-bottom: 8px;
   display: block;
}

.featured-news-cards .tp-blog-title {
   font-size: 14px;
   margin-bottom: 0;
   min-height: auto;
   line-height: 1.4;
}

.featured-news-cards .tp-blog-title a {
   color: #1a3a5c;
}

.featured-news-cards .tp-blog-title a:hover {
   color: #d4a844;
}

/* Pagination Dots for Featured News */
.featured-news-dot {
   position: absolute;
   bottom: 30px;
   left: 30px;
   z-index: 10;
}

/* Responsive */
@media (max-width: 991px) {
   .featured-news-row {
      flex-direction: column;
   }

   .featured-news-slide {
      height: 400px;
   }

   .featured-news-slider {
      height: 400px;
   }

   .featured-news-cards {
      height: auto;
      flex-direction: row;
      margin-top: 20px;
   }

   .featured-news-cards .tp-blog-item {
      flex: 1;
      max-height: none;
   }

   .featured-news-cards .tp-blog-thumb {
      height: 140px;
   }

   .featured-news-cards .tp-blog-content {
      height: auto;
   }
}

@media (max-width: 767px) {
   .featured-news-slide {
      height: 350px;
   }

   .featured-news-slider {
      height: 350px;
   }

   .featured-news-cards {
      flex-direction: column;
      gap: 15px;
   }

   .featured-news-cards .tp-blog-thumb {
      height: 120px;
   }

   .featured-news-cards .tp-blog-content {
      padding: 12px;
   }

   .featured-news-cards .tp-blog-title {
      font-size: 13px;
   }
}

/* ==========================================================================
   News Page Styles
   ========================================================================== */

/* News Cards */
.news-card {
   background: var(--white);
   border-radius: var(--radius-xl);
   overflow: hidden;
   box-shadow: var(--shadow-md);
   transition: var(--transition);
   height: 100%;
}

.news-card:hover {
   transform: translateY(-10px);
   box-shadow: var(--shadow-lg);
}

.news-card-thumb {
   overflow: hidden;
   height: 280px;
   position: relative;
}

.news-card-thumb a {
   display: block;
   height: 100%;
}

.news-card-thumb img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform 0.5s ease;
}

.news-card:hover .news-card-thumb img {
   transform: scale(1.1);
}

.news-card-badge {
   position: absolute;
   top: 20px;
   left: 20px;
   background: var(--gold-accent);
   color: var(--white);
   padding: 8px 20px;
   border-radius: 30px;
   font-weight: 600;
   font-size: 13px;
   z-index: 2;
}

.news-card-badge.blue {
   background: var(--primary-navy);
}

.news-card-date {
   position: absolute;
   bottom: 20px;
   right: 20px;
   background: rgba(26, 58, 92, 0.95);
   color: var(--white);
   padding: 12px 20px;
   border-radius: 10px;
   text-align: center;
   z-index: 2;
}

.news-card-date .day {
   display: block;
   font-size: 24px;
   font-weight: 700;
   line-height: 1;
}

.news-card-date .month {
   display: block;
   font-size: 12px;
   text-transform: uppercase;
}

.news-card-content {
   padding: 30px;
}

.news-card-content h4 {
   font-size: 24px;
   color: var(--primary-navy);
   line-height: 1.4;
   margin-bottom: 15px;
   font-weight: 700;
}

.news-card-content h4 a {
   color: var(--primary-navy);
   text-decoration: none;
   transition: var(--transition);
}

.news-card-content h4 a:hover {
   color: var(--gold-accent);
}

.news-card-content p {
   color: var(--text-body);
   font-size: 15px;
   line-height: 1.8;
   margin-bottom: 20px;
}

.news-read-more {
   color: var(--gold-accent);
   font-weight: 600;
   text-decoration: none;
   display: inline-flex;
   align-items: center;
   transition: var(--transition);
}

.news-read-more i {
   margin-left: 8px;
   transition: transform 0.3s ease;
}

.news-read-more:hover {
   color: var(--primary-navy);
}

.news-read-more:hover i {
   transform: translateX(5px);
}

/* News Detail Page */
.news-detail-content {
   background: var(--white);
   border-radius: var(--radius-xl);
   padding: 50px;
   box-shadow: var(--shadow-md);
}

.news-detail-header {
   margin-bottom: 30px;
   padding-bottom: 30px;
   border-bottom: 1px solid #eee;
}

.news-detail-header h1 {
   font-size: 36px;
   color: var(--primary-navy);
   font-weight: 700;
   line-height: 1.3;
   margin-bottom: 20px;
}

.news-detail-meta {
   display: flex;
   flex-wrap: wrap;
   gap: 15px;
}

.news-detail-body {
   font-size: 16px;
   line-height: 1.9;
   color: var(--text-body);
}

.news-detail-body p {
   margin-bottom: 20px;
}

.news-detail-image {
   border-radius: var(--radius-lg);
   overflow: hidden;
   margin-bottom: 30px;
}

.news-detail-image img {
   width: 100%;
   height: auto;
}

.news-meta-tag {
   display: inline-block;
   background: rgba(212, 168, 68, 0.15);
   color: var(--gold-accent);
   padding: 6px 15px;
   border-radius: 20px;
   font-size: 13px;
   font-weight: 600;
   margin-right: 10px;
   margin-bottom: 10px;
}

.news-meta-tag.blue {
   background: rgba(26, 58, 92, 0.1);
   color: var(--primary-navy);
}

/* News Page Responsive */
@media (max-width: 991px) {
   .tp-blog-thumb-sm,
   .tp-blog-content-sm {
      height: auto;
   }

   .tp-blog-thumb-sm {
      height: 150px;
   }

   .tp-blog-content-sm {
      padding: 12px;
   }

   .news-card-thumb {
      height: 220px;
   }

   .news-detail-content {
      padding: 35px 25px;
   }

   .news-detail-header h1 {
      font-size: 28px;
   }
}

@media (max-width: 767px) {
   .tp-blog-item-sm .row {
      flex-direction: column;
   }

   .tp-blog-item-sm .col-5,
   .tp-blog-item-sm .col-7 {
      width: 100%;
   }

   .tp-blog-thumb-sm {
      height: 180px;
   }

   .tp-blog-content-sm {
      height: auto;
      padding: 15px;
   }

   .news-card-thumb {
      height: 200px;
   }

   .news-card-content {
      padding: 20px;
   }

   .news-card-content h4 {
      font-size: 20px;
   }

   .news-detail-header h1 {
      font-size: 24px;
   }
}

@media (max-width: 991px) {
   /* Ensure header shows hamburger */
   .col-lg-10.d-none.d-lg-block {
      display: none !important;
   }

   .tp-header-hamburger.d-xl-none {
      display: flex !important;
   }

   /* Mobile menu link styling */
   .tp-main-menu-mobile ul li > a {
      display: flex !important;
      align-items: center;
      justify-content: space-between;
      color: #fff !important;
      padding: 12px 0 !important;
      font-size: 16px !important;
      font-weight: 500;
   }

   /* Dropdown arrow button */
   .tp-main-menu-mobile .dropdown-toggle-btn {
      display: inline-flex !important;
      align-items: center;
      justify-content: center;
      width: 32px !important;
      height: 32px !important;
      min-width: 32px;
      background: rgba(255, 255, 255, 0.15) !important;
      border: 1px solid rgba(255, 255, 255, 0.25) !important;
      border-radius: 6px !important;
      color: #fff !important;
      cursor: pointer;
      transition: all 0.3s ease;
   }

   .tp-main-menu-mobile .dropdown-toggle-btn i {
      color: #fff !important;
      font-size: 12px !important;
      transition: transform 0.3s ease;
   }

   .tp-main-menu-mobile .dropdown-toggle-btn.dropdown-opened i {
      transform: rotate(90deg);
   }

   .tp-main-menu-mobile .dropdown-toggle-btn:hover,
   .tp-main-menu-mobile .dropdown-toggle-btn.dropdown-opened {
      background: #d4a844 !important;
      border-color: #d4a844 !important;
   }

   .tp-main-menu-mobile .dropdown-toggle-btn:hover i,
   .tp-main-menu-mobile .dropdown-toggle-btn.dropdown-opened i {
      color: #1a3a5c !important;
   }

   /* Submenu items */
   .tp-main-menu-mobile .submenu {
      background: rgba(0, 0, 0, 0.15) !important;
      border-left: 3px solid #d4a844 !important;
      margin-left: 10px !important;
      padding-left: 15px !important;
   }

   .tp-main-menu-mobile .submenu li a {
      color: rgba(255, 255, 255, 0.9) !important;
      font-size: 15px !important;
      padding: 10px 0 !important;
   }

   .tp-main-menu-mobile .submenu li a:hover {
      color: #d4a844 !important;
   }
}

/* ==========================================================================
   News Detail Slider Styles
   ========================================================================== */

/* News Slider Container */
.news-detail-slider {
   border-radius: var(--radius-lg);
   overflow: hidden;
   margin-bottom: 30px;
}

.news-slider-container {
   border-radius: var(--radius-lg);
   overflow: hidden;
}

.news-slider-container .swiper-slide {
   height: auto;
}

.news-slider-container .swiper-slide img {
   width: 100%;
   height: auto;
   max-height: 500px;
   object-fit: cover;
   border-radius: var(--radius-lg);
}

/* Navigation Arrows */
.news-slider-container .swiper-button-next,
.news-slider-container .swiper-button-prev {
   width: 50px;
   height: 50px;
   background: rgba(26, 58, 92, 0.9);
   border-radius: 50%;
   color: #fff;
   transition: all 0.3s ease;
}

.news-slider-container .swiper-button-next::after,
.news-slider-container .swiper-button-prev::after {
   font-size: 18px;
   font-weight: 700;
}

.news-slider-container .swiper-button-next:hover,
.news-slider-container .swiper-button-prev:hover {
   background: var(--gold-accent);
   color: var(--primary-navy);
}

/* Pagination Dots */
.news-slider-container .swiper-pagination {
   bottom: 20px;
}

.news-slider-container .swiper-pagination-bullet {
   width: 12px;
   height: 12px;
   background: rgba(255, 255, 255, 0.5);
   opacity: 1;
   transition: all 0.3s ease;
}

.news-slider-container .swiper-pagination-bullet-active {
   background: var(--gold-accent);
   width: 30px;
   border-radius: 6px;
}

/* Responsive News Slider */
@media (max-width: 991px) {
   .news-slider-container .swiper-slide img {
      max-height: 400px;
   }

   .news-slider-container .swiper-button-next,
   .news-slider-container .swiper-button-prev {
      width: 40px;
      height: 40px;
   }

   .news-slider-container .swiper-button-next::after,
   .news-slider-container .swiper-button-prev::after {
      font-size: 14px;
   }
}

@media (max-width: 767px) {
   .news-slider-container .swiper-slide img {
      max-height: 300px;
   }

   .news-slider-container .swiper-button-next,
   .news-slider-container .swiper-button-prev {
      width: 35px;
      height: 35px;
   }

   .news-slider-container .swiper-button-next::after,
   .news-slider-container .swiper-button-prev::after {
      font-size: 12px;
   }

   .news-slider-container .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
   }

   .news-slider-container .swiper-pagination-bullet-active {
      width: 24px;
   }
}
