/**
 * Kantale Avion Farm Retreat - Main Stylesheet
 * 
 * Color Palette:
 * - Burgundy: #8B1538
 * - Teal: #1B9AAA
 * - Cyan: #00D9E8
 * - Lime: #A8D43D
 * - Lime Bright: #C8E841
 * - Navy: #2B4162
 */

/* ========================================
   CSS VARIABLES
======================================== */
:root {
    --burgundy: #8B1538;
    --teal: #1B9AAA;
    --cyan: #00D9E8;
    --lime: #A8D43D;
    --lime-bright: #C8E841;
    --navy: #2B4162;
    --white: #FFFFFF;
    --light-bg: #F8F9FA;
}

/* ========================================
   GLOBAL RESET & BASE STYLES
======================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Poppins', sans-serif;
    color: var(--navy);
    background: var(--white);
    overflow-x: hidden;
}

/* ========================================
   WAVE PATTERN BACKGROUNDS
======================================== */
.wave-pattern {
    position: relative;
    padding-bottom: 150px;
}

.wave-pattern::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 150px;
    background: linear-gradient(to bottom, transparent 0%, var(--white) 100%);
    z-index: 1;
}

.waves {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 150px;
    overflow: hidden;
}

.wave {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.wave-layer-1 {
    background: var(--lime-bright);
    clip-path: polygon(
        0% 60%, 5% 55%, 10% 60%, 15% 55%, 20% 58%, 25% 53%, 30% 57%, 35% 52%, 40% 56%, 45% 51%, 
        50% 55%, 55% 50%, 60% 54%, 65% 49%, 70% 53%, 75% 48%, 80% 52%, 85% 47%, 90% 51%, 95% 46%, 
        100% 50%, 100% 100%, 0% 100%
    );
    opacity: 1;
    z-index: 3;
}

.wave-layer-2 {
    background: var(--lime);
    clip-path: polygon(
        0% 70%, 5% 65%, 10% 68%, 15% 63%, 20% 67%, 25% 62%, 30% 66%, 35% 61%, 40% 65%, 45% 60%, 
        50% 64%, 55% 59%, 60% 63%, 65% 58%, 70% 62%, 75% 57%, 80% 61%, 85% 56%, 90% 60%, 95% 55%, 
        100% 59%, 100% 100%, 0% 100%
    );
    opacity: 1;
    z-index: 2;
}

.wave-layer-3 {
    background: var(--cyan);
    clip-path: polygon(
        0% 80%, 5% 77%, 10% 79%, 15% 76%, 20% 78%, 25% 75%, 30% 77%, 35% 74%, 40% 76%, 45% 73%, 
        50% 75%, 55% 72%, 60% 74%, 65% 71%, 70% 73%, 75% 70%, 80% 72%, 85% 69%, 90% 71%, 95% 68%, 
        100% 70%, 100% 100%, 0% 100%
    );
    opacity: 1;
    z-index: 1;
}

/* Wave Dots and Location Markers */
.wave-dots {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 150px;
    z-index: 4;
}

.dot {
    position: absolute;
    width: 8px;
    height: 8px;
    background: var(--navy);
    border-radius: 50%;
    opacity: 0.6;
}

.location-marker {
    position: absolute;
    width: 12px;
    height: 12px;
    background: var(--cyan);
    border-radius: 50%;
    border: 2px solid var(--white);
}
/* ========================================
   HEADER & NAVIGATION (FINAL WORKING FIX)
======================================== */
header {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: transparent !important; /* මුලින්ම විනිවිද පෙනෙන ලෙස */
    transition: all 0.4s ease-in-out;
    padding: 10px 0;
    border: none !important;
    box-shadow: none !important;
}

/* Scroll කළ විට පමණක් සුදු වන අවස්ථාව */
header.scrolled {
    background-color: #ffffff !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    padding: 10px 0;
}

nav {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px;
}

.nav-links {
    display: flex;
    gap: 2.5rem;
    list-style: none;
    align-items: center;
    background: transparent !important; /* මෙතන background එකත් transparent විය යුතුයි */
}

/* --- අකුරු වල වර්ණය --- */

/* 1. Top එකේදී (Transparent) අකුරු සුදු පාටට */
header:not(.scrolled) .nav-links li a {
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 500;
}

/* 2. Scroll කළ පසු අකුරු Navy පාටට */
header.scrolled .nav-links li a {
    color: var(--navy) !important;
}

/* 3. Logo පාලනය */
/* මින් පෙර තිබූ filter: brightness(0) invert(1) කොටස ඉවත් කරන්න */
header:not(.scrolled) .main-logo {
    filter: none !important; /* මෙහිදී කිසිදු වර්ණ වෙනසක් සිදු නොවේ */
}

header.scrolled .main-logo {
    filter: none !important;
}

/* Hover Effect */
.nav-links li a:hover {
    color: var(--cyan);
}

nav {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 2rem; /* දෙපැත්තට පමණක් padding */
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px; /* Nav bar එකේ උස 70px දක්වා අඩු කළා */
}

.logo-container {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.logo-text {
    display: flex;
    align-items: baseline;
    gap: 0.3rem;
    position: relative;
    padding-bottom: 10px;
}

.logo-kantale {
    font-family: 'Poppins', sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--burgundy);
    letter-spacing: 1px;
}

.logo-avion {
    font-family: 'Poppins', sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--teal);
    letter-spacing: 1px;
}

.logo-farm {
    font-family: 'Poppins', sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--burgundy);
    letter-spacing: 1px;
}

.logo-tagline {
    font-family: 'Dancing Script', cursive;
    font-size: 0.9rem;
    color: var(--teal);
    position: absolute;
    bottom: -8px;
    right: 0;
    font-weight: 500;
}

.nav-links a {
    text-decoration: none;
    color: var(--navy);
    font-weight: 500;
    font-size: 0.95rem;
    transition: color 0.3s ease;
    position: relative;
}

.nav-links a::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--teal);
    transition: width 0.3s ease;
}

.nav-links a:hover,
.nav-links a.active {
    color: var(--teal);
}

.nav-links a:hover::after,
.nav-links a.active::after {
    width: 100%;
}

.mobile-menu-btn {
    display: none;
    flex-direction: column;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 5px;
}

.mobile-menu-btn span {
    width: 28px;
    height: 3px;
    background: var(--navy);
    border-radius: 2px;
    transition: all 0.3s ease;
}

