:root{--paper:#eee8f0;--ink:#2c1938;--muted:#75637d;--purple:#563566;--lime:#dac7ec;--line:#24202730;--gutter:clamp(22px,5vw,88px);font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #9b62b4;outline-offset:5px}.skip{position:absolute;top:-100px;padding:12px;background:var(--lime);z-index:9}.skip:focus{top:0}header{display:flex;align-items:center;justify-content:space-between;padding:30px var(--gutter);border-bottom:1px solid var(--line)}.wordmark{font-size:33px;font-weight:700;letter-spacing:-2px;display:inline-flex;align-items:center;gap:5px}.brand-dot{display:inline-block;width:8px;height:8px;background:var(--purple);border-radius:50%;margin-top:15px}nav{display:flex;align-items:center;gap:36px;font-size:13px}nav a:hover,footer a:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{border-bottom:1px solid var(--ink);padding:8px 0}.nav-contact span{margin-left:30px}.hero{padding:30px var(--gutter) 0;overflow:hidden}.edition,.section-label{display:flex;justify-content:space-between;gap:20px;text-transform:uppercase;font-size:10px;letter-spacing:1.4px;line-height:1.5}.edition{color:var(--muted)}h1,h2,h3,p{margin:0}h1{font-size:clamp(80px,11.8vw,190px);line-height:.91;letter-spacing:-.075em;font-weight:500;padding:75px 0 55px;max-width:1350px}.time-word{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.08em;font-style:italic;color:var(--purple)}.period{font-family:Arial,sans-serif;font-style:normal;color:var(--purple)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;padding-bottom:65px}.hero-bottom p{font-size:17px;line-height:1.5}.round-link{justify-self:center;display:flex;flex-direction:column;justify-content:center;align-items:center;width:108px;height:108px;border:1px solid var(--ink);border-radius:50%;gap:10px;font-size:11px;text-transform:uppercase;transition:background .2s,transform .2s}.round-link:hover{background:var(--lime);transform:translateY(3px)}.arrow{font-size:28px}.hero-index{justify-self:end;display:flex;flex-direction:column;font-size:12px;line-height:1.8}.hero-rule{display:grid;grid-template-columns:repeat(13,1fr);height:28px;gap:2px}.hero-rule i{background:var(--purple)}.hero-rule i:nth-child(4n){background:#9f8eaa}.hero-rule i:last-child{background:var(--lime)}.calendar-section{padding:70px var(--gutter) 85px;background:var(--purple);color:#f3eee9}.calendar-section .section-label{color:#d4c4dd}.calendar-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:end;padding:50px 0}h2{font-size:clamp(43px,5.3vw,86px);line-height:1.01;letter-spacing:-.055em;font-weight:500}.calendar-heading>p{font-size:17px;line-height:1.6;max-width:330px;justify-self:end;color:#d4c4dd}.calendar-lab{border:1px solid #fff5}.lab-controls{display:flex;align-items:center;gap:12px;padding:20px 25px;font-size:12px;border-bottom:1px solid #fff5;flex-wrap:wrap}.live-dot{width:6px;height:6px;background:var(--lime);border-radius:50%}.lab-controls input{margin-left:auto;background:transparent;color:#f3eee9;border:0;border-bottom:1px solid #fff6;padding:8px 0;color-scheme:dark;max-width:180px}.lab-controls button{color:inherit;border:0;background:transparent;padding:10px;cursor:pointer;font-size:12px}.date-comparison{display:grid;grid-template-columns:1fr 1fr}.date-panel{padding:30px}.purpillion-date{background:var(--lime);color:var(--ink)}.gregorian-date{background:#442d51}.panel-label{text-transform:uppercase;font-size:11px;letter-spacing:2px}.date-line{display:flex;align-items:center;gap:25px;margin:35px 0}.date-line strong{font-size:clamp(85px,9vw,145px);font-weight:400;line-height:1;letter-spacing:-.07em}.date-line>div{display:flex;flex-direction:column;gap:8px}.date-line>div>span{font-size:clamp(22px,2.7vw,40px);letter-spacing:-1px}.date-line small{font-size:12px}.ordinal{display:flex;justify-content:space-between;font-size:11px;border-top:1px solid currentColor;padding-top:15px}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);background:#fff2;gap:1px}.month-grid>div{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#4e345d;font-size:14px}.month-grid small{font-size:9px;color:#d4c4dd}.month-grid .selected{background:var(--lime);color:var(--ink)}.month-grid .selected small{color:var(--ink)}.lab-foot{display:flex;justify-content:space-between;padding:20px 25px;font-size:10px;gap:15px;color:#d4c4dd}.method{margin-top:24px;max-width:650px;font-size:12px;color:#d4c4dd}.method summary{display:flex;justify-content:space-between;cursor:pointer;padding:8px 0}.method p{line-height:1.7;padding-top:10px}.manifesto{padding:70px var(--gutter) 85px}.manifesto h2{padding:55px 0 65px;font-size:clamp(55px,7.3vw,110px)}h2 em{font-family:Georgia,serif;font-weight:400;color:var(--purple)}.perspective-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.perspective-grid article{border-top:1px solid var(--ink);padding-top:20px}.article-number{font-family:Georgia,serif;font-size:32px;color:var(--purple)}h3{font-size:24px;font-weight:400;letter-spacing:-.8px;padding:30px 0 18px}.perspective-grid p{font-size:14px;line-height:1.7;color:var(--muted);max-width:320px}.product{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.product-copy{padding:65px 50px 65px var(--gutter)}.product h2{margin:50px 0 30px;font-size:clamp(42px,4.5vw,70px)}.product-copy>p{font-size:15px;line-height:1.65;max-width:350px;color:var(--muted)}.product ul{padding:35px 0 20px;margin:0;list-style:none}.product li{display:flex;gap:25px;border-top:1px solid var(--line);padding:15px 0;font-size:13px}.product li span{font-size:10px;color:var(--muted)}.product-note{font-size:11px!important}.product-stage{background:#d6d2cb;display:flex;align-items:center;flex-direction:column;justify-content:space-between;gap:35px;padding:35px 25px}.stage-label,.stage-caption{font-size:9px;letter-spacing:1.5px}.product-stage figure{width:min(230px,65%);margin:0;border:6px solid #302c32;border-radius:39px;overflow:hidden;box-shadow:20px 28px 0 #bcb5c2}.product-stage img{display:block;width:100%;height:auto}.privacy-section{background:var(--lime);padding:70px var(--gutter)}.privacy-section h2{margin:50px 0}.privacy-bottom{display:flex;justify-content:space-between;align-items:end;gap:35px}.privacy-bottom p{max-width:450px;font-size:16px;line-height:1.6}.privacy-bottom a{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:10px;white-space:nowrap}.privacy-bottom a span{margin-left:30px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:85px var(--gutter)}.faq h2{margin-top:35px;font-size:clamp(40px,4vw,65px)}.faq-items details{border-top:1px solid var(--line)}.faq-items details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none}summary::-webkit-details-marker{display:none}.faq summary{display:flex;justify-content:space-between;gap:20px;padding:24px 0;font-size:14px;cursor:pointer}details[open] summary>span{transform:rotate(45deg)}.faq p{padding:0 25px 25px 0;font-size:13px;line-height:1.8;color:var(--muted)}.faq p a{text-decoration:underline}.closing{padding:60px var(--gutter) 70px;background:#242027;color:var(--paper)}.closing-link{font-size:clamp(65px,8vw,125px);letter-spacing:-.065em;line-height:1;display:block;position:relative;margin:45px 0}.closing-link>span{position:absolute;right:0;top:0;color:var(--lime);font-size:1.1em}.closing-link:hover{color:var(--lime)}.release-status{font-size:10px;display:flex;align-items:center;gap:10px}.release-status i{width:5px;height:5px;background:var(--lime);border-radius:50%}footer{padding:35px var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}footer div{display:flex;gap:30px;justify-content:end;font-size:12px}footer p,footer>span{font-size:10px;color:var(--muted)}footer>span{text-align:right}@media(min-width:1700px){header,main,footer{max-width:1700px;margin:auto}body{background:#dfdcd3}main,header,footer{background:var(--paper)}}@media(max-width:720px){header{padding:22px var(--gutter)}.wordmark{font-size:29px}nav{gap:15px}nav>a:not(.nav-contact){display:none}.edition{font-size:8px}.edition span:last-child{text-align:right}h1{font-size:clamp(64px,13.2vw,100px);padding:60px 0 40px}.hero-bottom{grid-template-columns:1fr auto;padding-bottom:40px;gap:25px}.hero-bottom p{font-size:13px}.round-link{width:78px;height:78px;font-size:9px}.hero-index{display:none}.hero-rule{height:16px}.calendar-section,.manifesto,.privacy-section{padding-top:40px;padding-bottom:45px}.section-label{font-size:8px}.calendar-heading{grid-template-columns:1fr;gap:25px;padding:35px 0}.calendar-heading>p{justify-self:start;font-size:14px;max-width:350px}.lab-controls{padding:12px;gap:8px}.lab-controls label{font-size:10px}.lab-controls input{width:125px;font-size:11px}.lab-controls button{font-size:10px;padding:5px}.date-panel{padding:20px 12px}.panel-label{font-size:9px}.date-line{gap:10px;align-items:flex-start;flex-direction:column;margin:25px 0 20px}.date-line strong{font-size:80px}.date-line>div>span{font-size:23px}.date-line small{font-size:10px}.ordinal{font-size:9px;gap:8px;flex-wrap:wrap}.month-grid>div{padding:12px 4px;flex-direction:column;gap:7px;font-size:12px}.month-grid small{font-size:8px}.lab-foot{padding:14px 12px;font-size:9px;flex-direction:column;gap:6px}.manifesto h2{padding:35px 0 40px;font-size:53px}.perspective-grid{grid-template-columns:1fr;gap:30px}.perspective-grid article{display:grid;grid-template-columns:40px 1fr;column-gap:12px}.article-number{grid-row:1/3;font-size:25px}h3{padding:2px 0 12px;font-size:23px}.perspective-grid p{font-size:13px;max-width:none}.product{grid-template-columns:1fr}.product-copy{padding:40px var(--gutter)}.product h2{margin:30px 0 25px;font-size:48px}.product-stage{padding:30px 25px 40px;gap:35px}.product-stage figure{width:220px}.privacy-section h2{margin:35px 0;font-size:48px}.privacy-bottom{flex-direction:column;align-items:start;gap:25px}.privacy-bottom p{font-size:14px}.faq{grid-template-columns:1fr;padding:45px var(--gutter);gap:30px}.faq h2{margin-top:25px}.faq h2 br{display:none}.faq summary{padding:21px 0;font-size:13px}.closing{padding:40px var(--gutter)}.closing-link{font-size:64px;margin:35px 0}.closing-link>span{font-size:50px}footer{padding:30px var(--gutter);gap:25px}footer .wordmark{grid-column:1/-1}footer div{justify-content:start;grid-column:1/-1;gap:25px}footer p{line-height:1.6}footer>span{line-height:1.6}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Purpillion: an imagined city, grounded in a usable product. */
header{background:#eee8f0}.city-hero{position:relative;min-height:min(940px,calc(100svh - 95px));padding:30px var(--gutter) 40px;display:flex;flex-direction:column;justify-content:space-between;color:#fff7fc;isolation:isolate;background:#392345}.city-image,.city-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.city-image{object-fit:cover;object-position:center 53%}.city-shade{z-index:-1;background:linear-gradient(90deg,#24122b99 0%,#24122b22 75%),linear-gradient(0deg,#211128b3,transparent 45%,#21112833)}.city-hero .edition{color:#fff5f5;opacity:.85}.city-title{padding:90px 0 100px}.city-overline{font-size:11px;letter-spacing:2px;text-transform:uppercase}.city-hero h1{padding:25px 0 28px;font-size:clamp(65px,8.7vw,142px);line-height:.98;letter-spacing:-.065em}.city-hero h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em;color:#eddaff}.city-intro{font-size:16px;line-height:1.7;max-width:440px}.city-hero .hero-bottom{display:flex;justify-content:space-between;align-items:end;padding:0}.city-explore{font-size:12px;border-bottom:1px solid #ffffff88;padding:12px 0;display:flex;gap:60px;align-items:center}.city-explore span{font-size:24px}.city-footnote{font-size:10px;line-height:1.6;text-align:right;color:#e6dce9}.vision{padding:70px var(--gutter) 85px;background:#eee8f0}.vision-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;padding-top:60px}.vision-grid h2{font-size:clamp(40px,4.7vw,74px)}.vision-grid h2 em{font-family:Georgia,serif;color:#79548c;line-height:1.2}.vision-grid p{font-size:15px;line-height:1.8;color:var(--muted);max-width:410px}.vision-grid p+p{margin-top:20px}.privacy-section{background:#dac7ec}.product-stage{background:#d8cddd}.product-stage figure{box-shadow:20px 28px 0 #b7a3c3}.closing{background:#2c1938}@media(max-width:720px){.city-hero{min-height:760px;min-height:calc(100svh - 84px);padding-top:22px;padding-bottom:28px}.city-image{object-position:59% center}.city-shade{background:linear-gradient(90deg,#24122b99,#24122b22),linear-gradient(0deg,#211128a3,transparent 65%)}.city-title{padding:95px 0 100px}.city-hero h1{font-size:clamp(55px,11.5vw,82px);padding:22px 0}.city-intro{font-size:13px;max-width:300px}.city-intro br{display:none}.city-overline{font-size:9px}.city-explore{font-size:11px;gap:30px}.city-footnote{font-size:8px;max-width:140px}.vision{padding:45px var(--gutter)}.vision-grid{grid-template-columns:1fr;padding-top:35px;gap:30px}.vision-grid h2{font-size:42px}.vision-grid p{font-size:14px}}

.wordmark{gap:12px}.brand-emblem{display:block;width:40px;height:40px;border-radius:10px;flex-shrink:0}@media(max-width:720px){.brand-emblem{width:34px;height:34px;border-radius:9px}.wordmark{gap:10px}}

.structure-comparison{margin:45px 0 30px}.structure-comparison h3{font-size:26px;padding:0 0 20px}.comparison-scroll{overflow-x:auto}.structure-comparison table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;line-height:1.5}.structure-comparison caption{text-align:left;font-size:12px;color:#d4c4dd;padding-bottom:15px}.structure-comparison th,.structure-comparison td{padding:18px 20px;border-bottom:1px solid #ffffff35;vertical-align:top;width:33.33%}.structure-comparison thead th{font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:1px}.structure-comparison tbody th{font-weight:400;color:#d4c4dd}.structure-comparison td:last-child{background:#ffffff0c}.structure-comparison>p{font-size:14px;line-height:1.75;color:#d4c4dd;max-width:760px;margin-top:22px}@media(max-width:720px){.structure-comparison th,.structure-comparison td{padding:14px 9px;font-size:12px}.structure-comparison thead th{font-size:10px;letter-spacing:0}.structure-comparison h3{font-size:23px}.structure-comparison>p{font-size:13px}}
