/* =====================================================
   PSU Zoom Home
=====================================================*/

.psu-home{

    max-width:1280px;

    margin:30px auto;

    padding:20px;

}


/* ===========================================
   HERO
===========================================*/

.psu-home-hero{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:40px;

    background:linear-gradient(135deg,#0057b8,#1aa8ff);

    border-radius:25px;

    padding:60px;

    color:#fff;

    overflow:hidden;

    position:relative;

    box-shadow:0 20px 45px rgba(0,0,0,.15);

}


/* Hero Background */

.psu-home-hero::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    background:rgba(255,255,255,.08);

    border-radius:50%;

    right:-180px;

    top:-180px;

}

.hero-left{

    flex:1;

    position:relative;

    z-index:2;

}

.hero-right{

    flex:1;

    text-align:right;

    position:relative;

    z-index:2;

}

.hero-right img{

    width:100%;

    max-width:520px;

}


/* ===========================================
   Badge
===========================================*/

.hero-badge{

    display:inline-block;

    padding:8px 18px;

    background:rgba(255,255,255,.2);

    border-radius:30px;

    margin-bottom:20px;

    font-size:14px;

    backdrop-filter:blur(8px);

}


/* ===========================================
   Hero Text
===========================================*/

.psu-home-hero h1{

    color:#fff;

    font-size:52px;

    margin-bottom:20px;

    line-height:1.2;

}

.psu-home-hero p{

    font-size:19px;

    line-height:1.8;

    opacity:.95;

    margin-bottom:35px;

}


/* ===========================================
   Button
===========================================*/

.hero-button{

    display:flex;

    gap:15px;

    flex-wrap:wrap;

}

.btn-primary{

    background:#fff;

    color:#0057b8;

    padding:15px 28px;

    border-radius:12px;

    text-decoration:none;

    font-weight:bold;

    transition:.3s;

}

.btn-primary:hover{

    transform:translateY(-3px);

    box-shadow:0 10px 20px rgba(0,0,0,.2);

}

.btn-outline{

    border:2px solid #fff;

    color:#fff;

    padding:15px 28px;

    border-radius:12px;

    text-decoration:none;

    transition:.3s;

}

.btn-outline:hover{

    background:#fff;

    color:#0057b8;

}


/* ===========================================
   Quick Access
===========================================*/

.quick-access{

    margin-top:60px;

}

.quick-access h2{

    margin-bottom:25px;

    font-size:30px;

    color:#003366;

}


/* ===========================================
   Grid
===========================================*/

.quick-grid{

    display:grid;

    grid-template-columns:repeat(6,1fr);

    gap:20px;

}


/* ===========================================
   Card
===========================================*/

.quick-card{

    background:#fff;

    border-radius:18px;

    padding:30px 20px;

    text-align:center;

    text-decoration:none;

    color:#222;

    transition:.35s;

    box-shadow:0 8px 18px rgba(0,0,0,.08);

}

.quick-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 35px rgba(0,0,0,.15);

}


.quick-icon{

    width:75px;

    height:75px;

    border-radius:50%;

    margin:auto;

    margin-bottom:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:36px;

    background:#eef6ff;

}


.quick-card h3{

    color:#0057b8;

    margin-bottom:10px;

    font-size:20px;

}

.quick-card p{

    color:#777;

    line-height:1.6;

}


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

@media(max-width:1200px){

.quick-grid{

grid-template-columns:repeat(3,1fr);

}

}


@media(max-width:900px){

.psu-home-hero{

flex-direction:column;

text-align:center;

padding:40px;

}

.hero-button{

justify-content:center;

}

.hero-right{

text-align:center;

}

.psu-home-hero h1{

font-size:42px;

}

}


@media(max-width:768px){

.quick-grid{

grid-template-columns:repeat(2,1fr);

}

.psu-home{

padding:15px;

}

.psu-home-hero{

padding:30px;

}

.psu-home-hero h1{

font-size:32px;

}

.psu-home-hero p{

font-size:16px;

}

}


@media(max-width:480px){

.quick-grid{

grid-template-columns:1fr;

}

.hero-button{

flex-direction:column;

}

.btn-primary,
.btn-outline{

width:100%;

text-align:center;

}

}

/* ===========================
   Latest News
=========================== */

.home-news{

    margin-top:70px;

}

.section-title{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:25px;

}

.section-title h2{

    font-size:30px;

    color:#003366;

}

.section-title a{

    text-decoration:none;

    color:#0066cc;

    font-weight:bold;

}

.news-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

}

.news-card{

    background:#fff;

    border-radius:18px;

    overflow:hidden;

    box-shadow:0 8px 20px rgba(0,0,0,.08);

    transition:.3s;

}

.news-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 40px rgba(0,0,0,.15);

}

.news-image img{

    width:100%;

    height:220px;

    object-fit:cover;

}

.news-body{

    padding:20px;

}

.news-date{

    color:#888;

    font-size:14px;

    margin-bottom:10px;

}

.news-body h3{

    font-size:20px;

    margin-bottom:10px;

}

.news-body h3 a{

    color:#003366;

    text-decoration:none;

}

.news-body p{

    color:#666;

    line-height:1.7;

    margin-bottom:15px;

}

.read-more{

    color:#0066cc;

    text-decoration:none;

    font-weight:bold;

}

.read-more:hover{

    color:#003366;

}

@media(max-width:900px){

.news-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.news-grid{

grid-template-columns:1fr;

}

}