:root{--paper:#f5f1e8;--ink:#19221f;--muted:#65716b;--line:#cfd2c7;--accent:#d65a3c;--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--sans)}body{margin:0;min-height:100vh}.site-header,main,footer{max-width:1180px;margin:auto;padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}.site-header{display:flex;justify-content:space-between;align-items:center;padding-top:28px}.wordmark{color:inherit;font-size:1.35rem;font-weight:800;letter-spacing:-.06em;text-decoration:none}.wordmark span{color:var(--accent)}.quiet-link,.card-link{color:inherit;text-decoration:none}.quiet-link{font-size:.82rem}.hero{padding-top:clamp(48px,7vw,80px);padding-bottom:clamp(64px,8vw,96px);max-width:850px}.eyebrow{color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero h1{font-size:clamp(4.3rem,10vw,9rem);letter-spacing:-.085em;line-height:.86;margin:26px 0 34px}.hero h1 em{font-family:var(--serif);font-weight:400;letter-spacing:-.09em}.lede{color:var(--muted);font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.45;max-width:620px}.projects{border-top:1px solid var(--line);padding-top:24px;padding-bottom:clamp(100px,14vw,170px)}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.section-head h2,.note h2{font-family:var(--serif);font-size:clamp(2rem,4vw,3.5rem);font-weight:400;letter-spacing:-.055em;margin:0}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:46px}.project-card{border:1px solid var(--line);color:inherit;display:flex;flex-direction:column;min-height:315px;padding:24px;text-decoration:none;transition:background .2s ease,transform .2s ease}.project-card:hover,.project-card:focus-visible{background:#ebe6da;transform:translateY(-4px)}.project-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.number{color:var(--accent);font-size:.78rem}.project-card h3{font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.06em;margin:55px 0 12px}.project-card p,.note p{color:var(--muted);line-height:1.55;margin:0}.card-link{font-size:.85rem;font-weight:700;margin-top:auto;padding-top:30px}.note{border-top:1px solid var(--line);max-width:760px;padding:24px 0 140px}.note h2{margin:22px 0 18px}.note p{font-size:1.15rem;max-width:530px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:28px;color:var(--muted);font-size:.75rem}@media(max-width:700px){.section-head{display:block}.section-head h2{margin-top:20px}.project-grid{grid-template-columns:1fr}.project-card{min-height:260px}.hero h1{font-size:clamp(4rem,18vw,7rem)}footer{display:block}footer span{display:block;margin-bottom:8px}}@media(prefers-reduced-motion:reduce){.project-card{transition:none}.project-card:hover,.project-card:focus-visible{transform:none}}


/* Portfolio expansion: keep the established Vamo palette and light footprint. */
html{scroll-behavior:smooth}a{color:inherit}a:hover{text-decoration-color:var(--accent)}
.skip-link{position:absolute;left:1rem;top:-5rem;background:var(--ink);color:#fff;padding:.8rem 1.2rem;z-index:20}
.skip-link:focus{top:1rem}.site-header{gap:20px}
.header-nav{display:flex;gap:clamp(12px,3vw,30px);font-size:.85rem;font-weight:600;flex-wrap:wrap}
.header-nav a{text-decoration:none}.header-nav a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.hero{padding-top:clamp(32px,5vw,64px);padding-bottom:clamp(48px,8vw,82px)}
.hero h1{font-size:clamp(3.9rem,9vw,7.6rem)}
.text-link{display:inline-block;font-weight:700;font-size:.9rem;margin-top:14px;text-underline-offset:4px}
.projects{padding-bottom:clamp(70px,10vw,120px)}
.section-intro{font-size:1.07rem;max-width:690px;line-height:1.65;color:var(--muted);margin:22px 0}
.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:36px}
.project-card{min-height:290px}
.project-card h3{margin:32px 0 12px}
.project-card h3 a{text-decoration:none}
.project-card h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.card-actions{display:flex;justify-content:space-between;align-items:end;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:25px;font-size:.82rem;font-weight:700}
.card-actions a{text-underline-offset:4px}
.project-card:hover,.project-card:focus-within{background:#ebe6da;transform:translateY(-3px)}
.note{margin:0;max-width:none;padding:30px 0 95px}
.note h2{max-width:690px}
.note p:last-child{max-width:650px}
.collaborate,.contact{border-top:1px solid var(--line);padding:44px 0 100px;scroll-margin-top:35px}
.collaborate h2,.contact h2{font-family:var(--serif);font-size:clamp(2.15rem,5vw,4.5rem);line-height:1.05;font-weight:400;letter-spacing:-.06em;max-width:840px;margin:20px 0}
.interest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:42px 0}
.interest-grid article{border-top:2px solid var(--ink);padding-top:18px}
.interest-grid h3{font-size:1.18rem;line-height:1.2;letter-spacing:-.03em}
.interest-grid p,.contact-copy p,.collab-prompt{color:var(--muted);line-height:1.6}
.collab-prompt{max-width:600px}
.button-link,.submit-button{display:inline-block;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:14px 20px;text-decoration:none;font:700 .9rem var(--sans);cursor:pointer;border-radius:2px}
.button-link:hover,.submit-button:hover{background:#2f4039}
.button-link:focus-visible,.submit-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.contact{display:grid;grid-template-columns:minmax(220px, .8fr) minmax(0,1.2fr);gap:clamp(30px,6vw,100px);padding-bottom:100px}
.contact-copy h2{font-size:clamp(2.2rem,4.3vw,3.8rem)}
.contact-alternative a{font-weight:700}
.contact-panel{border:1px solid var(--line);padding:clamp(19px,3vw,38px)}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.field{display:flex;flex-direction:column;margin-bottom:20px}
.field label{font-size:.86rem;font-weight:700;margin-bottom:8px}
.optional{color:var(--muted);font-weight:400}
.field input,.field textarea{background:#fffdf8;border:1px solid #a5aea6;border-radius:2px;color:var(--ink);padding:12px 14px;font:inherit;width:100%;max-width:100%;min-height:46px}
.field textarea{resize:vertical;min-height:132px}
.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.trap{position:absolute!important;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.cf-turnstile{margin-bottom:18px}
.submit-button:disabled{background:#a8aea8;color:#202b27;border-color:#a8aea8;cursor:not-allowed}
.form-unavailable{margin:0 0 14px;color:#815230;line-height:1.5}
.form-status{font-weight:600;min-height:1em}
.privacy-note{font-size:.78rem;line-height:1.5;color:var(--muted)}
.case-main{max-width:1050px}
.breadcrumb{display:flex;align-items:center;gap:10px;padding:44px 0 20px;font-size:.85rem;color:var(--muted)}
.breadcrumb a{text-underline-offset:4px}
.case-hero{padding:20px 0 78px}
.case-hero h1{font-size:clamp(3.4rem,8vw,7.2rem);line-height:.95;letter-spacing:-.075em;margin:18px 0 22px}
.case-lede{max-width:800px;font-size:clamp(1.15rem,2.1vw,1.75rem);line-height:1.5;color:var(--muted)}
.case-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:28px}
.project-status{border:1px solid var(--line);border-radius:80px;padding:9px 14px;font-size:.77rem;font-weight:700;letter-spacing:.02em}
.quiet-status{font-size:.85rem;color:var(--muted);font-style:italic}
.case-section{border-top:1px solid var(--line);padding:32px 0 72px}
.case-section h2{font-family:var(--serif);font-weight:400;letter-spacing:-.06em;font-size:clamp(2.1rem,4.8vw,4.3rem);margin:16px 0 25px;line-height:1.05;max-width:760px}
.prose-lead{font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.7;max-width:780px}
.prose-block{max-width:780px}.prose-block p{font-size:1.1rem;line-height:1.7;margin-bottom:20px}
.feature-list{list-style:none;margin:0;padding:0;max-width:780px}
.feature-list li{border-bottom:1px solid var(--line);padding:20px 0;font-size:1.11rem;line-height:1.55}
.feature-list li:before{content:"→";color:var(--accent);font-weight:700;display:inline-block;width:28px}
.decisions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.decision{padding:23px 0;border-top:1px solid var(--line)}
.decision h3{font-size:1.25rem;letter-spacing:-.04em;margin:0 0 12px}
.decision p{line-height:1.65;color:var(--muted);margin:0}
.shot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.shot{margin:0;min-width:0}.shot a{display:block;border:1px solid var(--line);background:#e8e2d4;max-height:470px;overflow:auto}
.shot img{display:block;width:100%;height:auto}.shot figcaption{font-size:.81rem;color:var(--muted);line-height:1.5;padding-top:10px}
.media-note{border:1px dashed var(--line);padding:30px;max-width:650px;color:var(--muted);line-height:1.6}
.case-end{padding:44px 0 105px}
.case-end>p{font-family:var(--serif);font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.05em;margin:0 0 25px}
.related{display:flex;flex-wrap:wrap;gap:15px;margin-top:38px;font-size:.9rem}
.related span{color:var(--muted)}
.simple-status{max-width:700px;margin:10vh auto;padding:24px;font:1.2rem/1.6 var(--sans)}
@media(max-width:760px){
 .header-nav{justify-content:flex-end}
 .project-grid,.interest-grid,.contact,.decisions,.shot-grid{grid-template-columns:1fr}
 .interest-grid{gap:8px}
 .contact{gap:20px}
 .contact-panel{padding:20px}
 .case-hero{padding-bottom:52px}
 .case-section{padding-bottom:55px}
 .shot a{max-height:600px}
}
@media(max-width:500px){
 .site-header{align-items:flex-start}
 .header-nav{font-size:.77rem;gap:12px}
 .form-row{grid-template-columns:1fr;gap:0}
 .hero h1{font-size:clamp(3.5rem,15.7vw,5.5rem)}
 .contact-panel{padding:17px}
 .button-link,.submit-button{min-height:44px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-card:hover,.project-card:focus-within{transform:none}}
