@font-face{font-family:Author;src:url('../../fonts/Author-Regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:Author;src:url('../../fonts/Author-Semibold.otf') format('opentype');font-weight:600;font-display:swap}
@font-face{font-family:Author;src:url('../../fonts/Author-Bold.otf') format('opentype');font-weight:700;font-display:swap}
:root{--orange:#FF4600;--ink:#000000;--paper:#fff;--soft:#f3f2ee;--line:3px solid var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Author,Arial,sans-serif;font-size:19px;line-height:1.5}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--ink);outline-offset:6px}::selection{background:var(--orange);color:var(--ink)}
.wrap{width:min(1280px,calc(100% - 96px));margin:auto}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:12px}
header{min-height:90px;display:flex;justify-content:space-between;align-items:center;border-bottom:var(--line)}.logo{font-weight:700;text-decoration:none;font-size:24px;letter-spacing:-1px}.nav{display:flex;gap:30px;font-size:16px}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline;text-underline-offset:5px}
.hero{padding:64px 0 76px;background:var(--orange);border-bottom:var(--line)}.topline{display:flex;justify-content:space-between;font-size:14px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:40px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}h1{font-size:clamp(64px,8.3vw,120px);line-height:.9;letter-spacing:-.055em;margin:0 0 30px}h2{font-size:clamp(34px,4vw,55px);line-height:1.06;letter-spacing:-.035em;margin:0 0 24px}h3{font-size:23px;line-height:1.2;margin:0 0 12px}p{margin:0 0 20px}.lede{font-size:clamp(24px,2.5vw,34px);line-height:1.2;max-width:620px}.hero-summary{max-width:550px}.tag{display:inline-block;background:var(--ink);color:white;padding:7px 13px;font-size:13px;letter-spacing:.03em;margin-bottom:28px}
.placeholder{margin:0;min-height:280px;background:var(--soft);border:var(--line);box-shadow:9px 9px 0 var(--ink);display:flex;align-items:center;justify-content:center;position:relative;padding:40px;text-align:center;overflow:hidden}.placeholder:before,.placeholder:after{content:'';position:absolute;left:-15%;width:130%;height:1px;background:#ccc;transform:rotate(25deg);pointer-events:none}.placeholder:after{transform:rotate(-25deg)}.placeholder-label{position:relative;background:var(--soft);padding:16px 24px;z-index:1;max-width:340px}.placeholder-label span{display:block;text-transform:uppercase;font-size:11px;letter-spacing:.13em;margin-bottom:8px}.placeholder-label strong{display:block;font-size:27px;line-height:1.12}.placeholder-label small{display:block;font-size:14px;margin-top:12px;color:#555}.hero-art{min-height:390px;background:white}.hero-art .placeholder-label{background:white}.caption{font-size:13px;color:#555;margin:20px 0 0}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding:34px 0;border-bottom:var(--line)}.facts span{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;margin-bottom:8px}.facts strong{font-size:17px;line-height:1.35;display:block}
.chapter{padding:88px 0;border-bottom:var(--line);display:grid;grid-template-columns:220px 1fr;gap:52px}.index{font-size:13px;letter-spacing:.04em}.index b{display:block;font-size:58px;line-height:1;margin-bottom:15px}.body{max-width:900px}.body>p{max-width:730px}.body .placeholder{margin-top:38px;aspect-ratio:16/9}.two{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:34px}.two .placeholder{aspect-ratio:4/3;min-height:260px;margin-top:0}.naming{display:grid;grid-template-columns:repeat(3,1fr);margin:36px 0;border:var(--line)}.naming div{padding:25px 20px;border-right:var(--line)}.naming div:last-child{border:0}.naming strong{display:block;font-size:40px;letter-spacing:-.04em}.naming span{font-size:16px}
.statement{background:var(--ink);color:white;padding:64px 0}.statement p{font-size:clamp(34px,5vw,68px);line-height:1.05;letter-spacing:-.03em;font-weight:700;max-width:1030px;margin:0}.statement em{font-style:normal;color:var(--orange)}
.workflow{padding:0;margin:35px 0;list-style:none;border-top:var(--line)}.workflow li{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid #aaa}.workflow .step{font-weight:700;color:#111}.workflow p{font-size:17px;margin:0;max-width:650px}.workflow h3{margin-bottom:6px}
.outcome{background:var(--orange);border-block:var(--line);margin-top:-3px;padding:75px 0}.outcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.outcome p{max-width:580px}.links{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:start}.button{display:flex;justify-content:space-between;align-items:center;gap:12px;background:white;border:var(--line);box-shadow:5px 5px 0 var(--ink);text-decoration:none;padding:18px 20px;font-weight:600;font-size:18px;min-height:68px}.button:hover{background:var(--ink);color:white}.button .arrow{font-size:23px}.button[disabled]{font-family:inherit;cursor:default;background:#ffe0cb;color:#333;text-align:left;box-shadow:none}.pending{grid-column:1/-1;font-size:13px;line-height:1.4;margin:3px 0 0}.footer{display:flex;justify-content:space-between;gap:25px;padding-block:30px;font-size:14px}.footer a{text-decoration:none}.preview-note{background:var(--soft);padding:12px 24px;font-size:12px;text-align:center;border-bottom:1px solid #ccc}
@media(max-width:950px){.wrap{width:calc(100% - 48px)}.hero-grid{gap:32px}.hero-art{min-height:320px}.chapter{grid-template-columns:150px 1fr;gap:28px}.outcome-grid{gap:30px}.facts{grid-template-columns:1fr 1fr}.links{grid-template-columns:1fr}.pending{grid-column:auto}}
@media(max-width:650px){body{font-size:18px}.wrap{width:calc(100% - 36px)}header{min-height:74px}.nav{gap:16px;font-size:14px}.hero{padding:38px 0 48px}.topline{font-size:11px;margin-bottom:30px;gap:15px}.hero-grid,.outcome-grid{grid-template-columns:1fr;gap:36px}h1{font-size:74px}.hero-art{min-height:300px}.facts{gap:22px}.chapter{display:block;padding:52px 0}.index{margin-bottom:28px;display:flex;align-items:center;gap:16px}.index b{font-size:34px;margin:0}.two{grid-template-columns:1fr}.body .placeholder{min-height:250px;aspect-ratio:auto}.placeholder{padding:24px;box-shadow:6px 6px 0 #111}.naming div{padding:16px 10px}.naming strong{font-size:30px}.naming span{font-size:13px}.statement{padding:45px 0}.outcome{padding:50px 0}.footer{flex-wrap:wrap}.preview-note{font-size:11px}.placeholder-label strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Revision: original brand colors and portfolio navigation. */
@font-face{font-family:Syne;src:url('../../fonts/Syne-VariableFont_wght.ttf') format('truetype');font-weight:400 800;font-display:swap}
header.wrap{width:100%;padding:24px 40px;min-height:84px;background:#F2407A;color:white;border:0}
.logo{font-family:Syne,Arial,sans-serif;font-weight:800;font-size:16px;letter-spacing:.12em}
.nav{font-family:Syne,Arial,sans-serif;font-weight:700;gap:28px;font-size:14px}
.nav a{opacity:.7}.nav a:hover,.nav a[aria-current=page]{opacity:1}.nav a[aria-current=page]{text-decoration:underline;text-decoration-color:#F5D052;text-decoration-thickness:3px;text-underline-offset:8px}
h1{font-size:clamp(42px,5.4vw,78px);letter-spacing:-.045em;white-space:nowrap}.reverse-r{display:inline-block;transform:scaleX(-1)}
.chapter,.facts{border-bottom:0}.chapter-band{width:100%}.dark-band{background:#000;color:white}.dark-band .naming{border-color:#FF4600}.dark-band .naming div{border-color:#FF4600}.dark-band .naming strong{color:#FF4600}.dark-band .placeholder{color:#000;box-shadow:9px 9px 0 #FF4600}
.index b{color:#FF4600}.orange-band{background:#FF4600;color:#000}.orange-band .index b{color:#000}.orange-band .workflow{border:0}.orange-band .workflow li{background:white;border:3px solid #000;box-shadow:7px 7px 0 #000;padding:24px;margin-bottom:20px}.orange-band .workflow .step{font-size:27px}.orange-band .workflow p{padding-right:16px}.orange-band h2{max-width:680px}
.identity-chapter h2{display:inline;background:#FF4600;box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 8px}.identity-chapter h2+p{margin-top:32px}
.facts{padding-bottom:38px}.facts>div{border-left:4px solid #FF4600;padding-left:18px}
.placeholder,.button{border-color:#000}.outcome{border-color:#000}.statement{background:#000}.statement em{color:#FF4600}.footer{border:0}
@media(max-width:950px){header.wrap{padding:22px 24px}.nav{gap:17px;font-size:12px}}
@media(max-width:650px){header.wrap{padding:20px 18px;flex-wrap:wrap;gap:20px}.nav{width:100%;justify-content:space-between;gap:8px;font-size:11px}h1{font-size:clamp(37px,10vw,65px)}.orange-band .workflow li{grid-template-columns:28px 1fr;padding:18px 14px;gap:12px}.dark-band .placeholder{box-shadow:6px 6px 0 #FF4600}}


header.wrap{background:#fff;color:#000;border-bottom:3px solid #000}
.nav a[aria-current=page]{text-decoration-color:#000}
.statement-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px}
.statement-grid>p{font-size:clamp(27px,3.5vw,48px)}
.short-logo{min-height:240px;aspect-ratio:2/1;background:#000;border:3px solid #FF4600;box-shadow:none;color:#fff}
.short-logo:before,.short-logo:after{background:#444}.short-logo .placeholder-label{background:#000}
@media(max-width:650px){.statement-grid{grid-template-columns:1fr;gap:30px}.short-logo{min-height:190px}}

/* Approved type hierarchy and heading wrapping. */
.topline strong{font-weight:700}.reverse-r{color:#fff}
h2,.lede{text-wrap:balance}.keep{white-space:nowrap}.accent{color:#FF4600}
.index b{color:#000}.dark-band .index b{color:#FF4600}
.identity-chapter h2{display:block;background:none;padding:0;box-decoration-break:slice;-webkit-box-decoration-break:slice}
.identity-chapter h2+p{margin-top:0}
.nav a[aria-current=page]{text-decoration-color:#F5D052}
.statement-grid{align-items:start}.statement-grid .slogan{font-size:68px;line-height:1.05;margin:0;letter-spacing:-.03em}
.slogan>span,.slogan>em{display:block;white-space:nowrap}
.statement-grid .short-logo{height:var(--slogan-height,140px);min-height:0;aspect-ratio:auto;margin:0;padding:12px;width:100%}
.workflow p+p{margin-top:16px}
@media(max-width:400px){h2{font-size:30px}.keep{white-space:normal}}

/* Hero artwork: original proportions, existing black frame and offset shadow. */
.hero-art.hero-image-frame{margin:0;min-height:0;padding:0;background:#fff;border:var(--line);box-shadow:9px 9px 0 var(--ink)}
.hero-image-frame img{display:block;width:100%;height:auto}
@media(max-width:650px){.hero-art.hero-image-frame{box-shadow:6px 6px 0 var(--ink)}}

/* Numbered project images: fit complete artwork within the existing frames. */
.placeholder.project-image-frame{padding:0}
.project-image-frame:before,.project-image-frame:after{display:none}
.project-image-frame img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}

/* Approved adjustments for individual image frames. */
.placeholder.naming-image-frame{background:#fff}
.body .project-image-frame.image-sized-frame{aspect-ratio:auto;min-height:0}
.image-sized-frame img{position:static;height:auto}
.body .project-image-frame.interface-image-frame{aspect-ratio:16/9;min-height:0}
.interface-image-frame img{object-fit:cover}
.statement-grid .short-logo.logo-image-frame{height:auto;min-height:0;aspect-ratio:auto;padding:0}
.logo-image-frame:before,.logo-image-frame:after{display:none}
.logo-image-frame img{display:block;width:100%;height:auto}

/* Final frame proportions and restrained slogan-strip logo. */
.statement-grid .short-logo.logo-image-frame{width:auto;max-width:100%;height:var(--slogan-height,140px);aspect-ratio:728/302;border:0;justify-self:center;background:transparent}
.logo-image-frame img{width:100%;height:100%;object-fit:contain}
.image-zoom-trigger{display:none}
@media(min-width:651px){.image-zoom-trigger{display:block;position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}}
.project-image-dialog{width:max-content;max-width:96vw;max-height:96dvh;margin:auto;padding:42px 12px 12px;border:3px solid #000;background:#fff;overflow:auto}
.project-image-dialog::backdrop{background:rgba(0,0,0,.8)}
.project-image-dialog>img{display:block;max-width:calc(96vw - 30px);max-height:calc(96dvh - 60px);width:auto;height:auto;object-fit:contain}
.image-dialog-close{position:absolute;top:4px;right:8px;padding:0 6px;border:0;background:transparent;color:#000;font:700 28px/1 Author,Arial,sans-serif;cursor:pointer}

/* Keep the slogan within its grid column at mobile widths. */
.statement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.statement-grid .slogan{min-width:0;width:100%;max-width:100%}
.statement-grid .slogan>em{color:inherit}
.statement-grid .slogan>em>.accent{display:inline;color:var(--orange)}
@media(max-width:650px){.statement-grid{grid-template-columns:minmax(0,1fr)}}
