.pp-home{
  --pp-home-ink:#132d4a;
  --pp-home-blue:#135dc6;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  overflow:clip;
  background:#f3f6fa;
  color:var(--pp-home-ink);
}
.pp-home::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:radial-gradient(ellipse at 86% 29%,#dce9fa 0,transparent 58%);
  pointer-events:none;
}
.pp-home .pp-home__layout{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  align-items:center;
  gap:64px;
  min-height:600px;
  padding-block:64px;
}
.pp-home .pp-home__copy{position:relative;z-index:2;min-width:0;padding-bottom:8px}
.pp-home h2{margin:0;font-size:clamp(44px,3.2vw,46px);line-height:1.18;font-weight:550;letter-spacing:-.03em}
.pp-home h2 span{display:block}
.pp-home .pp-home__description{max-width:350px;margin:24px 0 0;color:#4c6178;font-size:18px;line-height:1.6;text-wrap:pretty}
.pp-home .pp-home__actions{margin-top:24px}
.pp-home .button{min-height:54px;padding:15px 24px;border-radius:999px;font-size:16px;font-weight:500;gap:18px;background:var(--pp-home-blue);box-shadow:0 5px 14px #135dc60b}
.pp-home .button:hover{background:#104fa8;box-shadow:0 10px 24px #135dc61c}
.pp-home .button:focus-visible{outline-offset:6px}
.pp-home .pp-home__visual{position:relative;min-width:0;min-height:438px;align-self:center}
.pp-home figure{margin:0}
.pp-home .pp-home__map{
  position:relative;
  width:calc(100% + clamp(0px, (100vw - 1240px)/2 - 56px, 56px));
  overflow:hidden;
  border:1px solid #d4dfeb;
  border-radius:15px;
  background:white;
  box-shadow:0 28px 58px -24px #153a6926,0 3px 8px #153a6905;
  transform:perspective(1400px) rotateY(-3deg) rotateX(1deg);
  transform-origin:left center;
}
.pp-home .pp-home__map-crop{position:relative;height:420px;overflow:hidden;background:#eaf0f5}
/* The source map viewport is x252/y239/w1284/h491; keep its OSM attribution. */
.pp-home .pp-home__map-crop img{position:absolute;right:0;top:-48.676%;width:auto;height:157.23%;max-width:none}
.pp-home .pp-home__stand{
  position:absolute;
  z-index:2;
  width:280px;
  left:-44px;
  bottom:-36px;
  overflow:hidden;
  border:1px solid #d7e0eb;
  border-radius:12px;
  background:white;
  box-shadow:0 25px 46px -20px #153a6940,0 2px 7px #153a6908;
  transform:rotate(-2deg);
}
/* Show the actual stand, rather than shrinking the surrounding form. */
.pp-home .pp-home__stand-crop{position:relative;height:auto;aspect-ratio:836/565;overflow:hidden;background:white}
.pp-home .pp-home__stand-crop img{position:absolute;width:177.7512%;height:auto;max-width:none;left:-.95694%;top:-25.84071%}
.pp-home.pp-motion-ready [data-portal-reveal]{opacity:0;translate:0 28px;transition:opacity .85s ease,translate 1.1s cubic-bezier(.2,.65,.2,1)}
.pp-home.pp-motion-ready [data-portal-reveal].is-visible{opacity:1;translate:0 0}
.pp-home.pp-motion-ready .pp-home__visual[data-portal-reveal]{transition-delay:.12s}
@media(min-width:1600px){
  .pp-home .pp-home__layout{min-height:640px;gap:72px}
  .pp-home .pp-home__map-crop{height:440px}
}
@media(max-width:1100px){
  .pp-home .pp-home__layout{gap:40px;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);min-height:580px;padding-block:64px}
  .pp-home h2{font-size:44px}
  .pp-home .pp-home__description{font-size:18px}
  .pp-home .pp-home__visual{min-height:420px}
  .pp-home .pp-home__map-crop{height:400px}
  .pp-home .pp-home__stand{left:-22px;bottom:-20px;width:280px}
}
@media(max-width:900px){
  .pp-home .pp-home__layout{grid-template-columns:1fr;gap:40px;min-height:0;padding-block:56px 72px}
  .pp-home .pp-home__copy{max-width:640px;padding:0}
  .pp-home h2{font-size:40px;line-height:1.18}
  .pp-home h2 span{display:inline}
  .pp-home h2 span::before{content:" "}
  .pp-home .pp-home__description{max-width:580px;margin-top:24px;font-size:18px}
  .pp-home .pp-home__actions{margin-top:26px}
  .pp-home .pp-home__visual{min-height:405px}
  .pp-home .pp-home__map{width:100%;transform:none}
  .pp-home .pp-home__map-crop{height:380px}
  .pp-home .pp-home__stand{width:290px;left:22px;right:auto;bottom:-24px;transform:rotate(-2deg)}
}
@media(max-width:600px){
  .pp-home .pp-home__layout{gap:32px;padding-block:48px;min-height:0}
  .pp-home h2{font-size:32px;line-height:1.18;letter-spacing:-.03em}
  .pp-home h2 span{display:block}
  .pp-home h2 span::before{content:none}
  .pp-home .pp-home__description{font-size:17px;line-height:1.65;margin-top:20px;max-width:390px}
  .pp-home .pp-home__actions{margin-top:25px}
  .pp-home .button{min-height:54px;padding-inline:20px;font-size:16px;gap:16px;max-width:100%}
  .pp-home .pp-home__visual{display:grid;gap:20px;min-height:0}
  .pp-home .pp-home__map{border-radius:10px;box-shadow:0 14px 30px -16px #153a692b}
  .pp-home .pp-home__map-crop{height:280px}
  .pp-home .pp-home__stand{position:relative;width:100%;left:auto;right:auto;bottom:auto;transform:none;border-radius:10px;box-shadow:0 12px 30px -18px #153a6926}
}
@media(prefers-reduced-motion:reduce){
  .pp-home.pp-motion-ready [data-portal-reveal]{opacity:1;translate:none;transition:none}
  .pp-home .button{transition:none}
}
@media print{
  .pp-home{break-inside:avoid;background:#fff}
  .pp-home .pp-home__layout{min-height:0;padding-block:32px;gap:30px;grid-template-columns:1fr 1fr}
  .pp-home h2{font-size:40px}
  .pp-home .pp-home__description{font-size:16px}
  .pp-home .pp-home__map{width:100%;transform:none;box-shadow:none}
  .pp-home .pp-home__map-crop{height:240px}
  .pp-home .pp-home__visual{min-height:290px}
  .pp-home .pp-home__stand{width:175px;left:0;bottom:0;transform:none;box-shadow:none}
  .pp-home.pp-motion-ready [data-portal-reveal]{opacity:1;translate:none}
}
