/* ==========================
ANUKAMPA ENTERPRISES
========================== */
*{
margin:0;
padding:0;
box-sizing:border-box;
}
html{
scroll-behavior:smooth;
}
body{
font-family:'Poppins',sans-serif;
color:#2d3748;
background:#ffffff;
line-height:1.7;
}
img{
max-width:100%;
}
a{
text-decoration:none;
}
section{
padding:90px 8%;
}
h1,h2,h3{
font-weight:700;
}
h2{
text-align:center;
font-size:42px;
margin-bottom:20px;
color:#123C84;
}
/* ==========================
NAVIGATION
========================== */
nav{
position:fixed;
top:20px;
left:50%;
transform:translateX(-50%);
width:92%;
max-width:1250px;
background:rgba(255,255,255,.92);
backdrop-filter:blur(14px);
-webkit-backdrop-filter:blur(14px);
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 35px;
border-radius:18px;
box-shadow:0 20px 45px rgba(0,0,0,.10);
z-index:999;
}
.logo{
font-size:28px;
font-weight:800;
color:#123C84;
}
nav ul{
display:flex;
list-style:none;
gap:35px;
}
nav ul a{
color:#333;
font-weight:500;
transition:.3s;
}
nav ul a:hover{
color:#123C84;
}
.btn{
display:inline-flex;
align-items:center;
justify-content:center;
background:#123C84;
color:#fff;
padding:15px 34px;
border-radius:999px;
font-weight:600;
transition:.35s;
box-shadow:0 12px 30px rgba(18,60,132,.25);
}
.btn:hover{
transform:translateY(-4px);
box-shadow:0 20px 45px rgba(18,60,132,.35);
}
.btn-outline{
border:2px solid #123C84;
color:#123C84;
padding:14px 28px;
border-radius:50px;
margin-left:15px;
transition:.3s;
display:inline-block;
font-weight:600;
}
.btn-outline:hover{
background:#123C84;
color:white;
}
/* ==========================
HERO
========================== */
header{
min-height:100vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
background:
radial-gradient(circle at top right, rgba(255,255,255,.12), transparent 30%),
radial-gradient(circle at bottom left, rgba(255,255,255,.08), transparent 25%),
linear-gradient(135deg,#071739 0%,#123C84 55%,#2563EB 100%);
color:white;
padding:140px 8% 100px;
overflow:hidden;
position:relative;
}
.hero{
max-width:900px;
margin:auto;
animation:fadeUp 1s ease;
}
.small-title{
text-transform:uppercase;
letter-spacing:3px;
font-size:14px;
opacity:.9;
margin-bottom:20px;
}
.hero h1{
font-size:74px;
line-height:1.08;
margin-bottom:28px;
font-weight:800;
letter-spacing:-2px;
}
.hero-text{
font-size:22px;
max-width:760px;
margin:0 auto 45px;
opacity:.92;
}
.hero-buttons{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:20px;
}
.hero .btn{
background:white;
color:#123C84;
}
.hero .btn:hover{
background:#f2f2f2;
}
.hero .btn-outline{
border:2px solid white;
color:white;
}
.hero .btn-outline:hover{
background:white;
color:#123C84;
}
/* ==========================
RESPONSIVE
========================== */
@media(max-width:900px){
nav{
flex-direction:column;
gap:15px;
}
nav ul{
flex-wrap:wrap;
justify-content:center;
gap:20px;
}
.hero h1{
font-size:42px;
}
.hero-text{
font-size:18px;
}
h2{
font-size:34px;
}
}
@media(max-width:600px){
.hero h1{
font-size:34px;
}
.hero-buttons{
flex-direction:column;
}
.btn-outline{
margin-left:0;
}
section{
padding:70px 25px;
}
}
/* ==========================
SERVICES
========================== */
.services{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
margin-top:50px;
}
.card{
background:white;
padding:45px 35px;
border-radius:22px;
border:1px solid #edf2f7;
box-shadow:0 12px 35px rgba(0,0,0,.06);
transition:.35s;
position:relative;
overflow:hidden;
}
.card::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:5px;
background:linear-gradient(
90deg,
#123C84,
#2563eb);
}
.card:hover{
transform:translateY(-12px);
box-shadow:0 35px 80px rgba(18,60,132,.18);
}
.card h3{
font-size:24px;
margin-bottom:18px;
color:#123C84;
font-weight:700;
}
.card p{
font-size:16px;
line-height:1.9;
color:#64748b;
}
/* ==========================
WHY ANUKAMPA
========================== */
#why{
background:#f8fafc;
}
.center{
max-width:800px;
margin:0 auto 50px;
text-align:center;
color:#666;
font-size:18px;
}
.why-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;
margin-top:40px;
}
.why-grid div{
background:#fff;
padding:35px;
border-radius:18px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
transition:.3s;
}
.why-grid div:hover{
transform:translateY(-8px);
}
.why-grid h3{
color:#123C84;
margin-bottom:15px;
font-size:22px;
}
.why-grid p{
color:#666;
line-height:1.8;
}
/* ==========================
ABOUT
========================== */
#about{
max-width:1000px;
margin:auto;
}
#about p{
margin-bottom:25px;
color:#555;
font-size:18px;
line-height:1.9;
}
blockquote{
margin-top:40px;
background:#123C84;
color:white;
padding:35px;
border-radius:16px;
text-align:center;
font-size:24px;
font-weight:600;
}
/* ==========================
CONTACT
========================== */
#contact{
background:#123C84;
color:white;
text-align:center;
}
#contact h2{
color:white;
}
#contact p{
max-width:700px;
margin:20px auto 40px;
font-size:20px;
}
/* ==========================
FOOTER
========================== */
footer{
background:#0d1b2a;
color:white;
text-align:center;
padding:30px;
}
/* ==========================
GLOBAL CONTAINER
========================== */
.container{
width:100%;
max-width:1200px;
margin:auto;
}
/* ==========================
SECTION TITLE
========================== */
section h2{
position:relative;
margin-bottom:20px;
}
section h2::after{
content:"";
width:70px;
height:4px;
background:#123C84;
display:block;
margin:18px auto;
border-radius:20px;
}
/* ==========================
PAGE BACKGROUNDS
========================== */
body{
background:#f8fafc;
}
section:nth-child(even){
background:white;
}
section:nth-child(odd){
background:#f8fafc;
}
@keyframes fadeUp{
from{
opacity:0;
transform:translateY(40px);
}
to{
opacity:1;
transform:translateY(0);
}
}
/* ==========================
TRUST STRIP
========================== */
.trust-strip{
background:white;
padding:35px 8%;
}
.trust-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
}
.trust-card{
background:#fff;
padding:28px;
border-radius:16px;
text-align:center;
box-shadow:0 12px 35px rgba(0,0,0,.08);
transition:.3s;
}
.trust-card:hover{
transform:translateY(-8px);
}
.trust-card h3{
color:#123C84;
margin-bottom:12px;
font-size:22px;
}
.trust-card p{
font-size:15px;
color:#666;
}
@media(max-width:900px){
.trust-grid{
grid-template-columns:1fr 1fr;
}
}
@media(max-width:600px){
.trust-grid{
grid-template-columns:1fr;
}
}
.hero h1,
.hero-text,
.hero-buttons{
animation:fadeUp .9s ease both;
}
.hero-text{
animation-delay:.15s;
}
.hero-buttons{
animation-delay:.3s;
}
/* ==========================
PROCESS
========================== */
#process{
background:white;
}
.process-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;
margin-top:60px;
}
.process-card{
background:#fff;
padding:40px 30px;
border-radius:20px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
transition:.3s;
position:relative;
}
.process-card:hover{
transform:translateY(-10px);
}
.number{
width:65px;
height:65px;
background:#123C84;
color:white;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:24px;
font-weight:700;
margin-bottom:25px;
}
.process-card h3{
margin-bottom:15px;
color:#123C84;
}
.process-card p{
color:#64748b;
line-height:1.8;
}
/* ==========================
SERVICE ICONS
========================== */
.service-icon{
width:72px;
height:72px;
display:flex;
align-items:center;
justify-content:center;
background:#eef4ff;
border-radius:18px;
font-size:34px;
margin-bottom:28px;
transition:.35s;
}
.card:hover .service-icon{
background:#123C84;
color:#ffffff;
transform:rotate(-8deg) scale(1.08);
}
/* ==========================
SCROLL ANIMATIONS
========================== */
.reveal{
opacity:0;
transform:translateY(40px);
transition:all .8s ease;
}
.reveal.active{
opacity:1;
transform:translateY(0);
}
/* ==========================
STATS BAR
========================== */
.stats-bar{
background:white;
margin-top:-45px;
position:relative;
z-index:5;
}
.stats-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
}
.stat-item{
background:white;
border-radius:18px;
padding:35px;
text-align:center;
box-shadow:0 15px 40px rgba(0,0,0,.08);
transition:.35s;
}
.stat-item:hover{
transform:translateY(-8px);
}
.stat-item h2{
color:#123C84;
font-size:48px;
margin-bottom:12px;
}
.stat-item p{
color:#64748b;
font-size:16px;
}
@media(max-width:900px){
.stats-grid{
grid-template-columns:repeat(2,1fr);
}
}
@media(max-width:600px){
.stats-grid{
grid-template-columns:1fr;
}
}
/* ==========================================
CONTACT SECTION V2
========================================== */
.contact-wrapper{
display:grid;
grid-template-columns:1fr 1.3fr;
gap:50px;
margin-top:60px;
align-items:start;
}
.contact-info{
background:#071739;
color:white;
padding:45px;
border-radius:24px;
height:100%;
}
.contact-info h3{
font-size:32px;
margin-bottom:20px;
}
.contact-info p{
color:#d8e4ff;
margin-bottom:35px;
}
.contact-item{
margin-bottom:30px;
line-height:1.8;
}
.contact-item strong{
display:block;
margin-bottom:6px;
color:white;
}
.contact-item a{
color:white;
text-decoration:none;
}
#contactForm{
background:white;
padding:45px;
border-radius:24px;
box-shadow:0 20px 60px rgba(0,0,0,.08);
}
#contactForm input,
#contactForm select,
#contactForm textarea{
width:100%;
padding:16px 18px;
margin-bottom:18px;
border:1px solid #dbe3ef;
border-radius:14px;
font-size:16px;
font-family:Poppins,sans-serif;
transition:.3s;
}
#contactForm input:focus,
#contactForm select:focus,
#contactForm textarea:focus{
outline:none;
border-color:#2563EB;
box-shadow:0 0 0 4px rgba(37,99,235,.12);
}
#contactForm textarea{
resize:vertical;
min-height:150px;
}
#contactForm button{
width:100%;
border:none;
cursor:pointer;
}
@media(max-width:900px){
.contact-wrapper{
grid-template-columns:1fr;
}
.contact-info{
order:2;
}
#contactForm{
order:1;
}
}
/* ==========================
BOOKING MODAL
========================== */
.modal{
display:none;
position:fixed;
z-index:99999;
left:0;
top:0;
width:100%;
height:100%;
background:rgba(0,0,0,.65);
justify-content:center;
align-items:center;
padding:20px;
}
.modal-content{
background:white;
width:100%;
max-width:650px;
border-radius:18px;
padding:40px;
position:relative;
animation:fadeUp .35s ease;
}
.close-modal{
position:absolute;
right:25px;
top:20px;
font-size:34px;
cursor:pointer;
color:#999;
}
.close-modal:hover{
color:#123C84;
}
#bookingForm{
display:flex;
flex-direction:column;
gap:18px;
margin-top:25px;
}
#bookingForm input,
#bookingForm select,
#bookingForm textarea{
width:100%;
padding:15px;
border:1px solid #ddd;
border-radius:10px;
font-size:16px;
font-family:Poppins,sans-serif;
}
#bookingForm textarea{
resize:vertical;
}
#bookingForm button{
margin-top:10px;
}
/* Sticky Nav & Hamburger */
nav#main-nav {
position: sticky;
top: 0;
z-index: 1000;
background: #ffffff;
box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}
.hamburger {
display: none;
flex-direction: column;
gap: 5px;
cursor: pointer;
}
.hamburger span {
width: 25px;
height: 3px;
background: #123C84;
transition: 0.3s;
}
@media(max-width: 900px) {
.hamburger {
display: flex;
}
nav#main-nav {
flex-direction: row;
justify-content: space-between;
align-items: center;
padding: 15px 5%;
}
#nav-links {
display: none;
flex-direction: column;
width: 100%;
position: absolute;
top: 100%;
left: 0;
background: #ffffff;
box-shadow: 0 5px 10px rgba(0,0,0,0.1);
padding: 20px 0;
}
#nav-links.active {
display: flex;
}
nav#main-nav .btn {
display: none; /* Hide button on very small screens in header, show in menu */
}
}