/* V7 utility classes — GENERATED by scripts/v7/build-utilities.js from the V7.1 design
   templates. Do not edit by hand: re-run `npm run v7:css`. One class per declaration;
   shorthands are emitted before longhands so inline-style semantics are preserved. */
:root {
  --ink: #2d2d2d;
  --ink2: #4f4f4f;
  --body: #5c5c5c;
  --muted: #6b6b6b;
  --gray: #9a9a9a;
  --silver: #b5b5b5;
  --rule: #c4c4c4;
  --line4: #d9d9d9;
  --line: #e3e3e3;
  --line2: #e8e8e8;
  --line3: #efefef;
  --paper2: #f2f2f2;
  --paper: #f7f7f7;
  --paper3: #fafafa;
  --white: #ffffff;
  --accent: #cd385d;
  --accent-dark: #a62a4a;
  --accent-hover: #b8304f;
  --pink: #f08aa6;
  --blush: #fbeaef;
  --blushline: #f0d2da;
  --black: #121212;
  --green: #22c55e;
}

/* display */
.flex{display:flex}
.grid{display:grid}
.iflex{display:inline-flex}
.block{display:block}
.iblock{display:inline-block}

/* position */
.abs{position:absolute}
.rel{position:relative}
.sticky{position:sticky}

/* top */
.top-50p{top:50%}
.top-16{top:16px}
.top-full-plus-12{top:calc(100% + 12px)}
.top-24{top:24px}

/* right */
.right-18{right:18px}

/* bottom */
.bottom-14{bottom:14px}
.bottom-16{bottom:16px}

/* left */
.left-50p{left:50%}
.left-18{left:18px}

/* z-index */
.z-10{z-index:10}

/* width */
.w-auto{width:auto}
.w-full{width:100%}
.w-160{width:160px}
.w-6{width:6px}
.w-8{width:8px}
.w-280{width:280px}
.w-400{width:400px}
.w-132{width:132px}
.w-max{width:max-content}
.w-1{width:1px}
.w-18{width:18px}
.w-10{width:10px}
.w-28{width:28px}
.w-260{width:260px}

/* min-width */
.minw-0{min-width:0}
.minw-200{min-width:200px}
.minw-220{min-width:220px}
.minw-240{min-width:240px}

/* max-width */
.maxw-150{max-width:150px}
.maxw-1200{max-width:1200px}
.maxw-560{max-width:560px}
.maxw-760{max-width:760px}
.maxw-280{max-width:280px}
.maxw-420{max-width:420px}
.maxw-1376{max-width:1376px}
.maxw-520{max-width:520px}
.maxw-400{max-width:400px}
.maxw-720{max-width:720px}
.maxw-820{max-width:820px}
.maxw-980{max-width:980px}

/* height */
.h-28{height:28px}
.h-6{height:6px}
.h-72{height:72px}
.h-8{height:8px}
.h-280{height:280px}
.h-400{height:400px}
.h-48{height:48px}
.h-120{height:120px}
.h-18{height:18px}
.h-10{height:10px}
.h-16{height:16px}

/* min-height */
.minh-480{min-height:480px}
.minh-420{min-height:420px}
.minh-72{min-height:72px}
.minh-660{min-height:660px}
.minh-460{min-height:460px}
.minh-600{min-height:600px}

