:root{
  --page-w: 941px;
  --dark: #07191b;
  --dark2: #0a2022;
  --green: #9aaa18;
  --deep: #143a0c;
  --paper: #f5f2eb;
  --ink: #101414;
}

*{box-sizing:border-box}

html,
body{
  margin:0;
  padding:0;
  background:#061719;
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}

body{min-width:941px;}

a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

.page{
  width:var(--page-w);
  max-width:none;
  margin:0 auto;
  background:var(--paper);
  overflow:hidden;
  box-shadow:0 0 0 1px rgba(255,255,255,.02);
}

.btn{
  display:inline-flex;
  align-items:center;
  gap:14px;
  height:40px;
  padding:0 19px;
  border:1px solid var(--green);
  background:rgba(22,55,11,.92);
  color:#fff;
  font-family:Georgia,'Times New Roman',serif;
  font-size:15px;
  letter-spacing:.02em;
  line-height:1;
  text-transform:uppercase;
  white-space:nowrap;
}

.btn .arrow{font-size:20px;line-height:1;transform:translateY(-1px)}

.line-accent{width:40px;height:2px;background:var(--green);display:block;margin:16px 0 18px}

/* HERO */
.hero{position:relative;height:543px;color:#fff;background:#0b1513;overflow:hidden;}

.hero-bg,
.hero video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
  border:0;
  outline:0;
  transform:scale(1);
}

.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(1,7,8,.86) 0%,rgba(2,9,10,.67) 30%,rgba(2,8,8,.23) 58%,rgba(2,6,5,.08) 100%);
}

