/* Phone composition pass. Desktop artwork and layouts are retained. */
@media(max-width:760px){
 .header.shell{gap:8px}.header .header-cta{display:inline-flex;font-size:12px;padding:10px;min-height:44px}.header .brand-wordmark{width:100px}.header .brand-symbol{width:23px}.header .brand{gap:5px}.header .menu-button{margin-left:0;width:40px;padding:8px}
 .footer.shell{grid-template-columns:1fr 1fr;gap:26px 22px}.footer .footer-identity{grid-column:1/-1}.footer nav.footer-pages a{min-height:44px;font-size:14px;line-height:1.4}.footer-pages>p{font-size:11px}.footer .footer-status,.footer-bottom{font-size:12px}.footer-bottom{display:flex;flex-direction:column}.footer-bottom a{display:inline-flex;align-items:center;min-height:44px}.footer nav.footer-pages{gap:0}
 .hero h1{font-size:clamp(36px,10vw,48px)}.hero{min-height:710px}.harbor-art{top:310px;height:400px}.harbor-art img{object-position:38% center}.hero-lead{font-size:17px}.hero-scroll{bottom:10px}
 .story-grid{gap:26px}.connections,.research,.personal,.memory,.weekly,.faqs{padding-top:64px}
 .connection-map{gap:0 22px}.policy-node,.chip-node{padding-left:0;justify-content:center}.edge-one{margin:12px 0;width:auto;max-width:100%;justify-self:center;padding:8px 12px}
 .edge-two,.edge-four{margin:70px 0 14px;min-height:64px;width:auto;max-width:100%;padding:6px;font-size:13px;line-height:1.45}
 .edge-three{width:auto;padding:8px;margin:16px 0}.map-node strong{font-size:14px;line-height:1.5}.map-node{min-height:110px}.node-circle{width:58px;height:58px}.mobile-connection-lines{z-index:0}.mobile-connection-lines path{stroke-linecap:round;stroke-linejoin:round}.mobile-connection-lines .mobile-uncertainty-path{stroke:var(--amber);stroke-dasharray:3 5}
 .uncertain{position:relative;grid-row:7;align-self:start;margin-top:0;min-height:76px;background:var(--bg);z-index:1}.uncertain:before,.uncertain:after{display:none}.uncertain span{font-size:12px}.buffer-node strong,.delay-node strong,.project-node strong{position:relative;z-index:1;padding:4px 2px}
 .research-panel{padding:18px 14px}.research-body .answer-lead{font-size:25px;line-height:1.22}.research-body{gap:16px;margin:20px 0}.research-tabs button{font-size:13px;min-height:48px}.research-tabs [aria-selected=true]{color:var(--copper);background:#e69a7d16}.source-disclosure{border-top:1px solid var(--line);padding-top:8px}.source-disclosure summary{font-family:var(--sans,Inter,sans-serif);font-size:14px;min-height:44px;display:flex;align-items:center;color:var(--copper);cursor:pointer}.source-disclosure .source-types{border:0;padding-top:12px}.source-disclosure summary:after{content:' +';margin-left:auto}.source-disclosure[open] summary:after{content:' −'}
 .personal{display:flex;flex-direction:column;gap:0}.perspective-copy{display:contents}.personal .eyebrow{order:0}.personal h2{order:1}.personal .section-lead{order:2}.personal .topic-choices{order:3;margin-bottom:8px}.personal .perspective-art{order:4;width:100%;margin:8px 0 20px;aspect-ratio:4/3}.personal #topic-preview{order:5}.personal .topic-feature-image{mask-image:linear-gradient(to bottom,#000 88%,transparent);object-fit:contain}.topic-dependencies{flex-wrap:wrap;gap:14px}.topic-choices button{font-size:13px;min-height:46px}.personal .topic-disclosure{margin-bottom:0}
 .memory-steps{gap:28px}.memory-steps [data-memory="1"]{margin-left:12px}.memory-steps button{gap:16px}.memory-icon{width:58px;height:58px;flex-shrink:0}.memory-steps strong{font-size:16px}.memory-steps small{font-size:13px}.memory-flow path{stroke-width:1.5}
 .weekly-grid img,.weekly-grid .weekly-item:last-child img{aspect-ratio:1.35;object-fit:cover}.weekly-grid .weekly-item{column-gap:18px}.weekly-grid strong{margin-top:0}.faq-grid details{padding:14px 0}.faq-grid summary{font-size:24px}.closing-curve{display:none}.closing{padding-top:64px}
 .hiw-hero{height:620px;min-height:0;max-height:none}.hiw-hero-copy{padding-top:160px;padding-bottom:35px}.hiw-hero>img{object-position:58% center}.hiw-hero h1{font-size:clamp(38px,10vw,46px)}.hiw-page .hiw-intro{padding:56px 0 30px}.hiw-page .hiw-pair{gap:36px}.hiw-page .hiw-pair figcaption{padding-top:16px}.hiw-page .hiw-research-figure>img{margin:0 auto 18px;mask-image:linear-gradient(to bottom,#000 86%,transparent)}.hiw-page #how-answer{min-height:0;padding-bottom:10px}.hiw-page .hiw-revisit{padding-top:50px}.hiw-page .hiw-invitation{padding-top:38px}
 .about-intro h1{font-size:clamp(38px,10.8vw,54px);overflow-wrap:normal}.about-purpose h2,.about-audience h2,.about-everyday h2{font-size:36px}.about-belief h2{font-size:40px}.about-readers h3{font-size:28px}.about-landscape img{aspect-ratio:1.35}.about-audience,.about-belief{padding-top:56px}.about-everyday{margin-top:52px}
 .approach-art img{aspect-ratio:3;object-fit:cover;background:transparent}.approach-lab,.approach-alternatives,.approach-revision,.approach-close{text-align:left}.approach-tabs{justify-content:flex-start}.approach-tabs button{min-height:44px}.approach-main #approach-panel{min-height:0;padding-bottom:20px}.alternative-rows{gap:24px}.alternative-rows article{display:grid;grid-template-columns:1fr;gap:2px}.approach-revision .revision-note{align-items:flex-start}.approach-intro h1{font-size:clamp(36px,10vw,46px)}
 .contact-letter{display:flex;flex-direction:column}.letter-meta{order:0}.letter-opening{order:1}.letter-status{order:2;margin-top:28px}.letter-topics{order:3}.letter-signoff{order:4;margin-bottom:8px}.letter-opening h1{font-size:clamp(64px,18vw,90px)}
 .legal-toc a{min-height:44px;font-size:14px;align-items:center}.legal-body p{font-size:16px}.legal-contents summary{font-family:Inter,sans-serif;font-size:15px;min-height:48px;color:var(--copper)}.legal-contents{margin:0}.legal-meta{font-size:12px}.legal-layout{gap:24px}
 .example-panel{max-width:100%;min-width:0;padding:24px 18px}.example-panel .button{white-space:normal;max-width:100%;text-align:center;height:auto}.example-panel .review-note{margin-top:18px}.page-intro h1{font-size:clamp(36px,10vw,46px)}
 .signup-dialog{width:100%;max-width:none;max-height:calc(100dvh - 16px);margin:auto 0 0;border-radius:12px 12px 0 0;padding:30px 22px max(22px,env(safe-area-inset-bottom));box-sizing:border-box}.signup-dialog h2{font-size:30px}.signup-choice{min-height:48px;padding:12px;font-size:14px;box-sizing:border-box}.signup-actions{position:sticky;bottom:0;background:#1b1b1b;padding:12px 0;margin-top:12px}.signup-actions button{min-height:48px}.signup-close{width:44px;height:44px}.signup-fields{margin-top:20px}.signup-email-label{font-size:14px}#signup-email{font-size:16px}.signup-back{min-width:56px}.signup-dialog .signup-error{margin:8px 0}.signup-progress{margin-top:20px}
}
@media(max-width:350px){.header .brand-wordmark{width:84px}.header .brand-symbol{width:20px}.header .header-cta{font-size:11px;padding:10px 8px}.header.shell{gap:5px}.hero{min-height:730px}.harbor-art{top:335px}.topic-choices button{font-size:12px}.about-intro h1{font-size:36px}.signup-dialog{padding-inline:16px}}
@media(min-width:761px){.source-disclosure{display:contents}.source-disclosure>summary,.legal-contents>summary{display:none}.legal-contents{position:sticky;top:32px}.legal-contents .legal-toc{position:static}}
@media(max-width:760px){.source-disclosure .source-types>.eyebrow,.legal-contents .legal-toc>p{display:none}.legal-contents .legal-toc{padding-top:12px}}
@media(max-width:760px){.policy-node,.chip-node{display:grid;grid-template-columns:58px 120px;gap:16px;justify-content:center}.policy-node strong,.chip-node strong{text-align:left}.letter-status .letter-action{white-space:normal;overflow-wrap:anywhere}}
/* Keep explanatory text beside the paths, never on top of them. */
@media(max-width:760px){
 .connection-map{column-gap:24px}
 .policy-node,.chip-node{grid-template-columns:58px minmax(0,1fr);justify-content:start;padding-left:0;text-align:left}
 .edge-one{justify-self:start;margin:12px 0 12px 74px;padding:8px 0;max-width:calc(100% - 74px);background:none;text-align:left}
 .delay-node,.buffer-node,.project-node{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center;justify-content:start;min-height:100px;text-align:left}
 .delay-node .node-circle,.buffer-node .node-circle,.project-node .node-circle{width:48px;height:48px}
 .delay-node strong,.buffer-node strong,.project-node strong{text-align:left;padding:0;background:none;font-size:13px;line-height:1.5}
 .edge-two,.edge-four{justify-self:start;margin:70px 0 14px 40px;max-width:calc(100% - 40px);text-align:left;padding:0 0 0 3px;background:none;font-size:12px;min-height:72px}
 .edge-three{justify-self:start;margin:14px 0 14px 58px;max-width:calc(100% - 58px);text-align:left;padding:0;background:none;font-size:12px;min-height:62px}
 .uncertain{margin-top:20px;min-height:76px;gap:6px;padding:9px 6px}.uncertain span{font-size:11px}
}
@media(max-width:760px){
 .connection-map .edge-label{position:absolute;grid-area:auto;left:var(--dot-x);top:var(--dot-y);transform:translate(-50%,-50%);width:44px;height:44px;min-height:44px;max-width:none;margin:0;padding:0;border:0;background:transparent;font-size:0;line-height:0;z-index:3}
 .connection-map .edge-label:before{content:'';display:block;position:absolute;left:17px;top:17px;width:10px;height:10px;background:var(--copper);border:2px solid var(--bg);border-radius:50%;box-sizing:border-box;box-shadow:0 0 0 1px var(--copper)}
 .connection-map .edge-four:before{background:var(--teal);box-shadow:0 0 0 1px var(--teal)}
 .connection-map .edge-label:focus-visible{outline:2px solid var(--copper);outline-offset:0;border-radius:50%}
 .connection-map{grid-template-rows:90px 56px 90px 100px 100px 68px 104px}
}
/* Retain the earlier circle arrangement; only connection labels become dots. */
@media(max-width:760px){
 .policy-node,.chip-node{display:grid;grid-template-columns:58px 120px;gap:16px;justify-content:center}
 .delay-node,.buffer-node,.project-node{display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;text-align:center;min-height:110px}
 .delay-node .node-circle,.buffer-node .node-circle,.project-node .node-circle{width:58px;height:58px}
 .delay-node strong,.buffer-node strong,.project-node strong{text-align:center;font-size:14px;background:var(--bg);padding:3px}
 .connection-map{grid-template-rows:90px 48px 90px 88px 116px 60px 116px}
 .uncertain{align-self:center;margin-top:0}
}
/* Mobile diagram names remain accessible without visible white labels. */
@media(max-width:760px){
 .connection-map .map-node strong{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
}

/* A compact mobile research example, with depth available on demand. */
@media(max-width:760px){
 .research h2{font-size:32px;line-height:1.12}
 .research .section-lead{font-size:15px;line-height:1.6}
 .research-panel{padding:18px 16px;margin-top:24px}
 .research-body{min-height:0;gap:0;margin:20px 0 0}
 .research-body .answer-lead{font-size:23px;line-height:1.35;margin-bottom:16px}
 .research-tabs button{font-size:11px;min-height:44px;padding:12px 3px}
 .answer-detail,.source-disclosure,.question-disclosure{border-top:1px solid var(--line);margin:0;padding:0}
 .answer-detail>summary,.source-disclosure>summary,.question-disclosure>summary{font-family:Inter,sans-serif;font-size:13px;line-height:1.4;min-height:44px;padding:14px 0;cursor:pointer;color:var(--muted)}
 .answer-detail p,.research-body li{font-size:14px;line-height:1.65}
 .answer-detail .condition-chips{margin-bottom:16px}
 .question-disclosure .suggestions{margin:0 0 16px;display:grid;gap:8px}
 .question-disclosure .suggestions button{font-size:13px;text-align:left;min-height:44px}
 .research-panel .demo-note{font-size:11px;line-height:1.5;margin:14px 0 0}
}
@media(min-width:761px){.answer-detail,.question-disclosure{display:contents}.answer-detail>summary,.question-disclosure>summary{display:none}}
/* Blend topic artwork into the phone layout, as on desktop. */
@media(max-width:760px){
 .personal .perspective-art{width:calc(100% + 24px);margin:0 -12px -12px;aspect-ratio:1.4;overflow:hidden}
 .personal .perspective-art .topic-feature-image{object-fit:cover;object-position:center;mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent),linear-gradient(to bottom,transparent,#000 16%,#000 72%,transparent);mask-composite:intersect}
 .personal #topic-preview{position:relative;margin-top:0}
}

/* Compact phone footer with full navigation available on demand. */
@media(max-width:760px){
 .footer.shell{display:flex;flex-direction:column;gap:0;padding-top:24px;padding-bottom:18px}
 .footer .footer-identity{width:100%;margin-bottom:18px}
 .footer .footer-identity p{display:none}
 .footer .footer-identity .brand-wordmark{width:110px}
 .footer .footer-identity .brand-symbol{width:24px}
 .footer .footer-identity .footer-status{margin-top:8px;font-size:11px}
 .footer-group{width:100%;border-bottom:1px solid var(--line)}
 .footer-group>summary{font-family:Inter,sans-serif;font-size:13px;line-height:1.4;padding:13px 0;min-height:44px;cursor:pointer;color:var(--ink)}
 .footer-group nav.footer-pages{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;padding-bottom:10px;width:100%}
 .footer-group nav.footer-pages a{font-size:13px;min-height:44px;display:flex;align-items:center}
 .footer-bottom{width:100%;gap:2px;margin-top:12px;font-size:11px;order:initial}
 .footer-bottom a{min-height:36px}
}
@media(min-width:761px){.footer-group{display:contents}.footer-group>summary{display:none}}
.footer-group .footer-pages>p[hidden]{display:none}
@media(min-width:761px){.footer-group .footer-pages>p[hidden]{display:block}}


/* Solid arrowheads on tappable connections; the uncertainty shaft stays dotted. */
@media(max-width:760px){
 .connection-map .edge-label:before{left:16px;top:15px;width:12px;height:14px;border:0;border-radius:0;box-shadow:none;background:var(--copper);clip-path:polygon(0 0,50% 30%,100% 0,50% 100%);transform:rotate(var(--arrow-angle,0deg))}
 .connection-map .edge-four:before{background:var(--teal);box-shadow:none}
 .mobile-connection-lines .mobile-uncertainty-head{fill:var(--amber);stroke:none;stroke-dasharray:none}
}