/* ========================================
   PAGE CONTAINER & ANIMATIONS
======================================== */
.page-content {
    min-height: 100vh;
    margin-bottom: 5px;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ========================================
   HERO SECTION
======================================== */
.hero {
    position: relative;
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Overlay එක 0.5 සිට 0.6 දක්වා තද කළා අකුරු පෙනීමට */
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4)), 
                url('../img/hero.jpg'); 
    
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    text-align: center;
    color: var(--white);
    overflow: hidden;
}

.hero-content {
    position: relative;
    z-index: 10;
    text-align: center;
    max-width: 1000px;
    padding: 90px 2rem 0;
    margin-top: 60px;
    padding-top: 100px; /* මෙය මගින් තමයි Nav bar එක සහ Content එක අතර Gap එක හදන්නේ */
    text-align: center;
    width: 100%;
}

.hero-content h1 {
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.8);
    color: #ffffff; /* අකුරු සුදු පාට කරන්න */
}


.hero-logo {
    margin-bottom: 2rem;
    opacity: 0;
    animation: fadeInDown 1s ease forwards 0.2s;
}

.hero-logo-img {
    max-width: 500px;
    width: 100%;
    height: auto;
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-tagline {
    font-family: 'Dancing Script', cursive;
    font-size: 2.5rem;
    color: var(--teal);
    margin-bottom: 2rem;
    font-weight: 600;
    opacity: 0;
    animation: fadeInUp 1s ease forwards 0.4s;
}

.hero-title {
    font-family: 'Poppins', sans-serif;
    font-size: 3.5rem;
    font-weight: 800; /* තවත් තද කළා */
    color: var(--white); /* Navy වෙනුවට White කළා */
    line-height: 1.2;
    margin-bottom: 1.5rem;
    text-shadow: 2px 4px 10px rgba(0, 0, 0, 0.6); /* අකුරු පිටුපස සෙවනැල්ල */
    opacity: 0;
    animation: fadeInUp 1s ease forwards 0.6s;
}

.hero-subtitle {
    font-size: 1.3rem;
    color: var(--white); /* Navy වෙනුවට White කළා */
    margin-bottom: 3rem;
    font-weight: 500;
    line-height: 1.6;
    text-shadow: 1px 2px 5px rgba(0, 0, 0, 0.5); /* අකුරු පිටුපස සෙවනැල්ල */
    opacity: 0;
    animation: fadeInUp 1s ease forwards 0.8s;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-cta {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    flex-wrap: wrap;
    opacity: 0;
    animation: fadeInUp 1s ease forwards 1s;
}

/* අනෙක් පිටු සඳහා කුඩා Hero section එකක් */
.hero.small-hero {
    min-height: 100vh; /* උස අඩු කළා */
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), 
                url('../img/about5.jpg'); /* ඔබේ පින්තූරය මෙතැනට */
    background-size: cover;
    background-position: center;
}

.hero.small-hero2 {
    height: 40vh; /* හෝ 300px වැනි අගයක් දෙන්න */
    min-height: 600px; /* උස අඩු කළා */
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4)), 
                url('../img/service1.jpg'); /* ඔබේ පින්තූරය මෙතැනට */
    background-size: cover;
    background-position: center;
}

.hero.small-hero3 {
    height: 40vh; /* හෝ 300px වැනි අගයක් දෙන්න */
    min-height: 600px; /* උස අඩු කළා */
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4)), 
                url('../img/team2.jpg'); /* ඔබේ පින්තූරය මෙතැනට */
    background-size: cover;
    background-position: center;
}

.hero.small-hero4 {
    min-height: 100vh; /* උස අඩු කළා */
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4)), 
                url('../img/sust2.jpg'); /* ඔබේ පින්තූරය මෙතැනට */
    background-size: cover;
    background-position: center;
}

.hero.small-hero5 {
    height: 40vh; /* හෝ 300px වැනි අගයක් දෙන්න */
    min-height: 650px;
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4)), 
                url('../img/contact.jpg'); /* ඔබේ පින්තූරය මෙතැනට */
    background-size: cover;
    background-position: center;
}

.hero.small-hero6 {
    height: 40vh; /* හෝ 300px වැනි අගයක් දෙන්න */
    min-height: 650px;
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4)), 
                url('../img/news1.jpg'); /* ඔබේ පින්තූරය මෙතැනට */
    background-size: cover;
    background-position: center;
}

/* Logo colors Original විදිහටම තබා ගැනීමට */
header:not(.scrolled) .logo-kantale, 
header:not(.scrolled) .logo-farm { color: var(--burgundy) !important; }
header:not(.scrolled) .logo-avion { color: var(--teal) !important; }

/* ========================================
   BUTTONS
======================================== */
.btn {
    padding: 1rem 2.5rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    border: none;
    font-family: 'Poppins', sans-serif;
    display: inline-block;
}

.btn-primary {
    background: linear-gradient(135deg, var(--teal), var(--cyan));
    color: white;
    box-shadow: 0 4px 15px rgba(27, 154, 170, 0.3);
}

.btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(27, 154, 170, 0.4);
}

.btn-secondary {
    background: transparent;
    color: var(--burgundy);
    border: 2px solid var(--burgundy);
}

.btn-secondary:hover {
    background: var(--burgundy);
    color: white;
    transform: translateY(-3px);
}

/* ========================================
   SECTIONS
======================================== */
.section {
    padding: 6rem 4rem;
    margin-top: 0 !important;
    margin-bottom: 20px;
    padding-top: 10px;
}

.section-white {
    background: var(--white);
    padding: 40px 0;
    margin-top: 0 !important; /* Negative margin එකක් ඇත්නම් එය සම්පූර්ණයෙන්ම ඉවත් වේ */
    position: relative;
    z-index: 1; /* Hero එකේ wave එකත් සමඟ හොඳින් මිශ්‍ර වීමට */
}

.section-light {
    background: var(--light-bg);
}

.container {
    max-width: 1200px;
    margin: 0 auto;
}

.section-header {
    text-align: center;
    margin-bottom: 40px;
    padding-top: 50px !important;
}

