*{box-sizing:border-box}
[hidden]{display:none !important}
:root{
  --text:#ffffff;
  --muted:#dfe7df;
  --yellow:#d6b36b;
}
html,body{
  margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;
  background:
    radial-gradient(circle at top left, rgba(80,109,79,.15), transparent 30%),
    radial-gradient(circle at top right, rgba(166,139,91,.14), transparent 24%),
    linear-gradient(180deg,#09110d 0%,#132019 100%);
  color:var(--text)
}
body{min-height:100vh}
.hero{
  position:relative;min-height:560px;display:flex;align-items:center;justify-content:center;
  padding:40px 18px 80px;overflow:hidden;
  background:
    radial-gradient(circle at 20% 20%, rgba(154,125,82,.18), transparent 24%),
    radial-gradient(circle at 80% 25%, rgba(56,104,77,.22), transparent 24%),
    radial-gradient(circle at 50% 85%, rgba(89,124,98,.18), transparent 24%),
    linear-gradient(135deg,#0a120d 0%, #15241b 50%, #0d1711 100%);
}
.hero-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(transparent 96%, rgba(255,255,255,.04) 96%),
    linear-gradient(90deg, transparent 96%, rgba(255,255,255,.035) 96%);
  background-size:42px 42px;opacity:.22;pointer-events:none;
}
.hero-content{position:relative;z-index:1;width:min(1120px,100%);text-align:center}
.logo{
  display:inline-block;padding:12px 24px;border-radius:999px;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);font-weight:800;letter-spacing:3px;font-size:22px;margin-bottom:18px;
  box-shadow:0 8px 24px rgba(255,255,255,.04) inset, 0 10px 30px rgba(0,0,0,.18);
}
.hero h1{margin:0;font-size:clamp(42px,7vw,82px);line-height:1.05;font-weight:900;text-shadow:0 8px 30px rgba(0,0,0,.25)}
.hero h1 span{color:var(--yellow)}
.hero-text{width:min(900px,100%);margin:22px auto 0;font-size:clamp(17px,2vw,22px);line-height:1.9;color:var(--muted)}
.hero-btn{
  display:inline-block;margin-top:30px;padding:16px 28px;border-radius:14px;
  background:linear-gradient(180deg,#e8d19d 0%,#ccb07a 50%,#a98c57 100%);
  color:#111;text-decoration:none;font-weight:800;
  box-shadow:0 6px 0 rgba(90,66,28,.55),0 16px 35px rgba(169,140,87,.18), inset 0 1px 0 rgba(255,255,255,.55)
}
.container{width:min(1240px,calc(100% - 22px));margin:-34px auto 0;position:relative;z-index:2}
.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.module{
  position:relative;border:0;text-align:left;padding:28px 24px;border-radius:22px;color:#fff;cursor:pointer;min-height:250px;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30), inset 0 -16px 30px rgba(0,0,0,.08), 0 18px 36px rgba(0,0,0,.24);
  overflow:hidden;backdrop-filter:blur(8px);
}
.module::before{
  content:"";position:absolute;left:-10%;top:-34%;width:120%;height:64%;
  background:linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.03));
  transform:rotate(-4deg);pointer-events:none;
}
.module::after{
  content:"";position:absolute;right:-18px;bottom:-18px;width:140px;height:140px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.10), transparent 62%);
  pointer-events:none;
}

