body{margin:0;background:oklch(0.965 0.012 75);color:oklch(0.27 0.055 345);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}
a{color:oklch(0.27 0.055 345);text-decoration:none}
a:hover{color:oklch(0.52 0.12 40)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
#visit form ::placeholder{color:oklch(0.42 0.04 345)}
[hidden]{display:none!important}
.arch{display:flex;flex-direction:column;gap:12px;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.arch:hover{transform:translateY(-10px)}
.feat{scroll-snap-align:start;display:flex;flex-direction:column;gap:12px;padding:12px;background:oklch(0.985 0.006 75);border-radius:20px;transition:box-shadow .3s}
.feat:hover{box-shadow:0 18px 40px -20px oklch(0.27 0.055 345 / 0.45)}
.card-media{all:unset;cursor:pointer;aspect-ratio:3/4;overflow:hidden;border-radius:999px 999px 12px 12px;background:oklch(0.985 0.006 75);display:block}
.card-media>*{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.card-media:hover>*{transform:scale(1.03)}
.card-media:focus-visible,.pill:focus-visible{outline:2px solid oklch(0.52 0.12 40);outline-offset:3px}
.pill{font:inherit;font-weight:500;border-radius:999px;cursor:pointer;border:1px solid oklch(0.27 0.055 345);background:transparent;color:oklch(0.27 0.055 345)}
.pill.on{background:oklch(0.27 0.055 345);color:oklch(0.965 0.012 75)}
.pill[disabled]{opacity:.45;cursor:default}
.muted{color:oklch(0.45 0.035 345)}
.serif{font-family:'Young Serif',serif}
.plain{background:none;border:none;font:inherit;font-size:13px;cursor:pointer;color:oklch(0.42 0.04 345)}
