:root{
  --bg:#ffffff;
  --ink:#0a0a0a;
  --muted:#737373;
  --line:#d9d9d9;
  --soft:#f4f4f2;
  --max:1180px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:16px;
  line-height:1.55;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{width:min(var(--max),calc(100% - 48px));margin:0 auto}

.nav{
  border-bottom:1px solid var(--line);
  background:#fff;
}
.navin{
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.wordmark{
  font-family:Georgia,"Times New Roman",serif;
  font-weight:700;
  font-size:31px;
  line-height:1;
  letter-spacing:-1px;
}
.navlinks{
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
  font-size:13px;
  letter-spacing:.02em;
}
.navlinks a{color:#5f5f5f}
.navlinks a:hover,.navlinks a.active{color:#000}

.hero{padding:84px 0 94px}
.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);
  align-items:center;
  gap:72px;
}
.eyebrow,.page-kicker,.support-label{
  font-size:11px;
  line-height:1.3;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#777;
}
.hero h1{
  margin:14px 0 28px;
  max-width:760px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(68px,8.7vw,132px);
  line-height:.83;
  font-weight:500;
  letter-spacing:-.055em;
}
.hero p{
  margin:0;
  max-width:680px;
  font-size:17px;
  line-height:1.72;
}
.tagline{
  margin-top:28px;
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.icon-card{
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:22%;
  background:#000;
}
.icon-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.section{
  padding:84px 0;
  border-top:1px solid var(--line);
}
.section-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);
  gap:64px;
  align-items:start;
  margin-bottom:64px;
}
.section-head h2{
  margin:12px 0 0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(42px,5.5vw,72px);
  line-height:.95;
  font-weight:500;
  letter-spacing:-.04em;
}
.section-head p{margin:0;color:#444;line-height:1.72}
.feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--ink);
}
.feature{
  min-height:270px;
  padding:20px 28px 28px 0;
  border-bottom:1px solid var(--line);
}
.feature + .feature{padding-left:28px;border-left:1px solid var(--line)}
.num{
  margin-bottom:64px;
  font-size:11px;
  color:#777;
}
.feature h3{
  margin:0 0 14px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  line-height:1.05;
  font-weight:500;
}
.feature p{margin:0;color:#4e4e4e;line-height:1.65}

.footer,.site-footer{
  border-top:1px solid var(--line);
  padding:34px 0 44px;
  color:#555;
  font-size:13px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
}
.footer p{margin:10px 0 0}
.site-footer .wrap{
  display:flex;
  justify-content:space-between;
  gap:24px;
}

/* Shared editorial pages */
.page{padding:82px 0 100px}
.page-wrap{width:min(900px,calc(100% - 48px));margin:0 auto}
.page-title{
  margin:18px 0 0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(62px,8vw,108px);
  line-height:.9;
  font-weight:500;
  letter-spacing:-.05em;
}
.page-subtitle{
  margin:14px 0 0;
  font-size:22px;
  font-weight:600;
}
.page-lead{
  max-width:720px;
  margin:30px 0 68px;
  color:#444;
  font-size:17px;
  line-height:1.75;
}
.page-lead .en,.support-block .en{
  display:block;
  margin-top:8px;
  color:#777;
  font-size:.92em;
}

/* FAQ */
.faq-list{border-top:1px solid #111}
.faq-item{
  padding:30px 0 34px;
  border-bottom:1px solid var(--line);
}
.faq-item h2{
  margin:0 0 14px;
  font-family:Georgia,"Times New Roman",serif;
  font-weight:500;
  font-size:29px;
  line-height:1.12;
}
.faq-item h2 span{
  display:block;
  margin-top:8px;
  font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:14px;
  line-height:1.4;
  color:#777;
  font-weight:500;
}
.faq-item p{margin:0;max-width:760px;color:#3f3f3f}
.page-contact{
  margin-top:60px;
  padding-top:24px;
  border-top:1px solid var(--ink);
  display:flex;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}
.page-contact a{text-decoration:underline;text-underline-offset:3px}

/* Support */
.support-list{border-top:1px solid #111}
.support-block{
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  gap:24px;
  padding:30px 0 36px;
  border-bottom:1px solid var(--line);
}
.support-block h2{
  margin:0 0 14px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:31px;
  line-height:1.05;
  font-weight:500;
}
.support-block h2 span{
  font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:13px;
  color:#777;
  font-weight:500;
}
.support-block p{max-width:720px;margin:10px 0 0;color:#444}
.support-email{
  display:inline-block;
  margin:4px 0 10px;
  font-size:20px;
  text-decoration:underline;
  text-underline-offset:4px;
}

/* Legal / privacy */
.legal{max-width:900px}
.legal>h1{
  margin:18px 0 74px !important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(62px,8vw,104px) !important;
  line-height:.87 !important;
  font-weight:500;
  letter-spacing:-.05em;
}
.legal h2{
  margin:0 0 36px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:42px;
  line-height:1;
  font-weight:500;
}
.legal h3{
  margin:38px 0 10px;
  font-size:19px;
  line-height:1.3;
}
.legal p{
  margin:0 0 16px;
  max-width:820px;
  color:#333;
  line-height:1.8;
}
.legal .rule{
  height:1px;
  background:#111;
  margin:72px 0;
}

/* About page */
main .hero + .section{border-top:1px solid var(--line)}

@media (max-width:800px){
  .wrap{width:min(100% - 32px,var(--max))}
  .navin{min-height:64px;align-items:flex-start;padding-top:18px;padding-bottom:16px}
  .wordmark{font-size:27px}
  .navlinks{gap:12px 16px;font-size:12px;justify-content:flex-end}
  .hero{padding:58px 0 68px}
  .hero-grid{grid-template-columns:1fr;gap:48px}
  .hero h1{font-size:clamp(62px,20vw,88px);max-width:100%}
  .hero p{font-size:16px}
  .icon-card{max-width:560px;margin:0 auto}
  .section{padding:64px 0}
  .section-head{grid-template-columns:1fr;gap:24px;margin-bottom:46px}
  .section-head h2{font-size:52px}
  .feature-grid{grid-template-columns:1fr}
  .feature{
    min-height:auto;
    padding:22px 0 34px;
    border-left:0 !important;
  }
  .feature + .feature{padding-left:0}
  .num{margin-bottom:36px}
  .footer-grid{grid-template-columns:1fr}
  .page{padding:58px 0 76px}
  .page-wrap{width:calc(100% - 32px)}
  .page-title{font-size:58px}
  .page-lead{margin-bottom:48px}
  .faq-item h2{font-size:25px}
  .support-block{grid-template-columns:1fr;gap:12px}
  .support-block h2{font-size:27px}
  .legal>h1{font-size:58px !important;margin-bottom:56px !important}
  .legal h2{font-size:36px}
  .legal h3{font-size:18px}
  .legal p{font-size:15.5px}
  .site-footer .wrap{flex-direction:column;gap:6px}
}

@media (max-width:420px){
  .navin{display:block}
  .navlinks{margin-top:14px;justify-content:flex-start}
  .hero h1{font-size:56px}
  .page-title{font-size:50px}
  .legal>h1{font-size:52px !important}
}
