/*==================================================
POLICY HUB PREMIUM WEBSITE
STYLE-NEW.CSS
PART 1
==================================================*/

/*=========================
GOOGLE FONT
=========================*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

/*=========================
RESET
=========================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Inter',sans-serif;

background:#ffffff;

color:#111827;

overflow-x:hidden;

line-height:1.6;

}

img{

max-width:100%;

display:block;

}

a{

text-decoration:none;

color:inherit;

}

ul{

list-style:none;

}

button{

border:none;

outline:none;

background:none;

cursor:pointer;

font-family:inherit;

}

.container{

width:min(92%,1280px);

margin:auto;

}

/*=========================
ROOT VARIABLES
=========================*/

:root{

--primary:#0F4C81;

--primary-dark:#071B31;

--secondary:#1D74D6;

--white:#ffffff;

--text:#111827;

--text-light:#667085;

--bg:#F7F9FC;

--border:#E7EEF7;

--radius:30px;

--transition:.35s ease;

--shadow:0 20px 60px rgba(0,0,0,.08);

}

/*=========================
COMMON SECTION
=========================*/

section{

padding:110px 0;

position:relative;

}

.section-heading{

max-width:760px;

margin:0 auto 70px;

text-align:center;

}

.section-heading span{

display:inline-flex;

align-items:center;

justify-content:center;

padding:10px 22px;

border-radius:999px;

background:#EAF4FF;

color:var(--primary);

font-size:13px;

font-weight:700;

letter-spacing:1px;

margin-bottom:20px;

}

.section-heading h2{

font-size:54px;

line-height:1.15;

margin-bottom:20px;

font-weight:800;

color:var(--text);

}

.section-heading p{

font-size:18px;

color:var(--text-light);

line-height:32px;

}

/*=========================
HEADER
=========================*/

.header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:9999;

background:#ffffff;

border-bottom:1px solid rgba(0,0,0,.05);

transition:.35s;

}

.nav-container{

height:90px;

display:flex;

align-items:center;

justify-content:space-between;

}

.logo img{

height:72px;

width:auto;

}

.navbar ul{

display:flex;

align-items:center;

gap:40px;

}

.navbar a{

font-size:15px;

font-weight:600;

color:#111827;

transition:.3s;

position:relative;

}

.navbar a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--primary);

transition:.35s;

}

.navbar a:hover{

color:var(--primary);

}

.navbar a:hover::after{

width:100%;

}

.quote-btn{

height:56px;

padding:0 34px;

border-radius:999px;

background:linear-gradient(135deg,#0F4C81,#1D74D6);

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-weight:700;

transition:.35s;

}

.quote-btn:hover{

transform:translateY(-4px);

box-shadow:0 18px 45px rgba(15,76,129,.28);

}

/*=========================
HERO
=========================*/

.hero{

position:relative;

min-height:920px;

display:flex;

align-items:center;

padding-top:130px;

padding-bottom:90px;

overflow:hidden;

background:#081726;

}

.hero-image{

position:absolute;

inset:0;

width:100%;

height:95%;

object-fit:cover;

object-position:70% center;

transform:translateY(-20px);

}

.hero-overlay{

position:absolute;

inset:0;

background:linear-gradient(
90deg,
rgba(6,18,35,.88) 0%,
rgba(6,18,35,.72) 38%,
rgba(6,18,35,.20) 75%,
transparent 100%
);

}

.hero-container{

position:relative;

z-index:2;

display:grid;

grid-template-columns:1.1fr 380px;

align-items:center;

gap:70px;

width:100%;

height:100%;

}

.hero-content{

max-width:640px;

color:#fff;

}

.hero-tag{

display:inline-flex;

padding:10px 20px;

border-radius:999px;

background:rgba(255,255,255,.12);

backdrop-filter:blur(12px);

margin-bottom:28px;

font-weight:600;

font-size:14px;

}

.hero-content h1{

font-size:68px;

font-weight:900;

line-height:1.05;

margin-bottom:26px;

}

.hero-content h1 span{

color:#A9D8FF;

}

.hero-content p{

font-size:19px;

line-height:34px;

color:#E4EDF7;

margin-bottom:38px;

max-width:560px;

}

.hero-buttons{

display:flex;

gap:18px;

margin-bottom:42px;

}

.primary-btn,

.secondary-btn{

height:58px;

padding:0 34px;

border-radius:999px;

display:inline-flex;

align-items:center;

justify-content:center;

gap:10px;

font-weight:700;

transition:.35s;

}

.primary-btn{

background:#fff;

color:#0F4C81;

}

.secondary-btn{

border:2px solid rgba(255,255,255,.18);

background:rgba(255,255,255,.08);

backdrop-filter:blur(12px);

color:#fff;

}

.primary-btn:hover,

.secondary-btn:hover{

transform:translateY(-15px);

}

.hero-stats{

display:grid;

grid-template-columns:repeat(4,minmax(130px,1fr));

gap:18px;

margin-top:35px;

margin-bottom:0;

}

.stat-box{

height:165px;

background:rgba(255,255,255,.10);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.14);

border-radius:22px;

padding:22px;

}

