/* ===================================
   PAGRA DARPAN
   STYLE.CSS
=================================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

body{

font-family:"Noto Sans Devanagari",sans-serif;

background:#f5f8f2;

color:#222;

line-height:1.7;

overflow-x:hidden;

}

img{

max-width:100%;

display:block;

}

a{

text-decoration:none;

}

ul{

list-style:none;

}

.container{

width:90%;

max-width:1200px;

margin:auto;

}



/* ================= HEADER ================= */

header{

position:sticky;

top:0;

left:0;

width:100%;

background:#ffffff;

box-shadow:0 3px 15px rgba(0,0,0,.08);

z-index:999;

}

.header{

display:flex;

justify-content:space-between;

align-items:center;

padding:14px 0;

}

.logo{

display:flex;

align-items:center;

gap:14px;

}

.logo img{

width:65px;

height:65px;

object-fit:contain;

}

.logo h1{

font-size:28px;

color:#1b5e20;

font-weight:800;

}

.logo p{

font-size:14px;

color:#666;

}

nav ul{

display:flex;

gap:28px;

}

nav ul li a{

color:#222;

font-weight:600;

transition:.3s;

}

nav ul li a:hover{

color:#2e7d32;

}



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

.hero{

position:relative;

padding:35px 0 60px;

}

.slider{

position:relative;

width:100%;

height:500px;

border-radius:18px;

overflow:hidden;

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

}

.slide{

display:none;

width:100%;

height:100%;

}

.slide.active{

display:block;

}

.slide img{

width:100%;

height:100%;

object-fit:cover;

}

.prev,

.next{

position:absolute;

top:50%;

transform:translateY(-50%);

width:50px;

height:50px;

border:none;

border-radius:50%;

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

font-size:22px;

cursor:pointer;

transition:.3s;

}

.prev:hover,

.next:hover{

background:#2e7d32;

color:#fff;

}

.prev{

left:20px;

}

.next{

right:20px;

}
/* ================= WELCOME ================= */

.hero-content{

text-align:center;

margin-top:40px;

}

.hero-content h2{

font-size:38px;

color:#1b5e20;

margin-bottom:18px;

font-weight:800;

}

.hero-content p{

max-width:800px;

margin:auto;

font-size:18px;

color:#555;

margin-bottom:30px;

}

.main-btn{

display:inline-flex;

align-items:center;

gap:12px;

background:#2e7d32;

color:#fff;

padding:15px 30px;

border-radius:10px;

font-size:18px;

font-weight:700;

transition:.3s;

}

.main-btn:hover{

background:#1b5e20;

transform:translateY(-3px);

}



/* ================= SECTION ================= */

.section{

padding:80px 0;

}

.section-title{

text-align:center;

margin-bottom:45px;

}

.section-title h2{

font-size:34px;

color:#1b5e20;

margin-bottom:10px;

}

.section-title p{

color:#666;

font-size:17px;

}



/* ================= VILLAGE ================= */

.village-grid{

display:grid;

grid-template-columns:1.4fr 1fr;

gap:35px;

align-items:center;

margin-bottom:40px;

}

.village-card{

background:#fff;

padding:25px;

border-radius:18px;

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

}

.village-card table{

width:100%;

border-collapse:collapse;

}

.village-card td{

padding:14px;

border-bottom:1px solid #ececec;

font-size:17px;

}

.village-card td:first-child{

font-weight:700;

color:#1b5e20;

width:45%;

}

.village-image img{

border-radius:18px;

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

}



/* ================= INFO BOX ================= */

.info-boxes{

display:grid;

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

gap:20px;

}

.info-box{

background:#fff;

padding:30px;

border-radius:18px;

text-align:center;

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

transition:.3s;

}

.info-box:hover{

transform:translateY(-8px);

}

.info-box i{

font-size:40px;

color:#2e7d32;

margin-bottom:15px;

}

.info-box h3{

margin-bottom:10px;

color:#1b5e20;

}

.info-box p{

color:#555;

}
/* ================= THOUGHTS ================= */

.thought-card{

display:grid;

grid-template-columns:1fr 1fr;

background:#fff;

border-radius:20px;

overflow:hidden;

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

}

.thought-card img{

width:100%;

height:100%;

object-fit:cover;

min-height:320px;

}

.thought-content{

padding:35px;

display:flex;

flex-direction:column;

justify-content:center;

}

.thought-content h3{

font-size:30px;

color:#1b5e20;

margin-bottom:15px;

}

.thought-content p{

font-size:17px;

color:#555;

margin-bottom:20px;

}

.thought-content span{

font-size:15px;

color:#888;

}



/* ================= DEVELOPMENT ================= */

.work-grid{

display:grid;

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

gap:25px;

}

.work-card{

background:#fff;

border-radius:18px;

overflow:hidden;

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

transition:.3s;

}

.work-card:hover{

transform:translateY(-8px);

}

.work-card img{

width:100%;

height:220px;

object-fit:cover;

}

.work-card h3{

padding:18px 18px 10px;

color:#1b5e20;

font-size:22px;

}

.work-card p{

padding:0 18px 20px;

color:#555;

}



/* ================= OFFICERS ================= */

.officer-grid{

display:grid;

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

gap:20px;

}

.officer-card{

background:#fff;

padding:30px;

text-align:center;

border-radius:18px;

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

transition:.3s;

}

.officer-card:hover{

transform:translateY(-8px);

}

.officer-card h3{

color:#1b5e20;

margin-bottom:10px;

font-size:22px;

}

.officer-card p{

color:#666;

font-size:17px;

}



/* ================= FOOTER ================= */

footer{

background:#1b5e20;

color:#fff;

text-align:center;

padding:45px 20px;

margin-top:80px;

}

footer h2{

font-size:32px;

margin-bottom:10px;

}

footer p{

margin:8px 0;

font-size:17px;

}



/* ================= MOBILE ================= */

@media(max-width:992px){

.header{

flex-direction:column;

gap:20px;

}

nav ul{

flex-wrap:wrap;

justify-content:center;

}

.slider{

height:350px;

}

.village-grid,

.thought-card{

grid-template-columns:1fr;

}

.info-boxes{

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

}

.work-grid{

grid-template-columns:1fr;

}

.officer-grid{

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

}

.hero-content h2{

font-size:30px;

}

}

@media(max-width:600px){

.logo{

flex-direction:column;

text-align:center;

}

.logo h1{

font-size:24px;

}

.hero-content h2{

font-size:25px;

}

.hero-content p{

font-size:16px;

}

.info-boxes,

.officer-grid{

grid-template-columns:1fr;

}

.slider{

height:250px;

}

.main-btn{

width:100%;

justify-content:center;

}

}
