:root{--ink:#18272b;--ink2:#223338;--paper:#f3f0e8;--paper2:#e7e2d7;--gold:#d3a84f;--gold-light:#efcf86;--wood:#956f4f;--line:#c9c6bd;--white:#fff;--font-head:'Barlow Condensed',Impact,sans-serif;--font-body:'DM Sans',Arial,sans-serif;--font-mono:'IBM Plex Mono',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.55}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}::selection{background:var(--gold);color:var(--ink)}.wrap{width:min(100% - 32px,1360px);margin-inline:auto}.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--gold);padding:10px}.skip:focus{top:10px}.section{padding-block:78px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--font-head);font-weight:700;line-height:.91;letter-spacing:-.022em;text-transform:uppercase}h1 em,h2 em{font-style:normal;color:var(--gold)}h2{font-size:clamp(3.8rem,13vw,7rem)}.eyebrow,.section-index,.hero-rule,.hero-bottom,.hero-measure,.work-card-info>span,.form-top,.selected-work small,.message-preview small,.form-foot,.footer small{font:500 .7rem/1.5 var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid transparent;padding:15px 18px;min-height:54px;font-weight:700;line-height:1.1;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:1.3em}.button-gold{background:var(--gold);color:var(--ink)}.button-gold:hover{background:var(--gold-light)}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#fff}.under-link,.text-link{font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px}.under-link span,.text-link span{padding-left:14px}.under-link:hover,.text-link:hover{color:var(--wood)}

/* Navigation */
.site-header{position:relative;z-index:20;background:var(--paper);border-bottom:1px solid var(--ink)}.header-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:8px;line-height:1;color:var(--ink)}.brand-ev{font-family:var(--font-head);font-size:2.3rem;font-weight:800;letter-spacing:-.09em}.brand-slash{color:var(--gold);padding-left:2px}.brand-text{font-family:var(--font-head);font-size:.82rem;font-weight:700;letter-spacing:.075em;line-height:.84}.brand-text small{font-family:var(--font-mono);font-size:.58rem;color:var(--wood)}.menu-button{width:46px;height:46px;border:1px solid var(--ink);background:transparent;display:grid;place-content:center;gap:5px}.menu-button span{width:21px;height:2px;background:var(--ink);display:block;transition:transform .2s,opacity .2s}.menu-button[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-button[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:18px 16px 24px;border-bottom:1px solid var(--ink);box-shadow:0 12px 20px #101b2030;flex-direction:column;gap:4px}.main-nav.open{display:flex}.main-nav a{padding:13px 10px;font-weight:700}.main-nav a:hover{color:var(--wood)}.main-nav .nav-contact{background:var(--ink);color:var(--paper);display:flex;justify-content:space-between}.main-nav .nav-contact:hover{background:var(--gold);color:var(--ink)}

/* Hero: a page from the workshop's project archive */
.hero{min-height:calc(100dvh - 68px);background:var(--ink);color:var(--paper);overflow:hidden}.hero-grid{padding-block:25px 20px;min-height:inherit;display:grid;grid-template-rows:auto auto;gap:24px}.hero-copy{display:flex;flex-direction:column}.hero-rule{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #8a9693;border-bottom:1px solid #8a9693;padding-block:7px;color:var(--gold-light);font-size:.58rem}.hero-rule span:last-child{text-align:right}.hero h1{font-size:clamp(3.45rem,13vw,8.8rem);margin:26px 0 20px;max-width:850px}.hero h1 em{display:block}.hero-lead{max-width:460px;color:#d8ddd7;font-size:1rem;line-height:1.55}.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:24px}.hero-actions .button{flex:0 0 auto}.text-link{white-space:nowrap}.hero-bottom{display:none;margin-top:auto;justify-content:space-between;gap:14px;border-top:1px solid #899492;padding-top:12px;color:#b4c0bc}.hero-bottom-number{color:var(--gold)}.hero-media{min-height:280px;position:relative;display:grid;grid-template-columns:1fr 36%;gap:9px;padding-bottom:25px}.hero-media figure{position:relative;overflow:hidden;background:#243236}.hero-photo img,.hero-video video{width:100%;height:100%;object-fit:cover}.hero-photo img{object-position:50% 45%}.hero-video video{object-position:53% 50%}.hero-media figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:end;gap:8px;background:linear-gradient(transparent,#101c1dcc);padding:28px 9px 8px;color:#fff;font:600 .54rem/1.2 var(--font-mono);letter-spacing:.05em}.hero-video figcaption{display:block;line-height:1.5}.hero-video figcaption span{display:block;font-weight:400;color:#e8ddc4}.hero-measure{position:absolute;bottom:0;right:0;color:var(--gold);font-size:.55rem;white-space:nowrap}.material-strip{background:var(--gold);color:var(--ink);overflow:hidden;white-space:nowrap;font:700 .7rem/1 var(--font-mono);letter-spacing:.08em}.material-strip div{width:max-content;animation:marquee 24s linear infinite;padding:13px 0}.material-strip span{margin:0 24px}@keyframes marquee{to{transform:translateX(-50%)}}

/* Intro */
.intro{background:var(--paper)}.intro-grid{display:grid;gap:34px}.section-index{display:flex;align-items:center;gap:16px;color:var(--wood);white-space:nowrap}.index-line{width:100%;height:1px;background:var(--line)}.intro-main p{font-size:1.08rem;max-width:590px;margin:24px 0 28px;color:#4f5b5a}.intro-photo{position:relative;aspect-ratio:1.05;background:#b0a48d}.intro-photo .intro-work{width:100%;height:100%;object-fit:cover}.intro-photo .intro-mark{position:absolute;left:-18px;bottom:14px;width:78px;height:78px;object-fit:cover;border:4px solid var(--paper);box-shadow:0 5px 20px #0005}.intro-photo>span{position:absolute;right:0;bottom:0;background:var(--gold);padding:8px 10px;font:600 .6rem var(--font-mono);letter-spacing:.04em}

/* Real portfolio */
.work{background:var(--paper2)}.work-head{display:grid;gap:25px;margin-bottom:34px}.work-head .eyebrow{margin-bottom:18px;color:var(--wood)}.work-head>p{max-width:390px;color:#475658;align-self:end}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.work-card{min-width:0;position:relative;overflow:hidden;background:#d0c9bd;aspect-ratio:.82}.work-card-large{grid-column:span 2;aspect-ratio:1.2}.work-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.work-card:hover img{transform:scale(1.04)}.work-card::after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,#0d1719db)}.work-card-info{position:absolute;z-index:1;bottom:0;left:0;right:0;color:#fff;padding:14px}.work-card-info>span{color:var(--gold-light);font-size:.55rem}.work-card h3{font-size:clamp(1.75rem,6vw,3rem);line-height:1.05;margin:5px 0 13px}.work-card button{background:transparent;color:#fff;border:0;border-bottom:1px solid #fff;padding:0 0 3px;text-align:left;font-size:.73rem;font-weight:700;line-height:1.2}.work-card button:hover{color:var(--gold-light);border-color:var(--gold-light)}.work-card button span{padding-left:4px}.work-note{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;margin-top:24px;border-top:1px solid #b2afa6;padding-top:16px;color:#53605f;font-size:.85rem}.work-note>span{font-size:1.3rem;color:var(--wood)}.work-note a{grid-column:2;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:4px}

/* Project brief */
.brief{background:var(--ink);color:var(--paper)}.brief-grid{display:grid;gap:30px}.brief-intro .eyebrow{color:var(--gold-light);margin-bottom:20px}.brief-intro>p:not(.eyebrow){max-width:420px;color:#c9d0cb;margin-top:20px}.brief-lines{display:grid;gap:0;margin-top:32px;border-top:1px solid #5a6868;max-width:380px}.brief-lines span{padding:10px 0;border-bottom:1px solid #5a6868;color:var(--gold);font:500 .72rem var(--font-mono)}.brief-form{background:var(--paper);color:var(--ink);padding:18px;box-shadow:10px 10px 0 #0d1b1e}.form-top{display:flex;justify-content:space-between;gap:10px;border-bottom:2px solid var(--ink);padding-bottom:10px;margin-bottom:16px;font-size:.65rem}.selected-work{display:grid;grid-template-columns:105px 1fr;gap:14px;align-items:center;background:#e4ded2;margin-bottom:22px}.selected-work img{width:105px;height:105px;object-fit:cover}.selected-work div{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding-right:8px}.selected-work small{color:var(--wood);font-size:.55rem}.selected-work strong{font-family:var(--font-head);font-size:1.7rem;line-height:1;text-transform:uppercase}.selected-work a{font-size:.68rem;font-weight:700;text-decoration:underline}.brief-form>label,.brief-form legend{display:block;font-weight:700;font-size:.86rem;margin:17px 0 7px}.brief-form select,.brief-form textarea,.brief-form input{border:1px solid #acb5b2;background:#fff;color:var(--ink);width:100%;border-radius:0;padding:12px;min-height:47px}.brief-form select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%2318272b' stroke-width='2' d='m4 7 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 13px center;background-size:17px;padding-right:38px}.brief-form textarea{resize:vertical;min-height:86px}.brief-form fieldset{margin:0;padding:0;border:0}.brief-form legend small{font-weight:400;color:#6a7775}.measure-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.measure-fields label{font-size:.65rem;font-weight:700}.measure-fields label span{float:right;color:#697472;font-weight:400}.measure-fields input{margin-top:5px;padding:8px;font-size:.8rem;min-width:0}.message-preview{margin:22px 0 14px;border-left:3px solid var(--gold);background:#e9e4d9;padding:13px 14px}.message-preview small{color:#616e6c;font-size:.57rem}.message-preview p{white-space:pre-line;font-size:.82rem;margin-top:7px;max-height:145px;overflow:auto}.form-submit{width:100%;text-align:left}.form-foot{margin-top:12px;font-size:.58rem;letter-spacing:0;text-transform:none;color:#62706d}

/* Contact and footer */
.contact{background:var(--gold);color:var(--ink)}.contact-grid{display:grid;gap:30px}.contact .eyebrow{margin-bottom:20px}.contact h2 em{color:var(--paper)}.contact p:not(.eyebrow){margin-top:18px}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.contact-actions>a:not(.button){font-weight:700;border-bottom:1px solid currentColor}.contact-actions>span{font:600 .75rem var(--font-mono)}.footer{background:#101b1d;color:#e8e6df;padding:48px 0 28px}.footer-grid{display:grid;gap:28px}.brand-footer{color:var(--paper);justify-self:start}.footer p{color:#aab7b1;font-size:.85rem}.footer-grid>div{display:flex;flex-wrap:wrap;gap:16px;font-size:.8rem;font-weight:700}.footer-grid>div a:hover,.footer small a:hover{color:var(--gold)}.footer small{border-top:1px solid #52605e;padding-top:15px;color:#9ca9a5;text-transform:none;letter-spacing:0;font-size:.62rem}.footer small a{text-decoration:underline}.wa-float{position:fixed;right:14px;bottom:14px;z-index:40;display:flex;align-items:center;gap:7px;background:#1c8d5a;color:#fff;padding:12px 15px;box-shadow:0 5px 20px #0004;font-size:.82rem;font-weight:700;line-height:1}.wa-float:hover{background:#147347}.wa-float svg{width:19px;height:19px}
.wa-float span{display:none}

@media(min-width:600px){.wa-float span{display:inline}.wrap{width:min(100% - 48px,1360px)}.hero-grid{gap:35px}.hero-rule{font-size:.67rem}.hero-media{min-height:350px}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.work-card-large{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.work-card{aspect-ratio:.8}.work-card-info{padding:18px}.work-card h3{font-size:clamp(1.7rem,3vw,2.6rem)}.work-card-large h3{font-size:clamp(2.2rem,4vw,4rem)}.brief-form{padding:28px}.selected-work{grid-template-columns:125px 1fr}.selected-work img{width:125px;height:125px}.selected-work strong{font-size:2.1rem}.work-note{grid-template-columns:auto 1fr auto}.work-note a{grid-column:auto}}
@media(min-width:900px){.section{padding-block:115px}.menu-button{display:none}.main-nav{display:flex;position:static;flex-direction:row;align-items:center;gap:18px;background:none;padding:0;border:0;box-shadow:none}.main-nav a{font-size:.84rem;padding:8px 2px}.main-nav .nav-contact{padding:11px 16px;gap:25px}.header-inner{min-height:76px}.hero{min-height:calc(100dvh - 76px)}.hero-grid{grid-template-columns:minmax(0,49%) minmax(0,51%);grid-template-rows:1fr;gap:28px;padding-block:32px}.hero h1{font-size:clamp(4.5rem,7.3vw,8.8rem);margin-top:auto;margin-bottom:32px}.hero-lead{font-size:1.1rem}.hero-actions{margin-top:33px}.hero-bottom{display:flex;margin-top:auto}.hero-media{min-height:0;grid-template-columns:66% 34%;gap:10px;padding-bottom:25px}.hero-media figcaption{font-size:.62rem;padding:35px 14px 12px}.hero-measure{font-size:.64rem}.intro-grid{grid-template-columns:145px minmax(0,1fr) minmax(0,36%);gap:35px;align-items:center}.section-index{align-self:start;display:block}.index-line{display:block;width:1px;height:160px;margin:18px 0 0 4px}.intro-main{align-self:center}.intro-photo{aspect-ratio:.84}.work-head{grid-template-columns:1fr auto;align-items:end}.brief-grid{grid-template-columns:1fr minmax(0,530px);gap:clamp(45px,9vw,160px)}.brief-intro{position:sticky;top:60px;align-self:start}.contact-grid{grid-template-columns:1fr auto;align-items:end}.contact-actions{align-items:flex-end}.footer-grid{grid-template-columns:1fr 1fr auto}.footer small{grid-column:1/-1}}
@media(min-width:1180px){.hero-grid{grid-template-columns:minmax(0,48%) minmax(0,52%);gap:42px}.hero h1{font-size:clamp(5rem,7vw,8.8rem)}.hero-photo img{object-position:50% 50%}.hero-media{grid-template-columns:65% 35%}.hero-video figcaption{font-size:.58rem}.work-card h3{font-size:2.6rem}.work-card-large h3{font-size:4rem}}
@media(max-width:380px){.hero h1{font-size:3.1rem}.hero-lead{font-size:.91rem}.hero-actions{gap:14px}.hero-media{min-height:220px}.hero-actions .button{padding:13px 12px;font-size:.82rem}.text-link{font-size:.8rem}.hero-rule{font-size:.53rem}.work-card h3{font-size:1.6rem}.work-card-info{padding:10px}.work-card button{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.material-strip div{animation:none}.work-card img,.button{transition:none}.hero-video video{display:none}.hero-video{background:url('media/poster.jpg') center/cover}}
