/*======================================================
RBC ONLINE BANKING
STYLE.CSS
PARTIE 1
======================================================*/

/* RESET */

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

html{
scroll-behavior:smooth;
}

body{

font-family:'Roboto',sans-serif;

background:#f5f7fa;

color:#222;

line-height:1.6;

overflow-x:hidden;

}

/* VARIABLES */

:root{

--blue:#0051A5;

--darkBlue:#003087;

--yellow:#FFD200;

--white:#ffffff;

--light:#f5f7fa;

--gray:#6d6d6d;

--black:#222;

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

--radius:12px;

}

/* LINKS */

a{

text-decoration:none;

color:inherit;

}

/* IMAGES */

img{

max-width:100%;

display:block;

}

/* CONTAINER */

.container{

width:90%;

max-width:1350px;

margin:auto;

}

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

.header{

position:fixed;

top:0;

left:0;

width:100%;

background:#fff;

z-index:9999;

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

}

.header .container{

display:flex;

justify-content:space-between;

align-items:center;

height:82px;

}

/*======================================================
LOGO
======================================================*/

.logo h2{

font-size:34px;

font-weight:900;

display:flex;

align-items:center;

gap:10px;

}

.logo .blue{

color:var(--blue);

}

.logo .yellow{

color:var(--yellow);

}

/*======================================================
MENU
======================================================*/

.navbar ul{

display:flex;

align-items:center;

gap:35px;

list-style:none;

}

.navbar a{

font-size:16px;

font-weight:500;

color:#222;

transition:.3s;

position:relative;

}

.navbar a:hover{

color:var(--blue);

}

.navbar a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

height:3px;

width:0;

background:var(--yellow);

transition:.3s;

}

.navbar a:hover::after{

width:100%;

}

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

.header-buttons{

display:flex;

align-items:center;

gap:15px;

}

.search{

width:48px;

height:48px;

border:none;

border-radius:50%;

background:#f1f1f1;

cursor:pointer;

font-size:18px;

transition:.3s;

}

.search:hover{

background:var(--yellow);

}

.login{

padding:14px 30px;

border:none;

background:var(--blue);

color:#fff;

border-radius:8px;

font-size:15px;

font-weight:700;

cursor:pointer;

transition:.3s;

}

.login:hover{

background:var(--darkBlue);

transform:translateY(-2px);

}

/*======================================================
GENERAL BUTTONS
======================================================*/

.btn{

display:inline-flex;

align-items:center;

justify-content:center;

padding:15px 35px;

border-radius:8px;

font-weight:700;

font-size:16px;

transition:.35s;

cursor:pointer;

}

.btn.blue{

background:var(--blue);

color:#fff;

}

.btn.blue:hover{

background:var(--darkBlue);

}

.btn.yellow{

background:var(--yellow);

color:#111;

}

.btn.yellow:hover{

transform:translateY(-3px);

box-shadow:var(--shadow);

}
/*======================================================
HERO SECTION
======================================================*/

.hero{

margin-top:82px;

height:92vh;

background:linear-gradient(rgba(0,51,122,.60),rgba(0,81,165,.65)),
url("https://images.unsplash.com/photo-1520607162513-77705c0f0d4a?q=80&w=2070&auto=format&fit=crop");

background-size:cover;

background-position:center;

display:flex;

justify-content:center;

align-items:center;

text-align:center;

color:#fff;

position:relative;

}

.overlay{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,.10);

}

.hero-content{

position:relative;

z-index:2;

max-width:850px;

padding:20px;

}

.hero h1{

font-size:64px;

font-weight:900;

margin-bottom:25px;

line-height:1.1;

}

.hero p{

font-size:22px;

margin-bottom:45px;

font-weight:300;

}

.hero-btns{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

/*======================================================
SERVICES
======================================================*/

.services{

padding:100px 0;

background:#fff;

}

.services h2{

font-size:42px;

text-align:center;

margin-bottom:60px;

color:var(--blue);

font-weight:800;

}

.cards{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:30px;

}

.card{

background:#fff;

padding:35px;

border-radius:15px;

text-align:center;

box-shadow:var(--shadow);

transition:.4s;

border-top:5px solid transparent;

}

.card:hover{

transform:translateY(-12px);

border-color:var(--yellow);

}

.card i{

font-size:55px;

color:var(--blue);

margin-bottom:25px;

}

.card h3{

font-size:25px;

margin-bottom:15px;

}

.card p{

color:var(--gray);

font-size:15px;

line-height:1.8;

}

/*======================================================
WHY RBC
======================================================*/

.why-rbc{

padding:100px 0;

background:#f7f9fc;

}

.why-rbc h2{

text-align:center;

font-size:42px;

margin-bottom:20px;

color:var(--blue);

}

.section-description{

text-align:center;

max-width:800px;

margin:0 auto 60px;

color:var(--gray);

font-size:18px;

}

.why-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:30px;

}

