/* Page-local composition; shared navigation, footer, fonts and buttons are inherited. */
.remembrance-page .skip{z-index:40}
.remembrance-page .header{z-index:30}
.remembrance-intro{padding-top:95px;padding-bottom:100px}
.remembrance-intro h1{font-size:clamp(48px,5.9vw,90px);line-height:1.06;letter-spacing:-.05em;color:var(--deep);margin:30px 0 40px}
.remembrance-intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.remembrance-intro-bottom p{max-width:570px;font-size:15px;line-height:1.8}
.remembrance-intro-bottom .button{flex-shrink:0}
/* Original-ratio images keep the arrangements intact, without zoom or parallax. */
.remembrance-photo{overflow:hidden;border-radius:30px 100px 30px 30px}
.remembrance-photo picture{display:block;width:100%;height:100%}
.remembrance-photo img{display:block;width:100%;height:100%;object-fit:cover;transform:none}
.remembrance-hero-image img{object-position:50% 46%}
.remembrance-heart-image img{object-position:50% 55%}
.remembrance-detail-image img{object-position:52% 50%}
.remembrance-hero-image{margin-top:55px;aspect-ratio:4/3}
.remembrance-heart-image{margin-top:35px;aspect-ratio:3/4;border-radius:24px}
.remembrance-detail-image{margin:0;aspect-ratio:4/3}
.remembrance-selection{align-items:center}
.remembrance-selection .craft-title>p:not(.eyebrow){max-width:320px;font-size:15px;line-height:1.7}
.remembrance-guidance{align-items:center}
.remembrance-page main h2{color:var(--deep)}
.remembrance-offerings article{padding:30px 0;border-top:1px solid var(--line)}
.remembrance-offerings article:first-child{padding-top:0;border-top:0}
.remembrance-offerings h3,.remembrance-details h3{font-size:25px;line-height:1.2;letter-spacing:-.03em;margin-bottom:14px}
.remembrance-offerings p,.remembrance-details p{max-width:440px;font-size:14px;line-height:1.8}
.remembrance-guidance{display:grid;grid-template-columns:1fr 1.3fr;gap:12%;padding-top:0}
.remembrance-guidance h2,.remembrance-request h2{font-size:clamp(48px,5vw,76px);line-height:1.06;letter-spacing:-.05em;margin:23px 0}
.remembrance-guidance-copy{min-width:0}
.remembrance-guidance-copy>p:not(.eyebrow){max-width:470px;font-size:15px;line-height:1.8}
.remembrance-details{margin-top:35px}
.remembrance-details h3:not(:first-child){margin-top:30px}
.remembrance-request{margin:0 3%;border-radius:60px;background:var(--deep);color:var(--paper);display:grid;grid-template-columns:1fr 1.3fr;gap:12%;padding-top:75px;padding-bottom:75px}
.remembrance-page main .remembrance-request h2{color:var(--paper)}
.remembrance-request>div>p:not(.eyebrow){max-width:370px;font-size:15px;line-height:1.8}
.remembrance-contact{align-self:center;min-width:0}
.remembrance-mail-hint{font-size:12px;line-height:1.8;margin-top:16px}
.remembrance-mail{display:inline-block;font-size:14px;line-height:1.8;margin-top:8px;overflow-wrap:anywhere;text-underline-offset:5px}
.remembrance-mail:hover,.remembrance-mail:focus-visible{text-decoration:underline}
.remembrance-in-person{margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}
.remembrance-in-person p{font-size:14px;line-height:1.8;margin-bottom:16px}
.remembrance-in-person .text-link:hover{color:var(--paper)}
.remembrance-page .button:active{transform:translateY(0)}
/* Quiet, one-time opacity reveals: no travel, word stagger or picture parallax. */
.remembrance-page main .motion-item{translate:none;transition:opacity .85s var(--motion-ease)}
.remembrance-page main .motion-heading{opacity:1}
.remembrance-page main .word-ink{translate:none;clip-path:inset(-1em);transition:opacity .8s ease}
.remembrance-page main .motion-waiting .word-ink{translate:none;clip-path:inset(-1em);opacity:0}
.remembrance-page main .motion-waiting:focus-within .word-ink{opacity:1}
.remembrance-page main .button.motion-item{transition:opacity .85s var(--motion-ease),background .35s,color .35s,transform .35s var(--motion-ease),box-shadow .35s}
@media(min-width:1001px){
  .remembrance-hero-image{width:80%;max-width:1120px}
  .remembrance-guidance{align-items:stretch}
  .remembrance-detail-image{position:relative;aspect-ratio:auto;min-height:0}
  .remembrance-detail-image picture{position:absolute;inset:0}
  .remembrance-selection{grid-template-rows:auto auto auto auto;row-gap:0;align-items:stretch}
  .remembrance-selection .craft-title{display:grid;grid-template-rows:subgrid;grid-row:1 / 5}
  .remembrance-selection .remembrance-offerings{grid-column:2;grid-row:4;align-self:start;margin-top:35px}
  .remembrance-heart-image{position:relative;aspect-ratio:auto;min-height:0;border-top-right-radius:100px}
  .remembrance-heart-image picture{position:absolute;inset:0}
}
@media(max-width:1000px){
  .remembrance-intro{padding-top:70px;padding-bottom:70px}
  .remembrance-guidance,.remembrance-request{gap:7%}
  .remembrance-offerings h3,.remembrance-details h3{font-size:23px}
}
@media(max-width:700px){
  .remembrance-intro{padding-top:55px;padding-bottom:55px}
  .remembrance-intro h1{font-size:clamp(40px,10.5vw,65px);margin:25px 0 30px}
  .remembrance-intro-bottom{flex-direction:column;align-items:flex-start;gap:25px}
  .remembrance-photo{border-radius:22px 65px 22px 22px}
  .remembrance-hero-image{margin-top:35px;border-radius:24px}
  .remembrance-heart-image{margin-top:30px;border-radius:24px;border-top-right-radius:65px}
  .remembrance-selection .craft-title>p:not(.eyebrow){max-width:340px;font-size:14px}
  .remembrance-intro-bottom p,.remembrance-guidance-copy>p:not(.eyebrow),.remembrance-request>div>p:not(.eyebrow){font-size:14px}
  .remembrance-selection h2,.remembrance-guidance h2,.remembrance-request h2{font-size:clamp(40px,10.5vw,55px)}
  .remembrance-offerings p,.remembrance-details p{font-size:13px}
  .remembrance-guidance{grid-template-columns:1fr;gap:30px;padding-top:0}
  .remembrance-request{margin:0 4%;border-radius:32px;grid-template-columns:1fr;grid-auto-rows:auto;height:auto;min-height:0;align-content:start;align-items:start;gap:18px;padding:24px 6% 28px}
  .remembrance-request>div:first-child{display:grid;grid-template-rows:auto auto;gap:16px;position:relative}
  /* Keep the section's accessible heading without an invisible layout row.
     The shared main h2 color otherwise makes it match this dark panel. */
  .remembrance-page main .remembrance-request h2{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .remembrance-request .remembrance-contact{align-self:start}
  .remembrance-request .remembrance-mail-hint{margin-top:12px}
  .remembrance-request .remembrance-mail{margin-top:6px}
  .remembrance-request .remembrance-in-person{margin-top:18px;padding-top:16px}
  .remembrance-request .remembrance-in-person p{margin-bottom:12px}
}
@media(prefers-reduced-motion:reduce){
  .remembrance-page main .motion-item,.remembrance-page main .word-ink{transition:none;opacity:1}
}
