/* Dar · portfolio foundation, editorial composition. Iteration 06. */
body{background:var(--bg);text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
button{font:inherit;cursor:pointer;color:inherit}
[hidden]{display:none!important}
.inner{max-width:var(--content-wide);margin-inline:auto;padding-inline:var(--gutter)}
.chapter{padding-block:var(--section-pad-y)}
p{font-size:var(--body-size);line-height:1.65}
h3,h4{font-family:var(--f-display);line-height:1.2;letter-spacing:-.02em}
h3{font-size:28px;font-weight:700}h4{font-size:22px;font-weight:700}
.section-heading{margin-bottom:48px;max-width:880px}.section-heading .h-section{margin-top:16px}.section-heading>p{max-width:760px;margin-top:24px}
.prose p+p{margin-top:20px}.prose .section-heading{margin-bottom:24px}
.figure-caption,figcaption{font:400 17px/1.5 var(--f-body);color:var(--text-secondary)}
.figure-caption{margin-top:20px}figcaption strong{display:block;color:var(--text-primary);font-weight:600;margin-bottom:8px}
.image-button{display:block;width:100%;padding:0;background:none;border:0;text-align:inherit;border-radius:16px;cursor:zoom-in}.image-button img{width:100%;height:auto}
:focus-visible{outline:3px solid var(--primary);outline-offset:5px}.dar-cover :focus-visible,.conclusion :focus-visible{outline-color:var(--signal-tint)}
.text-control{border:0;background:none;padding:10px 0;font-weight:600;color:var(--primary);min-height:44px;text-align:left}.text-control span{margin-left:12px}
.skip-link{position:fixed;top:-80px;left:24px;z-index:300;background:var(--bg);padding:12px;border-radius:8px}.skip-link:focus{top:16px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.progress-bar{position:fixed;top:0;left:0;height:2px;background:var(--signal);width:0;z-index:100}
/* Cover: same shared anatomy as Parlour. A real reader is the visual anchor. */
.dar-cover .inner{padding-bottom:80px}.cover-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:64px;align-items:center;margin-top:40px}
.dar-cover h1{--cover-title-size:clamp(44px,4.5vw,64px);margin-top:0}.dar-cover .lede{max-width:48ch;margin-top:32px}.dar-cover .rule{margin-top:32px}
.cover-art{position:relative;width:304px;justify-self:center;perspective:1200px;margin:0}.cover-reader{border-radius:32px;transform:rotate(5deg);box-shadow:0 40px 70px -20px #091b41aa;transition:transform 720ms var(--ease-out)}
.cover-art:hover .cover-reader{transform:rotate(2deg) translateY(-4px)}.cover-icon{position:absolute;width:88px;height:88px;bottom:36px;left:-44px;border-radius:21px;transform:rotate(-7deg);box-shadow:0 14px 30px #12244766}
/* Research: a source-sized dossier, facts carried with the example. */
.research-spread{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:80px;align-items:start}.research-scale{display:flex;gap:48px;margin-top:36px}.research-scale strong{display:block;font:700 60px/1.1 var(--f-display);color:var(--primary);letter-spacing:-.06em}.research-scale span{display:block;font-size:17px;margin-top:8px}.source-date{font-size:13px;margin-top:20px;color:var(--text-secondary)}
.evidence-dossier{border-radius:24px;background:var(--sage);padding:28px;box-shadow:var(--shadow-media);position:relative;isolation:isolate}.dossier-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}.dossier-index{font-size:13px;color:var(--text-secondary)}
.evidence-promise{background:var(--bg);padding:24px;border-radius:16px;display:flex;gap:20px;align-items:start;transform:rotate(-2deg);box-shadow:0 10px 20px -14px #253c3455}.evidence-promise img{width:56px;height:56px;border-radius:13px;flex:none}.evidence-tag{font-size:13px;color:var(--primary);display:block;margin-bottom:12px}.evidence-promise h3{font-size:21px}.evidence-promise p{margin-top:8px}
.evidence-question{padding:32px 12px 24px}.evidence-question h3{font:400 36px/1.1 var(--f-personal);margin-bottom:16px}.evidence-foot{display:flex;gap:8px;flex-wrap:wrap}.evidence-foot span{font-size:13px;padding:8px 12px;border-radius:8px;background:var(--bg);color:var(--primary)}.evidence-foot span+span{background:var(--signal-tint);color:var(--signal-ink)}
.comparison-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start;margin-top:80px;margin-bottom:32px}.comparison-table table{width:100%;border-collapse:separate;border-spacing:0 8px;table-layout:fixed}.comparison-table th{font-weight:400;text-align:left}.comparison-table thead th{font-size:13px;padding:8px 20px;color:var(--text-secondary)}.comparison-table th:first-child{width:25%}.comparison-table th:nth-child(2){width:23%}.comparison-table th:nth-child(3){width:26%}
.comparison-table tbody th,.comparison-table td{background:var(--surface);padding:24px 20px;vertical-align:top;font-size:17px;line-height:1.45}.comparison-table tbody tr:nth-child(even)>*{background:#e8ede9}.comparison-table tbody th{border-radius:16px 0 0 16px}.comparison-table td:last-child{border-radius:0 16px 16px 0}.comparison-table td>strong{font-weight:600}.comparison-table td>span{display:block;color:var(--text-secondary);margin-top:8px}.competitor{display:flex;align-items:center;gap:14px}.competitor img{flex:none;width:48px;height:48px;border-radius:11px;box-shadow:0 3px 6px #00000010}.competitor strong{font-size:17px;font-weight:600;display:block}.competitor span{display:block;font-size:13px;margin-top:4px;color:var(--text-secondary)}
.research-details{margin-top:32px;background:var(--surface);padding:0 28px;border-radius:16px}.research-details summary{list-style:none;cursor:pointer;padding:24px 0;font-size:17px;font-weight:600;display:flex;justify-content:space-between;gap:24px}.research-details summary::-webkit-details-marker{display:none}.research-details[open] summary>span{transform:rotate(45deg)}.detail-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:8px 0 32px}.detail-columns h3{font-size:20px;margin-bottom:12px}
/* PRFAQ: an actual editorial document, not another dashboard. */
.vision-section{background:var(--sage)}.vision-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start}.vision-paper{background:var(--bg);border-radius:16px;padding:40px;box-shadow:var(--shadow-media);transform:rotate(1.5deg)}.paper-masthead{display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:20px;font-size:13px;letter-spacing:.08em}.paper-masthead span:first-child{font-weight:700;letter-spacing:.2em}.vision-paper h3{font:400 36px/1.12 var(--f-personal);margin-block:28px}.promise{display:flex;gap:20px;margin-top:20px}.promise>span{font-size:13px;color:var(--primary);padding-top:4px}.promise strong{font-size:20px;font-weight:600}.promise p{margin-top:4px}.paper-source{display:block;font-size:13px;color:var(--text-secondary);margin-top:28px}.scope-row{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;margin-top:64px}.scope-row h3{font-size:22px;margin:12px 0}.scope-row>div{padding-top:24px;border-top:1px solid #afc4b7}
/* Search: one self-contained mechanism at a time. */
.search-lab{background:var(--depth-soft);border-radius:24px;overflow:hidden}.approach-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px;background:#d9e2ee}.approach-controls button{background:transparent;border:0;border-radius:12px;padding:15px 8px;font-size:17px;font-weight:600;transition:background 140ms var(--ease),color 140ms var(--ease)}.approach-controls button[aria-selected=true]{background:var(--depth);color:var(--on-dark);box-shadow:0 6px 12px -8px #102c65}.approach-controls button:hover:not([aria-selected=true]){background:#eef2f7}
.approach-panel{padding:40px;animation:panel-arrive 240ms var(--ease-out) both}.approach-intro{display:flex;justify-content:space-between;align-items:start;gap:40px}.approach-intro h3{max-width:460px;font:400 34px/1.13 var(--f-personal);color:var(--depth)}.approach-intro p{max-width:260px;color:var(--text-secondary)}
.pipeline{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin:36px 0}.pipeline-step{position:relative;min-width:0}.operation-copy{margin-top:24px}.data-label{font-size:13px;color:var(--quiet);display:block;margin-bottom:10px}.pipeline h4{font-size:21px;margin-bottom:10px}.pipeline p{color:var(--text-secondary)}
/* The objects encode inputs, prepared data and outputs; there are no score-like graphics. */
.mechanism-detail{min-height:216px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;position:relative;font-size:13px;color:var(--depth)}
.mechanism-detail strong{display:block;font-size:15px;font-weight:600;line-height:1.4}.mechanism-detail small,.mechanism-detail span{font-size:13px;line-height:1.4}.mechanism-detail small{text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:5px;color:var(--quiet)}
.data-object,.reference-object{padding:16px 20px;background:var(--bg);border-radius:12px;box-shadow:0 10px 16px -16px #13306460}.vector-object,.corpus-object,.model-object,.parsed-object{padding:16px 20px;border-radius:12px;background:var(--depth);color:var(--on-dark)}.vector-object{display:flex;justify-content:space-between;align-items:center;gap:8px}.vector-object span{font-size:20px;letter-spacing:1px;white-space:nowrap}.inner-arrow{text-align:center;line-height:1!important;height:28px;display:block;font-size:22px!important;color:var(--quiet)}.corpus-object span,.model-object span,.parsed-object span{color:var(--on-dark-soft);display:block;margin-bottom:5px}
.index-object{position:relative;background:var(--bg);padding:16px 20px;border-radius:12px;box-shadow:0 5px 0 -1px #bccce0,0 10px 0 -2px #d0daea;margin:0 8px 10px}.index-object>span{display:block;margin-top:5px}.data-feed{height:28px;border-left:2px dashed #687f9e;align-self:center}.data-feed:after{content:'↓';position:absolute;bottom:40px;opacity:0}.join-object{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--depth);color:var(--on-dark);border-radius:12px;padding:18px 16px}.join-object i{font-style:normal;font-size:20px}.state-object{background:var(--sage)}.rerank-model{text-align:center;background:var(--depth);color:var(--on-dark);padding:18px 12px;border-radius:12px;margin:16px 0}.rerank-model span{display:block;color:var(--on-dark-soft);margin-bottom:6px}.candidate-order{display:flex;gap:8px;justify-content:center}.candidate-order>span{display:grid;place-items:center;background:var(--bg);border-radius:8px;width:44px;height:32px;font-weight:600;box-shadow:var(--shadow-subtle)}.candidate-order>span[data-candidate="B"]{background:var(--sage)}.candidate-order>span[data-candidate="C"]{background:var(--frost)}
.canvas-signposts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:24px}.canvas-signposts span{font-size:13px;color:var(--text-secondary)}.canvas-signposts strong{display:block;font-size:17px;color:var(--indigo);margin-bottom:6px}.approach-panel:focus-visible{outline-offset:-5px}
.experiment-finding{border-top:1px solid #c5d2e1;padding-top:28px;display:grid;grid-template-columns:200px 1fr;gap:24px}.experiment-finding .eyebrow{padding-top:5px;color:var(--quiet)}.experiment-finding h4{margin-bottom:12px}.validation-note{display:grid;grid-template-columns:220px 1fr;gap:32px;margin-top:64px}.validation-note .eyebrow{margin-top:6px}.validation-note h3{margin-bottom:16px}
/* Design: decisions sit beside the one artifact they explain. */
.design-section{background:var(--frost)}.identity-row{display:grid;grid-template-columns:1fr 2fr;gap:64px;align-items:center;margin-top:56px}.identity-row h3{margin-top:16px}.identity-row p{margin-top:16px}.identity-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.identity-gallery .image-button{border-radius:24%;overflow:hidden;box-shadow:0 10px 14px -12px #1a173560;transition:transform 240ms var(--ease-out)}.identity-gallery .image-button:hover{transform:translateY(-5px)}.identity-gallery figcaption{margin-top:16px;font-size:13px;text-align:center}.identity-gallery figure:last-child figcaption{font-weight:600;color:var(--indigo)}
.design-decision{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center;margin-top:80px}.design-art{display:flex;justify-content:center}.design-phone{max-width:282px;border-radius:30px;overflow:hidden;box-shadow:0 30px 50px -30px #28204c90;transform:rotate(-3deg)}.design-narrative h3{font:400 36px/1.13 var(--f-personal);margin:16px 0 24px}.decision-trail{list-style:none;padding:0;margin-top:28px}.decision-trail li{display:grid;grid-template-columns:76px 1fr;gap:20px;padding-block:16px;border-top:1px solid #bdbbcc}.decision-trail li>span{font-size:13px;font-weight:600;color:var(--indigo);padding-top:4px}.artifact-origin{font-size:13px;color:var(--text-secondary);margin-top:16px}
.figma-board{margin-top:80px}.board-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:28px}.board-heading h3{margin-top:12px}.canvas-image{overflow:hidden;border-radius:16px;background:var(--bg);box-shadow:var(--shadow-media)}.canvas-image img{width:100%;height:auto}
/* The illustration carries the largest surface in this chapter. */
.engraving-section{background:var(--bg)}.engraving-lead{display:grid;grid-template-columns:1fr 1fr;gap:64px;max-width:100%}.engraving-pair{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:48px}.plate-surface{position:relative;background:var(--surface);border-radius:20px;aspect-ratio:400/230;overflow:hidden;width:100%}.plate-surface>img{height:100%;object-fit:contain;mix-blend-mode:multiply}.modular-surface img{position:absolute;filter:sepia(.04) saturate(.4) contrast(.92)}.modular-surface .module-mountain{left:0;top:0;width:100%;height:100%;opacity:.66;z-index:1}.modular-surface .module-stone{left:0;top:19%;width:61%;height:75%;z-index:4}.modular-surface .module-accent{inset:0;width:100%;height:100%;z-index:8}.engraving-pair figcaption{padding:24px 8px 0}.engraving-pair figcaption strong{font:400 30px/1.15 var(--f-personal);margin-top:12px}.engraving-conclusion{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:56px}.engraving-conclusion h3{font-size:24px}.plate-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:48px}.plate-gallery img{mix-blend-mode:multiply}.plate-gallery figcaption{margin-top:16px;text-align:center;font-size:13px}
/* Distinct native states, one equal-size gallery. */
.product-section{background:var(--sage)}.native-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.native-screen{max-width:268px;margin-inline:auto;border-radius:28px;overflow:hidden;box-shadow:0 24px 40px -28px #22352b90}.native-gallery figcaption{max-width:268px;margin:24px auto 0}.native-gallery figcaption strong{font-size:20px}
/* Real motion evidence carries the interaction story. */
.interaction-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.motion-controls{margin-bottom:24px}.action-button{min-height:44px;padding:12px 20px;background:var(--depth);color:var(--on-dark);border:0;border-radius:12px;font-size:17px;font-weight:600}.action-button span{margin-left:16px}.motion-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.motion-pair video{width:100%;height:auto;border-radius:20px;display:block;box-shadow:var(--shadow-media)}.motion-pair figcaption{margin-top:20px}.interaction-copy p+p{margin-top:20px}.cause-chain{margin-block:28px;padding:24px 28px;background:var(--depth-soft);border-radius:16px}.cause-chain>p{margin-top:16px;font-size:17px;font-weight:500;color:var(--depth)}.cause-chain>p span{display:block;font-weight:400;color:var(--quiet);padding-block:4px}
.scroll-story{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center;margin-top:80px}.scroll-story h3{margin:16px 0 20px}.work-lanes>div+div{margin-top:32px}.lane-label{font-size:13px;color:var(--text-secondary)}.work-lanes p{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:12px}.work-lanes p>span{font-size:15px;padding:12px 8px;text-align:center}.work-hot{border-radius:8px;background:var(--signal-tint);color:var(--signal-ink)}.work-ready{border-radius:8px;background:var(--sage);color:var(--primary)}.background-work{font-size:13px;display:block;max-width:250px;margin:12px auto 0;text-align:center;color:var(--text-secondary)}
.conclusion{background:var(--depth);color:var(--on-dark)}.conclusion .h-section{color:var(--on-dark);margin-top:20px;font-size:clamp(36px,4vw,56px)}.closing-columns{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:32px;color:var(--on-dark-soft)}
/* Native dialog: scrollable detail, original-size option, explicit close. */
#image-dialog{position:fixed;inset:0;width:min(1300px,94vw);max-width:none;height:92vh;max-height:none;margin:auto;padding:0;border:0;border-radius:16px;background:var(--bg);color:var(--text-primary);box-shadow:var(--shadow-heavy)}
#image-dialog[open]{display:flex;flex-direction:column}#image-dialog::backdrop{background:#101523bb;backdrop-filter:blur(8px)}.dialog-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:16px 24px;font-size:17px;flex:none}.dialog-actions{display:flex;gap:12px}.dialog-actions button{min-height:44px;border:0;background:var(--surface);border-radius:8px;padding:10px 14px;font-size:17px}.dialog-actions button[aria-pressed=true]{background:var(--depth);color:var(--on-dark)}.dialog-body{flex:1;min-height:0;overflow:auto;padding:24px}.dialog-body img{margin:auto;max-height:100%;max-width:100%;width:auto;object-fit:contain}.dialog-body.original img{max-width:none;max-height:none}#dialog-caption{padding:12px 24px 20px;font-size:13px}
@keyframes panel-arrive{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.cover-layout{gap:40px}.cover-art{width:270px}.research-spread,.vision-layout,.comparison-intro,.design-decision,.interaction-layout,.scroll-story{gap:40px}.comparison-table tbody th,.comparison-table td{padding:20px 14px}.competitor{align-items:start;flex-direction:column}.identity-row{grid-template-columns:1fr;gap:32px}.identity-row>div:first-child{max-width:540px}.identity-gallery{max-width:660px}.pipeline{gap:32px}.approach-panel{padding:32px}.approach-intro{display:block}.approach-intro p{max-width:none;margin-top:12px}.experiment-finding{grid-template-columns:1fr;gap:12px}.native-gallery{gap:24px}.scope-row{gap:40px}.vision-paper{padding:28px}}
@media(max-width:760px){.inner{padding-inline:24px}.chapter{padding-block:64px}.section-heading{margin-bottom:32px}.section-heading br{display:none}.cover-layout{grid-template-columns:1fr;margin-top:32px;gap:48px}.dar-cover .inner{padding-bottom:64px}.dar-cover h1{--cover-title-size:48px}.dar-cover h1 br{display:none}.dar-cover .lede{margin-top:24px}.cover-art{width:260px}.cover-icon{width:72px;height:72px;left:-24px;bottom:28px;border-radius:18px}
.research-spread,.vision-layout,.comparison-intro,.scope-row,.design-decision,.engraving-lead,.engraving-conclusion,.interaction-layout,.scroll-story,.closing-columns{grid-template-columns:1fr;gap:32px}.research-scale{margin-top:28px;gap:36px}.research-scale strong{font-size:52px}.evidence-dossier{padding:20px}.evidence-promise{padding:20px;gap:16px}.evidence-promise img{width:44px;height:44px}.evidence-question{padding:28px 8px}.comparison-intro{margin-top:56px}.comparison-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.comparison-table table,.comparison-table tbody{display:block}.comparison-table tr{display:block;background:var(--surface);border-radius:16px;padding:20px;margin-bottom:16px}.comparison-table tbody tr:nth-child(even){background:#e8ede9}.comparison-table tbody th,.comparison-table td{display:block;width:auto!important;background:none!important;border-radius:0!important;padding:0!important}.competitor{flex-direction:row;align-items:center;margin-bottom:24px}.competitor img{width:48px;height:48px}.competitor strong{font-size:20px}.comparison-table td+td{margin-top:20px}.comparison-table td::before{content:attr(data-label);font-size:13px;display:block;color:var(--primary);margin-bottom:6px}.comparison-table td>span{margin-top:4px}.research-details{padding-inline:20px}.detail-columns{grid-template-columns:1fr;gap:24px}.vision-paper{transform:none}.scope-row{margin-top:40px}.vision-paper h3{font-size:32px}
.approach-controls{grid-template-columns:1fr 1fr;gap:6px;padding:8px}.approach-controls button{font-size:15px;padding:12px 6px}.approach-panel{padding:24px}.approach-intro h3{font-size:30px}.pipeline{grid-template-columns:1fr;margin-block:28px;gap:40px}.pipeline-step{display:block}.mechanism-detail{min-height:0;max-width:100%}.operation-copy{margin-top:20px!important}.canvas-signposts{grid-template-columns:1fr;gap:14px}.canvas-signposts strong{display:inline;margin-right:10px}.operation-copy{margin-top:0}.data-label{font-size:13px;margin-bottom:8px}.pipeline h4{font-size:20px;margin-bottom:6px}.pipeline p{font-size:17px;line-height:1.45}.validation-note{grid-template-columns:1fr;gap:16px;margin-top:48px}.validation-note h3{font-size:24px}.experiment-finding{padding-top:24px}.experiment-finding h4{font-size:22px}
.identity-gallery{grid-template-columns:repeat(4,1fr);gap:12px}.identity-gallery figcaption{font-size:13px}.identity-row{margin-top:32px}.design-decision{margin-top:48px}.design-phone{max-width:246px}.design-narrative h3{font-size:32px}.design-narrative h3 br{display:none}.decision-trail li{grid-template-columns:64px 1fr;gap:16px}.figma-board{margin-top:48px}.board-heading{display:block}.board-heading .text-control{margin-top:16px}.canvas-image{border-radius:12px}.engraving-pair{grid-template-columns:1fr;gap:32px;margin-top:32px}.engraving-pair figcaption{padding:20px 0 0}.engraving-pair figcaption strong{font-size:28px}.engraving-pair figcaption strong br{display:none}.engraving-conclusion{margin-top:40px;gap:20px}.plate-gallery{gap:12px;margin-top:32px}.plate-gallery figcaption{margin-top:8px}.native-gallery{grid-template-columns:1fr;gap:48px}.native-screen{max-width:268px}.native-gallery figcaption{max-width:268px}.interaction-layout{gap:40px}.motion-pair{gap:16px}.motion-pair video{border-radius:14px}.motion-pair figcaption{font-size:17px}.scroll-story{margin-top:48px}.work-lanes p{gap:8px}.work-lanes p>span{font-size:15px}.conclusion .h-section br{display:none}.closing-columns{gap:20px}.dialog-toolbar{padding:12px;align-items:start}.dialog-toolbar>span{font-size:13px;margin-top:10px}.dialog-actions{gap:6px}.dialog-actions button{padding:8px;font-size:13px}.dialog-body{padding:12px}#dialog-caption{padding:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.cover-art:hover .cover-reader{transform:rotate(5deg)}}

.pipeline-stage{position:relative}.pipeline-wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.pipeline-wires path{fill:none;stroke:var(--depth);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.pipeline-wires .wire{stroke-dasharray:1;stroke-dashoffset:0;animation:trace-wire 720ms var(--ease-out)}
@keyframes trace-wire{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media(max-width:760px){.pipeline-wires{display:none}}
@media(prefers-reduced-motion:reduce){.pipeline-wires .wire{animation:none}}

.state-object small{color:var(--primary)}

.cover-layout,.design-decision,.interaction-layout,.scroll-story{align-items:start}

/* Review 04: open findings and evidence placed beside its decision. */
.research-findings{margin-top:40px}.research-findings .detail-columns{padding:0;gap:40px}.research-findings h3{font-size:22px}
.cover-art{width:304px}.cover-reader{transform:rotate(2deg)}.cover-art:hover .cover-reader{transform:rotate(0deg) translateY(-4px)}
.prototype-study{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;margin-top:80px;align-items:start}.prototype-copy h3{font:400 38px/1.14 var(--f-personal);margin:16px 0 24px}.prototype-copy p+p{margin-top:20px}.prototype-copy h4{margin:36px 0 16px}.prototype-art{width:100%;max-width:360px;margin:0 auto}.prototype-screen{border-radius:24px;overflow:hidden;box-shadow:var(--shadow-media)}.prototype-art figcaption{margin-top:24px}
.interaction-principles{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-bottom:64px}.interaction-principles h3{font-size:24px;margin-bottom:16px}.interaction-copy h3{font:400 36px/1.14 var(--f-personal);margin:16px 0 24px}.scroll-note{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;margin-top:64px}.scroll-note h3{font-size:26px}
@media(max-width:1000px){.prototype-study,.interaction-principles,.scroll-note{gap:40px}}
@media(max-width:760px){.research-findings .detail-columns{gap:28px}.prototype-study,.interaction-principles,.scroll-note{grid-template-columns:1fr;gap:28px}.prototype-study{margin-top:56px}.prototype-copy h3{font-size:32px}.prototype-copy h3 br{display:none}.prototype-art{max-width:300px}.interaction-principles{margin-bottom:48px}.scroll-note{margin-top:48px}.interaction-copy h3{font-size:32px}.cover-art{width:260px}}
@media(prefers-reduced-motion:reduce){.cover-art:hover .cover-reader{transform:rotate(2deg)}}

/* Three separate decisions: symbol, bird construction, window architecture. */
.identity-study{margin-top:64px}
.identity-study+.identity-study{margin-top:80px}
.identity-copy{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start;margin-bottom:40px}
.identity-copy h3{font:400 34px/1.12 var(--f-personal);margin:16px 0 0}
.study-note{font-size:17px;color:var(--text-secondary);margin:0 0 20px}
.study-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.study-gallery figure{min-width:0;margin:0}
.study-gallery figcaption{margin-top:24px}
.study-art{aspect-ratio:1;background:var(--bg);border-radius:24px;overflow:hidden}
.study-art{display:flex;align-items:center;justify-content:center;transition:transform 240ms var(--ease-out)}
.study-art img{display:block;width:100%;height:auto}
.study-gallery .image-button:hover{transform:translateY(-4px)}
.window-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
.window-gallery .image-button{border-radius:24px;transition:transform 240ms var(--ease-out)}
.window-gallery img{width:100%;height:auto}
.window-choice{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start;margin-top:48px}
.window-choice h4{font-size:24px;margin-bottom:16px}
.window-choice figure{width:100%;max-width:320px;margin:0;justify-self:start}
.window-choice img{border-radius:24px}
.window-choice figcaption{margin-top:16px}
@media(max-width:1000px){.identity-copy,.window-choice{gap:40px}.study-gallery{gap:20px}}
@media(max-width:760px){
 .identity-study,.identity-study+.identity-study{margin-top:48px}
 .identity-copy,.window-choice{grid-template-columns:1fr;gap:28px}
 .identity-copy{margin-bottom:28px}.identity-copy h3{font-size:30px}.identity-copy h3 br{display:none}
 .study-gallery{display:flex;overflow-x:auto;gap:24px;margin-inline:-24px;padding:8px 24px 24px;scroll-snap-type:x mandatory;scroll-padding-inline:24px;scrollbar-width:none}
 .study-gallery figure{flex:0 0 82%;min-width:0;scroll-snap-align:start}
 .study-gallery figcaption{margin-top:24px}
 .window-choice{margin-top:32px}.window-choice figure{width:82%;max-width:320px}
}
@media(prefers-reduced-motion:reduce){.study-gallery .image-button:hover{transform:none}}

/* The native preview itself accepts pointer and keyboard pause. */
.cover-reader{display:block;width:100%;height:auto;background:var(--bg);cursor:pointer}

/* Revision 11: product direction is the case's central product decision. */
.evidence-app{display:block;font-size:17px;color:var(--text-secondary);margin-bottom:12px}
.evidence-question{padding-bottom:4px}
.vision-section{background:var(--indigo);color:var(--on-dark)}
.vision-section .eyebrow{color:var(--on-dark-soft)}
.direction-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start}
.direction-thesis{font:400 clamp(64px,6.6vw,96px)/1.02 var(--f-personal);letter-spacing:-.025em;margin:24px 0 0;color:var(--on-dark)}
.direction-rationale{padding-top:46px;color:var(--on-dark-soft)}
.direction-rationale p+p{margin-top:24px}
.direction-promises{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:64px;margin-top:72px}
.direction-promises h3{font:700 28px/1.15 var(--f-display);margin:0 0 20px;color:var(--on-dark)}
.direction-promises p{color:var(--on-dark-soft)}
.direction-boundaries{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:64px;padding-top:48px;position:relative}
.direction-boundaries:before{content:"";position:absolute;inset:0 auto auto 0;width:64px;height:2px;background:var(--signal)}
.direction-boundaries h3{font-size:22px;color:var(--on-dark);margin:0 0 12px}
.direction-boundaries p{color:var(--on-dark-soft)}
@media(max-width:1000px){.direction-intro{gap:40px}.direction-promises{gap:32px}}
@media(max-width:760px){
 .direction-intro,.direction-promises,.direction-boundaries{grid-template-columns:1fr;gap:32px}
 .direction-thesis{font-size:clamp(48px,16.4vw,64px);margin-top:24px}.direction-rationale{padding-top:0}
 .direction-promises{margin-top:48px;gap:32px}.direction-promises h3{font-size:26px;margin-bottom:12px}.direction-promises h3 br{display:none}
 .direction-boundaries{margin-top:48px;padding-top:40px}
}
