.reservation-roster-page{background:#f8f9fa;min-height:100vh}.reservation-hero{background:linear-gradient(135deg, var(--lpu-black) 0%, #1a2a4a 100%);text-align:center;padding:clamp(120px,15vw,180px) 20px clamp(60px,8vw,100px)}.reservation-breadcrumb{color:#fff9;font-size:.85rem;font-family:var(--font-body);text-transform:none;margin-bottom:20px;font-weight:400}.reservation-breadcrumb a{color:#ffffffb3;text-decoration:none}.reservation-breadcrumb a:hover{color:var(--lpu-orange)}.reservation-breadcrumb span{color:#fff6;margin:0 10px}.reservation-badge{color:var(--lpu-orange);letter-spacing:3px;text-transform:uppercase;background:#e8b91926;border:1px solid #e8b9194d;border-radius:30px;margin-bottom:24px;padding:8px 24px;font-size:.7rem;font-weight:900;display:inline-block}.reservation-hero h1{margin-bottom:20px;font-size:clamp(2.5rem,6vw,4rem);font-weight:900;color:#fff!important}.reservation-hero-subtitle{color:#ffffffe6;font-size:clamp(1rem,2vw,1.2rem);font-family:var(--font-body);text-transform:none;max-width:700px;margin:0 auto;font-weight:400;line-height:1.7}.reservation-body{padding:clamp(60px,10vw,100px) 20px}.reservation-content-card{background:#fff;border-radius:20px;margin-bottom:50px;padding:clamp(40px,6vw,60px);box-shadow:0 10px 40px #00000014}.reservation-overview{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);border-left:5px solid #4caf50;border-radius:16px;margin-bottom:50px;padding:30px}.overview-icon{margin-bottom:15px;font-size:2.5rem}.reservation-overview h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;font-family:var(--font-heading);text-transform:uppercase;margin-bottom:18px;color:var(--lpu-black)!important}.reservation-overview p{color:#333;font-size:1.05rem;line-height:1.8;font-family:var(--font-body);text-transform:none;margin-bottom:15px;font-weight:400}.reservation-overview p:last-child{margin-bottom:0}.reservation-overview strong{color:var(--lpu-black);font-weight:700}.reservation-policy-section{margin-bottom:50px}.reservation-policy-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;font-family:var(--font-heading);text-transform:uppercase;text-align:center;margin-bottom:15px;color:var(--lpu-black)!important}.section-intro{color:#666;font-size:1.05rem;line-height:1.7;font-family:var(--font-body);text-transform:none;text-align:center;margin-bottom:30px;font-weight:400}.categories-grid{grid-template-columns:repeat(5,1fr);gap:20px;margin-bottom:30px;display:grid}.category-card{text-align:center;border-top:4px solid var(--lpu-orange);background:#fff;border-radius:16px;padding:25px 20px;transition:all .3s;box-shadow:0 4px 15px #00000014}.category-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px #00000026}.sc-card{border-top-color:#e91e63}.st-card{border-top-color:#9c27b0}.obc-card{border-top-color:#2196f3}.ews-card{border-top-color:#ff9800}.pwd-card{border-top-color:#4caf50}.category-icon{margin-bottom:12px;font-size:2rem}.category-card h3{color:var(--lpu-black);font-size:1.3rem;font-weight:900;font-family:var(--font-heading);text-transform:uppercase;margin-bottom:8px}.category-card p{color:#666;font-size:.85rem;font-family:var(--font-body);text-transform:none;margin:0;font-weight:500}.policy-note{color:#555;font-size:1.05rem;line-height:1.7;font-family:var(--font-body);text-transform:none;text-align:center;background:#f8f9fa;border-radius:12px;margin-top:20px;padding:20px;font-weight:400}.key-features-section{margin-bottom:50px}.key-features-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;font-family:var(--font-heading);text-transform:uppercase;text-align:center;margin-bottom:30px;color:var(--lpu-black)!important}.features-grid{grid-template-columns:repeat(4,1fr);gap:25px;display:grid}.feature-card{text-align:center;background:#f8f9fa;border:2px solid #0000;border-radius:16px;padding:30px 25px;transition:all .3s}.feature-card:hover{border-color:var(--lpu-orange);background:#fff;transform:translateY(-8px);box-shadow:0 15px 40px #e8b91933}.feature-icon{margin-bottom:15px;font-size:2.5rem}.feature-card h3{color:var(--lpu-black);font-size:1.1rem;font-weight:900;font-family:var(--font-heading);text-transform:uppercase;margin-bottom:10px}.feature-card p{color:#666;font-size:.9rem;line-height:1.6;font-family:var(--font-body);text-transform:none;margin:0;font-weight:400}.roster-system-section{background:linear-gradient(135deg,#fff3e0 0%,#ffe0b2 100%);border-left:5px solid #ff9800;border-radius:16px;margin-bottom:50px;padding:35px}.system-icon{text-align:center;margin-bottom:15px;font-size:3rem}.roster-system-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;font-family:var(--font-heading);text-transform:uppercase;text-align:center;margin-bottom:18px;color:var(--lpu-black)!important}.roster-system-section>p{color:#333;font-size:1.05rem;line-height:1.8;font-family:var(--font-body);text-transform:none;text-align:center;margin-bottom:20px;font-weight:400}.system-points{margin:0;padding:0;list-style:none}.system-points li{color:#333;font-size:1rem;line-height:1.7;font-family:var(--font-body);text-transform:none;margin-bottom:12px;padding-left:35px;font-weight:400;position:relative}.system-points li:before{content:"✓";color:#fff;background:#ff9800;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.85rem;font-weight:900;display:flex;position:absolute;top:0;left:0}.reservation-table-section{margin-bottom:50px}.reservation-table-section h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;font-family:var(--font-heading);text-transform:uppercase;text-align:center;margin-bottom:30px;color:var(--lpu-black)!important}.reservation-table-wrapper{border-radius:12px;margin-bottom:25px;overflow-x:auto;box-shadow:0 4px 20px #00000014}.reservation-table{border-collapse:collapse;background:#fff;width:100%}.reservation-table thead{background:linear-gradient(135deg, var(--lpu-black) 0%, #1a2a4a 100%)}.reservation-table th{text-align:left;font-size:.95rem;font-weight:900;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.5px;padding:18px 20px;color:#fff!important}.reservation-table tbody tr{border-bottom:1px solid #e0e0e0;transition:all .3s}.reservation-table tbody tr:hover{background:#f8f9fa}.reservation-table tbody tr.special-row{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%)}.reservation-table tbody tr.special-row:hover{background:linear-gradient(135deg,#bbdefb 0%,#90caf9 100%)}.reservation-table td{color:#555;font-size:1rem;font-family:var(--font-body);text-transform:none;padding:18px 20px;font-weight:400}.category-cell{align-items:center;gap:15px;display:flex}.category-badge{background:var(--lpu-orange);color:var(--lpu-black);font-size:.9rem;font-weight:900;font-family:var(--font-heading);text-align:center;border-radius:50px;min-width:60px;padding:6px 16px;display:inline-block}.category-full-name{color:var(--lpu-black);font-weight:600}.percentage-cell{text-align:center}.percentage-value{color:var(--lpu-black);background:#f8f9fa;border-radius:50px;padding:8px 20px;font-size:1.05rem;font-weight:700;display:inline-block}.allocation-cell{color:#555;font-weight:600}.table-note{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);border-left:4px solid #2196f3;border-radius:12px;gap:15px;padding:20px;display:flex}.note-icon{flex-shrink:0;font-size:1.5rem}.table-note p{color:#333;font-size:.95rem;line-height:1.7;font-family:var(--font-body);text-transform:none;margin:0;font-weight:400}.table-note strong{color:var(--lpu-black);font-weight:700}.reservation-contact-box{background:linear-gradient(135deg, var(--lpu-black) 0%, #1a2a4a 100%);text-align:center;border-radius:16px;padding:40px}.reservation-contact-box h3{font-size:1.8rem;font-weight:900;font-family:var(--font-heading);text-transform:uppercase;margin-bottom:15px;color:#fff!important}.reservation-contact-box>p{color:#fffc;font-size:1.05rem;font-family:var(--font-body);text-transform:none;margin-bottom:30px;font-weight:400}.contact-office{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;padding:30px}.office-icon{margin-bottom:15px;font-size:2.5rem}.contact-office h4{font-size:1.4rem;font-weight:900;font-family:var(--font-heading);text-transform:uppercase;margin-bottom:8px;color:var(--lpu-orange)!important}.contact-office>p{color:#ffffffe6;font-size:1.1rem;font-family:var(--font-body);text-transform:none;margin-bottom:20px;font-weight:500}.contact-details{flex-wrap:wrap;justify-content:center;gap:40px;display:flex}.contact-item{align-items:center;gap:12px;display:flex}.contact-icon{font-size:1.5rem}.contact-item a{color:var(--lpu-orange);font-size:1.1rem;font-weight:700;font-family:var(--font-body);text-decoration:none;transition:all .3s}.contact-item a:hover{color:#fff;text-decoration:underline}.reservation-quick-links{background:#fff;border-radius:20px;padding:40px;box-shadow:0 10px 40px #00000014}.reservation-quick-links h3{text-align:center;text-transform:uppercase;margin-bottom:30px;font-size:clamp(1.5rem,3vw,2rem);font-weight:900;color:var(--lpu-black)!important}.quick-links-grid{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.quick-link-card{text-align:center;background:#f8f9fa;border:2px solid #0000;border-radius:16px;padding:30px 25px;text-decoration:none;transition:all .3s;display:block}.quick-link-card:hover{border-color:var(--lpu-orange);background:#fff;transform:translateY(-8px);box-shadow:0 15px 40px #e8b91933}.link-icon{margin-bottom:15px;font-size:2.5rem;display:block}.quick-link-card h4{color:var(--lpu-black);font-size:1.1rem;font-weight:900;font-family:var(--font-heading);text-transform:uppercase;margin-bottom:8px}.quick-link-card p{color:#666;font-size:.9rem;font-family:var(--font-body);text-transform:none;margin:0;font-weight:400}@media (max-width:1024px){.categories-grid{grid-template-columns:repeat(3,1fr)}.features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.categories-grid{grid-template-columns:repeat(2,1fr)}.features-grid,.quick-links-grid{grid-template-columns:1fr}}@media (max-width:768px){.reservation-content-card{padding:30px 20px}.categories-grid{grid-template-columns:1fr}.reservation-table th,.reservation-table td{padding:12px 10px;font-size:.85rem}.category-cell{flex-direction:column;align-items:flex-start;gap:8px}.reservation-overview,.roster-system-section{padding:25px 20px}.reservation-contact-box{padding:30px 20px}.contact-details{flex-direction:column;gap:20px}.reservation-quick-links{padding:30px 20px}.reservation-body{padding-bottom:120px}}