/* margin */
.m-0{margin:0}
.m-0-0-12{margin:0 0 12px}
.m-n150-0-0-n140{margin:-150px 0 0 -140px}
.m-n210-0-0-n200{margin:-210px 0 0 -200px}
.m-110-0-0-n80{margin:110px 0 0 -80px}
.m-40-0-0-41{margin:40px 0 0 41px}
.m-40-0-0-n201{margin:40px 0 0 -201px}
.m-n100-0-0-41{margin:-100px 0 0 41px}
.m-n100-0-0-n201{margin:-100px 0 0 -201px}
.m-n170-0-0-n80{margin:-170px 0 0 -80px}
.m-n34-0-0-n66{margin:-34px 0 0 -66px}
.m-n34-0-0-n80{margin:-34px 0 0 -80px}
.m-n140-0-0-n140{margin:-140px 0 0 -140px}
.m-n200-0-0-n200{margin:-200px 0 0 -200px}
.m-n8-0-0{margin:-8px 0 0}
.m-120-0-0-n80{margin:120px 0 0 -80px}
.m-50-0-0-41{margin:50px 0 0 41px}
.m-50-0-0-n201{margin:50px 0 0 -201px}
.m-n160-0-0-n80{margin:-160px 0 0 -80px}
.m-n24-0-0-n66{margin:-24px 0 0 -66px}
.m-n90-0-0-41{margin:-90px 0 0 41px}
.m-n90-0-0-n201{margin:-90px 0 0 -201px}
.m-0-auto{margin:0 auto}
.m-4-0-0{margin:4px 0 0}
.m-92-0-0-8{margin:92px 0 0 8px}
.m-92-0-0-n168{margin:92px 0 0 -168px}
.m-n179-0-0-n80{margin:-179px 0 0 -80px}
.m-n75-0-0-63{margin:-75px 0 0 63px}
.m-n75-0-0-n223{margin:-75px 0 0 -223px}
.m-10-0-0{margin:10px 0 0}

/* margin-top */
.mt-12{margin-top:12px}
.mt-auto{margin-top:auto}
.mt-1{margin-top:1px}
.mt-n16{margin-top:-16px}

/* margin-right */
.mr-4{margin-right:4px}
.mr-8{margin-right:8px}

/* margin-bottom */
.mb-8{margin-bottom:8px}
.mb-10{margin-bottom:10px}
.mb-4{margin-bottom:4px}

/* padding */
.p-9-14{padding:9px 14px}
.p-6-12{padding:6px 12px}
.p-9-12{padding:9px 12px}
.p-16-20{padding:16px 20px}
.p-14-0{padding:14px 0}
.p-22{padding:22px}
.p-10-12{padding:10px 12px}
.p-0-32-96{padding:0 32px 96px}
.p-40-0{padding:40px 0}
.p-16-0{padding:16px 0}
.p-32{padding:32px}
.p-5-8{padding:5px 8px}
.p-12-14{padding:12px 14px}
.p-9-0{padding:9px 0}
.p-10-14{padding:10px 14px}
.p-16-28{padding:16px 28px}
.p-24{padding:24px}
.p-0-32{padding:0 32px}
.p-12-20{padding:12px 20px}
.p-48-32{padding:48px 32px}
.p-15-24{padding:15px 24px}
.p-8-14{padding:8px 14px}
.p-96-32{padding:96px 32px}
.p-56-32-88{padding:56px 32px 88px}
.p-18-32{padding:18px 32px}
.p-40-0-0{padding:40px 0 0}
.p-64{padding:64px}
.p-7-0{padding:7px 0}
.p-14-18{padding:14px 18px}
.p-18{padding:18px}
.p-18-20{padding:18px 20px}
.p-20{padding:20px}
.p-16-12{padding:16px 12px}
.p-20-20-18{padding:20px 20px 18px}
.p-11-0{padding:11px 0}
.p-16-18{padding:16px 18px}
.p-6-10{padding:6px 10px}
.p-5-10{padding:5px 10px}
.p-52-24-48{padding:52px 24px 48px}
.p-28-32{padding:28px 32px}
.p-28-0{padding:28px 0}
.p-8-0{padding:8px 0}
.p-28{padding:28px}
.p-48{padding:48px}
.p-12-16{padding:12px 16px}
.p-20-18{padding:20px 18px}
.p-4-10{padding:4px 10px}
.p-12-0-8{padding:12px 0 8px}
.p-6-20-10{padding:6px 20px 10px}
.p-10-9{padding:10px 9px}
.p-11-12{padding:11px 12px}
.p-13-16{padding:13px 16px}
.p-24-28{padding:24px 28px}
.p-56-24-48{padding:56px 24px 48px}
.p-18-22{padding:18px 22px}
.p-18-24{padding:18px 24px}
.p-26-0{padding:26px 0}
.p-40{padding:40px}
.p-44{padding:44px}
.p-12-0{padding:12px 0}
.p-40-44{padding:40px 44px}
.p-0-32-88{padding:0 32px 88px}
.p-120-32-120{padding:120px 32px 120px}
.p-13-20{padding:13px 20px}
.p-14-24{padding:14px 24px}
.p-16-0-8{padding:16px 0 8px}
.p-16-32-0{padding:16px 32px 0}
.p-20-22{padding:20px 22px}
.p-28-0-0{padding:28px 0 0}
.p-36{padding:36px}
.p-48-32-64{padding:48px 32px 64px}
.p-56-32-96{padding:56px 32px 96px}
.p-96-32-56{padding:96px 32px 56px}

