/* Original sketches and interface concepts, within the shared portfolio system. */
body[data-page=sketchup-mobile] .sketch-story{padding:0 var(--page-gutter);max-width:100%}
.sketch-story .go-section{padding-block:48px;min-width:0}
.sketch-story .sketch-overview{padding-top:24px}
.sketch-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.sketch-overview h1{font-size:clamp(3.5rem,6.5vw,6.5rem);line-height:1.03;letter-spacing:-.06em;margin:24px 0}
.sketch-overview h1>span{color:var(--action-primary)}
.sketch-hero .go-statement{font-size:clamp(1.5rem,2.3vw,2.25rem);max-width:22ch}
.sketch-platform{font-size:.75rem;color:var(--text-secondary);margin-top:24px}
.sketch-hero .sketch-lead{font-size:.9375rem;color:var(--text-secondary);margin-top:24px;max-width:49ch}
.sketch-hero-visual{position:relative;isolation:isolate}
.sketch-hero-visual:before{content:'';position:absolute;inset:17% 0 14%;z-index:-1;background:var(--surface-subtle);border-radius:24px}
.sketch-hero-visual .sketch-screen{max-width:320px;margin-inline:auto}
.sketch-story .sketch-overview-intro{max-width:78ch;color:var(--text-secondary);margin-top:32px}
.sketch-overview .go-meta{display:grid;grid-template-columns:1.2fr 1fr .8fr 1.25fr;gap:24px;border-top:1px solid var(--border-subtle);padding-top:24px;margin:32px 0 0}
.sketch-overview .go-meta dd{font-size:.9375rem;line-height:1.6;font-weight:600}
.sketch-introduction,.sketch-stage-heading{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;margin-top:24px}
.sketch-introduction p,.sketch-stage-heading>p,.sketch-section-intro{color:var(--text-secondary)}
.sketch-introduction p,.sketch-stage-heading>p{margin-top:0}
.sketch-story .sketch-section-intro{max-width:74ch;margin-top:24px}
.sketch-decisions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px}
.sketch-decisions>div{border-top:1px solid var(--border-subtle);padding-top:16px}
.sketch-decisions .eyebrow{font-size:.6875rem;color:var(--text-secondary)}
.sketch-decisions h3{font-size:1.125rem;line-height:1.4;margin:12px 0}
.sketch-decisions p{font-size:.875rem;color:var(--text-secondary)}
.sketch-stage{margin-top:64px}
.sketch-stage+.sketch-stage{padding-top:48px;border-top:1px solid var(--border-subtle)}
.sketch-stage-heading{margin-top:0;margin-bottom:32px}
.sketch-stage-heading h3{font-size:clamp(1.75rem,2.7vw,2.5rem);line-height:1.2;letter-spacing:-.035em;margin:20px 0 0;max-width:23ch}
.sketch-stage-heading>p{font-size:.9375rem}
.sketch-stage-heading .eyebrow{color:var(--text-secondary)}
.sketch-number{font-weight:700;color:var(--action-primary)}
.sketch-frame{display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;align-items:start}
.sketch-frame .sketch-stage-heading{display:block}
.sketch-frame .sketch-stage-heading>p{margin-top:24px}
.sketch-story .sketch-insight{font-size:clamp(1.0625rem,1.5vw,1.375rem);line-height:1.6;font-weight:500;max-width:56ch;border-left:2px solid var(--action-primary);padding-left:24px;margin-top:32px}
.sketch-frame .sketch-insight{font-size:1rem}
.sketch-artifact{margin:0;min-width:0}
.sketch-artifact .ivi-image-trigger{display:block;width:100%;padding:16px;background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:12px;cursor:zoom-in;transition:border-color 180ms ease,box-shadow 180ms ease}
.sketch-artifact img{display:block;width:100%;height:auto;object-fit:contain;border-radius:0}
.sketch-artifact .ivi-image-trigger:hover{border-color:var(--action-primary);box-shadow:0 8px 24px rgb(0 0 0 / .06)}
.sketch-artifact figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:12px;font-size:.8125rem;line-height:1.5;color:var(--text-secondary)}
.sketch-enlarge{color:var(--action-primary);flex-shrink:0}
.sketch-screen .go-device-canvas{display:block;max-width:390px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:zoom-in;line-height:0;transition:transform 550ms cubic-bezier(.77,0,.18,1)}
.sketch-screen img{display:block;width:100%;height:auto;max-width:none;border-radius:0}
.sketch-screen figcaption{font-size:.875rem;line-height:1.5;max-width:30ch}
.sketch-screen:focus-within{z-index:3}
.sketch-screen .go-device-canvas:focus-visible,.sketch-artifact .ivi-image-trigger:focus-visible{outline:3px solid var(--focus-visible);outline-offset:4px}
.sketch-progression{background:var(--surface-subtle);padding:32px;border-radius:20px}
.sketch-progression-label{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:start;margin-bottom:24px}
.sketch-progression-label p{font-size:.875rem;color:var(--text-secondary);margin:0}
.sketch-comparison{display:grid;grid-template-columns:1fr 32px 1fr;gap:24px;align-items:center;max-width:740px;margin:auto}
.sketch-comparison .sketch-artifact .ivi-image-trigger{padding:0;background:transparent;border:0;box-shadow:none}
.sketch-comparison .sketch-artifact{max-width:285px;margin:auto}
.sketch-comparison .sketch-screen{max-width:335px;margin:auto}
.sketch-comparison figcaption{display:block;min-height:3em;text-align:center}
.sketch-comparison .sketch-enlarge{display:block;margin-top:4px}
.sketch-arrow{font-size:1.5rem;color:var(--text-secondary);text-align:center}
.sketch-gallery{display:grid;grid-template-columns:1.12fr 1fr 1fr;gap:24px;align-items:start}
.sketch-gallery .sketch-artifact:nth-child(2){padding-top:56px}
.sketch-gallery .sketch-artifact:nth-child(3){padding-top:112px}
.sketch-gallery .ivi-image-trigger{padding:8px}
.sketch-gallery .ivi-caption{display:block}
.sketch-gallery .sketch-enlarge{display:block;margin-top:8px}
.sketch-interface-grid{display:grid;grid-template-columns:.65fr 1fr 1fr;gap:24px;align-items:center;background:var(--surface-subtle);padding:24px;border-radius:20px}
.sketch-pattern-note p{font-size:.9375rem;color:var(--text-secondary)}
.sketch-interface-grid .sketch-extensions{padding-top:40px}
.sketch-experience-screens{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px;isolation:isolate;position:relative}
.sketch-experience-screens:before{content:'';position:absolute;inset:17% 0 14%;z-index:-1;background:var(--surface-subtle);border-radius:24px}
.sketch-experience-notes{display:grid;grid-template-columns:1fr 1fr;gap:32px 48px;margin-top:40px}
.sketch-experience-notes>section{border-top:1px solid var(--border-subtle);padding-top:20px}
.sketch-experience-notes .eyebrow{font-size:.6875rem;color:var(--text-secondary)}
.sketch-experience-notes h3{font-size:1.25rem;line-height:1.4;margin:16px 0}
.sketch-experience-notes p{font-size:.9375rem;color:var(--text-secondary)}
.sketch-experience-notes .text-link{font-size:.875rem;margin-top:16px}
.sketch-story .go-reading{max-width:72ch}
.sketch-story .go-reading p{color:var(--text-secondary)}
.sketch-story .go-reading blockquote{margin-top:32px;max-width:38ch}
.sketch-related .work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.sketch-related .project{grid-column:auto}
.sketch-related .project-link{display:flex;flex-direction:column;height:100%}
.sketch-related .project-caption{display:flex;flex-direction:column;flex:1}
.sketch-related .project-action{margin-top:auto;align-self:start}
.sketch-related .project-visual{flex:none;margin-top:auto}
.sketch-related .media-frame{aspect-ratio:3/2}
.sketch-related .project-title-row h3{font-size:1.25rem}
.sketch-story>.project-disclosure{padding-inline:0}
body[data-page=sketchup-mobile] .ivi-image-viewport img{width:auto;max-width:100%;max-height:calc(94dvh - 170px);height:auto;margin:auto}
body[data-page=sketchup-mobile] .ivi-image-viewport.is-zoomed img{width:var(--sketch-native-width);max-width:none;max-height:none}
body[data-page=sketchup-mobile] .ivi-image-viewport{touch-action:pan-x pan-y pinch-zoom}
@media(max-width:1100px){.sketch-story .go-section{padding-block:32px}.sketch-hero{gap:24px}.sketch-overview .go-meta{grid-template-columns:1fr 1fr}.sketch-stage-heading,.sketch-introduction{gap:24px}.sketch-frame{grid-template-columns:.8fr 1.2fr;gap:24px}.sketch-gallery{gap:16px}.sketch-gallery .ivi-image-trigger{padding:4px}.sketch-interface-grid{grid-template-columns:1fr 1fr;gap:16px}.sketch-pattern-note{grid-column:1/-1;max-width:64ch}.sketch-pattern-note p{margin:0}.sketch-interface-grid .sketch-extensions{padding-top:0}.sketch-related .work-grid{gap:16px}}
@media(max-width:900px){.sketch-story .go-section,body[data-page=sketchup-mobile] #experience{scroll-margin-top:220px}.sketch-story .sketch-stage[id]{scroll-margin-top:220px}.sketch-related .work-grid{grid-template-columns:1fr 1fr}.sketch-frame{grid-template-columns:.7fr 1.3fr}}
@media(max-width:650px){.sketch-hero,.sketch-introduction,.sketch-stage-heading,.sketch-frame,.sketch-progression-label,.sketch-experience-notes,.sketch-related .work-grid{grid-template-columns:1fr}.sketch-overview h1{font-size:clamp(3.5rem,16vw,5rem);margin-top:24px}.sketch-hero .go-statement{font-size:1.5rem}.sketch-hero-visual{max-width:330px;width:100%;margin-inline:auto}.sketch-hero .sketch-lead{margin-top:24px}.sketch-platform{margin-top:16px}.sketch-overview .go-meta{grid-template-columns:1fr;gap:16px}.sketch-overview .go-meta>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px}.sketch-decisions{grid-template-columns:1fr;gap:20px}.sketch-decisions>div{display:grid;grid-template-columns:24px 1fr;gap:0 12px}.sketch-decisions h3{margin:0 0 8px}.sketch-decisions p{grid-column:2}.sketch-stage{margin-top:40px}.sketch-stage+.sketch-stage{padding-top:32px}.sketch-stage-heading{gap:20px;margin-bottom:24px}.sketch-frame{gap:24px}.sketch-frame .sketch-stage-heading{margin-bottom:0}.sketch-frame .sketch-insight{margin-top:24px}.sketch-artifact .ivi-image-trigger{padding:6px;border-radius:8px}.sketch-artifact figcaption{display:block}.sketch-enlarge{display:block;margin-top:8px}.sketch-progression{padding:20px 12px}.sketch-progression-label{gap:12px}.sketch-comparison{grid-template-columns:1fr;gap:20px}.sketch-comparison .sketch-artifact{max-width:260px}.sketch-comparison .sketch-screen{max-width:300px}.sketch-arrow{transform:rotate(90deg)}.sketch-gallery{grid-template-columns:1fr;gap:32px}.sketch-gallery .sketch-artifact{max-width:360px;margin:auto;padding-top:0!important;width:100%}.sketch-interface-grid{padding:16px 8px;gap:24px 0}.sketch-pattern-note{padding-inline:8px}.sketch-screen figcaption{font-size:.75rem;padding-inline:4px}.sketch-experience-screens{grid-template-columns:1fr 1fr;gap:24px 8px}.sketch-experience-screens .sketch-menu{grid-column:1/-1;max-width:280px;margin:auto}.sketch-experience-notes{gap:24px}.sketch-story .sketch-insight{padding-left:16px}body[data-page=sketchup-mobile] .ivi-image-viewport img{max-height:calc(96dvh - 240px)}}
@media(prefers-reduced-motion:reduce){.sketch-screen .go-device-canvas,.sketch-artifact .ivi-image-trigger{transition:none}}
@media print{.sketch-story .go-section{break-inside:auto}.sketch-stage-heading{break-after:avoid}.sketch-artifact{break-inside:avoid}.sketch-screen .go-device-canvas{transform:none!important}}
