/*
Theme Name: MARCDZN 2.0
Theme URI: https://marcdzn.com/
Author: MARCDZN
Description: A typography-led, editorial portfolio for a senior digital designer.
Version: 2.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: marcdzn
*/
:root{--ink:#17191e;--paper:#f2f0eb;--teal:#a9c8c4;--muted:#aeb4ba;--line:#363b41}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}img{max-width:100%;height:auto}.wrap{width:min(1440px,calc(100% - 9vw));margin:auto}.dark{background:var(--ink);color:#f7f5f0}.site-header{background:var(--ink);color:#f7f5f0}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:86px;border-bottom:1px solid var(--line);gap:24px}.brand{font-size:1.35rem;font-weight:850;letter-spacing:-.08em}.brand span{color:var(--teal)}.menu{display:flex;gap:clamp(15px,2.5vw,40px);align-items:center;list-style:none;padding:0;margin:0}.menu a{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:#d8dcdd}.menu a:hover{color:var(--teal)}.menu-toggle{display:none;background:transparent;border:1px solid #555;color:white;padding:9px 13px}.eyebrow{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.teal{color:var(--teal)}.hero{padding:clamp(95px,12vw,200px) 0 55px;min-height:min(800px,88vh);display:flex;flex-direction:column;justify-content:space-between}.hero h1{font-size:clamp(3.9rem,9.1vw,10.2rem);font-weight:800;letter-spacing:-.085em;line-height:.96;max-width:1350px;margin:28px 0 35px}.hero h1 em{font-style:normal;color:var(--teal)}.hero-intro{max-width:610px;font-size:clamp(1.05rem,1.5vw,1.4rem);line-height:1.65;color:#bfc5c8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:35px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:16px;background:var(--teal);color:var(--ink);border-radius:40px;padding:16px 24px;font-weight:750;font-size:.82rem}.text-link{font-size:.82rem;border-bottom:1px solid currentColor;padding-bottom:5px}.hero-bottom{border-top:1px solid var(--line);margin-top:70px;padding-top:25px;display:flex;justify-content:space-between;gap:20px;color:#9ba5aa}.section{padding:clamp(75px,10vw,150px) 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:55px}.section-heading h2,.about h2,.contact h2{font-size:clamp(2.8rem,6.8vw,7.2rem);line-height:1;letter-spacing:-.075em;margin:14px 0 0}.section-heading p{max-width:350px;color:#61666b;line-height:1.6}.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 26px}.project{min-width:0}.project:first-child{grid-column:1/-1}.project-image{aspect-ratio:1.4;background:#dce1df;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}.project:first-child .project-image{aspect-ratio:2.1;background:#d8e1de}.project:nth-child(3n) .project-image{background:#e1dcd5}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project:hover .project-image img{transform:scale(1.035)}.project-placeholder{font-size:clamp(3rem,9vw,9rem);font-weight:850;letter-spacing:-.08em;color:#465c5d;opacity:.7}.project-meta{display:flex;justify-content:space-between;gap:15px;margin-top:20px;align-items:baseline}.project-meta h3{font-size:clamp(1.5rem,2.4vw,2.5rem);letter-spacing:-.055em;margin:0}.project-meta small{font-size:.72rem;color:#697077;text-align:right}.about{background:#e3e8e5}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8vw;align-items:start}.about p{font-size:clamp(1.05rem,1.6vw,1.45rem);line-height:1.7;color:#4d5556}.capabilities{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:35px}.capabilities span{border-top:1px solid #a7b4b1;padding-top:15px;font-size:.85rem}.contact{padding:clamp(85px,12vw,170px) 0}.contact h2{max-width:1050px;margin-bottom:35px}.contact p{color:#b7bec1;max-width:550px;line-height:1.7}.contact .pill{margin-top:28px}.footer-inner{border-top:1px solid var(--line);padding:30px 0;display:flex;justify-content:space-between;gap:20px;color:#9fa9ac;font-size:.75rem}.interior{min-height:55vh;padding:90px 0}.interior h1{font-size:clamp(3rem,7vw,7rem);letter-spacing:-.075em;line-height:1.05}.interior-content{max-width:850px;line-height:1.8}.interior-content a{text-decoration:underline}.interior-content img{height:auto}.wp-block-image img{height:auto}@media(max-width:760px){.wrap{width:calc(100% - 38px)}.header-inner{min-height:70px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;z-index:10;top:70px;left:0;right:0;background:var(--ink);padding:25px 20px;border-top:1px solid var(--line)}.site-nav.open{display:block}.menu{flex-direction:column;align-items:flex-start;gap:22px}.hero{padding-top:100px;min-height:690px}.hero h1{font-size:clamp(3.45rem,13vw,6rem)}.hero-bottom{flex-direction:column}.section-heading{display:block}.projects{grid-template-columns:1fr;gap:40px}.project:first-child{grid-column:auto}.project:first-child .project-image,.project-image{aspect-ratio:1.3}.project-meta{flex-wrap:wrap}.about-grid{grid-template-columns:1fr;gap:25px}.footer-inner{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* v1.1 — curated work gallery */
.dngo-feature{background:#161731!important}.dngo-art{width:100%;height:100%;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;color:#f1e7da;background:radial-gradient(ellipse at 70% 25%,#254b75 0%,transparent 48%),linear-gradient(145deg,#161731,#0a2666 90%);overflow:hidden}.dngo-art:before,.dngo-art:after{content:"";position:absolute;width:70%;height:85%;border:1px solid rgba(175,193,206,.18);border-radius:50%;transform:rotate(-26deg)}.dngo-art:after{width:90%;height:115%;transform:rotate(26deg)}.dngo-art strong{font-size:clamp(5rem,14vw,14rem);font-weight:850;letter-spacing:-.105em;line-height:1;z-index:1}.dngo-art strong span{color:#fa816a}.dngo-art-label{position:absolute;top:30px;left:32px;letter-spacing:.17em;font-size:.65rem;color:#afc1ce;z-index:1}.dngo-art-tagline{letter-spacing:.26em;font-size:clamp(.65rem,1vw,.9rem);font-weight:800;margin-top:16px;z-index:1}.work-note{font-size:.78rem;color:#777f80;margin:35px 0 0;max-width:740px;line-height:1.65}.curated-projects .project:first-child .project-image{aspect-ratio:2.1}.project-meta h3 span{color:#6d8581;font-size:.7em}@media(max-width:760px){.curated-projects .project:first-child .project-image{aspect-ratio:1.3}.dngo-art-label{top:20px;left:20px}.dngo-art strong{font-size:clamp(4.8rem,20vw,9rem)}}

/* v1.2 — DNGO editorial case study */
.case-study{overflow:hidden}.case-hero{padding:48px 0 clamp(75px,9vw,145px)}.case-back{display:inline-block;font-size:.78rem;color:#bbc5c5;margin-bottom:clamp(80px,11vw,160px);border-bottom:1px solid #5b6868;padding-bottom:7px}.case-hero h1{font-size:clamp(3.3rem,8.4vw,9rem);line-height:.98;letter-spacing:-.082em;max-width:1250px;margin:25px 0 32px}.case-hero h1 em{font-style:normal;color:var(--teal)}.case-lead{max-width:820px;color:#c2c9cb;font-size:clamp(1.15rem,2vw,1.65rem);line-height:1.55}.case-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:95px;padding-top:28px;border-top:1px solid #3b4449}.case-facts div{display:flex;flex-direction:column;gap:13px}.case-facts span{font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:#94a3a7}.case-facts strong{font-size:.88rem;line-height:1.5;font-weight:550}.case-art-section{padding:55px 0 65px;background:#e2e8e5}.case-art{height:clamp(340px,55vw,700px);background:radial-gradient(ellipse at 65% 28%,#2c537a 0,transparent 48%),linear-gradient(135deg,#161731,#0a2666);color:#f1e7da;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.case-orbit{position:absolute;width:70%;height:90%;border:1px solid #afc1ce33;border-radius:50%;transform:rotate(-25deg)}.case-orbit-two{width:90%;height:130%;transform:rotate(25deg)}.case-wordmark{font-size:clamp(6rem,18vw,18rem);letter-spacing:-.12em;font-weight:850;z-index:1;line-height:1}.case-wordmark span{color:#fa816a}.case-art-kicker{position:absolute;top:30px;left:35px;z-index:1;letter-spacing:.2em;font-size:.65rem;color:#afc1ce}.case-art-bottom{position:absolute;bottom:35px;left:35px;z-index:1;letter-spacing:.2em;font-weight:800;font-size:.8rem}.case-caption{font-size:.75rem;color:#667370;margin:14px 0 0}.case-section{padding:clamp(90px,11vw,160px) 0}.case-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,145px)}.case-section h2{font-size:clamp(2.8rem,5.3vw,6rem);letter-spacing:-.075em;line-height:1.04;margin:25px 0 0}.case-prose{padding-top:25px}.case-prose p{font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.8;color:#555e60;margin:0 0 25px}.case-tinted{background:#e3e9e6}.case-section-title{max-width:920px}.case-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:65px}.case-tool-grid article{background:#f5f5f1;padding:28px 23px;min-height:265px;display:flex;flex-direction:column}.case-tool-grid article span{font-size:.72rem;color:#758d8a}.case-tool-grid h3{font-size:clamp(1.2rem,1.7vw,1.8rem);letter-spacing:-.055em;margin:50px 0 10px}.case-tool-grid p{font-size:.9rem;line-height:1.65;color:#576164;margin:0}.case-small-note{color:#6e7977;font-size:.77rem;margin-top:25px}.case-dark-panel .case-prose p{color:#bec9cb}.case-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:40px}@media(max-width:850px){.case-facts,.case-tool-grid{grid-template-columns:repeat(2,1fr)}.case-columns{grid-template-columns:1fr;gap:15px}.case-prose{padding-top:0}}@media(max-width:520px){.case-facts{gap:25px 15px}.case-tool-grid{grid-template-columns:1fr}.case-tool-grid article{min-height:190px}.case-tool-grid h3{margin-top:25px}.case-art-kicker{left:18px;top:20px}.case-art-bottom{left:18px;bottom:22px;font-size:.65rem}.case-wordmark{font-size:24vw}.case-back{margin-bottom:65px}}


/* v1.3 — authentic product photography / responsive editorial gallery */
.dngo-showcase{background:#f2f0eb;padding:clamp(85px,10vw,150px) 0}.dngo-showcase-intro{max-width:900px;margin-bottom:65px}.dngo-showcase-intro h2,.dngo-film h2{font-size:clamp(2.8rem,6.5vw,7rem);letter-spacing:-.075em;line-height:1.02;margin:22px 0}.dngo-showcase-intro p,.dngo-film p{max-width:660px;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.7;color:#5b6263}.dngo-showcase figure{margin:0}.dngo-shot-stage{background:linear-gradient(135deg,#dce5e2,#cbd9d6);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:clamp(25px,5vw,75px)}.dngo-shot-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:730px;object-fit:contain;box-shadow:0 22px 65px #142c3740;border-radius:15px}.dngo-shot-stage-feature{background:radial-gradient(circle at 70% 20%,#315174,#161731 70%);padding:clamp(30px,6vw,90px)}.dngo-shot-stage-feature img{max-height:850px}.dngo-showcase figcaption{display:flex;flex-direction:column;gap:9px;padding:23px 0 0}.dngo-showcase figcaption span{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:#657b79;font-weight:700}.dngo-showcase figcaption strong{font-size:clamp(1.3rem,2.2vw,2.25rem);letter-spacing:-.045em;line-height:1.2}.dngo-showcase figcaption p{font-size:.95rem;line-height:1.65;color:#5c6667;margin:0}.dngo-showcase-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,48px);margin:clamp(60px,8vw,110px) 0}.dngo-showcase-welcome{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(25px,6vw,90px);align-items:center;padding:clamp(30px,5vw,80px);background:#e3e9e6}.dngo-showcase-welcome .dngo-shot-stage{background:transparent;padding:0}.dngo-showcase-welcome figcaption{padding:0}.dngo-showcase-note{font-size:.75rem;color:#6c7473;margin:22px 0 0}.dngo-film{padding:clamp(85px,10vw,140px) 0}.dngo-film p{color:#bfc7c9}.dngo-film video{width:100%;height:auto;display:block;aspect-ratio:16/9;background:#0b1630;margin-top:42px;border:1px solid #38434a}@media(max-width:760px){.dngo-showcase-pair,.dngo-showcase-welcome{grid-template-columns:1fr}.dngo-showcase-welcome{padding:30px}.dngo-shot-stage img{max-height:600px}.dngo-showcase-intro{margin-bottom:40px}.dngo-showcase-pair{margin:55px 0}.dngo-showcase-welcome figcaption{padding-top:10px}}

/* v1.5 — Visualives generative art showcase */
.visualives-page{overflow:hidden}.vl-hero{padding:48px 0 clamp(90px,11vw,170px)}.vl-hero h1{font-size:clamp(5rem,16vw,17rem);line-height:.86;letter-spacing:-.105em;margin:25px 0 26px;overflow-wrap:anywhere}.vl-hero h1 span{color:var(--teal)}.vl-tagline{font-size:clamp(1.6rem,3.6vw,3.5rem);letter-spacing:-.055em;margin:0 0 35px}.vl-lead{font-size:clamp(1.05rem,1.65vw,1.4rem);color:#c4cdcf;line-height:1.7;max-width:800px}.vl-facts{display:flex;gap:16px 34px;flex-wrap:wrap;border-top:1px solid #41494d;margin-top:65px;padding-top:24px;color:#a8b5b7;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.vl-opening{padding:clamp(85px,11vw,165px) 0 65px}.vl-opening-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:end}.vl-opening h2,.vl-process h2{font-size:clamp(3rem,6vw,7rem);line-height:1;letter-spacing:-.075em;margin:20px 0}.vl-opening h2 em{font-style:normal;color:#688b87}.vl-opening p{font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.8;color:#5a6465}.vl-gallery{padding:25px 0 clamp(90px,10vw,150px)}.vl-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.6vw,35px)}.vl-item{grid-column:span 6;margin:0;min-width:0}.vl-item:nth-child(7n+1),.vl-item:nth-child(7n+6){grid-column:span 8}.vl-item:nth-child(7n+2),.vl-item:nth-child(7n+7){grid-column:span 4}.vl-item a{display:block;background:#dfe2df;overflow:hidden}.vl-item img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/5;transition:transform .65s ease}.vl-item:nth-child(7n+1) img,.vl-item:nth-child(7n+6) img{aspect-ratio:1.3}.vl-item:nth-child(7n+2) img,.vl-item:nth-child(7n+7) img{aspect-ratio:.67}.vl-item a:hover img{transform:scale(1.035)}.vl-item figcaption{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:17px 0 10px}.vl-item figcaption span{color:#71817f;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.vl-item figcaption strong{font-size:clamp(.95rem,1.5vw,1.35rem);letter-spacing:-.03em;text-align:right}.vl-gallery-note{font-size:.78rem;line-height:1.65;color:#697473;max-width:780px;margin:45px 0 0}.vl-process{padding:clamp(90px,11vw,170px) 0}.vl-process-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.vl-process p{color:#c2cccd;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.8}.vl-process .pill{display:inline-block;margin-top:22px}@media(max-width:760px){.vl-hero h1{font-size:clamp(3.6rem,15vw,7rem)}.vl-opening-grid,.vl-process-grid{grid-template-columns:1fr;gap:20px}.vl-grid{grid-template-columns:1fr;gap:32px}.vl-item,.vl-item:nth-child(n){grid-column:auto}.vl-item img,.vl-item:nth-child(n) img{aspect-ratio:4/5}.vl-item figcaption{flex-direction:column;gap:5px}.vl-item figcaption strong{text-align:left}.vl-opening{padding-bottom:40px}}@media(prefers-reduced-motion:reduce){.vl-item img{transition:none}}

/* v1.7 — original editorial composition, with consistently aligned artwork heights.
   Preserve the asymmetric 8/4 and 6/6 column widths; equalize each artwork
   frame's height so images beside one another share top/bottom edges. */
@media (min-width:761px) {
  .vl-grid { align-items:stretch; }
  .vl-item { min-width:0; }
  .vl-item a { height:clamp(280px,35vw,510px); }
  .vl-item img,
  .vl-item:nth-child(7n+1) img,
  .vl-item:nth-child(7n+2) img,
  .vl-item:nth-child(7n+6) img,
  .vl-item:nth-child(7n+7) img {
    width:100%; height:100%; aspect-ratio:auto; object-fit:cover;
  }
}

/* v1.8 — Phresh: editorial product + campaign case study */
.ph-hero{background:#102c2a;color:#f6f3e9;padding:clamp(90px,10vw,150px) 0 85px;overflow:hidden}.ph-hero .case-back{color:#c7dfd9}.ph-hero h1{font-size:clamp(5.4rem,13vw,13rem);letter-spacing:-.095em;line-height:.85;margin:35px 0 25px;font-weight:850}.ph-hero h1 span{color:#4ed5bf}.ph-hero .ph-subtitle{font-size:clamp(1.6rem,3.5vw,3.4rem);font-weight:650;letter-spacing:-.055em;margin:0 0 26px}.ph-hero .ph-lead{font-size:clamp(1rem,1.45vw,1.3rem);line-height:1.75;color:#d2e4de;max-width:720px}.ph-tags{display:flex;gap:12px;flex-wrap:wrap;margin-top:42px}.ph-tags span{border:1px solid #63817a;border-radius:40px;padding:10px 16px;font-size:.75rem;letter-spacing:.02em}.ph-section{padding:clamp(80px,10vw,140px) 0}.ph-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(35px,7vw,130px);align-items:start}.ph-section h2{font-size:clamp(2.7rem,5.8vw,6rem);letter-spacing:-.07em;line-height:1.03;margin:18px 0 25px}.ph-copy{font-size:clamp(1.02rem,1.3vw,1.22rem);line-height:1.8;color:#505b59}.ph-copy p{margin:0 0 20px}.ph-muted{background:#e5ece7}.ph-dark{background:#102c2a;color:#f7f6ef}.ph-dark .ph-copy{color:#cbdcd5}.ph-visual{margin:0}.ph-visual img{display:block;width:100%;height:auto}.ph-caption{font-size:.75rem;color:#677572;line-height:1.6;margin:13px 0 0}.ph-dark .ph-caption{color:#b5cdc6}.ph-feature{padding:70px 0 90px;background:#dce7e1}.ph-feature-inner{display:grid;grid-template-columns:1fr 1.15fr;gap:5vw;align-items:center}.ph-feature-image{background:#102c2a;padding:clamp(18px,4vw,65px);display:flex;justify-content:center;align-items:center;min-height:480px}.ph-feature-image img{max-height:660px;width:auto;max-width:100%;object-fit:contain}.ph-feature h2{font-size:clamp(2.7rem,6vw,6rem);letter-spacing:-.07em;line-height:1.03;margin:15px 0 20px}.ph-feature p{font-size:1.12rem;line-height:1.75;color:#4e605a}.ph-campaign-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.ph-campaign-heading h2{margin-bottom:0}.ph-campaign-heading p{max-width:390px;color:#5a6763;line-height:1.7}.ph-campaign-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}.ph-campaign-grid figure{margin:0;min-width:0}.ph-campaign-grid figure:nth-child(1),.ph-campaign-grid figure:nth-child(2){grid-column:span 6}.ph-campaign-grid figure:nth-child(3),.ph-campaign-grid figure:nth-child(4){grid-column:span 6}.ph-campaign-grid figure img{width:100%;height:clamp(300px,40vw,600px);object-fit:cover;display:block}.ph-campaign-grid figcaption{font-size:.76rem;margin-top:11px;color:#65736e}.ph-lifestyle{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:60px}.ph-lifestyle img{width:100%;height:clamp(250px,31vw,460px);object-fit:cover;display:block}.ph-site-shot{max-height:820px;overflow:hidden;border:1px solid #d1d9d4;background:white}.ph-site-shot img{width:100%;height:auto;display:block}.ph-role-list{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:55px}.ph-role-list article{border-top:1px solid #779a90;padding-top:20px}.ph-role-list h3{font-size:1.15rem;margin:0 0 12px}.ph-role-list p{font-size:.94rem;line-height:1.7;color:#c6d8d0}.ph-cta{margin-top:45px;display:flex;gap:25px;flex-wrap:wrap;align-items:center}.ph-cta .pill{background:#4ed5bf}.ph-note{font-size:.8rem;color:#b7ccc4;line-height:1.65;margin-top:36px;max-width:760px}@media(max-width:760px){.ph-hero h1{font-size:clamp(4.5rem,19vw,8rem)}.ph-split,.ph-feature-inner,.ph-lifestyle{grid-template-columns:1fr}.ph-feature-image{min-height:300px}.ph-campaign-heading{display:block}.ph-campaign-grid{gap:15px}.ph-campaign-grid figure:nth-child(n){grid-column:span 12}.ph-campaign-grid figure img{height:auto;max-height:680px;object-fit:contain;background:#e1e6e2}.ph-role-list{grid-template-columns:1fr;gap:20px}.ph-section{padding:75px 0}}

/* v1.9 — Phresh brand palette + campaign-led feature; scoped to Phresh only */
.phresh-page{--ph-black:#071416;--ph-teal:#00b6aa;--ph-teal-bright:#20d5c4;--ph-white:#f9fbf8;--ph-pale:#e9f7f5}
.ph-hero,.ph-dark{background:var(--ph-black);color:var(--ph-white)}
.ph-hero h1 span,.ph-hero .eyebrow,.ph-product-proof .eyebrow{color:var(--ph-teal-bright)!important}
.ph-hero .ph-lead{color:#d3e0df}.ph-hero .case-back{color:#d4e7e5}
.ph-tags span{border-color:#477773;color:#e5f4f2}
.ph-feature{background:var(--ph-pale)}
.ph-feature-image{background:var(--ph-black);padding:0;min-height:0;overflow:hidden}
.ph-feature-image img{width:100%;max-width:none;height:clamp(340px,42vw,630px);max-height:none;object-fit:cover;object-position:center 35%}
.ph-feature .eyebrow,.ph-section .eyebrow{color:#087d77}
.ph-feature h2{color:var(--ph-black)}
.ph-muted{background:#e9f3f1}.ph-dark .eyebrow{color:var(--ph-teal-bright)!important}
.ph-dark .ph-role-list article{border-top-color:#36736f}
.ph-dark .ph-cta .pill{background:var(--ph-teal-bright);color:var(--ph-black)}
.ph-product-proof{background:var(--ph-black);color:var(--ph-white);padding:clamp(70px,9vw,125px) 0}
.ph-product-proof-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,95px);align-items:center}
.ph-product-proof h2{font-size:clamp(2.5rem,5vw,5.4rem);line-height:1.04;letter-spacing:-.07em;margin:22px 0}
.ph-product-proof p{color:#c7d8d5;line-height:1.75;font-size:clamp(1rem,1.4vw,1.2rem)}
.ph-product-proof figure{margin:0;background:#0d2727;padding:clamp(20px,3vw,50px)}
.ph-product-proof img{display:block;width:100%;height:auto;max-height:670px;object-fit:contain}
.ph-product-proof figcaption{color:#a7c4be;font-size:.75rem;margin-top:15px}
/* Only the Phresh project card receives the campaign treatment. */
.curated-projects .project:nth-child(2) .project-image{background:#071416}
.curated-projects .project:nth-child(2) .project-image img{object-position:center 35%}
@media(max-width:760px){.ph-product-proof-grid{grid-template-columns:1fr}.ph-feature-image img{height:390px}.ph-product-proof{padding:75px 0}}

/* v1.10 — Phresh featured campaign image and warm cream product presentation */
.phresh-page{--ph-cream:#f4eee3}
.ph-product-proof{background:var(--ph-cream);color:var(--ph-black)}
.ph-product-proof .eyebrow{color:#087d77!important}
.ph-product-proof h2{color:var(--ph-black)}
.ph-product-proof p{color:#4c5652}
.ph-product-proof figure{background:#e9dfcf;border:1px solid #ded3c2}
.ph-product-proof figcaption{color:#56615b}
.ph-product-proof img{background:transparent}
.ph-campaign-grid figure:nth-child(n){grid-column:span 6}
.ph-campaign-grid figure img{object-fit:contain;background:#f1eee7}
@media(max-width:760px){.ph-campaign-grid figure:nth-child(n){grid-column:span 12}.ph-campaign-grid figure img{height:auto;max-height:none}}

/* v1.11 — original beach campaign hero and honest native-resolution app proof */
.ph-product-proof figure{display:flex;flex-direction:column;align-items:center;justify-content:center}
.ph-product-proof figure img{width:100%;max-width:610px;height:auto;object-fit:contain;image-rendering:auto}
.ph-feature-image img{object-position:center 45%}
.curated-projects .project:nth-child(2) .project-image img{object-position:center 45%}

/* v1.12 — Phresh website presentation and aligned campaign gallery */
.phresh-page .ph-browser{max-width:1040px;margin:0 auto;border:1px solid #d4d7d0;border-radius:15px 15px 9px 9px;overflow:hidden;background:#fff;box-shadow:0 26px 65px rgba(7,20,22,.13)}
.phresh-page .ph-browser-bar{height:56px;display:flex;align-items:center;gap:18px;padding:0 18px;background:#f8f8f6;border-bottom:1px solid #e0e1dc;color:#3d4c49}
.phresh-page .ph-browser-dots{display:flex;gap:7px;flex-shrink:0}.phresh-page .ph-browser-dots i{display:block;width:10px;height:10px;border-radius:50%;background:#cbd1ce}.phresh-page .ph-browser-dots i:first-child{background:#e4a29b}.phresh-page .ph-browser-dots i:nth-child(2){background:#e7ce8b}.phresh-page .ph-browser-dots i:nth-child(3){background:#9fc8b0}
.phresh-page .ph-browser-address{flex:1;min-width:0;padding:8px 16px;border:1px solid #e5e8e4;background:#fff;border-radius:7px;font-size:.77rem;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phresh-page .ph-browser-address span{font-weight:400;color:#87928d}
.phresh-page .ph-browser-open{font-size:.76rem;font-weight:700;white-space:nowrap;color:#087d77;text-decoration:underline;text-underline-offset:3px}
.phresh-page .ph-browser .ph-site-shot{height:clamp(390px,53vw,680px);max-height:none;overflow-y:auto;overflow-x:hidden;border:0;background:white;scrollbar-color:#a3c8c0 #f0f0ec;scrollbar-width:thin}
.phresh-page .ph-browser .ph-site-shot img{display:block;width:100%;height:auto;max-width:none}
.phresh-page .ph-browser + .ph-caption{max-width:1040px;margin:16px auto 0}
.phresh-page .ph-campaign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px;align-items:stretch}
.phresh-page .ph-campaign-grid figure:nth-child(n){grid-column:auto;min-width:0;display:flex;flex-direction:column;margin:0;background:#f5f1e9;border:1px solid #e8e4db;overflow:hidden}
.phresh-page .ph-campaign-grid figure img{display:block;width:100%;height:clamp(350px,43vw,610px);object-fit:contain;object-position:center;background:#f5f1e9;flex:0 0 auto}
.phresh-page .ph-campaign-grid figcaption{margin:0;padding:15px 18px 17px;border-top:1px solid #e8e4db;background:#faf8f4;color:#57615c;font-size:.77rem;line-height:1.5;flex:1}
.phresh-page .ph-lifestyle{align-items:stretch;gap:22px;margin-top:34px}
.phresh-page .ph-lifestyle img{height:clamp(280px,32vw,490px);object-fit:cover}
@media(max-width:760px){.phresh-page .ph-browser-bar{gap:9px;padding:0 10px;height:50px}.phresh-page .ph-browser-address{padding:7px 9px}.phresh-page .ph-browser-address span{display:none}.phresh-page .ph-browser-open{font-size:.68rem}.phresh-page .ph-browser .ph-site-shot{height:440px}.phresh-page .ph-campaign-grid{grid-template-columns:1fr;gap:18px}.phresh-page .ph-campaign-grid figure img{height:auto;max-height:650px;aspect-ratio:4/5;object-fit:contain}.phresh-page .ph-lifestyle{grid-template-columns:1fr}.phresh-page .ph-lifestyle img{height:auto;aspect-ratio:3/2}}

/* v1.13 — keep original Phresh website screenshot at native width to avoid upscaling */
.phresh-page .ph-browser{max-width:593px}
.phresh-page .ph-browser + .ph-caption{max-width:593px}

/* v1.14 — AI-assisted campaign image captions */
.phresh-page .ph-lifestyle figure{margin:0;min-width:0;display:flex;flex-direction:column}
.phresh-page .ph-lifestyle figcaption{padding-top:16px;line-height:1.55;color:#586963;font-size:.86rem}
.phresh-page .ph-lifestyle figcaption strong{display:block;color:#1b302b;font-size:.93rem;font-weight:700;margin-bottom:5px}
.phresh-page .ph-lifestyle figcaption span{display:block;max-width:48ch}


/* LoadMaxer / branded editorial case study */
.lm-page{--lm-yellow:#ffc629;--lm-ink:#0f1419;--lm-slate:#252c35;color:var(--lm-ink)}.lm-page figure{margin:0}.lm-page img{display:block;max-width:100%}.lm-page figcaption{font-size:.77rem;line-height:1.55;margin-top:13px;color:#657078}.lm-page .eyebrow{letter-spacing:.15em}.lm-page .lm-gold{color:var(--lm-yellow)}.lm-hero{background:#0d1319;color:#fff;padding:70px 0 clamp(85px,11vw,155px)}.lm-hero .case-back{display:inline-block;color:#cbd2d6;margin-bottom:70px}.lm-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:6vw;align-items:center;margin-top:26px}.lm-hero h1{font-size:clamp(3.8rem,9.5vw,9rem);line-height:.9;letter-spacing:-.09em;margin:0 0 35px}.lm-hero h1 span{display:block;color:var(--lm-yellow)}.lm-intro{font-size:clamp(1.5rem,2.7vw,2.5rem);font-weight:700;letter-spacing:-.04em;line-height:1.15;max-width:630px}.lm-description{font-size:1.1rem;color:#b6c0c8;line-height:1.75;max-width:620px}.lm-logo{padding:20px;background:#0d1319}.lm-logo img{width:100%;max-width:500px;margin:auto}.lm-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:36px}.lm-tags span{border:1px solid #52606a;border-radius:99px;padding:10px 14px;font-size:.76rem;color:#e4e9e9}.lm-section{padding:clamp(80px,10vw,145px) 0}.lm-section-head{max-width:830px;margin-bottom:52px}.lm-section h2,.lm-credits h2{font-size:clamp(2.8rem,6.2vw,6.5rem);letter-spacing:-.075em;line-height:1.03;margin:17px 0 22px}.lm-section-head p,.lm-campaign p,.lm-motion-lead{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.75;color:#5c666c;max-width:720px}.lm-identity{background:#f1f1ed}.lm-brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lm-brand-grid figure{padding:clamp(25px,5vw,75px);display:flex;flex-direction:column;align-items:center;justify-content:center}.lm-brand-grid img{max-height:360px;object-fit:contain}.lm-brand-dark{background:#0d1319}.lm-brand-light{background:#fff}.lm-brand-dark figcaption{color:#cbd2d5}.lm-palette{margin-top:50px!important;background:white;padding:clamp(22px,4vw,55px)}.lm-palette img{width:100%;max-width:1000px;margin:auto}.lm-merch{margin-top:50px!important}.lm-merch img{width:100%;background:#f6f6f4}.lm-campaign{background:#111820;color:#fff}.lm-campaign-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:7vw;align-items:center}.lm-campaign h2{max-width:610px}.lm-campaign p{color:#c3ccd1}.lm-campaign .lm-small{font-size:.8rem;color:#9baab1;margin-top:25px}.lm-campaign figure{max-width:650px;margin-left:auto}.lm-campaign figure img{width:100%}.lm-campaign figcaption{color:#b5c1c7}.lm-motion{background:#e9ecea}.lm-motion-lead{margin-bottom:50px}.lm-video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#0a1118}.lm-video-frame iframe,.lm-short-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.lm-video-caption{display:flex;flex-direction:column;gap:7px;margin-top:16px}.lm-video-caption strong{font-size:1rem}.lm-video-caption span{font-size:.84rem;color:#66737a}.lm-shorts{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:65px}.lm-shorts article{min-width:0}.lm-short-frame{position:relative;aspect-ratio:9/16;background:#0b1118;max-height:700px;max-width:394px;margin:auto}.lm-shorts .lm-video-caption{max-width:394px;margin:16px auto 0}.lm-context{background:#fff}.lm-sites{display:grid;grid-template-columns:1fr 1fr;gap:30px}.lm-site-window{border:1px solid #d7dcdf;border-radius:12px;overflow-y:auto;overflow-x:hidden;height:550px;scrollbar-width:thin;background:#fff}.lm-site-window img{width:100%;height:auto}.lm-credits{background:#111820;color:#fff;padding:clamp(75px,10vw,130px) 0}.lm-credit-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin:50px 0}.lm-credit-grid>div{border-top:1px solid #57636c;padding-top:20px}.lm-credit-grid h3{font-size:1.15rem}.lm-credit-grid p{line-height:1.75;color:#c2cbd1;max-width:500px}.lm-return{display:inline-block;color:#ffc629;font-weight:700;margin-top:25px}.bb-art{height:100%;min-height:290px;background:#181818;color:#f3f0e9;display:flex;flex-direction:column;justify-content:space-between;padding:32px;gap:20px}.bb-art>span,.bb-art small{font-size:.65rem;letter-spacing:.18em}.bb-art strong{font-size:clamp(2rem,4vw,4rem);letter-spacing:-.08em;line-height:1}
@media(max-width:760px){.lm-hero-grid,.lm-brand-grid,.lm-campaign-grid,.lm-sites,.lm-credit-grid{grid-template-columns:1fr}.lm-hero .case-back{margin-bottom:45px}.lm-logo{max-width:400px}.lm-brand-grid figure{min-height:320px}.lm-campaign figure{margin:30px auto 0}.lm-shorts{gap:18px;margin-top:42px}.lm-site-window{height:400px}.lm-hero h1{font-size:clamp(3.6rem,13vw,6rem)}.lm-section{padding:75px 0}}

/* v1.16 — Native-resolution LoadMaxer assets and editorial website previews */
.lm-identity .lm-palette img{width:auto;max-width:100%;height:auto}
.lm-identity .lm-merch{text-align:center}
.lm-identity .lm-merch img{width:auto;max-width:min(100%,674px);height:auto;margin-inline:auto}
.lm-context .lm-section-head{max-width:850px}
.lm-context-credit{font-size:.85rem!important;color:#737b80!important;margin-top:22px}
.lm-site-showcase{display:flex;flex-direction:column;align-items:center;gap:70px}
.lm-site-feature{width:100%;max-width:950px;margin:0 auto!important}
.lm-site-feature-narrow{max-width:678px}
.lm-browser-bar{height:42px;background:#f0f2f3;border:1px solid #d8dee2;border-bottom:0;border-radius:12px 12px 0 0;display:flex;align-items:center;gap:22px;padding:0 16px}
.lm-browser-dots{display:flex;gap:6px;flex-shrink:0}.lm-browser-dots i{display:block;width:9px;height:9px;background:#b7c1c7;border-radius:50%}
.lm-browser-address{font-size:.7rem;letter-spacing:.025em;color:#67737c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lm-site-window.lm-site-window-primary,.lm-site-window.lm-site-window-secondary{height:min(68vw,680px);min-height:360px;border-radius:0 0 12px 12px;border:1px solid #d8dee2;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;overscroll-behavior:contain;background:#fff}
.lm-site-window-primary img,.lm-site-window-secondary img{display:block;width:100%;height:auto;max-width:100%}
.lm-site-feature figcaption{display:flex;flex-direction:column;gap:5px;margin-top:15px}.lm-site-feature figcaption strong{color:#222e36;font-size:.9rem}.lm-site-feature figcaption span{color:#737f85;font-size:.78rem}
@media(max-width:760px){.lm-site-showcase{gap:55px}.lm-site-window.lm-site-window-primary,.lm-site-window.lm-site-window-secondary{height:440px;min-height:0}}

/* v1.17 — crisp scalable palette and high-resolution branded applications */
.lm-palette-crisp{padding:clamp(22px,3.6vw,48px)!important}.lm-color-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.7vw,26px)}.lm-color{min-width:0;display:flex;flex-direction:column;align-items:flex-start;color:#17191e}.lm-color-swatch{display:block;width:100%;aspect-ratio:1.48;border-radius:8px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08),0 3px 10px rgba(0,0,0,.07);margin-bottom:18px}.lm-color strong{font-size:clamp(.68rem,1vw,.95rem);line-height:1.3;letter-spacing:.02em}.lm-color code{font-size:clamp(.7rem,.95vw,.9rem);margin:6px 0 9px;font-family:inherit;color:#424a50}.lm-color-meaning{font-size:clamp(.72rem,.95vw,.92rem);line-height:1.5;color:#596268}.lm-identity .lm-merch img{width:100%;max-width:1124px;height:auto;margin-inline:auto}.lm-merch figcaption{max-width:1124px;margin-inline:auto;text-align:left}@media(max-width:720px){.lm-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.lm-color-grid .lm-color:last-child{grid-column:1/-1;max-width:50%}.lm-color-swatch{margin-bottom:10px}}

/* v1.19 / BROKEBOY editorial case study */
.bb-page{--bb-cream:#f1eee8;--bb-ink:#161616;color:var(--bb-ink);background:var(--bb-cream)}.bb-page figure{margin:0}.bb-page img{display:block;width:100%;height:auto}.bb-page figcaption{font-size:.78rem;line-height:1.5;color:#77736c;margin-top:13px}.bb-page .eyebrow{letter-spacing:.17em;font-size:.71rem}.bb-page .case-back{display:inline-block;color:#5f5b55;margin-bottom:50px}.bb-hero{padding:65px 0 105px}.bb-hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:6%;align-items:center}.bb-hero-copy h1{font-size:clamp(5rem,11vw,11rem);letter-spacing:-.105em;line-height:.77;margin:30px 0 38px;font-weight:850}.bb-hero-copy h1 span{display:block;font-size:.48em;letter-spacing:-.06em;margin-top:14px}.bb-deck{font-size:clamp(1.4rem,2.5vw,2.4rem);font-weight:700;letter-spacing:-.05em}.bb-lead{font-size:1.06rem;line-height:1.8;color:#5c5853;max-width:550px}.bb-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.bb-tags span{border:1px solid #bdb7ad;border-radius:100px;padding:9px 13px;font-size:.75rem}.bb-hero-photo img{aspect-ratio:1.22;object-fit:cover;object-position:center}.bb-section{padding:clamp(80px,10vw,145px) 0}.bb-section h2,.bb-footer h2{font-size:clamp(3.1rem,7vw,7rem);letter-spacing:-.085em;line-height:.98;margin:18px 0 30px}.bb-section-lead,.bb-intro-grid p,.bb-ai-copy p{font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.8;color:#5d5953;max-width:690px}.bb-manifesto{background:#fff}.bb-intro-grid{display:grid;grid-template-columns:1fr .8fr;gap:8%;align-items:center;margin-bottom:65px}.bb-note{font-size:.85rem!important;color:#88827b!important}.bb-quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.bb-quote-grid img{aspect-ratio:1;object-fit:cover}.bb-apparel{background:#e8e5df}.bb-look-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:52px}.bb-look-large img{aspect-ratio:1.5;object-fit:cover}.bb-look-portrait img{aspect-ratio:.84;object-fit:cover}.bb-digital{background:#f7f5f1}.bb-browser{max-width:820px;margin:60px auto 0!important}.bb-browser-top{height:43px;background:#e3e0dc;border:1px solid #d5d0c9;border-bottom:0;border-radius:11px 11px 0 0;display:flex;align-items:center;gap:20px;padding:0 17px;color:#706a63;font-size:.7rem}.bb-dots{display:flex;gap:6px}.bb-dots i{display:block;width:9px;height:9px;border-radius:50%;background:#bbb5ac}.bb-browser-scroll{height:620px;overflow-y:auto;overflow-x:hidden;border:1px solid #d5d0c9;border-radius:0 0 11px 11px;background:white;scrollbar-width:thin}.bb-browser-scroll img{width:100%;height:auto}.bb-ai{background:#e8e5df}.bb-ai .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:center}.bb-ai figure img{aspect-ratio:1.45;object-fit:cover}.bb-footer{padding:clamp(80px,10vw,130px) 0;background:#161616;color:#f5f2ec}.bb-footer p{max-width:740px;line-height:1.8;color:#c6c2ba}.bb-footer a{display:inline-block;color:#f5f2ec;border-bottom:1px solid #f5f2ec;margin-top:35px}.curated-projects .project-image img[src*="brokeboylife3"]{object-position:center 35%}
@media(max-width:760px){.bb-hero-grid,.bb-intro-grid,.bb-ai .wrap{grid-template-columns:1fr}.bb-hero{padding:45px 0 70px}.bb-hero-copy h1{font-size:clamp(4.5rem,17vw,8rem)}.bb-hero-photo{margin-top:30px!important}.bb-quote-grid{grid-template-columns:1fr 1fr;gap:16px}.bb-quote-grid figure:last-child{grid-column:1/-1;max-width:60%;margin:auto}.bb-look-grid{gap:16px}.bb-browser-scroll{height:460px}.bb-section{padding:70px 0}.bb-ai figure{margin-top:25px}}

/* v1.20: selected work introductory copy belongs under its heading */
.section-heading .work-note{max-width:660px;margin:20px 0 0;font-size:clamp(.84rem,1vw,.95rem);line-height:1.7;color:#61666b;font-weight:400;letter-spacing:normal}

/* v1.21 — contact section */
.contact .contact-intro{max-width:680px;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.65;color:#c4cbd0}
.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;margin-top:30px}
.contact .contact-actions .pill{margin-top:0}
.contact-email{color:#d5dcde;font-size:.9rem;text-decoration:underline;text-decoration-color:#637477;text-underline-offset:5px;overflow-wrap:anywhere}
.contact-email:hover{color:var(--teal)}
.contact .contact-resume{margin:28px 0 0;color:#aeb9bc;font-size:.9rem}
.contact-location{border-top:1px solid var(--line);padding-top:26px;margin-top:65px;color:#a4b1b5;font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.contact-location span{padding:0 8px;color:var(--teal)}
.contact .contact-config-note{font-size:.85rem;color:var(--teal)}
@media(max-width:760px){.contact-location{line-height:1.9}.contact-actions{align-items:flex-start;flex-direction:column}}

/* v1.22 — DNGO case study hero uses supplied light-wave brand artwork */
.case-art.case-art-image{height:auto;aspect-ratio:2048/1000;background:#edf2f6;display:block}
.case-art-image img{display:block;width:100%;height:100%;object-fit:cover}

/* v1.23 — accessible floating back-to-top control */
.back-to-top{position:fixed;right:clamp(18px,3vw,40px);bottom:clamp(18px,3vw,38px);z-index:1000;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.23);background:#15292b;color:#f5f8f5;display:grid;place-items:center;cursor:pointer;box-shadow:0 9px 26px rgba(0,0,0,.22);opacity:0;visibility:hidden;transform:translateY(12px);pointer-events:none;transition:opacity .25s ease,transform .25s ease,visibility .25s ease,background .2s ease}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.back-to-top:hover{background:#28665e;transform:translateY(-3px)}
.back-to-top:focus-visible{outline:3px solid #74d8c3;outline-offset:4px}
@media(max-width:600px){.back-to-top{width:46px;height:46px;right:16px;bottom:18px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top:hover{transform:none}}

/* v1.24 — pre-AI design archive */
.archive-page{overflow:hidden}.archive-hero{padding:48px 0 clamp(85px,11vw,160px)}.archive-hero h1{font-size:clamp(4.2rem,11vw,12rem);line-height:.94;letter-spacing:-.09em;margin:25px 0}.archive-hero h1 em{font-style:normal;color:var(--teal)}.archive-intro{font-size:clamp(1.25rem,2.3vw,2.3rem);line-height:1.35;max-width:940px;letter-spacing:-.035em}.archive-sub{max-width:720px;color:#bac5c7;font-size:1.05rem;line-height:1.8}.archive-tags{display:flex;gap:14px 28px;flex-wrap:wrap;border-top:1px solid #41494d;margin-top:65px;padding-top:24px;color:#aebcbd;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.archive-section{padding:clamp(85px,10vw,140px) 0;border-bottom:1px solid #d4d4cf}.archive-section:nth-of-type(odd){background:#e8e8e2}.archive-heading{margin-bottom:50px;max-width:900px}.archive-heading h2{font-size:clamp(2.8rem,6vw,6.5rem);line-height:1.03;letter-spacing:-.075em;margin:18px 0}.archive-heading p{color:#586263;font-size:1.1rem;line-height:1.7}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(15px,2.3vw,32px);align-items:start}.archive-item{margin:0;min-width:0}.archive-item a{display:block;background:#d7d9d6;overflow:hidden}.archive-item img{display:block;width:100%;height:auto;transition:transform .5s ease}.archive-item a:hover img{transform:scale(1.025)}.archive-item figcaption{font-size:.73rem;letter-spacing:.035em;color:#6a7272;padding:12px 0 20px;text-transform:capitalize}.archive-end{padding:clamp(90px,11vw,160px) 0}.archive-end h2{font-size:clamp(3.5rem,8vw,9rem);letter-spacing:-.08em;line-height:.98;margin:22px 0}.archive-end p{max-width:670px;line-height:1.8;color:#bdc8ca;font-size:1.1rem}.archive-end .pill{margin-top:25px}.archive-end .archive-disclaimer{font-size:.75rem;color:#91a1a4;margin-top:55px}.archive-home-feature{display:block;margin-top:clamp(50px,6vw,90px);border-top:1px solid #d1d3cf;padding-top:30px}.archive-home-art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;height:clamp(210px,32vw,450px);overflow:hidden;background:#20262c}.archive-home-art img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.archive-home-feature:hover .archive-home-art img{transform:scale(1.035)}.archive-home-meta{display:flex;justify-content:space-between;gap:30px;align-items:end;padding:24px 0}.archive-home-meta h3{font-size:clamp(1.6rem,3vw,3rem);letter-spacing:-.055em;margin:10px 0}.archive-home-meta h3 span{color:#688b87}.archive-home-meta p{max-width:340px;font-size:.85rem;line-height:1.65;color:#657070}@media(max-width:850px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.archive-grid{grid-template-columns:1fr}.archive-home-art{height:230px;gap:4px}.archive-home-meta{display:block}.archive-home-meta p{max-width:100%}.archive-tags{gap:12px}.archive-item img{max-height:none}}@media(prefers-reduced-motion:reduce){.archive-item img,.archive-home-art img{transition:none}}

/* Preserve native-scale presentation of the small BTS mobile design. */
.archive-item--mobile{width:100%;max-width:300px;justify-self:center}.archive-item--mobile a{width:100%;max-width:300px;margin-inline:auto}.archive-item--mobile img{width:100%;max-width:300px;height:auto}.archive-item--mobile figcaption{text-align:center}

/* In-page portfolio image viewer */
body.marcdzn-lightbox-open{overflow:hidden}
.marcdzn-lightbox[hidden]{display:none!important}
.marcdzn-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(7,12,20,.96);display:flex;align-items:center;justify-content:center;padding:64px 65px 45px;color:#fff}
.marcdzn-lightbox-toolbar{position:absolute;top:12px;left:20px;right:16px;display:flex;justify-content:space-between;align-items:center;font:500 13px/1.5 inherit;color:#cbd5e1}
.marcdzn-lightbox button{appearance:none;border:1px solid rgba(255,255,255,.22);background:rgba(25,34,44,.82);color:#fff;cursor:pointer;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:30px;line-height:1;transition:background .2s}
.marcdzn-lightbox button:hover,.marcdzn-lightbox button:focus-visible{background:#2d5660;outline:2px solid #a3dcd7;outline-offset:2px}
.marcdzn-lightbox .marcdzn-lightbox-close{font-size:28px}
.marcdzn-lightbox-prev,.marcdzn-lightbox-next{position:absolute;top:50%;transform:translateY(-50%)}
.marcdzn-lightbox-prev{left:14px}.marcdzn-lightbox-next{right:14px}
.marcdzn-lightbox-figure{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:0}
.marcdzn-lightbox-figure img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 135px);object-fit:contain;box-shadow:0 10px 40px rgba(0,0,0,.25)}
.marcdzn-lightbox-figure figcaption{font-size:13px;color:#cbd5e1;text-align:center;max-width:80ch}
@media(max-width:600px){.marcdzn-lightbox{padding:65px 12px 76px}.marcdzn-lightbox-prev,.marcdzn-lightbox-next{top:auto;bottom:14px;transform:none}.marcdzn-lightbox-prev{left:calc(50% - 55px)}.marcdzn-lightbox-next{right:calc(50% - 55px)}.marcdzn-lightbox-figure img{max-height:calc(100dvh - 190px)}}


/* MARCDZN 2.1 — intentional mobile art direction. Desktop rules untouched. */
@media (max-width:760px){
  :root{--mobile-gutter:22px}
  .wrap{width:calc(100% - (var(--mobile-gutter) * 2))}
  .site-header{position:relative;z-index:101;background:#17191e}
  .header-inner{min-height:74px;border-bottom-color:rgba(169,200,196,.24)}
  .brand{font-size:1.55rem;letter-spacing:-.09em}
  .menu-toggle{font:700 .69rem/1 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;border:1px solid rgba(169,200,196,.55);border-radius:99px;padding:13px 17px;color:#e9f0ec;min-height:43px}
  .site-nav{top:74px;padding:30px var(--mobile-gutter) 42px;background:#17191e;box-shadow:0 30px 45px rgba(0,0,0,.24);border-bottom:1px solid rgba(169,200,196,.35)}
  .site-nav .menu{gap:0}
  .site-nav .menu li{width:100%;border-bottom:1px solid rgba(169,200,196,.19)}
  .site-nav .menu a{display:block;padding:19px 0;font-size:clamp(1.55rem,8vw,2.6rem);font-weight:750;line-height:1.12;letter-spacing:-.055em;text-transform:none;color:#f5f4ef}
  .hero{min-height:0;padding:72px 0 29px;justify-content:initial}
  .hero .eyebrow{font-size:.63rem;letter-spacing:.13em;line-height:1.6}
  .hero h1{font-size:clamp(3.45rem,14.6vw,6.9rem);line-height:.98;letter-spacing:-.09em;max-width:680px;margin:30px 0 30px;text-wrap:balance;overflow-wrap:normal}
  .hero-intro{font-size:1.07rem;line-height:1.65;max-width:36ch;color:#cbd4d3}
  .hero-actions{gap:20px;margin-top:30px}
  .hero-actions .pill{padding:17px 22px;min-height:52px}
  .hero-bottom{margin-top:75px;padding-top:20px;gap:13px;position:relative}
  .hero-bottom:before{content:"";position:absolute;top:-2px;left:0;width:62px;height:3px;background:var(--teal)}
  .hero-bottom .eyebrow{font-size:.58rem;letter-spacing:.12em;line-height:1.7}
  .section{padding:78px 0}
  .section-heading{margin-bottom:36px}
  .section-heading h2,.about h2,.contact h2{font-size:clamp(3.2rem,12.5vw,5.9rem);line-height:.98;letter-spacing:-.085em;text-wrap:balance}
  .section-heading .work-note{margin:23px 0 0;max-width:42ch;font-size:.86rem;line-height:1.75}
  .section-heading>p{max-width:40ch;margin-top:24px;font-size:.88rem;line-height:1.75}
  .projects{gap:45px}
  .project{display:block}
  .project-image,.project:first-child .project-image,.curated-projects .project:first-child .project-image{aspect-ratio:1.12;overflow:hidden}
  .project:nth-child(2n) .project-image{aspect-ratio:1.38}
  .project:first-child .project-image{aspect-ratio:1.16}
  .project-image img{object-position:center}
  .project-meta{margin-top:16px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
  .project-meta h3{font-size:clamp(1.9rem,8vw,2.8rem);line-height:1.1}
  .project-meta small{font-size:.73rem;text-align:left;letter-spacing:.025em;line-height:1.6}
  .archive-home-feature{margin-top:70px;padding-top:23px}
  .archive-home-art{height:270px;grid-template-columns:1.2fr 1fr;gap:5px}
  .archive-home-art img:last-child{display:none}
  .archive-home-meta{padding-top:19px}
  .archive-home-meta h3{font-size:clamp(2.15rem,9vw,3.3rem);line-height:1.08}
  .archive-home-meta p{font-size:.87rem;line-height:1.7}
  .about{padding:85px 0 95px}
  .about-grid{gap:22px}
  .about p{font-size:1.08rem;line-height:1.78}
  .capabilities{gap:20px 14px;margin-top:30px}
  .capabilities span{font-size:.76rem;line-height:1.5;padding-top:13px}
  .contact{padding:90px 0 95px}
  .contact h2{max-width:12ch;margin:22px 0 26px}
  .contact p{font-size:1rem;line-height:1.8}
  .contact .pill{min-height:52px}
  .footer-inner{padding:28px 0 35px;gap:13px;line-height:1.6}
  /* Case studies: compact introductory space and gallery-like image rhythm. */
  .case-hero,.archive-hero{padding-top:34px;padding-bottom:72px}
  .case-back{margin-bottom:64px}
  .case-hero h1,.archive-hero h1{font-size:clamp(3.45rem,13vw,6rem);line-height:.98;letter-spacing:-.085em;overflow-wrap:break-word}
  .case-lead,.archive-intro{font-size:1.16rem;line-height:1.55}
  .case-facts{margin-top:46px;padding-top:22px;gap:22px 15px}
  .case-section,.archive-section{padding:75px 0}
  .case-section h2,.archive-heading h2{font-size:clamp(2.9rem,11vw,4.9rem);line-height:1.02;letter-spacing:-.08em}
  .case-prose p{font-size:1.02rem;line-height:1.78}
  .archive-grid{gap:24px}
  .archive-item figcaption{padding-top:10px}
  .ph-hero h1{font-size:clamp(3.8rem,15vw,6rem)}
  .ph-section h2,.ph-feature h2{font-size:clamp(2.9rem,11vw,4.9rem)}
  .ph-campaign-grid,.ph-lifestyle{gap:24px}
  .ph-feature{padding:65px 0}
  .lm-hero h1,.bb-hero-copy h1{font-size:clamp(3.65rem,13.5vw,6rem)}
  .back-to-top{bottom:calc(18px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:380px){.hero h1{font-size:13.6vw}.hero-actions{gap:16px}.hero-actions .pill{padding:15px 18px}.project-meta h3{font-size:1.85rem}}

/* MARCDZN 2.2 / MOBILE EDITORIAL — intentionally isolated from desktop */
@media (max-width:760px){
  /* More cinematic opening: controlled type and a shorter route to the work. */
  .hero{padding-top:52px;padding-bottom:22px}
  .hero h1{font-size:clamp(2.95rem,12.2vw,5.5rem);line-height:1.005;letter-spacing:-.082em;max-width:12ch;margin:22px 0 24px;text-wrap:pretty}
  .hero-intro{font-size:1rem;line-height:1.58;max-width:33ch}
  .hero-actions{margin-top:25px}
  .hero-bottom{margin-top:46px}
  /* Editorial chapter opening, not a wall of copy. */
  #work.section{padding-top:58px}
  #work .section-heading{margin-bottom:30px}
  #work .section-heading h2{font-size:clamp(3.35rem,14vw,5.5rem);line-height:.94;max-width:8ch;margin-top:17px}
  #work .section-heading .work-note{font-size:.94rem;line-height:1.5;max-width:35ch;margin:22px 0 0;color:#515c5d}
  #work .section-heading>p{display:none}
  /* Projects become full-bleed editorial features, numbered like a print portfolio. */
  #work .projects{counter-reset:marc-project;gap:48px}
  #work .project{counter-increment:marc-project;position:relative;display:block}
  #work .project-image,#work .project:first-child .project-image,#work .curated-projects .project:first-child .project-image{width:calc(100% + 44px);margin-left:-22px;aspect-ratio:1.32;background:#d8dfdc;position:relative}
  #work .project:nth-child(even) .project-image{aspect-ratio:1.08}
  #work .project-image:after{content:counter(marc-project,decimal-leading-zero) ' / SELECTED WORK';position:absolute;top:15px;left:18px;padding:9px 11px;background:rgba(23,25,30,.88);color:#f7f5f0;font-size:.59rem;letter-spacing:.13em;font-weight:750;line-height:1;pointer-events:none}
  #work .project-image img{display:block;width:100%;height:100%;object-fit:cover}
  #work .project-meta{position:relative;z-index:1;margin:-23px 0 0 auto;padding:20px 20px 0 19px;width:calc(100% - 18px);background:var(--paper);gap:8px;border-top:3px solid #a9c8c4}
  #work .project-meta h3{font-size:clamp(2.15rem,9.6vw,3.6rem);letter-spacing:-.075em;line-height:1.02}
  #work .project-meta h3 span{font-size:.62em;color:#6e9c98;display:inline-block;vertical-align:middle;transition:transform .2s}
  #work .project:active .project-meta h3 span{transform:translate(3px,-3px)}
  #work .project-meta small{font-size:.79rem;line-height:1.45;color:#667174;max-width:35ch}
  /* Archive is its own closing chapter with a wide artwork spread. */
  #work .archive-home-feature{display:block;margin-top:65px;padding-top:27px;border-top:1px solid #b9c6c2}
  #work .archive-home-art{width:calc(100% + 44px);margin-left:-22px;height:auto;aspect-ratio:1.22;display:grid;grid-template-columns:1.05fr 1fr;gap:4px;overflow:hidden}
  #work .archive-home-art img{display:block;width:100%;height:100%;object-fit:cover}
  #work .archive-home-art img:last-child{display:none}
  #work .archive-home-meta{display:block;padding-top:21px}
  #work .archive-home-meta .eyebrow{font-size:.65rem;letter-spacing:.14em}
  #work .archive-home-meta h3{font-size:clamp(2.35rem,10vw,4.1rem);line-height:.99;letter-spacing:-.078em;max-width:13ch;margin:16px 0 0}
  #work .archive-home-meta p{font-size:.91rem;line-height:1.52;margin:16px 0 0;max-width:34ch}
  /* Utility controls shouldn't obscure artwork on small screens. */
  .back-to-top{width:39px;height:39px;right:11px;bottom:calc(12px + env(safe-area-inset-bottom,0px));opacity:.82}
  .back-to-top.is-visible{opacity:.82}
  .back-to-top svg{width:19px;height:19px}
}
@media(max-width:380px){#work .project-image,#work .project:first-child .project-image,#work .curated-projects .project:first-child .project-image,#work .archive-home-art{width:calc(100% + 44px)}#work .project-meta h3{font-size:2.15rem}}

/* v2.3 — MD monogram header; shared across desktop and mobile. */
.site-header .brand{display:inline-flex;align-items:center;gap:12px;letter-spacing:-.065em;white-space:nowrap;text-decoration:none}
.site-header .brand-mark{display:block;width:46px;height:46px;object-fit:contain;flex:none;background:#faf9f4;border-radius:2px}
.site-header .brand-name{display:inline-block;color:#f7f5f0;font-size:1.22rem;font-weight:850;line-height:1}
.site-header .brand-name span{color:var(--teal)}
@media(max-width:760px){.site-header .brand{gap:9px}.site-header .brand-mark{width:38px;height:38px}.site-header .brand-name{font-size:1.05rem;letter-spacing:-.065em}}
@media(max-width:370px){.site-header .brand-mark{width:32px;height:32px}.site-header .brand-name{font-size:.93rem}.site-header .brand{gap:7px}}