.section-label {
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: var(--teal);
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.section-title {
    font-family: 'Poppins', sans-serif;
    font-size: 3rem;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 1rem;
    text-shadow: 1px 2px 5px rgba(0, 0, 0, 0.5); /* අකුරු පිටුපස සෙවනැල්ල */
    opacity: 0;
    animation: fadeInUp 1s ease forwards 0.6s;
}

.section-subtitle {
    font-size: 1.2rem;
    color:#ffffff;
    /*opacity: 0.8;*/
    font-weight: 600;
    max-width: 800px;
    margin: 0 auto;
    line-height: 1.8;
    /* --- ස්වාභාවික පෙනුමක් ලබා දීමට --- */
    /* අකුරු වටා ඉතා සියුම් ලා පැහැති සෙවනැල්ලක් (Highlight) 
    text-shadow: 0 0 15px rgba(255, 255, 255, 0.8), 
                 0 0 5px rgba(255, 255, 255, 0.5);
    /* පසුබිම ඉතාමත් විනිවිද පෙනෙන ලෙස (Opacity 0.3) 
    background: radial-gradient(circle, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0) 80%);
    
    padding: 5px 15px;
    border-radius: 8px;
    display: inline-block;*/
    animation: fadeInUp 1s ease forwards 0.8s;
}

.section-subtitle1 {
    font-size: 1.2rem;
    color:var(--navy);
    /*opacity: 0.8;*/
    font-weight: 600;
    max-width: 800px;
    margin: 0 auto;
    line-height: 1.8;
    /* --- ස්වාභාවික පෙනුමක් ලබා දීමට --- */
    /* අකුරු වටා ඉතා සියුම් ලා පැහැති සෙවනැල්ලක් (Highlight) 
    text-shadow: 0 0 15px rgba(255, 255, 255, 0.8), 
                 0 0 5px rgba(255, 255, 255, 0.5);
    /* පසුබිම ඉතාමත් විනිවිද පෙනෙන ලෙස (Opacity 0.3) 
    background: radial-gradient(circle, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0) 80%);
    
    padding: 5px 15px;
    border-radius: 8px;
    display: inline-block;*/
    animation: fadeInUp 1s ease forwards 0.8s;
}

/* ========================================
   CARDS
======================================== */
.cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    margin-top: 3rem;
}

.card {
    background: #ffffff;
    padding: 40px 30px;
    border-radius: 20px;
    text-align: center;
    transition: all 0.4s ease;
    border: 1px solid rgba(0, 0, 0, 0.05); /* ඉතා සියුම් Border එකක් */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); /* වඩාත් පැහැදිලි සෙවනැල්ලක් */
    height: 100%;
}

.card:hover {
    transform: translateY(-15px); /* උඩට එසවෙන ප්‍රමාණය වැඩි කළා */
    box-shadow: 0 20px 40px rgba(27, 154, 170, 0.15); /* Hover එකේදී Teal පාට සෙවනැල්ලක් */
    border-color: var(--teal);
}

.card-icon {
    font-size: 45px;
    margin-bottom: 20px;
    display: inline-block;
    background: var(--light-bg);
    width: 80px;
    height: 80px;
    line-height: 80px;
    border-radius: 50%; /* Icon එක වටා රවුමක් */
    transition: background 0.3s ease;
}

.card h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 1.5rem;
    color: var(--burgundy);
    margin-bottom: 1rem;
    font-weight: 600;
}

.card p {
    line-height: 1.8;
    color: var(--navy);
    opacity: 0.85;
}

.card:hover .card-icon {
    background: var(--teal);
    color: white; /* Hover කළ විට Icon එකේ පසුබිම වෙනස් වේ */
}

/* ========================================
   SERVICE CARDS
======================================== */
.service-card {
    background: white;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 12px 40px rgba(27, 154, 170, 0.2);
}

/* පින්තූරය සඳහා Styles */
.service-image {
    width: 100%;
    height: 220px; /* පින්තූරයේ උස */
    overflow: hidden;
}

.service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* පින්තූරය ඇද නොවී නිවැරදිව පෙන්වීමට */
    transition: transform 0.5s ease;
}

/* Hover කළ විට පින්තූරය Zoom වීම */
.service-card:hover .service-image img {
    transform: scale(1.1);
}

.service-header {
    padding: 20px 25px 10px;
    background: linear-gradient(135deg, var(--teal), var(--cyan));
    color: white;
    text-align: center;
}

.service-header h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 1.8rem;
    font-weight: 600;
}

.service-body {
    padding: 2rem;
    flex-grow: 1;
}

.service-body p {
    margin-bottom: 1.5rem;
    line-height: 1.8;
    color: var(--navy);
}

.service-body ul {
    list-style: none;
}

.service-body li {
    padding: 0.7rem 0;
    padding-left: 2rem;
    position: relative;
    color: var(--navy);
    opacity: 0.9;
}

.service-body li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: var(--teal);
    font-weight: bold;
    font-size: 1.2rem;
}

/* ========================================
   TEAM
======================================== */
.team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 3rem;
    margin-top: 3rem;
}

.team-member {
    background: white;
    padding: 2.5rem;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.team-member:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

.team-photo {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    margin: 0 auto 1.5rem;
    overflow: hidden;
    border: 4px solid var(--teal);
}

.team-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.team-photo-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 3.5rem;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
}

.team-member h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 1.5rem;
    color: var(--navy);
    margin-bottom: 0.5rem;
    font-weight: 600;
}

.team-role {
    color: var(--teal);
    font-weight: 600;
    font-size: 1rem;
    margin-bottom: 1.2rem;
}

.team-member p {
    line-height: 1.7;
    color: var(--navy);
    opacity: 0.85;
    font-size: 0.95rem;
}

.counters-section {
    padding: 30px 0;
    background: var(--navy);
    color: white;
}

.counters-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    text-align: center;
}

.counter-number {
    display: block;
    font-size: 2rem;
    font-weight: 800;
    color: var(--teal);
    margin-bottom: 10px;
}

.counter-item p {
    font-size: 1.1rem;
    opacity: 0.9;
}

/* Mobile වලදීත් උස අඩුවෙන් තබා ගැනීමට */
@media (max-width: 768px) {
    .counters-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    .counters-section {
        padding: 40px 0;
    }
}

/* ========================================
   FEATURES GRID
======================================== */
.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 2.5rem;
    margin-top: 3rem;
}

.feature {
    text-align: center;
    padding: 2rem 1.5rem;
}

.feature-icon {
    font-size: 3.5rem;
    margin-bottom: 1.2rem;
}

.feature h3 {
    font-family: 'Poppins', sans-serif;
    color: var(--burgundy);
    margin-bottom: 0.8rem;
    font-weight: 600;
    font-size: 1.2rem;
}

.feature p {
    color: var(--navy);
    opacity: 0.85;
    line-height: 1.7;
}

