@font-face{font-family:Barlow;src:url('assets/barlow.ttf') format('truetype');font-display:swap;font-weight:400}
@font-face{font-family:'Barlow Condensed';src:url('assets/barlow-condensed-bold.ttf') format('truetype');font-display:swap;font-weight:700}
:root{--green:#60b541;--ink:#202620;--forest:#263b2b;--white:#fff;--light:#f2f4f1;--display:'Barlow Condensed','Arial Narrow',sans-serif;--body:Barlow,Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--light);color:var(--ink);font:400 17px/1.6 var(--body)}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:5px}
a:focus-visible{outline:3px solid currentColor;outline-offset:6px}
p,h1,h2{margin:0}
p{text-wrap:pretty}
.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}
.skip{position:fixed;left:16px;top:16px;transform:translateY(-200%);padding:12px 20px;background:white;z-index:5}
.skip:focus{transform:none}
.header{background:var(--white)}
.header-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}
.brand:hover{text-decoration:none}
.brand img{width:87px;height:66px;object-fit:contain}
.brand>span{font:700 26px/.95 var(--display);letter-spacing:.015em}
.brand>span>span{display:block;font-size:19px;letter-spacing:.27em;margin-top:7px}
.header-note{text-align:right;font-size:15px;line-height:1.5}
.header-note span{color:#535d53}
.hero{position:relative;isolation:isolate;background:var(--ink);color:white}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}
.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,28,21,.95) 0%,rgba(20,28,21,.88) 35%,rgba(20,28,21,.35) 70%,rgba(20,28,21,.12) 100%);z-index:-1}
.hero-inner{min-height:660px;display:flex;align-items:center;padding-block:64px 72px}
.hero-copy{max-width:610px}
.notice{display:inline-block;background:var(--green);color:var(--ink);padding:5px 14px;font-size:15px;margin-bottom:25px}
h1,h2{font-family:var(--display);font-weight:700;letter-spacing:-.015em}
h1{font-size:clamp(3.25rem,5.7vw,5.6rem);line-height:.99}
.intro{font-size:22px;line-height:1.45;margin-top:26px}
.message{max-width:45ch;margin-top:18px;color:#edf0ec}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:54px;padding:13px 22px;margin-top:28px;background:var(--green);color:var(--ink);font-weight:bold;transition:background .18s}
.button span{font-size:23px}
.button:hover{background:#7ac85e;text-decoration:none}
.contact{background:var(--green)}
.contact-inner{display:grid;grid-template-columns:1.1fr 1.2fr 1fr;align-items:center;gap:40px;padding-block:36px}
h2{font-size:32px;line-height:1.05}
.contact-item>span{display:block;font-size:14px;margin-bottom:5px}
.contact-item a{display:inline-block;font-size:21px;min-height:44px;overflow-wrap:anywhere}
address{font-style:normal;font-size:18px;line-height:1.45}
.footer-inner{display:flex;justify-content:space-between;gap:20px;padding-block:23px;color:#535d53;font-size:13px}
@media(min-width:1600px){.hero-inner{min-height:calc(100svh - 335px)}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.contact-inner{grid-template-columns:1fr 1.2fr;gap:28px}.contact-inner h2{grid-row:span 2}.hero:before{background:linear-gradient(90deg,rgba(20,28,21,.94),rgba(20,28,21,.78) 50%,rgba(20,28,21,.28))}.hero-inner{min-height:640px}.footer-inner{flex-wrap:wrap;gap:4px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:96px}.brand img{width:67px;height:54px}.brand>span{font-size:23px}.brand>span>span{font-size:16px}.header-note{display:none}.hero-inner{min-height:0;padding-block:44px 48px}.hero-photo{object-position:62% center}.hero:before{background:rgba(20,28,21,.82)}.notice{font-size:14px;margin-bottom:24px}h1{font-size:clamp(2.8rem,10.7vw,4rem);line-height:1.02}.intro{font-size:20px;margin-top:24px}.message{font-size:16px;max-width:36ch}.button{margin-top:24px}.contact-inner{grid-template-columns:1fr;gap:22px;padding-block:30px}.contact-inner h2{grid-row:auto;font-size:30px}.contact-item a{font-size:20px}.footer-inner{padding-block:20px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
