:root{
  --green:#063d25; --green-2:#0b5130; --green-3:#0f6a3d; --lime:#b8d94d;
  --gold:#efa900; --cream:#f5f2e8; --paper:#fbfaf6; --ink:#17241d; --muted:#66736b;
  --line:#dfe5dc; --white:#fff; --shadow:0 24px 70px rgba(4,42,25,.14);
  --radius:24px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
a{text-decoration:none;color:inherit}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(4,42,25,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;color:#fff}
.brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(184,217,77,.5);border-radius:50%;font-size:18px}
.brand strong{display:block;font:700 23px/1 "Playfair Display",serif;letter-spacing:-.5px}
.brand strong span{color:var(--lime)}
.brand small{display:block;font-size:8px;letter-spacing:4px;margin-top:4px;text-align:center;color:#cbd8c7}
.nav-links{display:flex;align-items:center;gap:28px;color:#dfe8df;font-size:14px;font-weight:500}
.nav-links a{transition:.25s}
.nav-links a:hover{color:var(--lime)}
.nav-cta{border:1px solid rgba(184,217,77,.7);padding:10px 16px;border-radius:999px;color:#fff!important}
.nav-toggle{display:none;background:none;border:0}
.nav-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px}

.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 28%,rgba(118,155,42,.32),transparent 28%),linear-gradient(125deg,#031f13 0%,#073b24 56%,#0a4d2d 100%);color:#fff}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,31,19,.96),rgba(3,31,19,.72) 50%,rgba(3,31,19,.18)),url("assets/rainbow-elite-h1.png") right 8% center/auto 92% no-repeat;opacity:.42}
.hero-grid{position:relative;min-height:610px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:30px;padding:72px 0 52px}
.eyebrow{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:#5e792d;font-weight:700;margin-bottom:16px}
.eyebrow.light{color:#c2dc62}
.hero-copy h1{font:700 clamp(48px,6vw,78px)/.98 "Playfair Display",serif;letter-spacing:-2.5px}
.hero-copy h1 em,.section-heading h2 em,.about-copy h2 em{font-style:normal;color:var(--lime)}
.hero-text{max-width:600px;margin:24px 0;color:#d5dfd8;font-size:17px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;padding:14px 22px;font-weight:700;border:1px solid transparent;transition:.25s}
.btn-primary{background:var(--lime);color:#14301d;box-shadow:0 10px 30px rgba(184,217,77,.18)}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.04)}
.btn-ghost{border-color:rgba(255,255,255,.25);color:#fff}
.btn-ghost:hover{border-color:var(--lime);color:var(--lime)}
.btn-light{background:#fff;color:var(--green)}
.play{display:grid;place-items:center;border:1px solid currentColor;width:24px;height:24px;border-radius:50%;font-size:11px}
.hero-proof{display:flex;gap:34px;margin-top:42px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14)}
.hero-proof b{display:block;font-size:16px}.hero-proof span{display:block;color:#aebeb3;font-size:12px;margin-top:2px}
.hero-product{position:relative;display:flex;justify-content:center;align-items:center}
.hero-card{position:relative;width:min(360px,90%);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);border-radius:28px;padding:16px;box-shadow:var(--shadow);backdrop-filter:blur(10px);transform:rotate(2deg)}
.hero-card img{display:block;width:100%;height:430px;object-fit:contain;object-position:center;border-radius:18px;background:transparent}
.hero-card-top,.hero-card-bottom{display:flex;align-items:center;justify-content:space-between;padding:8px 4px;color:#dbe6dc;font-size:11px;letter-spacing:1.5px}
.hero-card-bottom strong{display:block;color:#fff;font-size:25px;letter-spacing:1px}.hero-card-bottom small{display:block;color:var(--lime)}
.hero-card-bottom a{color:var(--lime);font-weight:700}
.hero-orbit{position:absolute;border:1px solid rgba(184,217,77,.25);border-radius:50%;width:460px;height:460px}.orbit-two{width:540px;height:540px;border-color:rgba(239,169,0,.15);transform:rotate(22deg)}
.hero-bottom{background:rgba(0,0,0,.16);border-top:1px solid rgba(255,255,255,.1)}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:18px 0}
.trust-strip>div{display:flex;gap:12px;align-items:center;padding:10px 20px;border-right:1px solid rgba(255,255,255,.1)}.trust-strip>div:last-child{border:0}
.trust-icon{width:34px;height:34px;border:1px solid #78953a;border-radius:50%;display:grid;place-items:center;color:var(--lime)}
.trust-strip b{display:block;font-size:13px}.trust-strip small{display:block;color:#a9b9ae;font-size:11px}

.section{padding:100px 0}
.section-heading{max-width:730px}.section-heading.centered{text-align:center;margin:0 auto 42px}
.section-heading h2,.quality-copy h2,.about-copy h2,.contact-copy h2{font:700 clamp(38px,5vw,58px)/1.05 "Playfair Display",serif;letter-spacing:-1.5px}
.section-heading p:last-child{color:var(--muted);margin-top:16px}
.filter-bar{display:flex;justify-content:center;gap:8px;margin-bottom:34px}
.filter{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 18px;color:#536158}.filter.active{background:var(--green);color:#fff;border-color:var(--green)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.product-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.3s;box-shadow:0 8px 30px rgba(10,50,30,.05)}
.product-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.product-image-wrap{position:relative;height:500px;background:#f0f0ec;display:flex;align-items:center;justify-content:center;overflow:hidden}
.product-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center}
.product-tag{position:absolute;top:15px;left:15px;z-index:2;background:var(--green);color:#fff;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:1.2px}
.product-body{padding:24px}
.product-meta{display:flex;justify-content:space-between;color:#78857c;font-size:11px;text-transform:uppercase;letter-spacing:1.2px}
.product-body h3{font:700 30px/1.1 "Playfair Display",serif;margin:9px 0}
.product-body p{color:var(--muted);font-size:14px}
.product-pills{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0}.product-pills span{background:#eef4df;color:#31551e;border-radius:999px;padding:6px 9px;font-size:10px}
.text-btn{border:0;background:none;color:var(--green);font-weight:800;padding:0}.text-btn span{color:var(--gold);margin-left:4px}

.quality-section{padding:100px 0;background:var(--green);color:#fff;position:relative;overflow:hidden}.quality-section:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;right:-220px;top:-180px;background:rgba(184,217,77,.08)}
.quality-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.quality-copy>p:not(.eyebrow){color:#b9c8be;margin:20px 0 28px;max-width:540px}
.quality-cards{display:grid;gap:12px}
.quality-card{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:start;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.04)}
.quality-card>span{font-size:12px;color:var(--lime);font-weight:800}.quality-card h3{font-size:18px}.quality-card p{color:#aebeb4;font-size:13px;margin-top:4px}

.about-section{background:var(--cream)}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.about-image{position:relative;min-height:540px;display:flex;align-items:center;justify-content:center;background:#e8e7dd;border-radius:28px;overflow:hidden}
.about-image img{height:570px;max-width:100%;object-fit:cover}
.image-note{position:absolute;left:22px;bottom:22px;background:rgba(3,45,26,.93);color:#fff;padding:15px 18px;border-radius:14px}.image-note span{display:block;color:var(--lime);font-size:10px;text-transform:uppercase;letter-spacing:1.5px}.image-note strong{font-size:14px}
.about-copy>p:not(.eyebrow){color:var(--muted);margin:20px 0 30px}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #d5d9ce}
.stat-grid div{padding:18px 0;border-bottom:1px solid #d5d9ce}.stat-grid div:nth-child(odd){border-right:1px solid #d5d9ce;padding-right:20px}.stat-grid div:nth-child(even){padding-left:20px}
.stat-grid strong{display:block;color:var(--green);font:700 27px "Playfair Display",serif}.stat-grid span{font-size:12px;color:#68746c}

.resources-section{padding:100px 0;background:#fff}
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}
.resource-card{padding:30px;border:1px solid var(--line);border-radius:22px;background:var(--paper);transition:.25s}.resource-card:hover{transform:translateY(-5px);border-color:#bfd38b}
.resource-card span{color:#809742;font-size:11px}.resource-card h3{font:700 28px "Playfair Display",serif;margin:20px 0 7px}.resource-card p{color:var(--muted);font-size:14px;margin-bottom:22px}.resource-card b{font-size:12px;color:var(--green)}

.contact-section{padding:100px 0;background:linear-gradient(135deg,#052c1b,#0a4c2c);color:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.contact-copy>p:not(.eyebrow){color:#b8c8bd;margin:20px 0 32px;max-width:520px}
.contact-details{display:grid;gap:18px}.contact-details>div{display:flex;gap:14px;align-items:center}.contact-details span{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(184,217,77,.4);border-radius:50%;color:var(--lime)}.contact-details small{display:block;color:#91a499;font-size:10px;text-transform:uppercase;letter-spacing:1px}.contact-details strong{font-size:14px}
.contact-form{background:#fff;color:var(--ink);padding:30px;border-radius:24px;box-shadow:var(--shadow)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form label{display:block;font-size:12px;font-weight:700;color:#47554c;margin-bottom:15px}
.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;border:1px solid #dbe2d9;border-radius:12px;padding:12px 13px;margin-top:7px;outline:none;background:#fbfcfa;color:var(--ink)}
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:#8eb13d;box-shadow:0 0 0 3px rgba(142,177,61,.12)}
.full{width:100%;border:0}.form-note{font-size:10px;color:#849087;text-align:center;margin-top:10px}

.footer{background:#021e12;color:#d5dfd8;padding:28px 0 18px}
.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-links{display:flex;gap:22px;font-size:12px;color:#aab9af}.footer-links a:hover{color:var(--lime)}
.footer-bottom{display:flex;justify-content:space-between;color:#718278;font-size:10px;padding-top:16px}

.modal{display:none;position:fixed;inset:0;z-index:100;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,20,12,.72);backdrop-filter:blur(7px)}
.modal-dialog{position:relative;width:min(880px,100%);display:grid;grid-template-columns:.85fr 1.15fr;background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.3);z-index:1}.modal-media{background:#efeee8;min-height:500px}.modal-media img{width:100%;height:100%;object-fit:cover}.modal-content{padding:46px}.modal-content h2{font:700 48px/1.05 "Playfair Display",serif;margin-bottom:15px}.modal-content>p:not(.eyebrow){color:var(--muted);margin-bottom:22px}.modal-specs{display:grid;gap:10px;margin-bottom:28px}.modal-spec{display:flex;justify-content:space-between;padding-bottom:9px;border-bottom:1px solid var(--line);font-size:13px}.modal-spec span:first-child{color:#7a867d}.modal-close{position:absolute;right:15px;top:12px;z-index:2;border:0;background:#fff;width:38px;height:38px;border-radius:50%;font-size:25px;box-shadow:0 6px 20px rgba(0,0,0,.1)}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}

@media(max-width:900px){
  .nav-links{gap:15px}.nav-cta{padding:9px 12px}
  .hero-grid,.quality-grid,.split,.contact-grid{grid-template-columns:1fr}
  .hero-grid{padding-top:55px}.hero-product{min-height:520px}.hero-card{width:min(380px,85vw)}
  .product-grid{grid-template-columns:1fr 1fr}.resource-grid{grid-template-columns:1fr}
  .quality-grid{gap:40px}.about-image{min-height:420px}.about-image img{height:460px}
}
@media(max-width:680px){
  .container{width:min(100% - 28px,1160px)}
  .nav{height:68px}.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:#032619;padding:16px;flex-direction:column;align-items:stretch;border-bottom:1px solid rgba(255,255,255,.1)}.nav-links.open{display:flex}.nav-links a{padding:10px}.nav-cta{text-align:center}
  .hero-grid{min-height:auto;padding:52px 0 30px}.hero-copy h1{font-size:50px}.hero-text{font-size:15px}.hero-proof{gap:16px}.hero-proof span{font-size:10px}
  .hero-product{min-height:430px}.hero-card img{height:350px}.hero-orbit{width:360px;height:360px}.orbit-two{width:420px;height:420px}
  .trust-strip{grid-template-columns:1fr 1fr}.trust-strip>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.1);padding:12px 8px}
  .section,.quality-section,.resources-section,.contact-section{padding:70px 0}
  .product-grid{grid-template-columns:1fr}.product-image-wrap{height:430px}
  .form-row{grid-template-columns:1fr}.modal-dialog{grid-template-columns:1fr;max-height:92vh;overflow:auto}.modal-media{min-height:300px;height:300px}.modal-content{padding:30px}.modal-content h2{font-size:38px}
  .footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:16px}.footer-links{flex-wrap:wrap}
}