.why-box{

background:#fff;

padding:35px;

border-radius:15px;

box-shadow:var(--shadow);

text-align:center;

transition:.3s;

}

.why-box:hover{

transform:translateY(-8px);

}

.why-box i{

font-size:48px;

color:var(--yellow);

margin-bottom:20px;

}

.why-box h3{

margin-bottom:15px;

font-size:24px;

color:var(--blue);

}

.why-box p{

color:var(--gray);

line-height:1.8;

}
/*======================================================
DIGITAL BANKING
======================================================*/

.digital{

padding:100px 0;

background:#ffffff;

}

.digital-container{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.digital-left h2{

font-size:42px;

color:var(--blue);

margin-bottom:25px;

font-weight:800;

}

.digital-left p{

font-size:18px;

color:var(--gray);

margin-bottom:30px;

line-height:1.8;

}

.digital-left ul{

list-style:none;

margin-bottom:35px;

}

.digital-left ul li{

margin-bottom:18px;

font-size:17px;

display:flex;

align-items:center;

gap:15px;

}

.digital-left ul li i{

color:var(--yellow);

font-size:18px;

}

.digital-right{

display:flex;

justify-content:center;

align-items:center;

}

.digital-right img{

width:100%;

max-width:480px;

border-radius:20px;

box-shadow:var(--shadow);

}

/*======================================================
PRODUCTS
======================================================*/

.products{

padding:100px 0;

background:#f5f7fa;

}

.products h2{

text-align:center;

font-size:42px;

color:var(--blue);

margin-bottom:60px;

font-weight:800;

}

/*======================================================
CONTACT
======================================================*/

.contact{

padding:100px 0;

background:linear-gradient(135deg,#0051A5,#003087);

text-align:center;

color:#fff;

}

.contact h2{

font-size:42px;

margin-bottom:20px;

}

.contact p{

font-size:18px;

margin-bottom:40px;

opacity:.95;

}

.contact-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

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

footer{

background:#00264d;

color:#fff;

padding-top:70px;

}

.footer-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:40px;

padding-bottom:50px;

}

.footer-grid h3{

font-size:30px;

margin-bottom:20px;

}

.footer-grid h4{

margin-bottom:20px;

font-size:20px;

}

.footer-grid ul{

list-style:none;

}

.footer-grid ul li{

margin-bottom:12px;

}

.footer-grid ul li a{

color:#ddd;

transition:.3s;

}

.footer-grid ul li a:hover{

color:var(--yellow);

}

.socials{

display:flex;

gap:15px;

margin-top:20px;

}

.socials a{

width:45px;

height:45px;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

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

transition:.3s;

font-size:18px;

}

.socials a:hover{

background:var(--yellow);

color:#000;

}

.copyright{

text-align:center;

padding:25px;

border-top:1px solid rgba(255,255,255,.15);

font-size:15px;

color:#ddd;

}

/*======================================================
RESPONSIVE
======================================================*/

@media(max-width:991px){

.navbar{

display:none;

}

.hero h1{

font-size:46px;

}

.hero p{

font-size:18px;

}

.digital-container{

grid-template-columns:1fr;

text-align:center;

}

.digital-left ul li{

justify-content:center;

}

}

@media(max-width:768px){

.header .container{

height:72px;

}

.logo h2{

font-size:24px;

}

.hero{

padding:40px 20px;

height:auto;

min-height:85vh;

}

.hero h1{

font-size:36px;

}

.hero-btns{

flex-direction:column;

align-items:center;

}

.btn{

width:100%;

max-width:320px;

}

.services,
.products,
.why-rbc,
.digital,
.contact{

padding:70px 0;

}

.services h2,
.products h2,
.why-rbc h2,
.digital h2,
.contact h2{

font-size:32px;

}

.card{

padding:25px;

}

.footer-grid{

text-align:center;

}

.socials{

justify-content:center;

}

}
