/* ==========================================================
   RHYLO AGRO EXPORTS & SUPPLIES EAST AFRICA
   Professional PHP site stylesheet
   Theme: deep green, harvest gold, warm paper and clear text
   ========================================================== */

:root{
    --green:#063b27;
    --green-2:#0b5137;
    --green-3:#0d6a45;
    --blue:#0b2354;
    --red:#8d2420;
    --gold:#c8962d;
    --gold-2:#e4bd63;
    --cream:#f6f1e7;
    --paper:#fffdf7;
    --white:#ffffff;
    --ink:#10241a;
    --text:#243d32;
    --muted:#52695f;
    --soft:#f9f5ec;
    --line:rgba(151,108,31,.28);
    --shadow:0 14px 32px rgba(6,59,39,.10);
    --radius:18px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:Arial, Helvetica, sans-serif;
    color:var(--text);
    background:var(--cream);
    line-height:1.58;
    font-size:15px;
    text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
p{margin:0 0 13px;color:var(--text)}
hr{border:0;border-top:1px solid var(--line);margin:22px 0}

.container{width:min(1120px,92%);margin:auto}
.narrow{width:min(820px,92%)}
.gold{color:var(--gold)}

/* Header */
.site-header{
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(255,253,247,.98);
    border-bottom:1px solid var(--line);
    box-shadow:0 6px 20px rgba(6,59,39,.07);
    backdrop-filter:blur(12px);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px}
.brand{display:flex;align-items:center;gap:11px;min-width:max-content}
.brand img{width:50px;height:50px;object-fit:contain}
.brand strong{display:block;color:var(--green);font-size:1.18rem;letter-spacing:.18em;line-height:1;font-weight:900}
.brand small{display:block;color:var(--gold);font-weight:800;font-size:.64rem;letter-spacing:.07em;text-transform:uppercase;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:3px;flex-wrap:wrap;justify-content:flex-end;line-height:1.1}
.main-nav a{padding:7px 9px;border-radius:999px;color:#253d33;font-weight:800;font-size:.78rem;white-space:nowrap}
.main-nav a:hover,.main-nav a.active{background:var(--green);color:#fff}
.nav-toggle{display:none;background:var(--green);color:#fff;border:0;border-radius:12px;font-size:1.1rem;padding:8px 12px;cursor:pointer}

/* Typography */
h1,h2,h3{
    margin:0;
    color:var(--green);
    font-family:Georgia, 'Times New Roman', serif;
    line-height:1.12;
}
h1,h2{letter-spacing:.015em}
h3{letter-spacing:.005em}
.eyebrow,.kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--gold);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
}
.kicker{color:var(--green)}
.kicker:before{content:"";width:30px;height:3px;background:var(--gold);display:inline-block;border-radius:99px}
.lead{font-size:.99rem;font-weight:700;color:#304b3f}
.section-header{text-align:center;max-width:760px;margin:0 auto 30px}
.section-header .eyebrow{display:flex;justify-content:center;margin-bottom:9px}
.section-header h2,.page-title h1{font-size:clamp(1.75rem,3.1vw,2.65rem);text-transform:uppercase;letter-spacing:.025em;text-wrap:balance}
.section-header p,.page-title p{color:#4e675d;font-weight:700;margin:11px auto 0;max-width:720px;font-size:.95rem}

/* Hero */
.hero{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 8% 8%,rgba(228,189,99,.20),transparent 24%),
        linear-gradient(112deg,var(--paper) 0%,var(--paper) 57%,var(--green) 57%,var(--green-2) 100%);
    min-height:560px;
    padding:48px 0 78px;
}
.hero:after{
    content:"";
    position:absolute;
    left:-5%;right:-5%;bottom:-66px;
    height:118px;
    background:linear-gradient(135deg,var(--green),#021f15);
    border-top:4px solid var(--gold);
    transform:skewY(-3.6deg);
    transform-origin:left top;
}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:34px;position:relative;z-index:1}
.hero h1{font-size:clamp(2.35rem,5.2vw,4.35rem);letter-spacing:.02em;text-transform:uppercase;margin:13px 0 12px;text-wrap:balance}
.hero-lead{font-size:1.03rem;max-width:560px;color:#2d453a;font-weight:700}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hero-badges{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:28px;max-width:690px}
.hero-badge{background:#fff;border:1px solid var(--line);border-radius:15px;padding:12px 10px;text-align:center;box-shadow:0 10px 22px rgba(6,59,39,.08)}
.hero-badge span{font-size:1.26rem;display:block}
.hero-badge strong{font-size:.68rem;text-transform:uppercase;color:var(--green);line-height:1.2;display:block;margin-top:5px}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;border-radius:999px;font-weight:900;border:2px solid transparent;box-shadow:0 9px 18px rgba(6,59,39,.10);font-size:.93rem}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-3)}
.btn-outline{border-color:var(--gold);color:var(--green);background:#fff}
.btn-gold{background:var(--gold);color:#10251c}

/* Image cards and replaceable placeholders */
.hero-card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:24px;padding:13px;box-shadow:var(--shadow)}
.collage{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:138px;gap:11px}
.collage img:first-child{grid-row:span 2}
.collage img{width:100%;height:100%;object-fit:cover;border-radius:17px;border:1px solid var(--line)}
.image-placeholder{background:#f4efe2;border:1px solid var(--line);box-shadow:0 10px 20px rgba(6,59,39,.08)}

/* Layout sections */
.section{padding:58px 0;position:relative}
.section.compact{padding:42px 0}
.section.dark{background:linear-gradient(145deg,#042a1c,var(--green));color:#fff;overflow:hidden}
.section.dark .section-header h2{color:#fff}
.section.dark .section-header .eyebrow{color:var(--gold-2)}
.section.dark .section-header p{color:#edf7f1}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}

/* Cards */
.info-card,.feature-card,.stat-card,.requirement-card,.team-box,.contact-card,.panel,.quick-facts,.product-card,.market-card,.choose-list,.form{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    color:var(--text);
}
.info-card,.feature-card,.stat-card,.requirement-card,.team-box,.contact-card{padding:20px;position:relative;overflow:hidden}
.info-card:before,.feature-card:before,.contact-card:before{
    content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--green),var(--gold));
}
.info-card h3,.feature-card h3,.requirement-card h3,.stat-card h3,.product-card h3{
    font-size:1rem;
    margin:0 0 7px;
    color:var(--green) !important;
    font-weight:900;
}
.info-card p,.feature-card p,.requirement-card p,.stat-card p,.product-card p{
    margin:0;
    color:#334e42 !important;
    font-weight:650;
    font-size:.93rem;
}
.card-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:1.22rem;margin-bottom:12px;box-shadow:0 6px 0 rgba(200,150,45,.25);overflow:hidden}
.icon-img{width:31px;height:31px;object-fit:contain}

/* Force readable text on white cards inside dark sections */
.section.dark .info-card,
.section.dark .product-card,
.section.dark .market-card,
.section.dark .stat-card,
.section.dark .requirement-card,
.section.dark .choose-list{
    background:#fffdf8 !important;
    color:var(--text) !important;
}
.section.dark .info-card h3,
.section.dark .product-card h3,
.section.dark .stat-card h3,
.section.dark .requirement-card h3,
.product-card h3,
.info-card h3{
    color:var(--green) !important;
    text-shadow:none !important;
}
.section.dark .info-card p,
.section.dark .product-card p,
.section.dark .stat-card p,
.section.dark .requirement-card p,
.product-card p,
.info-card p{
    color:#334e42 !important;
    text-shadow:none !important;
}

/* Page title */
.page-title{
    position:relative;
    overflow:hidden;
    padding:52px 0 58px;
    background:
        radial-gradient(circle at 10% 12%,rgba(228,189,99,.20),transparent 22%),
        linear-gradient(135deg,var(--paper) 0%,#fff 58%,#efe2c8 100%);
    text-align:center;
}
.luxury-border{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.luxury-border:before,.luxury-border:after{content:"";position:absolute;width:48px;height:48px;border-color:var(--gold);opacity:.45}
.luxury-border:before{left:18px;top:18px;border-left:2px solid;border-top:2px solid}
.luxury-border:after{right:18px;bottom:18px;border-right:2px solid;border-bottom:2px solid}

/* Panels and lists */
.split-panel{display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:stretch}
.panel{padding:24px}
.panel.dark-panel{background:linear-gradient(140deg,var(--green),#031e14);color:#fff;border-color:rgba(228,189,99,.45)}
.panel h2{font-size:1.55rem;margin-bottom:10px}
.panel.dark-panel h2,.panel.dark-panel h3{color:#fff}
.panel.dark-panel p{color:#eef7f2}
.panel .lead{margin-top:0}
.check-list{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:9px}
.check-list li{padding-left:30px;position:relative;font-weight:700;color:#304a3e;font-size:.95rem}
.dark-panel .check-list li{color:#fff}
.check-list li:before{content:"✓";position:absolute;left:0;top:.05rem;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#092b1d;display:grid;place-items:center;font-weight:900;font-size:.72rem}

/* Quick facts */
.quick-facts{padding:20px;background:#fffdf8}
.fact-row{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.fact-row:last-child{border-bottom:0}
.fact-row span{font-size:1.32rem;width:40px;height:40px;background:#f3ead2;border-radius:50%;display:grid;place-items:center;flex:0 0 40px}
.fact-row small{display:block;color:#607267;font-weight:850;text-transform:uppercase;font-size:.68rem}
.fact-row strong{color:var(--green);font-weight:900;font-size:.94rem}

/* Tables and lists */
.service-table{background:#fff;border-radius:22px;box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--line)}
.service-row{display:grid;grid-template-columns:64px 1fr 1.6fr;gap:15px;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line)}
.service-row:last-child{border-bottom:0}
.service-no{font-size:1.12rem;font-weight:900;color:var(--gold);font-family:Georgia,serif}
.service-row strong{color:var(--green);text-transform:uppercase;font-size:.92rem}
.service-row p{margin:0;color:#42584e;font-weight:650;font-size:.93rem}
.callout{background:linear-gradient(135deg,var(--green),#041d14);color:#fff;border-radius:20px;padding:21px 24px;border:1px solid rgba(228,189,99,.55);box-shadow:var(--shadow)}
.callout h3{color:#fff;margin-bottom:7px;font-size:1.2rem}
.callout p{margin:0;color:#eef8f2;font-weight:700}

/* Data grids */
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.stat-card{text-align:center;padding:20px;background:#fffdf8}
.stat-card .num{display:block;color:var(--gold);font-size:clamp(1.65rem,2.8vw,2.35rem);font-weight:900;line-height:1;font-family:Georgia,serif}
.region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:18px}
.region{background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px;text-align:center;font-weight:900;color:var(--green);font-size:.92rem}
.region small{display:block;color:#66786f;font-weight:750;margin-top:3px;font-size:.76rem}
.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}
.product-card{overflow:hidden;background:#fffdf8 !important}
.product-card img{width:100%;height:112px;object-fit:cover;background:#f3ead9}
.product-card div{padding:14px}
.product-card h3{text-transform:uppercase;font-size:.92rem;line-height:1.2}
.product-card p{font-size:.86rem;line-height:1.45;color:#334e42 !important}
.requirement-list{display:grid;gap:12px}
.requirement-card{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center;padding:15px 17px;border-radius:17px;background:#fffdf8}
.requirement-card .service-no{width:46px;height:46px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:.9rem}

/* Export markets */
.market-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}
.market-card{overflow:hidden;background:#fffdf8 !important}
.market-card h3{padding:17px 19px;margin:0;color:#fff !important;background:var(--green);font-size:1.08rem;text-transform:uppercase}
.market-card:nth-child(2) h3{background:var(--blue)}
.market-card:nth-child(3) h3{background:var(--red)}
.market-card ul{list-style:none;margin:0;padding:17px;display:grid;gap:11px}
.market-card li{padding-left:24px;position:relative;color:#334d42;font-weight:700;font-size:.9rem}
.market-card li:before{content:"◆";position:absolute;left:0;color:var(--gold);font-size:.72rem;top:.12rem}

/* Structure */
.org-chart{display:grid;gap:20px;text-align:center}
.md-box{margin:auto;background:var(--green);color:#fff;border:2px solid var(--gold);border-radius:18px;padding:18px 30px;box-shadow:var(--shadow);width:min(360px,100%)}
.md-box h3{color:#fff;font-size:1.32rem}
.md-box p{margin:4px 0 0;color:#f0f8f4;font-weight:700}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px;text-align:left}
.team-box h3{font-size:1rem;text-transform:uppercase;margin:-20px -20px 15px;padding:16px;color:#fff;background:var(--green);border-radius:18px 18px 0 0}
.team-box:nth-child(2) h3{background:var(--blue)}
.team-box:nth-child(3) h3{background:var(--gold);color:#10251c}
.team-box ul{margin:0;padding-left:19px;color:#344c42;font-weight:700;font-size:.93rem}
.team-box li{margin:7px 0}
.choose-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.choose-list{overflow:hidden;background:#fffdf8}
.choose-list h3{padding:18px 20px;background:var(--green);color:#fff;text-transform:uppercase;font-size:1rem}
.choose-list.exports h3{background:var(--blue)}
.choose-list ul{list-style:none;padding:17px;margin:0;display:grid;gap:10px}
.choose-list li{display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:10px;font-weight:730;color:#344b42;font-size:.92rem}
.choose-list li:last-child{border-bottom:0;padding-bottom:0}
.choose-list span{width:30px;height:30px;border-radius:50%;background:#f3ead2;display:grid;place-items:center;color:var(--green);font-weight:900;flex:0 0 30px}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:25px;align-items:start}
.contact-card p{font-weight:730;color:#42584e}
.contact-card h2,.form h2{font-size:1.55rem;margin-bottom:12px}
.form{display:grid;gap:14px;padding:23px;background:#fffdf8}
.form label{display:block;font-weight:900;color:var(--green);font-size:.88rem;margin-bottom:6px}
.form input,.form textarea,.form select{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;font:inherit;background:#fffdf8;color:var(--ink)}
.form textarea{min-height:128px;resize:vertical}
.notice{padding:13px 15px;border-radius:15px;background:#eef8f2;border:1px solid rgba(6,59,39,.2);font-weight:750;color:var(--green)}

/* Cover bands */
.cover-band{
    min-height:300px;
    display:grid;
    place-items:center;
    text-align:center;
    background:linear-gradient(rgba(2,22,15,.56),rgba(2,22,15,.78)),url('../img/placeholder-farm.svg') center/cover no-repeat;
    color:#fff;
    border-top:3px solid var(--gold);
    border-bottom:3px solid var(--gold);
    padding:42px 0;
}
.cover-band h2{
    color:#fff;
    font-size:clamp(2rem,5vw,3.65rem);
    text-transform:uppercase;
    text-shadow:0 6px 16px rgba(0,0,0,.36);
    max-width:880px;
    margin:auto;
    text-wrap:balance;
}
.cover-band span{display:block;color:var(--gold-2);font-size:.38em;line-height:1.2;margin-top:4px}
.cover-band .eyebrow{justify-content:center;color:var(--gold-2);margin-bottom:10px}

/* Footer */
.footer-wave{height:26px;background:linear-gradient(135deg,var(--green),var(--green-2));border-top:3px solid var(--gold);transform:skewY(-1.8deg);transform-origin:left top;margin-top:14px}
.site-footer{background:#041d14;color:#eaf4ef;margin-top:0}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:28px;padding:40px 0}
.footer-brand strong{color:#fff}.footer-brand small{color:var(--gold)}
.site-footer h3{color:var(--gold);font-size:1rem;margin-bottom:10px}
.site-footer p{color:#d7e6de;margin:8px 0;font-size:.92rem}
.footer-link{color:var(--gold);font-weight:900}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:14px 0;color:#b9c9c1;font-size:.85rem}

/* Responsive */
@media (max-width:1040px){
    .main-nav a{font-size:.74rem;padding:7px 8px}
    .brand strong{font-size:1.08rem}
}
@media (max-width:980px){
    .nav-toggle{display:block}
    .main-nav{position:absolute;left:4%;right:4%;top:72px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch}
    .main-nav.open{display:flex}
    .main-nav a{display:block;text-align:left;font-size:.9rem;padding:10px 12px}
    .hero{background:linear-gradient(180deg,var(--paper),#f1e6cf 74%,var(--green) 74%);padding-top:40px;min-height:auto}
    .hero-grid,.grid-2,.split-panel,.contact-grid{grid-template-columns:1fr}
    .cards,.grid-4,.stats-grid,.product-grid{grid-template-columns:repeat(2,1fr)}
    .grid-3,.market-columns,.team-grid,.choose-grid,.region-grid,.footer-grid{grid-template-columns:1fr}
}
@media (max-width:620px){
    body{font-size:14px}
    .container{width:min(94%,100%)}
    .header-inner{min-height:66px}
    .brand img{width:43px;height:43px}
    .brand strong{font-size:1.02rem}
    .brand small{font-size:.58rem}
    .main-nav{top:66px}
    .hero{padding:30px 0 72px}
    .hero h1{font-size:2.25rem}
    .hero-lead{font-size:.96rem}
    .hero-badges,.cards,.grid-4,.stats-grid,.product-grid{grid-template-columns:1fr}
    .collage{grid-auto-rows:112px;gap:8px}
    .service-row{grid-template-columns:1fr;gap:4px;padding:15px}
    .panel,.info-card,.feature-card,.contact-card,.form{padding:18px;border-radius:18px}
    .section{padding:46px 0}
    .section.compact{padding:36px 0}
    .page-title{padding:46px 0}
    .page-title h1,.section-header h2{font-size:1.75rem}
    .luxury-border:before,.luxury-border:after{width:36px;height:36px}
    .cover-band{min-height:240px;padding:34px 0}
    .cover-band h2{font-size:2.15rem}
    .requirement-card{grid-template-columns:1fr;text-align:left}
}

/* ==========================================================
   Full device responsiveness refinement
   Keeps the site polished from large desktop screens down to
   small Android devices without horizontal overflow.
   ========================================================== */

html,
body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
}

.container,
.narrow,
.header-inner,
.hero-grid,
.grid-2,
.grid-3,
.grid-4,
.cards,
.product-grid{
    max-width:100%;
}

h1,
h2,
h3,
p,
a,
li,
strong,
small{
    overflow-wrap:anywhere;
}

.hero-card img,
.panel img,
.product-card img,
.image-placeholder{
    max-width:100%;
}

@media (min-width:1181px){
    .main-nav{
        max-width:720px;
    }

    .main-nav a{
        font-size:.76rem;
        padding:7px 8px;
    }

    .section{
        padding-block:54px;
    }

    .section.compact{
        padding-block:40px;
    }
}

@media (max-width:1180px){
    .container{
        width:min(1080px,94%);
    }

    .header-inner{
        min-height:68px;
        gap:14px;
    }

    .brand img{
        width:46px;
        height:46px;
    }

    .brand strong{
        font-size:1.04rem;
        letter-spacing:.16em;
    }

    .brand small{
        font-size:.58rem;
    }

    .main-nav{
        gap:2px;
    }

    .main-nav a{
        font-size:.70rem;
        padding:6px 7px;
    }

    .hero h1{
        font-size:clamp(2.1rem,4.5vw,3.65rem);
    }

    .hero-lead{
        font-size:.98rem;
    }

    .cards,
    .grid-4{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .product-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media (max-width:1024px){
    .nav-toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-width:42px;
        min-height:38px;
    }

    .main-nav{
        position:absolute;
        left:3%;
        right:3%;
        top:72px;
        background:#fffdf8;
        border:1px solid var(--line);
        border-radius:18px;
        padding:12px;
        box-shadow:var(--shadow);
        display:none;
        flex-direction:column;
        align-items:stretch;
        max-height:calc(100vh - 94px);
        overflow-y:auto;
        z-index:80;
    }

    .main-nav.open{
        display:flex;
    }

    .main-nav a{
        display:block;
        width:100%;
        font-size:.88rem;
        padding:11px 12px;
        border-radius:12px;
        text-align:left;
    }

    .hero{
        min-height:auto;
        padding:36px 0 72px;
        background:
            radial-gradient(circle at 8% 8%,rgba(228,189,99,.18),transparent 24%),
            linear-gradient(180deg,var(--paper),#f1e6cf 68%,var(--green) 68%);
    }

    .hero-grid,
    .grid-2,
    .split-panel,
    .contact-grid{
        grid-template-columns:1fr;
    }

    .hero-card{
        width:min(720px,100%);
        margin-inline:auto;
    }

    .hero-badges{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .stats-grid,
    .region-grid,
    .team-grid,
    .choose-grid,
    .market-columns,
    .footer-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .service-row{
        grid-template-columns:58px 1fr;
    }

    .service-row p{
        grid-column:2;
    }
}

@media (max-width:768px){
    body{
        font-size:14.5px;
    }

    .container{
        width:min(94%,100%);
    }

    .header-inner{
        min-height:64px;
    }

    .brand{
        gap:9px;
        min-width:0;
    }

    .brand img{
        width:42px;
        height:42px;
        flex:0 0 42px;
    }

    .brand strong{
        font-size:.98rem;
        letter-spacing:.14em;
    }

    .brand small{
        font-size:.54rem;
        letter-spacing:.04em;
    }

    .main-nav{
        top:64px;
        left:4%;
        right:4%;
        max-height:calc(100vh - 82px);
    }

    .hero{
        padding:28px 0 66px;
    }

    .hero h1{
        font-size:clamp(2rem,10vw,2.75rem);
        line-height:1.04;
    }

    .hero-lead{
        font-size:.95rem;
        max-width:100%;
    }

    .hero-actions{
        gap:9px;
    }

    .btn{
        width:100%;
        padding:11px 14px;
        font-size:.9rem;
    }

    .hero-badges,
    .cards,
    .grid-3,
    .grid-4,
    .stats-grid,
    .region-grid,
    .product-grid,
    .team-grid,
    .choose-grid,
    .market-columns,
    .footer-grid{
        grid-template-columns:1fr;
    }

    .collage{
        grid-template-columns:1fr 1fr;
        grid-auto-rows:118px;
        gap:8px;
    }

    .section{
        padding:42px 0;
    }

    .section.compact{
        padding:34px 0;
    }

    .page-title{
        padding:42px 0;
    }

    .section-header{
        margin-bottom:22px;
    }

    .section-header h2,
    .page-title h1{
        font-size:clamp(1.55rem,7vw,2.05rem);
        line-height:1.12;
        letter-spacing:.015em;
    }

    .section-header p,
    .page-title p{
        font-size:.9rem;
    }

    .panel,
    .info-card,
    .feature-card,
    .stat-card,
    .requirement-card,
    .team-box,
    .contact-card,
    .form,
    .quick-facts{
        border-radius:16px;
    }

    .panel,
    .info-card,
    .feature-card,
    .contact-card,
    .form{
        padding:17px;
    }

    .cover-band{
        min-height:230px;
        padding:34px 0;
        background-position:center;
    }

    .cover-band h2{
        font-size:clamp(2rem,11vw,2.8rem);
        line-height:1;
    }

    .product-card img{
        height:160px;
    }

    .footer-grid{
        gap:18px;
        padding:34px 0;
    }
}

@media (max-width:480px){
    body{
        font-size:14px;
        line-height:1.52;
    }

    .container{
        width:92%;
    }

    .site-header{
        position:sticky;
    }

    .header-inner{
        min-height:60px;
    }

    .brand img{
        width:38px;
        height:38px;
        flex-basis:38px;
    }

    .brand strong{
        font-size:.9rem;
        letter-spacing:.12em;
    }

    .brand small{
        display:block;
        max-width:180px;
        font-size:.49rem;
        white-space:normal;
        line-height:1.25;
    }

    .nav-toggle{
        min-width:38px;
        min-height:36px;
        border-radius:10px;
        padding:6px 10px;
    }

    .main-nav{
        top:60px;
        left:12px;
        right:12px;
        border-radius:14px;
        padding:10px;
    }

    .main-nav a{
        font-size:.86rem;
        padding:10px 11px;
    }

    .hero{
        padding:24px 0 58px;
    }

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

    .hero-badge{
        padding:10px;
    }

    .hero-badge strong{
        font-size:.64rem;
    }

    .collage{
        grid-template-columns:1fr;
        grid-auto-rows:150px;
    }

    .collage img:first-child{
        grid-row:auto;
    }

    .page-title{
        padding:36px 0;
    }

    .luxury-border:before,
    .luxury-border:after{
        width:30px;
        height:30px;
    }

    .section{
        padding:36px 0;
    }

    .section.compact{
        padding:30px 0;
    }

    .section-header h2,
    .page-title h1{
        font-size:1.48rem;
    }

    .eyebrow,
    .kicker{
        font-size:.65rem;
        letter-spacing:.12em;
    }

    .panel h2{
        font-size:1.28rem;
    }

    .info-card h3,
    .feature-card h3,
    .requirement-card h3,
    .stat-card h3,
    .product-card h3{
        font-size:.94rem;
    }

    .info-card p,
    .feature-card p,
    .requirement-card p,
    .stat-card p,
    .product-card p{
        font-size:.88rem;
    }

    .card-icon{
        width:42px;
        height:42px;
        font-size:1rem;
    }

    .icon-img{
        width:28px;
        height:28px;
    }

    .service-row{
        grid-template-columns:1fr;
        gap:5px;
        padding:14px;
    }

    .service-row p{
        grid-column:auto;
    }

    .service-no{
        font-size:1rem;
    }

    .fact-row{
        align-items:flex-start;
        gap:10px;
    }

    .fact-row span{
        width:36px;
        height:36px;
        flex-basis:36px;
    }

    .product-card img{
        height:145px;
    }

    .cover-band{
        min-height:205px;
    }

    .cover-band h2{
        font-size:1.95rem;
    }

    .callout{
        padding:18px;
        border-radius:16px;
    }

    .footer-bottom{
        font-size:.78rem;
    }
}

@media (max-width:360px){
    .container{
        width:90%;
    }

    .brand small{
        max-width:145px;
    }

    .brand strong{
        font-size:.84rem;
    }

    .hero h1{
        font-size:1.75rem;
    }

    .section-header h2,
    .page-title h1{
        font-size:1.34rem;
    }

    .cover-band h2{
        font-size:1.7rem;
    }

    .btn{
        font-size:.84rem;
        padding:10px 12px;
    }

    .panel,
    .info-card,
    .feature-card,
    .contact-card,
    .form{
        padding:15px;
    }
}

/* ==========================================================
   Final clarity and contrast pass
   Goal: no dull text or images on desktop, tablet, or phone.
   ========================================================== */
:root{
    --green:#063c28;
    --green-2:#0a5638;
    --gold:#bd851d;
    --gold-2:#f0c96a;
    --cream:#faf5eb;
    --paper:#fffefa;
    --text:#183428;
    --muted:#40594e;
    --line:rgba(135,92,18,.34);
    --shadow:0 16px 34px rgba(6,45,30,.13);
}

body{
    color:#183428;
    background:#faf5eb;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}

p,
li,
.check-list li,
.service-row p,
.contact-card p,
.footer-grid p{
    color:#203c30;
}

.site-header{
    background:#fffefa;
    box-shadow:0 8px 24px rgba(6,45,30,.09);
}

.main-nav a{
    color:#173428;
}

.main-nav a:hover,
.main-nav a.active{
    background:#063c28;
    color:#fff;
}

.hero{
    background:
        radial-gradient(circle at 8% 8%,rgba(240,201,106,.24),transparent 24%),
        linear-gradient(112deg,#fffefa 0%,#fffefa 57%,#07462f 57%,#0a5638 100%);
}

.hero-lead,
.lead,
.section-header p,
.page-title p{
    color:#28483a;
}

.hero-card,
.info-card,
.feature-card,
.stat-card,
.requirement-card,
.team-box,
.contact-card,
.panel,
.quick-facts,
.product-card,
.market-card,
.choose-list,
.form{
    background:#fffefa;
    color:#183428;
    border-color:rgba(135,92,18,.34);
    box-shadow:0 16px 34px rgba(6,45,30,.13);
}

.info-card h3,
.feature-card h3,
.requirement-card h3,
.stat-card h3,
.product-card h3,
.panel h2,
.contact-card h2,
.form h2,
.choose-list strong{
    color:#063c28 !important;
    text-shadow:none !important;
}

.info-card p,
.feature-card p,
.requirement-card p,
.stat-card p,
.product-card p,
.team-box li,
.choose-list li,
.market-card li,
.fact-row strong,
.service-row p{
    color:#203f32 !important;
    text-shadow:none !important;
}

.section.dark{
    background:linear-gradient(145deg,#052f20,#08482f);
}

.section.dark .section-header h2,
.panel.dark-panel h2,
.panel.dark-panel h3,
.callout h3{
    color:#ffffff !important;
    text-shadow:0 2px 8px rgba(0,0,0,.22);
}

.section.dark .section-header p,
.panel.dark-panel p,
.panel.dark-panel .check-list li,
.callout p{
    color:#f4fff9 !important;
}

.section.dark .info-card,
.section.dark .product-card,
.section.dark .market-card,
.section.dark .stat-card,
.section.dark .requirement-card,
.section.dark .choose-list{
    background:#fffefa !important;
    color:#183428 !important;
}

.image-placeholder,
.collage img,
.product-card img,
.hero-card img,
.panel img,
.cover-band{
    filter:saturate(1.12) contrast(1.07) brightness(1.03);
}

.image-placeholder,
.collage img,
.product-card img,
.hero-card img,
.panel img{
    opacity:1 !important;
    border-color:rgba(135,92,18,.38);
}

.cover-band{
    background-blend-mode:normal;
}

.cover-band h2{
    color:#ffffff;
    text-shadow:0 4px 16px rgba(0,0,0,.58), 0 1px 2px rgba(0,0,0,.85);
}

.cover-band .eyebrow{
    color:#ffd978;
    text-shadow:0 2px 8px rgba(0,0,0,.55);
}

.product-card{
    overflow:hidden;
}

.product-card img{
    background:#fffefa;
}

.quick-facts,
.service-table,
.form input,
.form textarea,
.form select{
    background:#fffefa;
}

.form input,
.form textarea,
.form select{
    color:#10241a;
    border-color:rgba(135,92,18,.45);
}

.form input::placeholder,
.form textarea::placeholder{
    color:#5d7168;
}

.btn-primary{
    background:#063c28;
    color:#fff;
}

.btn-outline{
    background:#fffefa;
    color:#063c28;
}

.site-footer{
    background:#031b12;
}

.site-footer p,
.footer-bottom{
    color:#f1fbf6;
}

@media (max-width:1024px){
    .hero{
        background:
            radial-gradient(circle at 8% 8%,rgba(240,201,106,.22),transparent 24%),
            linear-gradient(180deg,#fffefa 0%,#f8edd6 68%,#08482f 68%,#052f20 100%);
    }

    .main-nav{
        background:#fffefa;
    }
}

@media (max-width:768px){
    .cover-band{
        filter:saturate(1.14) contrast(1.08) brightness(1.06);
    }

    .cover-band h2{
        text-shadow:0 4px 14px rgba(0,0,0,.72), 0 1px 2px rgba(0,0,0,.9);
    }

    .section.dark{
        background:linear-gradient(155deg,#063621,#084d32);
    }

    .info-card,
    .feature-card,
    .stat-card,
    .requirement-card,
    .team-box,
    .contact-card,
    .panel,
    .quick-facts,
    .product-card,
    .market-card,
    .choose-list,
    .form{
        box-shadow:0 12px 24px rgba(6,45,30,.12);
    }
}

@media (max-width:480px){
    body{
        color:#173428;
        background:#fbf6ec;
    }

    p,
    li,
    .info-card p,
    .feature-card p,
    .requirement-card p,
    .stat-card p,
    .product-card p{
        color:#1f3d31 !important;
    }

    .section-header h2,
    .page-title h1,
    .panel h2{
        color:#063c28;
    }

    .product-card img,
    .collage img{
        filter:saturate(1.18) contrast(1.08) brightness(1.05);
    }
}

/* ==========================================================
   Uniform clear footer update
   Clean bright footer cards with consistent spacing on PC and mobile
   ========================================================== */
.footer-pro{
    position:relative;
    margin-top:0;
    color:#f8fff9;
    background:
        radial-gradient(circle at 12% 8%,rgba(228,189,99,.18),transparent 26%),
        linear-gradient(135deg,#053622 0%,#062c1d 52%,#031b12 100%);
    border-top:1px solid rgba(228,189,99,.45);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

.footer-topline{
    height:8px;
    background:linear-gradient(90deg,#063b27 0%,#c8962d 35%,#e4bd63 50%,#c8962d 65%,#063b27 100%);
}

.footer-wave{
    display:none !important;
}

.footer-grid-pro{
    display:grid;
    grid-template-columns:1.15fr .95fr .95fr;
    gap:18px;
    padding:34px 0;
    align-items:stretch;
}

.footer-card{
    height:100%;
    padding:22px;
    border-radius:20px;
    background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.055));
    border:1px solid rgba(228,189,99,.34);
    box-shadow:0 16px 36px rgba(0,0,0,.18);
    backdrop-filter:blur(6px);
}

.footer-card h3{
    margin:0 0 14px;
    color:#ffd978 !important;
    font-size:1rem;
    font-family:Arial, Helvetica, sans-serif;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.footer-card p{
    color:#f3fff8 !important;
    margin:10px 0 0;
    font-size:.92rem;
    line-height:1.6;
    font-weight:650;
}

.footer-brand{
    margin-bottom:14px;
}

.footer-brand img{
    width:50px;
    height:50px;
    background:#fffefa;
    border-radius:50%;
    padding:3px;
    border:1px solid rgba(228,189,99,.52);
}

.footer-brand strong{
    color:#fff !important;
    font-size:1.08rem;
    letter-spacing:.18em;
}

.footer-brand small{
    color:#ffd978 !important;
    font-weight:900;
}

.footer-pills{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:16px;
}

.footer-pills span{
    display:inline-flex;
    align-items:center;
    padding:7px 10px;
    border-radius:999px;
    color:#073622;
    background:#ffd978;
    font-size:.72rem;
    font-weight:900;
    line-height:1;
    box-shadow:0 6px 14px rgba(0,0,0,.16);
}

.footer-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:10px;
}

.footer-list li{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:42px;
    padding:10px 12px;
    border-radius:14px;
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.10);
    color:#ffffff;
}

.footer-list li span{
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    flex:0 0 28px;
    border-radius:50%;
    color:#073622;
    background:#ffd978;
    font-size:.9rem;
}

.footer-list li strong{
    color:#ffffff;
    font-size:.9rem;
    font-weight:850;
    line-height:1.35;
}

.footer-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin-top:18px;
    padding:11px 14px;
    border-radius:999px;
    color:#073622 !important;
    background:#ffd978;
    font-weight:950;
    font-size:.9rem;
    box-shadow:0 10px 20px rgba(0,0,0,.18);
}

.footer-cta:hover{
    transform:translateY(-1px);
    background:#ffe59a;
}

.footer-bottom-pro{
    border-top:1px solid rgba(228,189,99,.22);
    background:rgba(0,0,0,.22);
    color:#f7fff9 !important;
    padding:0;
}

.footer-bottom-inner{
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding:14px 0;
    color:#f7fff9;
    font-size:.86rem;
    font-weight:700;
}

@media (max-width:980px){
    .footer-grid-pro{
        grid-template-columns:1fr;
        gap:14px;
        padding:28px 0;
    }

    .footer-card{
        padding:20px;
    }

    .footer-bottom-inner{
        flex-direction:column;
        text-align:center;
        gap:5px;
    }
}

@media (max-width:520px){
    .footer-topline{
        height:6px;
    }

    .footer-grid-pro{
        padding:24px 0;
    }

    .footer-card{
        padding:17px;
        border-radius:17px;
    }

    .footer-brand{
        align-items:center;
    }

    .footer-brand img{
        width:44px;
        height:44px;
    }

    .footer-brand strong{
        font-size:.94rem;
    }

    .footer-card h3{
        font-size:.92rem;
    }

    .footer-card p,
    .footer-list li strong,
    .footer-cta{
        font-size:.86rem;
    }

    .footer-list li{
        align-items:flex-start;
    }

    .footer-pills{
        gap:6px;
    }

    .footer-pills span{
        font-size:.66rem;
        padding:7px 9px;
    }

    .footer-cta{
        width:100%;
    }
}

/* ==========================================================
   Desktop-look mobile refinement
   Phone layout now keeps the same professional desktop feel:
   paired cards, compact service rows, visible image grids and
   uniform footer cards, while still fitting small screens.
   ========================================================== */

@media (max-width:768px){
    .container{
        width:min(94%,100%);
    }

    .site-header{
        background:rgba(255,253,247,.99);
    }

    .main-nav.open{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:7px;
    }

    .main-nav a{
        text-align:center;
        padding:9px 7px;
        border-radius:999px;
        font-size:.78rem;
        background:#f9f2e3;
        border:1px solid rgba(200,150,45,.22);
    }

    .main-nav a.active,
    .main-nav a:hover{
        background:var(--green);
        color:#fff;
    }

    .hero{
        padding-top:30px;
        background:
            radial-gradient(circle at 8% 8%,rgba(240,201,106,.22),transparent 24%),
            linear-gradient(135deg,#fffefa 0%,#fffefa 60%,#08482f 60%,#052f20 100%);
    }

    .hero-grid,
    .grid-2,
    .split-panel,
    .contact-grid{
        gap:22px;
    }

    .hero h1{
        font-size:clamp(2.15rem,9vw,3rem);
        margin-bottom:10px;
    }

    .hero-lead{
        max-width:620px;
    }

    .hero-actions .btn{
        width:auto;
        min-width:145px;
        padding-inline:16px;
    }

    .hero-badges{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:9px;
    }

    .collage{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-auto-rows:118px !important;
        gap:8px;
    }

    .collage img:first-child{
        grid-row:span 2 !important;
    }

    .cards,
    .grid-3,
    .grid-4,
    .stats-grid,
    .region-grid,
    .product-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px;
    }

    .market-columns,
    .team-grid,
    .choose-grid{
        grid-template-columns:1fr !important;
        gap:14px;
    }

    .section{
        padding:40px 0;
    }

    .section.compact{
        padding:32px 0;
    }

    .section-header{
        margin-bottom:22px;
    }

    .section-header h2,
    .page-title h1{
        font-size:clamp(1.55rem,6.6vw,2.15rem);
    }

    .info-card,
    .feature-card,
    .stat-card,
    .requirement-card,
    .team-box,
    .contact-card,
    .panel,
    .quick-facts,
    .product-card,
    .market-card,
    .choose-list,
    .form{
        border-radius:17px;
    }

    .info-card,
    .feature-card,
    .contact-card,
    .panel,
    .form{
        padding:16px;
    }

    .info-card h3,
    .feature-card h3,
    .requirement-card h3,
    .stat-card h3,
    .product-card h3{
        font-size:.9rem;
        line-height:1.22;
    }

    .info-card p,
    .feature-card p,
    .requirement-card p,
    .stat-card p,
    .product-card p{
        font-size:.82rem;
        line-height:1.45;
    }

    .card-icon{
        width:40px;
        height:40px;
        margin-bottom:10px;
        font-size:1rem;
    }

    .icon-img{
        width:26px;
        height:26px;
    }

    .product-card img{
        height:124px;
    }

    .service-row{
        grid-template-columns:44px minmax(90px,.9fr) minmax(130px,1.25fr) !important;
        gap:10px;
        padding:13px 14px;
        align-items:center;
    }

    .service-row p{
        grid-column:auto !important;
        font-size:.82rem;
        line-height:1.4;
    }

    .service-row strong{
        font-size:.8rem;
        line-height:1.3;
    }

    .service-no{
        font-size:1rem;
    }

    .cover-band{
        min-height:245px;
    }

    .cover-band h2{
        font-size:clamp(2.15rem,9vw,3.1rem);
    }

    .footer-grid-pro{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
        padding:26px 0 !important;
    }

    .footer-about{
        grid-column:1 / -1;
    }

    .footer-card{
        padding:17px !important;
        border-radius:18px;
    }

    .footer-list li{
        min-height:40px;
        padding:9px 10px;
    }

    .footer-list li strong,
    .footer-card p,
    .footer-cta{
        font-size:.82rem !important;
    }
}

@media (max-width:480px){
    .container{
        width:94%;
    }

    .brand small{
        display:block;
        max-width:185px;
        white-space:normal;
    }

    .hero{
        background:
            radial-gradient(circle at 8% 8%,rgba(240,201,106,.20),transparent 24%),
            linear-gradient(135deg,#fffefa 0%,#fffefa 64%,#08482f 64%,#052f20 100%);
    }

    .hero-actions{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:8px;
    }

    .hero-actions .btn{
        width:100%;
        min-width:0;
        padding:10px 8px;
        font-size:.8rem;
    }

    .hero-badge{
        padding:10px 8px;
    }

    .hero-badge strong{
        font-size:.6rem;
        letter-spacing:.03em;
    }

    .collage{
        grid-auto-rows:104px !important;
    }

    .cards,
    .grid-3,
    .grid-4,
    .stats-grid,
    .region-grid,
    .product-grid{
        gap:10px;
    }

    .info-card,
    .feature-card,
    .contact-card,
    .panel,
    .form{
        padding:14px;
    }

    .product-card img{
        height:108px;
    }

    .stat-card{
        padding:15px 11px;
    }

    .stat-card .num{
        font-size:1.35rem;
    }

    .region{
        padding:11px 8px;
        font-size:.78rem;
    }

    .region small{
        font-size:.66rem;
    }

    .service-table{
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }

    .service-row{
        min-width:430px;
    }

    .footer-grid-pro{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .footer-card{
        padding:14px !important;
    }

    .footer-card h3{
        font-size:.8rem !important;
    }

    .footer-list{
        gap:8px;
    }

    .footer-list li{
        display:grid;
        grid-template-columns:26px 1fr;
        gap:8px;
        align-items:center;
        padding:8px;
    }

    .footer-list li span{
        width:26px;
        height:26px;
        flex-basis:26px;
    }

    .footer-cta{
        width:100%;
        padding:10px 8px;
    }
}

@media (max-width:360px){
    .main-nav.open{
        grid-template-columns:1fr;
    }

    .hero-actions{
        grid-template-columns:1fr;
    }

    .hero-badges,
    .cards,
    .grid-3,
    .grid-4,
    .stats-grid,
    .region-grid,
    .product-grid,
    .footer-grid-pro{
        grid-template-columns:1fr !important;
    }

    .footer-about{
        grid-column:auto;
    }

    .collage{
        grid-template-columns:1fr !important;
    }

    .collage img:first-child{
        grid-row:auto !important;
    }
}

/* ==========================================================
   FINAL DESKTOP-SPACING + RESPONSIVE BALANCE UPDATE
   Desktop keeps a true spacious desktop layout. Smaller screens
   scale down gradually without losing the same professional feel.
   ========================================================== */

html,body{overflow-x:hidden;}
img,.image-placeholder{max-width:100%;}

/* True desktop spacing */
@media (min-width:1025px){
    body{font-size:15.5px;}
    .container{width:min(1200px,90%);}
    .narrow{width:min(900px,90%);}
    .header-inner{min-height:78px;gap:26px;}
    .brand{gap:13px;}
    .brand img{width:54px;height:54px;}
    .brand strong{font-size:1.24rem;letter-spacing:.20em;}
    .brand small{font-size:.66rem;letter-spacing:.08em;}
    .nav-toggle{display:none !important;}
    .main-nav{
        position:static !important;
        display:flex !important;
        flex-direction:row !important;
        align-items:center !important;
        justify-content:flex-end !important;
        flex-wrap:wrap !important;
        gap:6px !important;
        background:transparent !important;
        border:0 !important;
        border-radius:0 !important;
        box-shadow:none !important;
        padding:0 !important;
        max-height:none !important;
        overflow:visible !important;
    }
    .main-nav a{
        display:inline-flex !important;
        align-items:center;
        justify-content:center;
        width:auto !important;
        padding:8px 10px !important;
        font-size:.76rem !important;
        border-radius:999px !important;
        text-align:center !important;
        background:transparent !important;
        border:0 !important;
    }
    .main-nav a:hover,.main-nav a.active{background:var(--green) !important;color:#fff !important;}

    .hero{
        min-height:650px !important;
        padding:76px 0 104px !important;
        background:
            radial-gradient(circle at 8% 8%,rgba(228,189,99,.20),transparent 24%),
            linear-gradient(112deg,var(--paper) 0%,var(--paper) 57%,var(--green) 57%,var(--green-2) 100%) !important;
    }
    .hero-grid{grid-template-columns:1.05fr .95fr !important;gap:60px !important;align-items:center;}
    .hero h1{font-size:clamp(3.1rem,5vw,4.75rem) !important;margin:18px 0 16px !important;}
    .hero-lead{font-size:1.08rem !important;max-width:620px;line-height:1.68;}
    .hero-actions{gap:14px !important;margin-top:28px !important;}
    .hero-actions .btn{width:auto !important;min-width:unset !important;padding:12px 22px !important;font-size:.95rem !important;}
    .hero-badges{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:14px !important;margin-top:34px !important;max-width:760px;}
    .hero-badge{padding:15px 12px !important;}

    .hero-card{padding:16px !important;border-radius:28px;}
    .collage{grid-template-columns:1fr 1fr !important;grid-auto-rows:155px !important;gap:14px !important;}
    .collage img:first-child{grid-row:span 2 !important;}
    .collage img{border-radius:20px;}

    .section{padding:76px 0 !important;}
    .section.compact{padding:58px 0 !important;}
    .page-title{padding:70px 0 74px !important;}
    .section-header{max-width:820px;margin-bottom:40px !important;}
    .section-header h2,.page-title h1{font-size:clamp(2.05rem,3vw,3rem) !important;}
    .section-header p,.page-title p{font-size:1rem !important;line-height:1.65;}

    .grid-2{grid-template-columns:1fr 1fr !important;gap:50px !important;}
    .split-panel{grid-template-columns:1.08fr .92fr !important;gap:36px !important;}
    .grid-3{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:26px !important;}
    .grid-4{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:24px !important;}
    .cards{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:24px !important;}
    .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:22px !important;}
    .region-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}
    .product-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:22px !important;}
    .market-columns{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:24px !important;}
    .team-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:24px !important;}
    .choose-grid{grid-template-columns:1fr 1fr !important;gap:30px !important;}
    .contact-grid{grid-template-columns:.9fr 1.1fr !important;gap:36px !important;}

    .panel{padding:32px !important;border-radius:22px;}
    .info-card,.feature-card,.stat-card,.requirement-card,.team-box,.contact-card{padding:25px !important;border-radius:22px;}
    .product-card{border-radius:22px !important;}
    .product-card img{height:150px !important;}
    .product-card div{padding:17px !important;}
    .product-card h3{font-size:.96rem !important;}
    .product-card p{font-size:.88rem !important;line-height:1.52;}

    .service-row{grid-template-columns:70px 1fr 1.7fr !important;gap:24px !important;padding:20px 24px !important;min-width:0 !important;}
    .service-row p{grid-column:auto !important;font-size:.95rem !important;line-height:1.55;}
    .service-row strong{font-size:.94rem !important;}

    .cover-band{min-height:370px !important;padding:64px 0 !important;}
    .cover-band h2{font-size:clamp(2.8rem,5vw,4.25rem) !important;}

    .footer-grid-pro{grid-template-columns:1.25fr .9fr .9fr !important;gap:26px !important;padding:46px 0 !important;}
    .footer-about{grid-column:auto !important;}
    .footer-card{padding:26px !important;border-radius:22px !important;}
    .footer-bottom-inner{flex-direction:row !important;text-align:left !important;}
}

/* Large tablets: still spacious, but slightly tighter */
@media (min-width:769px) and (max-width:1024px){
    .container{width:min(96%,100%);}
    .header-inner{min-height:70px;}
    .main-nav{top:70px;}
    .hero{padding:48px 0 82px !important;min-height:auto !important;}
    .hero-grid{grid-template-columns:1fr 1fr !important;gap:32px !important;}
    .hero h1{font-size:clamp(2.4rem,5.2vw,3.4rem) !important;}
    .hero-badges{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:10px !important;}
    .collage{grid-template-columns:1fr 1fr !important;grid-auto-rows:128px !important;}
    .collage img:first-child{grid-row:span 2 !important;}
    .section{padding:56px 0 !important;}
    .section.compact{padding:42px 0 !important;}
    .grid-2,.split-panel,.contact-grid{grid-template-columns:1fr 1fr !important;gap:28px !important;}
    .grid-3{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}
    .grid-4,.cards,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:17px !important;}
    .product-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}
    .region-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
    .market-columns,.team-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}
    .choose-grid{grid-template-columns:1fr 1fr !important;gap:18px !important;}
    .panel{padding:24px !important;}
    .service-row{grid-template-columns:60px 1fr 1.5fr !important;gap:16px !important;min-width:0 !important;}
    .service-row p{grid-column:auto !important;}
    .footer-grid-pro{grid-template-columns:1fr 1fr !important;gap:16px !important;}
    .footer-about{grid-column:1 / -1 !important;}
}

/* Phones: keep desktop character but avoid cramped/broken layout */
@media (max-width:768px){
    .container{width:94% !important;}
    .hero{padding:34px 0 64px !important;}
    .hero-grid,.grid-2,.split-panel,.contact-grid{grid-template-columns:1fr !important;gap:24px !important;}
    .hero h1{font-size:clamp(2.1rem,9vw,3rem) !important;}
    .hero-actions{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:9px !important;}
    .hero-actions .btn{width:100% !important;min-width:0 !important;}
    .hero-badges,.cards,.grid-3,.grid-4,.stats-grid,.region-grid,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
    .collage{grid-template-columns:1fr 1fr !important;grid-auto-rows:118px !important;}
    .collage img:first-child{grid-row:span 2 !important;}
    .section{padding:42px 0 !important;}
    .section.compact{padding:34px 0 !important;}
    .product-card img{height:126px !important;}
    .service-table{overflow-x:auto;-webkit-overflow-scrolling:touch;}
    .service-row{grid-template-columns:46px minmax(100px,.9fr) minmax(150px,1.3fr) !important;min-width:450px !important;gap:10px !important;}
    .service-row p{grid-column:auto !important;}
    .footer-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
    .footer-about{grid-column:1 / -1 !important;}
}

@media (max-width:420px){
    .container{width:93% !important;}
    .hero-actions{grid-template-columns:1fr !important;}
    .hero-badges,.cards,.grid-3,.grid-4,.stats-grid,.region-grid,.product-grid,.footer-grid-pro{grid-template-columns:1fr !important;}
    .footer-about{grid-column:auto !important;}
    .collage{grid-template-columns:1fr 1fr !important;grid-auto-rows:96px !important;}
    .product-card img{height:150px !important;}
    .cover-band{min-height:220px !important;}
    .cover-band h2{font-size:clamp(1.9rem,12vw,2.55rem) !important;}
}

@media (max-width:340px){
    .collage{grid-template-columns:1fr !important;grid-auto-rows:145px !important;}
    .collage img:first-child{grid-row:auto !important;}
    .service-row{min-width:410px !important;}
}

/* ==========================================================
   RESTORE ORIGINAL FOOTER STYLE
   User requested the footer to remain as it was before.
   This overrides the later footer-card design only for footer.
   ========================================================== */
.site-footer{
    background:#041d14 !important;
    color:#eaf4ef !important;
    margin-top:0 !important;
    border-top:0 !important;
    box-shadow:none !important;
}

.site-footer .footer-wave{
    display:block !important;
    height:26px !important;
    background:linear-gradient(135deg,var(--green),var(--green-2)) !important;
    border-top:3px solid var(--gold) !important;
    transform:skewY(-1.8deg) !important;
    transform-origin:left top !important;
    margin-top:14px !important;
}

.site-footer .footer-grid{
    display:grid !important;
    grid-template-columns:1.2fr .8fr .8fr !important;
    gap:28px !important;
    padding:40px 0 !important;
    align-items:start !important;
}

.site-footer .footer-brand{
    margin-bottom:0 !important;
}

.site-footer .footer-brand img{
    width:50px !important;
    height:50px !important;
    object-fit:contain !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    padding:0 !important;
}

.site-footer .footer-brand strong{
    color:#fff !important;
}

.site-footer .footer-brand small{
    color:var(--gold) !important;
}

.site-footer h3{
    color:var(--gold) !important;
    font-size:1rem !important;
    margin:0 0 10px !important;
    font-family:Georgia, 'Times New Roman', serif !important;
    text-transform:none !important;
    letter-spacing:.005em !important;
}

.site-footer p{
    color:#d7e6de !important;
    margin:8px 0 !important;
    font-size:.92rem !important;
    line-height:1.58 !important;
    font-weight:400 !important;
}

.site-footer .footer-link{
    color:var(--gold) !important;
    font-weight:900 !important;
}

.site-footer .footer-bottom{
    border-top:1px solid rgba(255,255,255,.1) !important;
    background:transparent !important;
    padding:14px 0 !important;
    color:#b9c9c1 !important;
    font-size:.85rem !important;
}

@media (max-width:980px){
    .site-footer .footer-grid{
        grid-template-columns:1fr !important;
        gap:20px !important;
        padding:34px 0 !important;
    }
}

@media (max-width:520px){
    .site-footer .footer-wave{
        height:22px !important;
        margin-top:10px !important;
    }

    .site-footer .footer-grid{
        grid-template-columns:1fr !important;
        gap:18px !important;
        padding:30px 0 !important;
    }

    .site-footer p{
        font-size:.88rem !important;
    }

    .site-footer .footer-bottom{
        font-size:.78rem !important;
        line-height:1.45 !important;
    }
}

/* ==========================================================
   FOOTER BRIGHTNESS REFINEMENT
   Keeps the restored footer layout, but makes the footer match
   the clear brightness of the main website on desktop and mobile.
   ========================================================== */
.site-footer{
    background:
        radial-gradient(circle at 12% 8%, rgba(228,189,99,.20), transparent 26%),
        linear-gradient(135deg,#063b27 0%, #0b5137 48%, #073622 100%) !important;
    color:#ffffff !important;
    border-top:1px solid rgba(228,189,99,.38) !important;
}

.site-footer .footer-wave{
    background:linear-gradient(90deg,#0b5137 0%, #c8962d 38%, #e4bd63 50%, #c8962d 62%, #0b5137 100%) !important;
    border-top:0 !important;
    opacity:1 !important;
}

.site-footer .footer-grid{
    color:#ffffff !important;
}

.site-footer .footer-grid > div{
    color:#ffffff !important;
}

.site-footer .footer-brand strong{
    color:#ffffff !important;
    text-shadow:0 2px 8px rgba(0,0,0,.18) !important;
}

.site-footer .footer-brand small{
    color:#ffd978 !important;
}

.site-footer h3{
    color:#ffd978 !important;
    text-shadow:0 2px 8px rgba(0,0,0,.15) !important;
}

.site-footer p{
    color:#f7fff9 !important;
    font-weight:650 !important;
    opacity:1 !important;
}

.site-footer .footer-link{
    color:#ffd978 !important;
    font-weight:950 !important;
    text-shadow:none !important;
}

.site-footer .footer-link:hover{
    color:#ffffff !important;
}

.site-footer .footer-bottom{
    background:rgba(255,255,255,.07) !important;
    border-top:1px solid rgba(228,189,99,.34) !important;
    color:#ffffff !important;
    font-weight:700 !important;
}

@media (max-width:980px){
    .site-footer{
        background:
            radial-gradient(circle at 12% 8%, rgba(228,189,99,.18), transparent 28%),
            linear-gradient(160deg,#063b27 0%, #0b5137 55%, #073622 100%) !important;
    }
}

@media (max-width:520px){
    .site-footer p{
        color:#ffffff !important;
        font-weight:650 !important;
    }

    .site-footer h3,
    .site-footer .footer-brand small,
    .site-footer .footer-link{
        color:#ffe08a !important;
    }
}


/* ==========================================================
   MOBILE WEBSITE EXPERIENCE UPDATE
   Phones now behave like a real responsive website, not like a
   squeezed desktop/PDF profile page. This block intentionally
   overrides earlier desktop-like mobile rules.
   ========================================================== */
@media (max-width: 820px){
    html, body{
        overflow-x:hidden !important;
        background:#f7f1e6 !important;
    }

    body{
        font-size:14px !important;
        line-height:1.55 !important;
    }

    .container,
    .narrow{
        width:min(92%, 440px) !important;
        max-width:440px !important;
        margin-inline:auto !important;
    }

    .site-header{
        background:#fffdf8 !important;
        box-shadow:0 8px 22px rgba(6,59,39,.12) !important;
    }

    .header-inner{
        min-height:62px !important;
        gap:10px !important;
    }

    .brand{
        min-width:0 !important;
        gap:9px !important;
    }

    .brand img{
        width:40px !important;
        height:40px !important;
        flex:0 0 40px !important;
    }

    .brand strong{
        font-size:.92rem !important;
        letter-spacing:.12em !important;
    }

    .brand small{
        max-width:190px !important;
        white-space:normal !important;
        font-size:.50rem !important;
        line-height:1.2 !important;
        letter-spacing:.04em !important;
    }

    .nav-toggle{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:38px !important;
        height:36px !important;
        padding:0 !important;
        border-radius:10px !important;
    }

    .main-nav{
        position:absolute !important;
        top:62px !important;
        left:14px !important;
        right:14px !important;
        width:auto !important;
        max-width:none !important;
        background:#fffdf8 !important;
        border:1px solid rgba(200,150,45,.34) !important;
        border-radius:16px !important;
        padding:10px !important;
        display:none !important;
        flex-direction:column !important;
        align-items:stretch !important;
        max-height:calc(100vh - 82px) !important;
        overflow-y:auto !important;
        box-shadow:0 18px 36px rgba(6,59,39,.18) !important;
    }

    .main-nav.open{
        display:flex !important;
    }

    .main-nav a{
        width:100% !important;
        text-align:left !important;
        font-size:.86rem !important;
        padding:10px 12px !important;
        border-radius:11px !important;
        color:#17372a !important;
    }

    .main-nav a.active,
    .main-nav a:hover{
        color:#fff !important;
        background:#063b27 !important;
    }

    .hero{
        min-height:auto !important;
        padding:30px 0 46px !important;
        background:
            radial-gradient(circle at 12% 6%,rgba(228,189,99,.20),transparent 26%),
            linear-gradient(180deg,#fffdf8 0%,#f6ecda 72%,#0b5137 72%,#063b27 100%) !important;
    }

    .hero:after{
        height:52px !important;
        bottom:-35px !important;
        transform:skewY(-2deg) !important;
    }

    .hero-grid,
    .grid-2,
    .split-panel,
    .contact-grid,
    .choose-grid,
    .market-columns,
    .team-grid{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:22px !important;
    }

    .hero h1{
        font-size:clamp(2.05rem, 13vw, 3rem) !important;
        line-height:1.02 !important;
        margin:10px 0 10px !important;
        max-width:100% !important;
    }

    .hero-lead,
    .lead{
        font-size:.94rem !important;
        line-height:1.6 !important;
        font-weight:650 !important;
    }

    .hero-actions{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:10px !important;
        margin-top:18px !important;
    }

    .btn{
        width:100% !important;
        min-height:44px !important;
        padding:11px 14px !important;
        font-size:.88rem !important;
        border-radius:14px !important;
    }

    .hero-badges,
    .cards,
    .grid-3,
    .grid-4,
    .stats-grid,
    .region-grid,
    .footer-grid,
    .footer-grid-pro{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:12px !important;
    }

    .hero-badge{
        display:flex !important;
        align-items:center !important;
        gap:10px !important;
        text-align:left !important;
        padding:11px 12px !important;
        border-radius:14px !important;
    }

    .hero-badge span{
        font-size:1.18rem !important;
        flex:0 0 auto !important;
    }

    .hero-badge strong{
        margin:0 !important;
        font-size:.70rem !important;
        line-height:1.25 !important;
    }

    .hero-card{
        border-radius:18px !important;
        padding:9px !important;
        width:100% !important;
    }

    .collage{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        grid-auto-rows:112px !important;
        gap:8px !important;
    }

    .collage img,
    .collage img:first-child{
        grid-row:auto !important;
        height:100% !important;
        border-radius:13px !important;
        object-fit:cover !important;
    }

    .section,
    .section.compact{
        padding:34px 0 !important;
    }

    .page-title{
        padding:34px 0 36px !important;
        background:linear-gradient(180deg,#fffdf8 0%,#f2e6cf 100%) !important;
    }

    .section-header{
        text-align:left !important;
        margin:0 0 18px !important;
        max-width:100% !important;
    }

    .section-header .eyebrow{
        justify-content:flex-start !important;
    }

    .section-header h2,
    .page-title h1{
        font-size:clamp(1.45rem, 8.5vw, 2rem) !important;
        line-height:1.13 !important;
        letter-spacing:.01em !important;
        text-align:left !important;
    }

    .page-title,
    .page-title .container,
    .page-title p{
        text-align:left !important;
    }

    .section-header p,
    .page-title p{
        font-size:.90rem !important;
        line-height:1.55 !important;
        margin-top:9px !important;
    }

    .cover-band{
        min-height:178px !important;
        padding:28px 0 !important;
        background-size:cover !important;
        background-position:center !important;
        border-top:2px solid var(--gold) !important;
        border-bottom:2px solid var(--gold) !important;
    }

    .cover-band .container{
        width:min(92%,440px) !important;
    }

    .cover-band h2{
        font-size:clamp(1.75rem, 12vw, 2.6rem) !important;
        line-height:1.02 !important;
        text-align:left !important;
        max-width:100% !important;
    }

    .cover-band span{
        margin-top:4px !important;
    }

    .panel,
    .info-card,
    .feature-card,
    .stat-card,
    .requirement-card,
    .team-box,
    .contact-card,
    .quick-facts,
    .form,
    .callout,
    .product-card,
    .market-card,
    .choose-list{
        border-radius:16px !important;
        box-shadow:0 10px 22px rgba(6,59,39,.10) !important;
    }

    .panel,
    .info-card,
    .feature-card,
    .contact-card,
    .form,
    .callout{
        padding:17px !important;
    }

    .panel h2,
    .contact-card h2,
    .form h2{
        font-size:1.25rem !important;
        line-height:1.18 !important;
    }

    .info-card h3,
    .feature-card h3,
    .requirement-card h3,
    .stat-card h3,
    .product-card h3{
        font-size:.95rem !important;
        line-height:1.25 !important;
    }

    .info-card p,
    .feature-card p,
    .requirement-card p,
    .stat-card p,
    .product-card p,
    .check-list li,
    .market-card li,
    .choose-list li,
    .team-box li{
        font-size:.88rem !important;
        line-height:1.5 !important;
    }

    .card-icon{
        width:42px !important;
        height:42px !important;
        margin-bottom:10px !important;
    }

    .product-grid{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
        gap:12px !important;
    }

    .product-card img{
        height:118px !important;
        object-fit:cover !important;
    }

    .product-card div{
        padding:12px !important;
    }

    .service-table{
        overflow:visible !important;
        border-radius:16px !important;
    }

    .service-row{
        display:grid !important;
        grid-template-columns:42px 1fr !important;
        gap:8px 11px !important;
        min-width:0 !important;
        padding:14px !important;
        align-items:start !important;
    }

    .service-row p{
        grid-column:2 !important;
        font-size:.88rem !important;
        line-height:1.5 !important;
    }

    .service-row strong{
        font-size:.86rem !important;
        line-height:1.3 !important;
    }

    .service-no,
    .requirement-card .service-no{
        width:36px !important;
        height:36px !important;
        font-size:.82rem !important;
        display:grid !important;
        place-items:center !important;
    }

    .stats-grid{
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    }

    .stat-card{
        padding:15px 12px !important;
    }

    .stat-card .num{
        font-size:1.55rem !important;
    }

    .region-grid{
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    }

    .region{
        padding:11px 9px !important;
        font-size:.86rem !important;
        border-radius:13px !important;
    }

    .requirement-card{
        grid-template-columns:42px 1fr !important;
        gap:11px !important;
        padding:14px !important;
    }

    .market-card h3,
    .choose-list h3,
    .team-box h3{
        font-size:.95rem !important;
        padding:14px 15px !important;
    }

    .fact-row{
        gap:10px !important;
        align-items:flex-start !important;
    }

    .fact-row span{
        width:36px !important;
        height:36px !important;
        flex:0 0 36px !important;
        font-size:1.1rem !important;
    }

    .footer-wave{
        height:18px !important;
        margin-top:0 !important;
        transform:none !important;
    }

    .site-footer .footer-grid{
        grid-template-columns:1fr !important;
        gap:18px !important;
        padding:30px 0 !important;
    }

    .site-footer p{
        font-size:.88rem !important;
        line-height:1.55 !important;
    }

    .site-footer h3{
        font-size:.96rem !important;
    }

    .footer-bottom{
        font-size:.78rem !important;
        line-height:1.45 !important;
    }
}

@media (max-width: 430px){
    .container,
    .narrow{
        width:91% !important;
        max-width:390px !important;
    }

    .brand small{
        max-width:155px !important;
    }

    .hero h1{
        font-size:2rem !important;
    }

    .collage{
        grid-auto-rows:98px !important;
    }

    .product-grid,
    .stats-grid,
    .region-grid{
        grid-template-columns:1fr !important;
    }

    .product-card img{
        height:150px !important;
    }

    .cover-band{
        min-height:160px !important;
    }

    .cover-band h2{
        font-size:1.85rem !important;
    }
}

@media (max-width: 340px){
    .brand small{
        max-width:125px !important;
    }

    .collage{
        grid-template-columns:1fr !important;
        grid-auto-rows:135px !important;
    }

    .hero h1{
        font-size:1.72rem !important;
    }

    .section-header h2,
    .page-title h1{
        font-size:1.28rem !important;
    }
}


/* ==========================================================
   Mobile premium experience
   Modern mobile-only refinements: cleaner spacing, brighter
   cards, reveal motion, floating actions and app-like nav.
   ========================================================== */
@media (max-width: 760px){
    :root{
        --mobile-shadow:0 16px 34px rgba(6,59,39,.14);
        --mobile-soft-shadow:0 10px 24px rgba(6,59,39,.10);
    }

    body{
        background:
            radial-gradient(circle at 14% 0%, rgba(228,189,99,.18), transparent 28%),
            radial-gradient(circle at 95% 10%, rgba(13,106,69,.10), transparent 24%),
            linear-gradient(180deg,#fffaf0 0%, #f7f0df 48%, #fffdf7 100%) !important;
        padding-bottom:76px;
    }

    body:before{
        content:"";
        position:fixed;
        inset:0;
        pointer-events:none;
        background-image:
            linear-gradient(rgba(6,59,39,.035) 1px, transparent 1px),
            linear-gradient(90deg, rgba(6,59,39,.028) 1px, transparent 1px);
        background-size:28px 28px;
        opacity:.35;
        z-index:-1;
    }

    .scroll-progress{
        position:fixed;
        left:0;
        top:0;
        height:3px;
        width:0%;
        background:linear-gradient(90deg,var(--gold),#fff0a8,var(--green-3));
        z-index:150;
        box-shadow:0 2px 10px rgba(200,150,45,.45);
    }

    .site-header{
        top:8px;
        width:calc(100% - 20px);
        margin:0 auto;
        border-radius:18px;
        border:1px solid rgba(200,150,45,.35);
        background:rgba(255,253,247,.92) !important;
        box-shadow:0 12px 34px rgba(6,59,39,.16) !important;
    }

    .header-inner{
        min-height:62px !important;
        padding-inline:10px;
    }

    .brand{
        background:rgba(255,255,255,.68);
        border:1px solid rgba(200,150,45,.22);
        border-radius:999px;
        padding:5px 10px 5px 5px;
        box-shadow:0 8px 18px rgba(6,59,39,.08);
    }

    .nav-toggle{
        border-radius:50% !important;
        background:linear-gradient(135deg,var(--green),var(--green-3)) !important;
        box-shadow:0 9px 20px rgba(6,59,39,.22);
    }

    .main-nav{
        top:74px !important;
        left:10px !important;
        right:10px !important;
        border-radius:22px !important;
        padding:12px !important;
        background:rgba(255,253,247,.98) !important;
        box-shadow:0 26px 60px rgba(6,59,39,.22) !important;
        border:1px solid rgba(200,150,45,.35) !important;
    }

    .main-nav a{
        border:1px solid rgba(6,59,39,.08);
        background:#fff;
        margin-bottom:6px;
        position:relative;
        overflow:hidden;
    }

    .main-nav a:after{
        content:"›";
        position:absolute;
        right:13px;
        color:var(--gold);
        font-weight:900;
    }

    .main-nav a.active,
    .main-nav a:hover{
        background:linear-gradient(135deg,var(--green),var(--green-3)) !important;
        color:#fff !important;
        border-color:transparent;
    }

    .hero{
        margin-top:-70px;
        padding-top:116px !important;
        background:
            radial-gradient(circle at 100% 12%,rgba(228,189,99,.26),transparent 26%),
            linear-gradient(160deg,#fffdf7 0%,#fff7e6 56%,#0b5137 56%,#063b27 100%) !important;
    }

    .hero-grid{
        gap:22px !important;
    }

    .hero h1{
        max-width:310px;
        margin-top:10px !important;
    }

    .hero-lead{
        background:rgba(255,255,255,.72);
        border:1px solid rgba(200,150,45,.26);
        border-radius:18px;
        padding:13px 14px;
        box-shadow:var(--mobile-soft-shadow);
    }

    .hero-actions{
        display:grid !important;
        grid-template-columns:1fr 1fr;
        gap:10px !important;
    }

    .hero-actions .btn{
        width:100%;
        border-radius:16px !important;
        padding:12px 10px !important;
        font-size:.84rem !important;
    }

    .hero-badges{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .hero-badge{
        border-radius:18px !important;
        box-shadow:var(--mobile-soft-shadow) !important;
        background:linear-gradient(180deg,#ffffff,#fff8e8) !important;
    }

    .hero-card{
        border-radius:24px !important;
        padding:10px !important;
        box-shadow:var(--mobile-shadow) !important;
        transform:translateZ(0);
    }

    .collage{
        grid-template-columns:1.1fr .9fr !important;
        grid-auto-rows:118px !important;
        gap:8px !important;
    }

    .collage img{
        border-radius:18px !important;
        filter:saturate(1.08) contrast(1.04) brightness(1.03);
    }

    .collage img:first-child{
        grid-row:span 2 !important;
    }

    .section{
        position:relative;
        isolation:isolate;
    }

    .section:before{
        content:"";
        position:absolute;
        width:88px;
        height:88px;
        right:-46px;
        top:24px;
        background:radial-gradient(circle, rgba(200,150,45,.18), transparent 70%);
        border-radius:50%;
        z-index:-1;
    }

    .section-header{
        text-align:left !important;
        margin-inline:0 !important;
    }

    .section-header .eyebrow{
        justify-content:flex-start !important;
    }

    .section-header h2,
    .page-title h1{
        text-align:left !important;
    }

    .section-header p,
    .page-title p{
        margin-left:0 !important;
        text-align:left !important;
    }

    .panel,
    .info-card,
    .feature-card,
    .stat-card,
    .requirement-card,
    .team-box,
    .contact-card,
    .quick-facts,
    .form,
    .callout,
    .product-card,
    .market-card,
    .choose-list{
        position:relative;
        overflow:hidden;
        background:rgba(255,253,247,.96) !important;
        border:1px solid rgba(200,150,45,.30) !important;
        box-shadow:var(--mobile-shadow) !important;
    }

    .panel:after,
    .info-card:after,
    .product-card:after,
    .quick-facts:after{
        content:"";
        position:absolute;
        inset:-90px auto auto -70px;
        width:150px;
        height:150px;
        background:radial-gradient(circle,rgba(228,189,99,.18),transparent 68%);
        pointer-events:none;
    }

    .section.dark{
        background:
            radial-gradient(circle at 90% 8%,rgba(228,189,99,.19),transparent 25%),
            linear-gradient(145deg,#06452e,#032318) !important;
    }

    .section.dark .section-header,
    .section.dark .section-header h2,
    .section.dark .section-header p{
        text-align:left !important;
    }

    .grid-2,
    .grid-3,
    .grid-4,
    .cards,
    .stats-grid,
    .team-grid,
    .choose-grid,
    .market-columns{
        gap:14px !important;
    }

    .product-grid{
        gap:13px !important;
    }

    .product-card{
        transform:translateZ(0);
    }

    .product-card img{
        filter:saturate(1.12) contrast(1.05) brightness(1.03);
    }

    .product-card h3,
    .info-card h3,
    .panel h2{
        letter-spacing:.01em;
    }

    .quick-facts{
        padding:14px !important;
    }

    .fact-row{
        background:#ffffff;
        border:1px solid rgba(6,59,39,.08);
        border-radius:14px;
        padding:10px !important;
        margin-bottom:8px;
    }

    .fact-row:last-child{
        margin-bottom:0;
    }

    .service-table{
        background:transparent !important;
        box-shadow:none !important;
        border:0 !important;
        display:grid;
        gap:11px;
    }

    .service-row{
        background:#fffdf8;
        border:1px solid rgba(200,150,45,.30) !important;
        border-radius:16px;
        box-shadow:var(--mobile-soft-shadow);
    }

    .service-no{
        background:linear-gradient(135deg,var(--green),var(--green-3));
        color:#fff;
        border-radius:50%;
    }

    .cover-band{
        border-radius:0 0 28px 28px;
        overflow:hidden;
        box-shadow:0 18px 38px rgba(6,59,39,.14);
    }

    .cover-band:after{
        content:"";
        position:absolute;
        inset:auto 18px 18px 18px;
        height:3px;
        border-radius:999px;
        background:linear-gradient(90deg,transparent,var(--gold),transparent);
    }

    .form input,
    .form textarea,
    .form select{
        min-height:46px;
        background:#fff !important;
        border-color:rgba(6,59,39,.18) !important;
        box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
    }

    .form input:focus,
    .form textarea:focus,
    .form select:focus{
        outline:2px solid rgba(200,150,45,.30);
        border-color:var(--gold) !important;
    }

    .mobile-actions{
        position:fixed;
        left:12px;
        right:12px;
        bottom:10px;
        display:grid;
        grid-template-columns:1fr 1fr 46px;
        gap:8px;
        z-index:120;
        padding:8px;
        border:1px solid rgba(200,150,45,.35);
        border-radius:20px;
        background:rgba(255,253,247,.94);
        box-shadow:0 18px 48px rgba(6,59,39,.24);
        backdrop-filter:blur(14px);
    }

    .mobile-actions a{
        min-height:44px;
        border-radius:15px;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:7px;
        font-size:.82rem;
        font-weight:900;
        color:var(--green);
        background:#fff;
        border:1px solid rgba(6,59,39,.08);
    }

    .mobile-actions a:first-child{
        background:linear-gradient(135deg,var(--green),var(--green-3));
        color:#fff;
    }

    .mobile-actions .to-top{
        font-size:1rem;
        color:#15251e;
        background:linear-gradient(135deg,var(--gold),#f4d98e);
    }

    .reveal-ready{
        opacity:0;
        transform:translateY(18px) scale(.985);
        transition:opacity .55s ease, transform .55s ease;
        will-change:opacity, transform;
    }

    .reveal-ready.reveal-in{
        opacity:1;
        transform:translateY(0) scale(1);
    }
}

@media (max-width: 430px){
    .hero-actions{
        grid-template-columns:1fr !important;
    }

    .collage{
        grid-template-columns:1fr 1fr !important;
        grid-auto-rows:96px !important;
    }

    .product-grid{
        grid-template-columns:1fr !important;
    }

    .mobile-actions{
        grid-template-columns:1fr 1fr 42px;
        left:9px;
        right:9px;
        border-radius:18px;
    }

    .mobile-actions a{
        font-size:.76rem;
        min-height:42px;
    }
}

@media (prefers-reduced-motion: reduce){
    .reveal-ready,
    .reveal-ready.reveal-in{
        opacity:1 !important;
        transform:none !important;
        transition:none !important;
    }
}

/* ==========================================================
   JV-style real mobile website finish for RHYLO
   This final block matches the clean phone behavior of the
   uploaded JV reference: compact top strip, app-like menu,
   clean single-column sections, side-image product cards,
   no PDF-squeezed scrolling, and strong readable contrast.
   ========================================================== */
.skip-link{position:absolute;left:-999px;top:10px;background:#fff;padding:9px 12px;border-radius:8px;z-index:1000;color:var(--green);font-weight:900}.skip-link:focus{left:10px}
.top-strip{display:none}.hide-small{display:inline}
.nav-toggle span{display:none}

@media (min-width:1025px){
    .top-strip{display:block;background:linear-gradient(90deg,#063b27,#0b5137);color:#fff;font-size:.76rem}
    .top-strip__inner{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:14px}
    .top-strip strong,.top-strip a{color:#ffd978;font-weight:900}
}

@media (max-width:760px){
    :root{--radius:14px;--mobile-line:rgba(6,59,39,.12);--mobile-shadow:0 9px 22px rgba(6,59,39,.08)}
    html,body{width:100%;max-width:100%;overflow-x:hidden!important;background:#fff!important}
    body{font-size:14.5px!important;line-height:1.58!important;color:#243d32!important;padding-bottom:0!important}
    body:before{display:none!important}
    .mobile-actions{display:none!important}
    .container,.narrow{width:min(100% - 28px,1120px)!important;max-width:none!important;margin-inline:auto!important}

    .top-strip{display:block;background:linear-gradient(90deg,#063b27,#0b5137);color:#fff;font-size:.72rem}
    .top-strip__inner{min-height:30px;display:flex;align-items:center;justify-content:center;text-align:center;gap:12px;padding:5px 0}
    .top-strip a,.hide-small{display:none!important}

    .site-header{position:sticky!important;top:0!important;width:100%!important;margin:0!important;border-radius:0!important;border:0!important;background:rgba(255,255,255,.98)!important;box-shadow:0 4px 16px rgba(6,59,39,.08)!important;backdrop-filter:blur(10px)}
    .site-header.is-scrolled{box-shadow:0 8px 22px rgba(6,59,39,.12)!important}
    .header-inner{min-height:62px!important;padding-inline:0!important;gap:16px!important;display:flex!important;align-items:center!important;justify-content:space-between!important}
    .brand{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;max-width:75vw!important}
    .brand img{width:42px!important;height:42px!important;flex:0 0 42px!important;object-fit:contain!important}
    .brand strong{font-size:.98rem!important;letter-spacing:.14em!important;color:#063b27!important;line-height:1!important}
    .brand small{font-size:.54rem!important;letter-spacing:.04em!important;max-width:205px!important;white-space:normal!important;line-height:1.2!important;color:#bd851d!important}
    .nav-toggle{display:block!important;position:relative;width:40px!important;height:36px!important;min-width:40px!important;min-height:36px!important;padding:7px 10px!important;border:0!important;border-radius:9px!important;background:#063b27!important;box-shadow:none!important;color:transparent!important;overflow:hidden!important;cursor:pointer!important}
    .nav-toggle span{display:block!important;height:2px!important;margin:5px 0!important;border-radius:99px!important;background:#fff!important;transition:.18s ease!important}
    .nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .nav-toggle.is-open span:nth-child(2){opacity:0}
    .nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .main-nav{position:fixed!important;inset:94px 14px auto!important;display:grid!important;gap:6px!important;padding:10px!important;border:1px solid var(--mobile-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 28px rgba(6,59,39,.14)!important;transform:translateY(-12px)!important;opacity:0!important;pointer-events:none!important;transition:.18s ease!important;max-height:calc(100vh - 110px)!important;overflow-y:auto!important;z-index:100!important;width:auto!important;max-width:none!important;flex-direction:unset!important;align-items:unset!important}
    .main-nav.open{display:grid!important;transform:translateY(0)!important;opacity:1!important;pointer-events:auto!important;grid-template-columns:1fr!important}
    .main-nav a{display:block!important;width:100%!important;padding:11px 12px!important;border-radius:12px!important;font-size:.88rem!important;text-align:left!important;background:transparent!important;border:0!important;color:#173428!important;font-weight:800!important;margin:0!important;position:relative!important}
    .main-nav a:after{content:'›';position:absolute;right:13px;color:#bd851d;font-weight:900}
    .main-nav a.active,.main-nav a:hover{background:linear-gradient(135deg,#063b27,#0d6a45)!important;color:#fff!important}
    .main-nav a.active:after,.main-nav a:hover:after{color:#ffd978}

    .scroll-progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,#bd851d,#ffd978,#0d6a45);z-index:180;box-shadow:0 2px 8px rgba(200,150,45,.35)}

    h1{font-size:clamp(1.72rem,7vw,2.12rem)!important;line-height:1.12!important;letter-spacing:-.01em!important}
    h2{font-size:clamp(1.25rem,5.2vw,1.55rem)!important;line-height:1.18!important}
    h3{font-size:1rem!important}.lead{font-size:.96rem!important;line-height:1.55!important;color:#374b40!important}
    .eyebrow,.kicker{font-size:.66rem!important;letter-spacing:.105em!important;margin-bottom:8px!important;color:#0b5137!important}.eyebrow:before,.kicker:before{width:22px!important;height:2px!important;background:#bd851d!important}

    .section,.section.compact{padding:38px 0!important;background:#fff!important}
    .section.dark{background:linear-gradient(180deg,#f7f9f5 0%,#fff 100%)!important;color:#243d32!important}
    .section.dark .section-header h2,.section.dark .section-header p{color:#243d32!important;text-shadow:none!important}
    .section-header{max-width:680px!important;margin:0 0 20px!important;text-align:left!important}
    .section-header.center{text-align:left!important;margin-inline:0!important}.section-header .eyebrow{justify-content:flex-start!important}
    .section-header h2,.page-title h1{font-size:clamp(1.38rem,6.5vw,1.85rem)!important;text-transform:none!important;line-height:1.18!important;letter-spacing:-.01em!important;text-align:left!important;color:#063b27!important}
    .section-header p,.page-title p{font-size:.92rem!important;line-height:1.55!important;text-align:left!important;margin:8px 0 0!important;color:#52695f!important}

    .hero{position:relative!important;overflow:hidden!important;min-height:auto!important;padding:34px 0 38px!important;background:linear-gradient(180deg,#ffffff 0%,#ffffff 66%,#f6f8f4 66.1%,#f6f8f4 100%)!important;margin:0!important}
    .hero:before{content:''!important;position:absolute!important;right:-180px!important;bottom:-180px!important;width:330px!important;height:330px!important;border-radius:50%!important;background:rgba(13,106,69,.12)!important;display:block!important}
    .hero:after{display:none!important}
    .hero-grid{position:relative!important;z-index:1!important;display:grid!important;grid-template-columns:1fr!important;gap:22px!important;align-items:start!important}
    .hero-grid>div:first-child{order:1}.hero-card{order:2}
    .hero h1{font-size:clamp(1.82rem,8.2vw,2.35rem)!important;line-height:1.08!important;letter-spacing:-.015em!important;text-transform:none!important;margin:10px 0!important;max-width:100%!important;color:#063b27!important}
    .hero h1 .gold{display:block;color:#0b5137!important}
    .hero-lead{font-size:.96rem!important;line-height:1.55!important;max-width:100%!important;color:#374b40!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
    .hero-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:18px!important}
    .hero-actions .btn,.btn{width:auto!important;min-height:40px!important;padding:9px 14px!important;border-radius:999px!important;font-size:.82rem!important;box-shadow:0 8px 18px rgba(6,59,39,.08)!important}
    .btn-primary{background:linear-gradient(135deg,#063b27,#0d6a45)!important;color:#fff!important}.btn-outline{background:#fff!important;color:#063b27!important;border-color:rgba(6,59,39,.12)!important}
    .hero-badges{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:16px 0 0!important;max-width:100%!important}
    .hero-badge{display:flex!important;align-items:center!important;gap:8px!important;width:100%!important;text-align:left!important;padding:8px 10px!important;border:1px solid var(--mobile-line)!important;border-radius:999px!important;background:#fff!important;color:#063b27!important;box-shadow:0 5px 14px rgba(6,59,39,.05)!important}
    .hero-badge span{display:block!important;font-size:1rem!important;line-height:1!important;margin:0!important}.hero-badge strong{font-size:.65rem!important;margin:0!important;line-height:1.2!important;color:#063b27!important}
    .hero-card{position:relative!important;padding:8px!important;border-radius:22px!important;background:linear-gradient(145deg,#0d6a45,#063b27)!important;border:0!important;border-top:0!important;box-shadow:var(--mobile-shadow)!important;overflow:hidden!important;width:100%!important;margin:0!important}
    .collage{display:grid!important;grid-template-columns:1fr 1fr!important;grid-auto-rows:125px!important;gap:8px!important}
    .collage img,.collage img:first-child{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;border-radius:16px!important;border:0!important;grid-row:auto!important;filter:saturate(1.08) contrast(1.04) brightness(1.03)!important}
    .collage img:first-child{grid-row:span 2!important}

    .page-title{padding:38px 0!important;background:linear-gradient(135deg,rgba(6,59,39,.94),rgba(13,106,69,.88)),url('../img/pdf/overview-supply.jpg') center/cover!important;color:#fff!important;text-align:left!important;border:0!important}
    .page-title h1{color:#fff!important;text-align:left!important;text-shadow:0 4px 14px rgba(0,0,0,.30)!important}.page-title p{color:rgba(255,255,255,.90)!important}.page-title .eyebrow{color:#ffd978!important}.luxury-border:before,.luxury-border:after{display:none!important}

    .cover-band{min-height:210px!important;padding:36px 0!important;border:0!important;text-align:left!important;place-items:center!important;border-radius:0!important;box-shadow:none!important;background-position:center!important;filter:none!important}.cover-band:after{display:none!important}.cover-band h2{font-size:clamp(1.9rem,9vw,2.45rem)!important;line-height:1.04!important;text-align:left!important;max-width:100%!important;text-transform:none!important;text-shadow:0 4px 14px rgba(0,0,0,.58)!important;margin:0!important}.cover-band .eyebrow{justify-content:flex-start!important;color:#ffd978!important}

    .grid-2,.grid-3,.grid-4,.cards,.split-panel,.contact-grid,.choose-grid,.market-columns,.team-grid{display:grid!important;grid-template-columns:1fr!important;gap:24px!important;align-items:start!important}
    .stats-grid,.region-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
    .product-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}

    .panel,.info-card,.feature-card,.stat-card,.requirement-card,.team-box,.contact-card,.quick-facts,.form,.callout,.product-card,.market-card,.choose-list{background:#fff!important;border:1px solid var(--mobile-line)!important;border-radius:14px!important;box-shadow:var(--mobile-shadow)!important;color:#243d32!important;overflow:hidden!important}
    .panel,.info-card,.feature-card,.contact-card,.form,.callout{padding:17px!important}.stat-card,.requirement-card,.team-box{padding:16px!important}
    .info-card:before,.feature-card:before,.contact-card:before{height:3px!important;background:linear-gradient(90deg,#0b5137,#bd851d)!important}
    .card-icon{width:38px!important;height:38px!important;border-radius:12px!important;margin-bottom:10px!important;background:linear-gradient(135deg,#0d6a45,#063b27)!important;box-shadow:none!important;font-size:.94rem!important}.icon-img{width:25px!important;height:25px!important}
    .info-card h3,.feature-card h3,.requirement-card h3,.stat-card h3,.product-card h3,.panel h2,.contact-card h2,.form h2{font-size:.98rem!important;line-height:1.22!important;color:#063b27!important;text-transform:none!important;margin-bottom:7px!important;font-family:Georgia,'Times New Roman',serif!important}
    .info-card p,.feature-card p,.requirement-card p,.stat-card p,.product-card p,.team-box li,.choose-list li,.market-card li,.check-list li{font-size:.86rem!important;line-height:1.48!important;color:#42584e!important;font-weight:650!important}

    .quick-facts{padding:14px!important}.fact-row{display:flex!important;align-items:flex-start!important;gap:10px!important;padding:10px!important;margin:0 0 8px!important;border:1px solid rgba(6,59,39,.08)!important;border-radius:12px!important;background:#f9fbf8!important}.fact-row:last-child{margin-bottom:0!important}.fact-row span{width:36px!important;height:36px!important;flex:0 0 36px!important;font-size:1.1rem!important}.fact-row small{font-size:.65rem!important}.fact-row strong{font-size:.86rem!important;color:#063b27!important}

    .product-card{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;min-height:128px!important;padding:0!important;align-items:stretch!important}.product-card img{width:100%!important;height:100%!important;min-height:128px!important;object-fit:cover!important;object-position:center!important;border:0!important;border-radius:0!important;box-shadow:none!important;filter:saturate(1.08) contrast(1.04) brightness(1.03)!important}.product-card div{padding:14px!important}.product-card h3{font-size:.92rem!important;line-height:1.18!important}.product-card p{font-size:.80rem!important;line-height:1.42!important}

    .service-table{display:grid!important;gap:10px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}.service-row{display:grid!important;grid-template-columns:38px 1fr!important;gap:6px 10px!important;min-width:0!important;padding:13px!important;border:1px solid var(--mobile-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:var(--mobile-shadow)!important;align-items:start!important}.service-row p{grid-column:2!important;margin:0!important;font-size:.84rem!important;line-height:1.45!important;color:#52695f!important}.service-row strong{font-size:.86rem!important;line-height:1.25!important;color:#063b27!important}.service-no,.requirement-card .service-no{width:34px!important;height:34px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#0b5137!important;color:#fff!important;font-size:.78rem!important}

    .check-list{display:grid!important;gap:8px!important;margin-top:14px!important}.check-list li{padding:10px 11px 10px 36px!important;border:1px solid rgba(6,59,39,.08)!important;border-radius:11px!important;background:#f7faf6!important;position:relative!important}.check-list li:before{left:10px!important;top:10px!important;width:18px!important;height:18px!important;background:#0b5137!important;color:#fff!important;font-size:.62rem!important}
    .region{padding:11px 9px!important;border-radius:12px!important;font-size:.82rem!important}.region small{font-size:.67rem!important}.stat-card{padding:15px 12px!important}.stat-card .num{font-size:1.55rem!important}.requirement-card{grid-template-columns:40px 1fr!important;gap:11px!important;padding:14px!important}.market-card h3,.choose-list h3,.team-box h3{font-size:.95rem!important;padding:14px 15px!important;border-radius:0!important}.team-box h3{margin:-16px -16px 14px!important}.team-box ul{font-size:.86rem!important}.choose-list ul,.market-card ul{padding:15px!important}

    .image-placeholder,.hero-card img,.panel img,.product-card img{opacity:1!important}.panel img,.hero-card>img{width:100%!important;height:230px!important;object-fit:cover!important;border-radius:14px!important}.panel.dark-panel{background:linear-gradient(145deg,#063b27,#0b5137)!important}.panel.dark-panel h2,.panel.dark-panel h3{color:#fff!important}.panel.dark-panel p,.panel.dark-panel .check-list li{color:#fff!important}

    .form input,.form textarea,.form select{min-height:46px!important;background:#fff!important;border:1px solid var(--mobile-line)!important;border-radius:11px!important;color:#10241a!important}.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid rgba(189,133,29,.28)!important;border-color:#bd851d!important}

    .footer-wave{height:0!important;margin:0!important;display:none!important}.site-footer{background:linear-gradient(135deg,#063b27,#0b5137)!important;color:#fff!important;border-top:4px solid #bd851d!important}.site-footer .footer-grid{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;padding:32px 0 18px!important}.site-footer p{color:#f7fff9!important;font-size:.88rem!important;line-height:1.55!important}.site-footer h3{color:#ffd978!important;font-size:.96rem!important}.site-footer .footer-bottom{background:rgba(0,0,0,.13)!important;border-top:1px solid rgba(255,255,255,.16)!important;color:#fff!important;font-size:.78rem!important;line-height:1.45!important}

    .reveal-ready{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}.reveal-ready.reveal-in{opacity:1;transform:translateY(0)}
}

@media(max-width:430px){
    .hero-badges,.stats-grid,.region-grid{grid-template-columns:1fr!important}.hero-actions{display:grid!important;grid-template-columns:1fr!important}.product-card{grid-template-columns:96px minmax(0,1fr)!important;min-height:118px!important}.product-card img{min-height:118px!important}.collage{grid-auto-rows:104px!important}.panel img,.hero-card>img{height:205px!important}.brand small{max-width:165px!important}
}

@media(max-width:350px){
    .product-card{grid-template-columns:1fr!important}.product-card img{height:150px!important;min-height:0!important}.collage{grid-template-columns:1fr!important;grid-auto-rows:135px!important}.collage img:first-child{grid-row:auto!important}.brand small{max-width:130px!important}.hero h1{font-size:1.72rem!important}.main-nav{inset:94px 10px auto!important}
}

@media(prefers-reduced-motion:reduce){.reveal-ready,.reveal-ready.reveal-in{opacity:1!important;transform:none!important;transition:none!important}}


/* ==========================================================
   Final mobile clarity fix
   - Removes top-strip / skip-link UI if any cached markup remains
   - Forces dark readable text on white mobile cards
   - Keeps dark sections and footer bright and professional
   ========================================================== */
.skip-link,
.top-strip{
    display:none !important;
}

@media (max-width: 860px){
    .site-header{
        background:rgba(255,253,247,.98) !important;
    }

    .main-nav,
    .main-nav a,
    .hero-badge,
    .quick-facts,
    .fact-row,
    .panel:not(.dark-panel),
    .info-card,
    .feature-card,
    .stat-card,
    .requirement-card,
    .team-box,
    .contact-card,
    .form,
    .product-card,
    .market-card,
    .choose-list,
    .service-row,
    .region{
        background:#ffffff !important;
        color:#243d32 !important;
        text-shadow:none !important;
    }

    .main-nav a,
    .hero-badge strong,
    .quick-facts strong,
    .fact-row strong,
    .panel:not(.dark-panel) h1,
    .panel:not(.dark-panel) h2,
    .panel:not(.dark-panel) h3,
    .info-card h3,
    .feature-card h3,
    .stat-card h3,
    .requirement-card h3,
    .team-box h3,
    .contact-card h2,
    .contact-card h3,
    .form h2,
    .form h3,
    .product-card h3,
    .market-card li,
    .choose-list li strong,
    .service-row strong,
    .region{
        color:#063b27 !important;
        text-shadow:none !important;
    }

    .quick-facts small,
    .fact-row small,
    .panel:not(.dark-panel) p,
    .panel:not(.dark-panel) li,
    .info-card p,
    .feature-card p,
    .stat-card p,
    .requirement-card p,
    .team-box li,
    .contact-card p,
    .form label,
    .product-card p,
    .choose-list li,
    .service-row p,
    .region small{
        color:#344e42 !important;
        text-shadow:none !important;
    }

    .main-nav a.active,
    .main-nav a:hover{
        background:#063b27 !important;
        color:#ffffff !important;
    }

    .section.dark,
    .panel.dark-panel,
    .callout{
        background:linear-gradient(135deg,#063b27,#0d6a45) !important;
        color:#ffffff !important;
    }

    .section.dark .section-header h2,
    .section.dark .section-header p,
    .panel.dark-panel h1,
    .panel.dark-panel h2,
    .panel.dark-panel h3,
    .panel.dark-panel p,
    .callout h3,
    .callout p{
        color:#ffffff !important;
        text-shadow:none !important;
    }

    .section.dark .eyebrow,
    .panel.dark-panel .eyebrow,
    .callout .eyebrow{
        color:#ffd978 !important;
    }

    .market-card h3,
    .choose-list h3,
    .team-box h3{
        background:#063b27 !important;
        color:#ffffff !important;
    }

    .team-box:nth-child(3) h3{
        background:#c8962d !important;
        color:#10241a !important;
    }

    .form input,
    .form textarea,
    .form select{
        background:#ffffff !important;
        color:#10241a !important;
    }

    .site-footer,
    .footer-bottom{
        color:#ffffff !important;
    }

    .site-footer p,
    .site-footer a,
    .footer-bottom .container{
        color:#f7fff9 !important;
    }

    .site-footer h3,
    .footer-link{
        color:#ffd978 !important;
    }
}

/* ==========================================================
   FINAL IMAGE CLARITY + MOBILE TEXT CONTRAST AUDIT
   This block is intentionally last so every page stays clear,
   bright and readable on phones and desktop screens.
   ========================================================== */
img,
.image-placeholder,
.product-card img,
.hero-card img,
.panel img,
.cover-band{
    image-rendering:auto !important;
}

.image-placeholder,
.product-card img,
.hero-card img,
.panel img,
.collage img{
    filter:saturate(1.12) contrast(1.08) brightness(1.05) !important;
    transform:translateZ(0);
    backface-visibility:hidden;
}

/* Global white-card readability */
.info-card,
.feature-card,
.stat-card,
.requirement-card,
.team-box,
.contact-card,
.form,
.quick-facts,
.fact-row,
.product-card,
.market-card,
.choose-list,
.service-row,
.region,
.panel:not(.dark-panel){
    background:#fffefa !important;
    color:#18362a !important;
    text-shadow:none !important;
}

.info-card h1,.info-card h2,.info-card h3,
.feature-card h1,.feature-card h2,.feature-card h3,
.stat-card h1,.stat-card h2,.stat-card h3,
.requirement-card h1,.requirement-card h2,.requirement-card h3,
.team-box h1,.team-box h2,
.contact-card h1,.contact-card h2,.contact-card h3,
.form h1,.form h2,.form h3,
.quick-facts strong,
.fact-row strong,
.product-card h1,.product-card h2,.product-card h3,
.market-card li strong,
.choose-list li strong,
.service-row strong,
.region,
.panel:not(.dark-panel) h1,
.panel:not(.dark-panel) h2,
.panel:not(.dark-panel) h3{
    color:#063b27 !important;
    text-shadow:none !important;
}

.info-card p,.info-card li,
.feature-card p,.feature-card li,
.stat-card p,.stat-card li,
.requirement-card p,.requirement-card li,
.team-box p,.team-box li,
.contact-card p,.contact-card li,
.form p,.form label,
.quick-facts small,
.fact-row small,
.product-card p,
.market-card li,
.choose-list li,
.service-row p,
.region small,
.panel:not(.dark-panel) p,
.panel:not(.dark-panel) li{
    color:#2e493d !important;
    text-shadow:none !important;
}

/* Keep intentional dark headings readable */
.market-card h3,
.choose-list h3,
.team-box h3{
    color:#ffffff !important;
    text-shadow:none !important;
}
.team-box:nth-child(3) h3{
    color:#10241a !important;
}

.card-icon,
.card-icon *,
.service-no,
.requirement-card .service-no{
    color:#ffffff !important;
    text-shadow:none !important;
}
.stat-card .num{
    color:#c8962d !important;
}

.section.dark{
    background:linear-gradient(145deg,#053321 0%,#07442d 58%,#0b5137 100%) !important;
    color:#ffffff !important;
}
.section.dark .section-header h2,
.section.dark .section-header p{
    color:#ffffff !important;
    text-shadow:none !important;
}
.section.dark .section-header .eyebrow{
    color:#ffda82 !important;
}
.section.dark .info-card,
.section.dark .feature-card,
.section.dark .stat-card,
.section.dark .requirement-card,
.section.dark .product-card,
.section.dark .market-card,
.section.dark .choose-list,
.section.dark .team-box{
    background:#fffefa !important;
    color:#18362a !important;
}

.panel.dark-panel,
.callout{
    background:linear-gradient(135deg,#063b27,#0d6a45) !important;
    color:#ffffff !important;
}
.panel.dark-panel h1,
.panel.dark-panel h2,
.panel.dark-panel h3,
.panel.dark-panel p,
.panel.dark-panel li,
.callout h1,
.callout h2,
.callout h3,
.callout p,
.callout li{
    color:#ffffff !important;
    text-shadow:none !important;
}

.form input,
.form textarea,
.form select{
    background:#ffffff !important;
    color:#10241a !important;
}

/* Mobile-specific image and text polish */
@media (max-width: 860px){
    body{
        color:#203a2f !important;
        background:#f8f3e8 !important;
    }

    .section.dark{
        background:linear-gradient(145deg,#053321 0%,#07442d 62%,#0b5137 100%) !important;
    }

    .cover-band{
        background-size:cover !important;
        background-position:center !important;
    }

    .cover-band h2,
    .page-title h1,
    .page-title p,
    .page-title .eyebrow{
        color:#ffffff !important;
        text-shadow:0 3px 12px rgba(0,0,0,.44) !important;
    }

    .image-placeholder,
    .product-card img,
    .hero-card img,
    .panel img,
    .collage img{
        filter:saturate(1.18) contrast(1.12) brightness(1.07) !important;
    }

    .hero-card{
        background:#063b27 !important;
    }

    .collage img{
        min-height:100% !important;
    }

    .product-card{
        grid-template-columns:122px minmax(0,1fr) !important;
        background:#fffefa !important;
    }

    .product-card img{
        min-height:138px !important;
    }

    .info-card,
    .feature-card,
    .stat-card,
    .requirement-card,
    .team-box,
    .contact-card,
    .form,
    .quick-facts,
    .fact-row,
    .product-card,
    .market-card,
    .choose-list,
    .service-row,
    .region,
    .panel:not(.dark-panel){
        background:#fffefa !important;
        color:#18362a !important;
        text-shadow:none !important;
        border-color:rgba(6,59,39,.16) !important;
    }

    .info-card *,
    .feature-card *,
    .stat-card *,
    .requirement-card *,
    .contact-card *,
    .form *,
    .quick-facts *,
    .fact-row *,
    .product-card *,
    .service-row *,
    .region *,
    .panel:not(.dark-panel) *{
        text-shadow:none !important;
    }

    .info-card h3,
    .feature-card h3,
    .stat-card h3,
    .requirement-card h3,
    .contact-card h2,
    .contact-card h3,
    .form h2,
    .form h3,
    .quick-facts strong,
    .fact-row strong,
    .product-card h3,
    .service-row strong,
    .region,
    .panel:not(.dark-panel) h1,
    .panel:not(.dark-panel) h2,
    .panel:not(.dark-panel) h3{
        color:#063b27 !important;
    }

    .info-card p,
    .feature-card p,
    .stat-card p,
    .requirement-card p,
    .contact-card p,
    .form label,
    .quick-facts small,
    .fact-row small,
    .product-card p,
    .service-row p,
    .region small,
    .panel:not(.dark-panel) p,
    .panel:not(.dark-panel) li{
        color:#2e493d !important;
    }

    .card-icon,
    .card-icon *,
    .service-no,
    .requirement-card .service-no{
        color:#ffffff !important;
    }

    .main-nav{
        background:#fffefa !important;
    }
    .main-nav a{
        background:#ffffff !important;
        color:#063b27 !important;
    }
    .main-nav a.active,
    .main-nav a:hover{
        background:#063b27 !important;
        color:#ffffff !important;
    }
}

@media (max-width: 430px){
    .product-card{
        grid-template-columns:108px minmax(0,1fr) !important;
    }
    .product-card img{
        min-height:132px !important;
    }
    .panel img,
    .hero-card>img{
        height:225px !important;
    }
}

@media (max-width: 350px){
    .product-card{
        grid-template-columns:1fr !important;
    }
    .product-card img{
        height:170px !important;
        min-height:170px !important;
    }
}

/* ==========================================================
   Company profile page + compact header + HD no-crop images
   ========================================================== */
.site-header .header-inner{
    width:min(1260px,96%);
    min-height:62px;
    gap:12px;
}

.site-header .brand{
    gap:8px;
    flex:0 0 auto;
}

.site-header .brand img{
    width:42px;
    height:42px;
}

.site-header .brand strong{
    font-size:.96rem;
    letter-spacing:.13em;
}

.site-header .brand small{
    font-size:.50rem;
    letter-spacing:.045em;
    line-height:1.18;
}

.site-header .main-nav{
    max-width:none;
    flex-wrap:nowrap;
    gap:1px;
}

.site-header .main-nav a{
    font-size:.68rem;
    padding:6px 6px;
    letter-spacing:-.01em;
}

/* Keep all normal site images visible in full, not cropped. */
.image-placeholder,
.hero-card img,
.panel img,
.product-card img,
.collage img{
    object-fit:contain !important;
    object-position:center !important;
    background:#fffefa;
}

.collage{
    grid-auto-rows:auto;
    align-items:center;
}

.collage img,
.collage img:first-child{
    width:100%;
    height:190px !important;
    grid-row:auto;
    padding:2px;
}

.product-card img{
    height:190px !important;
    padding:8px;
}

.panel img.image-placeholder,
.image-placeholder{
    width:100%;
    height:auto !important;
    max-height:430px;
}

.profile-title{
    background:
        radial-gradient(circle at 10% 12%,rgba(240,201,106,.24),transparent 24%),
        linear-gradient(135deg,#fffefa 0%,#fff 55%,#f2e3c5 100%);
}

.profile-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px;
    margin-top:22px;
}

.profile-intro-section{
    padding-bottom:24px;
}

.profile-intro-card{
    display:grid;
    grid-template-columns:1fr auto;
    gap:22px;
    align-items:center;
    background:#fffefa;
    border:1px solid var(--line);
    border-radius:24px;
    box-shadow:var(--shadow);
    padding:24px;
}

.profile-intro-card h2{
    margin:8px 0 10px;
    font-size:clamp(1.5rem,3vw,2.3rem);
    text-transform:uppercase;
}

.profile-intro-card p{
    max-width:760px;
    font-weight:700;
    color:#28483a !important;
}

.profile-download-box{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:10px;
    min-width:260px;
}

.profile-pages-list{
    display:grid;
    gap:28px;
}

.profile-page-card{
    width:min(900px,100%);
    margin-inline:auto;
    background:#fffefa;
    border:1px solid var(--line);
    border-radius:24px;
    box-shadow:var(--shadow);
    overflow:hidden;
}

.profile-page-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    padding:14px 18px;
    background:linear-gradient(90deg,var(--green),var(--green-2));
    border-bottom:2px solid var(--gold);
}

.profile-page-head h3{
    margin:0;
    color:#fff !important;
    font-family:Arial, Helvetica, sans-serif;
    font-size:.94rem;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.profile-page-head span{
    flex:0 0 auto;
    color:#ffd978;
    font-size:.82rem;
    font-weight:900;
}

.profile-page-image{
    padding:18px;
    background:#f8f1e2;
}

.profile-page-image a{
    display:flex;
    justify-content:center;
}

.profile-page-image img{
    width:100%;
    max-width:840px;
    height:auto !important;
    object-fit:contain !important;
    object-position:center !important;
    border-radius:16px;
    background:#fffefa;
    box-shadow:0 10px 24px rgba(6,45,30,.13);
    filter:saturate(1.08) contrast(1.04) brightness(1.02);
}

.floating-profile-download{
    position:fixed;
    right:18px;
    bottom:18px;
    z-index:90;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:11px 17px;
    border-radius:999px;
    background:var(--green);
    color:#fff;
    font-size:.86rem;
    font-weight:900;
    box-shadow:0 14px 30px rgba(6,59,39,.25);
    border:1px solid rgba(255,255,255,.22);
}

.floating-profile-download:hover{
    background:var(--green-3);
}

@media (max-width:1200px){
    .site-header .nav-toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-width:40px;
        min-height:38px;
    }

    .site-header .main-nav{
        position:absolute;
        left:3%;
        right:3%;
        top:62px;
        background:#fffefa;
        border:1px solid var(--line);
        border-radius:18px;
        padding:12px;
        box-shadow:var(--shadow);
        display:none;
        flex-direction:column;
        align-items:stretch;
        max-height:calc(100vh - 86px);
        overflow-y:auto;
        z-index:80;
        flex-wrap:nowrap;
    }

    .site-header .main-nav.open{
        display:flex;
    }

    .site-header .main-nav a{
        display:block;
        width:100%;
        font-size:.88rem;
        padding:11px 12px;
        border-radius:12px;
        text-align:left;
        letter-spacing:0;
    }
}

@media (max-width:900px){
    .profile-intro-card{
        grid-template-columns:1fr;
    }

    .profile-download-box{
        justify-content:flex-start;
        min-width:0;
    }

    .profile-page-card{
        width:100%;
    }
}

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

    .collage img,
    .collage img:first-child{
        height:170px !important;
        padding:3px;
    }

    .product-card img{
        height:auto !important;
        min-height:0;
        max-height:none;
        padding:8px;
    }

    .profile-actions .btn,
    .profile-download-box .btn{
        width:100%;
    }

    .profile-intro-card{
        text-align:center;
        border-radius:18px;
        padding:18px;
    }

    .profile-download-box{
        justify-content:center;
    }

    .profile-pages-list{
        gap:18px;
    }

    .profile-page-card{
        border-radius:18px;
    }

    .profile-page-head{
        padding:12px 13px;
    }

    .profile-page-head h3{
        font-size:.78rem;
    }

    .profile-page-image{
        padding:8px;
    }

    .profile-page-image img{
        width:100%;
        max-width:100%;
        border-radius:12px;
        box-shadow:none;
    }

    .floating-profile-download{
        left:12px;
        right:12px;
        bottom:12px;
        width:auto;
        text-align:center;
    }

    body{
        padding-bottom:62px;
    }
}

@media (max-width:480px){
    .site-header .header-inner{
        min-height:58px;
    }

    .site-header .brand img{
        width:36px;
        height:36px;
        flex-basis:36px;
    }

    .site-header .brand strong{
        font-size:.82rem;
    }

    .site-header .brand small{
        font-size:.46rem;
        max-width:160px;
    }

    .site-header .main-nav{
        top:58px;
    }

    .collage{
        grid-template-columns:1fr;
    }

    .collage img,
    .collage img:first-child{
        height:auto !important;
        max-height:none;
    }
}
