* { box-sizing: border-box; }
body { margin: 0px; background: rgb(247, 249, 252); color: rgb(21, 39, 65); font: 17px / 1.8 -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", sans-serif; }
header, main, footer { max-width: 940px; margin: auto; padding: 28px; }
header { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid rgb(220, 228, 238); }
a { color: rgb(25, 91, 216); text-underline-offset: 4px; }
nav { display: flex; gap: 22px; }
.brand { font-weight: 800; font-size: 24px; text-decoration: none; color: rgb(21, 39, 65); }
h1 { font-size: clamp(32px, 5vw, 48px); line-height: 1.3; letter-spacing: -1px; }
h2 { font-size: 24px; margin-top: 42px; }
p { max-width: 760px; }
.intro { padding: 26px 0px; }
.tag { color: rgb(25, 91, 216); font-weight: 700; }
.contact { display: inline-block; padding: 14px 22px; background: rgb(25, 91, 216); color: white; border-radius: 12px; text-decoration: none; overflow-wrap: anywhere; }
.panel { padding: 24px; background: white; border: 1px solid rgb(220, 228, 238); border-radius: 16px; margin: 24px 0px; }
footer { font-size: 14px; color: rgb(82, 100, 121); border-top: 1px solid rgb(220, 228, 238); }
li { margin-bottom: 8px; }
summary { cursor: pointer; font-weight: 700; }
details { padding: 18px 0px; border-bottom: 1px solid rgb(220, 228, 238); }
@media (max-width: 540px) {
  header { align-items: flex-start; gap: 14px; flex-direction: column; }
  header, main, footer { padding: 22px; }
  nav { gap: 18px; }
  h2 { font-size: 22px; }
}
img{max-width:100%;height:auto}a{overflow-wrap:anywhere}