/* ========================================
   STATS
======================================== */
.stats-container {
    background: linear-gradient(135deg, var(--navy), var(--teal));
    padding: 1.5rem 1rem; /* ඉහළ සහ පහළ පරතරය 2rem සිට 1.5rem දක්වා අඩු කළා */
    border-radius: 30px;
    margin-top: 2rem;     /* ඉහළ ඇති gap එක 4rem සිට 2rem දක්වා අඩු කළා */
    margin-bottom: 0px;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 3rem;
    max-width: 1000px;
    margin: 0 auto;
}

.stat {
    text-align: center;
    color: white;
}

.stat-number {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--lime-bright);
    margin-bottom: 0.5rem;
    font-family: 'Poppins', sans-serif;
}

.stat-label {
    font-size: 0.9rem;    /* අකුරු මඳක් කුඩා කළා */
    opacity: 0.95;
    text-transform: uppercase; /* වඩාත් වෘත්තීය පෙනුමක් සඳහා */
    letter-spacing: 1px;
}

/* ========================================
   CONTACT SECTION
======================================== */
.contact-section {
    background: #f8fafc; /* තද නිල් වෙනුවට ඉතා ලා පැහැති අළු පාටක් */
    color: var(--navy); /* අකුරු වලට නැවත Navy Blue ලබා දෙන්න */
    padding: 40px 0;
}

.contact-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr; /* Form එකට මඳක් වැඩි ඉඩක් */
    gap: 0; /* පරතරය ඉවත් කර කාඩ්පත් දෙක එකතු කළා */
    background: white; /* මුළු Grid එකම සුදු පැහැති වේ */
    border-radius: 30px;
    overflow: hidden; /* කොන් වටකුරු පෙනීමට */
    box-shadow: 0 30px 60px rgba(0,0,0,0.2);
    max-width: 1200px; /* Grid එකේ උපරිම පළල සීමා කළා */
    margin: 0 auto; /* මැදට ගැනීමට */
    min-height: auto;
}

.contact-info {
    background: var(--navy);
    color: white;
    padding: 2rem;
    border-radius: 20px 0 0 20px;
    justify-content: center;
}

.contact-info h3 {
    color: var(--lime-bright);
    font-size: 1.5rem; /* මාතෘකාව කුඩා කළා */
    margin-bottom: 1.5rem;
}

.contact-item {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    margin-bottom: 1.2rem;
    
}

.contact-icon {
    font-size: 1.4rem;
    color: var(--lime-bright);
    min-width: 40px;
}

.contact-item h4 {
    font-weight: 600;
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
}

.contact-item p {
    opacity: 0.95;
    line-height: 1.7;
}

.contact-form {
    background: white;
    padding: 2rem 3rem;
    border-radius: 0; /* Grid එක ඇතුළේ නිසා Radius අවශ්‍ය නැත */
}

.contact-form form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

/* Message box එක සහ Button එක මුළු පළලම ගැනීමට */
.contact-form .form-group:nth-child(4),
.contact-form .form-group:nth-child(3), /* Phone එකත් තනි පේළියට ගන්න අවශ්‍ය නම් */
.contact-form button {
    grid-column: span 2;
}

.contact-form h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 2rem;
    color: var(--navy);
    margin-bottom: 2rem;
    font-weight: 600;
}

.form-group {
    margin-bottom: 0.8rem;
}

.form-group label {
    display: block;
    color: var(--navy);
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.form-group input,
.form-group textarea {
    width: 100%;
    padding: 0.6rem 1rem;
    border: 2px solid rgba(27, 154, 170, 0.2);
    border-radius: 10px;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.form-group input:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--teal);
    box-shadow: 0 0 0 3px rgba(27, 154, 170, 0.1);
}

.form-group textarea {
    resize: vertical;
    min-height: 80px;
}

/* Map එක සඳහා අලුත් CSS */
.map-container {
    margin-top: 4rem;
    width: 100%;
    height: 450px;
    border-radius: 30px;
    overflow: hidden;
    border: 5px solid white;
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.map-container iframe {
    width: 100%;
    height: 100%;
    filter: grayscale(10%) contrast(1.1); /* Map එකට මඳක් තද වර්ණයක් ලබා දීම */
}

/* Mobile වලදී Grid එක පේළි දෙකකට සැකසීම */
@media (max-width: 992px) {
    .contact-grid {
        grid-template-columns: 1fr;
    }
    .contact-section {
        padding: 60px 0;
    }
}

/* CTA Button එක තබා ඇති Container එක */
.card-cta {
    margin-top: 25px;
    text-align: center; /* Button එක මැදට ගැනීමට */
    border-top: 1px solid #eee; /* සියුම් වෙන් කිරීමේ ඉරක් */
    padding-top: 20px;
}

/* Button එකේ මූලික පෙනුම */
.btn-service {
    display: inline-block;
    padding: 12px 30px;
    background: linear-gradient(135deg, var(--navy), var(--teal));
    color: white !important;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 31, 63, 0.15);
}

/* Mouse එක ගෙන ගිය විට (Hover) වෙනස් වන ආකාරය */
.btn-service:hover {
    transform: translateY(-3px); /* මඳක් ඉහළට එසවීම */
    box-shadow: 0 8px 20px rgba(0, 31, 63, 0.25);
    background: linear-gradient(135deg, var(--teal), var(--navy));
}

/* --- Process Section Styles --- */
.process-section {
    padding: 80px 0;
    background-color: #f9fbfc;
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    position: relative;
}

/* පියවරවල් යා කරන ඉර (Desktop පමණි) */
.process-grid::before {
    content: '';
    position: absolute;
    top: 40px;
    left: 50px;
    right: 50px;
    height: 2px;
    background: dashed var(--teal);
    opacity: 0.3;
    z-index: 1;
}

.process-step {
    text-align: center;
    position: relative;
    z-index: 2;
}

.step-number {
    width: 80px;
    height: 80px;
    background: white;
    color: var(--navy);
    border: 3px solid var(--teal);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 800;
    margin: 0 auto 20px;
    transition: all 0.3s ease;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
}

.process-step:hover .step-number {
    background: var(--teal);
    color: white;
    transform: scale(1.1);
}

.step-content h3 {
    font-size: 1.2rem;
    margin-bottom: 10px;
    color: var(--navy);
}

.step-content p {
    font-size: 0.95rem;
    color: #666;
    line-height: 1.6;
}

