/* Shared responsive contract: 1440px content, fluid gutters, 1200px navigation,
   900px stacked sections, 600px single-column cards. Content never depends on
   a fixed viewport height on touch-sized layouts. */
:root{--site-content:1440px;--site-gutter:clamp(20px,4vw,60px);--site-section-gap:clamp(48px,7vw,96px)}
html{scroll-padding-top:96px}
body{min-width:0}
body .nav .nav__inner{max-width:1560px;margin-inline:auto;padding-inline:var(--site-gutter)}
.site-menu-toggle{display:none}
.site-mobile-menu[hidden]{display:none!important}
.site-mobile-menu{position:absolute;top:100%;right:var(--site-gutter);width:min(380px,calc(100vw - 2 * var(--site-gutter)));max-height:calc(100dvh - 96px);overflow:auto;overscroll-behavior:contain;padding:16px;background:#101010;color:#fff;border:1px solid #ffffff30;border-radius:0 0 18px 18px;box-shadow:0 24px 50px #0005;text-align:left;z-index:1000}
.site-mobile-menu a{display:flex;align-items:center;min-height:48px;padding:12px 16px;font-size:18px;line-height:1.35;color:#fff;text-decoration:none;border-radius:8px;white-space:normal}
.site-mobile-menu a:hover,.site-mobile-menu a:focus-visible,.site-mobile-menu a[aria-current=page]{background:#fff;color:#111}
.site-menu-sections{border-top:1px solid #ffffff30;margin-top:12px;padding-top:12px}
.site-menu-sections p{font-size:14px;color:#aaa;margin:8px 16px}
.site-menu-sections a{font-size:16px}
.site-menu-login{margin-top:12px;border-top:1px solid #ffffff30}
.site-mobile-menu .swiit-app-badge{margin:16px;max-width:200px}
.site-menu-toggle:focus-visible,.site-mobile-menu a:focus-visible{outline:2px solid #fff;outline-offset:3px}
body .personal-subnav{padding-inline:max(var(--site-gutter),calc((100vw - var(--site-content))/2))}
body.home-chapters .chapter,body.company-refresh main>section:not(.page-hero),body.personal-refresh main>.personal-section{padding-inline:max(var(--site-gutter),calc((100vw - var(--site-content))/2))}
main :is(.chapter-copy,.personal-section>div,.p2hero__copy,.careers-heading,.team2__head){min-width:0}
main :is(h1,h2,h3){overflow-wrap:break-word}
@media(max-width:1200px){
 html.responsive-ready body .nav__links,html.responsive-ready body .personal-subnav__links,html.responsive-ready body .nav__burger,html.responsive-ready body #mmenu{display:none!important}
 html.responsive-ready body .site-menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;min-width:44px;border:1px solid #ffffff50;border-radius:50%;background:transparent;color:white;cursor:pointer;padding:10px}
 .site-menu-toggle span{display:block;width:20px;height:1.5px;background:currentColor;transition:transform .2s,opacity .2s}
 .site-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6.5px) rotate(45deg)}
 .site-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .site-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-6.5px) rotate(-45deg)}
 html.responsive-ready body .nav__inner,html.responsive-ready body .personal-subnav{display:flex;flex-wrap:nowrap;min-height:76px;height:auto;gap:16px;padding-block:12px}
 html.responsive-ready body .nav__right,html.responsive-ready body .personal-subnav__actions{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0}
 body .nav__brand,body .personal-subnav__brand{flex-shrink:0}
}
@media(max-width:900px){
 html,html:has(.personal-refresh){scroll-snap-type:none!important}
 body.home-chapters .chapter,body.company-refresh main>section:not(.page-hero),body.personal-refresh main>section:not(.p2hero){height:auto;min-height:0;padding-top:72px;padding-bottom:64px;scroll-margin-top:76px}
 body.home-chapters .chapter--split,body.personal-refresh .personal-screen-split,body.personal-refresh .personal-summary,body.personal-refresh .personal-payments,body.company-refresh #team{grid-template-columns:minmax(0,1fr);gap:36px}
 body.home-chapters .chapter--hero{min-height:calc(100svh - 76px);padding-top:128px}
 body.home-chapters .chapter--hero .chapter-copy{max-width:100%}
 html body.company-refresh .page-hero__content{width:100%;max-width:none;margin:0;padding-inline:var(--site-gutter)}
 body.personal-refresh .p2hero--hand .p2hero__right{overflow:hidden}
 body.personal-refresh .p2hero--hand .parallel-hands{overflow:hidden}
 body.personal-refresh .personal-virtual{overflow:hidden}
 body.home-chapters .chapter h1,body.company-refresh .page-hero__title{font-size:clamp(2.2rem,6.5vw,4rem);line-height:1.1;max-width:20ch}
 body.home-chapters .chapter h2,body.personal-refresh main h2{font-size:clamp(1.8rem,5vw,3rem);line-height:1.15}
 body.home-chapters #ai .chapter-triad{grid-template-columns:1fr;gap:12px}
 body.home-chapters #ai .workspace-select{padding:18px}
 body.home-chapters #ai .workspace-select p{font-size:1rem!important}
 body.home-chapters #ai .workspace-showcase{width:100%;max-width:650px}
 body.home-chapters .journey-grid,body.company-refresh .pillars__grid,body.company-refresh .culture__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 body .footer__top{display:grid;grid-template-columns:1fr;gap:36px}
 body .footer__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
 body .footer__title{font-size:clamp(2rem,6vw,3.5rem);overflow-wrap:anywhere}
 body.personal-refresh #onboarding .screen-phone{width:min(100%,340px);max-width:340px;justify-self:center}
 body.personal-refresh #onboarding .screen-phone .reference-phone{width:100%}
 body.personal-refresh #plans.personal-plans-unified{padding-top:72px}
 body.personal-refresh .personal-requirements .document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.personal-refresh .personal-tabs{max-width:100%}
 body.personal-refresh .p2ai{display:grid;grid-template-columns:1fr;gap:32px;padding-inline:var(--site-gutter)}
 body.personal-refresh .p2ai__media{min-width:0;width:100%}
 body.personal-refresh .p2ai video{max-width:100%;height:auto}
}
@media(max-width:600px){
 body .cap__cards{grid-template-columns:minmax(0,1fr)}
 body .cap__card{min-width:0}
 body .ai__vig{width:100%;max-width:100%;box-sizing:border-box}
 body .ai__vig-steps{flex-wrap:wrap;min-width:0}
 :root{--site-gutter:20px}
 html{scroll-padding-top:80px}
 html.responsive-ready body .nav__inner,html.responsive-ready body .personal-subnav{min-height:72px;gap:8px}
 html.responsive-ready body .nav__right,html.responsive-ready body .personal-subnav__actions{gap:8px}
 body .nav__word,body .personal-subnav__brand strong{font-size:22px}
 body .nav__mark,body .nav__mark img,body .personal-subnav__brand img{width:25px;height:25px}
 body .nav__biz,body .personal-subnav__brand span{font-size:10px;letter-spacing:.04em;margin-left:4px}
 body .nav__brand{gap:6px}
 html.responsive-ready body .nav__right>.pill,html.responsive-ready body .nav__right>.btn,html.responsive-ready body .personal-subnav__actions>.swiit-app-badge{display:none!important}
 body .language-menu__button,body .personal-subnav .language-menu__button{width:44px;height:44px}
 body .language-menu__panel{right:0;max-width:calc(100vw - 40px)}
 body.home-chapters .chapter h1{font-size:clamp(2rem,8vw,3rem);letter-spacing:-.035em}
 body.personal-refresh .p2hero--hand .p2hero__title{font-size:clamp(2rem,8vw,2.75rem);max-width:100%}
 body.home-chapters .chapter p,body.personal-refresh .personal-lead{font-size:1rem;line-height:1.65}
 body.home-chapters .chapter-actions{gap:18px;flex-wrap:wrap}
 body.home-chapters .journey-grid,body.company-refresh .pillars__grid,body.company-refresh .culture__grid,body.personal-refresh .personal-requirements .document-grid{grid-template-columns:1fr}
 body.home-chapters .chapter-cardlist li{display:block}
 body.home-chapters .chapter-cardlist h3{margin-top:12px}
 body .footer__bottom{flex-wrap:wrap;gap:20px}
 body.personal-refresh .personal-routes .personal-tabs{display:flex;flex-wrap:wrap;gap:8px}
 body.personal-refresh .personal-routes .personal-tabs button{flex:1 1 80px;white-space:normal;font-size:14px;padding:12px 8px}
 body.personal-refresh #plans .personal-table-wrap{max-width:100%;overflow-x:auto}
 body.personal-refresh #plans table{table-layout:fixed;min-width:0}
 body.personal-refresh #plans th,body.personal-refresh #plans td{overflow-wrap:anywhere}
 body.personal-refresh #plans.personal-plans-unified thead p{font-size:14px}
 html body.personal-refresh #plans.personal-plans-unified table,html body.personal-refresh #plans.personal-plans-unified thead,html body.personal-refresh #plans.personal-plans-unified tbody{display:block;width:100%}
 html body.personal-refresh #plans.personal-plans-unified tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 html body.personal-refresh #plans.personal-plans-unified thead th:first-child{display:none}
 html body.personal-refresh #plans.personal-plans-unified thead th{display:block;width:auto;padding:18px 14px}
 html body.personal-refresh #plans.personal-plans-unified tbody th{grid-column:1/-1;width:auto;padding:16px 14px 8px;font-weight:600;border-bottom:0}
 html body.personal-refresh #plans.personal-plans-unified tbody td{width:auto;padding:8px 14px 16px}
 html body.personal-refresh #plans.personal-plans-unified tbody td:before{display:block;font-size:12px;letter-spacing:.08em;color:#626262;margin-bottom:5px}
 html body.personal-refresh #plans.personal-plans-unified tbody td:nth-child(2):before{content:'FREE'}
 html body.personal-refresh #plans.personal-plans-unified tbody td:nth-child(3):before{content:'PRO'}
 body.careers-page .careers-hero{padding-top:120px}
 body.careers-page .careers-contact .careers-button{max-width:100%;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.site-menu-toggle span{transition:none}}
.personal-table-wrap .plan-check{display:inline-block;font-size:1.4rem;font-weight:600;line-height:1;vertical-align:middle;color:inherit}
/* End the page shortly after the legal/social row, not at a viewport boundary. */
html body .footer{height:auto;min-height:0;max-height:none;padding-bottom:28px;margin-bottom:0;flex-grow:0}
html body .footer__bottom{margin-bottom:0;padding-bottom:0}
html body .footer__bottom>p{margin-bottom:0}
html body.home-chapters main{padding-bottom:0}
@media(max-width:600px){html body .footer{padding-bottom:24px}}
/* Latin words remain intact, including individually animated letters. */
.type-word { display: inline-block; white-space: nowrap; }
.type-clause { display: inline-block; max-width:100%; vertical-align:top; }
html:lang(en) :is(h1,h2,h3,h4,p,li,a,button){word-break:normal;overflow-wrap:normal;hyphens:none}
html:lang(en) :is(h1,h2,h3,p), html:lang(es) :is(h1,h2,h3,p) {
  word-break: normal; overflow-wrap: normal; hyphens: none;
}
