:root{font:16px/1.55 system-ui,sans-serif;color:#102c4b;background:#f4f7fa}
*{box-sizing:border-box}
body{margin:0}
header{background:#102c4b;padding:1rem max(1rem,calc((100% - 48rem)/2))}
header a{color:white;font-weight:700;text-decoration:none}
main{max-width:50rem;margin:auto;padding:1.25rem 1rem 4rem}
h1{line-height:1.1}
fieldset{margin:1.4rem 0;padding:1rem;border:1px solid #b8c8d8;border-radius:.5rem;background:white}
legend,label{font-weight:700}
legend{padding:0 .4rem}
.field{margin-bottom:.8rem}
label{display:block;margin-bottom:.25rem}
input:not([type=hidden]),textarea{width:100%;font:inherit;color:inherit;border:1px solid #687e93;border-radius:.3rem;background:#fff;padding:.55rem .65rem}
textarea{resize:vertical}
button{font:inherit;font-weight:700;background:#102c4b;color:white;border:1px solid #102c4b;border-radius:.3rem;cursor:pointer;padding:.55rem .9rem;margin-top:.6rem}
button.secondary{background:white;color:#102c4b}
a{color:#174c79}
:focus-visible{outline:3px solid #186dc0;outline-offset:3px}
.notice{background:#e5eff9;border-left:4px solid #174c79;padding:.7rem .9rem}
code{white-space:normal}
.logo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem}
.logo-grid article{min-width:0;padding:1rem;border:1px solid #b8c8d8;border-radius:.5rem;background:#fff}
.logo-grid h3{margin:0 0 .65rem}
.logo-preview{display:block;width:72px;height:72px;object-fit:contain;margin-bottom:.75rem}
.homepage-photo-preview{display:block;width:min(100%,24rem);height:auto;max-height:19rem;object-fit:contain;object-position:left;margin-bottom:1rem}
