
:root{
  --bg:#071411;
  --panel:#0c1f1a;
  --panel-2:#0f2b22;
  --card:#ffffff;
  --soft:#f3f6f1;
  --soft-2:#e8efe6;
  --text:#15231e;
  --text-2:#335045;
  --white:#ffffff;
  --green:#0f5f40;
  --green-2:#168d5b;
  --green-3:#1db56d;
  --gold:#d8b96a;
  --gold-2:#f0d58b;
  --line:rgba(12,67,45,.12);
  --line-2:rgba(255,255,255,.1);
  --radius:24px;
  --radius-lg:34px;
  --shadow-sm:0 12px 30px rgba(7,20,17,.08);
  --shadow-md:0 22px 56px rgba(7,20,17,.13);
  --shadow-lg:0 30px 90px rgba(7,20,17,.22);
  --container:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Arial,Helvetica,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(216,185,106,.10), transparent 28%),
    radial-gradient(circle at top right, rgba(29,181,109,.10), transparent 22%),
    linear-gradient(180deg, #fbfcfa 0%, #eef3ec 100%);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img{max-width:100%;display:block;border-radius:22px}
a{color:var(--green);text-decoration:none}
a:hover{text-decoration:underline}
.container{width:min(calc(100% - 32px), var(--container));margin:0 auto}
.narrow{width:min(calc(100% - 32px), 860px);margin:0 auto}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:12px;top:12px;background:#fff;padding:10px 14px;border-radius:12px;z-index:200}
.site-header{
  position:sticky;top:0;z-index:120;
  backdrop-filter:blur(18px);
  background:rgba(250,252,249,.88);
  border-bottom:1px solid rgba(12,67,45,.09);
  box-shadow:0 6px 24px rgba(7,20,17,.04);
}
.header-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:86px}
.brand{display:flex;align-items:center;gap:14px;color:var(--text)}
.brand:hover{text-decoration:none}
.brand-mark{
  width:56px;height:56px;border-radius:18px;background:#fff;border:1px solid var(--line);
  overflow:hidden;box-shadow:var(--shadow-sm)
}
.brand-mark img{width:100%;height:100%;object-fit:cover;border-radius:0}
.brand-text strong{display:block;font-size:1.04rem;letter-spacing:-.02em}
.brand-text small{display:block;color:var(--text-2);font-size:.87rem}
.site-nav{display:flex;align-items:center;gap:18px}
.site-nav a{font-weight:700;color:var(--text);font-size:.97rem;position:relative}
.site-nav a:not(.nav-cta)::after{
  content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;border-radius:99px;
  background:linear-gradient(90deg,var(--green-2),var(--gold));transition:width .25s ease
}
.site-nav a:not(.nav-cta):hover::after{width:100%}
.nav-cta{
  padding:12px 18px;border-radius:999px;background:linear-gradient(135deg,var(--green),var(--green-2));
  color:#fff!important;box-shadow:0 14px 34px rgba(22,141,91,.22)
}
.nav-cta:hover{text-decoration:none;filter:brightness(1.03)}
.menu-toggle{
  display:none;border:none;background:linear-gradient(135deg,var(--green),var(--green-2));
  color:#fff;padding:10px 14px;border-radius:999px;font-weight:800
}
.hero{
  padding:88px 0 54px;overflow:hidden;position:relative;
  background:
    radial-gradient(circle at 10% 6%, rgba(216,185,106,.17), transparent 24%),
    radial-gradient(circle at 90% 0%, rgba(29,181,109,.12), transparent 22%),
    linear-gradient(180deg, #fbfcfa 0%, #edf4ee 100%);
}
.hero::before{
  content:"";position:absolute;right:-120px;top:-120px;width:460px;height:460px;border-radius:50%;
  background:radial-gradient(circle, rgba(29,181,109,.12), transparent 68%);filter:blur(10px);pointer-events:none
}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;
  background:rgba(22,141,91,.08);border:1px solid rgba(22,141,91,.16);
  color:var(--green);font-size:.81rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase
}
.hero h1,.section-head h2,.section-head h3,.contact-panel h3{
  letter-spacing:-.04em;text-wrap:balance
}
.hero h1{
  font-size:clamp(2.45rem, 4vw, 5.15rem);line-height:1.02;margin:16px 0 18px;max-width:12ch
}
.hero .lead{
  font-size:1.12rem;color:var(--text-2);max-width:68ch;line-height:1.85
}
.hero-tagline{font-weight:800;color:var(--green);margin:16px 0 0}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:28px 0 20px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:54px;padding:14px 24px;border-radius:999px;font-weight:900;letter-spacing:.01em;
  border:1px solid transparent;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease
}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn-primary{
  background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff;
  box-shadow:0 18px 40px rgba(22,141,91,.24)
}
.btn-secondary{background:#fff;color:var(--text);border-color:var(--line);box-shadow:var(--shadow-sm)}
.btn-ghost{background:rgba(255,255,255,.72);color:var(--green);border-color:rgba(22,141,91,.16)}
.hero-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.hero-badge{
  background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:20px;
  padding:16px 16px 15px;box-shadow:var(--shadow-sm)
}
.hero-badge strong{display:block;font-size:1.06rem;color:var(--text)}
.hero-badge span{display:block;color:var(--text-2);font-size:.95rem}
.hero-visual{
  display:grid;gap:16px;position:relative
}
.hero-main{
  position:relative;overflow:hidden;border-radius:30px;box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.5)
}
.hero-main img{width:100%;min-height:560px;object-fit:cover}
.hero-main::after{
  content:"";position:absolute;inset:auto 0 0 0;height:45%;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.22))
}
.hero-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.mini-card,.info-card,.contact-panel,.quote-card,.glass-card,.pillar-card,.blog-card,.city-card,.metric-card,.support-card{
  background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-sm)
}
.mini-card{overflow:hidden}
.mini-card img{width:100%;height:100%;min-height:220px;object-fit:cover}
.info-card{padding:22px}
.info-card h3{margin:0 0 8px;font-size:1.28rem;color:var(--text)}
.info-card p{margin:0;color:var(--text-2)}
.quote-card{
  margin-top:20px;padding:20px 22px;border-left:5px solid var(--gold);
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.78))
}
.quote-card strong{display:block;font-size:1.08rem}
.quote-card span{display:block;color:var(--text-2);margin-top:6px}
.section{padding:86px 0}
.section-alt{
  background:
    radial-gradient(circle at top right, rgba(216,185,106,.08), transparent 18%),
    linear-gradient(180deg, rgba(15,95,64,.04), rgba(15,95,64,.02));
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)
}
.section-dark{
  color:#edf7f1;
  background:
    radial-gradient(circle at top left, rgba(216,185,106,.16), transparent 20%),
    linear-gradient(135deg, #0a1713 0%, #0d261d 60%, #102d22 100%);
}
.section-dark p,.section-dark li,.section-dark .section-note{color:#d8e6de}
.section-dark .section-head h2,.section-dark h3,.section-dark h4{color:#fff}
.section-dark .eyebrow{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:#e5f7ea}
.section-head{margin-bottom:26px}
.section-head h2{font-size:clamp(1.9rem, 2.7vw, 3.15rem);line-height:1.08;margin:12px 0 10px}
.section-note{max-width:78ch;color:var(--text-2);line-height:1.8}
.two-col{display:grid;grid-template-columns:1.02fr .98fr;gap:30px;align-items:start}
.stack{display:grid;gap:18px}
.rich-text p{margin:0 0 16px;color:var(--text-2)}
.rich-text strong{color:var(--text)}
.highlight-line{
  display:block;margin-top:18px;padding:16px 18px;border-radius:20px;
  background:linear-gradient(135deg,rgba(22,141,91,.10),rgba(216,185,106,.16));
  font-weight:800;color:var(--green)
}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.metric-card{padding:22px}
.metric-card strong{display:block;font-size:2rem;line-height:1;color:var(--green)}
.metric-card span{display:block;margin-top:8px;color:var(--text-2);font-weight:700}
.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pillar-card{padding:28px}
.pillar-icon{
  width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
  background:linear-gradient(180deg,rgba(216,185,106,.30),rgba(216,185,106,.12));
  color:var(--green);font-weight:900;margin-bottom:16px
}
.pillar-card h3{margin:0 0 8px;font-size:1.35rem}
.pillar-card p{margin:0;color:var(--text-2)}
.pillar-card ul{margin:12px 0 0;padding-left:20px;color:var(--text-2)}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.support-card{padding:24px}
.support-card h3{margin:0 0 8px}
.support-card p{margin:0;color:var(--text-2)}
.check-list{padding-left:20px;margin:0}
.check-list li{margin-bottom:10px;color:inherit}
.feature-band{
  margin-top:28px;padding:24px 26px;border-radius:28px;
  background:linear-gradient(135deg,var(--green),#0a3d29);color:#fff;
  box-shadow:var(--shadow-lg);display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:center
}
.feature-band p{margin:8px 0 0;color:#e9f6ef}
.feature-band .btn-secondary{background:#fff;color:var(--green)}
.visual-grid{
  display:grid;grid-template-columns:1.1fr .9fr;gap:18px
}
.visual-grid .tall{grid-row:span 2}
.visual-grid figure{margin:0;overflow:hidden;border-radius:26px;box-shadow:var(--shadow-md)}
.visual-grid img{width:100%;height:100%;object-fit:cover}
.visual-grid figcaption{padding:14px 16px;background:#fff;color:var(--text-2)}
.note-soft{
  margin-top:18px;padding:18px 20px;border-radius:20px;background:rgba(255,255,255,.82);border:1px solid var(--line)
}
.note-soft p{margin:0;color:var(--text-2)}
.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.social-panel{
  overflow:hidden;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-md)
}
.social-panel img{width:100%;height:100%;object-fit:cover}
.social-panel .copy{padding:24px}
.social-panel .copy h3{margin:0 0 8px}
.embed-wrap{position:relative;padding-top:56.25%;border-radius:26px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--line);background:#08120f}
.embed-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.contact-grid{display:grid;grid-template-columns:1fr .95fr;gap:20px}
.contact-panel{padding:26px}
.contact-panel h3{margin:0 0 10px;font-size:1.5rem}
.contact-panel p,.contact-panel li{color:var(--text-2)}
.contact-list{display:grid;gap:12px;margin:18px 0 22px;padding:0;list-style:none}
.contact-list a{font-weight:800}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:grid;gap:8px}
.field.full{grid-column:1/-1}
label{font-weight:700;color:var(--text)}
input,textarea{
  width:100%;border-radius:18px;border:1px solid var(--line);padding:14px 15px;font:inherit;color:var(--text);
  background:#fff
}
textarea{min-height:140px;resize:vertical}
.small-note{font-size:.94rem;color:var(--text-2)}
.blog-tools{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px
}
.search-box{
  display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;border:1px solid var(--line);
  border-radius:999px;box-shadow:var(--shadow-sm);min-width:min(100%, 420px)
}
.search-box input{border:none;padding:0;background:transparent;outline:none}
.filter-pills{display:flex;flex-wrap:wrap;gap:10px}
.filter-pill{
  border:none;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);
  font-weight:800;color:var(--text-2);cursor:pointer
}
.filter-pill.is-active{background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff;border-color:transparent}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.blog-card{overflow:hidden;display:flex;flex-direction:column}
.blog-card img{width:100%;height:220px;object-fit:cover;border-bottom-left-radius:0;border-bottom-right-radius:0}
.blog-card .copy{padding:20px}
.meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.meta span{
  display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(22,141,91,.08);
  border:1px solid rgba(22,141,91,.12);font-size:.78rem;font-weight:800;color:var(--green)
}
.blog-card h3{margin:0 0 8px;font-size:1.22rem}
.blog-card p{margin:0 0 14px;color:var(--text-2)}
.text-link{font-weight:900;color:var(--green)}
.blog-empty{margin-top:18px;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line);color:var(--text-2)}
.cities-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.city-card{
  position:relative;padding:20px 18px 18px;overflow:hidden
}
.city-card::before{
  content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--green-2),var(--gold))
}
.city-card h3{margin:0 0 6px;font-size:1.05rem}
.city-card p{margin:0 0 14px;color:var(--text-2);font-size:.96rem}
.city-card .city-actions{display:flex;gap:10px;flex-wrap:wrap}
.city-card .mini-btn{
  display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border-radius:999px;
  background:#fff;border:1px solid var(--line);font-weight:800;color:var(--green)
}
.city-card .mini-btn:hover{text-decoration:none}
.faq-list{display:grid;gap:14px}
.faq-list details{
  background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 20px;box-shadow:var(--shadow-sm)
}
.faq-list summary{cursor:pointer;font-weight:900;color:var(--text)}
.faq-list p{color:var(--text-2)}
.footer{
  color:#eaf2ed;background:
    radial-gradient(circle at top left, rgba(216,185,106,.15), transparent 18%),
    linear-gradient(180deg,#08120f 0%, #0c1d18 100%);
}
.footer-grid{
  padding:60px 0 32px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px
}
.footer h3,.footer h4{color:#fff;margin-top:0}
.footer a{color:#d4ebe1}
.footer a:hover{text-decoration:none;color:#fff}
.footer p,.footer li{color:#c2d7ce}
.footer-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.footer-bottom{border-top:1px solid var(--line-2)}
.footer-bottom-wrap{
  min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap
}
.goldigsv{display:inline-flex;align-items:center;gap:8px;font-weight:800}
.whatsapp-float{
  position:fixed;right:18px;bottom:18px;z-index:150;padding:15px 18px;border-radius:999px;
  background:linear-gradient(135deg,#18b960,#11a252);color:#fff;font-weight:900;box-shadow:0 18px 45px rgba(24,185,96,.28)
}
.whatsapp-float:hover{text-decoration:none}
@media (max-width:1100px){
  .hero-grid,.two-col,.social-grid,.contact-grid,.visual-grid,.feature-band{grid-template-columns:1fr}
  .hero h1{max-width:none}
  .metric-grid{grid-template-columns:repeat(2,1fr)}
  .pillars-grid,.cards-grid,.blog-grid{grid-template-columns:1fr 1fr}
  .cities-grid{grid-template-columns:repeat(3,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .site-nav{
    position:absolute;top:86px;left:0;right:0;display:none;flex-direction:column;align-items:flex-start;
    padding:20px 16px 22px;background:rgba(250,252,249,.98);border-bottom:1px solid var(--line);box-shadow:0 14px 40px rgba(7,20,17,.08)
  }
  .site-nav.is-open{display:flex}
  .menu-toggle{display:inline-flex}
  .hero-badges,.hero-mini-grid,.pillars-grid,.cards-grid,.blog-grid,.cities-grid,.metric-grid,.form-grid{grid-template-columns:1fr}
  .blog-tools{align-items:stretch}
  .search-box{min-width:100%}
}
@media (max-width:560px){
  .header-wrap{min-height:78px}
  .brand-mark{width:50px;height:50px}
  .brand-text small{display:none}
  .hero{padding:68px 0 40px}
  .hero h1{font-size:2.25rem}
  .btn{width:100%}
  .hero-actions{align-items:stretch}
  .section{padding:62px 0}
  .footer-grid{grid-template-columns:1fr}
}