/* padding-top */
.pt-8{padding-top:8px}
.pt-4{padding-top:4px}
.pt-6{padding-top:6px}
.pt-24{padding-top:24px}
.pt-40{padding-top:40px}
.pt-12{padding-top:12px}
.pt-2{padding-top:2px}
.pt-3{padding-top:3px}

/* padding-right */
.pr-56{padding-right:56px}

/* padding-bottom */
.pb-20{padding-bottom:20px}
.pb-10{padding-bottom:10px}
.pb-12{padding-bottom:12px}
.pb-8{padding-bottom:8px}
.pb-2{padding-bottom:2px}

/* padding-left */
.pl-20{padding-left:20px}
.pl-12{padding-left:12px}
.pl-14{padding-left:14px}

/* flex */
.flex-1-1-280{flex:1 1 280px}
.flex-2-1-560{flex:2 1 560px}
.flex-1-1-200{flex:1 1 200px}
.flex-1-1-260{flex:1 1 260px}
.flex-1-1-420{flex:1 1 420px}

/* flex-direction */
.col{flex-direction:column}

/* flex-wrap */
.wrap{flex-wrap:wrap}

/* flex-grow */
.grow{flex-grow:1}

/* flex-shrink */
.shrink-0{flex-shrink:0}

/* align-items */
.ai-c{align-items:center}
.ai-start{align-items:start}
.ai-base{align-items:baseline}
.ai-fstart{align-items:flex-start}
.ai-stretch{align-items:stretch}
.ai-end{align-items:end}
.ai-fend{align-items:flex-end}

/* align-self */
.as-fstart{align-self:flex-start}
.as-c{align-self:center}
.as-stretch{align-self:stretch}

/* justify-content */
.jc-c{justify-content:center}
.jc-between{justify-content:space-between}

/* grid-template-columns */
.cols-96-1fr{grid-template-columns:96px 1fr}
.cols-fit-340{grid-template-columns:repeat(auto-fit, minmax(min(340px, 100%), 1fr))}
.cols-fit-480{grid-template-columns:repeat(auto-fit, minmax(min(480px, 100%), 1fr))}
.cols-mm220-340-1fr{grid-template-columns:minmax(220px, 340px) 1fr}
.cols-fit-520{grid-template-columns:repeat(auto-fit, minmax(min(520px, 100%), 1fr))}
.cols-mm200-260-1fr{grid-template-columns:minmax(200px, 260px) 1fr}
.cols-mm150-180-1fr{grid-template-columns:minmax(150px, 180px) 1fr}
.cols-fit-170{grid-template-columns:repeat(auto-fit, minmax(min(170px, 100%), 1fr))}
.cols-fit-300{grid-template-columns:repeat(auto-fit, minmax(min(300px, 100%), 1fr))}
.cols-40-1fr{grid-template-columns:40px 1fr}
.cols-fit-240{grid-template-columns:repeat(auto-fit, minmax(min(240px, 100%), 1fr))}
.cols-24-1fr{grid-template-columns:24px 1fr}
.cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}
.cols-fit-420{grid-template-columns:repeat(auto-fit, minmax(min(420px, 100%), 1fr))}
.cols-28-1fr{grid-template-columns:28px 1fr}
.cols-64-1fr{grid-template-columns:64px 1fr}
.cols-fit-200{grid-template-columns:repeat(auto-fit, minmax(min(200px, 100%), 1fr))}
.cols-fit-120{grid-template-columns:repeat(auto-fit, minmax(min(120px, 100%), 1fr))}
.cols-fit-260{grid-template-columns:repeat(auto-fit, minmax(min(260px, 100%), 1fr))}
.cols-fit-150{grid-template-columns:repeat(auto-fit, minmax(min(150px, 100%), 1fr))}
.cols-fit-220{grid-template-columns:repeat(auto-fit, minmax(min(220px, 100%), 1fr))}
.cols-mm0-220-1fr{grid-template-columns:minmax(0, 220px) minmax(0, 1fr)}
.cols-56-1fr-auto{grid-template-columns:56px 1fr auto}
.cols-fit-360{grid-template-columns:repeat(auto-fit, minmax(min(360px, 100%), 1fr))}
.cols-160-1fr{grid-template-columns:160px 1fr}
.cols-fit-280{grid-template-columns:repeat(auto-fit, minmax(min(280px, 100%), 1fr))}
.cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}
.cols-fit-140{grid-template-columns:repeat(auto-fit, minmax(min(140px, 100%), 1fr))}
.cols-fit-380{grid-template-columns:repeat(auto-fit, minmax(min(380px, 100%), 1fr))}
.cols-fit-400{grid-template-columns:repeat(auto-fit, minmax(min(400px, 100%), 1fr))}
.cols-mm0-300-1fr{grid-template-columns:minmax(0, 300px) minmax(0, 1fr)}

