@font-face{font-family:Instrument;src:url(instrument-sans-regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Instrument;src:url(instrument-sans-semibold.woff2) format("woff2");font-style:normal;font-weight:600 800;font-display:swap}
:root{--ink:#0f172a;--muted:#475569;--purple:#4338ca;--purple-dark:#302598;--rose:#ec4899;--pale:#f4f4ff;--line:#dbe0eb;--wrap:1216px;color:var(--ink);font-family:Instrument,"Segoe UI",sans-serif;font-synthesis:none;line-height:1.55}
*{box-sizing:border-box}
body{margin:0;background:#fff}
img{display:block;max-width:100%;height:auto}
svg.icon{width:20px;height:20px;flex:none;stroke-width:1.8}
p,h1,h2,h3,figure,dl,dd{margin:0}
h1,h2,h3{line-height:1.1;text-wrap:balance;font-weight:600}
h1,h2{letter-spacing:-.04em}h3{letter-spacing:-.025em}
p{color:var(--muted)}a{color:var(--purple);text-underline-offset:.22em}
a:hover{color:var(--purple-dark)}
button,summary{font:inherit;cursor:pointer}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a62274;outline-offset:4px}
::selection{background:#dfd9ff;color:#191450}
.wrap{width:min(calc(100% - 96px),var(--wrap));margin-inline:auto}
.skip{position:absolute;top:-100px;left:16px;background:white;padding:12px;z-index:6}.skip:focus{top:8px}
.site-header{border-bottom:1px solid var(--line);background:#fff;position:relative;z-index:5}
.bar{min-height:78px;display:flex;align-items:center;gap:36px}
.brand{display:inline-flex;align-items:center;min-height:44px;flex:none}.brand img{width:159px}
.links{display:flex;align-items:center;gap:30px;margin-left:auto}
.links a,.login,.mobile-menu a{font-weight:600;text-decoration:none;color:var(--ink);font-size:15px;display:inline-flex;align-items:center;min-height:44px}
.links a:hover,.links a[aria-current],.login:hover,.mobile-menu a:hover{color:var(--purple);text-decoration:underline}
.access{display:flex;align-items:center;gap:17px;border-left:1px solid var(--line);padding-left:27px}
.button,.secondary{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:11px 20px;border-radius:8px;text-decoration:none;font-weight:600;line-height:1.3}
.button,.button:visited{background:var(--purple);color:white}.button:hover{background:var(--purple-dark);color:white}
.secondary{border:1px solid #9da5bb;background:#fff;color:var(--ink)}.secondary:hover{background:var(--pale);border-color:var(--purple)}
.bar .button{font-size:15px;min-height:43px;padding:10px 16px}
.mobile-menu{display:none}
.hero{display:grid;grid-template-columns:1fr 1.04fr;gap:clamp(36px,5vw,84px);padding-block:clamp(54px,6.4vw,97px);align-items:center}
.hero h1{font-size:clamp(58px,5.55vw,85px);line-height:1.025}
.hero h1 em{font-style:normal;color:var(--purple)}
.hero-copy>p{font-size:clamp(19px,1.5vw,23px);line-height:1.52;margin:24px 0 26px;max-width:38ch}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-note{color:var(--muted);display:flex;gap:9px;align-items:center;font-size:14px;margin-top:20px}
.hero-note svg.icon{width:17px;height:17px;color:var(--purple)}
.hero-demo{min-width:0;position:relative}
.demo-stage{position:relative;isolation:isolate;display:grid;place-items:center;min-height:clamp(290px,25vw,365px);background:#e9e8ff;border-radius:20px;overflow:hidden}
.demo-stage:before{content:"";position:absolute;inset:0;background:var(--purple);clip-path:polygon(69% 0,100% 0,100% 100%,13% 100%);z-index:-2}
.demo-stage:after{content:"";position:absolute;right:-44px;bottom:-57px;width:62%;height:89%;opacity:.22;transform:rotate(-6deg);background:center/contain no-repeat url(checapues-symbol.svg);filter:brightness(0) invert(1);z-index:-1}
.card-back,.punch-card{width:74%;max-width:410px;clip-path:polygon(26px 0,100% 0,100% 100%,0 100%,0 26px);border-radius:5px}
.card-back{position:absolute;height:70%;background:#c8c5ff;transform:translate(-9px,2px) rotate(-7deg)}
.punch-card{position:relative;background:white;padding:clamp(17px,2vw,32px);transform:rotate(3deg)}
.card-header,.card-bottom,.punch-readout{display:flex;align-items:center;justify-content:space-between}
.card-header{gap:8px;color:var(--muted);font-size:clamp(10px,.9vw,13px);font-weight:600}.card-header img{width:clamp(84px,8.5vw,124px)}
.punch-readout{border-block:1px solid var(--line);margin-top:21px;padding:18px 0 15px;gap:10px}
.punch-label{color:var(--muted);font-size:14px}
.punch-readout time{display:block;font-variant-numeric:tabular-nums;font-size:clamp(54px,5.2vw,82px);line-height:1.05;letter-spacing:-.04em;font-weight:600}
.stamp{display:grid;place-items:center;width:45px;height:45px;background:#dcfce7;color:#176139;border-radius:50%}
.stamp svg.icon{width:24px;height:24px;stroke-width:2.6}
.card-bottom{gap:6px;color:var(--muted);font-size:clamp(10px,.9vw,13px);padding-top:14px}
.card-bottom span{display:flex;align-items:center;gap:5px}.card-bottom svg.icon{width:14px;height:14px}
.card-bottom strong{color:var(--ink);font-variant-numeric:tabular-nums}
.hero-demo figcaption{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin-top:11px}
.demo-controls{display:flex;gap:2px}.demo-controls button{background:none;color:var(--muted);font-size:13px;font-weight:600;border:0;border-radius:6px;padding:7px 8px}.demo-controls button:hover{background:#f2f2fa}
.demo-controls button[aria-pressed=true]{background:#e9e8ff;color:#3730a3}
.pale{background:#f5f6fb}.features,.pricing-preview{padding-block:clamp(56px,6vw,90px)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}
.section-heading>p{max-width:50ch;line-height:1.6;font-size:17px}
.section-heading h2,.product-copy h2,.law-teaser h2,.pricing-example h2,.explore h2{font-size:clamp(34px,3.4vw,51px)}
.method-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cdd3e5}
.method{display:flex;flex-direction:column;align-items:start;text-decoration:none;color:var(--ink);padding:28px 26px 2px 0}
.method+.method{border-left:1px solid #cdd3e5;padding-left:30px}
.method-icon,.law-icon{display:grid;place-items:center;background:#e4e5ff;color:var(--purple);border-radius:12px;width:48px;height:48px}
.method:nth-child(2) .method-icon{background:#e2f4ec;color:#22684c}.method:nth-child(3) .method-icon{background:#fae4ef;color:#a42368}
.method-icon svg.icon{width:25px;height:25px}.method h3{font-size:25px;margin:22px 0 12px}.method p{line-height:1.55;max-width:39ch}
.method-link,.light-link{display:inline-flex;align-items:center;gap:10px;font-weight:600;margin-top:auto;padding-top:17px;color:var(--purple)}
.method:hover .method-link,.light-link:hover{text-decoration:underline}
.product-section{padding-block:clamp(60px,7.5vw,112px);display:grid;grid-template-columns: .84fr 1.16fr;align-items:center;gap:6%}
.product-copy>p,.law-teaser p{font-size:18px;line-height:1.6;margin:20px 0}
.resource-list{padding:0;list-style:none;margin:25px 0 0}.resource-list li{border-top:1px solid var(--line)}
.resource-list a{min-height:47px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:600;text-decoration:none}.resource-list a:hover{text-decoration:underline}
.product-shot{min-width:0;padding:18px;background:#eeeff8;border-radius:15px}.product-shot img{border-radius:6px}.product-shot figcaption{font-size:13px;color:var(--muted);margin-top:12px}
.pricing-preview{border-top:1px solid var(--line)}.pricing-preview .section-heading h2{max-width:15ch}
.pricing-summary,.pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.pricing-summary>div{padding:22px 16px 16px 0;border-top:2px solid #b9b5ed}
.pricing-summary dt,.pricing-card h3{font-weight:600;font-size:22px}
.pricing-summary strong,.plan-price strong{display:block;font-size:clamp(34px,3.4vw,52px);line-height:1.3;font-weight:600;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.pricing-summary dd>span,.pricing-note{font-size:14px;color:var(--muted)}
.pricing-summary small,.plan-price span{font-size:15px;letter-spacing:0;color:var(--muted);font-weight:400}
.pricing-note{margin:12px 0 23px}
.law-band{background:#2c266e;color:white}.law-teaser{display:flex;align-items:start;gap:30px;padding-block:clamp(48px,5vw,76px)}
.law-teaser>div:last-child{max-width:850px}.law-teaser p{color:#e6e4ff}.law-icon{background:#464084;color:#fff;flex:none}
.light-link,.light-link:hover{padding:0;color:white}
.footer{border-top:1px solid var(--line);padding-block:38px 27px}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:30px}.footer .brand img{width:145px}
.footer-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 26px}.footer-nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-weight:600;font-size:14px}
.footer-bottom{font-size:13px;margin-top:20px;color:var(--muted)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 26px;border-top:1px solid var(--line);padding-top:12px}
.legal-links{display:flex;flex-wrap:wrap;gap:0 20px}
.legal-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);text-underline-offset:.22em}
.legal-links a:hover,.legal-links a[aria-current]{color:var(--ink);text-decoration:underline}
.legal-version{margin-top:18px;font-size:15px;color:var(--muted)}
.hero-contact{display:flex;align-items:center;gap:.5em;width:fit-content;min-height:44px;margin-top:6px;color:var(--purple-dark);font-size:16px;font-weight:600;text-underline-offset:3px}
.hero-contact svg{width:18px;height:18px;flex:none}
.legal-mobile-index{display:none}
.legal-layout .article-body{overflow-wrap:anywhere}
@media(max-width:780px){
  .legal-layout .toc{display:none}
  .legal-mobile-index{display:block;padding:0 17px;margin:0 0 28px;border:1px solid var(--line);border-radius:10px;background:var(--pale)}
  .legal-mobile-index summary{padding:13px 0;color:var(--purple-dark);font-weight:600;cursor:pointer}
  .legal-mobile-index ol{list-style:none;margin:0;padding:0 0 10px}
  .legal-mobile-index a{display:block;padding:10px 0;line-height:1.5}
}
.article-body li+li{margin-top:.45em}
@media print{body .site-header,body .footer,body .toc,body .legal-mobile-index,body .explore,body .crumb{display:none}body .article-layout{display:block;border:0;padding:0}body .article-body{max-width:none;font-size:11pt}body .article-body h2{break-after:avoid}}
.crumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px;color:var(--muted);padding-top:29px}
.crumb a{color:var(--muted)}.crumb svg.icon{width:14px;height:14px}
.article-heading,.pricing-intro{padding-block:clamp(30px,4vw,60px);max-width:960px}
.article-heading h1,.pricing-intro h1{font-size:clamp(39px,5.1vw,72px);line-height:1.05}
.article-heading p,.pricing-intro p{font-size:clamp(18px,1.65vw,23px);line-height:1.55;margin-top:19px;max-width:66ch}
.article-layout{display:grid;grid-template-columns: minmax(190px,.55fr) minmax(0,1.45fr);gap:clamp(45px,7vw,110px);border-top:1px solid var(--line);padding-block:40px 70px}
.toc{align-self:start;background:var(--pale);border-radius:12px;padding:21px 24px}.toc strong{font-size:17px}.toc ol{padding:0;list-style:none;margin:13px 0 0}.toc li+li{border-top:1px solid #d8dbec}.toc a{display:block;font-size:15px;line-height:1.45;text-decoration:none;padding:9px 0}.toc a:hover{text-decoration:underline}
.article-body{max-width:75ch;min-width:0;font-size:18px;line-height:1.7}
.article-body section+section{margin-top:36px}.article-body h2,.pricing-options h2,.pricing-terms h2{font-size:clamp(27px,2.5vw,38px);scroll-margin:24px}
.article-body h2+p,.article-body p+p,.article-body section>p,.article-body table{margin-top:15px}
.article-body .inline-demo{max-width:255px;margin:26px auto 0}.inline-demo img{border:1px solid var(--line);border-radius:16px}.inline-demo figcaption{font-size:13px;margin-top:8px;color:var(--muted)}
table{width:100%;border-spacing:0;border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;line-height:1.5}
caption{text-align:left;color:var(--muted);font-size:15px;padding:7px 0 11px}th,td{padding:12px 15px;border-bottom:1px solid var(--line)}thead{background:var(--pale);color:var(--ink)}
.faq{margin-top:40px}.faq h2{margin-bottom:12px}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:14px 0;font-weight:600;line-height:1.42}.faq p{padding-bottom:15px;font-size:16px}
.explore{background:var(--pale);padding:38px 0}.explore-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.explore h2{font-size:27px}
.related{margin-top:35px}.related h2{font-size:24px}
.pricing-options,.pricing-terms,.pricing-example{margin-bottom:52px}
.pricing-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;padding:22px 19px;gap:14px}
.pricing-card.featured{border:2px solid var(--purple);padding:21px 18px;background:var(--pale)}
.pricing-intro .actions{margin-top:24px}
.availability{margin-top:18px;max-width:69ch}.availability summary{font-size:15px;color:var(--purple);font-weight:600}.availability p{margin-top:8px;font-size:16px;line-height:1.6}
.plan-title{display:flex;align-items:center;flex-wrap:wrap;gap:6px 9px}.plan-title>span{font-size:12px;font-weight:600;line-height:1.4;padding:3px 7px;border-radius:5px;background:#e2deff;color:#403397}
.pricing-card>p:not(.plan-price){font-size:15px}.plan-price strong{display:inline}.plan-price{color:var(--ink)}
.plan-limits{padding-left:18px;margin:0 0 8px;font-size:15px}.plan-limits li+li{margin-top:6px}
.pricing-card .button{margin-top:auto;font-size:15px}.pricing-card:not(.featured) .button{background:#edeefe;color:#3730a3}
.pricing-table-wrap{overflow:auto;margin-bottom:12px}.pricing-terms>p,.pricing-example>p{max-width:75ch;line-height:1.65;margin-top:13px}
.pricing-example{padding:clamp(20px,4vw,49px);border-radius:15px;background:var(--pale)}.pricing-example h2{max-width:24ch}.pricing-links{margin-top:18px}
@media(max-width:1000px){.wrap{width:calc(100% - 52px)}.bar{gap:18px}.links{gap:16px}.access{padding-left:17px;gap:12px}.hero{gap:26px}.hero h1{font-size:clamp(48px,6.2vw,64px)}.hero-demo figcaption{flex-wrap:wrap}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.bar{min-height:66px;gap:13px}.brand img{width:130px}.links{display:none}.access{margin-left:auto;padding:0;border:0}.bar .button{display:none}.mobile-menu{display:block}.mobile-menu summary{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;top:calc(100% - 1px);background:#fff;left:0;right:0;border-block:1px solid var(--line);padding:10px 26px;display:grid}.hero{grid-template-columns:1fr;gap:34px}.hero-copy>p{max-width:45ch;margin:17px 0 20px}.hero h1{font-size:clamp(50px,9.3vw,73px)}.hero-note{margin-top:14px}.hero-demo{max-width:580px;width:100%;margin-inline:auto}.demo-stage{min-height:280px}.card-back{height:70%}.punch-card{padding:21px 24px}.card-header img{width:113px}.card-bottom,.card-header{font-size:12px}.hero-demo figcaption{flex-wrap:nowrap}.section-heading{align-items:start;flex-direction:column;gap:14px}.section-heading h2 br{display:none}.method+.method{padding-left:18px}.method{padding-right:15px}.method h3{font-size:22px}.product-section{grid-template-columns:1fr;gap:28px}.pricing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{display:block;padding-top:22px}.toc{margin-bottom:32px}.toc ol{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.footer-top{flex-direction:column;gap:10px}.footer-nav{justify-content:flex-start}}
@media(max-width:560px){.wrap{width:calc(100% - 36px)}.hero{padding-block:38px 32px;gap:26px}.hero h1{font-size:clamp(44px,10.9vw,60px)}.hero-copy>p{font-size:18px}.hero-note{font-size:13px}.demo-stage{min-height:230px;border-radius:14px}.punch-card{padding:16px 19px;width:78%}.card-back{width:77%;height:70%}.punch-readout{padding:12px 0;margin-top:14px}.punch-readout time{font-size:50px}.card-bottom,.card-header{font-size:10px}.card-header img{width:85px}.punch-label{font-size:12px}.stamp{height:34px;width:34px}.card-bottom{padding-top:10px}.hero-demo figcaption{flex-wrap:wrap;gap:3px}.demo-controls button{padding:7px 6px}.hero-demo figcaption>span{font-size:12px}.features,.pricing-preview,.product-section{padding-block:43px}.method-grid{grid-template-columns:1fr}.method,.method+.method{border-left:0;border-bottom:1px solid var(--line);padding:21px 0;display:grid;grid-template-columns:40px 1fr;gap:0 13px}.method-icon{width:40px;height:40px;grid-row:1/4}.method h3{margin:2px 0 7px}.method p,.method-link{grid-column:2}.method-link{padding-top:8px;font-size:14px}.pricing-summary{gap:8px}.pricing-summary>div{padding:13px 2px}.pricing-summary dd>span{display:block}.law-icon{display:none}.article-body{font-size:17px}.toc ol{display:block}.pricing-grid{grid-template-columns:1fr}.pricing-card{gap:10px}.pricing-table-wrap td,.pricing-table-wrap th{padding:8px 4px;font-size:clamp(12px,3.3vw,15px)}.pricing-table-wrap a{display:block;padding-block:7px}.explore-inner{align-items:start;flex-direction:column}.footer{padding-block:24px}.footer-nav{gap:0 16px}}
