/* White Garden: detail sections only. All copy and native semantics retained. */
#flow,.message,#faq { background:#fff; }
/* Six small seals along the existing progress rail. */
#flow .flow__num {
  border:1px solid rgba(110,31,46,.34);background:#fff;color:var(--wine);
  box-shadow:inset 0 0 0 5px #fff,0 2px 8px rgba(90,47,58,.035);
  transition:background .45s ease,border-color .45s ease,color .45s ease;
}
#flow .flow__num::after {
  content:"";position:absolute;inset:-5px;border:1px solid rgba(191,103,122,.16);
  border-radius:50%;opacity:0;transform:scale(.94);transition:opacity .5s ease,transform .5s ease;
}
#flow .flow__step.is-passed .flow__num {
  transform:none;background:#f9e9ed;color:var(--wine);border-color:rgba(110,31,46,.5);
}
#flow .flow__step.is-passed .flow__num::after { opacity:1;transform:scale(1); }
#flow .flow__rail { width:1px;background:repeating-linear-gradient(#eadbdd 0 3px,transparent 3px 8px); }
#flow .flow__railFill { background:linear-gradient(#bf7888,var(--wine)); }
#flow .flow__body p { line-height:2; }
#flow .garden-flow__finish {
  display:block;width:46px;height:28px;margin:15px 0 0;color:#aebe93;
}
#flow .schedule { margin-top:48px;padding-top:30px;border-top:1px solid #eee6e7; }
#flow .schedule__title { line-height:1.7; }
#flow .schedule__line { gap:22px;margin-top:24px; }
#flow .schedule__line::before,#flow .schedule__line li::before { content:none; }
#flow .schedule__line li {
  grid-template-columns:88px minmax(0,1fr);column-gap:16px;row-gap:3px;
  padding:0;align-items:start;
}
#flow .schedule__line time {
  position:relative;display:flex;align-items:center;justify-content:center;
  width:88px;min-width:0;min-height:65px;grid-row:span 2;padding:13px 3px 5px;
  font-size:15px;letter-spacing:0;line-height:1.3;white-space:nowrap;
  border:1px solid #eadbdd;border-radius:5px 5px 9px 9px;
  background:linear-gradient(#f7e9ed 0 12px,#fff 12px);
  box-shadow:0 4px 8px rgba(93,54,65,.035);
}
#flow .schedule__line time::before,#flow .schedule__line time::after {
  content:"";position:absolute;top:-4px;width:3px;height:8px;
  border-radius:2px;background:#c39b9f;box-shadow:0 1px 0 #fff;
}
#flow .schedule__line time::before { left:20px; }
#flow .schedule__line time::after { right:20px; }
#flow .schedule__line b { padding-top:2px;line-height:1.7; }
#flow .schedule__line span { line-height:1.85; }
#flow .schedule__note { margin-top:22px; }
.garden-details-ready #flow .schedule__line li {
  opacity:0;transform:translateY(10px);transition:opacity .65s ease,transform .75s cubic-bezier(.22,1,.36,1);
}
.garden-details-ready #flow .schedule__line li:nth-child(2) { transition-delay:.07s; }
.garden-details-ready #flow .schedule__line li:nth-child(3) { transition-delay:.14s; }
.garden-details-ready #flow .schedule__line li:nth-child(4) { transition-delay:.21s; }
.garden-details-ready #flow .schedule.is-calendar-in .schedule__line li { opacity:1;transform:none; }
/* Message and credentials are now two parts of one quiet, white sheet. */
.message .message__inner {
  position:relative;gap:26px;padding:32px 23px;border:1px solid #eadfe1;
  border-radius:26px 26px 26px 8px;background:#fff;
  box-shadow:0 8px 26px rgba(89,43,53,.025);
}
.message .message__text { padding:0;border:0;border-radius:0;background:none;max-width:none; }
.message .message__text > p:not(.eyebrow) { line-height:2.05; }
.message .qual {
  position:relative;gap:18px;margin:0;padding:30px 0 0;border:0;border-radius:0;background:none;
}
.message .qual::before {
  content:"";position:absolute;top:0;left:50%;width:48px;height:1px;
  transform:translateX(-50%);background:#d9bcc2;
}
.message .qual__imgs { gap:12px;align-items:center; }
.message .qual__imgs img {
  width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:3px;
  border:1px solid #eee7e7;padding:3px;background:#fff;box-shadow:0 3px 10px rgba(85,40,48,.025);
}
.message .qual p:not(.qual__kicker) { line-height:2; }
.message .qual h3 { font-size:17px;line-height:1.7; }
/* Native details remain usable with keyboard or JavaScript disabled. */
#faq .faq__head { position:relative; }
#faq .garden-faq__sprig { display:inline-block;width:34px;height:22px;margin-left:5px;vertical-align:middle; }
#faq .faq__head .eyebrow { align-items:center; }
#faq .faq__list { margin-top:34px;border-color:#eadfe1; }
#faq details { border-color:#eadfe1; }
#faq summary { padding:23px 38px 23px 45px;line-height:1.85;font-weight:500; }
#faq summary::before {
  left:0;top:23px;display:grid;place-items:center;width:29px;height:29px;
  background:#faecef;border-radius:48% 52% 46% 54%;font-size:17px;line-height:1;
}
#faq summary::after {
  right:1px;width:23px;height:23px;border:0;border-radius:0;
  background-size:11px 1px,1px 11px;transition:background-size .25s ease;
}
#faq details[open] summary::after {
  transform:none;background-size:11px 1px,1px 0;
}
#faq summary:focus-visible { outline:2px solid #bd8693;outline-offset:4px;border-radius:4px; }
#faq .faq__a { padding:0 16px 24px 45px; }
#faq .faq__a::before { left:6px;top:0;font-size:17px;color:#b4888f; }
#faq .faq__a p { line-height:2.05;font-size:14px; }
#faq details[open] .faq__a { animation:none; }
@media(min-width:600px) {
  #flow .schedule__line { grid-template-columns:repeat(4,minmax(0,1fr));gap:20px; }
  #flow .schedule__line li { grid-template-columns:1fr;grid-template-rows:65px auto 1fr;row-gap:8px; }
  #flow .schedule__line time { grid-row:auto;width:92px; }
  #flow .schedule__line b { padding-top:4px; }
}
@media(min-width:960px) {
  #flow .flow__rail { margin-left:-.5px; }
  .message .message__inner { padding:42px 44px;gap:44px;align-items:start;grid-template-columns:1.15fr 1fr; }
  .message .message__text { padding:4px 0; }
  .message .qual { padding:8px 0 0 34px; }
  .message .qual::before { top:15px;left:0;width:1px;height:48px;transform:none; }
  .message .qual__imgs { max-width:390px; }
  #faq summary { padding:25px 46px 25px 50px;font-size:15.5px; }
  #faq summary::before { top:25px; }
  #faq .faq__a { padding-left:50px; }
}
@media(prefers-reduced-motion:reduce) {
  .garden-details-ready #flow .schedule__line li { opacity:1;transform:none;transition:none; }
  #flow .flow__num,#flow .flow__num::after,#faq summary::after { transition:none; }
}