:root{
  --b:#2563eb;
  --b2:#0ea5e9;
  --d:#10213d;
  --m:#687992;
  --l:#dfe8f4;
  --surface:rgba(255,255,255,.88);
  --shadow:0 18px 50px rgba(31,65,114,.10);
}
html{scroll-behavior:smooth}
body{
  background:linear-gradient(135deg,#f7faff 0%,#eef5ff 52%,#f9fbff 100%)!important;
  color:var(--d);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:.01em;
}
body::before{opacity:.14!important;filter:saturate(.9) contrast(.96)}
.wrap{max-width:960px!important;padding:28px 20px 48px!important}
.top{margin-bottom:28px!important;align-items:stretch;min-height:330px;padding:18px 20px 20px;border-radius:24px;background:linear-gradient(120deg,#06172f 0%,#102d58 52%,#1769ff 100%);box-shadow:0 16px 34px rgba(16,33,61,.18);flex-direction:column}
.brand{font-size:22px!important;letter-spacing:-.03em;display:flex;align-items:center;justify-content:center;min-height:285px;width:100%;overflow:hidden}
.brand-logo{display:block;width:100%;height:305px;object-fit:contain;object-position:center center;border-radius:14px;filter:drop-shadow(0 12px 22px rgba(0,0,0,.34))}
.top>span,.top>a,.top>div:not(.brand){align-self:flex-start}
.top .tag{color:#d8efff!important;font-weight:700}
.tag,.muted,p{color:var(--m)!important}
.card{
  background:var(--surface)!important;
  border:1px solid rgba(223,232,244,.95)!important;
  border-radius:26px!important;
  padding:28px!important;
  margin-bottom:20px!important;
  box-shadow:var(--shadow)!important;
  backdrop-filter:blur(12px);
}
h1,h2{letter-spacing:-.04em!important}
h1{font-weight:850!important}
h2{font-size:clamp(22px,4vw,30px)!important}
.ey{color:var(--b)!important;letter-spacing:.16em!important}
.choice,.item,.nav a{
  border-color:var(--l)!important;
  border-radius:17px!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.choice{background:rgba(255,255,255,.82)!important;padding:18px!important}
.choice:hover,.nav a:hover,.item:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(37,99,235,.10)}
.choice.selected{border-color:var(--b)!important;background:linear-gradient(135deg,#eef4ff,#f8fbff)!important;box-shadow:0 8px 22px rgba(37,99,235,.12)}
input,select,textarea{
  background:rgba(255,255,255,.9)!important;
  border:1px solid var(--l)!important;
  border-radius:13px!important;
  padding:14px!important;
  outline:none;
  transition:border-color .18s ease,box-shadow .18s ease;
}
input:focus,select:focus,textarea:focus{border-color:#7aa7ff!important;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.btn{background:linear-gradient(135deg,var(--b),var(--b2))!important;border-radius:14px!important;padding:14px 18px!important;box-shadow:0 10px 22px rgba(37,99,235,.20);transition:transform .18s ease,box-shadow .18s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(37,99,235,.25)}
.btn.alt{background:#eaf1fb!important;box-shadow:none}
.nav{gap:10px!important}
.nav a{background:rgba(255,255,255,.82)!important;padding:12px!important}
.locate-btn{border-radius:13px!important;background:#edf5ff!important;border-color:#cfe0ff!important}
#map{border-radius:18px!important;box-shadow:inset 0 0 0 1px rgba(223,232,244,.7)}
.msg{border-radius:14px!important;padding:14px!important}
.notice,.legal{font-size:12px;line-height:1.6}
@media(max-width:600px){.wrap{padding:18px 14px 34px!important}.card{padding:21px!important;border-radius:22px!important}.top{margin-bottom:20px!important;min-height:255px;padding:10px 12px 12px}.brand{min-height:215px}.brand-logo{width:100%;height:230px}.top .tag{display:none}}