/* Mobile Responsiveness */
@media (max-width: 992px) {
    .process-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
    }
    .process-grid::before {
        display: none; /* Mobile වලදී ඉර ඉවත් කරන්න */
    }
}

@media (max-width: 576px) {
    .process-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   FOOTER
======================================== */
footer {
    background: var(--navy);
    color: white;
    padding: 4rem 2rem 2rem;
}

.footer-content {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 3rem;
    margin-bottom: 3rem;
}

.footer-about h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 1.5rem;
    margin-bottom: 1rem;
    font-weight: 600;
}

.footer-about p {
    line-height: 1.8;
    opacity: 0.85;
    margin-bottom: 1.5rem;
}

.footer-tagline {
    font-family: 'Dancing Script', cursive;
    font-size: 1.3rem;
    color: var(--cyan);
    font-weight: 600;
}

.footer-links h4 {
    font-weight: 600;
    margin-bottom: 1.2rem;
    font-size: 1.1rem;
}

.footer-links ul {
    list-style: none;
}

.footer-links a {
    color: white;
    text-decoration: none;
    opacity: 0.85;
    display: block;
    padding: 0.5rem 0;
    transition: all 0.3s ease;
}

.footer-links a:hover {
    opacity: 1;
    padding-left: 8px;
    color: var(--cyan);
}

.footer-bottom {
    text-align: center;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    opacity: 0.8;
}

/* ========================================
   SUSTAINABILITY GRID
======================================== */
.sustainability-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 2rem;
    margin-top: 3rem;
}

.sustainability-item {
    background: #fff;
    padding: 40px 30px;
    border-radius: 25px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 1px solid #f0f0f0;
    position: relative;
    overflow: hidden;
}

/* Icon එක සඳහා Styles */
.s-icon {
    font-size: 3.5rem;
    margin-bottom: 20px;
    display: inline-block;
    transition: transform 0.3s ease;
}

