:root{
  --color-green:#283e1c;
  --color-green-2:#314a20;
  --color-green-card:#2F3D1F;
  --color-cream:#f4f0d7;
  --color-text:#555557;
  --color-muted:#808083;
  --color-white:#fff;
  --accent-lime:#c3e500;
  --accent-olive:#82964b;
  --accent-gold:#d9a465;
  --shadow-card:0 10px 18px rgba(40,62,28,.16);
  --radius-sm:6px;
  --radius-md:10px;
  --radius-ml:8px;
  --container:1162px;
  --font-main:'Raleway',Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-main);font-weight:300;color:var(--color-text);background:var(--color-cream);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.site-header {
  height: inherit;
  padding: 27px 0;
}
.site-header .brand img,
.site-footer .brand img{
  max-width: 109px;
  height: auto;
}
.container{width:min(100% - 48px,var(--container));margin-inline:auto}
.site-header{background:var(--color-green);display:flex;align-items:center}
.header-inner{display:flex;align-items:center}
.brand{display:inline-flex}
.brand img,
.site-footer img{object-fit:contain}
.hero-solutions{position:relative;overflow:hidden;background:linear-gradient(180deg,#354f22 0%,#63714d 41%,#f4f0d7 100%);padding:113px 0 66px}
.hero-bg{
  position:absolute;
  inset:0;
  background-image: url('../img/bg_hero.png');
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  /*background:radial-gradient(circle at 45% 24%,rgba(255,255,255,.35),transparent 28%),linear-gradient(160deg,rgba(255,255,255,.18) 0 38%,transparent 39%),linear-gradient(170deg,transparent 0 48%,rgba(40,62,28,.28) 49% 66%,transparent 67%);opacity:.95;*/
}
/*
.hero-bg:before,
.hero-bg:after{content:"";position:absolute;left:-8%;right:-8%;height:260px;border-radius:50%;background:rgba(244,240,215,.27);filter:blur(.2px)}
.hero-bg:before{top:318px;transform:rotate(-5deg)}
.hero-bg:after{top:430px;background:rgba(40,62,28,.22);transform:rotate(-7deg)}
*/
.hero-inner{position:relative;z-index:1}
.hero-title{margin:0 0 106px;text-align:center;color:rgba(255,255,255,.88);font-size:clamp(54px,6.1vw,90px);line-height:1.05;font-weight:300;letter-spacing:.01em}
.hero-title em{font-weight:800;font-style:italic;color:#f7f5e8}
.solutions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;max-width:1438px;margin-inline:auto}
.solution-card__link{display:block;position:relative;min-height:355px}
.solution-card__media{margin:0;border-radius:var(--radius-sm);overflow:hidden;height:286px}
.solution-card__media img{width:100%;height:100%;object-fit:cover}

.solution-card__panel{
  position:absolute;
  left:32px;
  right:32px;
  bottom:0;
  min-height:145px;
  background:var(--color-green-card);
  border-radius: var(--radius-ml);
  box-shadow:var(--shadow-card);
  padding: 46px 26px;
  overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;
}
  
.solution-card__complete{
  content:"";
  position:absolute;
  top:0;
  right:-1px;
  width:58px;
  height:100%;
  clip-path:polygon(85% 0,100% 0,100% 100%,0 100%);
}
  
.solution-card__brand{
  display:block;
  color:#fff;
  font-weight:800;
  font-size:24px;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:-.05em;
}
.solution-card__brand img{
  max-width: 221px;
  height: auto;
}

.solution-card__title{display:block;margin-top:2px;font-size:34px;line-height:.95;font-weight:400;text-transform:uppercase;color:var(--accent-lime);letter-spacing:-.045em}.solution-card--greenmarket .solution-card__title{color:var(--accent-olive)}.solution-card--advisory .solution-card__title{color:var(--accent-gold)}
.solution-card__arrow{position:absolute;right:52px;transition:transform .25s ease;bottom:10px;z-index:2;color:var(--color-green);font-size:24px;line-height:1}
.solution-card:hover .solution-card__panel{transform:translateY(-4px);box-shadow:0 16px 28px rgba(40,62,28,.22)}
.solution-card:hover .solution-card__arrow{ transform: translateX(40px);}
.offices{padding:74px 0 136px;background:var(--color-cream)}.section-title{margin:0 0 58px;text-align:center;font-size:52px;line-height:1.12;font-weight:300;letter-spacing:-.03em;color:#535355}.section-title em{font-weight:800;font-style:italic}

.offices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:127px;max-width:1428px;margin-inline:auto}
.office-card{background:#fff;border-radius:var(--radius-md);box-shadow:0 3px 12px rgba(0,0,0,.08);min-height:315px;padding:36px 30px 29px;text-align:center}
.office-card h3{margin:0 0 19px;font-size:40px;line-height:1;font-weight:300;color:#6a6a6d}
.office-card address{font-style:normal;color:#858589;font-size:14px;line-height:1.9;font-weight:400}
.office-card address span,.office-card address a{display:block}
.btn-map{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:170px;margin-top:39px;padding:12px 25px;border-radius:3px;background:var(--color-green);color:#fff;font-size:15px;font-weight:500;transition:transform .25s ease,background .25s ease}.btn-map:hover{background:#1f3215;transform:translateY(-2px)}.site-footer{background:var(--color-green);padding:75px 0 164px;color:rgba(255,255,255,.76)}.footer-inner{max-width:1370px}.site-footer p{margin:36px 0 0;font-size:16px;font-weight:400}.site-footer p+p{margin-top:23px}

@media (max-width: 1024px){
  .container{width:min(100% - 32px,760px)}
  .hero-solutions{padding:43px 0 42px;background:linear-gradient(180deg,#354f22 0%,#6f7c5c 18%,#f4f0d7 45%,#f4f0d7 100%)}
  .hero-bg:before{top:106px;height:160px}
  .hero-bg:after{top:145px;height:150px}
  .hero-title{font-size:42px;line-height:1.08;margin-bottom:62px}
  .solutions-grid{grid-template-columns:1fr;gap:49px}
  .solution-card__link{min-height:298px}
  .solution-card__media{height:258px;border-radius:5px;}
  .solution-card__panel{left:24px;right:24px;min-height:119px;padding:36px 25px 20px;}
  .solution-card__brand{font-size:18px}
  .solution-card__title{font-size:28px}
  .offices{padding:61px 0 91px}
  .section-title{font-size:34px;line-height:1.16;margin-bottom:35px}
  .offices-grid{grid-template-columns:1fr;gap:28px;max-width:238px}
  .office-card{min-height:202px;padding:26px 20px 23px;border-radius:5px}
  .office-card h3{font-size:29px;margin-bottom:15px}
  .office-card address{font-size:11px;line-height:2}
  .btn-map{min-width:112px;margin-top:28px;padding:8px 15px;font-size:11px;gap:9px}
  .site-footer{padding:58px 0 90px}
  .site-footer .container{width:min(100% - 64px,760px)}
}

@media (max-width: 380px){
  .container{width:min(100% - 18px,309px)}.hero-title{font-size:39px}
  .solution-card__link{min-height:299px}
  .solution-card__media{height:257px}
  .solution-card__panel{left:21px;right:21px}
  .offices-grid{max-width:238px}
}

@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Hero title word animation */
.hero-title--words .word{display:inline-block}
.js .hero-title--words .word{opacity:0;transform:translateY(30px)}
@media (prefers-reduced-motion: reduce){.js .hero-title--words .word{opacity:1!important;transform:none!important}}
