body{margin:0;font:17px/1.5 system-ui,sans-serif;color:#24233c;background:#f8f7fb}
header,main{max-width:920px;margin:auto;padding:18px}
header{display:flex;justify-content:space-between;align-items:center;gap:16px}
header img{width:180px;max-width:100%}
main{display:grid;gap:18px}
section,.unavailable{background:white;border:1px solid #dedbe8;border-radius:14px;padding:20px}
h1{font-size:1.7rem;margin:0}h2{font-size:1.2rem;margin:0 0 12px}
ul{padding-left:22px}li{margin:8px 0}.muted{color:#595670}
.qr svg{width:220px;height:220px;max-width:100%}
button{font:inherit;padding:8px 14px;border:1px solid #3f366f;border-radius:8px;background:white;color:#3f366f;cursor:pointer}
:focus-visible{outline:3px solid #d69d36;outline-offset:3px}
.unavailable{display:block;max-width:560px;margin:10vh auto;padding:32px}
.unavailable img{width:210px;max-width:100%}
.unavailable p{margin:1rem 0}.unavailable a{color:#153d70}
.unavailable form{margin:1.2rem 0}
.unavailable label{font-weight:600}
.unavailable input[type=tel]{font:inherit;padding:9px 11px;margin-top:6px;width:100%;max-width:320px;border:1px solid #9b96b5;border-radius:8px;color:inherit;background:white}
.unavailable #portal-phone-hint{margin:.4rem 0 1rem;font-size:.94rem}