.header{position:absolute;z-index:2;top:24px;left:24px;right:25px;display:flex;align-items:flex-start;justify-content:space-between;}
.logo-top{width:157px;height:auto;}
.contact-top{height:35px;min-width:120px;padding:0 18px;border:1px solid var(--green);display:flex;align-items:center;justify-content:center;background:rgba(20,50,13,.76);font-family:Georgia,'Times New Roman',serif;font-size:14px;color:#fff;letter-spacing:.025em;text-transform:uppercase;}
.hero-copy{position:absolute;z-index:2;left:40px;top:119px;width:430px;}
.hero h1{margin:0;color:#fff;font-family:Georgia,'Times New Roman',serif;font-size:36px;line-height:1.16;letter-spacing:.076em;font-weight:400;text-transform:uppercase;text-shadow:0 2px 2px rgba(0,0,0,.28)}
.hero p{margin:0 0 21px;width:360px;font-size:17px;line-height:1.43;color:#fff;}
.hero .line-accent{margin:16px 0 17px;width:40px}
.video-row{position:absolute;z-index:2;left:40px;bottom:22px;display:flex;align-items:center;color:#fff;font-size:13px;letter-spacing:.03em;text-transform:uppercase;}
.play{width:21px;height:21px;border:2px solid var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:11px;}
.play:before{content:"";display:block;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid var(--green);margin-left:2px}
.video-line{width:153px;height:1px;background:var(--green);margin-left:20px;opacity:.9}

/* FEATURES */
.features{height:286px;background:linear-gradient(90deg,#07191b,#0b2022 54%,#07191b);color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:27px 0 22px;}
.feature{position:relative;text-align:center;padding:0 34px;}
.feature:not(:first-child){border-left:1px solid rgba(255,255,255,.28)}
.feature svg{height:35px;stroke:var(--green);fill:none;stroke-width:1.75;margin:0 auto 13px;}
.feature h3{font-size:17px;line-height:1.1;margin:0 0 18px;font-weight:400;color:#fff;}
.feature p{font-size:13.5px;line-height:1.36;margin:0;color:#fff;}

/* SYSTEM */
.system{min-height:402px;background:var(--paper);position:relative;display:grid;grid-template-columns:250px 1fr;column-gap:0;padding:36px 25px 34px 40px;}
.system-text h2{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:31px;line-height:1;letter-spacing:.055em;font-weight:400;text-transform:uppercase;color:#111;}
.system-text .line-accent{margin:12px 0 20px;width:40px}
.system-text p{font-size:15.8px;line-height:1.39;margin:0 0 16px;color:#161616;width:235px;}
.system .btn{margin-top:4px;height:37px;padding:0 16px;font-size:14px;background:#173c0e;}
.system-images{position:relative;min-height:336px;}
.system-square{position:absolute;left:2px;top:6px;width:214px;height:336px;object-fit:contain;object-position:center;filter:drop-shadow(0 12px 15px rgba(0,0,0,.16));}
.system-wide{position:absolute;left:236px;top:6px;width:386px;height:336px;object-fit:contain;object-position:center;filter:drop-shadow(0 12px 15px rgba(0,0,0,.16));}

/* SHOWCASE */
.showcase{background:linear-gradient(90deg,#07191b,#0a2022 53%,#07191b);color:#fff;padding:24px 23px 30px;}
.showcase-title{display:flex;align-items:center;justify-content:center;gap:19px;margin:0 0 18px;font-family:Georgia,'Times New Roman',serif;font-size:26px;line-height:1;letter-spacing:.12em;font-weight:400;text-transform:uppercase;color:#fff;}
.showcase-title:before,.showcase-title:after{content:"";width:38px;height:1px;background:var(--green);display:block;}
.places{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:30px;}
.place img{width:100%;height:184px;object-fit:cover;border:1px solid rgba(255,255,255,.32);}
.place p{margin:14px 0 0;text-align:center;font-size:16px;color:#fff;}
.finish-title{font-family:Georgia,'Times New Roman',serif;text-align:center;margin:16px 0 14px;font-size:17px;letter-spacing:.03em;font-weight:400;color:#eee;}
.finishes{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:0;}
.finish img{width:100%;height:134px;object-fit:cover;}
.finish p{margin:11px 0 0;text-align:center;font-size:16px;color:#fff;letter-spacing:.04em;}

/* CONTACT */
.contact{min-height:382px;background:var(--paper);display:grid;grid-template-columns:330px 1fr;gap:18px;padding:26px 54px 24px;color:#111;}
.contact h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:.055em;font-weight:400;font-size:25px;line-height:1.05;margin:0;text-transform:uppercase;}
.contact .line-accent{margin:10px 0 9px;width:34px}
.contact p{font-size:14px;line-height:1.24;margin:0 0 10px;width:270px;}
.bullets{margin:0 0 8px;padding:0;list-style:none}
.bullets li{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.55;margin:0;color:#142417;}
.bullets svg{width:17px;height:17px;stroke:#14330e;fill:none;stroke-width:1.7;flex:0 0 17px}
.logo-bottom{width:142px;height:auto;margin-top:1px;}
.form{padding-top:1px;display:grid;grid-template-columns:1fr 1fr;column-gap:21px;row-gap:8px;align-content:start;}
.form label{font-size:12px;color:#222;display:block;margin:0 0 5px;}
.form input,.form textarea{width:100%;border:1px solid #c9c6c0;background:#fff;height:27px;padding:5px 8px;font-size:14px;font-family:Arial,Helvetica,sans-serif;color:#111;outline:none;border-radius:0;}
.form textarea{height:72px;resize:vertical;}
.form .wide-field{grid-column:1/3;}
.form button{grid-column:1/3;height:34px;border:0;background:#143a0c;color:white;font-family:Georgia,'Times New Roman',serif;font-size:15px;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;}

/* FOOTER */
.footer{height:54px;background:#07191b;color:#c9c9c9;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 50px;font-size:13px;}
.footer .copy{text-align:center;grid-column:2;}
.footer .links{grid-column:3;justify-self:end;display:flex;gap:22px;align-items:center;}
.footer .sep{opacity:.45}

/* POLICY PAGES */
.policy{min-height:100vh;background:var(--paper);padding:44px;max-width:941px;margin:0 auto;color:#111;font-size:16px;line-height:1.55}
.policy h1,.policy h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:.04em}
.policy a{text-decoration:underline}
.policy-logo{width:160px;margin-bottom:35px}
