/* Stable proportions: fluid type, bounded media, and short-laptop layouts. */
:root{--type-title:clamp(2.75rem,1.625rem + 4.5vw,6rem);--type-copy:clamp(1.125rem,1.0625rem + .35vw,1.375rem);--space-cover:clamp(1.875rem,1.25rem + 2.5vw,3.5rem)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body:not(.why-feature-page):not(.correspondence-page) .page-head h1{font-size:var(--type-title);margin:clamp(1.75rem,3.5vw,3rem) 0 1.25rem;text-wrap:balance;max-width:20ch}
body:not(.why-feature-page):not(.correspondence-page) .page-head{padding-bottom:var(--space-cover)}
.page-lead{font-size:clamp(1.125rem,1rem + .55vw,1.5rem);max-width:55ch}
.paper .reading-body>.prose,.paper .dossier-layout .project-article>.prose,.paper .word-section .prose,.paper .gaming .prose{font-size:var(--type-copy);line-height:1.62}
.prose h2{font-size:clamp(1.75rem,1.375rem + 1.5vw,2.7rem);line-height:1.15}.prose h3{font-size:clamp(1.4rem,1.2rem + .6vw,1.8rem)}
.paper .section-heading h2{font-size:clamp(2.125rem,1.5rem + 2vw,3.625rem);line-height:1.1}
.hero-note{font-size:clamp(1.2rem,1rem + .9vw,1.75rem);line-height:1.4}
.home .hero-desk,.home .hero-desk .hero-portrait{max-width:245px}
.home .quote-card{min-height:clamp(190px,17vw,245px)}
.home .quote-card blockquote{font-size:clamp(1.35rem,1.1rem + 1.25vw,2.65rem);line-height:1.12}
.deck-section>.slideshow{max-width:min(1160px,calc((100svh - 190px)*1.9));margin-inline:auto}
.summary-gallery{max-width:min(1080px,calc((100svh - 220px)*1.5));margin-inline:auto}
.goal-title h1{font-size:clamp(7rem,3rem + 9vw,11.5rem)}
.why-feature-page .page-head h1{font-size:clamp(5.5rem,3rem + 7vw,9rem)}
.why-cover .why-opening{font-size:clamp(1.5rem,1.15rem + 1vw,2.1rem);line-height:1.4}
.why-narrative{font-size:var(--type-copy);line-height:1.65}.why-influence>p{font-size:inherit}
.site-tools{display:flex;align-items:center;gap:10px}.motion-control{border:1px solid #8b765647;border-radius:2px;background:transparent;color:inherit;padding:10px 12px;min-height:44px;font:12px/1.4 var(--mono);white-space:nowrap;cursor:pointer}.motion-control:hover{background:#d8bd8620}.site-footer{flex-wrap:wrap}.site-footer .motion-control{padding:8px 10px;letter-spacing:0}
.masthead-x{display:inline-block;transition:transform .5s var(--ease-out),color .3s}.masthead-x:hover{transform:translateY(-7px) rotate(-8deg);color:var(--edition-green)}
/* The effective preference can be a deliberate override of the OS setting. */
html.motion-full.motion-boot .masthead h1,html.motion-full.motion-boot .hero-portrait,html.motion-full.motion-boot .page-head h1,html.motion-full.motion-boot .goal-title h1{opacity:0}
html.motion-full.motion-ready [data-reveal]{transition:opacity .75s var(--ease-out),translate .9s var(--ease-out),filter .75s var(--ease-out);transition-delay:var(--reveal-delay,0ms)}
html.motion-full.motion-ready [data-reveal]:not(.is-revealed){opacity:0;translate:0 30px;filter:blur(2px)}
html.motion-full.motion-ready .quote-card[data-reveal]{transition:opacity .75s var(--ease-out),translate .9s var(--ease-out),rotate .9s var(--ease-out),transform .5s var(--ease-out),box-shadow .5s;transition-delay:var(--reveal-delay,0ms)}
html.motion-full.motion-ready .quote-card[data-reveal]:not(.is-revealed){translate:0 40px;rotate:var(--reveal-rotate,-3deg)}
html.motion-full.motion-ready [data-reveal]:focus-within{opacity:1;translate:0;filter:none}
html.motion-quiet{scroll-behavior:auto}html.motion-quiet *,html.motion-quiet *:before,html.motion-quiet *:after{animation:none!important;transition:none!important}
html.motion-quiet [data-reveal]{opacity:1!important;translate:none!important;rotate:none!important;filter:none!important}
html.motion-quiet .mast-letter:hover,html.motion-quiet .masthead-x:hover,html.motion-quiet .project-art,html.motion-quiet .hero-portrait,html.motion-quiet .goal-route:hover{transform:none!important}
html.motion-quiet .ambient{display:none}
html.motion-quiet::view-transition-group(*),html.motion-quiet::view-transition-old(*),html.motion-quiet::view-transition-new(*){animation:none!important}
@media(max-width:900px){.site-tools{display:none}}
@media(min-width:701px) and (max-width:900px){.site-tools{display:flex}.site-tools .light-control{display:none}.site-header nav{gap:20px}.site-tools .motion-control{padding-inline:10px}}
@media(max-width:900px){.goal-title h1{flex-wrap:wrap}}
@media(max-width:700px){.home .quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home .quote-card{min-width:0}.home .quote-card blockquote{overflow-wrap:break-word}}
@media(max-width:800px){.why-feature-page .page-head h1{font-size:clamp(4.5rem,3rem + 6vw,6.5rem)}.why-cover .why-opening{font-size:clamp(1.45rem,1.2rem + .8vw,1.75rem)}}
@media(max-width:700px){.home .hero-bottom{grid-template-columns:minmax(0,1fr) minmax(95px,.52fr);gap:clamp(14px,4vw,22px)}.home .hero-desk,.home .hero-desk .hero-portrait{max-width:155px}.home .hero-note{font-size:clamp(1.2rem,1rem + 1vw,1.4rem)}.home .hero-portrait figcaption{font-size:9px;letter-spacing:.08em}.home .quote-card small{font-size:12px;line-height:1.4}.home .quote-card strong{font-size:14px}.home .quote-card{padding:15px}.summary-gallery,.deck-section>.slideshow{max-width:100%}.goal-title h1{font-size:clamp(4.8rem,2.75rem + 10vw,8rem)}}
@media(min-width:701px) and (max-width:900px){.goal-title h1{font-size:clamp(5.5rem,2rem + 8vw,7rem)}}
@media(min-width:901px) and (max-height:800px){.home .masthead h1{font-size:clamp(118px,14vw,185px)}.home .masthead{padding-block:20px 25px}.home .hero-bottom{min-height:0;padding-block:26px 32px;gap:4vw}.home .hero-desk,.home .hero-desk .hero-portrait{max-width:210px}.home .hero-note{font-size:25px}.page-head{padding-top:28px}.why-feature-page .page-head{padding-bottom:42px}.why-cover{padding-top:32px;gap:40px}.why-feature-page .page-head h1{font-size:112px}.why-cover .why-opening{font-size:28px;line-height:1.35}.goal-prologue{min-height:0;padding-block:42px 48px}.goal-title h1{font-size:clamp(110px,11.5vw,154px)}.goal-belief p{font-size:clamp(26px,2.2vw,32px)}.goal-orbit{margin-top:22px;height:85px}}
@media print{.site-tools,.motion-control{display:none}html.motion-full.motion-boot .paper *{opacity:1!important}html.motion-full.motion-ready [data-reveal]{opacity:1!important;translate:none!important;filter:none!important}}
