:root{color-scheme:dark;--bg:#111113;--white:#f3f0eb;--orange:#ff743e;--muted:#aaa8a5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover,a:focus-visible{color:var(--orange)}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.top{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1500px;margin:auto;padding:0 5%;gap:2rem}.logo{font-size:2.2rem;font-weight:900;letter-spacing:-.1em}.logo:before{content:'';display:block;width:65px;height:5px;background:var(--orange);margin-bottom:6px}.brand{margin-right:auto;font-size:.9rem;font-weight:700}.brand small{display:block;color:var(--muted);font-size:.68rem;font-weight:400;margin-top:3px}.nav{display:flex;gap:2.4rem;align-items:center}.nav a{font-size:.8rem;font-weight:700;text-transform:uppercase}.nav a[aria-current=page]{border-bottom:2px solid var(--orange);padding-bottom:7px}.nav .menu-toggle{display:none}.container{max-width:1440px;margin:auto;padding:2rem 5% 6rem}.eyebrow{color:var(--orange);text-transform:uppercase;letter-spacing:.12em;font-size:.83rem;font-weight:700}.page-title{font-size:clamp(3.5rem,10vw,9rem);line-height:.91;letter-spacing:-.075em;margin:1.2rem 0 2rem}.intro{font-size:clamp(1.15rem,2.4vw,1.75rem);line-height:1.5;max-width:850px;color:#d5d2cd}.muted{color:var(--muted)}.cta{display:inline-flex;padding:14px 20px;border:1px solid var(--orange);color:var(--white);font-size:.84rem;font-weight:800;letter-spacing:.03em}.cta:hover{background:var(--orange);color:#111}.rule{border:0;border-top:1px solid #38383a;margin:3rem 0}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem 2rem;margin-top:3rem}.work-card:nth-child(even){margin-top:4rem}.work-card img{display:block;width:100%;aspect-ratio:1.7;object-fit:cover;background:#292929}.work-card h2{font-size:clamp(1.6rem,3vw,3rem);margin:.8rem 0 .25rem;text-transform:uppercase;letter-spacing:-.05em}.work-card p{color:var(--muted);margin:0 0 1rem}.work-card .eyebrow{font-size:.7rem}.detail-head{display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:end}.detail-meta{border-left:1px solid #444;padding-left:2rem;line-height:1.7}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem;margin-top:4rem}.gallery img{width:100%;height:auto;display:block;background:#eee}.gallery figure{margin:0}.gallery figure:first-child{grid-column:1/-1}.gallery figcaption{font-size:.75rem;color:var(--muted);margin-top:.5rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.two-col h2{font-size:2.5rem;letter-spacing:-.05em}.two-col p,.two-col li{line-height:1.75;color:#c8c5c0}.cv-view{width:100%;height:800px;border:1px solid #444;background:#fff}.footer{border-top:1px solid #444;padding:2rem 5%;display:flex;justify-content:space-between;color:#aaa;font-size:.85rem;gap:2rem}.homepage-visual{position:relative;width:100%;max-width:1600px;margin:auto}.homepage-visual>img{width:100%;height:auto;display:block}.hotspot{position:absolute;display:block;border:0;background:transparent;cursor:pointer}.hotspot:hover{background:#ff743e24;outline:1px solid #ff743e88}.hotspot:focus-visible{outline:3px solid var(--orange)}.home-mobile{display:none}.home-after{max-width:1200px;margin:auto;padding:4rem 5%}.home-after h2{font-size:clamp(2.6rem,6vw,5rem);letter-spacing:-.07em;margin:0 0 1rem}.contact-link{font-size:clamp(1.5rem,4vw,3.5rem);font-weight:800;overflow-wrap:anywhere}.note{background:#292321;border-left:3px solid var(--orange);padding:1rem 1.5rem;color:#ddd;line-height:1.5}@media(max-width:800px){.top{height:76px}.brand{font-size:.75rem}.nav{gap:.8rem}.nav a{font-size:.7rem}.detail-head,.two-col{grid-template-columns:1fr}.detail-meta{border-left:0;border-top:1px solid #444;padding:1rem 0}.work-grid{grid-template-columns:1fr}.work-card:nth-child(even){margin-top:0}.gallery{grid-template-columns:1fr}.gallery figure:first-child{grid-column:auto}.cv-view{height:550px}.homepage-visual{display:none}.home-mobile{display:block}.home-mobile .hero{padding:3rem 6% 2rem;background:linear-gradient(150deg,#111 55%,#431a14)}.home-mobile h1{font-size:clamp(4rem,14vw,7rem);line-height:.92;letter-spacing:-.09em;margin:1rem 0}.home-mobile h1 span{color:var(--orange)}.home-mobile .portrait{width:100%;height:360px;object-fit:cover;object-position:70% 10%;margin-top:2rem}.home-mobile .work-grid{padding:0 6% 3rem}.home-mobile h2.section{font-size:3rem;margin:3rem 6% 0}.footer{flex-direction:column}}@media(max-width:460px){.top{padding:0 4%}.nav{gap:.5rem}.nav a{font-size:.6rem}.brand{display:none}.logo{font-size:1.8rem}.container{padding:2rem 5% 4rem}}

/* Responsive rebuild of the approved Dark Editorial homepage. Live text, links and project artwork. */
.home-page{overflow:hidden}.hero-live{max-width:1600px;margin:auto;min-height:580px;display:grid;grid-template-columns:34% 52% 14%;position:relative;isolation:isolate;padding:1.5rem 3.8% 0;gap:0}.hero-copy{position:relative;z-index:2;padding-top:2rem}.kicker{color:#aaa;font-size:clamp(.6rem,.83vw,.88rem);letter-spacing:.045em;white-space:nowrap}.kicker b{color:var(--orange);padding:0 .35em}.hero-copy h1{font-size:clamp(4rem,7.5vw,8rem);line-height:.79;letter-spacing:-.085em;margin:2rem 0 2rem;font-weight:900}.hero-copy h1 span{color:var(--orange)}.hero-intro{font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.38;max-width:400px;margin-bottom:1.4rem}.hero-art{position:relative;min-height:520px;overflow:hidden;align-self:stretch;background:#201a18}.hero-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 10%;transform:scale(1.65);filter:contrast(1.05)}.hero-art-label{position:absolute;top:14%;right:0;display:flex;align-items:flex-end;gap:.4rem;text-shadow:2px 2px 10px #0008}.hero-art-label strong{font-size:clamp(4rem,8vw,10rem);line-height:.8;letter-spacing:-.1em}.hero-art-label span{font-weight:900;color:var(--orange);font-size:clamp(1.3rem,2.8vw,3rem);line-height:.85}.handwritten{position:absolute;bottom:7%;right:5%;font-family:cursive;font-size:clamp(2rem,4vw,4.2rem);font-style:italic;transform:rotate(-12deg);text-shadow:2px 3px 8px #000}.hero-side{font-size:.7rem;color:#b1aeaa;padding:5rem 0 0 1.5rem;line-height:1.7}.hero-side p{margin-top:10rem;color:#eee;font-weight:700;font-size:.65rem}.featured{max-width:1600px;margin:auto;padding:1rem 3.8% 3rem}.featured-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem}.featured-heading h2{font-size:clamp(2rem,4vw,4.5rem);letter-spacing:-.07em;margin:0 0 1.5rem}.featured-heading em{color:var(--orange);font-style:normal}.featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}.featured-card{min-width:0;border-left:1px solid #4c4c4c;padding:0 0 0 1rem;position:relative}.featured-card:first-child{border-left:0;padding-left:0}.featured-card a{display:flex;flex-direction:column;height:100%}.featured-card h3{text-transform:uppercase;font-size:clamp(1.25rem,2.1vw,2.25rem);line-height:1;letter-spacing:-.06em;margin:.5rem 0}.featured-card p{font-size:.78rem;color:#ccc;min-height:2.5rem;margin:.2rem 0 1rem}.project-number{color:var(--orange);font-size:1.1rem;font-weight:800}.project-number small{font-size:.85rem;color:#888;font-weight:400}.featured-card img{width:100%;height:clamp(170px,21vw,315px);object-fit:cover;background:#222;transition:transform .25s ease}.featured-card a:hover img{transform:translateY(-5px)}.project-action{font-size:.78rem;color:var(--orange);font-weight:800;margin-top:1rem}.advantage{border-block:1px solid #444;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;padding:2rem max(4%,calc((100vw - 1500px)/2));align-items:center}.advantage>div:not(:first-child){border-left:1px solid #444;padding-left:1.5rem}.advantage strong{font-size:.85rem}.advantage p{font-size:.82rem;color:#bbb;line-height:1.5}.advantage-count{display:flex;align-items:center;gap:1rem}.advantage-count strong{font-size:clamp(3rem,5vw,5.8rem);letter-spacing:-.09em}.advantage-count strong span{color:var(--orange)}.home-after h2 span{color:var(--orange)}
@media(max-width:1100px){.hero-live{grid-template-columns:45% 55%;padding:1.5rem 4%}.hero-side{display:none}.hero-art{min-height:500px}.hero-copy h1{font-size:clamp(4rem,9vw,7rem)}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 1.5rem}.featured-card:nth-child(odd){border-left:0;padding-left:0}.featured-card img{height:270px}.advantage{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.top{height:auto;min-height:80px;flex-wrap:wrap;padding:1rem 5%;gap:.7rem}.top .brand{margin-right:0}.nav{width:100%;justify-content:space-between;gap:.3rem;padding-top:.65rem;border-top:1px solid #333}.nav a{font-size:.75rem;padding:.4rem}.hero-live{display:flex;flex-direction:column;padding:2rem 5% 0;min-height:0}.hero-copy{padding:0}.kicker{font-size:.7rem;white-space:normal;line-height:1.6}.hero-copy h1{font-size:clamp(4rem,16vw,7.5rem);margin:1.7rem 0}.hero-intro{font-size:1.1rem}.hero-art{min-height:420px;margin-top:2rem}.hero-art>img{transform:scale(1.4)}.hero-art-label strong{font-size:clamp(4rem,15vw,7rem)}.hero-art-label span{font-size:clamp(1.3rem,5vw,2rem)}.featured{padding:3rem 5%}.featured-heading{display:block}.featured-grid{grid-template-columns:1fr 1fr;gap:2rem 1rem}.featured-card{padding-left:0;border-left:0}.featured-card img{height:clamp(140px,32vw,250px)}.featured-card h3{font-size:clamp(1.1rem,3.7vw,1.7rem)}.advantage{gap:1rem;padding:2rem 5%}.advantage>div:not(:first-child){padding-left:1rem}.gallery{gap:1rem}}
@media(max-width:430px){.hero-art{min-height:320px}.hero-copy h1{font-size:16vw}.featured-grid{grid-template-columns:1fr}.featured-card img{height:270px}.featured-card p{min-height:0}.advantage{grid-template-columns:1fr 1fr;gap:1.5rem}.advantage-count{display:block}.advantage-count strong{font-size:3.5rem}.advantage>div:not(:first-child){padding-left:.7rem}.advantage strong{font-size:.73rem}.advantage p{font-size:.72rem}.top .brand{font-size:.8rem}.nav a{font-size:.7rem}.container{padding:2rem 5% 4rem}.footer{gap:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.featured-card img{transition:none}}

/* V3 mobile navigation and overflow refinements */
html{overflow-x:clip;scroll-padding-top:1rem}
img{max-width:100%}
@media(max-width:720px){.top{align-items:center}.nav a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.hero-art{width:100%}.featured-card a{min-width:0}.footer a{min-height:44px;display:inline-flex;align-items:center}}
@media(max-width:360px){.hero-copy h1{font-size:15vw}.nav a{font-size:.65rem;padding:.35rem}.featured-heading h2{font-size:2rem}}

/* V4: accessibility and responsive finishing */
.skip-link{position:absolute;top:-100px;left:16px;z-index:1000;background:#ff743e;color:#111;padding:12px 16px;font-weight:800}.skip-link:focus{top:12px;color:#111}
main:focus{outline:none}
img{max-width:100%}
.featured-card a:focus-visible,.work-card a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
@media(max-width:720px){.top{position:relative}.nav{flex-wrap:nowrap}.nav a{flex:1;white-space:nowrap}.hero-art-label{right:3%;top:17%}.hero-art-label strong{font-size:clamp(3.2rem,13vw,6rem)}.hero-art-label span{font-size:clamp(1rem,4vw,1.8rem)}.hero-copy h1{overflow-wrap:normal}.detail-meta{overflow-wrap:anywhere}}
@media(max-width:380px){.nav a{font-size:.66rem;padding:.25rem}.top{padding-inline:4%}.hero-copy h1{font-size:15vw}.featured-card img{height:230px}.hero-art{min-height:290px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* V5: replace navigation-like slash-separated hero tagline with editorial copy. */
.hero-practice{max-width:330px;border-left:3px solid var(--orange);padding:.2rem 0 .2rem 1rem;margin:0 0 .7rem;pointer-events:none}
.hero-practice .practice-label{display:block;font-size:.63rem;font-weight:800;letter-spacing:.16em;color:var(--orange);margin-bottom:.55rem}
.hero-practice p{font-size:clamp(.85rem,1.04vw,1rem);line-height:1.5;color:#d0ccc7;margin:0}
.hero-practice strong{color:var(--white);font-weight:700}
@media(max-width:720px){.hero-practice{margin-bottom:1rem}.hero-practice p{font-size:.95rem}}

/* V6: full approved artwork on desktop. No cropping, zoom or distortion. */
.approved-desktop{position:relative;width:100%;max-width:1920px;margin:0 auto;line-height:0}
.approved-desktop>img{display:block;width:100%;height:auto;object-fit:contain}
.approved-link{position:absolute;display:block;z-index:2;border-radius:2px}
.approved-link:focus-visible{outline:3px solid #ff743e;outline-offset:2px;background:#ff743e33}
.approved-link:hover{background:#ff743e18}
.approved-home{left:4%;top:1%;width:18%;height:7%}
.approved-work{left:67%;top:1.5%;width:5%;height:6%}
.approved-about{left:73%;top:1.5%;width:6%;height:6%}
.approved-cv{left:79%;top:1.5%;width:5%;height:6%}
.approved-contact{left:84%;top:1.5%;width:8%;height:6%}
.approved-cta{left:5%;top:44.8%;width:16%;height:5.5%}
.approved-project{top:53%;height:33%;width:24%}
.approved-project-1{left:0}.approved-project-2{left:25%}.approved-project-3{left:50%}.approved-project-4{left:75%}
@media(min-width:721px){.home-page+.footer{margin-top:0}body:has(.approved-desktop)>.top{display:none}.home-page .hero-live,.home-page .featured,.home-page .advantage{display:none}.home-page .home-after{padding-top:4rem}}
@media(max-width:720px){.approved-desktop{display:none}}
/* V7: approved desktop artwork already contains the menu; hide the separate live header on homepage only. */
@media (min-width:721px) {
  #app:has(> .home-page > .approved-desktop) > .top { display:none; }
}
