@font-face{
  font-family:"Archivo";
  src:url("/assets/fonts/archivo-latin.woff2") format("woff2");
  font-weight:400 800;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Archivo";
  src:url("/assets/fonts/archivo-latin-ext.woff2") format("woff2");
  font-weight:400 800;font-style:normal;font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:"Inter";
  src:url("/assets/fonts/inter-latin.woff2") format("woff2");
  font-weight:400 700;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Inter";
  src:url("/assets/fonts/inter-latin-ext.woff2") format("woff2");
  font-weight:400 700;font-style:normal;font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

:root{
  --paper:#f4f1ea;
  --ink:#17150f;
  --green:#1f4d3d;
  --brick:#a63a2a;
  --muted:#5d574a;
  --body:#2f2b22;
  --rule:rgba(23,21,15,.14);
  --rule-strong:rgba(23,21,15,.30);
  --arch:"Archivo",system-ui,-apple-system,sans-serif;
  --inter:"Inter",system-ui,-apple-system,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font:400 16.5px/1.66 var(--inter);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul,ol,figure,table{margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.skip{position:absolute;left:-9999px;top:0;z-index:60}
.skip:focus{left:14px;top:14px;background:var(--green);color:#f7f4ec;padding:10px 16px;font:600 14px/1 var(--arch);text-decoration:none}
:focus-visible{outline:2px solid var(--green);outline-offset:3px}

/* header */
.site-head{border-bottom:1px solid var(--rule);background:var(--paper)}
.head-in{display:flex;align-items:center;gap:24px;min-height:80px}
.brand{display:flex;align-items:center;flex:0 0 auto;text-decoration:none}
.brand img{display:block;width:178px;height:auto}
.nav{margin-left:auto;display:flex;align-items:center;gap:24px}
.nav a{
  font:600 15px/1 var(--arch);text-decoration:none;letter-spacing:.004em;
  padding:7px 0;border-bottom:1px solid transparent;color:var(--ink);
}
.nav a:hover{color:var(--green);border-bottom-color:var(--green)}
.nav a[aria-current="page"]{color:var(--green);border-bottom-color:var(--green)}
.age{
  flex:0 0 auto;font:700 12px/1 var(--arch);letter-spacing:.04em;
  border:1px solid var(--ink);padding:8px 7px 7px;min-width:34px;text-align:center;
}
.burger{
  display:none;width:44px;height:40px;padding:0;margin-left:auto;
  align-items:center;justify-content:center;flex-direction:column;gap:5px;
  background:transparent;border:1px solid var(--ink);cursor:pointer;flex:0 0 auto;
}
.burger span{display:block;width:20px;height:1px;background:var(--ink);transition:transform .18s ease,opacity .18s ease}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mpanel{display:none}

/* breadcrumb */
.bc{display:flex;align-items:center;gap:9px;margin:0 0 14px;font:500 12px/1.4 var(--inter);color:var(--muted)}
.bc a{text-decoration:none;color:var(--muted)}
.bc a:hover{color:var(--green)}
.bc span[aria-current]{color:var(--ink)}

/* hero */
.hero{padding:30px 0 36px}
.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,52fr) minmax(0,48fr);
  grid-template-areas:"shot head" "shot body";
  column-gap:54px;align-items:start;
}
.hero-head{grid-area:head;border-top:1px solid var(--brick);padding-top:20px}
.kicker{
  display:flex;align-items:center;gap:10px;margin:0;
  font:600 10.5px/1.4 var(--arch);letter-spacing:.19em;text-transform:uppercase;color:var(--green);
}
.kicker::before{content:"";width:22px;height:1px;background:var(--brick);flex:0 0 auto}
.hero h1{
  font:800 clamp(38px,4.5vw,64px)/.98 var(--arch);
  letter-spacing:-.034em;margin:15px 0 0;max-width:19ch;
}
.hero-shot{grid-area:shot;margin:0;min-width:0}
.shot-frame{border:1px solid var(--rule-strong);background:#eae5d9;padding:8px}
.shot-bar{display:flex;align-items:center;gap:6px;padding:2px 2px 9px;border-bottom:1px solid var(--rule);margin-bottom:8px}
.dot{width:5px;height:5px;border-radius:50%;background:var(--green);flex:0 0 auto}
.url{
  font:400 11px/1 var(--inter);color:var(--muted);background:var(--paper);
  border:1px solid var(--rule);padding:5px 8px;margin-left:3px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
}
.https{margin-left:auto;font:600 8.5px/1 var(--arch);letter-spacing:.14em;text-transform:uppercase;color:var(--green);flex:0 0 auto}
.hero-shot img{
  display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:top center;
  background:#0b0b0b;
}
.hero-shot figcaption{padding:10px 2px 1px;margin-top:8px;border-top:1px solid var(--rule);font:13px/1.5 var(--inter);color:var(--muted)}
.hero-body{grid-area:body;padding-top:28px}
.lede{font:400 clamp(17px,1.3vw,19px)/1.56 var(--inter);color:var(--body);margin:0 0 22px;max-width:44ch}
.acts{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.btn{
  display:inline-block;background:var(--green);color:#f7f4ec;border:1px solid var(--green);
  padding:14px 24px;font:600 15px/1 var(--arch);text-decoration:none;letter-spacing:.01em;
}
.btn:hover{background:#183c2f;border-color:#183c2f}
.textlink{font:600 14.5px/1.25 var(--arch);color:var(--green);text-decoration:none;border-bottom:1px solid var(--green);padding-bottom:2px}
.textlink:hover{color:var(--ink);border-bottom-color:var(--ink)}
.hero-facts{
  list-style:none;margin:28px 0 0;padding:0;display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px;border-top:1px solid var(--rule-strong);
}
.hero-facts li{padding:12px 0 0}
.hero-facts b{display:block;font:600 9.5px/1.2 var(--arch);text-transform:uppercase;letter-spacing:.16em;color:var(--green);margin-bottom:5px}
.hero-facts span{font:13.5px/1.42 var(--inter);color:var(--ink)}

/* partners, home only */
.partners{padding:22px 0 26px;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule)}
.partners-in{display:grid;grid-template-columns:206px minmax(0,1fr);gap:34px;align-items:center}
.partners-title{margin:0 0 6px;font:700 11px/1.3 var(--arch);letter-spacing:.19em;text-transform:uppercase;color:var(--green)}
.partners-note{margin:0;font:12.5px/1.55 var(--inter);color:var(--muted);max-width:27ch}
.logo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 26px;align-items:center}
.logo-grid a{display:flex;align-items:center;height:64px;text-decoration:none}
.logo-grid a:hover{opacity:.78}
.logo-grid img{display:block;width:100%;height:60px;object-fit:contain;object-position:left center}

/* body */
.page-body{padding:6px 0 66px}
.body2{padding:40px 0;border-top:1px solid var(--rule)}
.body2:first-child{border-top:0;padding-top:34px}
.sec-label{
  display:flex;align-items:center;gap:10px;margin:0 0 11px;
  font:600 10.5px/1.3 var(--arch);letter-spacing:.2em;text-transform:uppercase;color:var(--green);
}
.sec-label::before{content:"";width:26px;height:1px;background:var(--brick);flex:0 0 auto}
.body2 h2{font:700 clamp(24px,2.4vw,34px)/1.1 var(--arch);letter-spacing:-.024em;margin:0 0 18px;max-width:32ch}
.cols{columns:2;column-gap:56px;column-rule:1px solid var(--rule)}
.cols p{margin:0 0 15px;break-inside:avoid;color:var(--body)}
.cols p:last-child{margin-bottom:0}
.note{margin:22px 0 0;padding:14px 0 0;border-top:1px solid var(--rule);font:13.5px/1.6 var(--inter);color:var(--muted);max-width:92ch}
.note b{color:var(--ink);font-weight:600}

/* table */
.tbl-wrap{margin:24px 0 0;overflow-x:auto;border-top:1px solid var(--ink);-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;min-width:560px}
table.wide{min-width:720px}
caption{text-align:left;padding:10px 0 2px;font:12.5px/1.5 var(--inter);color:var(--muted);caption-side:bottom}
th{
  text-align:left;font:600 10.5px/1.3 var(--arch);letter-spacing:.13em;text-transform:uppercase;
  color:var(--green);padding:11px 12px;border-bottom:1px solid var(--brick);white-space:nowrap;
}
td{padding:12px;border-bottom:1px solid var(--rule);font:15px/1.5 var(--inter);vertical-align:top;color:var(--body)}
tbody tr:hover{background:rgba(31,77,61,.045)}
td:first-child{font-family:var(--arch);font-weight:600;color:var(--ink)}
td.num{color:var(--muted);font-size:14px}
tr{scroll-margin-top:24px}
.tbl-note{margin:14px 0 0;font:12.5px/1.65 var(--inter);color:var(--muted);max-width:90ch}

/* lists */
.steps{list-style:none;counter-reset:s;margin:2px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 46px}
.steps li{counter-increment:s;position:relative;padding:16px 0 16px 46px;border-top:1px solid var(--rule)}
.steps li::before{
  content:counter(s,decimal-leading-zero);position:absolute;left:0;top:16px;
  font:700 12px/1.65 var(--arch);color:var(--green);letter-spacing:.07em;
}
.steps b{display:block;font:600 16px/1.35 var(--arch);margin-bottom:4px}
.steps span{display:block;font:14.5px/1.58 var(--inter);color:var(--body)}

.cat-inline{list-style:none;display:flex;flex-wrap:wrap;margin:20px 0 0;padding:0}
.cat-inline li{margin:0}
.cat-inline a{
  display:inline-block;padding:7px 15px 7px 0;margin-right:15px;
  border-bottom:1px solid var(--rule);font:600 14px/1.3 var(--arch);text-decoration:none;color:var(--ink);
}
.cat-inline a:hover{color:var(--green);border-bottom-color:var(--green)}
.inline-next{margin:20px 0 0;font:600 14px/1.4 var(--arch)}
.inline-next a{color:var(--green);text-decoration:none;border-bottom:1px solid var(--green);padding-bottom:1px}

/* faq */
.faq{columns:2;column-gap:46px;margin-top:6px}
.faq details{border-top:1px solid var(--rule);padding:14px 0;break-inside:avoid}
.faq summary{cursor:pointer;list-style:none;position:relative;padding-right:26px;font:600 16px/1.4 var(--arch);color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:-2px;font:400 20px/1 var(--arch);color:var(--green)}
.faq details[open] summary::after{content:"\2212"}
.faq details p{margin:9px 0 0;font:14.8px/1.62 var(--inter);color:var(--body)}

/* closing */
.closing{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:38px 0 0;padding-top:26px;border-top:1px solid var(--ink)}
.age-note{font:12.5px/1.55 var(--inter);color:var(--muted)}

/* footer */
.site-foot{border-top:1px solid var(--ink);padding:38px 0 26px}
.foot-grid{display:grid;grid-template-columns:1.6fr .8fr 1fr;gap:44px}
.foot-brand img{display:block;width:156px;height:auto;margin-bottom:14px}
.foot-brand p,.foot-col p{margin:0 0 10px;font:13.5px/1.62 var(--inter);color:var(--muted);max-width:40ch}
.foot-col ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}
.foot-col h3{font:700 10px/1.3 var(--arch);letter-spacing:.18em;text-transform:uppercase;color:var(--green);margin:0 0 12px}
.foot-col a{font:500 14px/1.4 var(--inter);text-decoration:none}
.foot-col a:hover{color:var(--green);border-bottom:1px solid var(--green)}
.foot-bottom{
  display:flex;justify-content:space-between;gap:16px;margin-top:30px;padding-top:14px;
  border-top:1px solid var(--rule);font:12px/1.5 var(--inter);color:var(--muted);
}
.foot-bottom p{margin:0}

/* 404 */
.e404{padding:64px 0 92px}
.e404 .code{font:800 clamp(64px,11vw,132px)/.86 var(--arch);letter-spacing:-.05em;color:var(--green);margin:0}
.e404 h1{font:700 clamp(28px,3.4vw,44px)/1.08 var(--arch);letter-spacing:-.025em;margin:18px 0 0;max-width:22ch}
.e404 p.lede{margin:16px 0 26px;max-width:54ch}
.e404 ul{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0 26px;border-top:1px solid var(--rule)}
.e404 li{padding:12px 0}
.e404 li a{font:600 14.5px/1.3 var(--arch);color:var(--green);text-decoration:none;border-bottom:1px solid var(--green);padding-bottom:2px}

@media (max-width:1080px){
  .wrap{padding:0 24px}
  .nav{gap:18px}
  .hero-grid{column-gap:40px}
  .hero h1{font-size:clamp(36px,4.3vw,54px)}
  .partners-in{grid-template-columns:180px minmax(0,1fr);gap:26px}
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "shot" "body";row-gap:0}
  .hero h1{max-width:22ch}
  .hero-body{padding-top:24px}
  .lede{max-width:58ch}
  .cols{columns:1;column-gap:0;column-rule:0}
  .foot-grid{grid-template-columns:1.4fr 1fr;gap:32px}
  .foot-col:last-child{grid-column:1 / -1}
}
@media (max-width:760px){
  .steps{grid-template-columns:1fr;gap:0}
  .faq{columns:1}
  .body2{padding:32px 0}
}
@media (max-width:700px){
  .head-in{min-height:66px;gap:14px}
  .brand img{width:150px}
  .nav{display:none}
  .burger{display:inline-flex}
  .age{min-width:32px;padding:7px 6px 6px;font-size:11.5px}
  .mpanel{background:#efece2;border-top:1px solid var(--rule)}
  .mpanel.open{display:block}
  .mpanel nav{display:block;padding:4px 0 10px}
  .mpanel a{
    display:block;font:600 16px/1.3 var(--arch);text-decoration:none;
    padding:13px 0;border-bottom:1px solid var(--rule);
  }
  .mpanel a[aria-current="page"]{color:var(--green)}
  .mp-note{margin:0;padding:0 0 16px;font:12px/1.5 var(--inter);color:var(--muted)}
  .hero{padding:18px 0 28px}
  .hero-head{padding-top:12px}
  .hero h1{font-size:clamp(29px,8.3vw,40px);letter-spacing:-.03em;margin-top:11px;max-width:none}
  .kicker{font-size:10px;letter-spacing:.15em}
  .hero-shot{margin-top:20px}
  .shot-frame{padding:6px}
  .shot-bar{padding-bottom:7px;margin-bottom:6px}
  .url{font-size:10.5px;padding:4px 7px}
  .https{font-size:8px}
  .hero-shot figcaption{font-size:12px;padding-top:8px;margin-top:6px}
  .hero-body{padding-top:20px}
  .lede{font-size:16.5px;margin-bottom:18px}
  .hero-facts{grid-template-columns:1fr;margin-top:22px}
  .hero-facts li{padding:9px 0;border-top:1px solid var(--rule)}
  .hero-facts li:first-child{border-top:0;padding-top:0}
  .hero-facts b{margin-bottom:2px}
  .hero-facts span{font-size:13px}
  .partners{padding:20px 0 24px}
  .partners-in{grid-template-columns:1fr;gap:10px}
  .partners-note{max-width:none;font-size:12px}
  .logo-grid{gap:8px 14px;margin-top:8px}
  .logo-grid a{height:58px}
  .logo-grid img{height:48px}
  .page-body{padding:2px 0 52px}
  .body2 h2{font-size:1.5rem}
  .foot-grid{grid-template-columns:1fr;gap:28px}
  .foot-col:last-child{grid-column:auto}
  .foot-bottom{flex-direction:column;gap:4px}
}
@media (max-width:700px){
  .tbl-wrap{overflow-x:visible}
  table{min-width:0;table-layout:fixed}
  table.wide{min-width:0}
  th{white-space:normal;font-size:9px;letter-spacing:.08em;padding:8px 6px;line-height:1.35}
  td{font-size:12.5px;line-height:1.42;padding:9px 6px;overflow-wrap:break-word}
  td:first-child{font-size:12.5px}
  td.num{font-size:11.5px}
  thead th:nth-child(1){width:27%}
  thead th:nth-child(2){width:30%}
  thead th:nth-child(3){width:43%}
  table.wide thead th:nth-child(1){width:21%}
  table.wide thead th:nth-child(2){width:24%}
  table.wide thead th:nth-child(3){width:24%}
  table.wide thead th:nth-child(4){width:31%}
}
@media (max-width:560px){
  .wrap{padding:0 18px}
  .logo-grid{gap:10px 12px}
  .logo-grid a{height:56px}
  .logo-grid img{height:44px}
  .foot-col ul{grid-template-columns:1fr 1fr}
  .steps li{padding:14px 0 14px 40px}
  .steps b{font-size:15.5px}
  .steps span{font-size:14px}
  .closing{gap:12px}
  .closing .btn{width:100%}
}
