.seo-location-page {
  display:block;
  padding:24px 52px 18px;
}
.seo-location-hero {
  position:relative;
  min-height:390px;
  padding:55px 36px 42px;
  background:url('assets/paper/strip-cream.svg') center/100% 100% no-repeat;
  filter:drop-shadow(2px 5px 3px rgba(45,28,8,.14));
  text-align:center;
}
.seo-eyebrow {
  margin:0 0 16px;
  font-size:18px;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.seo-location-hero h1 {
  max-width:760px;
  margin:0 auto 20px;
  font-size:clamp(40px,6.2vw,70px);
  line-height:1.12;
}
.seo-location-hero h1 .brush {
  display:inline-block;
  padding:0 14px 7px;
}
.seo-lead {
  max-width:650px;
  margin:0 auto 24px;
  font-size:19px;
  line-height:1.55;
}
.seo-location-section {
  margin:76px 0;
  padding:0 24px;
}
.seo-location-section h2 {
  max-width:760px;
  margin:0 auto 22px;
  font-size:clamp(31px,4.5vw,48px);
  line-height:1.15;
  text-align:center;
}
.seo-location-section > p {
  max-width:720px;
  margin:0 auto 30px;
  font-size:17px;
  line-height:1.7;
}
.seo-location-cards {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:34px;
}
.seo-card {
  position:relative;
  min-height:245px;
  padding:35px 24px 26px;
  background:url('assets/paper/strip-cream.svg') center/100% 100% no-repeat;
  filter:drop-shadow(2px 5px 3px rgba(45,28,8,.13));
}
.seo-card .tape {
  position:absolute;
  top:-13px;
  left:calc(50% - 42px);
  width:84px;
  height:27px;
  transform:rotate(-3deg);
}
.seo-card h3,.seo-faq h3 {
  margin:0 0 12px;
  font-size:24px;
  line-height:1.2;
}
.seo-card p,.seo-faq p {
  margin:0;
  font-size:15px;
  line-height:1.6;
}
.seo-location-paper {
  padding:42px 52px;
  background:url('assets/paper/strip-yellow.svg') center/100% 100% no-repeat;
}
.seo-location-paper h2 { margin-bottom:20px }
.seo-steps {
  max-width:680px;
  margin:0 auto 22px;
  padding-left:27px;
  font-size:17px;
  line-height:1.8;
}
.seo-steps li { padding-left:5px }
.seo-faq {
  max-width:720px;
  margin:0 auto 22px;
  padding:0 0 18px;
  border-bottom:1px solid rgba(30,24,18,.2);
}
.seo-location-section > .button {
  display:flex;
  width:max-content;
  margin:32px auto 0;
}
@media(max-width:760px) {
  .seo-location-page { padding:20px 16px 8px }
  .seo-location-hero { min-height:0;padding:42px 24px 35px }
  .seo-eyebrow { font-size:14px }
  .seo-lead { font-size:16px }
  .seo-location-section { margin:55px 0;padding:0 7px }
  .seo-location-section h2 { font-size:34px }
  .seo-location-section > p { font-size:15px }
  .seo-location-cards { grid-template-columns:1fr;gap:20px }
  .seo-card { min-height:0;padding:32px 25px 26px }
  .seo-card h3,.seo-faq h3 { font-size:22px }
  .seo-location-paper { padding:35px 27px }
  .seo-steps { font-size:15px }
}
