
/* Shared accessibility and responsive-shell corrections. */
:root{
  --paper:#F3EFE5;
  --ink:#17362D;
  --ink-2:#52675F;
  --hair:rgba(23,54,45,.18);
  --hair-soft:rgba(23,54,45,.09);
  --accent:#A58D65;
  --field:#17362D;
  --field-text:#F3EFE5;
  --field-muted:rgba(243,239,229,.76);
  --field-faint:rgba(243,239,229,.72);
  --field-hair:rgba(243,239,229,.20);
  --field-accent:#C6AA79;

  /* text-safe gold: --accent is for rules, marks and ornament only (2.8:1 on ivory) */
  --gold-ink:#7A6538;      /* 4.9:1 on ivory, 5.1:1 on warm card */
  --gold-light:#D2BC92;    /* 7.1:1 on Victorino Green */

  /* aliases used by the field-notes / hospitality templates */
  --p:#F3EFE5; --i:#17362D; --m:#52675F; --a:#A58D65; --h:rgba(23,54,45,.18);
  --char:#F7F3E9; --muted:#52675F; --faint:rgba(23,54,45,.70);
  --hair-2:rgba(23,54,45,.28); --signal:#7A6538; --signal-dim:rgba(122,101,56,.58);
}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}h1,h2,h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400}a{color:inherit}:focus-visible{outline:3px solid var(--gold-ink);outline-offset:4px}.skip-link{position:fixed;top:.5rem;left:.5rem;transform:translateY(-180%);z-index:1000;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:.75rem}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wrap{max-width:100%;margin:auto}.byline{font-size:.8rem;color:var(--muted)}.workshop-page .name{font-size:.85rem;font-weight:600;letter-spacing:.12em}.resource-body .dark,.resource-body .field-dark{background:var(--ink);color:var(--paper);padding:1.5rem}.resource-body .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1.5rem}.resource-body img{max-width:100%;height:auto}.resource-body .num,.resource-body .eyebrow{font-size:.72rem;letter-spacing:.1em}.resource-body .hairline{border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem}.resource-body .muted{color:var(--muted)}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Workshop: personal instrument collection, using the shared Victorino palette. */
.workshop-page{margin:0;font-family:'Instrument Sans',Arial,sans-serif;font-size:16px;line-height:1.65}
.workshop-page h1,.workshop-page h2,.workshop-page h3,.workshop-page p,.workshop-page figure{margin:0}
.workshop-page a{color:inherit;text-underline-offset:.25em}
.workshop-page img,.wk-home-teaser img{display:block;width:100%;height:auto}
.wk-container{width:min(100% - 3rem,1280px);margin-inline:auto}
.wk-header{border-bottom:1px solid var(--hair);position:relative}
.wk-header-row{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-block:1.5rem}
.wk-header .brand{display:flex;flex-direction:column;text-decoration:none;line-height:1.4}
.wk-header .role{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;margin-top:.2rem}
.wk-header nav{display:flex;gap:1.6rem;flex-wrap:wrap;font-size:.78rem}
.wk-header nav a{text-decoration:none;border-bottom:1px solid transparent;padding:.4rem 0}
.wk-header nav a:hover{border-color:currentColor}
.wk-hero{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:3rem;padding-block:5.5rem 4rem}
.wk-label{font-family:'JetBrains Mono',monospace;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);line-height:1.7}
.workshop-page h1{font-size:clamp(3.2rem,5.8vw,5.65rem);line-height:.99;margin:1.45rem 0 1.7rem;letter-spacing:-.035em}
.workshop-page h1 em,.workshop-page h2 em,.wk-home-teaser h3 em{font-weight:400}
.wk-intro .wk-lead{font-size:1.1rem;line-height:1.6;max-width:24rem;margin-bottom:1rem}
.wk-intro>p:not(.wk-label):not(.wk-lead){font-size:.93rem;color:var(--ink-2);max-width:29rem}
.wk-button{display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;background:var(--ink);color:var(--paper)!important;padding:1rem 1.2rem;min-height:48px;font-size:.72rem;letter-spacing:.045em;text-decoration:none;border:1px solid var(--ink);margin-top:1.8rem;transition:background .2s}
.wk-button:hover{background:#295445}
.wk-hero-art{min-width:0}
.wk-hero-art img{aspect-ratio:3/2;object-fit:contain;mix-blend-mode:multiply}
.wk-hero-art figcaption{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--hair);padding-top:1rem;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
.wk-edition{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-block:1px solid var(--hair);padding-block:1.1rem;font-family:'JetBrains Mono',monospace;font-size:.62rem;letter-spacing:.1em;color:var(--ink-2)}
.wk-edition span:first-child{color:var(--ink)}
.wk-collection{padding-block:5rem}
.wk-section-heading,.wk-two-col{display:grid;grid-template-columns:1fr 1fr;gap:5rem}
.wk-section-heading{align-items:end;margin-bottom:2rem}
.workshop-page h2{font-size:clamp(2.45rem,4.1vw,4rem);line-height:1.07;margin-top:.9rem}
.wk-section-heading>p{color:var(--ink-2);font-size:.92rem;max-width:29rem}
.wk-disclosure{font-size:.77rem;color:var(--ink-2);max-width:68rem;padding:1.2rem 0;border-bottom:1px solid var(--hair)}
.wk-filter-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-block:1.5rem}
.wk-filter-bar[hidden],.wk-card[hidden]{display:none}
.wk-filter-bar>div{display:flex;gap:.5rem;flex-wrap:wrap}
.wk-filter-bar button{font:inherit;font-size:.72rem;min-height:44px;padding:.65rem 1rem;border:1px solid var(--hair);background:transparent;color:var(--ink);cursor:pointer}
.wk-filter-bar button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.wk-filter-bar button:hover{border-color:var(--ink)}
.wk-filter-bar>p{font-family:'JetBrains Mono',monospace;font-size:.63rem;color:var(--ink-2)}
.wk-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:3rem;row-gap:3.5rem;margin-top:1rem;align-items:start}
.wk-card{min-width:0;scroll-margin-top:2rem;border-bottom:1px solid var(--hair);padding-bottom:1.4rem}
.wk-card:target{outline:2px solid var(--accent);outline-offset:10px}
.wk-card figure{background:#f0ebdf}
.wk-card figure img{aspect-ratio:3/2;object-fit:contain;mix-blend-mode:multiply}
.wk-card figcaption{padding:.35rem .9rem .7rem;font-family:'JetBrains Mono',monospace;font-size:.59rem;color:var(--ink-2);letter-spacing:.06em;text-transform:uppercase}
.wk-card-body{padding:1.5rem .15rem 0}
.wk-card-meta{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap;font-size:.66rem;color:var(--ink-2)}
.wk-badge{border:1px solid var(--hair);padding:.2rem .55rem;font-family:'JetBrains Mono',monospace;font-size:.58rem;text-transform:uppercase;letter-spacing:.035em}
.wk-card h3{font-size:2.65rem;letter-spacing:.015em;line-height:1.2;margin-top:.8rem}
.wk-card h3 a{text-decoration:none}
.wk-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px}
.wk-card .wk-tag{font-size:1rem;margin:.5rem 0 1rem;color:var(--ink)}
.wk-card-body>p:not(.wk-tag){font-size:.9rem;color:var(--ink-2);max-width:36rem}
.wk-card details{margin-top:1.3rem}
.wk-card summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;min-height:44px;font-size:.72rem;letter-spacing:.03em;list-style:none;border-top:1px solid var(--hair);padding:.75rem 0}
.wk-card summary::-webkit-details-marker{display:none}
.wk-card summary>span{font-size:1.4rem;transition:transform .2s}
.wk-card details[open] summary>span{transform:rotate(45deg)}
.wk-details{padding:.2rem 0 .7rem}
.wk-details h4{font-size:.64rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-ink);margin:1rem 0 .35rem}
.wk-details p{font-size:.84rem;color:var(--ink-2)}
.wk-text-link{display:inline-block;font-size:.8rem;margin-top:1.2rem}
.wk-wardrobe{padding-block:4.5rem;background:#e9e5da;border-block:1px solid var(--hair)}
.wk-two-col>div>p+p{margin-top:1rem}
.wk-two-col>div>p:not(.wk-label){color:var(--ink-2);font-size:.95rem}
.wk-two-col>div>h2+p{margin-top:1.5rem;max-width:30rem}
.wk-small{font-size:.71rem!important;color:var(--ink-2);line-height:1.6}
.wk-bench{padding-block:5rem}
.wk-process{list-style:none;padding:0;margin:0}
.wk-process li{display:flex;gap:1.2rem;border-bottom:1px solid var(--hair);padding:1.2rem 0}
.wk-process li>span{font-family:'JetBrains Mono',monospace;font-size:.65rem;color:var(--gold-ink);padding-top:.3rem}
.wk-process h3{font-size:1.65rem;line-height:1.2}
.wk-process p{font-size:.83rem;color:var(--ink-2);margin-top:.5rem}
.wk-note{border-left:2px solid var(--accent);margin-top:3rem;padding:1rem 1.5rem;background:#f7f3e9}
.wk-note p{font-size:.85rem;max-width:65rem;margin-top:.6rem}
.wk-contact{background:var(--ink);color:var(--paper);padding-block:4.5rem}
.wk-contact .wk-label{color:var(--gold-light)}
.wk-contact .wk-two-col>div>p:not(.wk-label){color:var(--paper);opacity:.9}
.wk-button-light{border-color:var(--paper);background:transparent}
.wk-button-light:hover{background:var(--paper);color:var(--ink)!important}
.wk-footer{padding-block:2rem;display:flex;gap:1.25rem;justify-content:space-between;flex-wrap:wrap;font-size:.7rem}
.wk-footer nav{display:flex;gap:1.4rem;flex-wrap:wrap}
.wk-footer>.wk-small{flex-basis:100%;max-width:62rem}
.wk-home-teaser{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;border-top:1px solid var(--hair);margin-top:3rem;padding-top:3rem;scroll-margin-top:6rem}
.wk-home-teaser h3{font-size:clamp(2.3rem,4vw,3.5rem);line-height:1.1;margin:1rem 0}
.wk-home-teaser p:not(.num){font-size:.92rem;line-height:1.7;color:var(--ink-2);margin-bottom:1.25rem}
.wk-home-teaser .wk-small{margin-top:1rem}
.wk-home-teaser img{mix-blend-mode:multiply;aspect-ratio:3/2;object-fit:contain}
@media(min-width:1500px){.wk-hero{padding-block:7rem 5rem}}
@media(max-width:1000px){.wk-hero{gap:1.5rem;padding-block:3.5rem}.wk-section-heading,.wk-two-col{gap:2.5rem}.wk-grid{column-gap:1.8rem}.wk-card h3{font-size:2.25rem}.wk-home-teaser{grid-template-columns:1fr}.wk-home-teaser> a{max-width:36rem}}
@media(max-width:700px){.wk-container{width:calc(100% - 2.5rem)}.wk-header-row{align-items:flex-start;flex-direction:column;gap:1rem;padding-block:1.1rem}.wk-header nav{gap:1.3rem;font-size:.7rem}.wk-hero{grid-template-columns:1fr;padding-block:2.6rem 2rem;gap:2rem}.workshop-page h1{font-size:clamp(3rem,12.5vw,4.7rem)}.wk-hero-art{margin-inline:-.3rem!important}.wk-edition{font-size:.56rem}.wk-edition span:last-child{display:none}.wk-section-heading,.wk-two-col,.wk-grid{grid-template-columns:1fr;gap:1.8rem}.wk-collection,.wk-bench{padding-block:3rem}.wk-grid{row-gap:2.5rem}.wk-section-heading>p{max-width:none}.wk-card-meta{font-size:.65rem}.wk-card h3{font-size:2.55rem}.wk-filter-bar>div{gap:.4rem}.wk-filter-bar button{padding:.6rem .75rem;font-size:.66rem}.wk-filter-bar>p{flex-basis:100%}.wk-wardrobe,.wk-contact{padding-block:3rem}.wk-note{padding:1rem}.wk-home-teaser{padding-top:2rem}.wk-footer{font-size:.7rem}.wk-hero-art figcaption{font-size:.57rem}}
@media(prefers-reduced-motion:reduce){.wk-button,.wk-card summary>span{transition:none}}
@media print{.wk-header,.wk-filter-bar,.wk-contact,.wk-footer nav{display:none!important}.wk-hero,.wk-grid,.wk-two-col,.wk-section-heading{display:block}.wk-card[hidden]{display:block}.wk-card{break-inside:avoid;margin-bottom:1rem}.wk-card figure{max-width:22rem}.wk-hero-art{max-width:28rem}.workshop-page h1{font-size:34pt}.wk-collection,.wk-bench{padding-block:1rem}.wk-container{width:100%}.wk-home-teaser{break-inside:avoid}}

