@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap');
:root{--cream:#fff;--ink:#102856;--dark:#102856;--sand:#eaf0ff;--muted:#425477;--line:#dbe3f1;--citron:#e2f45a}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font:16px 'DM Sans',system-ui,sans-serif}a{color:inherit}.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}.top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px 0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700}.mark{display:grid;place-items:center;border:1px solid var(--ink);width:42px;height:42px;font:24px 'Instrument Serif',Georgia,serif}.brand small{display:block;font-size:9px;letter-spacing:.14em;margin-top:3px}.top nav{display:flex;gap:23px;font-size:14px}.top nav a{text-decoration:none}.top nav a:hover{text-decoration:underline}.hero{min-height:450px;position:relative;overflow:hidden;background:var(--dark);color:var(--cream);display:flex;align-items:center;padding:58px clamp(24px,6vw,78px)}.hero>div:first-child{position:relative;z-index:1}.eyebrow{letter-spacing:.15em;font-size:11px;font-weight:700;margin:0 0 12px}.hero .eyebrow{color:var(--citron)}h1,h2,h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(54px,8vw,104px);line-height:.91;letter-spacing:-.025em}h2{font-size:clamp(38px,5vw,57px);line-height:1}h3{font-size:33px;line-height:1.05}.intro{max-width:370px;color:#e7edff;line-height:1.5;margin:20px 0 26px}.button{display:inline-flex;align-items:center;gap:16px;justify-content:center;text-decoration:none;font-size:14px;font-weight:700;padding:12px 17px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:3px}.light{color:var(--ink);background:var(--sand);border-color:var(--sand)}.outline{background:transparent;color:var(--ink)}.button:hover{filter:brightness(.89)}a:focus-visible,select:focus-visible{outline:3px solid #4269c8;outline-offset:3px}.inventory{padding:55px 0}.empty{margin-top:22px;border:1px solid var(--line);padding:28px;background:#f6f8ff}.empty p,.contact p,.card p{color:var(--muted);line-height:1.55}.empty .button{margin-top:4px}.contact{background:var(--sand);padding:34px;display:flex;align-items:center;justify-content:space-between;gap:22px}.contact p:last-child{margin-bottom:0}.contactlinks{display:flex;gap:8px;flex-wrap:wrap}footer{padding:24px 0;color:var(--muted);font-size:13px}#filters{display:flex;gap:12px;margin:20px 0;flex-wrap:wrap}#filters[hidden]{display:none}label{display:grid;gap:4px;font-size:13px;font-weight:700}select{font:inherit;padding:9px;background:#f6f8ff;color:var(--ink);border:1px solid var(--line)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}.card{background:#f6f8ff;border:1px solid var(--line);min-width:0}.card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.cardbody{padding:20px}.card .contactlinks{margin-top:16px}@media(max-width:660px){.wrap{width:calc(100% - 28px)}.top nav{gap:12px}.hero{min-height:380px}.contact{align-items:start;flex-direction:column;padding:23px}.inventory{padding:38px 0}.empty{padding:20px}}

.top{padding-block:20px}.mark{background:var(--citron);border:0;border-radius:8px;font-weight:700}
.hero{display:grid;grid-template-columns:1.2fr minmax(0, .85fr);gap:clamp(24px,5vw,68px);padding:clamp(25px,5vw,64px);background:linear-gradient(130deg,#102856 25%,#1b438b);border-radius:18px}
h1{font-size:clamp(48px,7vw,96px)}h1 em{color:var(--citron);font-weight:400}
.light{background:var(--citron);border-color:var(--citron)}.hero-contact{background:transparent;border-color:#91a5d3}
.portrait{margin:0;position:relative;isolation:isolate;border-radius:12px;overflow:hidden;background:#edf2f8;min-width:0}
.portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 20%}
.portrait figcaption{position:absolute;inset:auto 12px 12px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;color:var(--ink);border-left:5px solid var(--citron);padding:10px 12px;border-radius:4px}
.portrait figcaption span{font-size:12px;color:var(--muted)}
.inventory .eyebrow,.contact .eyebrow{color:#234e9c}
.empty{border-radius:10px;border-left:5px solid var(--citron)}
.contact{border-radius:14px;border:1px solid var(--line)}
@media(max-width:720px){.hero{grid-template-columns:1fr;gap:26px}.portrait{width:100%;max-width:500px}.portrait img{aspect-ratio:5/4;object-position:center 15%}.intro{margin:16px 0 20px}}
@media(max-width:370px){.top{flex-wrap:wrap}}
