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

body{
font-family:'Inter',sans-serif;
background:#0c1f17;
color:white;
}


/* HEADER */

.header{

position:fixed;
top:0;
width:100%;
z-index:1000;

background:linear-gradient(90deg,#052b1e,#083f2a);

padding:16px 28px;

}

.nav-container{

display:flex;
align-items:center;
justify-content:space-between;

max-width:1300px;
margin:auto;

}

.logo-wrap{

display:flex;
align-items:center;
gap:14px;

}

.logo{

width:42px;
height:42px;
object-fit:contain;

}

.brand{

font-size:26px;
font-weight:700;
letter-spacing:1px;

}


/* MENU ICON */

.menu-btn{

width:34px;
height:24px;

display:flex;
flex-direction:column;
justify-content:space-between;

cursor:pointer;

}

.menu-btn span{

display:block;
height:3px;
background:white;
border-radius:2px;

}



/* HERO */

.hero{

position:relative;
height:100vh;
display:flex;
align-items:center;
overflow:hidden;

}

.hero-bg{

position:absolute;
width:100%;
height:100%;
object-fit:cover;
z-index:-2;

}

.hero-overlay{

position:absolute;
width:100%;
height:100%;

background:
linear-gradient(
180deg,
rgba(0,0,0,0.25),
rgba(0,0,0,0.55),
rgba(3,33,21,0.92)
);

z-index:-1;

}


/* HERO CONTENT */

.hero-content{

max-width:1150px;
margin:auto;
padding:0 30px;

margin-top:120px;

}

.hero-badge{

display:inline-block;

padding:10px 22px;

border-radius:40px;

background:linear-gradient(90deg,#7b5c1d,#d2a63b);

font-size:14px;
font-weight:600;
letter-spacing:1px;

margin-bottom:26px;

color:#fff;

}


.hero-title{

font-size:64px;
line-height:1.1;
font-weight:800;

margin-bottom:20px;

}

.hero-title span{

color:#e0b343;

}

.hero-desc{

max-width:640px;

font-size:18px;
line-height:1.6;

opacity:.9;

margin-bottom:40px;

}


/* BUTTONS */

.hero-buttons{

display:flex;
gap:18px;
flex-wrap:wrap;

}

.btn-primary{

background:#c89b2b;
color:#0a1f15;

padding:18px 36px;

border-radius:40px;

font-weight:600;

text-decoration:none;

transition:all .3s ease;

}

.btn-primary:hover{

background:#d8ac3c;

}


.btn-secondary{

border:1px solid rgba(255,255,255,.4);

padding:18px 34px;

border-radius:40px;

text-decoration:none;

color:white;

backdrop-filter:blur(6px);

transition:.3s;

}

.btn-secondary:hover{

background:rgba(255,255,255,0.08);

}



/* MOBILE */

@media(max-width:768px){

.hero-title{

font-size:42px;

}

.hero-desc{

font-size:16px;

}

.hero-content{

margin-top:100px;

}

}

/* ===== PREMIUM REFINEMENT LAYER ===== */

/* smoother header gradient */
.header{
background:linear-gradient(90deg,#042518,#0a4c34);
backdrop-filter:blur(6px);
border-bottom:1px solid rgba(255,255,255,0.04);
}


/* stronger gold tone */
.hero-badge{

background:linear-gradient(90deg,#c39a35,#e6b94d);
box-shadow:0 8px 20px rgba(0,0,0,0.35);

font-weight:600;
letter-spacing:.5px;

}


/* cleaner title spacing */
.hero-title{

font-size:56px;
line-height:1.08;
letter-spacing:-0.5px;

}


/* richer gold highlight */
.hero-title span{

color:#e6b94d;
text-shadow:0 2px 10px rgba(0,0,0,0.4);

}


/* better paragraph readability */
.hero-desc{

font-size:17px;
line-height:1.7;
opacity:.92;

color:rgba(255,255,255,0.92);

}


/* elevate primary button */
.btn-primary{

background:linear-gradient(180deg,#d4a73c,#b88c2a);
box-shadow:0 12px 25px rgba(0,0,0,0.35);
font-size:16px;

}


/* premium hover */
.btn-primary:hover{

transform:translateY(-2px);
box-shadow:0 18px 35px rgba(0,0,0,0.45);

}


/* glass effect secondary */
.btn-secondary{

border:1px solid rgba(255,255,255,0.35);
background:rgba(255,255,255,0.04);

}


/* subtle hero depth */
.hero-overlay{

background:
linear-gradient(
180deg,
rgba(0,0,0,0.15) 0%,
rgba(0,0,0,0.55) 45%,
rgba(3,33,21,0.94) 100%
);

}



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

@media(max-width:768px){

.hero{

height:auto;
padding-top:120px;
padding-bottom:80px;

}

.hero-title{

font-size:38px;
line-height:1.15;

}

.hero-desc{

font-size:15.5px;
line-height:1.6;

}

.hero-buttons{

flex-direction:column;
align-items:flex-start;

}

.btn-primary,
.btn-secondary{

width:220px;
text-align:center;

}

}


/* ===== SMALL PHONE OPTIMIZATION ===== */

@media(max-width:420px){

.hero-title{

font-size:34px;

}

.hero-badge{

font-size:12px;
padding:8px 16px;

}

}

/* ============================= */
/* RIGD NATIONAL COVERAGE STATS */
/* ============================= */

.rigd-stats{

background:#0b3a26;
padding:90px 20px;

}

.stats-grid{

max-width:1100px;
margin:auto;

display:grid;
grid-template-columns:1fr 1fr;
grid-template-rows:1fr 1fr;

}

.stat-box{

padding:70px 40px;

text-align:center;

border-right:1px solid rgba(255,255,255,0.05);
border-bottom:1px solid rgba(255,255,255,0.05);

}

/* remove borders for edges */

.stat-box:nth-child(2),
.stat-box:nth-child(4){
border-right:none;
}

.stat-box:nth-child(3),
.stat-box:nth-child(4){
border-bottom:none;
}


/* numbers */

.stat-box h2{

font-size:52px;
font-weight:800;
color:#e6b94d;

letter-spacing:-0.5px;

margin-bottom:12px;

}

/* small label inside number */

.stat-box .small{

font-size:22px;
font-weight:600;

margin-left:6px;

}

/* description */

.stat-box p{

font-size:17px;

letter-spacing:2px;
text-transform:uppercase;

color:rgba(255,255,255,0.6);

}


/* MOBILE */
/* keep exact 2x2 layout */

@media(max-width:768px){

.rigd-stats{
padding:70px 14px;
}

.stat-box{
padding:45px 20px;
}

.stat-box h2{
font-size:40px;
}

.stat-box p{
font-size:14px;
letter-spacing:1.5px;
}

.stat-box .small{
font-size:18px;
}

}


/* ============================= */
/* PREMIUM COMPACT REFINEMENT */
/* ============================= */

.rigd-stats{
padding:70px 16px;
}

/* tighten grid */
.stats-grid{
max-width:880px;
}

/* reduce box height */
.stat-box{
padding:46px 26px;
}

/* smaller numbers */
.stat-box h2{
font-size:38px;
margin-bottom:10px;
}

/* reduce secondary number text */
.stat-box .small{
font-size:17px;
}

/* cleaner label */
.stat-box p{
font-size:13px;
letter-spacing:1.6px;
color:rgba(255,255,255,0.65);
}

/* thinner divider lines */
.stat-box{
border-right:1px solid rgba(255,255,255,0.04);
border-bottom:1px solid rgba(255,255,255,0.04);
}

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

@media(max-width:768px){

.rigd-stats{
padding:52px 12px;
}

.stats-grid{
max-width:520px;
}

.stat-box{
padding:34px 16px;
}

.stat-box h2{
font-size:30px;
}

.stat-box .small{
font-size:15px;
}

.stat-box p{
font-size:12px;
letter-spacing:1.2px;
}

}

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

.rigd-about{

background:#f4f2ec;
padding:90px 20px;

}

.about-container{

max-width:780px;
margin:auto;

}

.about-label{

display:flex;
align-items:center;
gap:14px;

font-size:13px;
font-weight:600;

letter-spacing:2px;

color:#2c6a43;

margin-bottom:18px;

}

.about-label span{

width:36px;
height:3px;
background:#caa646;

display:block;

}

.about-title{

font-size:36px;
line-height:1.2;
font-weight:800;

color:#0f2c1d;

margin-bottom:26px;

}

.about-title span{

color:#2c6a43;

}

.about-text{

font-size:16px;
line-height:1.8;

color:#4d4d4d;

margin-bottom:18px;

}

/* dropcap */

.dropcap::first-letter{

font-size:54px;
font-weight:700;
color:#2c6a43;

float:left;

line-height:0.9;
margin-right:10px;

}

.about-btn{

display:inline-block;

margin-top:22px;

padding:12px 28px;

border-radius:30px;

border:2px solid #2c6a43;

text-decoration:none;

color:#2c6a43;
font-weight:600;

transition:.3s;

}

.about-btn:hover{

background:#2c6a43;
color:white;

}



/* ============================= */
/* PROJECTS */
/* ============================= */

.rigd-projects{

background:#ffffff;
padding:80px 20px;

}

.projects-container{

max-width:1100px;
margin:auto;

}

.projects-title{

font-size:38px;
font-weight:800;

margin-bottom:12px;

}

.projects-line{

height:4px;
width:160px;

background:#e6e6e6;

margin-bottom:22px;

}

.projects-line div{

width:60px;
height:4px;
background:#d64545;

}

.projects-desc{

font-size:17px;
color:#555;

max-width:620px;

margin-bottom:40px;

}

.projects-grid{

display:grid;

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

gap:22px;

}

.projects-grid img{

width:100%;
height:160px;

object-fit:cover;

border-radius:4px;

transition:.3s;

}

.projects-grid img:hover{

transform:scale(1.04);

}

.projects-btn{

display:block;

margin:60px auto 0 auto;

width:280px;

text-align:center;

padding:16px;

border-radius:8px;

background:#2ea44f;

color:white;

font-size:18px;
font-weight:600;

text-decoration:none;

}



/* MOBILE */

@media(max-width:768px){

.about-title{

font-size:28px;

}

.projects-grid{

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

}

.projects-grid img{

height:120px;

}

.projects-title{

font-size:28px;

}

.projects-desc{

font-size:15px;

}

.projects-btn{

width:220px;
font-size:16px;

}

}

/* ============================= */
/* NATIONAL REACH SECTION */
/* ============================= */

.rigd-reach{

background:linear-gradient(180deg,#072d1f,#041e14);

padding:80px 20px;

}

.reach-container{

max-width:900px;
margin:auto;

}


/* small label */

.reach-label{

display:flex;
align-items:center;
gap:14px;

font-size:13px;
letter-spacing:2px;

color:#caa646;

margin-bottom:18px;

}

.reach-label span{

width:36px;
height:3px;

background:#caa646;

display:block;

}


/* title */

.reach-title{

font-size:36px;
line-height:1.2;

font-weight:800;

margin-bottom:18px;

color:white;

}

.reach-title span{

color:#e6b94d;

}


/* paragraph */

.reach-desc{

font-size:16px;

line-height:1.8;

color:rgba(255,255,255,0.75);

max-width:620px;

margin-bottom:28px;

}


/* button */

.reach-btn{

display:inline-block;

padding:14px 32px;

border-radius:40px;

background:#caa646;

color:#0b2c1c;

font-weight:600;

text-decoration:none;

margin-bottom:40px;

transition:.3s;

}

.reach-btn:hover{

transform:translateY(-2px);

}



/* MAP CARD */

.reach-map-card{

background:rgba(255,255,255,0.04);

border:1px solid rgba(255,255,255,0.06);

border-radius:18px;

padding:34px;

text-align:center;

backdrop-filter:blur(6px);

}


/* map */

.reach-map{

width:100%;
max-width:520px;

margin:auto;

display:block;

opacity:.9;

}


/* caption */

.map-caption{

margin-top:20px;

font-size:15px;

color:rgba(255,255,255,0.7);

}

.map-caption span{

display:block;

font-size:13px;

opacity:.6;

margin-top:6px;

}



/* MOBILE */

@media(max-width:768px){

.rigd-reach{

padding:60px 16px;

}

.reach-title{

font-size:28px;

}

.reach-desc{

font-size:15px;

}

.reach-map-card{

padding:24px;

}

.reach-map{

max-width:420px;

}

}


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

.rigd-cta{

background:#f3f1ea;

padding:70px 20px;

}

.cta-container{

max-width:820px;

margin:auto;

background:linear-gradient(135deg,#0c3a24,#042314);

border-radius:26px;

padding:60px 40px;

text-align:center;

box-shadow:0 18px 40px rgba(0,0,0,0.15);

}


/* title */

.cta-title{

font-size:36px;

font-weight:800;

color:white;

line-height:1.2;

margin-bottom:18px;

}

.cta-title span{

color:#e6b94d;

}


/* text */

.cta-text{

font-size:17px;

line-height:1.8;

color:rgba(255,255,255,0.8);

max-width:560px;

margin:0 auto 32px auto;

}


/* button */

.cta-btn{

display:inline-block;

background:#d4a73c;

color:#0b2c1c;

font-weight:700;

text-decoration:none;

padding:18px 40px;

border-radius:40px;

font-size:18px;

transition:.25s;

}

.cta-btn:hover{

transform:translateY(-2px);

box-shadow:0 10px 20px rgba(0,0,0,0.25);

}



/* MOBILE */

@media(max-width:768px){

.rigd-cta{

padding:50px 16px;

}

.cta-container{

padding:40px 24px;

border-radius:20px;

}

.cta-title{

font-size:28px;

}

.cta-text{

font-size:15px;

}

.cta-btn{

font-size:16px;

padding:16px 28px;

}

}

/* ============================= */
/* TRUSTED BY / LOGO MARQUEE */
/* ============================= */

.rigd-trust{

background:#f3f1ea;

padding:70px 20px;

text-align:center;

}

.trust-container{

max-width:1100px;
margin:auto;

}

.trust-label{

font-size:12px;
letter-spacing:2px;

display:inline-block;

background:#f4d7b6;

padding:6px 10px;

border-radius:6px;

margin-bottom:14px;

}

.trust-title{

font-size:32px;
font-weight:800;

max-width:620px;

margin:0 auto 40px auto;

}


/* marquee */

.trust-marquee{

overflow:hidden;

position:relative;

}

.marquee-track{

display:flex;

gap:22px;

animation:marquee 30s linear infinite;

}

.trust-marquee:hover .marquee-track{

animation-play-state:paused;

}


/* logo cards */

.logo-box{

flex:0 0 auto;

background:white;

border-radius:12px;

padding:18px 30px;

display:flex;

align-items:center;

justify-content:center;

box-shadow:0 6px 16px rgba(0,0,0,0.08);

}

.logo-box img{

height:26px;
width:auto;

opacity:.9;

}


/* animation */

@keyframes marquee{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}


/* MOBILE */

@media(max-width:768px){

.trust-title{

font-size:24px;

}

.logo-box{

padding:14px 22px;

}

.logo-box img{

height:22px;

}

}



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

.rigd-footer{
background:#021b13;
padding:55px 18px 32px;
color:white;
}

.footer-container{
max-width:760px;
margin:auto;
}


/* greeting */

.footer-greeting{
font-size:34px;
font-weight:800;
margin-bottom:22px;
line-height:1.2;
}

.footer-greeting span{
color:#22c55e;
}


/* social */

.footer-social{
display:flex;
gap:20px;
margin-bottom:40px;
}

.footer-social img{
width:22px;
height:22px;
filter:invert(1);
opacity:.9;
}


/* labels */

.footer-label{
letter-spacing:3px;
font-size:11px;
opacity:.6;
margin-bottom:12px;
}


/* links */

.footer-links a{

display:flex;
align-items:center;
gap:12px;

padding:14px 0;

text-decoration:none;
color:white;

font-size:16px;

border-bottom:1px solid rgba(255,255,255,0.07);

transition:.25s;

}

.footer-links a:hover{
color:#22c55e;
}


/* arrow icon */

.footer-arrow{
width:16px;
height:16px;
color:#22c55e;
flex-shrink:0;
}


/* feedback */

.footer-feedback{
margin-top:34px;
}

.footer-feedback a{
color:#22c55e;
font-size:18px;
text-decoration:underline;
}


/* divider */

.footer-divider{
height:1px;
background:rgba(255,255,255,0.1);
margin:38px 0 20px;
}


/* copyright */

.footer-copy{
letter-spacing:2px;
font-size:13px;
opacity:.6;
margin-bottom:14px;
}

.footer-powered{
font-size:14px;
color:#22c55e;
}


/* MOBILE */

@media(max-width:768px){

.footer-greeting{
font-size:28px;
}

.footer-links a{
font-size:15px;
padding:12px 0;
}

}


/* CENTER FEEDBACK + COPYRIGHT BLOCK */

.footer-feedback{
text-align:center;
margin-top:34px;
}

.footer-feedback a{
display:inline-block;
}

.footer-divider{
max-width:420px;
margin:38px auto 20px;
}

.footer-copy{
text-align:center;
max-width:520px;
margin:0 auto 12px;
line-height:1.6;
}

.footer-powered{
text-align:center;
}


/* PREMIUM FOOTER CREDIT */

.footer-powered{

text-align:center;

font-size:14px;

letter-spacing:1.5px;

margin-top:6px;

color:rgba(255,255,255,0.65);

}

/* clickable brand */

.footer-credit{

color:#22c55e;

text-decoration:none;

font-weight:700;

margin-left:4px;

position:relative;

}

/* subtle underline animation */

.footer-credit::after{

content:"";

position:absolute;

left:0;
bottom:-3px;

width:0%;
height:1px;

background:#22c55e;

transition:0.3s;

}

.footer-credit:hover::after{

width:100%;

}


/* TRUST / PARTNERS SECTION (REFINED & COMPACT) */

.rigd-trust{
background:#f3f1ea;
padding:55px 20px;
text-align:center;
}

.trust-label{

display:inline-block;

background:#f2cfa7;
color:#7a4b00;

font-size:12px;
font-weight:600;

letter-spacing:1.5px;

padding:6px 12px;

border-radius:8px;

margin-bottom:14px;

}

.trust-title{

color:#1b1b1b;

font-size:24px;

font-weight:700;

max-width:480px;

margin:0 auto 26px auto;

line-height:1.35;

letter-spacing:-0.2px;

}

/* HERO — REFINED PREMIUM LAYOUT */

.hero{
position:relative;
height:82vh;
overflow:hidden;
display:flex;
align-items:center;
padding:0 22px;
}

/* BACKGROUND */

.hero-bg{
position:absolute;
top:0;
left:0;

width:100%;
height:100%;

object-fit:cover;

opacity:0;

transition:
opacity 1.6s cubic-bezier(.4,0,.2,1),
transform 8s cubic-bezier(.4,0,.2,1);

transform:scale(1.12);

z-index:1;
}

.hero-bg.active{
opacity:1;
transform:scale(1);
}

/* OVERLAY */

.hero-overlay{
position:absolute;
inset:0;

background:
linear-gradient(
180deg,
rgba(0,0,0,.32) 0%,
rgba(0,0,0,.46) 45%,
rgba(0,0,0,.66) 100%
);

z-index:2;
}

/* CONTENT WRAP */

.hero-content{
position:relative;
z-index:3;

max-width:460px;

padding-top:20px;
}

/* BADGE */

.hero-badge{
display:inline-flex;
align-items:center;

background:#d4a843;
color:#fff;

font-weight:600;
font-size:11px;

padding:8px 16px;

border-radius:40px;

letter-spacing:.5px;

margin-bottom:14px;

box-shadow:0 5px 14px rgba(0,0,0,.18);
}

/* TITLE */

.hero-title{
font-size:32px;
line-height:1.18;

font-weight:800;

letter-spacing:-.4px;

margin-bottom:12px;
}

.hero-title span{
color:#d4a843;
}

/* DESCRIPTION */

.hero-desc{
font-size:14px;

line-height:1.55;

color:rgba(255,255,255,.86);

margin-bottom:20px;

max-width:420px;
}

/* BUTTON GROUP */

.hero-buttons{
display:flex;
gap:10px;
flex-wrap:wrap;
}

/* PRIMARY BUTTON */

.btn-primary{
background:#d4a843;

padding:11px 20px;

border-radius:26px;

font-size:14px;
font-weight:600;

color:#111;

text-decoration:none;

transition:.25s ease;

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

.btn-primary:hover{
transform:translateY(-1px);
box-shadow:0 10px 24px rgba(0,0,0,.28);
}

/* SECONDARY BUTTON */

.btn-secondary{
border:1px solid rgba(255,255,255,.35);

padding:10px 20px;

border-radius:26px;

font-size:14px;

color:#fff;

text-decoration:none;

transition:.25s ease;
}

.btn-secondary:hover{
background:rgba(255,255,255,.08);
}

/* TEXT TRANSITION */

.hero-title,
.hero-desc{
transition:
opacity .6s ease,
transform .6s ease;
}

.hero-text-out{
opacity:0;
transform:translateY(12px);
}


/* MOBILE NAV OVERLAY */

.rigd-menu{
position:fixed;
top:0;
left:0;
width:100%;
height:100vh;

background:#000;

z-index:999;

transform:translateY(-100%);
transition:transform .45s cubic-bezier(.4,0,.2,1);

overflow-y:auto;
}

.rigd-menu.active{
transform:translateY(0);
}

/* MENU HEADER */

.menu-top{
display:flex;
justify-content:space-between;
align-items:center;

padding:26px 22px 10px;
}

.menu-tabs{
display:flex;
gap:30px;
}

.menu-tab{
color:#aaa;
font-weight:600;
font-size:18px;
letter-spacing:.5px;
cursor:pointer;
}

.menu-tab.active{
color:#fff;
position:relative;
}

.menu-tab.active::after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:100%;
height:3px;
background:#d4a843;
border-radius:2px;
}

/* CLOSE BUTTON */

.menu-close{
width:48px;
height:48px;

border-radius:14px;

background:#1b1b1b;

display:flex;
align-items:center;
justify-content:center;

font-size:22px;
color:#fff;

cursor:pointer;
}

/* MENU CONTENT */

.menu-body{
padding:20px;
display:flex;
flex-direction:column;
gap:24px;
}

/* FEATURE CARD */

.menu-card{
position:relative;
border-radius:22px;
overflow:hidden;
}

.menu-card img{
width:100%;
height:260px;
object-fit:cover;
display:block;
}

/* CARD OVERLAY */

.menu-card::after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(
180deg,
rgba(0,0,0,.2),
rgba(0,0,0,.8)
);
}

/* CARD TEXT */

.menu-card-content{
position:absolute;
bottom:22px;
left:22px;
right:22px;

z-index:2;
}

.menu-label{
font-size:12px;
letter-spacing:2px;
color:#d4a843;
margin-bottom:6px;
}

.menu-title{
font-size:28px;
font-weight:700;
line-height:1.2;
margin-bottom:14px;
}

/* CARD BUTTON */

.menu-btn{
display:inline-block;

padding:10px 20px;

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

border-radius:30px;

font-size:13px;
font-weight:600;

backdrop-filter:blur(6px);

color:#fff;
text-decoration:none;
}

/* HAMBURGER BUTTON */

.hamburger-btn{
width:40px;
height:30px;

display:flex;
flex-direction:column;
justify-content:space-between;

cursor:pointer;
}

.hamburger-btn span{
display:block;
height:3px;
background:#fff;
border-radius:2px;
}


/* HEADER — COMPACT STICKY BAR */

.header{
position:sticky;
top:0;
z-index:50;

background:linear-gradient(90deg,#053a25,#0c5a38);

height:60px; /* was effectively ~90px */
display:flex;
align-items:center;
}

/* NAV CONTAINER */

.nav-container{
width:100%;
max-width:1200px;

margin:0 auto;

display:flex;
align-items:center;
justify-content:space-between;

padding:0 18px;
}

/* LOGO AREA */

.logo-wrap{
display:flex;
align-items:center;
gap:10px;
}

.logo{
width:28px; /* smaller coat of arms */
height:28px;
object-fit:contain;
}

.brand{
font-size:18px;
font-weight:700;
letter-spacing:.3px;
}

/* HAMBURGER — SMALLER + CLEANER */

.hamburger-btn{
width:28px;
height:18px;

display:flex;
flex-direction:column;
justify-content:space-between;

cursor:pointer;
}

.hamburger-btn span{
display:block;
height:2px;
background:#fff;
border-radius:2px;

transition:.25s ease;
}

/* subtle hover */

.hamburger-btn:hover span{
opacity:.85;
}


/* MENU LINK LIST */

.menu-links{
margin-top:10px;
display:flex;
flex-direction:column;
gap:14px;
}

.menu-link{
display:flex;
align-items:center;
gap:14px;

padding:14px 16px;

background:#111;
border-radius:14px;

text-decoration:none;
color:#fff;

font-weight:500;
font-size:15px;

transition:.2s ease;
}

.menu-link:hover{
background:#1b1b1b;
}

.menu-icon{
width:22px;
height:22px;
stroke:#d4a843;
flex-shrink:0;
}

.menu-arrow{
margin-left:auto;
width:18px;
height:18px;
opacity:.6;
}


.menu-links{
margin-bottom:24px;
}

/* MENU ENTRANCE ANIMATION */

.menu-links .menu-link,
.menu-card{
opacity:0;
transform:translateY(20px);
transition:all .45s cubic-bezier(.22,.61,.36,1);
}

/* animate when menu opens */

.rigd-menu.active .menu-link{
opacity:1;
transform:translateY(0);
}

/* stagger effect for links */

.rigd-menu.active .menu-link:nth-child(1){transition-delay:.05s;}
.rigd-menu.active .menu-link:nth-child(2){transition-delay:.1s;}
.rigd-menu.active .menu-link:nth-child(3){transition-delay:.15s;}
.rigd-menu.active .menu-link:nth-child(4){transition-delay:.2s;}
.rigd-menu.active .menu-link:nth-child(5){transition-delay:.25s;}

/* cards appear after links */

.rigd-menu.active .menu-card{
opacity:1;
transform:translateY(0);
}

.rigd-menu.active .menu-card:nth-of-type(1){transition-delay:.35s;}
.rigd-menu.active .menu-card:nth-of-type(2){transition-delay:.45s;}
.rigd-menu.active .menu-card:nth-of-type(3){transition-delay:.55s;}



/* HEADER LAYOUT */

.header{
position:sticky;
top:0;
z-index:50;

background:linear-gradient(90deg,#053a25,#0c5a38);

height:64px;

display:flex;
align-items:center;
}

/* CONTAINER */

.nav-container{
width:100%;
max-width:1200px;

margin:0 auto;

display:flex;
align-items:center;
justify-content:space-between;

padding:0 16px;
}

/* LOGO AREA */

.logo-wrap{
display:flex;
align-items:center;
gap:12px;
}

/* LOGO IMAGE */

.rigd-logo{
width:38px;
height:38px;
object-fit:contain;
}

/* TEXT BLOCK */

.brand-block{
display:flex;
flex-direction:column;
line-height:1.1;
}

/* RIGD */

.brand-title{
font-size:18px;
font-weight:700;
color:#fff;
letter-spacing:.4px;
}

/* SUBTITLE */

.brand-sub{
font-size:10px;
color:rgba(255,255,255,.85);
letter-spacing:.5px;
text-transform:uppercase;
}

/* HAMBURGER */

.hamburger-btn{
width:26px;
height:18px;

display:flex;
flex-direction:column;
justify-content:space-between;
cursor:pointer;
}

.hamburger-btn span{
height:2px;
background:#fff;
border-radius:2px;
display:block;
}




/* ================= NEWS ================= */

.rigd-news{
padding:100px 20px;
background:#f5f7f4;
}

.news-container{
max-width:1100px;
margin:auto;
}

/* HEADER */

.news-header{
margin-bottom:50px;
}

.news-label{
display:flex;
align-items:center;
gap:12px;
font-size:13px;
letter-spacing:.18em;
color:#2f6d45;
font-weight:600;
margin-bottom:12px;
}

.news-label span{
width:40px;
height:3px;
background:#c8a33a;
border-radius:2px;
}

.news-title{
font-size:40px;
font-weight:800;
color:#13291b;
}

.news-title span{
color:#2f6d45;
}



/* LAYOUT */

.news-layout{
display:grid;
grid-template-columns:2fr 1fr;
gap:28px;
}



/* FEATURED */

.news-feature{
position:relative;
border-radius:26px;
overflow:hidden;
display:block;
color:white;
text-decoration:none;
}

.news-feature img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}

.feature-overlay{
position:absolute;
bottom:0;
left:0;
right:0;
padding:30px;
background:linear-gradient(to top,rgba(0,0,0,.65),transparent);
}

.feature-date{
font-size:14px;
opacity:.85;
margin-bottom:6px;
}

.feature-title{
font-size:26px;
font-weight:700;
line-height:1.3;
}



/* SIDE NEWS */

.news-side{
display:flex;
flex-direction:column;
gap:20px;
}

.news-mini{
display:flex;
gap:14px;
background:white;
padding:14px;
border-radius:18px;
box-shadow:0 6px 18px rgba(0,0,0,.07);
text-decoration:none;
color:inherit;
}

.news-mini img{
width:90px;
height:80px;
object-fit:cover;
border-radius:10px;
}

.mini-date{
font-size:13px;
color:#8b9490;
margin-bottom:4px;
}

.mini-title{
font-size:16px;
font-weight:600;
line-height:1.35;
}



/* BUTTON */

.news-footer{
text-align:center;
margin-top:50px;
}

.news-btn{
display:inline-block;
padding:16px 36px;
border-radius:50px;
border:2px solid #2f6d45;
color:#2f6d45;
font-weight:600;
text-decoration:none;
transition:.3s;
}

.news-btn:hover{
background:#2f6d45;
color:white;
}



/* MOBILE */

@media(max-width:900px){

.news-layout{
grid-template-columns:1fr;
}

.feature-title{
font-size:22px;
}

}


/* LOGO MARQUEE */

.trust-marquee{
overflow:hidden;
position:relative;
width:100%;
margin-top:40px;
}

.marquee-track{
display:flex;
align-items:center;
gap:40px;
animation:scrollMarquee 22s linear infinite;
}

/* remove the white card look */

.logo-box{
display:flex;
align-items:center;
justify-content:center;
min-width:120px;
height:80px;
background:transparent;
border-radius:0;
box-shadow:none;
}

/* make logos bigger and cleaner */

.logo-box img{
max-height:52px;
max-width:120px;
width:auto;
height:auto;
object-fit:contain;
opacity:0.95;
transition:transform .25s ease, opacity .25s ease;
}

/* subtle premium hover */

.logo-box img:hover{
transform:scale(1.08);
opacity:1;
}

/* marquee animation */

@keyframes scrollMarquee{
0%{transform:translateX(0)}
100%{transform:translateX(-50%)}
}


/* =========================
FIX MINI NEWS CONTENT VISIBILITY
========================= */
.news-mini {
    display: flex;
    align-items: center;
    gap: 14px;
}

/* ensure text container expands */
.news-mini > div {
    flex: 1;
}

/* FIX TEXT VISIBILITY */
.mini-date {
    font-size: 13px;
    color: #6b7280;
    margin-bottom: 4px;
}

.mini-title {
    font-size: 15.5px;
    font-weight: 600;
    color: #111827; /* force visible text */
    line-height: 1.4;
}

/* ensure image doesn't break layout */
.news-mini img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 12px;
    flex-shrink: 0;
}


/* =========================
FEATURE IMAGE OVERLAY (READABILITY FIX)
========================= */
.news-feature {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}

/* GRADIENT OVERLAY */
.news-feature::before {
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.55) 0%,
        rgba(0, 0, 0, 0.35) 35%,
        rgba(0, 0, 0, 0.1) 65%,
        rgba(0, 0, 0, 0) 100%
    );

    z-index: 1;
}

/* ENSURE TEXT IS ABOVE OVERLAY */
.feature-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    display: flex;
    flex-direction: column;
    justify-content: flex-end;

    padding: 20px;
}

/* TEXT IMPROVEMENT */
.feature-title {
    color: #ffffff;
    text-shadow: 0 2px 10px rgba(0,0,0,0.25);
}

.feature-date {
    color: rgba(255,255,255,0.8);
}


/* =============================
RIGD TRUST MODAL
============================= */

.rigd-trust-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.rigd-trust-modal.active {
  opacity: 1;
  pointer-events: auto;
}

.rigd-trust-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.45);
  backdrop-filter: blur(8px);
}

/* CARD */
.rigd-trust-card {
  width: 100%;
  max-width: 340px;
  background: #ffffff;
  border-radius: 20px;
  overflow: hidden;
  position: relative;

  box-shadow:
    0 20px 40px rgba(0,0,0,0.18),
    0 4px 10px rgba(0,0,0,0.08);

  transform: scale(0.96) translateY(20px);
  transition: all 0.25s ease;
}

.rigd-trust-modal.active .rigd-trust-card {
  transform: scale(1) translateY(0);
}

/* HEADER */
.rigd-trust-header {
  padding: 18px;
  background: linear-gradient(135deg, #1d9b4d, #a3d977);

  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.trust-brand {
  font-weight: 600;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.trust-dot {
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 50%;
}

.trust-network {
  font-size: 12px;
  opacity: 0.9;
}

/* BODY */
.rigd-trust-body {
  padding: 20px 18px 18px;
}

.trust-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 6px;
  color: #111;
}

.trust-desc {
  font-size: 13.5px;
  color: #666;
  line-height: 1.45;
  margin-bottom: 14px;
}

/* BOX */
.trust-box {
  display: flex;
  gap: 10px;
  background: #f4f5f6;
  border-radius: 12px;
  padding: 12px;
  margin-bottom: 16px;
}

.trust-box p {
  font-size: 12.5px;
  color: #555;
  line-height: 1.45;
}

/* BUTTONS */
.trust-primary {
  width: 100%;
  height: 44px;
  border: none;
  border-radius: 12px;
  background: #111;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;

  box-shadow: 0 6px 14px rgba(0,0,0,0.25);
}

.trust-secondary {
  width: 100%;
  height: 40px;
  margin-top: 8px;
  border-radius: 12px;
  border: 1px solid #ddd;
  background: #fff;
  font-size: 13px;
  color: #555;
  cursor: pointer;
}

/* CLOSE */
.rigd-trust-close {
  position: absolute;
  top: 10px;
  right: 12px;
  border: none;
  background: transparent;
  font-size: 18px;
  color: #fff;
  cursor: pointer;
}

/* =============================
MODERN VISUAL UPGRADE
============================= */

/* Header refinement */
.rigd-trust-header {
  background: linear-gradient(135deg, #15803d, #4ade80);
  padding: 14px 16px;
}

/* Hero strip */
.trust-hero {
  padding: 16px 18px 10px;
  background: linear-gradient(to bottom, rgba(22,163,74,0.08), transparent);
  text-align: left;
}

.trust-hero h2 {
  font-size: 17px;
  font-weight: 600;
  margin-top: 4px;
  color: #111;
}

.trust-badge {
  font-size: 11px;
  color: #16a34a;
  font-weight: 600;
  letter-spacing: 0.3px;
}

/* Description */
.trust-desc {
  font-size: 13px;
  line-height: 1.5;
  color: #555;
  margin-bottom: 14px;
}

/* Value points */
.trust-points {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 18px;
}

.trust-points div {
  font-size: 13px;
  color: #222;
  display: flex;
  align-items: center;
  gap: 6px;
}

/* Button refinement */
.trust-primary {
  height: 46px;
  border-radius: 14px;
  font-weight: 600;
  font-size: 14px;
  background: linear-gradient(180deg, #1f1f1f, #000);
}

.trust-secondary {
  height: 42px;
  border-radius: 14px;
  font-size: 13px;
}

/* Remove heavy box feel */
.trust-box {
  display: none;
}