.door{isolation:isolate;background:var(--paper);place-items:center;min-height:100dvh;padding:clamp(1.25rem,4vw,4rem);display:grid;position:relative}.door__bg{z-index:-1;pointer-events:none;background:url(/brand/porch-hero.jpg) 72%/cover no-repeat;border-radius:24px;position:absolute;inset:24px 24px 24px 52%}.door__card{gap:var(--space-4);background:var(--card);border:1px solid var(--line);width:min(100%,30rem);min-width:0;box-shadow:var(--shadow-soft);border-radius:24px;padding:clamp(1.5rem,3vw,2.5rem);display:grid}.door__brand{margin-bottom:var(--space-2);justify-self:start}.door__brand .brand__mark{border-radius:16px;width:56px;height:56px}.door__title{color:var(--ink);letter-spacing:-.04em;font-size:clamp(2.5rem,3.5vw,3.75rem);line-height:1.05}.door__title em{color:var(--heart);font-style:italic;font-weight:400}.door__kicker{font-family:var(--font-body);letter-spacing:0;color:var(--ink-soft);margin-bottom:8px;font-size:1.1rem;font-weight:400;display:block}.door__card .lede{font-size:1.0625rem;line-height:1.7}.door__form{gap:var(--space-4);margin-top:var(--space-3);display:grid}.door__form .field{gap:10px}.door__form .field small{margin-top:2px}.door__go{width:100%;min-height:56px;font-size:1.0625rem}.door__code{letter-spacing:.18em;text-align:center;font-variant-numeric:tabular-nums;font-size:clamp(1.2rem,4vw,1.8rem)}.door__card .notice,.door__card .fine{overflow-wrap:anywhere}@media (min-width:900px){.door{grid-template-columns:1fr 1fr;gap:5vw}.door__card{grid-column:1}}@media (max-width:899px){.door__bg{background-image:linear-gradient(#111b2814,#111b284d),url(/brand/porch-hero-900.jpg);background-position:70% 40%;border-radius:0;height:19rem;inset:0 0 auto}.door{padding-top:8rem;padding-bottom:max(2rem, env(safe-area-inset-bottom))}.door__card{box-shadow:var(--shadow-lift)}}