.stat-box h3{

font-size:34px;

margin-bottom:8px;

color:#fff;

}

.stat-box p{

color:#D7E3EF;

font-size:15px;

}
/*==================================================
STYLE-NEW.CSS
PART 2
HERO CARD
PARTNERS
ABOUT
==================================================*/

/*=========================
HERO CARD
=========================*/

.hero-card{

position:relative;

width:300px;

justify-self:end;

transform:translateX(-10px);

align-self:center;

z-index:5;

background:linear-gradient(135deg,#102A4A,#183D68,#214F83);

border:1px solid rgba(255,255,255,.08);

border-radius:32px;

padding:32px;

color:#fff;

box-shadow:0 35px 80px rgba(0,0,0,.30);

}

.hero-card:hover{

transform:translateY(-10px);

}

.hero-card-icon{

width:74px;

height:74px;

border-radius:22px;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.08);

border:1px solid rgba(255,255,255,.08);

font-size:30px;

margin-bottom:24px;

color:#ffffff;

}

.hero-card h3{

font-size:34px;

line-height:1.2;

margin-bottom:18px;

}

.hero-card p{

color:#E5EEF7;

line-height:30px;

margin-bottom:22px;

}

.hero-rating{

display:flex;

align-items:center;

gap:10px;

font-size:18px;

color:#FFD54A;

font-weight:700;

}

.hero-rating span{

font-size:15px;

color:#fff;

}

/*=========================
PARTNERS
=========================*/

.partners{

background:#081726;

overflow:hidden;

margin-top:0;

}

.partners .section-heading h2{

color:#fff;

}

.partners .section-heading p{

color:#C5D4E4;

}

.partners-slider{

overflow:hidden;

position:relative;

margin-top:10px;

}

.partners-track{

display:flex;

align-items:center;

gap:80px;

width:max-content;

animation:partnerScroll 28s linear infinite;

}

.partners-track img{

height:44px;

width:auto;

opacity:1;

filter:none;

transition:all .35s ease;

}

.partners-track img:hover{

opacity:1;

filter:none;

transform:translateY(-3px) scale(1.05);

}

@keyframes partnerScroll{

0%{

transform:translateX(0);

}

100%{

transform:translateX(-50%);

}

}

/*=========================
ABOUT
=========================*/

.about{

background:#fff;

}

.about-grid{

display:grid;

grid-template-columns:1.05fr .95fr;

gap:80px;

align-items:center;

}

.section-badge{

display:inline-flex;

padding:10px 22px;

background:#EAF4FF;

border-radius:999px;

font-size:13px;

font-weight:700;

color:#0F4C81;

letter-spacing:1px;

margin-bottom:20px;

}

.about-content h2{

font-size:54px;

line-height:1.15;

margin-bottom:24px;

color:#111827;

}

