/* HMIMAR portfolio presentation. Content, routes and original media stay intact. */
:root{--paper:#f4f3ef;--paper-deep:#e9e8e1;--ink:#242922;--muted:#696e65;--accent:#b96a45;--accent-deep:#955036;--serif:var(--sans);--pad:clamp(1.25rem,5vw,6rem);--section:clamp(4.5rem,8vw,8rem);--coal:#f4f3ef;--off-black:#e9e8e1;--stone:#eeede8;--cream:#242922;--platinum:#494e46;--gold:#955036;--gold-light:#b96a45}
html{scroll-padding-top:7rem}
.site-header,.site-header.solid,.site-header.is-scrolled,.case-page .site-header{height:6.5rem;background:rgba(244,243,239,.97);color:var(--ink);border-color:transparent}
.case-page .site-header:not(.is-scrolled):not(:has(.main-nav.is-open)){color:var(--ink);border-color:transparent}
.site-header.is-scrolled{height:5.5rem;border-bottom-color:var(--line)}
.brand-mark{width:2.8rem;border:0;border-radius:7px;background:url('/logo.svg') center/contain no-repeat;font-size:0;flex-shrink:0}
.brand-copy strong{font-family:var(--sans);font-size:1.15rem;font-weight:700;letter-spacing:-.05em}.brand-copy small{font-size:.53rem;letter-spacing:.18em}
.main-nav a{font-size:.75rem;font-weight:500;letter-spacing:0;text-transform:none}.header-inner{gap:1.2rem}.main-nav{gap:clamp(1rem,2.5vw,2.6rem)}
.eyebrow{font-size:.65rem;font-weight:600;letter-spacing:.18em}.eyebrow::before{width:1.5rem}
.section-title,.display-title,.title{line-height:1.12;font-weight:400;letter-spacing:-.045em}.section-title em,.display-title em,.title em,.dhero h1 em,.cta h2 em{font-style:normal;font-weight:400}
.section-title{font-size:clamp(2.4rem,4vw,4.2rem)}
.portfolio-home .hero{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr;min-height:calc(100svh - 6.5rem);margin-top:6.5rem;background:#30382e;color:#fff}
.portfolio-home .hero-copy{width:100%;min-height:calc(100svh - 6.5rem);padding:clamp(3rem,7vw,7rem) var(--pad) 6.5rem;background:linear-gradient(90deg,rgba(13,20,16,.85),rgba(13,20,16,.5) 55%,rgba(13,20,16,.13));background-size:auto;justify-content:center}
.portfolio-home .hero-copy::after{display:none}.portfolio-home .hero .display-title{font-size:clamp(2.8rem,5.7vw,6.2rem);max-width:18ch;line-height:1.08}.portfolio-home .hero .display-title em{color:#fff}
.portfolio-home .hero .eyebrow{color:#f3d7c7}.portfolio-home .hero-intro{max-width:42rem;font-size:clamp(.87rem,1.05vw,1rem);line-height:1.9;color:#f0f0e9;margin-top:1.6rem}
.portfolio-home .hero-media{position:absolute;inset:0;z-index:-1;min-height:0}.portfolio-home .hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:none}.portfolio-home .hero-media::after{display:none}
.portfolio-home .hero-actions{margin-top:1.8rem;gap:1.3rem}.portfolio-home .hero .button{font-size:.64rem;text-transform:none;letter-spacing:.03em;min-height:3rem;padding:.65rem 1rem}.portfolio-home .hero .button.light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.portfolio-home .hero .button.outline{color:white;border-color:#ffffff88}.portfolio-home .hero .button.outline:hover{color:var(--ink);background:white}
.portfolio-home .hero-project-caption{position:absolute;z-index:4;bottom:1.5rem;inset-inline-start:var(--pad);color:#fff;font-size:.62rem;letter-spacing:.12em;text-decoration:none;border-top:1px solid #ffffff70;padding-top:.8rem;min-width:14rem}
.portfolio-home .hero-stamp{position:absolute;z-index:4;inset-inline-end:var(--pad);bottom:1.5rem;width:3rem;height:3rem;pointer-events:none;border-radius:7px}
.priority-services{padding-block:3.5rem}.priority-grid{border:0;border-block:1px solid var(--line)}.service-priority{padding:1.8rem 2rem}.service-priority:first-child{background:transparent;color:var(--ink)}.service-priority h2{font-size:1.45rem;font-weight:500;line-height:1.25}.service-priority p{font-size:.82rem}
.signal-bar{background:var(--paper-deep);color:var(--ink)}.signal-grid{padding-block:1rem}.signal strong{font-size:2.6rem;font-weight:400}.signal span{color:var(--muted)}.signal+.signal{border-color:var(--line)}
.work-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem 2rem}.project-feature,.project-feature:nth-child(even){display:flex;flex-direction:column;gap:1.3rem;align-items:stretch}.project-feature:nth-child(even) .project-visual{order:0}.project-visual::before{padding-top:66%}.project-number{width:2rem;top:1rem;left:1rem;font-size:.7rem}.project-copy{padding:0}.project-copy h3{font-size:clamp(1.7rem,2.5vw,2.7rem);line-height:1.2;letter-spacing:-.04em}.project-copy h3 br{display:none}.project-copy h3 br::after{content:' '}.project-copy p{font-size:.86rem;line-height:1.8;margin:1rem 0;max-width:none}.project-copy .project-kicker{font-size:.6rem;margin:0 0 .7rem}.project-meta{margin:1.3rem 0}.project-meta strong{font-size:.8rem}.project-feature:last-child{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:3rem}.project-feature:last-child .project-visual::before{padding-top:68%}
.project-visual::after,.case-gallery figure:not(.sketch)::after{content:'';position:absolute;z-index:3;inset-inline-end:1rem;top:1rem;width:2.3rem;height:2.3rem;background:url('/logo.svg') center/contain no-repeat;opacity:.9;pointer-events:none}
.concept-archive{padding:0 var(--pad) var(--section);max-width:1600px;margin:auto}.concept-archive figure{margin:0;background:#111310}.concept-archive img{width:100%;max-height:580px;object-fit:contain}.concept-archive figcaption{display:flex;justify-content:space-between;padding:1rem 1.5rem;color:#e4e5db;font-size:.65rem;letter-spacing:.12em}
.manifesto-inner{min-height:18rem}.manifesto blockquote{font-size:clamp(2.3rem,4.5vw,5rem);line-height:1.2;max-width:23ch}.manifesto blockquote em{font-style:normal}.manifesto-index{font-size:22rem;opacity:.6}
.expertise-grid{margin-top:3rem}.expertise-row h3{font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.25}.expertise-row p{font-size:.85rem}.expertise-row{padding-block:1.7rem}.portrait::after{display:none}.studio-copy .section-title{max-width:17ch}.signature strong{font-size:1.15rem}.studio-copy .lede{font-size:1rem;line-height:1.9}
.process-grid{margin-top:3rem}.process-step{min-height:15rem}.process-step h3{font-size:1.35rem;margin-top:2.5rem}.contact{background:#292f29}.contact .section-title{max-width:12ch}.contact .section-title em{color:#d6a082}.contact-intro,.contact-details small,.field label,.consent{color:#d2d5cc}.contact .button.light{color:#242922}
.site-footer{background:var(--paper)}.case-hero{margin-top:6.5rem;min-height:calc(100svh - 6.5rem)}.case-hero h1{font-size:clamp(3rem,7vw,7rem);line-height:1.08}.case-hero-content{padding-top:5rem}.case-fact strong{font-size:1.2rem;line-height:1.4}.next-project{background:#292f29}.next-project strong{font-size:clamp(2.4rem,5vw,5rem);line-height:1.15}
.dhero{padding-top:10rem}.dhero h1{font-size:clamp(2.8rem,6vw,6rem);line-height:1.1}.dhero h1 em{color:#e1b699}.dhero .dcrumb{color:#e1b699}.title em{color:var(--accent-deep)}.cta h2{line-height:1.15}.cta h2 em{color:#e1b699}.feat h3,.step h4{font-weight:500;line-height:1.3}.team-name{line-height:1.35}.team-role{color:#e1b699}.team-info{padding-top:50px}
html[dir='rtl'] .portfolio-home .hero-copy{background:linear-gradient(270deg,rgba(13,20,16,.85),rgba(13,20,16,.5) 55%,rgba(13,20,16,.13))}html[dir='rtl'] .portfolio-home .display-title{letter-spacing:0;line-height:1.3}html[dir='rtl'] .project-feature:nth-child(even) .project-visual{order:0}
@media(max-width:1050px){.main-nav a{font-size:2.2rem}.portfolio-home .hero-copy{padding-top:4rem;padding-bottom:7rem}.portfolio-home .hero .display-title{font-size:clamp(2.8rem,6.6vw,4.8rem)}.work-list{gap:3rem 1.5rem}.project-feature:last-child{gap:1.5rem}.expertise-row{grid-template-columns:2rem minmax(10rem,.8fr) minmax(12rem,1.2fr) auto}}
@media(max-width:740px){html{scroll-padding-top:6rem}.site-header,.site-header.solid,.site-header.is-scrolled,.case-page .site-header{height:5.2rem}.brand-copy strong{font-size:1.05rem}.brand-mark{width:2.4rem}.brand-copy small{display:block;font-size:.46rem}.portfolio-home .hero{margin-top:5.2rem;min-height:calc(100svh - 5.2rem)}.portfolio-home .hero-copy{min-height:calc(100svh - 5.2rem);padding:3rem var(--pad) 6.5rem;background:linear-gradient(90deg,#101a15d9,#101a1566)}.portfolio-home .hero .display-title{font-size:clamp(2.5rem,8.5vw,4rem);max-width:19ch}.portfolio-home .hero-intro{font-size:.82rem;line-height:1.85;margin-top:1.2rem}.portfolio-home .hero .eyebrow{font-size:.55rem;letter-spacing:.08em;gap:.5rem}.portfolio-home .hero .eyebrow::before{width:1rem}.portfolio-home .hero-actions{gap:.7rem}.portfolio-home .hero .button{font-size:.6rem;padding:.7rem}.hero-project-caption{font-size:.55rem!important}.priority-grid{grid-template-columns:1fr}.service-priority{padding:1.6rem 0}.priority-services{padding-block:2.5rem}.work-list{grid-template-columns:1fr;gap:3rem}.project-feature:last-child{display:flex;gap:1.3rem}.project-copy h3{font-size:1.9rem}.project-meta{margin:1rem 0}.project-feature:last-child .project-visual::before{padding-top:66%}.section-head{margin-bottom:2.5rem}.concept-archive figcaption{font-size:.55rem;gap:1rem;padding:1rem}.manifesto-inner{min-height:14rem}.manifesto-index{font-size:15rem}.expertise-row{grid-template-columns:1.5rem 1fr auto}.expertise-row p{grid-column:2/-1}.portrait{margin-right:0}.signal:nth-child(3),.signal:nth-child(4){border-top-color:var(--line)}.case-hero{margin-top:5.2rem;min-height:75svh}.case-hero h1{font-size:clamp(2.8rem,11vw,4.5rem)}.case-fact{padding:1.5rem}.dhero{padding-top:8rem}.dhero h1{font-size:clamp(2.6rem,11vw,4rem)}.site-footer .brand-copy small{display:block}.portfolio-home .hero-stamp{width:2.5rem;height:2.5rem}}
/* Keep service-page copy above its positioned illustration. */
.dhero > :not(.dhero-bg){position:relative;z-index:1}.dhero-bg{z-index:0}.portfolio-home .hero-stamp{top:1.5rem;bottom:auto}.case-hero::before{content:'';position:absolute;z-index:3;top:1.5rem;inset-inline-end:var(--pad);width:3rem;height:3rem;background:url('/logo.svg') center/contain no-repeat;pointer-events:none}
/* Full viewport navigation, including browsers where backdrop-filter contains fixed children. */
@media(max-width:1050px){.site-header,.site-header.is-scrolled,.site-header.solid{backdrop-filter:none}.main-nav{inset:0 0 auto;height:100svh;overflow-y:auto;justify-content:flex-start;padding:8rem var(--pad) 2rem;gap:1.15rem}.header-inner>.brand,.header-actions{position:relative;z-index:1}.main-nav a{font-size:2rem;line-height:1.4}}
