@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Pacifico&display=swap');
/* Shared typography follows Driketa style.css, Unified typography section. */
:root{color-scheme:light;--ink:#282923;--cream:#f8f6f0;--line:#292a2529;color:var(--ink);background:var(--cream);font-family:'Montserrat',sans-serif}
*{box-sizing:border-box}
body{margin:0;font-family:'Montserrat',sans-serif;font-size:15px;font-weight:400;line-height:1.75}
button,input,select,textarea{font-family:inherit;font-size:15px;font-weight:400;line-height:1.5}
header,main,footer{width:min(1120px,calc(100% - 12vw));margin:auto}
header{min-height:106px;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}
a{color:inherit;text-underline-offset:4px}
nav{display:flex;flex-wrap:wrap;gap:28px;font-size:10px;font-weight:500;line-height:1.5;letter-spacing:.16em;text-transform:uppercase}
nav a{text-decoration:none;padding:8px 0;border-bottom:1px solid transparent}nav a:hover,nav a[aria-current]{border-bottom-color:var(--ink)}
.brand{font-size:27px;font-weight:400;line-height:1;letter-spacing:.28em;text-decoration:none}
.brand:has(.brand-mark){display:flex;flex-direction:column;align-items:center;min-width:200px}
.brand-mark{display:flex;flex-direction:column;align-items:center;gap:6px}
.brand-mark strong{font-size:27px;font-weight:400;letter-spacing:.28em;line-height:1;padding-left:.28em}
.brand .studio-script{font-size:11px;font-weight:400;letter-spacing:.48em;line-height:1;text-transform:uppercase;padding-left:.48em}
.brand em{font-family:'Pacifico','Segoe Script',cursive;font-size:21px;font-style:normal;font-weight:400;letter-spacing:0;line-height:1.5;margin-top:6px;-webkit-text-stroke:.45px var(--cream)}
@media(max-width:650px){.brand:has(.brand-mark){align-items:flex-start;min-width:0}.brand-mark strong{font-size:23px}.brand em{font-size:18px}}
main{padding:64px 0 80px}
h1,h2,h3,h4,h5,h6{font-family:'Montserrat',sans-serif;font-style:normal;font-weight:300;text-transform:none}
h1{font-size:clamp(40px,5.2vw,68px);line-height:1.04;letter-spacing:-.025em;margin:12px 0 32px}
h2{font-size:clamp(26px,2.8vw,38px);line-height:1.15;letter-spacing:.025em;margin:36px 0 20px}
h3{font-size:24px;line-height:1.25}
p,li,dd{font-size:15px;font-weight:400;line-height:1.8;letter-spacing:0;text-transform:none}
small,dt{font-size:10px;font-weight:500;line-height:1.5;letter-spacing:.16em;text-transform:uppercase}
strong,b{font-weight:500}
.notice{padding:20px 24px;background:#e9e3d6;border-left:2px solid #776951;margin-bottom:36px}
.grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6vw}
.grid section{min-width:0}.grid h2{margin-top:0}
dt{margin-top:24px}dd{margin:6px 0;overflow-wrap:anywhere}
footer{padding:28px 0;border-top:1px solid var(--line);font-size:13px;line-height:1.6}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(max-width:650px){header{display:block;min-height:0}nav{margin-top:22px;gap:18px}main{padding:36px 0 48px}h1{font-size:34px;line-height:1.12}h2{font-size:28px}.grid{grid-template-columns:1fr;gap:36px}}
@media print{nav,.notice,footer{display:none}body{background:white}main{padding:0}header,main,footer{width:100%}h1{font-size:30px}h2{font-size:22px}}
