@import url("../fonts/fonts.css");

:root{
  --hx-primary:#ED0A8E;
  --hx-primary-hover:#C80072;
  --hx-primary-soft:#FFF0F8;
  --hx-accent:#FFB8E1;
  --hx-ink:#101014;
  --hx-dark:#190710;
  --hx-text:#303038;
  --hx-muted:#70707B;
  --hx-line:#E7E3E6;
  --hx-line-strong:#D9D4D8;
  --hx-gray:#F3F4F5;
  --hx-light:#FFF7FC;
  --hx-surface:#FFFFFF;
  --hx-success:#00A86B;
  --hx-success-soft:#E8FAF2;
  --hx-warning:#F6B73C;
  --hx-danger:#E2445C;
  --hx-purple:#A770FF;
  --hx-font-heading:"Manrope",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Apple SD Gothic Neo","Malgun Gothic","Microsoft YaHei",sans-serif;
  --hx-font-body:"Albert Sans",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Apple SD Gothic Neo","Malgun Gothic","Microsoft YaHei",sans-serif;
  --hx-font-mono:"SFMono-Regular","Cascadia Code","Roboto Mono",Consolas,monospace;
  --hx-text-xs:.75rem;
  --hx-text-sm:.875rem;
  --hx-text-md:1rem;
  --hx-text-lg:1.25rem;
  --hx-text-xl:1.75rem;
  --hx-text-2xl:2.625rem;
  --hx-text-hero:3.5rem;
  --hx-leading-tight:1.16;
  --hx-leading-body:1.68;
  --hx-space-1:.5rem;
  --hx-space-2:1rem;
  --hx-space-3:1.5rem;
  --hx-space-4:2.5rem;
  --hx-space-5:4rem;
  --hx-space-6:6rem;
  --hx-space-7:7.25rem;
  --hx-radius-sm:.5rem;
  --hx-radius-md:1rem;
  --hx-radius-lg:1.5rem;
  --hx-radius-pill:999px;
  --hx-shadow:0 18px 60px rgba(25,7,16,.09),0 3px 14px rgba(25,7,16,.05);
  --hx-shadow-hover:0 22px 52px rgba(25,7,16,.11);
  --hx-container-narrow:48rem;
  --hx-container:75rem;
  --hx-container-wide:87rem;
  --hx-header-height:4.5rem;
  --hx-ease:cubic-bezier(.2,.75,.25,1);
}
*{box-sizing:border-box}
html{scroll-behavior:auto;text-size-adjust:100%}
body{margin:0;background:var(--hx-surface);color:var(--hx-text);font-family:var(--hx-font-body);font-size:var(--hx-text-md);line-height:var(--hx-leading-body);-webkit-font-smoothing:antialiased}
main{overflow-x:clip}
img,svg,video{display:block;max-width:100%}
img{height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin-top:0}
h1,h2,h3,h4{color:var(--hx-ink);font-family:var(--hx-font-heading);font-weight:550;line-height:var(--hx-leading-tight);text-wrap:balance}
h1{font-size:clamp(2.7rem,5vw,var(--hx-text-hero));letter-spacing:-.04em}
h2{font-size:clamp(2rem,4vw,var(--hx-text-2xl));letter-spacing:-.035em}
h3{font-size:var(--hx-text-lg);letter-spacing:-.015em}
p{color:var(--hx-muted)}
:focus-visible{outline:3px solid rgba(237,10,142,.28);outline-offset:3px}
::selection{background:var(--hx-accent);color:var(--hx-dark)}
.hx-container,.hx-container-narrow,.hx-container-wide{width:min(100% - 2rem,var(--hx-container));margin-inline:auto}
.hx-container-narrow{max-width:var(--hx-container-narrow)}
.hx-container-wide{max-width:var(--hx-container-wide)}
.hx-grid{display:grid;gap:var(--hx-space-3)}
.hx-grid>*{min-width:0}
.hx-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.hx-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hx-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hx-stack>*+*{margin-top:var(--hx-space-2)}
.hx-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--hx-space-2)}
.hx-mono{font-family:var(--hx-font-mono);font-variant-numeric:tabular-nums}
.hx-muted{color:var(--hx-muted)}
.hx-center{text-align:center}
.hx-surface-gray{background:var(--hx-gray)}
.hx-surface-pink{background:var(--hx-light)}
.hx-section{padding-block:var(--hx-space-7)}
.hx-section-head{max-width:47.5rem;margin:0 auto var(--hx-space-5);text-align:center}
.hx-section-head p{max-width:41rem;margin:1rem auto 0}
.hx-eyebrow{display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.1rem;color:var(--hx-primary-hover);font-size:var(--hx-text-xs);font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.hx-eyebrow:before{content:"";width:1.4rem;height:2px;border-radius:2px;background:var(--hx-primary)}
.hx-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hx-mt-1{margin-top:var(--hx-space-1)}
.hx-mt-2{margin-top:var(--hx-space-2)}
.hx-mt-3{margin-top:var(--hx-space-3)}
.hx-mt-4{margin-top:var(--hx-space-4)}
.hx-mb-0{margin-bottom:0}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--hx-ease),transform .6s var(--hx-ease)}
.reveal-left{transform:translateX(-18px)}
.reveal-right{transform:translateX(18px)}
.reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){
  .hx-grid-3,.hx-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hx-section{padding-block:var(--hx-space-6)}
}
@media(max-width:640px){
  :root{--hx-text-hero:2.65rem;--hx-text-2xl:2rem;--hx-space-6:4rem;--hx-space-7:4.5rem}
  .hx-container,.hx-container-narrow,.hx-container-wide{width:min(100% - 1.25rem,var(--hx-container))}
  .hx-grid-2,.hx-grid-3,.hx-grid-4{grid-template-columns:1fr}
  .hx-section-head{margin-bottom:2.5rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
}
