/* Template-specific responsive refinements shared by parking presets v2. */
body[data-parking-preset] {
  max-width: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body[data-parking-preset] :where(h1, h2, h3, p, address, a) {
  overflow-wrap: anywhere;
}

body[data-parking-preset] img {
  max-width: 100%;
}

@media (hover: none), (pointer: coarse) {
  body[data-parking-preset] .actions a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    touch-action: manipulation;
  }

  body[data-parking-preset] .records a {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
  }
}

/* Very narrow phones keep the visual voice of each template without crowding. */
@media (max-width: 359px) {
  body[data-parking-preset] {
    min-width: 0;
  }

  body[data-parking-preset="blank"] .hero h1 { font-size: 42px; }
  body[data-parking-preset="filing"] .hero h1 { font-size: 42px; }
  body[data-parking-preset="maintenance"] .main h1 { font-size: 42px; }
  body[data-parking-preset="announcement"] .article h1 { font-size: 36px; }
  body[data-parking-preset="redirect"] .copy h1 { font-size: 42px; }
  body[data-parking-preset="corporate"] .hero h1 { font-size: 42px; }
  body[data-parking-preset="business"] .copy h1 { font-size: 38px; }
  body[data-parking-preset="startup"] .copy h1 { font-size: 48px; }
  body[data-parking-preset="portfolio"] .copy h1 { font-size: 42px; }
  body[data-parking-preset="local-business"] .copy h1 { font-size: 40px; }
  body[data-parking-preset="product"] .copy h1 { font-size: 48px; }
  body[data-parking-preset="registry"] .hero h1 { font-size: 42px; }
  body[data-parking-preset="saas"] .copy h1 { font-size: 42px; }
  body[data-parking-preset="case-study"] .hero h1 { font-size: 38px; }
  body[data-parking-preset="event"] .hero h1 { font-size: 54px; }
  body[data-parking-preset="sale"] .hero h1 { font-size: 42px; }
  body[data-parking-preset="waitlist"] .hero h1 { font-size: 42px; }
  body[data-parking-preset="campaign"] .hero h1 { font-size: 52px; }
  body[data-parking-preset="recruiting"] .copy h1 { font-size: 44px; }
  body[data-parking-preset="contact"] .copy h1 { font-size: 42px; }

  body[data-parking-preset="filing"] .actions a,
  body[data-parking-preset="maintenance"] .actions a,
  body[data-parking-preset="redirect"] .actions a,
  body[data-parking-preset="corporate"] .actions a,
  body[data-parking-preset="startup"] .actions a,
  body[data-parking-preset="local-business"] .actions a,
  body[data-parking-preset="product"] .actions a,
  body[data-parking-preset="registry"] .actions a,
  body[data-parking-preset="saas"] .actions a,
  body[data-parking-preset="event"] .actions a,
  body[data-parking-preset="sale"] .actions a,
  body[data-parking-preset="waitlist"] .actions a,
  body[data-parking-preset="campaign"] .actions a,
  body[data-parking-preset="recruiting"] .actions a,
  body[data-parking-preset="contact"] .actions a {
    width: 100%;
  }
}

