:root { color-scheme: light; font-family: Arial, Helvetica, sans-serif; color: #16243a; background: #fff; }
* { box-sizing: border-box; }
body { margin: 0; }
.hero { width: 100%; overflow: hidden; background: #e8edf2; }
.hero img { display: block; width: 100%; height: auto; }
main { max-width: 1160px; margin: 0 auto; padding: 0 30px 90px; }
.intro { text-align: center; padding: 58px 0 46px; }
h1 { margin: 0; color: #123e7e; font-size: clamp(2rem, 4.2vw, 3.7rem); line-height: 1.12; letter-spacing: -.035em; }
.tm { font-size: .32em; font-weight: 400; letter-spacing: 0; vertical-align: super; line-height: 0; margin-left: .1em; }
.blue-rule { width: 80px; height: 5px; margin: 28px auto 0; border-radius: 4px; background: #1767b1; }
h2 { margin: 0 0 26px; font-size: clamp(1.7rem, 2.8vw, 2.35rem); line-height: 1.2; text-align: center; }
.free-pickup { margin: 0 0 10px; color: #c81920; font-family: Arial, Helvetica, sans-serif; font-size: clamp(2rem, 4.2vw, 3.7rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.12; text-align: center; }
.columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.pickup-card { border: 1px solid #d7e1ea; border-top: 6px solid #1767b1; border-radius: 8px; padding: 30px 36px 35px; box-shadow: 0 12px 32px rgba(17, 54, 91, .07); }
h3 { margin: 0 0 20px; color: #123e7e; font-size: 1.65rem; }
ul { margin: 0; padding-left: 1.3em; }
li { padding-left: .2em; margin: 0 0 13px; font-size: 1.08rem; line-height: 1.5; }
li:last-child { margin-bottom: 0; }
li::marker { color: #1767b1; }
.contact { padding-top: 62px; color: #123e7e; font-family: Arial, Helvetica, sans-serif; font-size: clamp(2rem, 4.2vw, 3.7rem); font-weight: 700; line-height: 1.12; letter-spacing: -.035em; text-align: center; }
.contact p { margin: 0 0 .58em; }
.contact a { color: inherit; text-decoration-thickness: .055em; text-underline-offset: .09em; }
.contact a:hover, .contact a:focus-visible { color: #1767b1; }
.site-footer { padding: 20px 20px 38px; color: #000; font-family: Arial, Helvetica, sans-serif; font-size: 20pt; font-weight: 400; line-height: 1.3; text-align: center; }
@media (max-width: 680px) {
  main { padding: 0 20px 55px; }
  .intro { padding: 36px 0 35px; }
  .columns { grid-template-columns: 1fr; gap: 18px; }
  .pickup-card { padding: 25px 25px 29px; }
  .contact { padding-top: 42px; }
}
