/* Husky editorial experiment. These styles are loaded on this page only. */
.husky-editorial{--ed-paper:#eeeee9;--ed-ink:#191c1b;--ed-rule:#c8cbc5;background:var(--ed-paper)}
.husky-editorial .ed-shell{width:min(100% - 112px,1560px);margin-inline:auto}
.husky-editorial .site-header{max-width:none;background:var(--ed-paper)}
.husky-editorial .site-header nav a:after{background:var(--accent)}
.husky-editorial .ed-preview{display:flex;justify-content:space-between;gap:16px;padding-block:18px;border-bottom:1px solid var(--ed-rule);font-size:9px;color:var(--muted)}
.ed-preview a{transition:color .2s}.ed-preview a:hover,.ed-preview a:focus-visible{color:var(--accent)}
.ed-opening{padding-top:30px}.ed-kicker{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;font-size:9px;color:var(--muted)}
.ed-kicker a{display:flex;align-items:center;gap:8px;justify-self:start}.ed-kicker a:hover{color:var(--accent)}.ed-kicker .caret{width:12px;height:12px}
.ed-title-grid{display:grid;grid-template-columns:8fr 3fr;gap:5%;align-items:end;padding-block:66px 62px}
.ed-title-grid h1{font:600 clamp(64px,7.8vw,142px)/.94 var(--sans);letter-spacing:-.073em;margin:0;max-width:1050px}
.ed-title-grid h1 em{font-style:normal;color:var(--accent)}
.ed-intro{padding-bottom:4px}.ed-intro>.micro{font-size:9px;color:var(--muted)}
.ed-intro p{font:400 15px/1.85 var(--sans);margin:22px 0 28px;max-width:340px;color:#555d56}
.ed-down{font-size:8px;display:block;padding-block:14px;border-top:1px solid var(--ed-rule);max-width:340px}.ed-down:hover{color:var(--accent)}
.ed-media{margin:0;min-width:0}.ed-image{border:0;padding:0;display:block;width:100%;position:relative;background:transparent;cursor:zoom-in;border-radius:0;overflow:hidden}
.ed-image img{display:block;width:100%;height:auto;border-radius:0;transition:transform .5s ease}
.ed-image:hover img{transform:scale(1.012)}
.ed-enlarge{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:8px;background:#eeeee9;color:#191c1b;padding:10px 12px;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s;font:9px var(--mono);letter-spacing:.04em}
.ed-enlarge .caret{width:14px;height:14px;transform:rotate(-45deg)}.ed-image:is(:hover,:focus-visible) .ed-enlarge{opacity:1;transform:translateY(0)}
.ed-media figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:13px;font-size:8px;color:var(--muted);letter-spacing:.05em}
.ed-hero{width:calc(100% - 32px);margin:0 auto}.ed-hero .ed-image{aspect-ratio:1.95}.ed-hero img{height:100%;object-fit:cover}.ed-hero figcaption{padding:13px 40px 22px}
.ed-index{position:sticky;top:0;z-index:25;background:rgba(238,238,233,.98);border-block:1px solid var(--ed-rule)}
.ed-index>.ed-shell{display:grid;grid-template-columns:repeat(6,1fr)}
.ed-index a{display:flex;align-items:center;gap:13px;font:11px var(--mono);padding:22px 8px;color:var(--muted);transition:color .2s;white-space:nowrap}
.ed-index a .micro{color:var(--accent);font-size:8px}.ed-index a:hover,.ed-index a[aria-current]{color:var(--ed-ink)}.ed-index a[aria-current]{box-shadow:inset 0 -2px var(--accent)}
.ed-section{padding-block:116px;scroll-margin-top:82px}.ed-section-heading{display:grid;grid-template-columns:1fr 10fr;gap:32px;align-items:start;margin-bottom:68px}
.ed-number{font:400 16px/1 var(--mono);color:var(--accent);padding-top:6px}.ed-section-heading .micro{font-size:9px;color:var(--muted)}
.ed-section-heading h2{font:500 clamp(38px,4.4vw,74px)/1.02 var(--sans);letter-spacing:-.055em;margin:20px 0 0}
.ed-section p{font:400 14px/1.85 var(--sans);color:#5a625d;margin:0 0 20px}.ed-section h3{font:500 28px/1.15 var(--sans);letter-spacing:-.04em;margin:0 0 22px}
.ed-challenge-grid{display:grid;grid-template-columns:3fr 6fr;gap:14%;padding-left:calc(100% / 11 + 3px)}
.ed-role{padding-right:18px}.ed-role .micro{font-size:8px;color:var(--muted);display:block}.ed-role h3{font:400 20px var(--mono);letter-spacing:-.05em;margin:12px 0 34px}.ed-role p{font:12px/1.8 var(--mono);color:var(--ink);margin:10px 0 30px;max-width:220px}
.ed-label{display:block;font-size:9px;color:var(--muted);margin-bottom:20px}
.ed-constraints{border-left:1px solid var(--ed-rule);padding-left:24px;margin:34px 0 40px}.ed-constraints>.micro{font-size:8px}.ed-constraints ul{padding:0;list-style:none;margin:14px 0 0}.ed-constraints li{font:12px/2 var(--mono)}
.ed-details{border-top:1px solid var(--ed-rule);margin:0}.ed-details:last-child{border-bottom:1px solid var(--ed-rule)}
.ed-details summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font:11px/1.5 var(--mono);cursor:pointer;transition:color .2s,background .2s}
.ed-details summary::-webkit-details-marker{display:none}.ed-plus{font-size:18px;color:var(--accent);transition:transform .2s}.ed-details[open] .ed-plus{transform:rotate(45deg)}
.ed-details summary:hover{color:var(--accent);background:rgba(232,90,36,.035)}.ed-details summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.ed-detail-body{padding:12px 0 28px}.ed-detail-body p:last-child{margin-bottom:0}.ed-goals{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:20px 30px}.ed-goals li{display:grid;grid-template-columns:22px 1fr;gap:12px;font:14px/1.8 var(--sans);color:#5a625d}.ed-goals .micro{color:var(--accent);font-size:8px;padding-top:5px}
#interaction{border-top:1px solid var(--ed-rule)}.ed-decision{display:grid;grid-template-columns:3fr 7fr;gap:7%;align-items:center}.ed-decision-copy h3{font-size:clamp(32px,3vw,48px);line-height:1.05}.ed-globe{background:#fff;padding:20px}.ed-globe figcaption{color:#777e77}
.ed-supporting{display:grid;grid-template-columns:7fr 3fr;gap:9%;align-items:center;margin-top:100px}.ed-supporting .ed-image{background:#191c1b}.ed-supporting-copy{padding-top:20px}
.ed-gallery{margin-top:60px}.ed-gallery .ed-detail-body>p{max-width:700px;margin-bottom:40px}.ed-gallery .ed-media{width:65%;margin-inline:auto}.ed-gallery img{max-height:none;object-fit:contain}
.ed-system{background:#171b19;color:#eeeee9}.ed-system .ed-section{padding-block:110px 120px}.ed-system .ed-section-heading h2{color:#eeeee9}.ed-system .ed-section-heading .micro{color:#969e96}
.ed-system-intro{display:grid;grid-template-columns:5fr 3fr;gap:20%;margin-left:calc(100% / 11 + 3px);margin-bottom:55px}.ed-system p{color:#b4bcb4}.ed-system-intro>.p{max-width:590px}.ed-system-intro .micro{font-size:8px;color:#8e998e}
.ed-components{width:90%;margin-inline:auto}.ed-system .ed-media figcaption{color:#8e998e}.ed-system .ed-image{background:#242724}
.ed-system-notes{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin:48px 0 0}.ed-system .ed-details{border-color:#394039}.ed-system .ed-details summary{color:#cad0c7}.ed-system .ed-details summary:hover{background:#242b24;color:#fff}
.ed-visual-heading{display:flex;justify-content:space-between;align-items:start;gap:40px;margin:110px 0 38px}.ed-visual-heading .micro{font-size:8px;color:#969e96}.ed-visual-heading h3{width:50%;font-size:clamp(34px,4vw,62px);color:#eeeee9;margin:0}
.ed-screens{width:100%;margin-bottom:30px}.ed-screens .ed-image{border:1px solid #343b34}
.ed-context-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:35px}.ed-context-intro p{font-size:28px;letter-spacing:-.04em;color:var(--ink);margin:0}.ed-context-intro .micro{font-size:8px;color:var(--muted)}
.ed-tangible{width:100%}.ed-context-grid{display:grid;grid-template-columns:4fr 6fr;gap:12%;align-items:center;margin-top:70px}.ed-context-copy{padding-left:25%}.ed-context-copy p+p{padding-top:10px}
.ed-outcomes{border-top:1px solid var(--ed-rule)}.ed-closing{margin-left:calc(100% / 11 + 3px);max-width:1050px}.ed-closing .ed-closing-statement{font:400 clamp(24px,2.9vw,43px)/1.35 var(--sans);letter-spacing:-.035em;color:var(--ink);margin:0 0 74px}
.ed-outcome-columns{display:grid;grid-template-columns:1fr 1fr;gap:9%;margin-left:calc(100% / 11 + 3px)}.ed-outcome-columns .micro{font-size:8px;color:var(--accent);display:block;margin-bottom:20px}.ed-outcome-columns h3{font:400 24px/1.3 var(--mono);letter-spacing:-.055em}.ed-takeaway{margin-top:70px;padding:35px 0 0;border-top:1px solid var(--ed-rule);display:grid;grid-template-columns:1fr 3fr;gap:40px}.ed-takeaway>.micro{font-size:8px;color:var(--muted)}.ed-takeaway p{font:400 20px/1.5 var(--mono);letter-spacing:-.04em;color:var(--ink);max-width:650px}
.ed-next{display:block;border-top:1px solid var(--ed-rule);padding-block:48px 70px}.ed-next>.micro{font-size:9px;color:var(--muted)}.ed-next>div{display:flex;justify-content:space-between;gap:30px;align-items:center}.ed-next h2{font:500 clamp(40px,6.5vw,108px)/1.2 var(--sans);letter-spacing:-.065em;margin:18px 0}.ed-next-arrow{font:400 68px/1 var(--sans);color:var(--accent);transition:transform .25s}.ed-next:hover .ed-next-arrow{transform:translate(6px,-6px)}.ed-next:hover h2{color:var(--accent)}
.husky-editorial .lightbox{padding:24px;background:#151a17;color:#eee;border:0;max-width:96vw;max-height:96vh}.husky-editorial .lightbox img{max-height:85vh;width:auto;max-width:90vw;object-fit:contain;margin:auto}.husky-editorial .lightbox button{color:#eee}
@media(min-width:1800px){.ed-hero{max-width:1900px}.ed-title-grid{padding-top:90px}}
@media(max-width:1100px){.husky-editorial .ed-shell{width:calc(100% - 64px)}.ed-title-grid{grid-template-columns:7fr 3fr;gap:30px}.ed-title-grid h1{font-size:8.6vw}.ed-index a{font-size:10px;gap:8px}.ed-challenge-grid{gap:10%;padding-left:0}.ed-section{padding-block:90px}.ed-section-heading{grid-template-columns:45px 1fr;gap:20px}.ed-decision{grid-template-columns:3fr 6fr;gap:5%}.ed-supporting{gap:6%}.ed-system-intro,.ed-closing,.ed-outcome-columns{margin-left:65px}.ed-context-copy{padding-left:0}.ed-system .ed-section{padding-block:90px}}
@media(max-width:760px){.husky-editorial .ed-shell{width:calc(100% - 40px)}.ed-preview{font-size:7px!important}.ed-opening{padding-top:24px}.ed-kicker{grid-template-columns:1fr auto;font-size:7px}.ed-kicker>span:last-child{display:none}.ed-title-grid{display:block;padding-block:44px 36px}.ed-title-grid h1{font-size:clamp(46px,11.4vw,85px)}.ed-intro{display:grid;grid-template-columns:1fr;gap:0;margin-top:30px;padding-left:18%;max-width:500px}.ed-intro p{font-size:14px;margin:14px 0 18px;max-width:none}.ed-hero{width:calc(100% - 16px)}.ed-hero .ed-image{aspect-ratio:1.3}.ed-hero figcaption{padding-inline:12px;font-size:7px}.ed-index>.ed-shell{width:100%;display:flex;overflow-x:auto;padding-inline:20px;gap:26px;scrollbar-width:thin}.ed-index a{padding-block:18px;font-size:10px;flex-shrink:0}.ed-section{padding-block:65px;scroll-margin-top:65px}.ed-section-heading{margin-bottom:40px;grid-template-columns:24px 1fr;gap:16px}.ed-section-heading h2{font-size:39px;margin-top:14px}.ed-section-heading .micro{font-size:7px}.ed-number{font-size:11px;padding-top:3px}.ed-challenge-grid{display:flex;flex-direction:column;gap:35px}.ed-role{display:grid;grid-template-columns:1fr 2fr;gap:10px 20px;padding:0 0 25px;border-bottom:1px solid var(--ed-rule)}.ed-role h3,.ed-role p{margin:0;max-width:none;font-size:12px}.ed-role .micro{padding-top:4px}.ed-role h3{font-size:16px}.ed-challenge-copy{width:100%}.ed-section p{font-size:14px}.ed-constraints{padding-left:18px}.ed-goals{grid-template-columns:1fr}.ed-decision{display:flex;flex-direction:column;gap:30px;align-items:stretch}.ed-decision-copy h3{font-size:36px}.ed-globe{padding:8px}.ed-supporting{display:flex;flex-direction:column-reverse;gap:22px;margin-top:55px;align-items:stretch}.ed-supporting-copy h3{font-size:30px}.ed-gallery{margin-top:38px}.ed-gallery .ed-media{width:100%}.ed-system .ed-section{padding-block:65px}.ed-system-intro{display:block;margin:0 0 30px}.ed-system-intro>div{margin-top:25px}.ed-components{width:100%}.ed-system-notes{display:block;margin-top:24px}.ed-system-notes>.ed-details:last-child{border-top:0}.ed-visual-heading{display:block;margin:55px 0 25px}.ed-visual-heading h3{width:100%;font-size:38px;margin-top:15px}.ed-context-intro{display:block}.ed-context-intro p{font-size:25px;margin-bottom:12px}.ed-context-grid{display:flex;flex-direction:column;gap:25px;margin-top:35px;align-items:stretch}.ed-closing,.ed-outcome-columns{margin-left:0}.ed-closing .ed-closing-statement{font-size:26px;margin-bottom:40px}.ed-outcome-columns{grid-template-columns:1fr;gap:30px}.ed-outcome-columns h3{font-size:23px}.ed-outcome-columns .micro{margin-bottom:12px}.ed-takeaway{grid-template-columns:1fr;gap:18px;margin-top:35px;padding-top:25px}.ed-takeaway p{font-size:18px}.ed-media figcaption{font-size:7px;gap:12px}.ed-media figcaption span:last-child{text-align:right}.ed-enlarge{padding:7px;right:8px;bottom:8px;font-size:7px}.ed-next{padding-block:34px 45px}.ed-next h2{font-size:40px}.ed-next-arrow{font-size:42px}.husky-editorial .lightbox{padding:14px}.husky-editorial .lightbox img{max-width:87vw}}
@media(prefers-reduced-motion:reduce){.husky-editorial *{scroll-behavior:auto!important}.ed-image img,.ed-enlarge,.ed-plus,.ed-next-arrow{transition:none!important}}
html:has(body.husky-editorial){scroll-padding-top:0}
.ed-system{scroll-margin-top:60px}
/* Shared editorial project system. */
.ed-index>.ed-shell{grid-template-columns:repeat(var(--ed-count,6),1fr)}
.editorial-project .ed-title-grid h1{overflow-wrap:normal;font-size:clamp(52px,7.2vw,132px)}
.editorial-project .ed-decision{margin-bottom:55px}
.ed-source-links{display:flex;flex-wrap:wrap;gap:18px;margin:24px 0}.ed-source-links a{font-size:9px;border-bottom:1px solid currentColor;padding-bottom:6px}.ed-source-links a:hover{color:var(--accent)}
.ed-samples{margin-top:30px}.ed-samples>.micro{display:block;margin-bottom:20px}.ed-samples .ed-media+.ed-media{margin-top:30px}.ed-detail-body>.ed-media{max-width:1050px;margin:30px auto 0}
.ed-system-intro>p{max-width:590px}.editorial-project .ed-system-intro>.micro{align-self:center}
@media(max-width:760px){.editorial-project .ed-title-grid h1{font-size:clamp(45px,10.5vw,80px)}.editorial-project .ed-decision{margin-bottom:35px}}

/* Center the project index; remove the duplicate right-side label. */
.ed-kicker{grid-template-columns:1fr 1fr 1fr}.ed-kicker>span:nth-child(2){justify-self:center;white-space:nowrap}
@media(max-width:760px){.ed-kicker{grid-template-columns:1fr 1fr 1fr}.ed-kicker>span:last-child{display:block}}

@font-face{font-family:'Chakra Petch';src:url('/assets/fonts/ChakraPetch-Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
.husky-editorial .ed-section-heading h2,.husky-editorial .ed-section h3:not(.ed-role h3){font-family:'Chakra Petch',var(--sans);font-weight:300}

.ed-project-company,.ed-project-name{display:block}
.ed-title-grid h1 .ed-project-name{font-size:.6em;line-height:1.1;letter-spacing:-.035em;margin-top:.3em}

/* Direct section titles occupy the removed eyebrow baseline. */
.ed-section-heading.ed-heading-direct h2{margin-top:0}

/* Match the archive back link's gutter and distance below the header. */
.ed-opening{padding-top:24px}
.ed-kicker{position:relative;left:50%;transform:translateX(-50%);width:min(100vw,1800px);padding-inline:var(--pad);min-height:16px}

/* Put the project count opposite Back at the shared right-hand gutter. */
.ed-kicker{grid-template-columns:minmax(0,1fr) auto}
.ed-kicker>span:nth-child(2){justify-self:end}
/* These two source boards include a thin red export frame. Hide only that edge. */
.husky-editorial img:is([src$="/projects-husky-ui-components.jpg"],[src$="/projects-husky-chapter-screens.jpg"]){clip-path:inset(2px)}