/* Short portrait devices prioritise the message and first action above the fold. */
@media (max-width: 359px) and (max-height: 700px) {
  body[data-parking-preset="blank"] .hero { padding: 48px 0 36px; }
  body[data-parking-preset="blank"] .eyebrow { margin-bottom: 16px; }
  body[data-parking-preset="blank"] .lead { margin-top: 20px; }

  body[data-parking-preset="filing"] .hero { padding: 44px 0; }
  body[data-parking-preset="filing"] .hero small { margin-bottom: 16px; }
  body[data-parking-preset="filing"] .lead { margin-top: 18px; line-height: 1.65; }
  body[data-parking-preset="filing"] .progress { margin-top: 24px; }
  body[data-parking-preset="filing"] .actions { margin-top: 18px; }

  body[data-parking-preset="maintenance"] .main { padding: 42px 0; }
  body[data-parking-preset="maintenance"] .main h1 { margin-top: 18px; }
  body[data-parking-preset="maintenance"] .lead { margin-top: 16px; }

  body[data-parking-preset="announcement"] .article { padding: 42px 0; }
  body[data-parking-preset="announcement"] .deck { margin-top: 20px; padding: 14px 0; }

  body[data-parking-preset="redirect"] .hero { padding: 42px 0; }
  body[data-parking-preset="redirect"] .lead { margin-top: 20px; }

  body[data-parking-preset="event"] .hero { padding: 44px 0 32px; }
  body[data-parking-preset="event"] .hero h1 { margin-top: 16px; }
  body[data-parking-preset="event"] .lead { margin-top: 18px; }
  body[data-parking-preset="event"] .actions { margin-top: 18px; }

  body[data-parking-preset="sale"] .hero,
  body[data-parking-preset="waitlist"] .hero { padding: 42px 0; }
  body[data-parking-preset="sale"] .lead,
  body[data-parking-preset="waitlist"] .lead { margin-top: 18px; }
  body[data-parking-preset="sale"] .offer { margin-top: 22px; }
  body[data-parking-preset="waitlist"] .moon { margin-bottom: 18px; }

  body[data-parking-preset="contact"] .hero { padding: 48px 0; }
}

/* Tablet widths use calmer gaps and retain touch-sized actions. */
@media (min-width: 641px) and (max-width: 1023px) {
  body[data-parking-preset] .actions a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  body[data-parking-preset="corporate"] .hero,
  body[data-parking-preset="saas"] .hero,
  body[data-parking-preset="registry"] .hero {
    gap: 36px;
  }

  body[data-parking-preset="product"] .art,
  body[data-parking-preset="corporate"] .visual,
  body[data-parking-preset="portfolio"] .image,
  body[data-parking-preset="local-business"] .picture,
  body[data-parking-preset="saas"] .visual,
  body[data-parking-preset="recruiting"] .puzzle {
    min-height: clamp(320px, 52vw, 460px);
  }

  body[data-parking-preset="contact"] .hero {
    padding-block: 64px;
  }
}

