/* Three typefaces and one spacing scale for the page and isolated UI demos.
   Instrument Serif is reserved for the Sauce Media wordmark. */
:root,html[data-theme],body[data-theme],#demoRoot{
 --font-sans:'Libre Franklin',Arial,sans-serif;
 --font-display:'Nunito',Arial,sans-serif;
 --font-serif:var(--font-display);
 --font-mono:var(--font-sans);
 --font-pixel:var(--font-sans);
 --font:var(--font-sans);--sans:var(--font-sans);--display:var(--font-display);
 --serif:var(--font-serif);--mono:var(--font-mono);--pixel:var(--font-pixel);--pixel-id:var(--font-sans);
 --app-heading-font:var(--font-display);--app-heading-weight:650;
 --page-title-font:var(--app-heading-font);--page-title-weight:650;
 --lp-space-1:4px;--lp-space-2:8px;--lp-space-3:12px;--lp-space-4:16px;
 --lp-space-5:24px;--lp-space-6:32px;--lp-space-7:48px;
 --lp-section-space:96px;--lp-heading-size:clamp(32px,3.4vw,44px);
 --lp-body-size:16px;--lp-label-size:13px;--lp-small-size:12px;
}
html,body{font-family:var(--font-sans)}
/* Old native calendar rules hardcode system fonts with !important. */
#demoRoot .calendar-day-label,#demoRoot .calendar-day-num,
#demoRoot .calendar-day-card:not([data-workshop-id="__master__"]) .cdc-text{font-family:var(--font-sans)!important}
#demoRoot .rev-transport,#demoRoot .rev-time,#demoRoot .shu-review-time,
#demoRoot .shu-review-stamp,#demoRoot .suite-preview-image>span{font-variant-numeric:tabular-nums}

.landing-page{font-size:var(--lp-body-size);line-height:1.7}
.landing-page :is(h1,h2,h3,.brand,.price-name,.price-amount b){font-family:var(--font-display);font-weight:650}
.landing-page .brand{letter-spacing:-.045em}
.landing-page .section{padding:var(--lp-section-space) 0}
.landing-page :is(.section,.feature-copy,.shu-copy,.review-copy,.faq-title) h2{font-size:var(--lp-heading-size);line-height:1.1;letter-spacing:-.04em}
.landing-page :is(.feature-copy,.shu-copy,.review-copy,.faq-title,.pricing-head)>p{font-size:var(--lp-body-size);line-height:1.7;margin-top:var(--lp-space-5)}
.landing-page :is(.hero-lede,.closing-content>p:not(.micro)){font-size:18px;line-height:1.7}
.landing-page .eyebrow{font-size:var(--lp-small-size);font-weight:600;line-height:1.4;letter-spacing:.1em}
.landing-page :is(.feature-copy,.shu-copy,.review-copy,.faq-title,.pricing-head)>.eyebrow{margin-bottom:var(--lp-space-5)}
.landing-page :is(.feature-examples,.shu-examples){margin-top:var(--lp-space-6);gap:var(--lp-space-1)}
.landing-page :is(.feature-example,.shu-example){font:500 14px/1.5 var(--font-sans);padding:var(--lp-space-4) 0;gap:var(--lp-space-4)}
.landing-page :is(.feature-example,.shu-example)>span:first-child{font:500 var(--lp-small-size)/1.5 var(--font-sans);font-variant-numeric:tabular-nums}
.landing-page :is(.feature-pause,.shu-demo-pause){font:400 var(--lp-small-size)/1.5 var(--font-sans);margin-top:var(--lp-space-5);padding:var(--lp-space-1) 0}
.landing-page :is(.btn,.price-btn){display:inline-flex;align-items:center;justify-content:center;gap:var(--lp-space-2);min-height:44px;padding:12px 20px;border-radius:9px;font:600 var(--lp-label-size)/20px var(--font-sans);letter-spacing:0;box-sizing:border-box}
.landing-page .price-btn{width:100%;margin-top:auto}
.landing-page :is(.btn-primary,.price-btn,.featured .price-btn){background:var(--purple);border:0;color:#fff;box-shadow:none}
.landing-page :is(.btn-primary,.price-btn):hover{background:color-mix(in srgb,var(--purple) 88%,#fff);transform:none;box-shadow:none}
.landing-page :is(.nav-links,.nav-actions){font-size:var(--lp-label-size);gap:var(--lp-space-5)}
.landing-page .hero .micro{margin-top:var(--lp-space-4)}
.landing-page :is(.micro,.pricing-note,.footer small,.footer-links){font-size:var(--lp-small-size);line-height:1.6}
.landing-page .hero-quote blockquote{font-size:18px;line-height:1.6}
.landing-page .hero-quote figcaption{margin-top:var(--lp-space-3);font-size:var(--lp-small-size)}
.landing-page .price-grid{gap:var(--lp-space-4)}
.landing-page .price-card{padding:var(--lp-space-6) var(--lp-space-5);border-radius:12px}
.landing-page .price-name{font-size:20px;line-height:1.3;letter-spacing:-.025em}
.landing-page .price-for{font-size:14px;line-height:1.6;margin-top:var(--lp-space-3)}
.landing-page .price-amount{margin-top:var(--lp-space-4)}
.landing-page .price-amount b{font-size:40px;line-height:1.1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.landing-page .price-annual{font-size:var(--lp-label-size);line-height:1.6;margin-top:var(--lp-space-3)}
.landing-page .price-annual>span{font-size:var(--lp-small-size)}
.landing-page .price-saving{font-size:var(--lp-small-size);padding:var(--lp-space-1) var(--lp-space-2);margin-top:var(--lp-space-5)}
.landing-page .price-capacity{gap:var(--lp-space-4);padding:var(--lp-space-5) 0;margin-top:var(--lp-space-5)}
.landing-page .price-feats{padding-top:var(--lp-space-5);gap:var(--lp-space-3);margin-bottom:var(--lp-space-6)}
.landing-page .price-feats span{font-size:var(--lp-label-size);line-height:1.6}
.landing-page .pricing-controls{gap:var(--lp-space-5);margin-bottom:var(--lp-space-6)}
.landing-page .pricing-head{margin-bottom:var(--lp-space-6)}
.landing-page .pricing-note{margin-top:var(--lp-space-6)}
.landing-page details{padding:var(--lp-space-5) 0}
.landing-page summary{font:500 var(--lp-body-size)/1.5 var(--font-sans)}
.landing-page details p{font-size:14px;line-height:1.7;padding-top:var(--lp-space-4)}
.landing-page .closing{padding:var(--lp-section-space) var(--lp-space-6)}
.landing-page .closing-content>p:not(.micro){margin:var(--lp-space-5) auto var(--lp-space-6)}
.landing-page .closing .micro{margin-top:var(--lp-space-4)}
.landing-page .footer{padding:var(--lp-space-6) 0;gap:var(--lp-space-5)}
@media(max-width:740px){
 .landing-page{--lp-section-space:64px;--lp-heading-size:32px}
 .landing-page :is(.hero-lede,.closing-content>p:not(.micro)){font-size:var(--lp-body-size)}
 .landing-page .nav{gap:var(--lp-space-3)}
 .landing-page .nav-actions{gap:var(--lp-space-3)}
 .landing-page .nav .btn{padding-inline:var(--lp-space-3)}
 .landing-page .hero-quote blockquote{font-size:var(--lp-body-size)}
 .landing-page .price-card{padding:var(--lp-space-5)}
 .landing-page .closing{padding-inline:20px}
}