/* Hover Effect */
.sustainability-item:hover {
    transform: translateY(-15px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
    border-color: var(--teal);
}

.sustainability-item span {
    font-size: 3rem;
    display: block;
    margin-bottom: 1rem;
}

.sustainability-item h3 {
    color: var(--navy);
    font-size: 1.4rem;
    margin-bottom: 15px;
    font-weight: 700;
}

.sustainability-item p {
    color: #666;
    font-size: 0.95rem;
    line-height: 1.6;
}

.sustainability-item:hover .s-icon {
    transform: scale(1.2) rotate(10deg);
}

/* කාඩ්පත් වලට යටින් ඇති කුඩා වර්ණ ඉරි (Decorative borders) */
.s-solar { border-bottom: 5px solid #ffcc00; }
.s-waste { border-bottom: 5px solid #4caf50; }
.s-water { border-bottom: 5px solid #2196f3; }
.s-organic { border-bottom: 5px solid #8bc34a; }
.s-bio { border-bottom: 5px solid #e91e63; }
.s-community { border-bottom: 5px solid #ff9800; }

/* Impact Section Styles */
.impact-stats-section {
    padding: 80px 0;
    background-color: #fff;
}

.impact-box {
    background: linear-gradient(135deg, #1E4D2B 0%, #0d2b18 100%);
    padding: 60px 40px;
    border-radius: 40px;
    text-align: center;
    box-shadow: 0 20px 50px rgba(30, 77, 43, 0.2);
}

.impact-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.impact-card {
    background: rgba(255, 255, 255, 0.05); /* Glassmorphism effect */
    padding: 30px 20px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s ease;
}

.impact-card:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-5px);
    border-color: #ccff00; /* Neon green border on hover */
}

.impact-icon {
    font-size: 2.5rem;
    margin-bottom: 15px;
}

.impact-number {
    display: block;
    font-size: 2.5rem;
    font-weight: 800;
    color: #ccff00; /* කැපී පෙනෙන වර්ණයක් */
    margin-bottom: 5px;
}

.impact-data p {
    color: white;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    opacity: 0.8;
}

/* Mobile Responsiveness */
@media (max-width: 992px) {
    .impact-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .impact-grid {
        grid-template-columns: 1fr;
    }
    .impact-box {
        padding: 40px 20px;
    }
}

/* ========================================
   RESPONSIVE DESIGN
======================================== */
@media (max-width: 968px) {
    .contact-grid {
        grid-template-columns: 1fr;
    }

    .footer-content {
        grid-template-columns: 1fr 1fr;
    }

    .section-title {
        font-size: 2.5rem;
    }
}

@media (max-width: 768px) {
    /* Mobile Menu */
    .mobile-menu-btn {
        display: flex;
    }

    .nav-links {
        position: fixed;
        top: 80px;
        left: -100%;
        flex-direction: column;
        background: white;
        width: 100%;
        padding: 2rem;
        gap: 1.5rem;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
        transition: left 0.3s ease;
    }

    .nav-links.active {
        left: 0;
    }

    /* Hero Section */
    .hero-title {
        font-size: 2.5rem;
    }

    .hero-tagline {
        font-size: 2rem;
    }

    .hero-subtitle {
        font-size: 1.1rem;
    }

    .section-title {
        font-size: 2rem;
    }

    .footer-content {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .hero-title {
        font-size: 2rem;
    }

    .logo-kantale,
    .logo-avion,
    .logo-farm {
        font-size: 1.1rem;
    }

    nav {
        padding: 1rem;
    }

    .section {
        padding: 4rem 1.5rem;
    }
}

.main-logo {
    height: 80px; /* ඔබට අවශ්‍ය ප්‍රමාණයට මෙය වෙනස් කරන්න */
    width: auto;
    display: block;
    transition: transform 0.3s ease;
}

.main-logo:hover {
    transform: scale(1.05); /* මූසිකය ගෙන ගිය විට පොඩ්ඩක් ලොකු වෙන්න */
}

.logo-container {
    display: flex;
    align-items: center;
    padding: 5px 0;
}

/* --- CORE EXPERIENCES STYLES --- */
.experience-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2.5rem;
    margin-top: 0.5px;
}

.experience-card {
    background: #fff;
    border-radius: 25px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
    transition: all 0.4s ease;
    border: 1px solid rgba(0,0,0,0.03);
}

.experience-card:hover {
    transform: translateY(-15px);
    box-shadow: 0 25px 50px rgba(27, 154, 170, 0.15);
}

.exp-image {
    position: relative;
    height: 250px;
    overflow: hidden;
}

.exp-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.experience-card:hover .exp-image img {
    transform: scale(1.1);
}

.exp-tag {
    position: absolute;
    top: 20px;
    right: 20px;
    background: var(--teal);
    color: white;
    padding: 6px 15px;
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
}

.exp-content {
    padding: 2rem;
}

.exp-content h3 {
    color: var(--navy);
    font-size: 1.5rem;
    margin-bottom: 1rem;
    font-weight: 700;
}

.exp-content p {
    color: #666;
    line-height: 1.7;
    margin-bottom: 1.5rem;
}

.btn-text {
    color: var(--burgundy);
    text-decoration: none;
    font-weight: 700;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.btn-text:hover {
    color: var(--teal);
    letter-spacing: 1px;
}

/* --- INTRO / WELCOME SECTION STYLES --- */
.intro-section {
    padding: 60px 2rem; /* ඉහළ පරතරය මඳක් අඩු කළා */
    padding-bottom: 0px; /* පතුලේ padding සම්පූර්ණයෙන්ම ඉවත් කළා */
    margin-bottom: -20px; /* මෙය 20px සිට 60px දක්වා වැඩි කරන්න */
    overflow: visible;    /* 'hidden' වෙනුවට 'visible' කරන්න, එවිට එළියට යන කොටස් කැපී නොපෙනේ */
    position: relative;
    z-index: 10;
}

.intro-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 5rem;
    align-items: center;
}

.intro-main-title {
    font-size: 3.5rem;
    font-weight: 800;
    color: var(--navy);
    line-height: 1.1;
    margin-bottom: 2rem;
}

.intro-main-title .highlight {
    color: var(--teal);
}

.intro-lead {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--burgundy);
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.intro-text {
    font-size: 1.05rem;
    color: #555;
    margin-bottom: 2rem;
    line-height: 1.8;
}

.intro-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-bottom: 2.5rem;
}

.intro-feature-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    color: var(--navy);
}

.feature-dot {
    width: 8px;
    height: 8px;
    background: var(--cyan);
    border-radius: 50%;
}

/* Image Styling with Badges */
.intro-image-wrapper {
    position: relative;
}

.main-intro-img {
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 0 30px 60px rgba(0,0,0,0.15);
    transform: rotate(2deg);
}

.main-intro-img img {
    width: 100%;
    display: block;
    transition: transform 0.5s ease;
}

.intro-image-wrapper:hover .main-intro-img img {
    transform: scale(1.05) rotate(-2deg);
}

.floating-badge {
    position: absolute;
    top: -20px;
    right: -20px;
    background: var(--lime-bright);
    padding: 20px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    z-index: 2;
}

.badge-number {
    display: block;
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--burgundy);
}

.badge-text {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
}

.experience-box {
    position: absolute;
    bottom: -30px;
    left: -30px;
    background: var(--navy);
    color: white;
    padding: 2rem;
    border-radius: 20px;
    max-width: 250px;
    box-shadow: 0 15px 30px rgba(0,0,0,0.2);
}

.experience-box h4 {
    font-family: 'Dancing Script', cursive;
    font-size: 1.5rem;
    color: var(--cyan);
    margin-bottom: 0.5rem;
}

/* Responsive */
@media (max-width: 968px) {
    .intro-grid {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 4rem;
    }
    .intro-features {
        justify-content: center;
    }
    .intro-feature-item {
        justify-content: center;
    }
    .main-intro-img {
        transform: none;
    }
}

/* --- WHY CHOOSE US CUSTOM STYLES --- */
.features-grid-custom {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 3rem;
    margin-top: 1rem;
    position: relative;
    z-index: 5;
}

.feature-item {
    text-align: center;
    padding: 2rem;
    background: transparent;
    transition: all 0.3s ease;
}

.feature-icon-box {
    width: 90px;
    height: 90px;
    background: white;
    margin: 0 auto 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    border-radius: 20px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
    transition: all 0.4s ease;
    border: 1px solid rgba(27, 154, 170, 0.1);
}

.feature-item:hover .feature-icon-box {
    background: var(--teal);
    color: white;
    transform: rotate(10deg) scale(1.1);
    box-shadow: 0 15px 35px rgba(27, 154, 170, 0.2);
}

.feature-item h3 {
    font-size: 1.3rem;
    color: var(--navy);
    margin-bottom: 1rem;
    font-weight: 700;
}

.feature-item p {
    color: #666;
    font-size: 0.95rem;
    line-height: 1.6;
}

/* Hover කළ විට අකුරු වලට ඇතිවන වෙනස */
.feature-item:hover h3 {
    color: var(--burgundy);
}

/* --- HOME CONTACT CTA STYLES --- */
.home-contact-cta {
    padding-bottom: 100px;
    background-color: transparent;
}

.cta-card {
    background: linear-gradient(135deg, var(--navy) 0%, var(--teal) 100%);
    border-radius: 40px;
    padding: 4rem 3rem 2rem;
    text-align: center;
    color: white;
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 60px rgba(27, 154, 170, 0.25);
}

/* සැරසිලි සඳහා පසුබිම් රවුමක් */
.cta-card::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 50%;
}

.cta-content h2 {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 1.5rem;
    font-family: 'Poppins', sans-serif;
}

.cta-content p {
    font-size: 1.2rem;
    max-width: 700px;
    margin: 0 auto 3rem;
    opacity: 0.9;
    line-height: 1.7;
}

.cta-actions {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin-bottom: 0px !important;
}

/* Secondary Button එක සුදු පැහැයෙන් පෙනීමට */
.cta-card .btn-secondary {
    border-color: white;
    color: white;
}

.cta-card .btn-secondary:hover {
    background: white;
    color: var(--navy);
}

.cta-info-item {
    display: flex;
    align-items: center;
    gap: 12px;
}

.cta-icon {
    font-size: 1.5rem;
}

.cta-info-item p {
    margin: 0;
    font-weight: 600;
    font-size: 1rem;
}

/* --- Our Story Section Styles --- */
.story-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.story-image {
    position: relative;
}

.story-image img {
    width: 100%;
    border-radius: 30px;
    box-shadow: 20px 20px 60px rgba(0, 0, 0, 0.1);
}

.experience-badge {
    position: absolute;
    bottom: -20px;
    right: -20px;
    background: linear-gradient(135deg, var(--navy), var(--teal));
    color: white;
    padding: 20px 30px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.experience-badge .years {
    display: block;
    font-size: 0.9rem;
    text-transform: uppercase;
}

.experience-badge .year-val {
    font-size: 1.8rem;
    font-weight: 700;
}

.story-text {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #555;
    margin-bottom: 1.5rem;
}

.story-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-top: 2rem;
}

.s-feature {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    color: var(--navy);
}

.s-icon {
    color: var(--teal);
    font-size: 1.2rem;
}

/* Responsive Story Section */
@media (max-width: 768px) {
    .story-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    
    .story-image {
        order: 2; /* Mobile වලදී පින්තූරය පසුවට පෙන්වීමට */
    }
    
    .story-content {
        order: 1;
        text-align: center;
    }

    .s-feature {
        justify-content: center;
    }
}

/* --- About Page CTA Styles --- */
.about-cta {
    padding: 80px 0;
    background-color: var(--white); /* පිටත පසුබිම */
}

.cta-wrapper {
    background: linear-gradient(135deg, var(--navy) 0%, var(--teal) 100%);
    border-radius: 40px;
    padding: 60px 40px;
    text-align: center;
    position: relative;
    overflow: hidden;
    color: white;
    box-shadow: 0 20px 50px rgba(0, 31, 63, 0.2);
}

.cta-inner-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
}

.cta-inner-content h2 {
    font-size: 2.8rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
    line-height: 1.2;
}

.cta-inner-content p {
    font-size: 1.2rem;
    margin-bottom: 2.5rem;
    opacity: 0.9;
}

.cta-btns {
    display: flex;
    justify-content: center;
    gap: 20px;
}

/* Button Styles */
.btn-white {
    background-color: white;
    color: var(--navy);
    padding: 15px 35px;
    border-radius: 50px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-white:hover {
    background-color: var(--cyan);
    color: white;
    transform: translateY(-3px);
}

.btn-outline-white {
    border: 2px solid white;
    color: white;
    padding: 13px 35px;
    border-radius: 50px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-outline-white:hover {
    background-color: white;
    color: var(--navy);
}

/* Decoration Shapes */
.shape {
    position: absolute;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.shape-1 {
    width: 200px;
    height: 200px;
    top: -50px;
    left: -50px;
}

.shape-2 {
    width: 150px;
    height: 150px;
    bottom: -30px;
    right: -30px;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .cta-inner-content h2 {
        font-size: 2rem;
    }
    
    .cta-btns {
        flex-direction: column;
        align-items: center;
    }
    
    .btn-white, .btn-outline-white {
        width: 100%;
        max-width: 300px;
    }
}

/* ========================================
   MOBILE RESPONSIVE FIXES (768px සහ ඊට අඩු)
======================================== */
@media (max-width: 768px) {

    /* Navbar එකේ මුල් පෙනුම සකස් කිරීම */

    #navLinks.nav-links {
        /* සුදු පාට (255, 255, 255) 90% ක විනිවිදභාවයකින් (0.9) */
        background-color: rgba(255, 255, 255, 0.7) !important; 
        
        /* පසුපස ඇති පින්තූරය මඳක් Blur කර පෙන්වීමට (Modern Glass Look) */
        backdrop-filter: blur(10px); 
        -webkit-backdrop-filter: blur(10px);
        position: fixed;
        display: none;
        flex-direction: column;
        top: 85px; /* Navbar එකේ උස අනුව මෙය වෙනස් කරන්න */
        left: 0;
        width: 100%;
        display: none; 
        flex-direction: column;
        padding: 10px 0;
    }

    /* 2. මෙනු එකේ අකුරු නිල් (Navy) පාටට ස්ථිර කිරීම */
    

    #navLinks.nav-links li a, 
    #navLinks.nav-links a {
        color: #001f3f !important; /* ඔබේ නිල් වර්ණය */
        background-color: transparent !important;
        opacity: 1 !important;
        visibility: visible !important;
        -webkit-text-fill-color: #001f3f !important; /* සමහර Browsers වලට මෙය අවශ්‍යයි */
    }

    /* 3. Scroll කරද්දී එන සුදු වර්ණය අක්‍රිය කිරීම */
    header.scrolled #navLinks.nav-links a {
        color: #001f3f !important;
    }

    .nav-links.active {
        display: flex !important;
    }

    .nav-links a:hover {
        color: #008080 !important; /* Teal වර්ණය */
        background-color: #f8f9fa;
    }

    /* Logo එක පැහැදිලිව පෙනීමට */
    .logo img {
        height: 40px;
    }

    /* Hamburger menu (ඉරි තුන) පෙනෙන්නේ නැතිනම් එහි වර්ණය */
    .mobile-menu-btn {
        color: #001f3f !important;
    }

    .hero-content {
        padding-top: 120px !important; /* Header එකෙන් යටට තල්ලු කිරීමට */
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1.5rem;
        min-height: auto !important;
    }

    /* 2. Overlapping වන අමතර පින්තූර හෝ badges (screenshot එකේ පෙනෙන පරිදි) */
    .floating-badge, .experience-box {
        position: relative !important; /* ඒවායේ මුල් තැනින් ඉවත් වී flow එකට එන්න */
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        margin: 10px auto !important;
        transform: none !important;
        width: 90% !important;
    }

    /* 3. Hero අකුරු වල ප්‍රමාණය සහ පරතරය */
    .hero-title {
        font-size: 1.8rem !important;
        line-height: 1.3 !important;
        margin-bottom: 1rem !important;
    }

    .hero-tagline {
        font-size: 1.4rem !important;
        margin-bottom: 0.5rem !important;
    }

    /* 4. Intro section එකේ bullet points වල ගැටලුව */
    .intro-features {
        display: block !important;
        width: 100%;
        text-align: left;
    }

    .intro-feature-item {
        margin-bottom: 10px;
        justify-content: flex-start !important;
    }
    
    /* 1. Global Padding & Container Fix */
    .section {
        padding: 3rem 1.5rem !important; /* Section වල ඉඩ අඩු කළා */
    }

    /* 2. Intro Section & Image Fix */
    .intro-grid {
        grid-template-columns: 1fr !important; /* එක පේළියකට ගත්තා */
        gap: 2rem !important;
        text-align: center;
    }

    .intro-main-title {
        font-size: 2.2rem !important; /* මාතෘකාව කුඩා කළා */
    }

    .intro-features {
        grid-template-columns: 1fr !important; /* Bullet points පේළියට ගත්තා */
        text-align: left;
        display: inline-block;
    }

    .main-intro-img {
        transform: none !important; /* ඇලව තිබූ පින්තූරය කෙළින් කළා */
        max-width: 100%;
    }

    /* 3. Stats & Contact Card Fix (ඔබ ඇසූ ප්‍රධාන ගැටලුව) */
    .cta-card, .stats-container {
        padding: 2rem 1.5rem !important; /* ඇතුළත padding අඩු කළා */
        border-radius: 20px !important;
        width: 100% !important;
        box-sizing: border-box; /* Card එක පිටතට පැනීම වළක්වයි */
    }

    .cta-content h2 {
        font-size: 1.8rem !important;
    }

    .cta-actions {
        flex-direction: column; /* Buttons එක යට එක වැටෙන සේ සකස් කළා */
        gap: 1rem;
    }

    .btn {
        width: 100%; /* Mobile වලදී button එක පළලට පෙනීමට */
        padding: 0.8rem 1.5rem;
    }

    /* 4. Stats Grid Fix */
    .stats-grid {
        grid-template-columns: 1fr !important; /* සංඛ්‍යාලේඛන එක යට එක */
        gap: 1.5rem;
    }

    .stat-number {
        font-size: 2rem !important;
    }

    /* 5. Unique Experiences Cards */
    .experience-grid {
        grid-template-columns: 1fr !important;
        gap: 1.5rem;
    }

    /* 6. Navigation Fix */
    .nav-links {
        background: var(--white) !important;
        z-index: 2000;
    }

    /* පිටතට පැන ඇති සුදු ඉඩ (White Space) වැළැක්වීමට */
    body, html {
        overflow-x: hidden !important;
        width: 100%;
        position: relative;
    }
}

/* ඉතා කුඩා දුරකථන සඳහා (480px) */
@media (max-width: 480px) {
    .intro-main-title {
        font-size: 1.8rem !important;
    }
    
    .section-title {
        font-size: 1.6rem !important;
    }
}

/* News Grid සැකසුම */
.news-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
}

