:root {
 --green:#075b35;
--green2:#0b713f;
--saffron:#ef7d00;
--cream:#fffaf2;
 --dark:#18231f;
--muted:#68716d;
--line:#e8e4dc;
--white:#fff;
}
* {
	box-sizing:border-box;
	margin:0;
	padding:0
}
html {
	scroll-behavior:smooth
}
body {
	font-family:Poppins, "Noto Sans Odia", sans-serif;
	color:var(--dark);
	background:#fff
}
a {
	text-decoration:none;
	color:inherit
}
.container {
	width:min(1180px, 92%);
	margin:auto
}
/* Top strip */
.top-strip {
	background:#faf8f3;
	border-bottom:1px solid #eee9df;
	font-size:13px
}
.top-inner {
	height:42px;
	display:flex;
	align-items:center;
	justify-content:space-between
}
.india {
	display:flex;
	gap:10px;
	align-items:center
}
.flag {
	width:29px;
	height:18px;
	border-radius:2px;
	background:linear-gradient(#ff9933 0 33%, #fff 33% 66%, #138808 66% 100%);
	position:relative
}
.flag:after {
	content:"";
	width:5px;
	height:5px;
	border:1px solid #2458a6;
	border-radius:50%;
	position:absolute;
	left:12px;
	top:6px
}
.top-right {
	display:flex;
	gap:16px;
	align-items:center
}
.top-social {
	display:flex;
	gap:7px
}
.top-social span {
	width:26px;
	height:26px;
	border-radius:50%;
	display:grid;
	place-items:center;
	background:#1d5b9b;
	color:#fff;
	font-size:12px;
	font-weight:700
}
.top-social span:nth-child(2) {
background:#169bd5
}
.top-social span:nth-child(3) {
background:#d62976
}
.top-social span:nth-child(4) {
background:#e51c23
}
/* Header */
header {
	background:#fff;
	position:sticky;
	top:0;
	z-index:50;
	box-shadow:0 3px 18px rgba(0, 0, 0, .06)
}
.navbar {
	min-height:105px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:25px
}
.brand {
	display:flex;
	align-items:center;
	gap:15px;
	min-width:280px
}
.emblem {
	width:62px;
	display:grid;
	place-items:center;
	position:relative;
	img{
	border-radius:20px ;
	}
}
.emblem small {
	position:absolute;
	bottom:-10px;
	background:#fff;
	padding:0 5px;
	font-size:8px;
	white-space:nowrap
}
.brand-text .small {
	font-size:15px;
	font-weight:600
}
.brand-text h1 {
	font-size:23px;
	color:var(--green);
	letter-spacing:.3px
}
.brand-text p {
	font-size:12px;
	color:#555
}
nav {
	display:flex;
	align-items:stretch;
	height:105px
}
nav a {
	min-width:86px;
	padding:0 10px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	gap:7px;
	font-size:13px;
	color:#343b38;
	border-bottom:3px solid transparent;
transition:.25s
}
nav a .ico {
	font-size:20px
}
nav a:hover, nav a.active {
	color:var(--saffron);
	border-bottom-color:var(--saffron)
}
.mobile-btn {
	display:none;
	border:0;
	background:transparent;
	font-size:27px
}
/* Hero */
.hero {
	position:relative;
	overflow:hidden;
	background:
linear-gradient(90deg, rgba(255, 250, 242, .98) 0%, rgba(255, 250, 242, .94) 42%, rgba(255, 250, 242, .58) 70%, rgba(239, 125, 0, .14) 100%);
	min-height:485px;
	border-bottom:5px solid var(--green)
}
.hero:before {
	content:"";
	position:absolute;
	inset:0;
	background:
radial-gradient(circle at 92% 15%, rgba(239, 125, 0, .28), transparent 27%), radial-gradient(circle at 82% 90%, rgba(11, 113, 63, .20), transparent 30%);
}
.hero:after {
	content:"";
	position:absolute;
	right:-80px;
	top:55px;
	width:310px;
	height:310px;
	border:35px solid rgba(239, 125, 0, .12);
	border-radius:50%
}
.hero-inner {
	position:relative;
	z-index:2;
	min-height:485px;
	display:grid;
	grid-template-columns:42% 58%;
	align-items:center
}
.portrait-wrap {
	align-self:end;
	height:450px;
	display:flex;
	align-items:flex-end;
	justify-content:center
}
.portrait {
	width:330px;
	height:390px;
	border-radius:165px 165px 12px 12px;
	background:linear-gradient(160deg, #26302d, #0f1715);
	position:relative;
	box-shadow:0 15px 35px rgba(0, 0, 0, .18);
	overflow:hidden
}
.portrait:before {
	content:"";
	position:absolute;
	width:126px;
	height:150px;
	border-radius:50% 50% 45% 45%;
	background:#c88f68;
	left:102px;
	top:57px
}
.portrait:after {
	content:"";
	position:absolute;
	width:185px;
	height:190px;
	background:#121816;
	left:72px;
	bottom:-30px;
	border-radius:50% 50% 8px 8px;
	box-shadow:0 -105px 0 -23px #151c19
}
.portrait-label {
	position:absolute;
	bottom:18px;
	left:0;
	right:0;
	text-align:center;
	color:#fff;
	z-index:2;
	font-size:12px;
	letter-spacing:1px
}
.hero-copy {
	text-align:center;
	padding:25px 20px 25px 0
}
.hero-copy .odia {
	font-family:"Noto Sans Odia", sans-serif;
	font-size:45px;
	line-height:1.25;
	color:var(--saffron);
	font-weight:700
}
.hero-copy h2 {
	font-family:"Noto Sans Odia", sans-serif;
	font-size:47px;
	line-height:1.25;
	color:var(--green);
	margin:2px 0 14px
}
.hero-copy .line {
	width:100px;
	height:2px;
	background:#333;
	margin:0 auto 16px
}
.hero-copy p {
	font-family:"Noto Sans Odia", sans-serif;
	font-size:18px;
	color:#4f5652;
	margin-bottom:24px
}
.btn {
	display:inline-flex;
	align-items:center;
	gap:9px;
	background:var(--saffron);
	color:#fff;
	padding:13px 27px;
	border-radius:7px;
	font-size:14px;
	font-weight:600;
	box-shadow:0 8px 20px rgba(239, 125, 0, .2)
}
.btn.green {
	background:var(--green)
}
.chakra {
	position:absolute;
	right:16%;
	top:48px;
	width:95px;
	height:95px;
	border:8px solid rgba(28, 74, 126, .25);
	border-radius:50%;
	display:grid;
	place-items:center;
	color:rgba(28, 74, 126, .28);
	font-size:58px
}
/* highlights */
.highlights {
	background:var(--green);
	color:#fff
}
.highlight-grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr)
}
.highlight {
	padding:22px 18px;
	display:flex;
	align-items:center;
	gap:13px;
	border-right:1px solid rgba(255, 255, 255, .25)
}
.highlight:last-child {
	border:0
}
.highlight .hicon {
	font-size:30px;
	color:#f4c34a
}
.highlight strong {
	display:block;
	font-family:"Noto Sans Odia", sans-serif;
	color:#ffe05a;
	font-size:17px
}
.highlight small {
	font-family:"Noto Sans Odia", sans-serif;
	font-size:12px;
	color:#e8eee9
}
/* Main cards */
.section {
	padding:55px 0
}
.section-title {
	text-align:center;
	margin-bottom:30px
}
.section-title .eyebrow {
	font-size:12px;
	color:var(--saffron);
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:2px
}
.section-title h2 {
	font-size:30px;
	color:var(--green);
	margin:5px 0
}
.section-title p {
	color:var(--muted);
	font-size:14px
}
.grid3 {
	display:grid;
	grid-template-columns:1.05fr 1.5fr 1.05fr;
	gap:25px
}
.card {
	background:#fff;
	border:1px solid var(--line);
	border-radius:12px;
	padding:23px;
	box-shadow:0 7px 25px rgba(28, 43, 35, .05)
}
.card-head {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom:15px
}
.card-head h3 {
	font-size:18px;
	color:var(--green)
}
.card-head a {
	font-size:12px;
	color:#777
}
.update {
	display:flex;
	gap:12px;
	padding:12px 0;
	border-bottom:1px solid var(--line)
}
.update:last-child {
	border:0
}
.thumb {
	width:72px;
	height:54px;
	border-radius:7px;
	background:linear-gradient(135deg, #dfe6df, #9fae9e);
	flex:none
}
.update b {
	font-family:"Noto Sans Odia";
	font-size:13px;
	line-height:1.45;
	display:block
}
.update small {
	color:#888;
	font-size:10px
}
.about-card {
	background:linear-gradient(135deg, #fff, #fffaf1);
	position:relative;
	overflow:hidden
}
.about-card:after {
	content:"🪷";
	position:absolute;
	right:20px;
	bottom:-10px;
	font-size:100px;
	opacity:.05
}
.about-card h3 {
	font-size:28px;
	color:var(--green);
	margin:5px 0 15px
}
.about-card p {
	color:#59625e;
	line-height:1.9;
	font-size:14px;
	margin-bottom:20px
}
.social-list {
	list-style:none
}
.social-list li {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:13px 0;
	border-bottom:1px solid var(--line);
	font-size:13px
}
.social-list li:last-child {
	border:0
}
.social-name {
	display:flex;
	align-items:center;
	gap:10px
}
.social-dot {
	width:31px;
	height:31px;
	border-radius:50%;
	display:grid;
	place-items:center;
	background:#eee;
	font-size:12px;
	font-weight:700
}
.follow {
	font-size:11px;
	color:#16858c
}
/* About */
.about-section {
	background:var(--cream)
}
.about-grid {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:50px;
	align-items:center
}
.about-image {
	min-height:360px;
	border-radius:18px;
	background:
linear-gradient(135deg, rgba(7, 91, 53, .95), rgba(239, 125, 0, .72)), repeating-linear-gradient(45deg, transparent 0 20px, rgba(255, 255, 255, .07) 20px 22px);
	position:relative;
	overflow:hidden
}
.about-image:before {
	content:"ODISHA";
	position:absolute;
	right:-20px;
	bottom:10px;
	font-size:95px;
	font-weight:800;
	color:rgba(255, 255, 255, .12)
}
.about-image .seal {
	position:absolute;
	left:35px;
	top:35px;
	width:100px;
	height:100px;
	border:2px solid rgba(255, 255, 255, .6);
	border-radius:50%;
	display:grid;
	place-items:center;
	color:#fff;
	font-size:35px
}
.about-content .eyebrow {
	color:var(--saffron);
	font-size:12px;
	font-weight:700;
	letter-spacing:2px
}
.about-content h2 {
	font-size:34px;
	color:var(--green);
	margin:7px 0 16px
}
.about-content p {
	color:#5f6763;
	line-height:1.9;
	margin-bottom:14px;
	font-size:14px
}
.stats {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:12px;
	margin-top:25px
}
.stat {
	background:#fff;
	padding:17px;
	border-radius:10px;
	text-align:center;
	border:1px solid var(--line)
}
.stat strong {
	display:block;
	font-size:24px;
	color:var(--saffron)
}
.stat span {
	font-size:11px;
	color:#777
}
/* gallery */
.gallery-grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:14px
}
.gallery-item {
	height:190px;
	border-radius:10px;
	overflow:hidden;
	position:relative;
	background:linear-gradient(135deg, #d9dfd9, #829487)
}
.gallery-item:nth-child(2) {
background:linear-gradient(135deg, #f2d9bd, #9e795c)
}
.gallery-item:nth-child(3) {
background:linear-gradient(135deg, #c7d7df, #668493)
}
.gallery-item:nth-child(4) {
background:linear-gradient(135deg, #ead4ad, #8f6f3d)
}
.gallery-item:nth-child(5) {
background:linear-gradient(135deg, #d8e2cf, #67815e)
}
.gallery-item:nth-child(6) {
background:linear-gradient(135deg, #e0d4df, #79627b)
}
.gallery-item:nth-child(7) {
background:linear-gradient(135deg, #ddd, #777)
}
.gallery-item:nth-child(8) {
background:linear-gradient(135deg, #f1d7c6, #8d6147)
}
.gallery-item:after {
	content:"View Photo";
	position:absolute;
	inset:auto 0 0;
	padding:12px;
	color:#fff;
	background:linear-gradient(transparent, rgba(0, 0, 0, .6));
	font-size:12px
}
/* video */
.video-section {
	background:#f8f8f5
}
.video-grid {
	display:grid;
grid-template-columns:1.4fr .8fr;
	gap:25px
}
.video-main {
	height:340px;
	border-radius:14px;
	background:linear-gradient(135deg, #18372a, #0b1b14);
	display:grid;
	place-items:center;
	color:#fff;
	position:relative;
	overflow:hidden
}
.video-main:before {
	content:"ODISHA";
	font-size:100px;
	font-weight:800;
	opacity:.07
}
.play {
	width:70px;
	height:70px;
	border-radius:50%;
	background:var(--saffron);
	display:grid;
	place-items:center;
	font-size:28px;
	box-shadow:0 10px 25px rgba(0, 0, 0, .25)
}
.video-side {
	display:grid;
	gap:12px
}
.video-small {
	min-height:102px;
	border-radius:10px;
	background:linear-gradient(135deg, #d2d9d3, #637368);
	display:flex;
	align-items:center;
	gap:15px;
	padding:15px;
	color:#fff
}
.video-small:nth-child(2) {
background:linear-gradient(135deg, #e5d0ba, #83654d)
}
.video-small:nth-child(3) {
background:linear-gradient(135deg, #ccdbe0, #52737e)
}
.video-small .play {
	width:43px;
	height:43px;
	font-size:16px;
	flex:none
}
.video-small b {
	font-size:13px
}
/* contact/footer */
.contact {
	background:var(--green);
	color:#fff
}
.contact-grid {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:35px;
	align-items:center
}
.contact h2 {
	font-size:32px;
	margin:7px 0 12px
}
.contact p {
	color:#dbe7df;
	line-height:1.8;
	font-size:14px
}
.contact-box {
	background:#fff;
	color:#222;
	padding:25px;
	border-radius:14px
}
.contact-row {
	display:flex;
	gap:14px;
	padding:12px 0;
	border-bottom:1px solid var(--line);
	font-size:13px
}
.contact-row:last-child {
	border:0
}
.contact-icon {
	font-size:20px;
	color:var(--saffron)
}
footer {
	background:#08261a;
	color:#d6e1da;
	padding:30px 0 20px
}
.footer-top {
	display:flex;
	justify-content:space-between;
	gap:20px;
	align-items:center
}
.footer-brand {
	font-size:20px;
	font-weight:700;
	color:#fff
}
.footer-links {
	display:flex;
	gap:20px;
	font-size:12px
}
.copyright {
	text-align:center;
	border-top:1px solid rgba(255, 255, 255, .12);
	margin-top:25px;
	padding-top:18px;
	font-size:11px;
	color:#9caf9f
}
.heritage {
	height:12px;
	background:repeating-linear-gradient(90deg, #ef7d00 0 12px, #fff 12px 24px, #075b35 24px 36px, #fff 36px 48px)
}
/* Banner Slider */
.slider {
	min-height:460px;
	height:544px;
	border-bottom:5px solid var(--green);
	position:relative;
	overflow:hidden;
	background:#fff
}
.slides, .slide {
	position:absolute;
	inset:0;
	width:100%;
	height:100%
}
.slide {
	background-size:cover;
	background-position:center;
	opacity:0;
	transform:scale(1.03);
transition:opacity .7s ease, transform 4.5s ease
}
.slide.active {
	opacity:1;
	transform:scale(1)
}
.slider-btn {
	position:absolute;
	z-index:5;
	top:50%;
	transform:translateY(-50%);
	width:48px;
	height:48px;
	border:0;
	border-radius:50%;
	background:rgba(255, 255, 255, .9);
	color:var(--green);
	font-size:38px;
	line-height:40px;
	cursor:pointer;
	box-shadow:0 5px 18px rgba(0, 0, 0, .15);
transition:.25s
}
.slider-btn:hover {
	background:var(--saffron);
	color:#fff
}
.slider-btn.prev {
	left:22px
}
.slider-btn.next {
	right:22px
}
.dots {
	position:absolute;
	z-index:6;
	bottom:20px;
	left:50%;
	transform:translateX(-50%);
	display:flex;
	gap:9px
}
.dot {
	width:11px;
	height:11px;
	border-radius:50%;
	border:2px solid #fff;
	background:rgba(7, 91, 53, .45);
	padding:0;
	cursor:pointer
}
.dot.active {
	background:var(--saffron);
	transform:scale(1.2)
}
@media(max-width:950px) {
.slider {
height:360px;
min-height:360px
}
.slider-btn {
width:40px;
height:40px;
font-size:30px
}
.slider-btn.prev {
left:12px
}
.slider-btn.next {
right:12px
}
}
@media(max-width:560px) {
.slider {
height:270px;
min-height:270px
}
.slide {
background-position:center
}
.dots {
bottom:10px
}
.slider-btn {
display:none
}
}
.minister-photo-card {
	background:linear-gradient(160deg, #fff, #f6fbf7);
	overflow:hidden
}
.minister-photo {
	height:270px;
	border-radius:10px;
	background:linear-gradient(145deg, #e7efe9, #b6c8bc);
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden
}
.minister-photo:before {
	content:"";
	position:absolute;
	width:230px;
	height:230px;
	border-radius:50%;
	background:rgba(7, 91, 53, .16);
	bottom:-95px
}
.minister-silhouette {
	width:130px;
	height:155px;
	border-radius:65px 65px 35px 35px;
	background:linear-gradient(#c28a65 0 42%, #1b2420 42%);
	font-size:0;
	position:relative;
	box-shadow:0 12px 25px rgba(0, 0, 0, .12)
}
.minister-silhouette:before {
	content:"";
	position:absolute;
	top:18px;
	left:34px;
	width:62px;
	height:70px;
	border-radius:50%;
	background:#c99570
}
.photo-caption {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	padding:30px 15px 14px;
	color:#fff;
	background:linear-gradient(transparent, rgba(0, 0, 0, .72));
	text-align:center
}
.photo-caption strong {
	display:block;
	font-size:16px
}
.photo-caption span {
	font-size:10px
}
.more-wrap {
	text-align:center;
	margin-top:25px
}
.footer-social {
	display:flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	margin-top:25px
}
.footer-social span {
	font-size:12px;
	margin-right:5px;
	color:#a9c0b2
}
.footer-social a {
	width:32px;
	height:32px;
	border:1px solid rgba(255, 255, 255, .22);
	border-radius:50%;
	display:grid;
	place-items:center;
	color:#fff;
	font-size:12px;
	font-weight:700;
transition:.2s
}
.footer-social a:hover {
	background:var(--saffron);
	border-color:var(--saffron)
}

/* responsive */
@media(max-width:950px) {
 .navbar {
min-height:78px
}
.nav {
height:auto
}
 nav {
display:none;
position:absolute;
left:0;
right:0;
top:78px;
height:auto;
background:#fff;
box-shadow:0 10px 20px rgba(0, 0, 0, .08);
flex-direction:column
}
 nav.open {
display:flex
}
 nav a {
height:58px;
flex-direction:row;
justify-content:flex-start;
padding-left:25px;
border-bottom:1px solid #eee
}
 .mobile-btn {
display:block
}
 .hero-inner {
grid-template-columns:1fr
}
.portrait-wrap {
display:none
}
.hero-copy {
padding:60px 10px
}
 .chakra {
right:5%;
top:20px
}
 .grid3, .contact-grid, .about-grid, .video-grid {
grid-template-columns:1fr
}
 .highlight-grid {
grid-template-columns:1fr 1fr
}
 .gallery-grid {
grid-template-columns:1fr 1fr
}
}
@media(max-width:560px) {
 .top-strip {
display:none
}
.brand {
min-width:0
}
.brand-text h1 {
font-size:17px
}
.brand-text p {
font-size:9px
}
.emblem {
width:45px;
height:55px;
font-size:23px
}
 .hero-copy .odia {
font-size:31px
}
.hero-copy h2 {
font-size:34px
}
.hero-copy p {
font-size:15px
}
 .highlight-grid {
grid-template-columns:1fr
}
.highlight {
border-right:0;
border-bottom:1px solid rgba(255, 255, 255, .2)
}
 .stats {
grid-template-columns:1fr
}
.gallery-grid {
grid-template-columns:1fr
}
 .gallery-item {
height:210px
}
.footer-top {
flex-direction:column;
text-align:center
}
}