/* grid-column */
.colspan-1{grid-column:span 1}
.colspan-2{grid-column:span 2}

/* gap */
.gap-10{gap:10px}
.gap-8{gap:8px}
.gap-24{gap:24px}
.gap-12{gap:12px}
.gap-16{gap:16px}
.gap-6{gap:6px}
.gap-20{gap:20px}
.gap-4{gap:4px}
.gap-24-48{gap:24px 48px}
.gap-56{gap:56px}
.gap-40{gap:40px}
.gap-28{gap:28px}
.gap-14{gap:14px}
.gap-32{gap:32px}
.gap-48{gap:48px}
.gap-64{gap:64px}
.gap-1{gap:1px}
.gap-18{gap:18px}
.gap-9{gap:9px}
.gap-2{gap:2px}
.gap-7{gap:7px}
.gap-0{gap:0}
.gap-3{gap:3px}

/* column-gap */
.cgap-12{column-gap:12px}

/* font-family */
.ff-mono{font-family:'JetBrains Mono', ui-monospace, Menlo, monospace}
.ff-display{font-family:Outfit, Poppins, system-ui, sans-serif}
.ff-body{font-family:Poppins, system-ui, sans-serif}
.ff-sysmono{font-family:ui-monospace, SFMono-Regular, Menlo, monospace}

/* font-size */
.fs-13{font-size:13px}
.fs-12{font-size:12px}
.fs-14{font-size:14px}
.fs-10{font-size:10px}
.fs-15{font-size:15px}
.fs-11{font-size:11px}
.fs-18{font-size:18px}
.fs-16{font-size:16px}
.fs-17{font-size:17px}
.fs-30{font-size:30px}
.fs-13p5{font-size:13.5px}
.fs-26{font-size:26px}
.fs-12p5{font-size:12.5px}
.fs-34{font-size:34px}
.fs-28{font-size:28px}
.fs-44{font-size:44px}
.fs-40{font-size:40px}
.fs-22{font-size:22px}
.fs-48{font-size:48px}
.fs-64{font-size:64px}
.fs-20{font-size:20px}
.fs-8{font-size:8px}
.fs-56{font-size:56px}
.fs-24{font-size:24px}
.fs-11p5{font-size:11.5px}
.fs-14p5{font-size:14.5px}
.fs-32{font-size:32px}
.fs-9{font-size:9px}
.fs-6{font-size:6px}
.fs-7{font-size:7px}
.fs-19{font-size:19px}
.fs-36{font-size:36px}
.fs-68{font-size:68px}

