/* Approved Approach / About palette and editorial rhythm. */
:root{--zen-ink:#f7f4ee;--zen-copper:#b88764;--zen-muted:#c5c9c0;--zen-charcoal:#20251f}
html{scroll-padding-top:28px}body{background:var(--zen-charcoal)}
:is(.cinematic-home,.cinematic-projects,.ac-page,.ar-page,.ci-page,.cj-page) h1,
:is(.cinematic-home,.cinematic-projects,.ac-page,.ar-page,.ci-page,.cj-page) h2{font-family:Georgia,serif;font-weight:400;letter-spacing:0;line-height:1.08}
:is(.cin-purpose-copy,.cin-about-copy,.cin-material-copy,.cin-closing-copy)>p{font:16px/1.75 Arial,sans-serif;color:var(--zen-muted)}
:is(.cinematic-home,.cinematic-projects) .cin-label{color:var(--zen-copper);letter-spacing:.2em;line-height:1.8}
.cinematic-home .cin-purpose.brand-world{background:radial-gradient(ellipse at 25% 25%,#30352a,#20251f 75%)}
.cinematic-home .cin-selected,.cinematic-projects .cin-project-group{background:linear-gradient(135deg,#272c24,#1d231e)}
.cinematic-home .cin-about{background:linear-gradient(135deg,#293026,#20251f)}
.cinematic-home .cin-materials{background:radial-gradient(ellipse at 20% 30%,#3a362b80,transparent 70%),#232920}
.cinematic-projects .cin-feature{background:#232820}
.cinematic-projects .cin-feature-copy{background:linear-gradient(135deg,#2c3227,#20251f)}
.cinematic-projects .cin-grid article{min-width:0}.cinematic-projects .cin-grid h3{line-height:1.2;letter-spacing:0}
.cj-page{--cj-copper:#b88764;background:#20251f}.cj-page .cj-body{background:radial-gradient(ellipse at 50% 35%,#30332b,#20251f 80%)}
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer){background:#1b211c;border-color:#b8876440}
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) a:has(>img[alt="ZEN Development"])>img{width:180px;max-width:100%;height:auto}
:is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])){color:var(--zen-ink);background:linear-gradient(180deg,#101b2166,transparent)}
:is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])) a:hover{color:#cfa584}
:is(a,button,summary,input,textarea):focus-visible{outline:2px solid #c99c78;outline-offset:5px}
.ci-page input,.ci-page textarea{font-size:16px}
.ci-page .contact-form button{min-height:44px}
.zen-skip-link{position:fixed;top:12px;left:12px;z-index:1000;transform:translateY(-160%);padding:14px 20px;background:#f7f4ee;color:#20251f;font:14px Arial,sans-serif}.zen-skip-link:focus{transform:none}
@media(max-width:760px){
 :is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"]))>details>nav,
 :is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"]))>nav[aria-label="Mobile navigation"]{background:#202820f5!important;color:#f7f4ee!important;backdrop-filter:blur(16px);padding:20px 6vw!important;border-top:1px solid #b8876440;display:grid!important;gap:4px!important;min-width:260px;box-shadow:0 18px 40px #0004;z-index:30}
 :is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"]))>details:not([open])>nav{display:none!important}
 nav[aria-label="Mobile navigation"] a{min-height:44px;display:flex;align-items:center;font:11px/1.5 Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}
 .zen-mobile-menu summary{list-style:none}.zen-mobile-menu summary::-webkit-details-marker{display:none}
 :is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav{flex-wrap:wrap;gap:18px}
 .cinematic-home .cin-card-meta{gap:14px}.cinematic-home .cin-card-meta h3{font-size:26px;line-height:1.2}
 .cinematic-projects .cin-project-hero h1{font-size:clamp(38px,10vw,49px)}
 .cinematic-projects .cin-grid-small{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cinematic-projects .cin-grid .cin-link{min-height:44px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{scroll-behavior:auto!important}.cin-about-photo{filter:none!important;clip-path:none!important}.cin-photo img{transform:none!important}}
/* The opening keeps the same ivory logo at every breakpoint. */
.dusk-opening-home header .logo-sketch{display:none!important;opacity:0!important}
.dusk-opening-home header .logo:not(.logo-sketch){opacity:1!important}
.ac-compare{display:none!important}
@media(max-width:760px){
 :is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"]))>details{position:static!important}
 :is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"]))>details>nav{position:absolute!important;top:96px!important;left:0!important;right:0!important;width:auto!important;transform:none!important}
 header nav[aria-label="Mobile navigation"] a{box-sizing:border-box!important;display:flex!important;align-items:center!important;min-height:44px!important;padding:8px 0!important;margin:0!important;border:0!important;font:11px/1.5 Arial,sans-serif!important;letter-spacing:.2em!important;color:#f7f4ee!important;text-transform:uppercase!important}
 header nav[aria-label="Mobile navigation"] a[aria-current="page"]{color:#caa17f!important}
}
@media(min-width:761px){
 .cj-hero:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#101b214d,transparent 58%)}
 .cj-hero-title,.cj-hero-note{z-index:2;color:#f7f4ee!important}
}
header nav[aria-label="Primary navigation"] a[aria-current="page"]{color:#caa17f!important}

/* Whole-site review: readable tablet headings and shared footer controls. */
@media(min-width:761px) and (max-width:1100px){
 .ci-conversation-copy h2{font-size:clamp(26px,3.25vw,36px)}
 .cj-materials h2{font-size:clamp(24px,3.25vw,36px)}
}
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav{font:10px/1.5 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a{display:inline-flex;align-items:center;min-height:44px}

.pj-switcher details nav a{box-sizing:border-box;min-height:44px;align-items:center}

/* Shared navigation: copper rollover with a left-to-right pencil-thin rule. */
:is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])) nav a,
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a{position:relative!important;text-decoration:none!important;transition:color .25s ease!important}
:is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])) nav a:after,
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a:after{content:''!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:1px!important;background:var(--zen-copper)!important;opacity:1!important;transform:scaleX(0)!important;transform-origin:left center!important;transition:transform .3s ease!important;pointer-events:none}
:is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])) nav a:is(:hover,:focus-visible),
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a:is(:hover,:focus-visible){color:var(--zen-copper)!important}
:is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])) nav a:is(:hover,:focus-visible):after,
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a:is(:hover,:focus-visible):after{transform:scaleX(1)!important}
/* Active-page styles must not change the footer link's baseline or hit area. */
.cinematic-projects .cin-footer nav a[href="/projects"],
.cj-page .cj-footer nav a[href="/projects"],
.ac-page .ac-footer nav a[href="/approach"],
.ar-page .ar-footer nav a[href="/about"],
.ci-page .ci-footer nav a[href="/contact"],
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a[aria-current="page"]{color:var(--zen-copper)!important}
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav{align-items:center!important}
:is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;border:0!important;line-height:1.5!important;transform:none!important;vertical-align:middle!important}
@media(prefers-reduced-motion:reduce){
 :is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])) nav a,
 :is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a,
 :is(header.zen-site-header,header:has(>nav[aria-label="Primary navigation"])) nav a:after,
 :is(.cin-footer,.ac-footer,.ar-footer,.ci-footer,.cj-footer) nav a:after{transition:none!important}
}
