/* JLJ Design Studio — quiet, photographic, architectural. */
:root{--paper:#f7f7f3;--ink:#242c28;--muted:#646d65;--line:#d9dcd5;--white:#fff;--serif:"Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;color-scheme:light;font-family:var(--sans);font-size:100%;font-weight:400;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0}body.gallery-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid #8e6e3d;outline-offset:6px}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3,blockquote{margin:0}p{font-size:1rem;line-height:1.8}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.12}h2{font-size:clamp(2.15rem,3.3vw,3.65rem)}h1 em,h2 em{font-weight:400}a,button{touch-action:manipulation}.wrap{width:calc(100% - 112px);max-width:1440px;margin-inline:auto}.eyebrow{font-size:.75rem;line-height:1.7;letter-spacing:.15em;text-transform:uppercase;font-weight:500}.muted{color:var(--muted)}.section-space{padding-block:108px}.skip-link{position:fixed;top:10px;left:10px;padding:14px;background:var(--ink);color:white;z-index:50;transform:translateY(-180%)}.skip-link:focus{transform:none}
.site-header{display:flex;align-items:center;justify-content:space-between;height:112px;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:14px}.monogram{font-family:var(--serif);font-size:3rem;line-height:1;letter-spacing:-.06em}.wordmark-name{font-size:.6875rem;letter-spacing:.21em;line-height:1.55;border-left:1px solid var(--line);padding-left:15px}.site-header nav{display:flex;gap:38px;align-items:center}.site-header nav a{font-size:.875rem;padding-block:12px}.site-header nav a:hover{color:var(--muted);text-decoration:underline;text-underline-offset:6px}
.hero{display:grid;grid-template-columns:.68fr 1.32fr;align-items:center;gap:6%;padding-block:68px 82px}.hero-copy{padding-bottom:25px}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.12em;max-width:245px}.hero h1{font-size:clamp(3.8rem,6.4vw,6.8rem);line-height:1.01;margin-top:30px;margin-bottom:28px}.hero h1 em{color:#627465}.hero-intro{max-width:230px;color:var(--muted);line-height:1.7}.text-link{display:inline-flex;gap:38px;align-items:center;font-size:.875rem;border-bottom:1px solid var(--ink);padding:14px 0 10px;margin-top:34px}.text-link:hover{color:var(--muted);gap:44px}.image-button{display:block;position:relative;padding:0;border:0;background:#e5e6df;width:100%;text-align:left}.image-button img{transition:filter .3s}.image-button:hover img{filter:brightness(.94)}.image-open{position:absolute;bottom:16px;right:16px;background:rgba(247,247,243,.94);padding:10px 14px;opacity:0;transition:opacity .2s;font-size:.75rem;letter-spacing:.03em}.image-button:hover .image-open,.image-button:focus-visible .image-open{opacity:1}figcaption{display:flex;justify-content:space-between;gap:18px;font-size:.75rem;line-height:1.6;color:var(--muted);margin-top:13px}.hero-image{min-width:0}.hero-image img{aspect-ratio:4/3;object-fit:contain}
.philosophy{display:grid;grid-template-columns:.68fr 1.32fr;gap:6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:76px}.philosophy .eyebrow{padding-top:9px}.philosophy h2{font-size:clamp(2.2rem,3.4vw,3.7rem)}.philosophy p:not(.eyebrow){margin-top:24px;max-width:620px;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:52px}.section-heading .eyebrow{margin-bottom:18px}.section-number{font-size:.75rem;white-space:nowrap;color:var(--muted);padding-bottom:4px}.residence-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:66px 8%;align-items:start}.residence-offset{padding-top:140px}.residence img{aspect-ratio:4/3;object-fit:contain}.residence-archive{max-width:88%}.work-note{align-self:center;padding:10px 12% 60px}.fine-rule{display:block;background:var(--line);width:60px;height:1px;margin-bottom:28px}.work-note p{font-family:var(--serif);font-size:clamp(1.9rem,2.5vw,2.8rem);line-height:1.35;letter-spacing:-.02em}.work-note em{color:#627465}.places{display:grid;grid-template-columns:.8fr 1fr 1.45fr;gap:6%;border-top:1px solid var(--line);padding-top:68px;margin-top:90px}.places-label p:last-child{font-family:var(--serif);font-size:1.8rem;line-height:1.3;margin-top:21px}.place-list h3{font-size:.875rem;font-weight:500;margin-bottom:23px}.place-row{display:flex;flex-direction:column;gap:4px;padding:14px 0;border-top:1px solid var(--line);font-size:.9375rem;line-height:1.5}.place-row span:last-child{color:var(--muted);font-size:.8125rem}.recognition{display:grid;grid-template-columns:.8fr 1fr 1.45fr;gap:6%;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:28px;margin-top:48px}.recognition p{font-family:var(--serif);font-size:1.3rem;line-height:1.4}.recognition>span:last-child{font-size:.8125rem;line-height:1.7;color:var(--muted)}
.studio{background:#e8ebe5}.studio-grid{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:7%}.portrait{max-width:none;min-width:0}.portrait img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.portrait figcaption{font-size:.75rem}.studio-copy .eyebrow{margin-bottom:22px}.studio-copy h2{margin-bottom:30px}.studio-copy>p:not(.eyebrow){max-width:560px;color:#505b52;margin-top:18px}.studio-copy blockquote{max-width:560px;font-family:var(--serif);font-size:1.8rem;line-height:1.4;letter-spacing:-.02em;margin-top:36px;border-top:1px solid #c9cec5;padding-top:32px}.studio-copy cite{display:block;font-family:var(--sans);font-style:normal;font-size:.75rem;letter-spacing:.03em;margin-top:17px;color:var(--muted)}
.depot-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:9%;align-items:start}.depot-grid>.depot-story{padding-top:5px}.depot-story>p{color:var(--muted);max-width:385px}.depot-story figure{margin-top:58px;max-width:360px}.depot img{aspect-ratio:1;object-fit:contain}.sketchbook{border-top:1px solid var(--line);display:grid;grid-template-columns:1.16fr .84fr;gap:9%;align-items:center;padding-block:78px 104px}.sketchbook .eyebrow{margin-bottom:24px}.sketchbook h2{font-size:clamp(2.7rem,4.3vw,4.6rem)}.sketchbook-copy{max-width:340px}.sketchbook-copy p+p{margin-top:20px;font-size:.875rem}.contact{background:var(--ink);color:var(--paper);padding-block:91px 96px}.contact-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:9%;align-items:center}.contact .eyebrow{color:#c3cbbf;margin-bottom:24px}.contact h2{font-size:clamp(2.8rem,4.4vw,4.8rem)}.contact-details{min-width:0}.contact-details>p{color:#c3cbbf;margin-bottom:24px}.contact-email{display:table;font-size:clamp(1.05rem,1.6vw,1.5rem);padding-bottom:8px;border-bottom:1px solid #829180;overflow-wrap:anywhere}.contact-phone{display:table;font-size:1.25rem;margin-top:22px}.contact-details a:hover{color:#cad4c5}.contact-name{display:block;margin-top:32px;font-size:.75rem;color:#c3cbbf;line-height:1.6}.site-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-block:29px;font-size:.75rem;color:var(--muted)}.footer-brand{letter-spacing:.12em;color:var(--ink)}.site-footer>a:last-child{padding-block:10px}
.gallery-dialog{background:#181d1a;color:var(--paper);width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:20px 28px 24px;border:0}.gallery-dialog::backdrop{background:#181d1a}.gallery-dialog[open]{display:flex;flex-direction:column}.gallery-top{display:flex;align-items:center;justify-content:space-between;flex:none;min-height:42px;font-size:.875rem}.gallery-top button{background:none;border:none;padding:10px 8px;color:var(--paper);display:flex;align-items:center;gap:18px}.gallery-top button span{font-size:1.8rem;line-height:1}.gallery-stage{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:22px;flex:1;min-height:0;padding-block:20px}.gallery-stage img{width:100%;height:100%;min-height:0;object-fit:contain;max-height:calc(100dvh - 150px)}.gallery-arrow{width:48px;height:48px;border:1px solid #687066;border-radius:50%;background:none;font-size:1.5rem;color:var(--paper)}.gallery-arrow:hover{background:#343d35}#gallery-caption{text-align:center;font-size:.875rem;line-height:1.5;flex:none;color:#d2d8cf}
@media(min-width:1700px){.hero{padding-block:85px 110px}.hero h1{font-size:7rem}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:5%;grid-template-columns:.76fr 1.24fr;padding-top:54px}.hero h1{font-size:5.8vw}.hero-copy .eyebrow{max-width:200px}.hero-image figcaption span:last-child{display:none}.section-space{padding-block:80px}.studio-grid{gap:6%;grid-template-columns:1.15fr 1fr}.studio-copy h2{font-size:2.65rem}.places{grid-template-columns:.7fr 1fr 1.3fr;gap:4%}.recognition{grid-template-columns:.7fr 1fr 1.3fr;gap:4%}.residence-offset{padding-top:90px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:auto;min-height:90px;padding-block:18px;flex-wrap:wrap;gap:16px}.monogram{font-size:2.7rem}.wordmark-name{font-size:.625rem}.site-header nav{gap:20px}.site-header nav a{font-size:.8125rem}.hero{grid-template-columns:1fr;padding-block:43px 47px;gap:35px}.hero-copy{padding:0}.hero-copy .eyebrow{max-width:none;font-size:.75rem}.hero h1{font-size:clamp(3.8rem,13vw,5.7rem);margin-top:23px;margin-bottom:19px}.hero-intro{max-width:300px}.hero .text-link{margin-top:17px;gap:35px;padding-block:12px 8px}.hero-image figcaption{font-size:.75rem}.philosophy{grid-template-columns:1fr;gap:25px;padding-block:43px}.philosophy h2{font-size:2.45rem}.philosophy p:not(.eyebrow){margin-top:21px}.section-space{padding-block:59px}.section-heading{margin-bottom:31px}.section-heading h2{font-size:2.35rem}.section-number{display:none}.section-heading .eyebrow{margin-bottom:15px}.residence-grid{grid-template-columns:1fr;gap:35px}.residence-offset{padding-top:0}.residence-archive{max-width:100%}.work-note{display:none}.residence figcaption{gap:10px;flex-wrap:wrap}.places{grid-template-columns:1fr 1fr;gap:33px 26px;margin-top:47px;padding-top:34px}.places-label{grid-column:1/-1;display:flex;align-items:start;justify-content:space-between;gap:24px}.places-label p:last-child{margin-top:0;font-size:1.5rem}.place-list h3{font-size:.8125rem;margin-bottom:19px}.place-row{font-size:.875rem}.place-row span:last-child{font-size:.75rem}.recognition{grid-template-columns:1fr;gap:10px;margin-top:29px;padding-block:24px}.recognition p{font-size:1.4rem}.studio-grid{grid-template-columns:1fr;gap:35px}.portrait{max-width:100%;width:100%}.portrait img{width:100%;aspect-ratio:auto;object-fit:contain;height:auto;max-width:none}.studio-copy h2{font-size:2.4rem;margin-bottom:24px}.studio-copy blockquote{font-size:1.65rem}.depot-grid{gap:30px;grid-template-columns:1fr}.depot-story>p{max-width:100%}.depot-story figure{margin-top:28px;max-width:75%;margin-left:auto}.sketchbook{grid-template-columns:1fr;gap:28px;padding-block:43px 54px}.sketchbook h2{font-size:2.9rem}.sketchbook-copy{max-width:100%}.contact{padding-block:55px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:3.1rem}.contact-email{font-size:1.3rem}.contact-details>p{margin-bottom:20px}.contact-name{margin-top:28px}.site-footer{flex-wrap:wrap;padding-block:24px;gap:18px}.site-footer>span{order:3;width:100%}.gallery-dialog{padding:12px 12px 22px}.gallery-stage{grid-template-columns:38px minmax(0,1fr) 38px;gap:6px}.gallery-arrow{height:38px;width:38px;font-size:1.2rem}.gallery-stage img{max-height:calc(100dvh - 170px)}#gallery-caption{font-size:.8125rem}.image-open{bottom:10px;right:10px;font-size:.75rem;padding:8px 10px}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}.wordmark{gap:8px}.wordmark-name{padding-left:8px}.site-header nav{gap:14px}.hero h1{font-size:3.7rem}.places{gap:28px 18px}.gallery-stage{grid-template-columns:32px minmax(0,1fr) 32px}.gallery-arrow{width:32px;height:40px;border:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

h1,h2,.contact-email{overflow-wrap:anywhere}
.depot-family{width:min(100%,720px);margin:52px auto 0}.depot-family img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.depot-family figcaption{flex-wrap:wrap;gap:6px 20px}
.aiken-project{margin-top:90px;padding-top:64px;border-top:1px solid var(--line)}.aiken-heading{margin-bottom:38px}.aiken-heading .eyebrow{margin-bottom:15px}.aiken-heading h3{font-family:var(--serif);font-size:clamp(2rem,3vw,3.2rem);font-weight:400;line-height:1.15;letter-spacing:-.03em}.aiken-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 5%;align-items:start}.aiken-grid figure{min-width:0}.aiken-grid img{width:100%;height:auto;object-fit:contain}.aiken-grid figcaption{font-size:.8125rem}.aiken-grid .image-button{background:transparent}
@media(max-width:760px){.aiken-project{margin-top:47px;padding-top:37px}.aiken-heading{margin-bottom:28px}.aiken-heading h3{font-size:2.2rem}.aiken-grid{grid-template-columns:1fr;gap:30px}}

/* Portfolio additions keep the existing quiet, image-led rhythm. */
.mountain-residence{width:min(100%,760px);margin-inline:auto}.mountain-residence img{width:100%;height:auto;object-fit:contain}.mountain-residence figcaption{flex-wrap:wrap}
.portfolio-project{margin-top:88px;padding-top:62px;border-top:1px solid var(--line)}.portfolio-project h3{font-family:var(--serif);font-size:clamp(2rem,3vw,3.2rem);font-weight:400;letter-spacing:-.03em;line-height:1.15}.portfolio-grid,.study-grid,.sketch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 5%;align-items:start}.portfolio-grid figure,.study-grid figure,.sketch-grid figure{min-width:0}.portfolio-grid img{height:auto;aspect-ratio:4/3;object-fit:contain}.portfolio-grid figure:last-child img{aspect-ratio:4/3}.design-studies{border-top:1px solid var(--line)}.design-studies .section-heading{margin-bottom:23px}.section-intro{max-width:580px;color:var(--muted);margin-bottom:40px}.study-grid .image-button,.sketch-grid .image-button{background:transparent}.study-grid img{aspect-ratio:16/10;object-fit:contain}.study-grid figure:last-child img{background:#fff}.sketchbook{column-gap:9%;row-gap:45px}.sketch-grid{grid-column:1/-1}.sketch-grid img{aspect-ratio:3/2;object-fit:contain;background:white}.study-grid figcaption,.sketch-grid figcaption,.portfolio-grid figcaption{flex-wrap:wrap;gap:4px 15px}.study-grid figcaption span:first-child,.sketch-grid figcaption span:first-child{color:var(--ink)}
@media(max-width:760px){.portfolio-project{margin-top:48px;padding-top:36px}.portfolio-grid,.study-grid,.sketch-grid{grid-template-columns:1fr;gap:32px}.portfolio-project h3{font-size:2.2rem}.sketchbook{row-gap:28px}.section-intro{margin-bottom:30px}.portfolio-grid figure:last-child img{aspect-ratio:auto;max-height:550px}.study-grid img{aspect-ratio:auto}.sketch-grid img{aspect-ratio:auto}}