/* News Card එක */
.news-card {
    background: white;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border: 1px solid #f0f0f0;
}

.news-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

/* Image Wrapper */
.news-img-wrapper {
    position: relative;
    height: 220px;
    overflow: hidden;
}

.news-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.news-card:hover .news-img-wrapper img {
    transform: scale(1.1);
}

/* Category Tag */
.category-tag {
    position: absolute;
    top: 15px;
    right: 15px;
    background: var(--teal);
    color: white;
    padding: 5px 15px;
    border-radius: 50px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}

/* News Body */
.news-body {
    padding: 25px;
}

.news-date {
    display: block;
    font-size: 0.85rem;
    color: #888;
    margin-bottom: 10px;
}

.news-body h3 {
    font-size: 1.25rem;
    color: var(--navy);
    margin-bottom: 12px;
    line-height: 1.4;
    font-weight: 700;
}

.news-body p {
    color: #666;
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 20px;
}

.btn-text {
    color: var(--teal);
    text-decoration: none;
    font-weight: 700;
    font-size: 0.9rem;
    transition: color 0.3s;
}

.btn-text:hover {
    color: var(--navy);
}

.site-footer {
    background: #0f172a; /* ඉතා තද නිල් පාටක් (Deep Navy) */
    color: #cbd5e1;
    padding: 80px 0 30px;
    font-family: 'Poppins', sans-serif;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1.5fr;
    gap: 40px;
    margin-bottom: 50px;
}

