/* Generated from src/layout.html by build-legacy-pages.py. */
@font-face{font-family:Manrope;font-style:normal;font-weight:400 500;font-display:swap;src:url('/media/fonts/manrope-latin.woff2') format('woff2');}
#jeph-complete { width:100%; }
#jeph-complete .hc-tools { display:flex; flex-wrap:wrap; gap:8px; padding:12px 24px; }
#jeph-complete .hc-shell { --hc-paper:light-dark(#f4f4ef,#171a16); --hc-ink:light-dark(#24291f,#eef0e6); --hc-sub:light-dark(#555e4e,#b6c0ac); --hc-soft:light-dark(#e6e9df,#272e24); --hc-line:light-dark(#b7bfac,#56614c); --hc-wine:light-dark(#6a3541,#4c2832); --hc-blue:light-dark(#dce3e6,#293438); --hc-blue-ink:light-dark(#34484e,#d3e1e4); --hc-gap:96px; --hc-gutter:40px; width:100%; max-width:none; margin-inline:auto; container:hc-page / inline-size; color:var(--hc-ink); background:var(--hc-paper); font:400 16px/1.5 'Manrope',sans-serif; }
#jeph-complete[data-device="mobile"] .hc-shell { max-width:none; }
#jeph-complete .hc-tools { display:none; }
#jeph-complete [data-page="home"] > :not(.hc-hero),
#jeph-complete [data-page="case"] { width:100%; max-width:1200px; margin-inline:auto; }
#jeph-complete .hc-shell * { box-sizing:border-box; }
#jeph-complete .hc-shell [hidden] { display:none!important; }
#jeph-complete .hc-shell :where(h1,h2,h3,p,figure,ul,ol,dl,dd) { margin:0; }
#jeph-complete .hc-shell :where(h1,h2,h3) { font-weight:400; line-height:1.06; letter-spacing:-.035em; }
#jeph-complete .hc-shell h1 { font-size:clamp(40px,7.7cqw,80px); }
#jeph-complete .hc-shell h2 { font-size:clamp(30px,4.8cqw,52px); }
#jeph-complete .hc-shell h3 { font-size:clamp(22px,3.1cqw,32px); }
#jeph-complete .hc-shell :where(a) { color:inherit; text-decoration:none; text-underline-offset:5px; }
#jeph-complete .hc-shell :where(button,input,select,textarea) { font:inherit; }
#jeph-complete .hc-shell :where(button) { border:0; padding:0; background:none; color:inherit; text-align:left; }
#jeph-complete .hc-shell :where(button,a,summary) { -webkit-tap-highlight-color:transparent; }
#jeph-complete .hc-shell ::selection { color:var(--hc-paper); background:var(--hc-ink); }
#jeph-complete .hc-shell :where(svg) { width:18px; height:18px; flex:none; }
#jeph-complete .hc-shell :where(img) { width:100%; height:100%; display:block; object-fit:cover; }
#jeph-complete .hc-pad { padding-inline:var(--hc-gutter); }
#jeph-complete .hc-section { margin-top:var(--hc-gap); }
#jeph-complete .hc-small { font-size:12px; line-height:1.5; color:var(--hc-sub); }
#jeph-complete .hc-note { font-size:12px; line-height:1.45; color:var(--hc-sub); }
#jeph-complete[data-notes="false"] .hc-note { display:none; }
#jeph-complete .hc-text-link { display:inline-flex; gap:12px; align-items:center; min-height:44px; font-size:14px; }
#jeph-complete .hc-text-link:hover { text-decoration:underline; }
#jeph-complete .hc-header { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:88px; position:relative; z-index:5; }
#jeph-complete .hc-brand { font-size:18px; line-height:1.05; font-weight:500; letter-spacing:-.02em; }
#jeph-complete .hc-brand span { display:block; }
#jeph-complete .hc-nav { display:flex; align-items:center; gap:24px; font-size:13px; }
#jeph-complete .hc-nav a { padding-block:12px; }
#jeph-complete .hc-nav a:hover { text-decoration:underline; }
#jeph-complete .hc-mobile-menu { display:none; }
#jeph-complete .hc-action { display:inline-flex; justify-content:center; align-items:center; gap:14px; min-height:48px; padding:12px 20px; color:var(--hc-paper); background:var(--hc-ink); font-size:14px; }
#jeph-complete .hc-action:hover { opacity:.86; }
/* A single cinematic opening. The still is the temporary reel poster. */
#jeph-complete .hc-hero { min-height:660px; position:relative; isolation:isolate; color:#fffef8; background:#0b0b08; }
#jeph-complete .hc-hero-image { position:absolute; inset:0; z-index:-3; }
#jeph-complete .hc-hero-image img { object-position:48% center; }
#jeph-complete .hc-hero-image video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% center; }
#jeph-complete .hc-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px; }
#jeph-complete .hc-motion-button { opacity:.9; }
#jeph-complete .hc-reel-player { width:100%; max-height:76vh; display:block; margin-top:24px; background:#111; }
#jeph-complete .hc-photo { position:relative; }
#jeph-complete .hc-photo video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
#jeph-complete video { display:block; }
#jeph-complete .hc-waze-showcase { display:grid; grid-template-columns:1.1fr 1fr; background:light-dark(#e9edef,#252e31); align-items:center; min-height:420px; }
#jeph-complete .hc-waze-showcase > video { width:100%; height:420px; object-fit:contain; background:#fff; }
#jeph-complete .hc-waze-renders { display:grid; gap:0; padding:24px; }
#jeph-complete .hc-waze-renders img { height:180px; object-fit:contain; }
#jeph-complete .hc-spec-media { position:relative; aspect-ratio:.9; overflow:hidden; background:var(--hc-soft); }
#jeph-complete .hc-spec-media video,#jeph-complete .hc-spec-media img { width:100%; height:100%; object-fit:cover; }
#jeph-complete .hc-spec-media .hc-reference-label { position:absolute; bottom:0; left:0; right:0; padding:14px 18px; background:rgba(0,0,0,.78); color:#fff; font-size:12px; line-height:1.45; }
#jeph-complete .hc-spec:nth-child(2) .hc-spec-media img { object-fit:contain; background:#222; }
#jeph-complete .hc-portrait { position:relative; padding:0!important; }
#jeph-complete .hc-portrait img { object-fit:cover; object-position:center 34%; position:absolute; inset:0; }
#jeph-complete .hc-case-film { display:block!important; min-height:0!important; background:none!important; padding:0!important; }
#jeph-complete .hc-case-film-head { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin-bottom:24px; }
#jeph-complete .hc-case-film-head .hc-placeholder-label { max-width:36ch; text-align:right; }
#jeph-complete .hc-film-player { display:flex; justify-content:center; background:var(--hc-soft); }
#jeph-complete .hc-film-player video { width:100%; max-height:740px; object-fit:contain; }
#jeph-complete .hc-film-player[data-orientation="portrait"] video { width:min(100%,416px); aspect-ratio:9/16; }
#jeph-complete .hc-film-player[data-orientation="landscape"] video { aspect-ratio:16/9; }
#jeph-complete .hc-film-player img { width:100%; max-height:600px; object-fit:contain; }
#jeph-complete [data-case-hero][data-fit="contain"] { background:var(--hc-soft); }
#jeph-complete [data-case-hero][data-fit="contain"] img { object-fit:contain; }
#jeph-complete .hc-case-related[data-fit="contain"] img { object-fit:contain; background:var(--hc-soft); }
@container hc-page (max-width:600px) {
  #jeph-complete .hc-waze-showcase { grid-template-columns:1fr; }
  #jeph-complete .hc-waze-showcase > video { height:420px; }
  #jeph-complete .hc-waze-renders { grid-template-columns:1fr 1fr; padding:8px; }
  #jeph-complete .hc-waze-renders img { height:140px; }
  #jeph-complete .hc-case-film-head { display:block; }
  #jeph-complete .hc-case-film-head .hc-placeholder-label { text-align:left; margin-top:12px; }
}
#jeph-complete .hc-hero-veil { position:absolute; inset:0; z-index:-2; background:linear-gradient(180deg,rgba(0,0,0,.56),transparent 30%,rgba(0,0,0,.2) 50%,rgba(0,0,0,.88)); }
#jeph-complete .hc-hero-copy { padding-top:224px; }
#jeph-complete .hc-hero-copy h1 { max-width:13ch; }
#jeph-complete .hc-hero-bottom { display:flex; align-items:end; justify-content:space-between; gap:32px; padding-top:24px; padding-bottom:32px; }
#jeph-complete .hc-hero-bottom p { font-size:13px; }
#jeph-complete .hc-hero-bottom .hc-note { color:#e0e1d9; max-width:34ch; text-align:right; }
#jeph-complete .hc-reel-detail { background:var(--hc-soft); padding-block:28px; }
#jeph-complete .hc-reel-detail .hc-reel-row { display:flex; justify-content:space-between; align-items:center; gap:32px; }
#jeph-complete .hc-reel-detail h2 { font-size:30px; }
#jeph-complete .hc-reel-detail p { font-size:14px; max-width:48ch; padding-top:12px; }
#jeph-complete .hc-intro { display:grid; grid-template-columns:1.3fr 1fr; gap:64px; padding-block:56px 0; align-items:start; }
#jeph-complete .hc-intro p { max-width:31ch; }
#jeph-complete .hc-intro h2 { max-width:18ch; }
/* Quiet social proof, continuous at full width and controllable on touch. */
#jeph-complete .hc-clients { padding-top:48px; }
#jeph-complete .hc-clients-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:20px; }
#jeph-complete .hc-clients h2 { font-size:13px; letter-spacing:0; line-height:1.5; color:var(--hc-sub); }
#jeph-complete .hc-logo-controls { display:flex; align-items:center; gap:4px; }
#jeph-complete .hc-logo-controls button { min-width:44px; min-height:44px; display:grid; place-items:center; }
#jeph-complete .hc-logo-window { overflow:hidden; width:100%; }
#jeph-complete .hc-logo-track { width:max-content; display:flex; will-change:transform; }
#jeph-complete .hc-logo-group { display:flex; list-style:none; padding:0; align-items:center; }
#jeph-complete .hc-logo-group li { width:240px; height:64px; padding:12px 45px; flex:none; display:grid; place-items:center; }
#jeph-complete .hc-logo-group img { object-fit:contain; max-height:36px; width:120px; filter:brightness(0); opacity:.8; }
@media(prefers-color-scheme:dark) { #jeph-complete .hc-logo-group img { filter:brightness(0) invert(1); } }
/* Images sit on the page; scale and whitespace create the editorial rhythm. */
#jeph-complete .hc-work-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; padding-bottom:32px; }
#jeph-complete .hc-work-heading h2 { font-size:28px; }
#jeph-complete .hc-gallery { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:64px 32px; }
#jeph-complete .hc-project { min-width:0; }
#jeph-complete .hc-project-open { display:block; width:100%; }
#jeph-complete .hc-photo { aspect-ratio:1.25; overflow:hidden; }
#jeph-complete .hc-caption { display:flex; align-items:start; justify-content:space-between; gap:20px; padding-top:12px; font-size:16px; line-height:1.4; }
#jeph-complete .hc-caption small { display:block; font-size:12px; margin-top:4px; color:var(--hc-sub); }
#jeph-complete .hc-caption svg { margin-top:3px; }
#jeph-complete .hc-project-open:hover .hc-caption > span { text-decoration:underline; text-underline-offset:5px; }
#jeph-complete .hc-index-list { margin-top:32px; }
#jeph-complete .hc-index-list summary { min-height:44px; font-size:14px; }
#jeph-complete .hc-index-list nav { display:flex; flex-wrap:wrap; gap:12px 28px; padding-block:20px; font-size:14px; }
#jeph-complete .hc-index-list a { min-height:44px; display:inline-flex; align-items:center; text-decoration:underline; }
/* Commerce preview: the object is in the page, the buying UI beside it. */
#jeph-complete .hc-commerce { background:var(--hc-soft); padding-block:48px; }
#jeph-complete .hc-commerce-title { display:grid; grid-template-columns:1.2fr 1fr; gap:56px; align-items:start; }
#jeph-complete .hc-commerce-title h2 { max-width:14ch; }
#jeph-complete .hc-commerce-title p { max-width:33ch; font-size:15px; padding-top:8px; }
#jeph-complete .hc-shop { display:grid; grid-template-columns:1.2fr 1fr; gap:56px; align-items:center; padding-top:48px; }
#jeph-complete .hc-object-area { min-height:400px; display:flex; flex-direction:column; align-items:center; justify-content:center; }
#jeph-complete .hc-lamp-stage { width:100%; height:460px; position:relative; display:grid; place-items:center; }
#jeph-complete .hc-lamp-stage .hc-3d-fallback { position:absolute; z-index:2; background:#f4f4ef; padding:12px 20px; }
#jeph-complete .hc-lamp-stage canvas { width:100%; height:100%; display:block; touch-action:none; cursor:grab; }
#jeph-complete .hc-lamp-stage canvas:active { cursor:grabbing; }
#jeph-complete .hc-3d-fallback { padding:24px; max-width:30ch; text-align:center; color:var(--hc-sub); font-size:14px; }
#jeph-complete .hc-3d-credit { font-size:11px; line-height:1.5; color:var(--hc-sub); max-width:44ch; text-align:center; margin-top:10px; }
#jeph-complete .hc-3d-credit a { text-decoration:underline; text-underline-offset:3px; }
#jeph-complete .hc-object-area .hc-placeholder-label { text-align:center; max-width:36ch; }
#jeph-complete .hc-angle { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; padding-top:16px; }
#jeph-complete .hc-angle button { font-size:13px; min-width:44px; min-height:44px; border-bottom:1px solid transparent; }
#jeph-complete .hc-angle button[aria-pressed="true"] { border-bottom-color:currentColor; }
#jeph-complete .hc-shop-copy h3 { font-size:34px; }
#jeph-complete .hc-shop-copy > p { margin-top:16px; font-size:14px; max-width:32ch; }
#jeph-complete .hc-shop-copy .hc-price { color:var(--hc-sub); margin-top:8px; font-size:14px; }
#jeph-complete .hc-finishes { border:0; padding:0; margin:28px 0 24px; }
#jeph-complete .hc-finishes legend { padding:0; font-size:13px; margin-bottom:8px; }
#jeph-complete .hc-finishes div { display:flex; flex-wrap:wrap; gap:20px; }
#jeph-complete .hc-finish { display:flex; align-items:center; gap:10px; font-size:14px; min-height:44px; }
#jeph-complete .hc-finish::before { content:''; width:20px; height:20px; border-radius:50%; border:1px solid var(--hc-ink); background:#c6a463; }
#jeph-complete .hc-finish[data-finish="white"]::before { background:#ebebe8; }
#jeph-complete .hc-finish[aria-pressed="true"] { text-decoration:underline; text-underline-offset:5px; }
#jeph-complete .hc-cart-result { min-height:48px; font-size:13px; padding-top:16px; max-width:34ch; }
/* Missing media is explicit and composed at the scale of future content. */
#jeph-complete .hc-experiments-head { display:flex; justify-content:space-between; align-items:start; gap:40px; padding-bottom:32px; }
#jeph-complete .hc-experiments-head p { max-width:33ch; font-size:15px; }
#jeph-complete .hc-asset-placeholder { min-height:320px; padding:32px; background:var(--hc-blue); color:var(--hc-blue-ink); display:flex; flex-direction:column; justify-content:space-between; }
#jeph-complete .hc-asset-placeholder strong { font-size:clamp(40px,8cqw,84px); font-weight:400; letter-spacing:-.04em; line-height:1; }
#jeph-complete .hc-placeholder-label { font-size:12px; line-height:1.5; max-width:48ch; }
#jeph-complete .hc-asset-lineup { display:flex; flex-wrap:wrap; gap:24px; font-size:14px; opacity:.9; }
#jeph-complete .hc-specs:has(> :only-child) { max-width:760px; }
#jeph-complete .hc-specs:has(> :only-child) > * { grid-column:1/-1; }
#jeph-complete .hc-specs { display:grid; grid-template-columns:1.15fr .85fr; gap:64px; padding-top:56px; }
#jeph-complete .hc-spec:nth-child(2) { padding-top:56px; }
#jeph-complete .hc-spec-plate { min-height:240px; padding:28px; display:flex; flex-direction:column; justify-content:space-between; background:var(--hc-wine); color:#fff4f0; }
#jeph-complete .hc-spec-plate h3 { max-width:12ch; font-size:clamp(26px,3.7cqw,40px); }
#jeph-complete .hc-spec:nth-child(2) .hc-spec-plate { background:var(--hc-soft); color:var(--hc-ink); min-height:200px; }
#jeph-complete .hc-spec .hc-caption { font-size:14px; }
#jeph-complete .hc-services { display:grid; grid-template-columns:1fr 1.4fr; gap:80px; }
#jeph-complete .hc-services > div > p { margin-top:24px; max-width:28ch; font-size:15px; }
#jeph-complete .hc-service { border-top:1px solid var(--hc-line); }
#jeph-complete .hc-service:last-child { border-bottom:1px solid var(--hc-line); }
#jeph-complete .hc-service summary { min-height:76px; padding-block:20px; font-size:21px; letter-spacing:-.02em; }
#jeph-complete .hc-service p { padding-bottom:24px; max-width:44ch; font-size:14px; }
#jeph-complete .hc-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin-top:48px; }
#jeph-complete .hc-process h3 { font-size:18px; letter-spacing:-.02em; }
#jeph-complete .hc-process p { margin-top:10px; font-size:13px; color:var(--hc-sub); }
#jeph-complete .hc-studio { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; align-items:center; }
#jeph-complete .hc-portrait { aspect-ratio:.95; background:var(--hc-soft); display:flex; flex-direction:column; justify-content:end; padding:28px; }
#jeph-complete .hc-portrait p { font-size:28px; line-height:1.15; max-width:12ch; letter-spacing:-.02em; }
#jeph-complete .hc-portrait .hc-placeholder-label { margin-top:16px; }
#jeph-complete .hc-studio-copy p { max-width:39ch; margin-top:24px; }
#jeph-complete .hc-studio-copy .hc-small { margin-top:20px; }
#jeph-complete .hc-contact { display:grid; grid-template-columns:1fr 1.15fr; gap:80px; padding-top:56px; padding-bottom:56px; border-top:1px solid var(--hc-line); }
#jeph-complete .hc-contact h2 { max-width:11ch; }
#jeph-complete .hc-contact-copy p { font-size:15px; max-width:28ch; margin-top:24px; }
#jeph-complete .hc-contact-copy .hc-text-link { margin-top:24px; overflow-wrap:anywhere; }
#jeph-complete .hc-form { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
#jeph-complete .hc-field { display:flex; flex-direction:column; gap:8px; font-size:13px; }
#jeph-complete .hc-field-wide { grid-column:1 / -1; }
#jeph-complete .hc-field :where(input,textarea) { border:0; border-bottom:1px solid var(--hc-line); border-radius:0; padding:12px 0; min-height:44px; background:transparent; color:var(--hc-ink); font-size:16px; width:100%; caret-color:var(--hc-ink); }
#jeph-complete .hc-field textarea { resize:vertical; min-height:112px; }
#jeph-complete .hc-field :where(input,textarea)::placeholder { color:var(--hc-sub); opacity:1; }
#jeph-complete .hc-form-bottom { grid-column:1 / -1; display:flex; flex-direction:column; align-items:start; gap:12px; }
#jeph-complete .hc-form-status { font-size:14px; max-width:40ch; }
#jeph-complete .hc-footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:28px; padding-block:32px; font-size:12px; background:var(--hc-soft); }
#jeph-complete .hc-footer nav { display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; }
#jeph-complete .hc-footer a:hover { text-decoration:underline; }
#jeph-complete .hc-footer .hc-brand { font-size:16px; }
/* Case template is part of this same navigable preview. */
#jeph-complete .hc-case-top { padding-top:24px; padding-bottom:36px; }
#jeph-complete .hc-case-name { display:flex; align-items:end; justify-content:space-between; gap:32px; padding-top:20px; }
#jeph-complete .hc-case-name h1 { max-width:16ch; }
#jeph-complete .hc-case-name p { font-size:14px; max-width:20ch; }
#jeph-complete .hc-case-hero { aspect-ratio:1.8; background:var(--hc-soft); }
#jeph-complete .hc-case-hero img { object-fit:contain; }
#jeph-complete .hc-case-placeholder { min-height:400px; padding:40px; display:flex; justify-content:space-between; flex-direction:column; background:var(--hc-blue); color:var(--hc-blue-ink); }
#jeph-complete .hc-case-placeholder h2 { max-width:18ch; }
#jeph-complete .hc-case-context { display:grid; grid-template-columns:1fr 1.4fr; gap:72px; }
#jeph-complete .hc-case-context h2 { font-size:34px; }
#jeph-complete .hc-case-meta { display:grid; grid-template-columns:1fr 1fr; gap:24px 32px; }
#jeph-complete .hc-case-meta dt { font-size:12px; color:var(--hc-sub); margin-bottom:8px; }
#jeph-complete .hc-case-meta dd { font-size:14px; }
#jeph-complete .hc-case-copy { margin-top:36px; font-size:16px; max-width:48ch; }
#jeph-complete .hc-case-film { background:var(--hc-soft); min-height:320px; display:flex; flex-direction:column; justify-content:space-between; padding:32px; }
#jeph-complete .hc-case-film h3 { max-width:18ch; }
#jeph-complete .hc-case-related { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:48px; }
#jeph-complete .hc-case-related figure:last-child { padding-top:80px; }
#jeph-complete .hc-case-related img { aspect-ratio:1; object-fit:contain; }
#jeph-complete .hc-case-related figcaption { font-size:13px; padding-top:12px; }
#jeph-complete .hc-case-close { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:28px; padding-top:56px; padding-bottom:56px; border-top:1px solid var(--hc-line); }
#jeph-complete .hc-case-close h2 { max-width:16ch; }
@container hc-page (max-width:650px) {
  #jeph-complete .hc-shell { --hc-gutter:22px; }
  #jeph-complete .hc-pad { padding-inline:22px; }
  #jeph-complete .hc-section { margin-top:64px; }
  #jeph-complete .hc-header { min-height:76px; gap:16px; }
  #jeph-complete .hc-brand { font-size:16px; }
  #jeph-complete .hc-nav { display:none; }
  #jeph-complete .hc-mobile-menu { display:block; font-size:14px; position:relative; }
  #jeph-complete .hc-mobile-menu summary { min-height:44px; display:flex; align-items:center; gap:12px; list-style:none; }
  #jeph-complete .hc-mobile-menu summary::-webkit-details-marker { display:none; }
  #jeph-complete .hc-menu-panel { position:absolute; top:48px; right:0; width:220px; padding:16px 24px; background:var(--hc-paper); color:var(--hc-ink); display:flex; flex-direction:column; z-index:20; box-shadow:0 8px 24px rgba(0,0,0,.12); }
  #jeph-complete .hc-menu-panel a { display:block; padding-block:12px; }
  #jeph-complete .hc-hero { min-height:640px; }
  #jeph-complete .hc-hero-image img { object-position:57% center; }
  #jeph-complete .hc-hero-copy { padding-top:248px; }
  #jeph-complete .hc-hero-copy h1 { font-size:clamp(38px,11.5cqw,54px); max-width:13ch; }
  #jeph-complete .hc-hero-bottom { gap:16px; flex-direction:column; align-items:start; padding-top:20px; padding-bottom:28px; }
  #jeph-complete .hc-hero-bottom .hc-note { text-align:left; font-size:11px; }
  #jeph-complete .hc-reel-detail .hc-reel-row { flex-direction:column; align-items:start; gap:20px; }
  #jeph-complete .hc-intro { display:block; padding-top:36px; }
  #jeph-complete .hc-intro h2 { font-size:32px; max-width:17ch; }
  #jeph-complete .hc-intro p { margin-top:24px; font-size:15px; }
  #jeph-complete .hc-work-heading { align-items:start; gap:16px; padding-bottom:24px; }
  #jeph-complete .hc-work-heading h2 { font-size:25px; }
  #jeph-complete .hc-gallery { grid-template-columns:repeat(6,minmax(0,1fr)); gap:40px 16px; }
  #jeph-complete .hc-caption { font-size:14px; }
  #jeph-complete .hc-commerce { padding-block:32px; }
  #jeph-complete .hc-commerce-title { display:block; }
  #jeph-complete .hc-commerce-title h2 { font-size:34px; }
  #jeph-complete .hc-commerce-title p { margin-top:20px; padding-top:0; }
  #jeph-complete .hc-shop { display:block; padding-top:24px; }
  #jeph-complete .hc-object-area { min-height:360px; }
  #jeph-complete .hc-lamp-stage { height:380px; }
  #jeph-complete .hc-clients { padding-top:32px; }
  #jeph-complete .hc-clients-head { gap:8px; padding-bottom:8px; }
  #jeph-complete .hc-logo-group li { width:144px; padding-inline:22px; }
  #jeph-complete .hc-logo-group img { width:100px; max-height:30px; }
  #jeph-complete .hc-shop-copy { padding-top:28px; }
  #jeph-complete .hc-shop-copy h3 { font-size:30px; }
  #jeph-complete .hc-experiments-head { display:block; }
  #jeph-complete .hc-experiments-head p { margin-top:20px; }
  #jeph-complete .hc-asset-placeholder { min-height:280px; padding:24px; }
  #jeph-complete .hc-asset-placeholder strong { font-size:56px; }
  #jeph-complete .hc-asset-lineup { gap:12px 20px; font-size:12px; }
  #jeph-complete .hc-specs:has(> :only-child) { max-width:760px; }
#jeph-complete .hc-specs:has(> :only-child) > * { grid-column:1/-1; }
#jeph-complete .hc-specs { grid-template-columns:1fr; padding-top:40px; gap:32px; }
  #jeph-complete .hc-spec:nth-child(2) { padding-top:0; padding-left:32px; }
  #jeph-complete .hc-spec-plate { min-height:220px; padding:24px; }
  #jeph-complete .hc-spec-plate h3 { font-size:30px; }
  #jeph-complete .hc-services { display:block; }
  #jeph-complete .hc-services > div > p { margin-top:20px; max-width:34ch; }
  #jeph-complete .hc-service-list { margin-top:28px; }
  #jeph-complete .hc-service summary { font-size:19px; min-height:68px; }
  #jeph-complete .hc-process { grid-template-columns:1fr 1fr; gap:28px 24px; margin-top:32px; }
  #jeph-complete .hc-studio { display:flex; flex-direction:column; gap:28px; align-items:stretch; }
  #jeph-complete .hc-portrait { aspect-ratio:1.3; }
  #jeph-complete .hc-studio-copy p { font-size:15px; }
  #jeph-complete .hc-contact { display:block; padding-block:36px; }
  #jeph-complete .hc-contact h2 { max-width:14ch; }
  #jeph-complete .hc-contact-copy p { margin-top:20px; max-width:33ch; }
  #jeph-complete .hc-contact-copy .hc-text-link { margin-top:12px; font-size:14px; }
  #jeph-complete .hc-form { grid-template-columns:1fr; margin-top:32px; }
  #jeph-complete .hc-footer { flex-direction:column; align-items:start; padding-block:28px; }
  #jeph-complete .hc-footer nav { gap:8px 20px; }
  #jeph-complete .hc-footer nav a { min-height:44px; display:inline-flex; align-items:center; }
  #jeph-complete .hc-case-name { display:block; }
  #jeph-complete .hc-case-name h1 { font-size:40px; }
  #jeph-complete .hc-case-name p { max-width:none; margin-top:20px; }
  #jeph-complete .hc-case-hero { aspect-ratio:1; }
  #jeph-complete .hc-case-placeholder { min-height:300px; padding:24px; }
  #jeph-complete .hc-case-context { display:block; }
  #jeph-complete .hc-case-meta { margin-top:28px; gap:24px; }
  #jeph-complete .hc-case-copy { font-size:15px; }
  #jeph-complete .hc-case-film { min-height:240px; padding:24px; }
  #jeph-complete .hc-case-related { gap:24px; }
  #jeph-complete .hc-case-related figure:last-child { padding-top:56px; }
  #jeph-complete .hc-case-close { padding-block:36px; }
}
@container hc-page (max-width:340px) {
  #jeph-complete .hc-pad { padding-inline:18px; }
  #jeph-complete .hc-hero-copy h1 { font-size:38px; }
  #jeph-complete .hc-case-meta { grid-template-columns:1fr; }
  #jeph-complete .hc-work-heading { display:block; }
}
@media (prefers-reduced-motion:reduce) { #jeph-complete .hc-shell * { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* Clean editorial direction: white space, large work, short captions. */
#jeph-complete .hc-shell { --hc-paper:#fff; --hc-ink:#181818; --hc-sub:#626262; --hc-soft:#f5f5f3; --hc-line:#dededb; --hc-gutter:clamp(20px,3.3vw,64px); color-scheme:light; }
#jeph-complete [data-page="home"] > :not(.hc-hero) { max-width:1680px; }
#jeph-complete .hc-intro { display:flex; justify-content:space-between; gap:32px; padding-block:64px 0; align-items:baseline; }
#jeph-complete .hc-intro p { font-size:23px; line-height:1.4; max-width:38ch; }
#jeph-complete .hc-intro > span { font-size:13px; color:var(--hc-sub); }
#jeph-complete .hc-clients { padding-top:32px; }
#jeph-complete .hc-clients-head { padding-bottom:4px; }
#jeph-complete .hc-logo-group img { filter:brightness(0); }
#jeph-complete .hc-work-heading h2,#jeph-complete .hc-commerce-title h2,#jeph-complete .hc-experiments-head h2 { font-size:20px; letter-spacing:-.02em; }
#jeph-complete .hc-gallery { gap:88px 24px; }
#jeph-complete .hc-caption { padding-top:14px; font-size:15px; }
#jeph-complete .hc-caption small { color:var(--hc-sub); font-size:12px; margin-top:4px; }
#jeph-complete .hc-commerce { background:transparent; padding-block:0; }
#jeph-complete .hc-commerce-title { display:block; }
#jeph-complete .hc-shop { grid-template-columns:1.65fr 1fr; gap:64px; padding-top:28px; }
#jeph-complete .hc-lamp-stage { height:520px; background:#1c1c1c; }
#jeph-complete .hc-lamp-stage .hc-3d-fallback { background:#1c1c1c; color:#fff; }
#jeph-complete .hc-shop-copy h3 { font-size:32px; }
#jeph-complete .hc-shop-copy > p { margin-top:16px; }
#jeph-complete .hc-shop-copy .hc-action { margin-top:28px; }
#jeph-complete .hc-shop-copy .hc-text-link { margin-top:12px; font-size:12px; }
#jeph-complete .hc-angle { gap:8px 20px; padding-top:4px; }
#jeph-complete .hc-angle button { font-size:12px; }
#jeph-complete .hc-3d-credit { max-width:none; margin-top:4px; font-size:10px; }
#jeph-complete .hc-object-area > [data-3d-hint] { margin-top:12px; font-size:11px; }
#jeph-complete .hc-experiments-head { display:flex; justify-content:space-between; align-items:baseline; gap:20px; margin-bottom:0; }
#jeph-complete .hc-experiments-head > span { font-size:13px; color:var(--hc-sub); }
#jeph-complete .hc-waze-stage { width:100%; height:440px; position:relative; }
#jeph-complete .hc-waze-stage canvas { display:block; width:100%; height:100%; touch-action:none; cursor:grab; }
#jeph-complete .hc-waze-caption { display:flex; justify-content:space-between; flex-wrap:wrap; align-items:center; gap:12px; }
#jeph-complete .hc-waze-caption > div { display:flex; gap:20px; align-items:center; }
#jeph-complete .hc-waze-caption button { display:inline-flex; gap:8px; align-items:center; min-height:44px; font-size:12px; }
#jeph-complete .hc-specs { padding-top:88px; }
#jeph-complete .hc-specs:has(> :only-child) { max-width:900px; margin-inline:auto; }
#jeph-complete .hc-studio { padding-top:60px; border-top:1px solid var(--hc-line); align-items:start; }
#jeph-complete .hc-studio-copy p { margin:0; font-size:20px; line-height:1.5; max-width:42ch; }
#jeph-complete .hc-capabilities { display:flex; flex-wrap:wrap; gap:12px 24px; color:var(--hc-sub); font-size:13px; margin-top:32px; }
#jeph-complete .hc-contact { align-items:start; grid-template-columns:1.4fr 1fr; }
#jeph-complete .hc-brief { padding-top:8px; }
#jeph-complete .hc-brief > summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; min-height:44px; font-size:18px; list-style:none; border-bottom:1px solid var(--hc-line); padding-bottom:16px; }
#jeph-complete .hc-brief > summary::-webkit-details-marker { display:none; }
#jeph-complete .hc-brief .hc-form { padding-top:28px; }
#jeph-complete .hc-footer { background:transparent; border-top:1px solid var(--hc-line); }
#jeph-complete .hc-shell :where(button,a,summary) { transition:color 180ms ease,background-color 180ms ease; }
#jeph-complete .hc-project-open .hc-photo :is(img,video) { transition:transform 650ms cubic-bezier(.16,1,.3,1); }
@media(hover:hover) and (prefers-reduced-motion:no-preference) { #jeph-complete .hc-project-open:hover .hc-photo :is(img,video) { transform:scale(1.025); } }
@container hc-page (max-width:650px) {
 #jeph-complete .hc-intro { display:block; padding-top:36px; }
 #jeph-complete .hc-intro p { font-size:19px; }
 #jeph-complete .hc-intro > span { display:block; margin-top:14px; }
 #jeph-complete .hc-gallery { gap:48px 16px; }
 #jeph-complete .hc-shop { display:block; padding-top:20px; }
 #jeph-complete .hc-lamp-stage { height:390px; }
 #jeph-complete .hc-shop-copy { padding-top:28px; }
 #jeph-complete .hc-waze-stage { height:190px; }
 #jeph-complete .hc-waze-caption > div { flex-wrap:wrap; gap:8px 16px; }
 #jeph-complete .hc-specs { padding-top:56px; }
 #jeph-complete .hc-studio { display:block; padding-top:32px; }
 #jeph-complete .hc-studio-copy { padding-top:24px; }
 #jeph-complete .hc-studio-copy p { font-size:18px; }
 #jeph-complete .hc-contact { display:block; }
 #jeph-complete .hc-brief { margin-top:32px; }
}

#jeph-complete .hc-lamp-stage .hc-watch-poster { position:absolute; inset:0; object-fit:contain; transition:opacity 250ms ease; }
#jeph-complete .hc-lamp-stage[data-ready="true"] .hc-watch-poster { opacity:0; }
#jeph-complete .hc-lamp-stage .hc-3d-fallback { bottom:12px; font-size:12px; }
@media(prefers-reduced-motion:reduce) { #jeph-complete .hc-shell :is(img,video,iframe,button,a,summary) { transition:none!important; } }
#jeph-complete .hc-hero { min-height:85svh; display:flex; flex-direction:column; }
#jeph-complete .hc-hero-copy { margin-top:auto; padding-top:200px; }
#jeph-complete .hc-hero-copy h1 { font-size:clamp(34px,4vw,56px); max-width:none; }
#jeph-complete .hc-hero-bottom { padding-top:28px; }
@container hc-page (max-width:650px) { #jeph-complete .hc-hero { min-height:90svh; } #jeph-complete .hc-hero-copy { padding-top:240px; } #jeph-complete .hc-hero-copy h1 { font-size:36px; } }
#jeph-complete .hc-lamp-stage canvas { position:relative; z-index:1; opacity:0; transition:opacity 350ms ease; }
#jeph-complete .hc-lamp-stage[data-ready="true"] canvas { opacity:1; }
@media(prefers-reduced-motion:reduce) { #jeph-complete .hc-lamp-stage canvas { transition:none; } }
#jeph-complete .hc-lamp-stage iframe { position:relative; z-index:1; width:100%; height:100%; border:0; background:#1c1c1c; opacity:0; transition:opacity 350ms ease; }
#jeph-complete .hc-lamp-stage[data-ready="true"] iframe,#jeph-complete .hc-lamp-stage[data-ready="native"] iframe { opacity:1; }
#jeph-complete .hc-lamp-stage[data-ready="native"] .hc-watch-poster { opacity:0; }
@media(prefers-reduced-motion:reduce) { #jeph-complete .hc-lamp-stage iframe { transition:none; } }
