@font-face{font-family:"Space Grotesk";src:url('/fonts/space-grotesk.woff2') format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--paper:#eff1f3;--ink:#191d23;--accent:#ffc43d;--line:color-mix(in srgb,var(--ink) 22%,var(--paper));--muted:color-mix(in srgb,var(--ink) 72%,var(--paper));--surface:color-mix(in srgb,var(--paper) 95%,var(--ink));--heading:"Space Grotesk",sans-serif;--body:Manrope,sans-serif;--gutter:clamp(20px,2.5vw,48px);--header-height:68px;--app-height:100dvh;font-family:var(--body);font-synthesis:none;color:var(--ink);background:var(--paper);font-size:16px}
:root[data-font=manrope]{--heading:Manrope,sans-serif}:root[data-font=system]{--heading:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--body:var(--heading)}
*{box-sizing:border-box}body{margin:0}p,h1,h2,h3,h4,figure{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent)}[hidden]{display:none!important}h1,h2,h3,.brand{font-family:var(--heading)}
.header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:26px;padding:10px var(--gutter);background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:30}
.brand{display:flex;flex-direction:column;gap:2px;min-width:160px;max-width:35%;overflow-wrap:anywhere}#owner-name{font-size:1.4rem;font-weight:600;letter-spacing:-.055em;line-height:1.15}#owner-affiliation{font:400 .875rem/1.4 var(--body);letter-spacing:0;color:var(--muted)}
.header nav{display:flex;gap:clamp(16px,2.1vw,34px);align-items:center;min-width:0}.header nav a{font-size:.875rem;line-height:1.4;white-space:nowrap;padding:10px 0;position:relative}.header nav a:after{content:"";height:3px;width:0;position:absolute;bottom:0;left:0;background:var(--accent);transition:width .2s}.header nav a:hover:after,.header nav a[aria-current]:after{width:100%}
.button,.small-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:9px 15px;background:transparent;border:1px solid var(--line);color:inherit;font-size:.875rem;line-height:1.3;white-space:nowrap;border-radius:2px}.button:hover,.small-button:hover:not(:disabled){background:var(--ink);color:var(--paper);border-color:var(--ink)}#edit-toggle{border-color:var(--ink)}
body{height:var(--app-height);overflow:hidden;display:flex;flex-direction:column}main{flex:1;min-height:0}#portfolio{height:100%;overflow-y:auto;overflow-x:hidden;position:relative;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:var(--line) var(--paper)}
.collection{display:contents}.project-screen{height:calc(var(--app-height) - var(--header-height));min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:14px var(--gutter) 8px;scroll-snap-align:start;scroll-snap-stop:always;position:relative;border-bottom:1px solid var(--line)}
.showcase-heading{display:flex;gap:32px;align-items:flex-start;justify-content:space-between;min-width:0}.showcase-heading>div:first-child{min-width:0}.eyebrow{display:flex;align-items:center;gap:14px;font-size:.8125rem;line-height:1.4;color:var(--muted);margin-bottom:5px}.showcase-heading .eyebrow>span:first-child:before{content:"";width:8px;height:8px;display:inline-block;margin-right:10px;background:var(--accent)}.showcase-heading h1{font-size:clamp(1.65rem,2.5vw,2.5rem);font-weight:500;line-height:1.04;letter-spacing:-.055em;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.project-summary{width:35%;max-width:580px;font-size:1rem;line-height:1.5;flex-shrink:0}.project-summary p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.project-summary .small-button{padding:4px 0;min-height:30px;border:0;font-size:.875rem;color:var(--muted)}.project-summary .small-button:hover{background:transparent;color:var(--ink);text-decoration:underline}
.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px 16px;min-height:0;align-items:stretch}.showcase-grid.count-1{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.showcase-grid.count-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}.showcase-grid.count-3{grid-template-rows:minmax(0,1fr)}.showcase-grid.count-4{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-grid.count-5:not(.even-grid)>.is-featured{grid-column:3;grid-row:1/span 2}.showcase-grid.count-1>.small{max-width:420px;width:100%;max-height:330px;align-self:center;justify-self:start}.showcase-grid.count-1>.media-card:not(.small){max-width:1450px;width:100%;justify-self:center}
.media-card{min-width:0;min-height:0;position:relative;display:flex;flex-direction:column}.media-frame{flex:1;min-height:0;width:100%;position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;border-radius:2px}.media-frame.is-cad{background:#fff}.kind-video .media-frame{background:#141a20;color:#d6dce2;border-color:#353d46}.media-frame.has-media{background:transparent;border-color:transparent}.media-frame.is-cad.has-media{background:#fff}.kind-video .media-frame.has-media{background:#12171c}
.slot-corner{position:absolute;top:12px;left:14px;font-size:.75rem;line-height:1.3;letter-spacing:.055em;text-transform:uppercase;color:var(--muted);pointer-events:none}.kind-video .slot-corner{color:#aeb9c5}.has-media .slot-corner{display:none}.placeholder-core{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:10px;padding:35px 16px;color:var(--muted);line-height:1.4}.placeholder-core svg{width:27px;height:27px;stroke:currentColor;fill:none;stroke-width:1.1}.placeholder-core>span{font-size:.875rem}.placeholder-core .slot-format{display:none}.kind-video .placeholder-core{color:#aeb9c5}
.media-frame img,.media-frame video,.media-frame iframe{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;border:0}.media-card figcaption{flex:0 0 auto;min-width:0}.media-label{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.875rem;font-weight:600;line-height:1.4;margin-top:6px}.label-input{min-width:0}.label-input:not(:has(textarea)){overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.media-label .small-button{border:0;padding:2px 0 2px 8px;min-height:28px;font-size:.75rem;color:var(--muted);font-weight:400}.media-label .small-button:hover{color:var(--ink);background:transparent;text-decoration:underline}.caption{font-size:1rem;line-height:1.45;color:var(--muted);white-space:pre-wrap;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.empty-text{font-size:.875rem;font-weight:400;color:var(--muted)}.standalone-text{padding:22px;border:1px solid var(--line);height:100%}.standalone-text .caption{-webkit-line-clamp:8}
.project-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:30px;font-size:.875rem;line-height:1.4;color:var(--muted)}.project-position{font-variant-numeric:tabular-nums}.next-project{display:flex;align-items:center;gap:22px;font-size:.875rem;min-height:36px;max-width:50%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.next-project:hover{color:var(--ink)}.next-project span{font-size:1.25rem}.media-pager{display:flex;align-items:center;justify-content:center;gap:14px;font-size:.875rem;line-height:1.4}.media-pager .small-button{min-width:42px;min-height:36px;padding:5px 12px}
.timeline-screen{background:#1a2027;color:#f0f3f5;--paper:#1a2027;--ink:#f0f3f5;--line:#46515d;--muted:#bdc6cf;--surface:#242d36}.timeline-board{display:grid;grid-template-columns:repeat(var(--entries),minmax(0,1fr));min-height:0;gap:28px}.timeline-entry{min-width:0;min-height:0;display:flex;flex-direction:column}.timeline-date{border-top:1px solid var(--line);padding-top:13px;font-size:.875rem;color:var(--muted);position:relative}.timeline-date:before{content:"";height:7px;width:7px;background:var(--accent);position:absolute;top:-4px;left:0}.timeline-entry-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:9px 0 14px}.timeline-entry-title h2{font-size:clamp(1.25rem,2vw,2rem);line-height:1.2;font-weight:500;letter-spacing:-.035em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.timeline-entry-title .small-button{padding:4px 0;border:0;font-size:.875rem;min-height:30px}.timeline-description{font-size:1rem;line-height:1.45;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px}.timeline-media{flex:1;min-height:0;display:flex}.timeline-media>.media-card{width:100%}.timeline-entry>.media-pager{margin-top:10px}.timeline-screen .slot-corner{display:none}
.empty-state{font-size:1rem;color:var(--muted);padding:24px 0;line-height:1.6}.media-message{font-size:.875rem;padding:20px;text-align:center;line-height:1.5}.loading,.error-panel{padding:60px var(--gutter);font-size:1rem;line-height:1.6}.error-panel button{margin-top:20px}.skip{position:fixed;top:-90px;left:20px;z-index:100;background:var(--accent);color:#191d23;padding:16px}.skip:focus{top:12px}
/* Editing keeps ordinary page scrolling and exposes every content field. */
.editing body{height:auto;overflow:auto;display:block}.editing main{min-height:0}.editing .header{position:sticky;top:0}.editing #portfolio{height:auto;overflow:visible;scroll-snap-type:none}.editor-bar{position:sticky;top:var(--header-height);z-index:25;background:#ffc43d;color:#191d23;border-bottom:1px solid #ab842a;padding:10px var(--gutter);display:flex;justify-content:space-between;gap:20px;align-items:center}.editor-bar>div:first-child{display:flex;flex-direction:column;gap:3px}.editor-bar strong{font-size:.75rem;letter-spacing:.07em}.editor-bar span{font-size:.875rem}.editor-actions{display:flex;gap:10px;align-items:center}.editor-bar .small-button{color:#191d23;border-color:#927223}.editor-bar .small-button:hover{color:#fff;background:#191d23}.editor-bar #save-status{margin-right:5px}.editor-bar #save-status.error{color:#762411;font-weight:700}
.project-navigation{padding:18px var(--gutter) 0;font-size:.875rem}.project-navigation label{display:flex;align-items:center;gap:12px}.project-navigation select{max-width:70%;padding:9px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}#site-settings{padding:20px var(--gutter) 0;scroll-margin-top:175px}.settings-panel{border:1px solid var(--line);padding:20px;background:color-mix(in srgb,var(--paper) 98%,var(--ink))}.settings-panel summary{cursor:pointer;font:500 1.2rem var(--heading);list-style-position:inside}.settings-panel summary span{font:400 .875rem var(--body);color:var(--muted);margin-left:15px}.settings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:24px}.settings-grid>label{font-size:.875rem;display:flex;flex-direction:column;gap:10px}.settings-grid>div{display:flex;flex-wrap:wrap;gap:8px}.settings-grid select{padding:10px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}.settings-grid input[type=color]{width:100%;height:42px;background:transparent;border:1px solid var(--line);padding:4px}
.editing .collection{display:block;padding:50px var(--gutter) 30px;scroll-margin-top:175px}.collection-heading{display:grid;grid-template-columns:55px 1fr;gap:24px;border-bottom:1px solid var(--line);padding-bottom:30px}.section-number{font-size:.875rem;padding-top:10px}.collection-heading h2{font-size:2.8rem;font-weight:500;letter-spacing:-.045em}.section-description{margin-top:18px}.section-order{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;align-items:center}.section-order label{display:flex;align-items:center;gap:10px;font-size:.875rem}.section-order select{padding:9px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.project{padding:36px 0 48px;border-bottom:1px solid var(--line);scroll-margin-top:175px}.project-heading{display:grid;grid-template-columns:140px 1fr auto;gap:24px;margin-bottom:24px}.project-heading h3{font-size:2rem;line-height:1.15;letter-spacing:-.04em;font-weight:500}.project-year{font-size:1.2rem}.project-season{font-size:.875rem;color:var(--muted);margin-top:8px}.project-description{font-size:1rem;line-height:1.6;margin-top:14px}.project-count{font-size:.875rem;color:var(--muted)}.project-controls{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:8px}.project-settings{display:flex;gap:24px;flex-wrap:wrap;margin:0 0 24px;font-size:.875rem}.project-settings label{display:flex;align-items:center;gap:10px}.project-settings select,.kind-picker select{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:8px}
.editing .media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;align-items:start}.editing .media-card.full{grid-column:1/-1}.editing .media-card.small{width:100%;max-width:340px;grid-column:1/-1}.editing .media-frame{flex:auto;aspect-ratio:16/10;min-height:150px}.editing .media-card.full .media-frame{aspect-ratio:2.5/1}.editing .caption{display:block;overflow:visible;margin-top:10px}.editing .media-label{margin-top:15px}.editing .label-input{flex:1}.editing .block-index{font-size:.75rem;color:var(--muted)}.edit-text{width:100%;background:transparent;color:inherit;border:1px dashed var(--line);border-radius:2px;padding:10px;resize:vertical;min-height:44px;display:block;font:inherit;line-height:1.4}.edit-text:focus{border:1px solid var(--ink);outline:2px solid var(--accent)}.edit-text::placeholder{color:var(--muted);opacity:1}.caption .edit-text{min-height:105px}.label-input .edit-text{font-size:1rem}.block-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px;border:1px solid var(--line);padding:10px;background:var(--surface);font-size:.875rem}.block-controls select{font-size:.875rem;max-width:180px;padding:9px 5px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.drag-handle{cursor:grab;touch-action:none}.kind-picker{margin-top:10px;font-size:.875rem;display:flex;gap:12px;align-items:center}.upload{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:absolute;inset:0;border:0;background:transparent;color:inherit}.upload:hover{box-shadow:inset 0 0 0 2px var(--accent)}.replace-button{position:absolute;right:12px;bottom:12px;background:var(--paper);border:1px solid var(--line);color:var(--ink);min-height:42px;padding:8px 12px;font-size:.875rem;z-index:2}.url-input{display:flex;gap:8px;align-items:center;flex-basis:100%;flex-wrap:wrap;margin-top:6px}.url-input label{flex-basis:100%;font-size:.875rem}.url-input input{min-width:0;flex:1;padding:10px;background:var(--paper);color:var(--ink);border:1px solid var(--line);font-size:1rem}.add-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:25px}.editor-tip{font-size:.875rem;color:var(--muted)}.editing .collection-dark{background:#1a2027;--paper:#1a2027;--ink:#f0f3f5;--line:#58636e;--surface:#242d36;--muted:#bdc6cf;color:var(--ink)}.editing .timeline{margin-left:25px;padding-left:30px;border-left:1px solid var(--line)}.editing .timeline .project{position:relative}.editing .timeline .project:before{content:"";width:7px;height:7px;background:var(--accent);position:absolute;left:-34px;top:44px}
#notice{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:min(650px,90vw);background:#19212a;color:#fff;padding:16px 20px;border:1px solid #536271;z-index:100;box-shadow:0 8px 35px #0003;font-size:.875rem;line-height:1.5}dialog{width:min(1250px,94vw);max-height:92dvh;padding:24px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);overflow:auto;box-shadow:0 20px 100px #0007}dialog::backdrop{background:#080e15c9;backdrop-filter:blur(7px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.dialog-top h2{font-size:1.6rem;font-weight:500;letter-spacing:-.035em;line-height:1.2}.dialog-top .button{flex-shrink:0}.detail-media{height:min(60dvh,720px);background:var(--surface);display:flex;align-items:center;justify-content:center}.detail-media img,.detail-media video,.detail-media iframe{width:100%;height:100%;object-fit:contain;border:0}.detail-placeholder{text-align:center;color:var(--muted)}.detail-placeholder svg{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:1}.detail-placeholder p{margin-top:15px}.detail-caption{font-size:1rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:18px;max-width:1000px}.busy{pointer-events:none;opacity:.6}
:root[data-text-size=large] .caption,:root[data-text-size=large] .project-summary,:root[data-text-size=large] .timeline-description,:root[data-text-size=large] .detail-caption{font-size:1.125rem}
@media(min-width:1500px){.project-screen{padding-top:18px;gap:16px}.showcase-grid{gap:16px 22px}.media-label{margin-top:12px}.caption{-webkit-line-clamp:3}}
@media(max-width:1100px){.header{gap:18px}.header nav{gap:18px}.brand{min-width:140px}.header #owner-name{font-size:1.4rem}.showcase-heading{gap:22px}.project-screen{gap:10px;padding-top:12px}.showcase-grid{gap:12px}.placeholder-core{gap:8px;padding:30px 12px}.slot-corner{top:10px;left:10px;font-size:.75rem}.project-summary{width:34%}.timeline-board{gap:20px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-bar>div:first-child span{display:none}}
/* Portrait tablets, phones, short windows and zoom use an unclipped reading layout. */
@media(max-width:899px),(max-height:619px),(orientation:portrait){
  body{height:auto;min-height:100dvh;overflow:auto;display:block}.header{position:sticky;top:0;flex-wrap:wrap;min-height:80px}.header nav{order:3;flex-basis:100%;overflow:auto;gap:24px}.header .brand{max-width:70%;flex:1}main{height:auto}#portfolio{height:auto;overflow:visible;scroll-snap-type:none}.project-screen{height:auto;min-height:0;display:block;padding-top:32px;padding-bottom:24px;scroll-margin-top:calc(var(--header-height) + 12px)}.showcase-heading{margin-bottom:24px}.showcase-heading h1{font-size:1.9rem}.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:26px 18px}.showcase-grid.count-3{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.showcase-grid.count-5:not(.even-grid)>.is-featured{grid-column:1/-1;grid-row:auto}.media-frame{flex:auto;aspect-ratio:16/11;min-height:150px}.kind-video .media-frame{aspect-ratio:16/9}.showcase-grid.count-1>.media-card{max-height:none}.caption{display:block;overflow:visible}.project-bottom{margin-top:22px;flex-wrap:wrap}.timeline-board{display:grid;min-height:0}.timeline-media .media-frame{aspect-ratio:4/3;min-height:190px}.timeline-entry-title h2{font-size:1.4rem}.timeline-entry .caption{display:-webkit-box}.timeline-description{display:block}.timeline-entry>.media-pager{flex-wrap:wrap;gap:8px}.editing .project,.editing .collection{scroll-margin-top:220px}.editing .header{position:sticky}
}
@media(max-width:599px){:root{--gutter:20px}.header{gap:12px;padding-top:14px;padding-bottom:10px}.header nav{gap:23px}.header nav a{font-size:.875rem}#owner-name{font-size:1.4rem}#owner-affiliation{font-size:.875rem}.header .button{font-size:.875rem;padding:8px 11px;min-height:38px}.showcase-heading{display:block}.showcase-heading h1{font-size:1.75rem}.project-summary{width:100%;margin-top:18px}.project-summary p{display:block}.showcase-grid,.showcase-grid.count-2,.showcase-grid.count-3,.showcase-grid.count-4{grid-template-columns:minmax(0,1fr)}.showcase-grid.count-5:not(.even-grid)>.is-featured{grid-column:auto}.showcase-grid{gap:26px}.media-frame{aspect-ratio:4/3}.media-label .small-button{min-height:36px;padding-left:10px;font-size:.875rem}.timeline-board{grid-template-columns:minmax(0,1fr);gap:32px}.timeline-entry-title h2{font-size:1.6rem}.timeline-screen{padding-top:35px}.timeline-description{display:block}.timeline-entry .caption{display:block}.project-bottom{gap:14px}.next-project{max-width:75%}.media-pager{gap:10px}.editor-bar{align-items:flex-start;gap:10px;flex-direction:column}.editor-bar>div:first-child{display:none}.editor-actions{flex-wrap:wrap;gap:8px;width:100%}.editor-actions #save-status{flex-basis:100%}.editor-actions .small-button{padding:7px 11px}.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-panel{padding:16px}.settings-panel summary span{display:block;margin:8px 0 0}.collection-heading{grid-template-columns:24px 1fr;gap:12px}.collection-heading h2{font-size:2rem}.project-heading{grid-template-columns:1fr auto;gap:16px}.project-meta{grid-column:1/-1;display:flex;gap:15px;align-items:center}.project-meta>div{flex:1}.project-year{font-size:1rem}.project-season{margin:0}.project-heading h3{font-size:1.7rem}.project-controls{grid-column:1/-1}.project-settings{gap:12px}.project-settings label{flex-wrap:wrap}.editing .media-grid{grid-template-columns:1fr;gap:30px}.editing .media-card.full,.editing .media-card.small{grid-column:auto}.editing .media-card.full .media-frame{aspect-ratio:16/10}.editing .timeline{margin-left:4px;padding-left:18px}.editing .timeline .project:before{left:-22px}.editing .project,.editing .collection{scroll-margin-top:255px}.block-controls .small-button{padding:8px 12px}.kind-picker{flex-wrap:wrap}dialog{padding:16px}.dialog-top h2{font-size:1.25rem}.detail-media{height:50dvh}}
.clipboard-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.paste-pad{flex:1 1 180px;min-width:0;min-height:44px;border:1px dashed var(--line);padding:11px 12px;font-size:1rem;line-height:1.4;color:var(--ink);border-radius:2px;cursor:text;overflow-wrap:anywhere}.paste-pad:empty:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none;font-size:.875rem}.paste-pad:focus{outline:2px solid var(--accent);outline-offset:2px}.editing .paste-selected>.media-frame{outline:2px solid var(--accent);outline-offset:2px}.editing .uploading-image>.media-frame{opacity:.65}.clipboard-controls .small-button{min-height:44px}.editing .paste-selected .paste-pad{border-color:var(--accent)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Size the galleries around the uploaded CAD, build photos and portrait clips. */
.video-open{font-size:.75rem;line-height:1.4;color:var(--muted);margin-top:4px;align-self:flex-start;text-decoration:underline;text-underline-offset:3px}
@media(min-width:900px) and (min-height:620px) and (orientation:landscape){
  .showcase-grid.composition-robot{grid-template-columns:1fr 1fr .8fr}
  .showcase-grid.composition-tall{grid-template-columns:1fr 1.1fr 1.1fr .92fr}
  .showcase-grid.count-5.composition-tall>.media-card:nth-child(1){grid-column:1;grid-row:1 / span 2}
  .showcase-grid.count-5.composition-tall>.media-card:nth-child(2){grid-column:2;grid-row:1}
  .showcase-grid.count-5.composition-tall>.media-card:nth-child(3){grid-column:2;grid-row:2}
  .showcase-grid.count-5.composition-tall>.media-card:nth-child(4){grid-column:3;grid-row:1 / span 2}
  .showcase-grid.count-5.composition-tall>.media-card:nth-child(5){grid-column:4;grid-row:1 / span 2}
  .showcase-grid.composition-turrets{grid-template-columns:1fr 1fr 1.35fr}
  .showcase-grid.composition-wide{grid-template-columns:1fr 1.15fr;align-items:center}
  .composition-wide>.media-card{width:100%}
  .composition-wide>.media-card .media-frame{flex:none;aspect-ratio:1.81;min-height:0}
  .composition-wide>.media-card:nth-child(2) .media-frame{aspect-ratio:2.17}
  .project-bottom,.next-project{min-height:28px;font-size:.8125rem}
  .media-label{font-size:.8125rem;line-height:1.4;align-items:flex-start}
  .media-label .small-button{min-height:26px;padding-top:0;padding-bottom:0;flex-shrink:0}
  .showcase-grid .caption{font-size:.875rem}
}
@media(max-width:899px),(max-height:619px),(orientation:portrait){
  .portrait-video .media-frame{aspect-ratio:9/16;max-height:65dvh;min-height:220px}
  .showcase-grid.count-5>.portrait-video.is-featured{grid-column:auto}
  .showcase-grid.composition-wide .media-frame{aspect-ratio:1.81}
  .showcase-grid.composition-wide>:nth-child(2) .media-frame{aspect-ratio:2.17}
}