/* font-weight */
.fw-500{font-weight:500}
.fw-400{font-weight:400}
.fw-600{font-weight:600}
.fw-300{font-weight:300}

/* line-height */
.lh-160{line-height:1.6}
.lh-170{line-height:1.7}
.lh-115{line-height:1.15}
.lh-150{line-height:1.5}
.lh-165{line-height:1.65}
.lh-130{line-height:1.3}
.lh-125{line-height:1.25}
.lh-140{line-height:1.4}
.lh-110{line-height:1.1}
.lh-120{line-height:1.2}
.lh-100{line-height:1}
.lh-155{line-height:1.55}
.lh-108{line-height:1.08}
.lh-104{line-height:1.04}
.lh-135{line-height:1.35}
.lh-175{line-height:1.75}
.lh-112{line-height:1.12}
.lh-145{line-height:1.45}

/* letter-spacing */
.ls-14{letter-spacing:0.14em}
.ls-n1{letter-spacing:-0.01em}
.ls-n2{letter-spacing:-0.02em}
.ls-10{letter-spacing:0.1em}
.ls-12{letter-spacing:0.12em}
.ls-16{letter-spacing:0.16em}
.ls-8{letter-spacing:0.08em}
.ls-n2p5{letter-spacing:-0.025em}
.ls-n3{letter-spacing:-0.03em}
.ls-2{letter-spacing:0.02em}

/* text-transform */
.upper{text-transform:uppercase}

/* text-decoration */
.td-none{text-decoration:none}

/* text-align */
.ta-center{text-align:center}
.ta-left{text-align:left}

/* text-wrap */
.balance{text-wrap:balance}

/* white-space */
.nowrap{white-space:nowrap}

/* vertical-align */
.va-top{vertical-align:top}

/* color */
.c-ink{color:var(--ink)}
.c-muted{color:var(--muted)}
.c-body{color:var(--body)}
.c-accent{color:var(--accent)}
.c-white{color:var(--white)}
.c-rule{color:var(--rule)}
.c-pink{color:var(--pink)}
.c-w60{color:rgba(255,255,255,0.6)}
.c-w72{color:rgba(255,255,255,0.72)}
.c-w70{color:rgba(255,255,255,0.7)}
.c-w75{color:rgba(255,255,255,0.75)}
.c-ink2{color:var(--ink2)}
.c-silver{color:var(--silver)}
.c-w55{color:rgba(255,255,255,0.55)}
.c-gray{color:var(--gray)}
.c-w50{color:rgba(255,255,255,0.5)}
.c-w45{color:rgba(255,255,255,0.45)}
.c-w40{color:rgba(255,255,255,0.4)}
.c-w78{color:rgba(255,255,255,0.78)}

