@font-face{font-family:"Archivo";src:url(fonts/archivo.woff2) format("woff2-variations"),url(fonts/archivo.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
:root{--bg:#F6F5F1;--ink:#1B1F1E;--muted:#5B625F;--line:#DAD9D2;--green:#24543F;--cae:#1C3D6E;--steel:#E8641B;--frezca:#FFD23F;--r:10px;--wrap:1200px;--gut:clamp(20px,4vw,48px);--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 "Archivo",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}p{margin:0}h1,h2,h3{margin:0;font-weight:700;line-height:1.04;letter-spacing:-.02em;font-stretch:112%}
h2{font-size:clamp(30px,3.2vw,46px);max-width:16ch}
.wrap{width:100%;max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:12px;top:-60px;background:var(--ink);color:#fff;padding:10px 14px;z-index:9}.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--cae);outline-offset:3px}
.nav{border-bottom:1px solid var(--line);background:var(--bg)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:76px;gap:20px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:22px;font-weight:500;font-stretch:118%;min-height:44px}
.brand b{font-weight:800;color:var(--green)}
.gm{display:grid;grid-template-columns:repeat(3,10px);gap:4px}.gm i{height:26px;border-radius:2px}
.gm i:nth-child(1){background:var(--cae)}.gm i:nth-child(2){background:var(--steel)}.gm i:nth-child(3){background:var(--frezca)}
.brand-l{color:#fff}.brand-l b{color:#9FC4AE}
.links{display:flex;gap:4px}
.links a{position:relative;padding:12px 14px;text-decoration:none;font-weight:500;color:var(--muted)}
.links a::after{content:"";position:absolute;left:14px;right:14px;bottom:8px;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.links a:hover::after,.links a[aria-current=page]::after{transform:scaleX(1)}.links a[aria-current=page]{color:var(--ink);font-weight:700}
.hero{min-height:calc(100svh - 77px);display:flex;align-items:center;padding:56px 0}
h1{font-size:clamp(40px,5.4vw,80px);letter-spacing:-.035em;line-height:.98;max-width:15ch;text-wrap:balance}
.lead{margin-top:22px;font-size:clamp(17px,1.4vw,21px);color:var(--muted);max-width:50ch}
.biz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:48px}
.b{position:relative;display:flex;flex-direction:column;gap:12px;min-height:300px;padding:30px;border-radius:14px;text-decoration:none;color:#fff;overflow:hidden;transition:transform .25s var(--ease)}
.b:hover{transform:translateY(-3px)}
.b::after{content:"";position:absolute;right:24px;top:28px;width:38px;height:38px;border-radius:50%;border:2px solid currentColor;opacity:.5;background:no-repeat center/16px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E");transition:transform .25s var(--ease),opacity .25s}
.b:hover::after{transform:translateX(4px);opacity:1}
.b-cae{background:var(--cae)}.b-steel{background:#25292A;box-shadow:inset 0 -8px 0 var(--steel)}.b-frezca{background:#1E3406;box-shadow:inset 0 -8px 0 var(--frezca)}
.b-cae{box-shadow:inset 0 -8px 0 #8DB49B}
.b-tag{font-size:14px;font-weight:600;opacity:.8}
.b h3{font-size:clamp(24px,2.2vw,32px);max-width:12ch}
.b p{opacity:.85;font-size:16px;max-width:36ch}
.b-url{margin-top:auto;font-size:14px;font-weight:600;opacity:.9;text-decoration:underline;text-underline-offset:4px}
.b-frezca .b-url,.b-frezca .b-tag{color:var(--frezca)}.b-steel .b-url,.b-steel .b-tag{color:#FFA66E}
.contact-b .b,.split .biz .b{min-height:150px}
.sec{padding:clamp(64px,10vh,112px) 0}
.sec-dark{background:var(--ink);color:#fff}
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.split .biz{grid-template-columns:1fr;margin-top:28px}
.muted{color:var(--muted);margin-top:18px;max-width:38ch}
.btn{display:inline-flex;align-items:center;min-height:50px;padding:0 24px;margin-top:28px;border-radius:6px;background:var(--green);color:#fff;text-decoration:none;font-weight:600;transition:transform .18s var(--ease),background .18s}
.btn:hover{transform:translateY(-2px);background:var(--ink)}
.pts{list-style:none;margin:0;padding:0}
.pts li{display:flex;flex-direction:column;gap:4px;padding:22px 0;border-top:1px solid var(--line)}
.pts li:nth-child(1){border-top:3px solid var(--cae)}.pts li:nth-child(2){border-top:3px solid var(--steel)}.pts li:nth-child(3){border-top:3px solid var(--frezca)}
.pts b{font-size:19px}.pts span{color:var(--muted)}
.prose p{color:var(--muted);font-size:19px;margin-bottom:18px;max-width:58ch}
.phead{padding:clamp(56px,9vh,96px) 0 clamp(40px,6vh,64px);border-bottom:1px solid var(--line)}
.phead p{margin-top:20px;font-size:clamp(17px,1.35vw,20px);color:var(--muted);max-width:54ch}
.facts{margin:0}.facts div{padding:18px 0;border-top:1px solid var(--line)}.facts dt{font-size:14px;color:var(--muted)}.facts dd{margin:4px 0 0;font-weight:600;font-size:19px}.facts a{color:var(--green)}
.foot{background:var(--ink);color:#B9C3BE;padding:56px 0 28px;font-size:15px}
.foot-in{display:grid;grid-template-columns:1.4fr 1.4fr 1fr;gap:32px}
.foot nav,.foot-in>div:last-child{display:flex;flex-direction:column}
.foot-in a:not(.brand){display:flex;align-items:center;min-height:36px;text-decoration:none}.foot-in a:not(.brand):hover{color:#fff;text-decoration:underline}
.legal{margin-top:40px;padding-top:20px;border-top:1px solid #2F3533;font-size:13px;color:#828C88}
@media (prefers-reduced-motion:no-preference){[data-enter] h1,[data-enter] .lead{animation:up .8s var(--ease) both}[data-enter] .b{animation:up .8s var(--ease) both}[data-enter] .b:nth-child(1){animation-delay:.15s}[data-enter] .b:nth-child(2){animation-delay:.25s}[data-enter] .b:nth-child(3){animation-delay:.35s}}
@keyframes up{from{opacity:0;transform:translateY(16px)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media (max-width:900px){.biz{grid-template-columns:1fr}.b{min-height:220px}.split,.foot-in{grid-template-columns:1fr}.hero{min-height:auto}}
@media (max-width:520px){.links a{padding:12px 8px;font-size:15px}.nav-in{height:auto;padding-block:12px;flex-wrap:wrap}}

/* v3: tall photo panels that widen on hover */
img{color:transparent}
.ghero{padding-top:clamp(40px,7vh,72px)}
.gh-top{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:40px;align-items:end;margin-bottom:clamp(28px,5vh,48px)}
.gh-top h1{font-size:clamp(56px,8vw,124px);letter-spacing:-.05em;line-height:.85;font-stretch:122%;font-weight:800}
.gh-top .lead{margin:0 0 10px}
.pns{display:flex;height:max(520px,min(64vh,620px));gap:4px;background:var(--ink)}
.pn{position:relative;flex:1 1 0;overflow:hidden;color:#fff;text-decoration:none;transition:flex-grow .6s var(--ease);background:#2a3330}
.pn:hover,.pn:focus-visible{flex-grow:1.8}
.pn>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.pn:hover>img{transform:scale(1.03)}
.pn::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 30%,rgba(0,0,0,.78))}
.pn-cae{background:var(--cae)}.pn-cae::after{background:linear-gradient(180deg,rgba(28,61,110,.15) 25%,rgba(28,61,110,.92))}
.pn-steel::after{background:linear-gradient(180deg,rgba(20,22,22,.05) 25%,rgba(20,22,22,.9))}
.pn-frezca{background:#1E3406}.pn-frezca::after{background:linear-gradient(180deg,transparent 40%,rgba(14,26,3,.85))}
.pn-in{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(22px,2.6vw,40px)}
.pn-tag{display:inline-block;font-size:14px;font-weight:600;padding-bottom:6px;border-bottom:3px solid}
.pn-cae .pn-tag{border-color:#8DB49B}.pn-steel .pn-tag{border-color:var(--steel)}.pn-frezca .pn-tag{border-color:var(--frezca)}
.pn h2{font-size:clamp(26px,2.6vw,42px);margin-top:14px;max-width:12ch;color:#fff}
.pn-in p{margin-top:12px;max-width:36ch;opacity:.88;font-size:16px;max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
.pn:hover .pn-in p,.pn:focus-visible .pn-in p{max-height:120px}
.pn-go{display:inline-block;margin-top:16px;font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:4px}
.fz{position:absolute;inset:0;display:flex;justify-content:center;background:radial-gradient(ellipse 70% 55% at 50% 38%,#3F6214,#1E3406 72%)}
.fz-s{position:absolute;top:0;left:50%;width:2px;height:16%;background:var(--frezca)}
.fz-c{position:absolute;top:16%;width:150px;height:210px;margin-left:0;border-radius:14px;background:#fff;color:#1E3406;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 30px 50px -20px rgba(0,0,0,.6);transform-origin:50% -60px;animation:sw 5s ease-in-out infinite}
.fz-c b{letter-spacing:.15em;font-size:18px}.fz-c i{font-style:normal;font-size:12px;opacity:.6}
@keyframes sw{0%,100%{transform:rotate(2deg)}50%{transform:rotate(-2deg)}}
.sec-dark{background:var(--ink);color:#fff;padding-top:clamp(56px,9vh,96px)}
.od{margin-bottom:32px;color:#fff}
@media (max-width:900px){.gh-top{grid-template-columns:1fr}.pns{flex-direction:column;height:auto}.pn{min-height:420px;flex:none}.pn-in p{max-height:none}}
@media (prefers-reduced-motion:reduce){.fz-c{animation:none}}

/* v4: panel animations */
.an{position:absolute;inset:0;display:flex;justify-content:center;padding-top:9%}
.an-cae{background:radial-gradient(ellipse 70% 55% at 50% 35%,#2B5591,var(--cae) 72%)}
.qs{width:min(78%,300px);height:max-content;background:#fff;color:var(--ink);border-radius:6px;padding:16px 16px 0;box-shadow:0 30px 50px -20px rgba(0,0,0,.6);transform:rotate(-2deg);font-size:13px}
.qs-h{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:10px;border-bottom:2px solid var(--ink);margin-bottom:4px}
.qs-h b{font-size:16px}.qs-h span{color:var(--muted);font-size:12px}
.qs-l{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px dashed var(--line);opacity:0;animation:ql 8s calc(var(--d)*.5s + .4s) infinite}
.qs-l i{font-style:normal;font-size:11px;font-weight:600;padding:2px 6px;border-radius:3px;background:#DCE5F2;color:var(--cae)}
.qs-f{display:grid;grid-template-columns:repeat(3,1fr);margin:12px -16px 0;background:var(--cae);color:#fff;font-weight:700;text-align:center;font-size:12px;opacity:0;animation:qf 8s 3.2s infinite}
.qs-f span{padding:10px 0}
@keyframes ql{0%{opacity:0;transform:translateX(-8px)}5%,80%{opacity:1;transform:none}90%,100%{opacity:0}}
@keyframes qf{0%{opacity:0;transform:scale(.9)}4%,45%{opacity:1;transform:none}55%,100%{opacity:0}}
.an-steel{flex-direction:column;align-items:stretch;justify-content:flex-start;padding:16% 12% 0;background:radial-gradient(ellipse 70% 55% at 50% 35%,#3A3F40,#1E2222 72%)}
.ro{display:flex;align-items:flex-end;gap:6px;justify-content:flex-end;margin:0 0 16px;color:#fff}
.ro-w{display:block;height:56px;overflow:hidden;font-size:52px;font-weight:800;font-stretch:120%;line-height:56px}
.ro-w b{display:block;animation:ro 10s infinite;font-variant-numeric:tabular-nums}
.ro small{font-size:15px;margin-bottom:8px;color:#C9D2CD}
@keyframes ro{0%,18%{transform:translateY(0)}25%,43%{transform:translateY(-56px)}50%,68%{transform:translateY(-112px)}75%,93%{transform:translateY(-168px)}100%{transform:translateY(-224px)}}
.sb{position:relative;height:44px}
.sb-bar{position:absolute;inset:0;border-radius:3px;background:linear-gradient(180deg,#C9CED0,#8D9497 20%,#6B7275 50%,#4B5154 82%,#3A3F42)}
.sb-cut{position:absolute;top:-22px;bottom:-22px;width:3px;margin-left:-1.5px;background:var(--steel);box-shadow:0 0 12px 2px rgba(232,100,27,.9);animation:cut 10s infinite}
.sb-sp{position:absolute;top:50%;animation:cut 10s infinite}
.sb-sp i{position:absolute;width:4px;height:4px;border-radius:50%;background:#FFC46B;box-shadow:0 0 6px #FF9A3D;animation:sp .5s ease-out infinite}
.sb-sp i:nth-child(1){--dx:-50px;--dy:-30px}.sb-sp i:nth-child(2){--dx:-70px;--dy:14px;animation-delay:.1s}.sb-sp i:nth-child(3){--dx:-30px;--dy:44px;animation-delay:.2s}.sb-sp i:nth-child(4){--dx:40px;--dy:40px;animation-delay:.15s}.sb-sp i:nth-child(5){--dx:-90px;--dy:-6px;animation-delay:.05s}
@keyframes cut{0%,18%{left:40.8%}25%,43%{left:20%}50%,68%{left:60%}75%,93%{left:12.5%}100%{left:40.8%}}
@keyframes sp{0%{opacity:1;transform:translate(0,0)}100%{opacity:0;transform:translate(var(--dx),var(--dy))}}
.sb-ruler{height:16px;margin-top:12px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.5) 0 1px,transparent 1px calc(100%/60)),repeating-linear-gradient(90deg,rgba(255,255,255,.9) 0 2px,transparent 2px calc(100%/6));background-size:100% 7px,100% 16px;background-repeat:no-repeat}
.pn-cae::after,.pn-steel::after{background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.72))}
@media (prefers-reduced-motion:reduce){.qs-l,.qs-f{opacity:1}}
.an{padding-top:5%}.qs{font-size:12px;width:min(72%,280px)}.qs-l{padding:6px 0}