.about-content>p{

font-size:18px;

line-height:33px;

color:#667085;

margin-bottom:42px;

}

.about-features{

display:flex;

flex-direction:column;

gap:26px;

}

.feature-item{

display:flex;

align-items:flex-start;

gap:20px;

}

.feature-icon{

width:68px;

height:68px;

border-radius:20px;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(135deg,#0F4C81,#1D74D6);

color:#fff;

font-size:25px;

flex-shrink:0;

}

.feature-item h4{

font-size:22px;

margin-bottom:8px;

color:#111827;

}

.feature-item p{

font-size:16px;

line-height:29px;

color:#667085;

}

.about-image{

position:relative;

}

.about-image img{

width:100%;

height:500px;

object-fit:fit;

border-radius:34px;

box-shadow:0 35px 80px rgba(0,0,0,.15);

transition:.4s;

}

.about-image img:hover{

transform:scale(1.02);

}
/*==================================================
STYLE-NEW.CSS
PART 3
SERVICES
WHY US
==================================================*/

/*=========================
SERVICES
=========================*/

.services{

background:linear-gradient(to bottom,#F7F9FC,#FFFFFF);

}

.services-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:30px;

}

.service-card{

position:relative;

background:linear-gradient(135deg,#071B31,#0D3967,#176CB3);

border-radius:32px;

padding:36px;

overflow:hidden;

color:#fff;

transition:.45s;

box-shadow:0 28px 70px rgba(7,27,49,.18);

}

.service-card::before{

content:"";

position:absolute;

right:-70px;

top:-70px;

width:180px;

height:180px;

border-radius:50%;

background:rgba(255,255,255,.05);

transition:.45s;

}

.service-card:hover{

transform:translateY(-12px);

box-shadow:0 40px 90px rgba(7,27,49,.28);

}

.service-card:hover::before{

transform:scale(1.25);

}

.service-top{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:26px;

}

.service-icon{

width:78px;

height:78px;

border-radius:22px;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.10);

backdrop-filter:blur(12px);

font-size:30px;

color:#fff;

}

.service-arrow{

width:52px;

height:52px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.10);

font-size:18px;

transition:.35s;

}

.service-card:hover .service-arrow{

background:#fff;

color:#0F4C81;

transform:translateX(6px);

}

.service-card h3{

font-size:31px;

margin-bottom:16px;

font-weight:700;

}

.service-card p{

color:#D9E5F2;

line-height:31px;

margin-bottom:26px;

}

.service-tags{

display:flex;

flex-wrap:wrap;

gap:12px;

margin-bottom:28px;

}

.service-tags span{

padding:10px 18px;

border-radius:999px;

background:rgba(255,255,255,.10);

border:1px solid rgba(255,255,255,.08);

font-size:14px;

font-weight:600;

}

.service-btn{

display:inline-flex;

align-items:center;

justify-content:center;

height:52px;

padding:0 28px;

border-radius:999px;

background:#fff;

color:#0F4C81;

font-weight:700;

transition:.35s;

}

.service-btn:hover{

transform:translateY(-4px);

}

/*=========================
WHY US
=========================*/

.why-us{

background:#ffffff;

}

.why-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:28px;

}

.why-card{

background:#ffffff;

border:1px solid #E7EEF7;

border-radius:30px;

padding:36px;

transition:.4s;

box-shadow:0 18px 45px rgba(0,0,0,.05);

}

.why-card:hover{

transform:translateY(-10px);

border-color:#CFE2F8;

box-shadow:0 32px 75px rgba(15,76,129,.12);

}

.why-icon{

width:74px;

height:74px;

border-radius:22px;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(135deg,#0F4C81,#1D74D6);

color:#fff;

font-size:28px;

margin-bottom:24px;

}

.why-card h3{

font-size:28px;

margin-bottom:14px;

color:#111827;

}

.why-card p{

font-size:16px;

line-height:30px;

color:#667085;

}

/*=========================
PROCESS
=========================*/

.process{

background:#081726;

}

.process .section-heading h2{

color:#fff;

}

.process .section-heading p{

color:#C7D4E3;

}

.process-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:26px;

}