/* background */
.bg-white{background:var(--white)}
.bg-paper{background:var(--paper)}
.bg-accent{background:var(--accent)}
.bg-blush{background:var(--blush)}
.bg-ink{background:var(--ink)}
.bg-w10{background:rgba(255,255,255,0.1)}
.bg-fade{background:linear-gradient(180deg, #ffffff 0%, #f7f7f7 100%)}
.bg-w6{background:rgba(255,255,255,0.06)}
.bg-black{background:var(--black)}
.bg-green{background:var(--green)}
.bg-line{background:var(--line)}
.bg-pink{background:var(--pink)}
.bg-line2{background:var(--line2)}
.bg-paper2{background:var(--paper2)}
.bg-line4{background:var(--line4)}
.bg-paper3{background:var(--paper3)}

/* background-image */
.bgi-dots{background-image:radial-gradient(rgba(45,45,45,0.14) 1px, transparent 1px)}
.bgi-glow{background-image:radial-gradient(ellipse 50% 90% at 100% 100%, rgba(205,56,93,0.35) 0%, rgba(205,56,93,0) 70%)}
.bgi-glow2{background-image:radial-gradient(ellipse 60% 70% at 100% 100%, rgba(205,56,93,0.45) 0%, rgba(205,56,93,0) 70%)}

/* background-size */
.bgs-18-18{background-size:18px 18px}

/* border */
.b-line{border:1px solid #e3e3e3}
.b-ink16{border:1px solid rgba(45,45,45,0.16)}
.b-line2{border:1px solid #e8e8e8}
.b-blushline{border:1px solid #f0d2da}
.b-ink{border:1px solid #2d2d2d}
.b-w20{border:1px solid rgba(255,255,255,0.2)}
.b-line4{border:1px solid #d9d9d9}
.b-w12{border:1px solid rgba(255,255,255,0.12)}
.b-accent12{border:1px solid rgba(205,56,93,0.12)}
.b-dashed-ink28{border:1px dashed rgba(45,45,45,0.28)}
.b-dashed-ink25{border:1px dashed rgba(45,45,45,0.25)}
.b-w14{border:1px solid rgba(255,255,255,0.14)}
.b-dashed-line4{border:1px dashed #d9d9d9}

/* border-top */
.bt-line3{border-top:1px solid #efefef}
.bt-line{border-top:1px solid #e3e3e3}
.bt-w12{border-top:1px solid rgba(255,255,255,0.12)}
.bt-line2{border-top:1px solid #e8e8e8}
.bt-ink{border-top:1px solid #2d2d2d}

/* border-right */
.br-line{border-right:1px solid #e3e3e3}
.br-line3{border-right:1px solid #efefef}

/* border-bottom */
.bb-line{border-bottom:1px solid #e3e3e3}
.bb-line3{border-bottom:1px solid #efefef}
.bb-line2{border-bottom:1px solid #e8e8e8}
.bb-ink{border-bottom:1px solid #2d2d2d}
.bb-w40{border-bottom:1px solid rgba(255,255,255,0.4)}

/* border-left */
.bl-2accent{border-left:2px solid #cd385d}
.bl-2line{border-left:2px solid #e3e3e3}

/* border-radius */
.rad-full{border-radius:999px}
.rad-8{border-radius:8px}
.rad-16{border-radius:16px}
.rad-20{border-radius:20px}
.rad-6{border-radius:6px}
.rad-10{border-radius:10px}
.rad-24{border-radius:24px}
.rad-12{border-radius:12px}
.rad-14{border-radius:14px}

/* box-shadow */
.sh-glow{box-shadow:0 8px 24px rgba(45,45,45,0.10), 0 0 0 6px rgba(205,56,93,0.08)}
.sh-float{box-shadow:0 30px 80px rgba(0,0,0,0.06)}
.sh-accent{box-shadow:0 10px 24px rgba(205,56,93,0.25)}
.sh-soft{box-shadow:0 8px 24px rgba(45,45,45,0.06)}
.sh-soft2{box-shadow:0 8px 24px rgba(45,45,45,0.08)}
.sh-panel{box-shadow:0 30px 80px rgba(0,0,0,0.10), 0 2px 8px rgba(0,0,0,0.04)}
.sh-deep{box-shadow:0 20px 40px rgba(45,45,45,0.25)}
.sh-card{box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.sh-4d113b{box-shadow:0 0 0 4px rgba(205,56,93,0.25)}
.sh-accentglow{box-shadow:0 0 40px rgba(205,56,93,0.35)}
.sh-deep2{box-shadow:0 20px 50px rgba(45,45,45,0.10)}
.sh-float2{box-shadow:0 30px 80px rgba(0,0,0,0.08), 0 0 0 1px rgba(205,56,93,0.04)}

/* overflow */
.ov-hidden{overflow:hidden}

/* transform */
.tf-xn50p{transform:translateX(-50%)}
.tf-rot180{transform:rotate(180deg)}

/* cursor */
.cur-pointer{cursor:pointer}

/* object-fit */
.of-contain{object-fit:contain}

/* aspect-ratio */
.ar-3-4{aspect-ratio:3 / 4}

/* -webkit-font-smoothing */
.smooth{-webkit-font-smoothing:antialiased}

/* border-collapse */
.border-collapse-collapse{border-collapse:collapse}

/* columns */
.columns-3-300px{columns:3 300px}

/* break-inside */
.break-inside-avoid{break-inside:avoid}