.footer-logo {
    max-width: 180px;
    margin-bottom: 20px;
    filter: brightness(0) invert(1); /* Logo එක සුදු පාටින් පෙන්වීමට */
}

.footer-col h4 {
    color: white;
    font-size: 1.2rem;
    margin-bottom: 25px;
    position: relative;
}

.footer-col h4::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 30px;
    height: 2px;
    background: var(--teal);
}

.footer-col ul {
    list-style: none;
    padding: 0;
}

.footer-col ul li {
    margin-bottom: 12px;
}

.footer-col ul li a {
    color: #94a3b8;
    text-decoration: none;
    transition: 0.3s;
}

.footer-col ul li a:hover {
    color: var(--teal);
    padding-left: 5px;
}

/* Social Icons */
.social-links {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}

.social-links a {
    width: 35px;
    height: 35px;
    background: rgba(255,255,255,0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: white;
    text-decoration: none;
    font-size: 0.8rem;
    font-weight: bold;
    transition: 0.3s;
}

.social-links a:hover {
    background: var(--teal);
    transform: translateY(-3px);
}

/* Newsletter */
.footer-newsletter {
    display: flex;
    margin-top: 15px;
}

.footer-newsletter input {
    flex: 1;
    padding: 12px;
    border: none;
    border-radius: 8px 0 0 8px;
    background: rgba(255,255,255,0.1);
    color: white;
}

.footer-newsletter button {
    background: var(--teal);
    border: none;
    padding: 0 15px;
    border-radius: 0 8px 8px 0;
    color: white;
    cursor: pointer;
}

/* Footer Bottom */
.footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.1);
    padding-top: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.85rem;
}

.footer-legal a {
    color: #94a3b8;
    margin-left: 20px;
    text-decoration: none;
}

/* Responsive */
@media (max-width: 992px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 576px) {
    .footer-grid {
        grid-template-columns: 1fr;
    }
    .footer-bottom {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
}

/* Mobile Devices (පොදුවේ 768px ට අඩු අයට) */
@media (max-width: 768px) {
    .footer-grid {
        grid-template-columns: 1fr; /* තනි පේළියට සැකසීම */
        text-align: center; /* සියලුම අකුරු මැදට */
        gap: 30px;
    }

    .footer-col h4::after {
        left: 50%; /* මාතෘකාව යට ඉර මැදට ගැනීමට */
        transform: translateX(-50%);
    }

    .social-links {
        justify-content: center; /* Social icons මැදට */
    }

    .footer-newsletter {
        justify-content: center;
        max-width: 300px;
        margin: 20px auto 0; /* Newsletter box එක මැදට ගැනීමට */
    }

    .footer-bottom {
        flex-direction: column; /* Copyright සහ Legal ලිංක් එක යට එක */
        gap: 15px;
        text-align: center;
    }

    .footer-legal a {
        margin: 0 10px; /* ලිංක් දෙපසට පරතරය */
    }

    .footer-logo {
        margin-left: auto;
        margin-right: auto; /* Logo එක මැදට ගැනීමට */
    }
}