.process-card{

background:rgba(255,255,255,.08);

border:1px solid rgba(255,255,255,.10);

border-radius:28px;

padding:36px;

backdrop-filter:blur(16px);

transition:.4s;

}

.process-card:hover{

transform:translateY(-10px);

background:rgba(255,255,255,.12);

}

.step-number{

width:62px;

height:62px;

border-radius:50%;

background:#fff;

display:flex;

align-items:center;

justify-content:center;

font-weight:800;

color:#0F4C81;

margin-bottom:24px;

}

.process-card h3{

font-size:24px;

margin-bottom:14px;

color:#fff;

}

.process-card p{

color:#D9E5F2;

line-height:30px;

}
/*==================================================
STYLE-NEW.CSS
PART 4
FAQ
CONTACT
FOOTER
==================================================*/

/*=========================
FAQ
=========================*/

.faq{

background:#F7F9FC;

}

.faq-wrapper{

max-width:900px;

margin:auto;

}

.faq-item{

background:#fff;

border:1px solid #E8EEF6;

border-radius:24px;

margin-bottom:18px;

overflow:hidden;

transition:.35s;

box-shadow:0 15px 40px rgba(0,0,0,.05);

}

.faq-item:hover{

transform:translateY(-4px);

box-shadow:0 24px 60px rgba(15,76,129,.12);

}

.faq-question{

width:100%;

display:flex;

justify-content:space-between;

align-items:center;

padding:28px 32px;

font-size:20px;

font-weight:700;

color:#111827;

cursor:pointer;

}

.faq-question span{

flex:1;

text-align:left;

}

.faq-question i{

color:#0F4C81;

font-size:18px;

transition:.35s;

}

.faq-item.active .faq-question i{

transform:rotate(45deg);

}

.faq-answer{

display:none;

padding:0 32px 28px;

}

.faq-item.active .faq-answer{

display:block;

}

.faq-answer p{

color:#667085;

line-height:30px;

}

/*=========================
CONTACT
=========================*/

.contact{

background:#ffffff;

}

.contact-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:28px;

}

.contact-card{

background:#fff;

border:1px solid #E7EEF7;

border-radius:30px;

padding:36px;

text-align:center;

transition:.4s;

box-shadow:0 18px 45px rgba(0,0,0,.05);

}

.contact-card:hover{

transform:translateY(-10px);

box-shadow:0 30px 70px rgba(15,76,129,.12);

}

.contact-icon{

width:74px;

height:74px;

margin:0 auto 22px;

border-radius:22px;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(135deg,#0F4C81,#1D74D6);

color:#fff;

font-size:28px;

}

.contact-card h3{

font-size:26px;

margin-bottom:14px;

color:#111827;

}

.contact-card p{

font-size:16px;

line-height:30px;

color:#667085;

}

/*=========================
FOOTER
=========================*/

.footer{

background:#071B31;

padding:90px 0 0;

color:#fff;

}

.footer-grid{

display:grid;

grid-template-columns:1.3fr 1fr 1fr;

gap:60px;

padding-bottom:60px;

}

.footer-logo{

height:78px;

width:auto;

margin-bottom:22px;

}

.footer-about{

color:#C8D5E2;

line-height:30px;

margin-bottom:26px;

max-width:420px;

}

.footer-column h3{

font-size:22px;

margin-bottom:22px;

}

.footer-column ul li{

margin-bottom:14px;

}

.footer-column ul li a{

color:#D8E3EE;

transition:.3s;

}

.footer-column ul li a:hover{

color:#fff;

padding-left:6px;

}

.footer-column p{

color:#C8D5E2;

line-height:30px;

}

.footer-social{

display:flex;

gap:14px;

margin-top:24px;

}

.footer-social a{

width:48px;

height:48px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.08);

color:#fff;

transition:.35s;

}

