:root {
  --floresta:#1f3d33; --oliva:#4a5a3a; --creme:#f4eee1; --papel:#fbf8f1;
  --ouro:#b8995a; --ouro-claro:#d9c28e; --tinta:#24231f; --salvia:#cdd6c4;
  --salvia-claro:#e8ede3;
  --duration-quick:150ms; --duration-fast:250ms; --duration-slow:400ms;
  --ease-smooth-out:cubic-bezier(0.22,1,0.36,1);
}
* { box-sizing:border-box; }
html { font-size:100%; }
body { margin:0; background:var(--creme); color:var(--tinta); font-family:"Nunito Sans",Arial,sans-serif; font-size:1rem; line-height:1.55; }
h1,h2,h3,p,figure,blockquote { margin:0; }
h1,h2,h3,.brand,.recognition-closing,blockquote { font-family:"Playfair Display",Georgia,serif; font-weight:500; color:var(--floresta); }
h1,h2,h3 { text-wrap:pretty; }
img { display:block; max-width:100%; }
svg { display:block; }
button,input { font:inherit; }
[hidden] { display:none !important; }
.wrap { width:calc(100% - 6rem); max-width:1320px; margin-inline:auto; }
.wrap > *, .opening > *, .authority-grid > * { min-width:0; }
.site-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-block:1.7rem; border-bottom:1px solid var(--salvia); }
.brand { font-size:1.65rem; line-height:1.2; }
.byline,.eyebrow,.signature { text-transform:uppercase; letter-spacing:.13em; font-size:.7rem; font-weight:600; color:var(--floresta); }
.byline { margin-top:.5rem; }
.preview { font-size:.75rem; color:var(--floresta); border:1px solid var(--salvia); padding:.35rem .65rem; text-align:center; }
.opening { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) minmax(0,.9fr); column-gap:1rem; align-items:start; padding-block:2rem 2.5rem; }
.opening-copy { grid-column:1; grid-row:1; align-self:start; position:relative; overflow:visible; }
.micro-network { display:none; }
.opening-copy .eyebrow { margin-bottom:1.3rem; }
h1 { font-size:clamp(2.1rem,3.5vw,3.4rem); line-height:1.15; letter-spacing:-.035em; }
.script { font-family:Parisienne,"Brush Script MT",cursive; font-weight:400; font-size:1.3em; color:var(--floresta); }
.intro { margin-top:1.5rem; line-height:1.65; }
.signature { margin-top:1.1rem; }
.contact-paper { grid-column:3; grid-row:1; padding:1.6rem; border-top:1px solid var(--ouro); background:var(--papel); box-shadow:0 14px 36px #24231f08; }
.contact-paper h2 { font-size:1.8rem; line-height:1.2; margin-top:.7rem; }
.contact-intro { margin-block:1rem 1.2rem; }
.field { margin-bottom:1rem; }
label { display:block; font-weight:600; margin-bottom:.35rem; }
input { display:block; width:100%; min-width:0; min-height:46px; padding:.6rem .7rem; border:1px solid var(--oliva); border-radius:0; background:var(--papel); color:var(--tinta); }
input[aria-invalid="true"] { border:2px solid var(--floresta); }
.field-error { color:var(--floresta); font-size:1rem; margin-top:.4rem; }
button { display:flex; justify-content:space-between; align-items:center; gap:.5rem; width:100%; min-height:48px; padding:.7rem 1rem; border:1px solid var(--floresta); background:var(--floresta); color:var(--creme); font-weight:600; cursor:pointer; white-space:normal; }
button:hover:not(:disabled) { background:var(--tinta); }
:focus-visible { outline:3px solid var(--floresta); outline-offset:4px; }
.demo-note { margin-top:.8rem; font-size:1rem; line-height:1.4; }
.next-step { border-top:1px solid var(--salvia); padding-top:1rem; margin-top:1.2rem; }
.next-step h3 { font-size:1.4rem; }
.next-step p { margin-block:.6rem 1rem; }
button:disabled { background:var(--salvia); border-color:var(--oliva); color:var(--floresta); cursor:not-allowed; }
.portrait-scene { grid-column:2; grid-row:1; display:grid; position:relative; isolation:isolate; overflow:clip; width:100%; max-width:540px; aspect-ratio:480 / 640; padding:0; align-self:start; place-items:center; justify-self:center; }
.portrait-scene::before { content:""; position:absolute; inset:0 50% 0 0; background:var(--floresta); z-index:-2; }
.portrait-network { position:absolute; inset:0; width:100%; height:100%; z-index:-1; pointer-events:none; }
.portrait { position:relative; isolation:isolate; }
.portrait::after { content:""; position:absolute; inset:.75rem -.65rem -.75rem .65rem; border:1px solid var(--ouro); z-index:-1; pointer-events:none; }
.portrait img { display:block; width:100%; height:auto; object-fit:cover; }
.portrait-bust { width:84%; }
.portrait-bust::after { inset:8px -8px -8px 8px; }
.portrait-bust img { aspect-ratio:1 / 1; max-height:min(68vh,600px); object-position:50% 18%; }
.constellation { overflow:clip; }
.constellation line,.constellation path { fill:none; stroke:var(--ouro); stroke-width:1px; stroke-opacity:.9; vector-effect:non-scaling-stroke; stroke-dasharray:1; stroke-dashoffset:0; }
.constellation circle { fill:var(--ouro); opacity:1; }
.constellation .your-place { animation-delay:2.9s; }
.constellation .your-place-ring { fill:none; stroke:var(--ouro); stroke-width:1px; }
@keyframes stroke-draw { from { stroke-dashoffset:1; } to { stroke-dashoffset:0; } }
@keyframes point-fade { from { opacity:0; } to { opacity:1; } }
.movements { padding-block:2rem 4.5rem; background:var(--papel); box-shadow:0 0 0 100vmax var(--papel); clip-path:inset(0 -100vmax); }
.movements h2 { font-size:2rem; margin-bottom:1.7rem; }
.movement-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); position:relative; isolation:isolate; }
.movement-rail { position:absolute; inset:0; width:100%; height:24px; z-index:-1; pointer-events:none; }
.rail-vertical { display:none; }
.movement h3 { font-size:1.5rem; margin-block:1.2rem .6rem; }
.movement p { padding-right:2rem; max-width:34ch; }
.connector { width:100%; height:24px; }
.recognition { background:var(--floresta); color:var(--creme); padding-block:5rem; }
.recognition-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:3rem 6rem; }
.recognition h2 { color:var(--creme); font-size:clamp(2rem,3.3vw,3.4rem); line-height:1.2; max-width:12ch; }
.recognition-list { margin:0; padding:0 0 0 1.5rem; list-style:none; border-left:1px solid var(--ouro); }
.recognition-list li { position:relative; padding-block:0 1.7rem; font-size:1.1rem; }
.recognition-list li:last-child { padding-bottom:0; }
.recognition-list li::before { content:""; position:absolute; top:.6rem; left:calc(-1.5rem - 4px); width:7px; height:7px; background:var(--ouro); border-radius:50%; }
.recognition-closing { grid-column:1 / -1; max-width:27ch; margin:1rem auto 0; text-align:center; font-size:clamp(2rem,3.6vw,3.5rem); line-height:1.35; color:var(--creme); }
.recognition .script { color:var(--creme); }
.authority { background:var(--papel); padding-block:5rem 2rem; }
.authority-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:2.5rem 5rem; }
.authority-heading { grid-column:2; }
.authority-heading h2 { font-size:clamp(2.5rem,4.4vw,4.25rem); line-height:1.2; margin-block:.65rem; }
.portrait-half { grid-column:1; grid-row:1 / 3; align-self:start; justify-self:center; width:calc(100% - 2rem); max-width:min(64vh,576px); margin:0 1rem 1rem; }
.portrait-half img { aspect-ratio:4 / 5; max-height:min(80vh,720px); object-position:50% 40%; }
.authority-copy { grid-column:2; }
.authority-copy h3 { font-size:1.8rem; line-height:1.3; margin-bottom:1.2rem; }
.authority-copy > p { max-width:58ch; }
.journey { margin:1.5rem 0 0; padding:0; list-style:none; }
.journey li { position:relative; min-height:52px; padding-left:calc(24px + .7rem); }
.journey span { display:block; padding-block:.25rem .5rem; }
.question-word { white-space:nowrap; }
.node { position:absolute; top:0; bottom:0; left:0; width:24px; height:auto; }
blockquote { grid-column:1 / -1; max-width:43ch; margin:1rem auto; text-align:center; font-size:2rem; line-height:1.5; }
cite { display:block; font-family:"Nunito Sans",Arial,sans-serif; font-style:normal; font-size:1rem; margin-top:1rem; }
.authority-footer { grid-column:1 / -1; display:flex; justify-content:space-between; gap:1rem; padding-top:1.5rem; border-top:1px solid var(--salvia); color:var(--floresta); font-size:1rem; }
@media (max-width:1099px) {
  .wrap { width:calc(100% - 3rem); }
  .opening { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:1.5rem 2rem; }
  .opening-copy { grid-row:1; align-self:start; }
  .contact-paper { grid-column:2; grid-row:1 / 3; align-self:start; }

  .portrait-scene { grid-column:1; grid-row:2; }
  .recognition-grid { gap:3rem; }
  .authority-grid { column-gap:2.5rem; }
}
@media (max-width:699px) {
  .wrap { width:calc(100% - 2rem); }
  .site-header { padding-block:.25rem; gap:.5rem; align-items:flex-start; }
  .brand { font-size:1.4rem; }
  .byline { font-size:.6875rem; letter-spacing:.06em; margin-top:.3rem; }
  .preview { max-width:6.2rem; padding:.2rem .35rem; font-size:.6875rem; line-height:1.3; }
  .opening { display:flex; flex-direction:column; align-items:stretch; gap:0; padding-block:1.1rem 2rem; }
  .opening-copy .eyebrow { font-size:.6875rem; letter-spacing:.07em; margin-bottom:.55rem; }
  h1 { font-size:1.9rem; line-height:1.1; letter-spacing:-.035em; }
  h1 .script { font-size:1.3em; }
  .intro { margin-top:.75rem; line-height:1.4; }
  .contact-paper { margin-top:1.15rem; padding:1rem; }
  .contact-paper .eyebrow { font-size:.6875rem; }
  .contact-paper h2 { font-size:1.45rem; line-height:1.15; margin-top:.35rem; }
  .contact-intro { margin-block:.6rem .8rem; line-height:1.35; }
  .signature { margin-top:.45rem; font-size:.6875rem; letter-spacing:.07em; }
  .portrait-scene { margin:1rem auto 0; padding:0; max-width:75.15vh; }

  .portrait img { max-height:62vh; }
  .opening-copy .eyebrow { padding-right:80px; }
  .micro-network { display:block; position:absolute; top:2px; right:0; width:72px; height:28px; pointer-events:none; }
  .movements { padding-block:1rem 3rem; }
  .movements h2 { font-size:1.8rem; }
  .movement-grid { display:flex; flex-direction:column; }
  .movement { position:relative; padding:0 0 1.8rem 1.5rem; }
  .movement-rail { height:100%; }
  .rail-horizontal { display:none; }
  .rail-vertical { display:block; }
  .movement:last-child { padding-bottom:0; }
  .connector { position:absolute; left:0; top:0; width:8px; height:24px; }
  .movement h3 { margin-top:0; }
  .movement p { padding:0; }
  .recognition { padding-block:3rem; }
  .recognition-grid { display:flex; flex-direction:column; gap:2rem; }
  .recognition h2 { max-width:17ch; font-size:2rem; }
  .recognition-list { margin-left:.25rem; }
  .recognition-closing { font-size:2rem; text-align:left; margin-top:0; }
  .authority { padding-top:3rem; }
  .authority-grid { display:flex; flex-direction:column; gap:2rem; }
  .authority-heading h2 { font-size:2.5rem; }
  .portrait-half { align-self:center; margin:0 auto 1rem; max-width:49.6vh; }
  blockquote { font-size:1.6rem; text-align:left; }
  .authority-footer { flex-direction:column; }
}
@media (max-width:360px) {
  .site-header { padding-block:.5rem; }
  .opening.wrap { width:calc(100% - 1.5rem); }
  .brand { font-size:1.25rem; }
  .byline { font-size:.6875rem; letter-spacing:0; margin-top:.15rem; }
  .opening { padding-top:.4rem; }
  .opening-copy .eyebrow { letter-spacing:0; margin-bottom:.25rem; padding-right:80px; }
  .signature { margin-top:.25rem; }
  h1 { font-size:1.5rem; line-height:1.08; }
  h1 .script { font-size:2rem; }
  .intro { margin-top:.375rem; line-height:1.25; }
  .contact-paper { padding:.5rem; margin-top:.375rem; }
  .contact-paper h2 { font-size:1.25rem; margin-top:.25rem; }
  .contact-intro { margin-block:.25rem .375rem; line-height:1.25; }
  .authority-grid.wrap { width:calc(100% - 32px); }
  .authority-copy h3 { font-size:1.25rem; }
  .authority-copy h3 .script { font-size:1.6em; }
}
/* Flexible tracks and wrapping remain usable when the root text size doubles. */
body { overflow-wrap:break-word; hyphens:manual; }
h1,h2,h3,.script,blockquote,summary,.eyebrow { hyphens:none; }
/* Complete static art is the baseline, including browsers without view timelines. */
@supports (animation-timeline:view()) {
  .micro-network line,.micro-network path {
    animation:stroke-draw 1.6s var(--ease-smooth-out) both;
  }
  .micro-network circle { animation:point-fade 300ms var(--ease-smooth-out) calc(1.6s + var(--i,0) * 100ms) both; }
  .micro-network .your-place { animation-delay:2.9s; }
  .reveal-on-view line,.reveal-on-view path {
    animation:stroke-draw linear both;
    animation-timeline:view();
    animation-range:entry 10% cover 40%;
  }
  @media (min-width:700px) {
    .portrait-network line,.portrait-network path { animation:stroke-draw 1.6s var(--ease-smooth-out) calc(var(--i,0) * 100ms) both; }
    .portrait-network circle { animation:point-fade 300ms var(--ease-smooth-out) calc(1.6s + var(--i,0) * 100ms) both; }
    .portrait-network .your-place { animation-delay:2.9s; }
  }
}
@media (prefers-reduced-motion:reduce) {
  .constellation line,.constellation path { animation:none; stroke-dashoffset:0; }
  .constellation circle { animation:none; opacity:1; }
}