.module h2{position:relative;z-index:1;margin:0 0 14px;font-size:31px;line-height:1.1;text-shadow:0 3px 14px rgba(0,0,0,.18)}
.module p{position:relative;z-index:1;margin:0;font-size:17px;line-height:1.7;color:rgba(255,255,255,.96)}
.module-1{background:linear-gradient(135deg,#587657 0%,#7e9a77 52%,#a9b89b 100%)}
.module-2{background:linear-gradient(135deg,#7c6949 0%,#9c875f 52%,#c0ab7d 100%)}
.module-3{background:linear-gradient(135deg,#496a5a 0%,#678471 52%,#94a790 100%)}
.module-4{background:linear-gradient(135deg,#637a58 0%,#879b72 52%,#b7c29c 100%)}
.module-5{background:linear-gradient(135deg,#5a6f63 0%,#7a9185 52%,#a6b5ae 100%)}
.module-6{background:linear-gradient(135deg,#6b5d49 0%,#8a7a60 52%,#b8a98d 100%)}
.qr-area{
  margin-top:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:22px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;
  box-shadow:0 18px 40px rgba(0,0,0,.16)
}
.qr-text h3{margin:0 0 10px;font-size:34px;color:var(--yellow)}
.qr-text p{margin:0;font-size:18px;color:var(--muted);line-height:1.6}
.qr-box{background:#fff;padding:12px;border-radius:16px;box-shadow:0 12px 28px rgba(0,0,0,.18)}
.qr-box img{display:block;width:120px;height:120px}
.info-panels{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
  margin-top:22px;
  align-items:stretch;
}
.info-card{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:20px;
  padding:20px;box-shadow:0 12px 28px rgba(0,0,0,.14)
}
.info-card h4{margin:0 0 10px;font-size:20px;color:var(--yellow)}
.info-card p{margin:0;color:var(--muted);font-size:15px;line-height:1.7}
.footer{margin-top:26px;background:#07100b;border-top:1px solid rgba(255,255,255,.06)}
.footer-inner{width:min(1240px,calc(100% - 22px));margin:0 auto;padding:26px 0 30px;text-align:center}
.footer-name{font-size:20px;font-weight:800;margin-bottom:8px}
.footer-address{font-size:16px;color:var(--muted)}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.66);z-index:99}
.modal{
  position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);
  width:min(980px, calc(100% - 20px));max-height:90vh;overflow:auto;border-radius:24px;background:#fff;color:#111;
  z-index:100;box-shadow:0 25px 60px rgba(0,0,0,.34);display:grid;grid-template-columns:1fr 1.15fr
}
.close-btn{
  position:absolute;top:10px;right:10px;width:42px;height:42px;border-radius:50%;border:0;
  background:#111;color:#fff;font-size:28px;cursor:pointer
}
.modal-left{padding:34px 28px;color:#fff;background:linear-gradient(180deg,#14231a,#22372c)}
.modal-tag{display:inline-block;background:rgba(255,255,255,.14);padding:8px 12px;border-radius:999px;font-size:12px;letter-spacing:1px;margin-bottom:14px}
.modal-left h3{margin:0 0 14px;font-size:40px}
.modal-left p{margin:0;font-size:18px;line-height:1.7;color:#dbe4df}
.modal-right{padding:26px;display:grid;gap:16px;background:#f4f6f3;align-content:center}
.form-box{background:#fff;border-radius:18px;padding:18px;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.form-box h4{margin:0 0 14px;font-size:22px}
.form-note{margin:10px 0 0;color:#617066;font-size:13px;line-height:1.5}
.site-form{display:grid;gap:10px}
.site-form input,.site-form textarea{width:100%;padding:14px 15px;border:1px solid #d5dcd5;border-radius:12px;font:inherit}
.btn{border:0;color:#fff;padding:14px 16px;border-radius:12px;font-weight:800;cursor:pointer}
.btn-blue{background:linear-gradient(90deg,#355f48,#4b7a5e)}
@media (max-width:960px){
  .modules,.info-panels{grid-template-columns:repeat(2,1fr)}
  .modal{grid-template-columns:1fr}
}
@media (max-width:680px){
  .modules,.info-panels{grid-template-columns:1fr}
  .qr-area{flex-direction:column;align-items:flex-start}
  .hero{min-height:500px}
  .hero h1{font-size:42px}
  .module h2{font-size:28px}
  .qr-box img{width:100px;height:100px}
}


.info-panels{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:22px
}
.info-map .map-address{
  margin-bottom:12px;
  font-size:14px;
  line-height:1.6;
}
.map-frame-wrap{
  width:100%;
  height:220px;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 8px 18px rgba(0,0,0,.12);
}
.map-frame-wrap iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}





.info-panels .info-card{
  width:100%;
  min-height:100%;
}

.info-panels .info-card:nth-child(1),
.info-panels .info-card:nth-child(2),
.info-panels .info-card:nth-child(3),
.info-panels .info-card:nth-child(4){
  grid-column:auto;
}

@media (max-width:680px){
  .info-panels{
    grid-template-columns:1fr !important;
  }
}