.footer-social a:hover{

background:#1D74D6;

transform:translateY(-4px);

}

.footer-bottom{

border-top:1px solid rgba(255,255,255,.08);

padding:24px 0;

text-align:center;

}

.footer-bottom p{

font-size:15px;

color:#AFC1D3;

}
/*==================================================
STYLE-NEW.CSS
PART 5
WHATSAPP
BACK TO TOP
MOBILE MENU
RESPONSIVE
==================================================*/

/*=========================
WHATSAPP FLOAT
=========================*/

.whatsapp-float{

position:fixed;

right:28px;

bottom:28px;

width:66px;

height:66px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:#25D366;

color:#fff;

font-size:32px;

box-shadow:0 20px 50px rgba(37,211,102,.35);

z-index:9999;

transition:.35s;

}

.whatsapp-float:hover{

transform:translateY(-6px) scale(1.06);

}

/*=========================
BACK TO TOP
=========================*/

.back-to-top{

position:fixed;

right:28px;

bottom:108px;

width:56px;

height:56px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:#0F4C81;

color:#fff;

font-size:18px;

opacity:0;

visibility:hidden;

transition:.35s;

box-shadow:0 18px 40px rgba(15,76,129,.30);

z-index:9998;

}

.back-to-top.show{

opacity:1;

visibility:visible;

}

/*=========================
MOBILE MENU
=========================*/

.mobile-toggle{

display:none;

}

.mobile-menu{

display:none;

}

/*=========================
RESPONSIVE
=========================*/

@media(max-width:1200px){

.hero-content h1{

font-size:58px;

}

.hero-container{

gap:50px;

}

.about-grid{

gap:50px;

}

.process-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:992px){

.navbar,

.quote-btn{

display:none;

}

.mobile-toggle{

position:fixed;

top:18px;

right:18px;

width:52px;

height:52px;

display:flex;

align-items:center;

justify-content:center;

background:#0F4C81;

color:#fff;

border-radius:16px;

font-size:20px;

z-index:10001;

}

.mobile-menu{

position:fixed;

top:0;

right:-100%;

width:300px;

height:100vh;

background:#071B31;

padding:110px 35px;

display:flex;

flex-direction:column;

gap:24px;

transition:.40s;

z-index:10000;

}

.mobile-menu.active{

right:0;

}

.mobile-menu a{

color:#fff;

font-size:18px;

font-weight:500;

}

.hero-container{
grid-template-columns:1fr;
gap:40px;
}

.hero-content{

max-width:100%;

}

.hero-card{

width:100%;

max-width:430px;

}

.hero-stats{

grid-template-columns:repeat(2,1fr);

}

.about-grid,

.services-grid,

.why-grid,

.contact-grid,

.footer-grid{

grid-template-columns:1fr;

}

.process-grid{

grid-template-columns:1fr;

}

.about-image img{

height:auto;

}

}

@media(max-width:900px){

.hero-stats{
grid-template-columns:repeat(2,1fr);
}

section{
padding:80px 0;
}

.hero-content h1{
font-size:44px;
}

.hero-content p{
font-size:17px;
line-height:30px;
}

.hero-buttons{
flex-direction:column;
}

.primary-btn,
.secondary-btn{
width:100%;
}

.section-heading h2{
font-size:36px;
}

.about-content h2{
font-size:36px;
}

.footer{
padding-top:70px;
}

.footer-grid{
gap:40px;
}

}

@media(max-width:550px){

.hero-stats{
grid-template-columns:1fr;
}

}

/*=========================
ACTIVE NAVIGATION
=========================*/

.navbar a.active{

color:#0F4C81;

}

.navbar a.active::after{

width:100%;

}

/*=========================
SELECTION
=========================*/

::selection{

background:#0F4C81;

color:#fff;

}

@media (max-width:768px){

.hero-image{


height:100%;

object-fit:cover;

object-position:center;

transform:none;

}

}