
:root{
  --bg:#f7f5ef;
  --surface:#ffffff;
  --surface-alt:#fcfbf7;
  --dark:#0f1b1b;
  --dark-2:#172523;
  --text:#273131;
  --muted:#667271;
  --line:#d9ddd6;
  --gold:#c69636;
  --gold-dark:#946d22;
  --green:#2f5c4c;
  --green-2:#23483b;
  --shadow:0 14px 34px rgba(11, 22, 22, 0.08);
  --radius:20px;
  --container:min(1180px, calc(100% - 2rem));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:Arial, Helvetica, sans-serif; line-height:1.6;
}
img{max-width:100%; display:block}
a{text-decoration:none; color:inherit}
.container{width:var(--container); margin:0 auto}

.site-header{
  position:sticky; top:0; z-index:60;
  background:rgba(247,245,239,.94); backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(0,0,0,.06);
}
.nav-wrap{
  min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.brand{display:flex; align-items:center; gap:14px}
.brand-text{display:flex; flex-direction:column; gap:2px}
.brand-text strong{font-size:1.1rem; color:var(--dark)}
.brand-text span{font-size:.82rem; color:var(--muted)}
.brand-mark{
  width:50px; height:50px; border-radius:14px;
  background:linear-gradient(145deg,#21362f,#386250);
  box-shadow:var(--shadow); position:relative; flex:0 0 50px;
}
.mark-circle{
  position:absolute; width:12px; height:12px; border-radius:50%;
  background:#e1af43; top:8px; right:8px;
}
.mark-bar{
  position:absolute; left:12px; bottom:12px; width:26px; height:6px;
  background:#f0e2b5; border-radius:6px;
}
.mark-peak{
  position:absolute; left:14px; bottom:18px; width:0; height:0;
  border-left:10px solid transparent; border-right:10px solid transparent;
  border-bottom:16px solid #d7c488;
}
.main-nav{display:flex; gap:1.15rem; align-items:center}
.main-nav a{font-size:.95rem; color:var(--dark); opacity:.88}
.main-nav a:hover{color:var(--green)}
.nav-toggle{
  display:none; border:1px solid var(--line); background:var(--surface);
  border-radius:10px; padding:.65rem .92rem; font:inherit;
}

.hero{
  position:relative; min-height:82vh; display:grid; place-items:center; overflow:hidden; background:#121d1d;
}
.hero-bg{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.hero-overlay{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(7,12,12,.76), rgba(7,12,12,.42) 54%, rgba(7,12,12,.18));
}
.hero-content{position:relative; z-index:1; padding:5.8rem 0}
.hero-copy{max-width:760px; color:#fff}
.eyebrow{
  display:inline-block; padding:.4rem .75rem; border-radius:999px;
  background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.16);
  font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; font-weight:700;
}
.hero h1{
  margin:.95rem 0 1rem; font-size:clamp(2.25rem, 4vw, 4.35rem); line-height:1.03; max-width:12.5ch;
}
.lead, .lead-dark{font-size:1.08rem; max-width:62ch}
.lead{color:rgba(255,255,255,.92)}
.lead-dark{color:var(--muted)}
.hero-actions,.cta-actions,.form-actions{display:flex; flex-wrap:wrap; gap:.9rem; margin-top:1.5rem}

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  min-height:48px; padding:.85rem 1.2rem; border-radius:999px; font-weight:700;
  border:1px solid transparent; transition:.18s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--gold); color:#151515}
.btn-primary:hover{background:#d7a342}
.btn-secondary{background:transparent; color:#fff; border-color:rgba(255,255,255,.35)}
.btn-secondary:hover{background:rgba(255,255,255,.08)}
.on-light{color:var(--dark); border-color:var(--line)}
.on-light:hover{background:#f2f0e8}

.trust-bar{background:var(--surface); border-bottom:1px solid var(--line)}
.trust-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; padding:1rem 0;
}
.trust-grid div{display:flex; flex-direction:column; gap:.18rem}
.trust-grid strong{font-size:.9rem; color:var(--dark)}
.trust-grid span{font-size:.92rem; color:var(--muted)}

.section{padding:5rem 0}
.section.light{background:var(--surface-alt)}
.section.dark{background:var(--dark); color:#eef1ef}
.section-tag{
  color:var(--gold-dark); text-transform:uppercase; letter-spacing:.08em; font-size:.8rem; font-weight:700; margin-bottom:.4rem;
}
.section.dark .section-tag{color:#e6c670}
.page-hero{
  padding:4.4rem 0 2.4rem; background:linear-gradient(180deg, #fff, #f8f5ee);
  border-bottom:1px solid var(--line);
}
.page-hero.slim h1{font-size:clamp(2rem, 3.6vw, 3.6rem); line-height:1.08; max-width:14ch; margin:.15rem 0 .8rem}
.section h2{font-size:clamp(1.8rem,3vw,3rem); line-height:1.14; margin:.1rem 0 1rem; color:inherit}
.two-col{display:grid; grid-template-columns:1.16fr .84fr; gap:2rem; align-items:start}
.info-card, .card, .download-card, .image-card, .model-card{
  background:var(--surface); border-radius:var(--radius); box-shadow:var(--shadow);
}
.info-card{padding:1.45rem; border:1px solid var(--line)}
.info-card.large{padding:1.65rem}
.info-card h3{margin:.2rem 0 .55rem; color:var(--dark)}
.feature-list{padding-left:1.2rem}
.feature-list li{margin:.55rem 0}
.text-link{color:var(--green); font-weight:700}
.text-link:hover{text-decoration:underline}

.card-grid{display:grid; gap:1.2rem; margin-top:1.5rem}
.card-grid.four{grid-template-columns:repeat(4,1fr)}
.card-grid.three{grid-template-columns:repeat(3,1fr)}
.card-grid.two{grid-template-columns:repeat(2,1fr)}
.card{padding:1.4rem; border:1px solid var(--line)}
.card h3{margin:.1rem 0 .5rem; color:var(--dark)}

.model-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:1.4rem}
.model-card{overflow:hidden; border:1px solid var(--line)}
.model-card img{width:100%; height:295px; object-fit:cover}
.model-content{padding:1.4rem}
.model-content h3{margin-top:0; color:var(--dark)}
.model-content ul{padding-left:1.2rem}
.model-content li{margin:.45rem 0}

.service-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; margin-top:1.5rem}
.service{
  padding:1.35rem; border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.03);
}
.service h3{margin-top:0; color:#fff}
.service p{color:rgba(255,255,255,.78)}
.service.light-card{
  background:#fff; border:1px solid var(--line); color:var(--text); box-shadow:var(--shadow);
}
.service.light-card h3{color:var(--dark)}
.service.light-card p{color:var(--muted)}

.image-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:1.4rem}
.image-card{overflow:hidden}
.image-card img{width:100%; height:360px; object-fit:cover}
.image-card figcaption{padding:1rem 1.1rem; color:var(--muted)}

.download-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; margin-top:1.5rem}
.download-card{
  padding:1.35rem; border:1px solid var(--line); display:flex; flex-direction:column; gap:.7rem;
}
.download-card h3{margin:0; color:var(--dark)}
.download-card p{margin:0 0 .2rem}

.tabs{display:flex; gap:.6rem; flex-wrap:wrap; margin-bottom:1rem}
.tab{
  border:1px solid var(--line); background:var(--surface); border-radius:999px;
  padding:.75rem 1rem; cursor:pointer; font:inherit; font-weight:700; color:var(--dark);
}
.tab.active{background:var(--green); border-color:var(--green); color:#fff}
.join-form{
  display:none; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
  padding:1.35rem; box-shadow:var(--shadow);
}
.join-form.active{display:block}
.form-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:1rem}
label{
  display:flex; flex-direction:column; gap:.42rem; font-size:.94rem; font-weight:700; color:var(--dark);
}
input, select, textarea{
  width:100%; padding:.85rem .9rem; border-radius:12px; border:1px solid #cfd6d0; background:#fff;
  font:inherit; color:var(--text);
}
textarea{resize:vertical; min-height:120px}

.cta-band{
  display:flex; justify-content:space-between; align-items:center; gap:1.5rem;
}
.small{font-size:.94rem; color:rgba(255,255,255,.72)}

.site-footer{padding:2.25rem 0; background:#121c1c; color:rgba(255,255,255,.82)}
.footer-grid{display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:1.6rem}
.site-footer h3,.site-footer h4{color:#fff; margin:.2rem 0 .6rem}
.site-footer a{color:#dcc98e}

@media (max-width: 1020px){
  .card-grid.four, .service-grid, .download-grid, .footer-grid, .two-col, .image-grid, .model-grid {grid-template-columns:1fr 1fr}
  .card-grid.three{grid-template-columns:1fr 1fr}
}
@media (max-width: 760px){
  .nav-toggle{display:block}
  .main-nav{
    display:none; position:absolute; top:76px; left:0; right:0; background:var(--surface);
    flex-direction:column; align-items:flex-start; padding:1rem; border-bottom:1px solid var(--line);
  }
  .main-nav.open{display:flex}
  .trust-grid, .card-grid.four, .card-grid.three, .card-grid.two, .service-grid, .download-grid, .footer-grid, .two-col, .image-grid, .model-grid, .form-grid {grid-template-columns:1fr}
  .hero{min-height:76vh}
  .hero h1, .page-hero.slim h1 {max-width:none}
  .cta-band{flex-direction:column; align-items:flex-start}
}