/* Phone and tablet landscape need a true horizontal composition, not a tall mobile stack. */
@media (min-width: 568px) and (max-height: 520px) and (orientation: landscape) {
  body[data-parking-preset] .lead,
  body[data-parking-preset] .description {
    font-size: 14px;
    line-height: 1.55;
  }

  body[data-parking-preset] .actions {
    margin-top: 14px;
  }

  body[data-parking-preset] .actions a {
    min-height: 40px;
    padding-block: 8px;
  }

  body[data-parking-preset="blank"] .shell {
    width: calc(100% - 32px);
    min-height: 100dvh;
    padding: 14px 0 10px;
  }
  body[data-parking-preset="blank"] .top,
  body[data-parking-preset="blank"] .foot { flex-direction: row; align-items: flex-start; }
  body[data-parking-preset="blank"] .hero {
    grid-template-columns: minmax(0, 1.35fr) minmax(180px, .65fr);
    gap: 24px;
    align-items: center;
    padding: 16px 0;
  }
  body[data-parking-preset="blank"] .hero h1 { font-size: clamp(38px, 7vw, 52px); }
  body[data-parking-preset="blank"] .eyebrow { margin-bottom: 10px; }
  body[data-parking-preset="blank"] .lead { margin-top: 12px; font-size: 14px; line-height: 1.5; }
  body[data-parking-preset="blank"] .aside {
    align-self: stretch;
    border-top: 0;
    border-left: 1px solid #bbb8ad;
    padding: 0 0 0 16px;
  }

  body[data-parking-preset="filing"] .page { padding: 14px 20px; }
  body[data-parking-preset="filing"] .top,
  body[data-parking-preset="filing"] .foot { flex-direction: row; align-items: center; }
  body[data-parking-preset="filing"] .hero {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(220px, .85fr);
    grid-template-rows: auto auto auto auto;
    column-gap: 30px;
    align-items: start;
    padding: 16px 0;
  }
  body[data-parking-preset="filing"] .hero small { grid-column: 1; grid-row: 1; margin-bottom: 10px; }
  body[data-parking-preset="filing"] .hero h1 { grid-column: 1; grid-row: 2 / 5; font-size: clamp(38px, 7vw, 50px); }
  body[data-parking-preset="filing"] .lead { grid-column: 2; grid-row: 1; margin: 0; }
  body[data-parking-preset="filing"] .progress { grid-column: 2; grid-row: 2; margin-top: 12px; }
  body[data-parking-preset="filing"] .hero > p:not(.lead) { grid-column: 2; grid-row: 3; margin: 10px 0 0; font-size: 13px; }
  body[data-parking-preset="filing"] .actions { grid-column: 2; grid-row: 4; }
  body[data-parking-preset="filing"] .actions a { width: auto; }

  body[data-parking-preset="maintenance"] .bar,
  body[data-parking-preset="maintenance"] .foot { flex-direction: row; padding: 10px 18px; }
  body[data-parking-preset="maintenance"] .main {
    width: calc(100% - 36px);
    grid-template-columns: minmax(0, 1.1fr) minmax(250px, .9fr);
    gap: 24px;
    padding: 14px 0;
  }
  body[data-parking-preset="maintenance"] .main h1 { margin-top: 14px; font-size: clamp(38px, 7vw, 50px); }
  body[data-parking-preset="maintenance"] .lead { margin-top: 12px; }
  body[data-parking-preset="maintenance"] .console h2 { padding: 9px 12px; }
  body[data-parking-preset="maintenance"] .rows { padding: 4px 12px; }
  body[data-parking-preset="maintenance"] .row { padding: 7px 0; }
  body[data-parking-preset="maintenance"] .notice { margin-top: 12px; font-size: 13px; }
  body[data-parking-preset="maintenance"] .actions { margin-top: 10px; }

  body[data-parking-preset="announcement"] .paper {
    width: calc(100% - 12px);
    min-height: calc(100dvh - 12px);
    margin: 6px;
    padding: 16px 24px;
  }
  body[data-parking-preset="announcement"] .mast { padding-bottom: 8px; }
  body[data-parking-preset="announcement"] .mast strong { font-size: 24px; }
  body[data-parking-preset="announcement"] .article { padding: 14px 0; }
  body[data-parking-preset="announcement"] .kicker { margin-bottom: 8px; }
  body[data-parking-preset="announcement"] .article h1 { font-size: clamp(32px, 5vw, 42px); }
  body[data-parking-preset="announcement"] .deck { margin-top: 12px; padding: 8px 0; font-size: 14px; line-height: 1.55; }
  body[data-parking-preset="announcement"] .body { margin-top: 10px; gap: 20px; }
  body[data-parking-preset="announcement"] .body p { font-size: 13px; line-height: 1.55; }
  body[data-parking-preset="announcement"] .seal { width: 56px; height: 56px; font-size: 14px; }
  body[data-parking-preset="announcement"] .meta { margin-top: 8px; }
  body[data-parking-preset="announcement"] .actions { margin-top: 8px; }

  body[data-parking-preset="redirect"] .page { grid-template-columns: 26px 1fr; }
  body[data-parking-preset="redirect"] .main { padding: 12px 18px; }
  body[data-parking-preset="redirect"] .top,
  body[data-parking-preset="redirect"] .foot { flex-direction: row; align-items: center; }
  body[data-parking-preset="redirect"] .hero {
    grid-template-columns: minmax(0, 1fr) 190px;
    gap: 22px;
    padding: 12px 0;
  }
  body[data-parking-preset="redirect"] .copy h1 { margin-top: 10px; font-size: clamp(38px, 7vw, 48px); }
  body[data-parking-preset="redirect"] .lead { margin-top: 12px; }
  body[data-parking-preset="redirect"] .desc { margin-block: 10px 0; font-size: 13px; }
  body[data-parking-preset="redirect"] .sign { min-height: 210px; }
  body[data-parking-preset="redirect"] .sign span { font-size: 72px; }

  body[data-parking-preset="corporate"] .top { width: calc(100% - 36px); padding: 12px 0; }
  body[data-parking-preset="corporate"] .hero {
    width: calc(100% - 36px);
    grid-template-columns: minmax(0, 1fr) 210px;
    gap: 24px;
    padding: 18px 0;
  }
  body[data-parking-preset="corporate"] .hero h1 { margin-top: 10px; font-size: clamp(38px, 7vw, 48px); }
  body[data-parking-preset="corporate"] .lead { margin-top: 12px; }
  body[data-parking-preset="corporate"] .visual { min-height: 230px; }

  body[data-parking-preset="business"] .top { padding: 12px 0; }
  body[data-parking-preset="business"] .hero {
    min-height: auto;
    grid-template-columns: 52px 1fr;
    gap: 24px;
    padding: 18px 0;
  }
  body[data-parking-preset="business"] .chapter {
    height: 100%;
    border-right: 1px solid #918879;
    border-bottom: 0;
    padding: 0 10px 0 0;
    writing-mode: vertical-rl;
  }
  body[data-parking-preset="business"] .copy h1 { font-size: clamp(36px, 6vw, 44px); }
  body[data-parking-preset="business"] .lead { margin-top: 12px; font-size: 14px; line-height: 1.55; }
  body[data-parking-preset="business"] .description { margin-top: 10px; font-size: 13px; }

  body[data-parking-preset="startup"] .top { padding: 12px 28px; }
  body[data-parking-preset="startup"] .hero {
    min-height: calc(100dvh - 58px);
    padding: 18px 28px;
  }
  body[data-parking-preset="startup"] .copy h1 { margin-top: 12px; font-size: clamp(44px, 8vw, 56px); }
  body[data-parking-preset="startup"] .lead { margin-top: 14px; }
  body[data-parking-preset="startup"] .orbit { right: -12vw; width: 55vw; }

  body[data-parking-preset="portfolio"] .top { padding-block: 12px; }
  body[data-parking-preset="portfolio"] .hero {
    min-height: calc(100dvh - 52px);
    grid-template-columns: minmax(0, 1fr) 240px;
  }
  body[data-parking-preset="portfolio"] .copy { padding: 18px 24px; }
  body[data-parking-preset="portfolio"] .copy h1 { margin-top: 12px; font-size: clamp(38px, 6vw, 46px); }
  body[data-parking-preset="portfolio"] .lead { margin-top: 14px; }
  body[data-parking-preset="portfolio"] .image { min-height: 280px; margin: 12px 12px 12px 0; }

  body[data-parking-preset="local-business"] .page { width: calc(100% - 32px); }
  body[data-parking-preset="local-business"] .top { padding: 12px 0; }
  body[data-parking-preset="local-business"] .hero {
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 24px;
    padding: 8px 0 16px;
  }
  body[data-parking-preset="local-business"] .copy { padding: 8px 0; }
  body[data-parking-preset="local-business"] .stamp { width: 48px; height: 48px; font-size: 9px; }
  body[data-parking-preset="local-business"] .copy h1 { margin-top: 10px; font-size: clamp(34px, 6vw, 42px); }
  body[data-parking-preset="local-business"] .lead { margin-top: 12px; }
  body[data-parking-preset="local-business"] .picture { min-height: 270px; }

  body[data-parking-preset="product"] .top { height: 50px; padding-inline: 28px; flex-direction: row; align-items: center; }
  body[data-parking-preset="product"] .hero {
    min-height: calc(100dvh - 50px);
    grid-template-columns: minmax(0, 1.1fr) minmax(220px, .9fr);
  }
  body[data-parking-preset="product"] .copy { padding: 20px 28px; }
  body[data-parking-preset="product"] .copy h1 { margin-top: 12px; font-size: clamp(42px, 7vw, 52px); }
  body[data-parking-preset="product"] .lead { margin-top: 14px; }
  body[data-parking-preset="product"] .art { min-height: 0; border-top: 0; border-left: 3px solid #17213c; }

  body[data-parking-preset="registry"] .top { height: 48px; }
  body[data-parking-preset="registry"] .hero {
    grid-template-columns: minmax(0, 1.1fr) minmax(250px, .9fr);
    gap: 20px;
    padding: 18px 0;
  }
  body[data-parking-preset="registry"] .hero h1 { margin-top: 10px; font-size: clamp(36px, 6vw, 44px); }
  body[data-parking-preset="registry"] .lead { margin-top: 12px; }
  body[data-parking-preset="registry"] .terminal { box-shadow: 8px 8px 0 #273027; }
  body[data-parking-preset="registry"] .terminal-head { padding: 7px 10px; }
  body[data-parking-preset="registry"] .terminal-body { min-height: 188px; padding: 10px 14px; line-height: 1.55; font-size: 12px; }

  body[data-parking-preset="saas"] .top { padding: 12px 0; }
  body[data-parking-preset="saas"] .hero {
    grid-template-columns: minmax(0, 1fr) minmax(230px, .8fr);
    gap: 24px;
    padding: 16px 0;
  }
  body[data-parking-preset="saas"] .copy h1 { margin-top: 10px; font-size: clamp(36px, 6vw, 44px); }
  body[data-parking-preset="saas"] .lead { margin-top: 12px; }
  body[data-parking-preset="saas"] .visual { min-height: 260px; }

  body[data-parking-preset="case-study"] .mast { padding: 10px 0 8px; }
  body[data-parking-preset="case-study"] .mast strong { font-size: 22px; }
  body[data-parking-preset="case-study"] .hero { padding: 18px 0; }
  body[data-parking-preset="case-study"] .hero h1 { margin-top: 10px; font-size: clamp(34px, 5.6vw, 42px); }
  body[data-parking-preset="case-study"] .deck {
    grid-template-columns: 1fr .7fr;
    gap: 24px;
    margin-top: 14px;
    padding-top: 12px;
  }
  body[data-parking-preset="case-study"] .deck p { font-size: 14px; line-height: 1.55; }

  body[data-parking-preset="event"] .poster { padding: 14px 20px; }
  body[data-parking-preset="event"] .top,
  body[data-parking-preset="event"] .foot { flex-direction: row; }
  body[data-parking-preset="event"] .hero {
    grid-template-columns: minmax(0, 1fr) 180px;
    gap: 20px;
    padding: 14px 0;
  }
  body[data-parking-preset="event"] .hero h1 { margin-top: 10px; font-size: clamp(44px, 8vw, 58px); }
  body[data-parking-preset="event"] .lead { margin-top: 12px; }
  body[data-parking-preset="event"] .date { width: auto; padding: 12px; border-width: 3px; transform: rotate(3deg); }
  body[data-parking-preset="event"] .date strong { font-size: 48px; }
  body[data-parking-preset="event"] .date span { margin-top: 8px; font-size: 11px; }

  body[data-parking-preset="sale"] .page { padding: 14px 24px; }
  body[data-parking-preset="sale"] .top,
  body[data-parking-preset="sale"] .foot { flex-direction: row; align-items: center; }
  body[data-parking-preset="sale"] .hero { width: min(780px, 68%); padding: 12px 0; }
  body[data-parking-preset="sale"] .hero h1 { margin-top: 10px; font-size: clamp(36px, 6vw, 46px); }
  body[data-parking-preset="sale"] .lead { margin-top: 12px; }
  body[data-parking-preset="sale"] .offer { margin-top: 14px; flex-direction: row; align-items: center; gap: 18px; }
  body[data-parking-preset="sale"] .price { padding: 0 18px 0 0; border-right: 1px solid rgba(200,167,102,.45); border-bottom: 0; }
  body[data-parking-preset="sale"] .description { margin-top: 10px; }
  body[data-parking-preset="sale"] .actions a { width: auto; }

  body[data-parking-preset="waitlist"] .page { padding: 14px 24px; }
  body[data-parking-preset="waitlist"] .top,
  body[data-parking-preset="waitlist"] .foot { flex-direction: row; align-items: center; }
  body[data-parking-preset="waitlist"] .hero { width: min(720px, 68%); padding: 12px 0; }
  body[data-parking-preset="waitlist"] .moon { width: 28px; height: 28px; margin-bottom: 10px; }
  body[data-parking-preset="waitlist"] .hero h1 { margin-top: 10px; font-size: clamp(36px, 6vw, 46px); }
  body[data-parking-preset="waitlist"] .lead { margin-top: 12px; }
  body[data-parking-preset="waitlist"] .description { margin-block: 10px 0; }
  body[data-parking-preset="waitlist"] .actions a { width: auto; }

  body[data-parking-preset="campaign"] .top { padding: 12px 20px; }
  body[data-parking-preset="campaign"] .hero { padding: 18px 24px; }
  body[data-parking-preset="campaign"] .hero h1 { margin-top: 12px; font-size: clamp(44px, 8vw, 58px); }
  body[data-parking-preset="campaign"] .lead { margin-top: 14px; }

  body[data-parking-preset="recruiting"] .top { padding: 12px 24px; }
  body[data-parking-preset="recruiting"] .hero {
    min-height: calc(100dvh - 58px);
    grid-template-columns: minmax(0, 1.1fr) minmax(220px, .5fr);
  }
  body[data-parking-preset="recruiting"] .copy { padding: 18px 24px; }
  body[data-parking-preset="recruiting"] .copy h1 { margin-top: 10px; font-size: clamp(38px, 6vw, 46px); }
  body[data-parking-preset="recruiting"] .lead { margin-top: 12px; }
  body[data-parking-preset="recruiting"] .puzzle { min-height: 0; }

  body[data-parking-preset="contact"] .page { grid-template-columns: 110px 1fr; }
  body[data-parking-preset="contact"] .rail { min-height: 0; padding: 16px 14px; flex-direction: column; }
  body[data-parking-preset="contact"] .rail strong { writing-mode: vertical-rl; font-size: 18px; }
  body[data-parking-preset="contact"] .main { padding: 14px 24px; }
  body[data-parking-preset="contact"] .top,
  body[data-parking-preset="contact"] .foot { flex-direction: row; align-items: center; padding-bottom: 10px; }
  body[data-parking-preset="contact"] .hero {
    grid-template-columns: minmax(0, 1fr) minmax(220px, .9fr);
    gap: 24px;
    padding: 14px 0;
  }
  body[data-parking-preset="contact"] .copy h1 { margin-top: 10px; font-size: clamp(34px, 5.5vw, 42px); }
  body[data-parking-preset="contact"] .lead { margin-top: 12px; }
  body[data-parking-preset="contact"] .description { margin-block: 10px 0; }
  body[data-parking-preset="contact"] .directory { border-top-width: 2px; }
  body[data-parking-preset="contact"] .entry { grid-template-columns: 58px 1fr; gap: 10px; padding: 9px 0; }
  body[data-parking-preset="contact"] .entry a { font-size: 14px; }
}

/* Full-bleed art remains expansive on 4K screens while text stays comfortably readable. */
@media (min-width: 1800px) {
  body[data-parking-preset="product"] .copy,
  body[data-parking-preset="product"] .features,
  body[data-parking-preset="startup"] .hero,
  body[data-parking-preset="startup"] .story,
  body[data-parking-preset="event"] .poster,
  body[data-parking-preset="event"] .agenda,
  body[data-parking-preset="event"] .footer,
  body[data-parking-preset="campaign"] .top,
  body[data-parking-preset="campaign"] .hero,
  body[data-parking-preset="campaign"] .manifesto,
  body[data-parking-preset="campaign"] .footer,
  body[data-parking-preset="recruiting"] .copy,
  body[data-parking-preset="recruiting"] .roles,
  body[data-parking-preset="recruiting"] .footer {
    padding-left: max(54px, calc((100vw - 1680px) / 2));
    padding-right: max(54px, calc((100vw - 1680px) / 2));
  }

  body[data-parking-preset="contact"] .main {
    padding-left: max(52px, calc((100vw - 1760px) / 2));
    padding-right: max(52px, calc((100vw - 1760px) / 2));
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-parking-preset] * {
    scroll-behavior: auto !important;
  }
}