/* Complete page: each function keeps its own editorial rhythm. */
#contato { scroll-margin-block-start:1rem; }
.section-space { padding-block:clamp(3rem,6vw,6rem); }
.section-space h2 { font-size:clamp(2rem,3.4vw,3.4rem); line-height:1.2; text-wrap:pretty; }
.paths { background:var(--papel); }
.paths-heading { max-width:42rem; border-left:4px solid var(--salvia); padding-left:1.5rem; margin-bottom:3rem; }
.paths-heading .eyebrow { margin-bottom:.8rem; }
.paths-list { margin-left:15%; padding-left:2rem; border-left:1px solid var(--ouro); }
.path-entry { position:relative; display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:1.5rem 3rem; padding-block:1.7rem; }
.path-entry:first-child { padding-top:0; }
.path-entry:last-child { padding-bottom:0; }
.path-entry::before { content:""; position:absolute; left:calc(-2rem - 4px); top:2.4rem; width:7px; height:7px; border-radius:50%; background:var(--ouro); }
.path-entry:first-child::before { top:.7rem; }
.path-entry h3 { font-size:clamp(1.5rem,2.2vw,2.1rem); line-height:1.25; }
.path-entry p { max-width:52ch; }
.path-entry + .path-entry { border-top:1px solid var(--salvia); }
.benefits { background:var(--creme); }
.benefits h2 { max-width:25ch; }
.benefits-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2.7rem 5rem; list-style:none; margin:3rem 0 2rem; padding:0; }
.benefits-list li { display:grid; grid-template-columns:2.4rem minmax(0,1fr); gap:1rem; align-items:baseline; }
.roman { font-family:"Playfair Display",Georgia,serif; font-size:1rem; color:var(--oliva); }
.benefits-list p { font-family:"Playfair Display",Georgia,serif; color:var(--floresta); font-size:clamp(1.5rem,2.2vw,2rem); line-height:1.4; }
.process-note { max-width:64ch; padding-top:1.5rem; border-top:1px solid var(--salvia); font-size:1rem; }
.audience { background:var(--salvia-claro); border-bottom:1px solid var(--salvia); }
.audience-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr); gap:5rem; align-items:center; }
.audience-list { list-style:none; margin:2rem 0 0; padding:0; }
.audience-list li { position:relative; padding:1rem 0 1rem 1.5rem; max-width:62ch; }
.audience-list li::before { content:""; position:absolute; left:0; top:1.65rem; width:6px; height:6px; border-radius:50%; background:var(--ouro); }
.audience-aside { border-left:1px solid var(--salvia); padding-left:2.5rem; }
.audience-invitation { font-family:"Playfair Display",Georgia,serif; font-size:clamp(2rem,3vw,3rem); line-height:1.35; color:var(--floresta); }
.audience-start { font-family:"Playfair Display",Georgia,serif; font-size:1.25rem; margin-top:1.5rem; color:var(--floresta); }
.beginning { background:var(--creme); }
.beginning-path { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:2.8rem 0 0; padding:0; list-style:none; }
.beginning-path li { position:relative; padding:3rem 1.6rem 0 0; min-width:0; }
.beginning-path h3 { font-size:1.5rem; line-height:1.3; margin-bottom:.8rem; }
.beginning-path p { max-width:28ch; }
.step-node { position:absolute; inset:0; width:100%; height:24px; pointer-events:none; }
.step-vertical { display:none; }
.final-invitation { background:var(--floresta); color:var(--creme); }
.invitation-layout { position:relative; isolation:isolate; min-height:440px; display:flex; align-items:center; }
.invitation-network { position:absolute; right:0; top:0; width:30%; height:100%; pointer-events:none; }
.invitation-copy { width:65%; padding-block:1rem; }
.final-invitation h2 { color:var(--creme); font-size:clamp(2.4rem,4.2vw,4.25rem); max-width:20ch; }
.final-invitation .script { color:var(--ouro-claro); padding-inline-end:.1em; }
.invitation-copy > p { max-width:49ch; margin-block:1.8rem 2rem; font-size:1.125rem; }
.invitation-network .your-place { fill:var(--ouro-claro); }
.cta { display:inline-flex; justify-content:center; align-items:center; min-height:48px; max-width:100%; padding:.9rem 1.4rem; background:var(--creme); color:var(--floresta); border:1px solid var(--creme); font-weight:600; text-decoration:none; text-align:center; text-wrap:balance; line-height:1.45; }
.cta:hover { background:var(--papel); text-decoration:underline; text-underline-offset:.2em; }
.final-invitation .cta:focus-visible { outline:3px solid var(--ouro-claro); outline-offset:5px; }
.faq { background:var(--papel); }
.faq-layout { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:5rem; align-items:start; }
.faq-list { min-width:0; border-top:1px solid var(--salvia); }
.faq details { border-bottom:1px solid var(--salvia); }
.faq summary { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; min-height:48px; padding:1.3rem .35rem 1.3rem 0; list-style:none; font-family:"Playfair Display",Georgia,serif; color:var(--floresta); font-size:1.3rem; line-height:1.4; cursor:pointer; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary::after { content:"+"; flex:0 0 1em; font-family:"Nunito Sans",Arial,sans-serif; text-align:center; }
.faq details[open] > summary::after { content:"−"; }
.faq details > p { padding:0 2.5rem 1.5rem 0; max-width:65ch; }
.site-footer { background:var(--creme); color:var(--floresta); padding-block:2rem; font-size:1rem; }
.site-footer p + p { margin-top:.5rem; }
@media (max-width:1099px) {
  .paths-list { margin-left:5%; }
  .path-entry { column-gap:2rem; }
  .benefits-list { column-gap:2rem; }
  .audience-grid,.faq-layout { gap:2.5rem; }
  .audience-aside { padding-left:1.5rem; }
  .beginning-path { display:block; max-width:42rem; }
  .beginning-path li { padding:0 0 2rem 2.5rem; min-height:5rem; }
  .beginning-path li:last-child { padding-bottom:0; }
  .beginning-path p { max-width:50ch; }
  .step-node { width:16px; height:100%; }
  .step-horizontal { display:none; }
  .step-vertical { display:block; }
}
@media (max-width:699px) {
  .paths-heading { padding-left:1rem; margin-bottom:2rem; }
  .paths-list { margin-left:4px; padding-left:1.3rem; }
  .path-entry { grid-template-columns:minmax(0,1fr); gap:.8rem; padding-block:1.5rem; }
  .path-entry::before { left:calc(-1.3rem - 4px); top:2.2rem; }
  .benefits-list { grid-template-columns:minmax(0,1fr); gap:2rem; margin-top:2rem; }
  .benefits-list li { grid-template-columns:1.6rem minmax(0,1fr); gap:.8rem; }
  .audience-grid,.faq-layout { grid-template-columns:minmax(0,1fr); gap:2rem; }
  .audience-aside { border-left:0; border-top:1px solid var(--salvia); padding:2rem 0 0; }
  .audience-invitation { max-width:17ch; }
  .invitation-layout { display:flex; flex-direction:column; align-items:stretch; min-height:0; }
  .invitation-network { position:relative; align-self:flex-end; width:100%; height:150px; margin-bottom:1.5rem; }
  .invitation-copy { width:100%; padding:0; }
  .final-invitation h2 { font-size:2rem; }
  .final-invitation h2 .script { font-size:1.2em; }
  .invitation-copy > p { font-size:1rem; }
  .cta { padding-inline:.8rem; }
  .faq details > p { padding-right:.5rem; }
}

/* correção 1 · previa-completa-01 (braço de produção Claude, aux-golfinho) */
blockquote { min-width:0; max-width:min(43ch,100%); overflow-wrap:break-word; }
.contact-paper, .contact-paper form, .contact-paper input { min-width:0; max-width:100%; box-sizing:border-box; }
.final-invitation h2 .script { padding-inline-end:0; margin-inline-end:-.08em; }
@media (max-width:480px) { blockquote { overflow-wrap:break-word; } }
.faq details, .faq summary, .faq summary > * { min-width:0; }
@media (max-width:480px) { .faq summary { overflow-wrap:anywhere; } }

/* Correção 2: rem container thresholds follow enlarged root text.
   Keep the original asymmetric tracks at normal desktop/tablet text size.
   46rem = 736px at 100%, 1472px at 200%; main spans the viewport.
   Unlike media-query rem, these thresholds respond to html font-size. */
main { container:page / inline-size; }
@media (min-width:700px) {
  @container page (max-width:46rem) {
    .opening { grid-template-columns:minmax(0,1fr); row-gap:1.5rem; }
    .opening-copy,.contact-paper,.portrait-scene { grid-column:auto; grid-row:auto; }
    .faq-layout,.benefits-list,.path-entry,.audience-grid,.recognition-grid { grid-template-columns:minmax(0,1fr); }
    .authority-grid { display:flex; flex-direction:column; gap:2rem; }
    .portrait-half { align-self:center; margin:0 auto 1rem; }
    .authority-footer { flex-direction:column; }
    .audience-aside { border-left:0; border-top:1px solid var(--salvia); padding:2rem 0 0; }
    .movement-grid { display:flex; flex-direction:column; }
    .movement { position:relative; padding:0 0 1.8rem 1.5rem; }
    .movement-rail { height:100%; }
    .rail-horizontal { display:none; }
    .rail-vertical { display:block; }
    .movement:last-child { padding-bottom:0; }
    .connector { position:absolute; left:0; top:0; width:8px; height:24px; }
    .movement h3 { margin-top:0; }
    .movement p { padding:0; }
    .invitation-layout { flex-direction:column; align-items:stretch; min-height:0; }
    .invitation-network { position:relative; align-self:flex-end; width:100%; height:150px; margin-bottom:1.5rem; }
    .invitation-copy { width:100%; padding:0; }
  }
}
@container page (max-width:68.6875rem) {
  .beginning-path { display:block; max-width:42rem; }
  .beginning-path li { padding:0 0 2rem 2.5rem; min-height:5rem; }
  .beginning-path li:last-child { padding-bottom:0; }
  .beginning-path p { max-width:50ch; }
  .step-node { width:16px; height:100%; }
  .step-horizontal { display:none; }
  .step-vertical { display:block; }
}
