:root {
  --activity-plum: #6d4b66;
  --activity-berry: #aa6e95;
  --activity-pink: #e6cfe0;
  --activity-blue: #cbdce7;
  --activity-honey: #edc879;
  --activity-paper: #fbf6ef;
}

.activities-page { overflow-x: hidden; background: var(--activity-paper); }
.activities-header { position: relative; }
.activities-home-link {
  justify-self: end;
  min-height:48px;
  padding:6px 15px 6px 7px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  border:1px solid rgba(104,72,97,.12);
  border-radius: 999px;
  background:rgba(255,253,249,.82);
  color:#5b4655;
  font-size:.76rem;
  font-weight: 700;
  letter-spacing:.02em;
  text-decoration: none;
  box-shadow:0 10px 26px rgba(71,48,61,.09);
  backdrop-filter:blur(12px);
  transition: transform .25s,background .25s;
}
.activities-home-link:hover { transform: translateY(-2px); background: #fff; }
.activities-home-icon { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#e8d8e7; color:#66485f; font-size:1rem; transition:transform .25s ease,background .25s ease; }
.activities-home-link:hover .activities-home-icon { background:#dfc9dd; transform:translateX(-2px); }

.activities-hero {
  min-height: 700px;
  padding: 70px max(24px,calc((100vw - 1320px)/2)) 88px;
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  align-items: center;
  gap: 64px;
  background:
    radial-gradient(circle at 4% 12%,rgba(222,202,221,.72) 0 13%,transparent 13.2%),
    linear-gradient(135deg,#fbf6ef 18%,#f5e9e7 58%,#efe5ef);
}
.activities-hero-copy h1 {
  max-width: 680px;
  font: 400 clamp(4.6rem,7.8vw,8rem)/.84 "Forum",Georgia,serif;
  letter-spacing: -.055em;
}
.activities-lead {
  max-width: 610px;
  margin: 34px 0 25px;
  color: #60555d;
  font-size: 1.1rem;
  line-height: 1.75;
}
.activities-promises { display: flex; flex-wrap: wrap; gap: 9px; }
.activities-promises span {
  padding: 9px 14px;
  border: 1px solid rgba(109,75,102,.15);
  border-radius: 999px;
  background: rgba(255,253,249,.7);
  color: var(--activity-plum);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.activities-photo-story { position: relative; min-height: 540px; }
.activities-photo {
  position: absolute;
  margin: 0;
  padding: 12px 12px 52px;
  border-radius: 28px;
  background: #fffdf9;
  box-shadow: 0 28px 55px rgba(66,43,59,.18);
}
.activities-photo img { width: 100%; height: 100%; display: block; object-fit: cover; border-radius: 18px; }
.activities-photo figcaption { position: absolute; left: 25px; bottom: 16px; color: #54454f; font: 1.08rem/1 "Forum",Georgia,serif; }
.activities-photo-main { inset: 0 9% 0 0; transform: rotate(-2.4deg); }
.activities-photo-main img { object-position: center 42%; }
.activities-photo-small { z-index: 2; right: -2%; bottom: -7%; width: 42%; height: 270px; transform: rotate(5deg); }

.discovery-section {
  padding: 90px max(24px,calc((100vw - 1320px)/2));
  background: #fffdf9;
}
.discovery-heading { max-width: 850px; margin: 0 auto 48px; text-align: center; }
.discovery-heading h2 { font-size: clamp(3.6rem,6vw,6rem); }
.discovery-heading > p:last-child { max-width: 680px; margin: 24px auto 0; color: #6a5c64; font-size: 1.05rem; line-height: 1.7; }
.discovery-journey {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 14px;
  padding-top: 26px;
}
.discovery-journey::before {
  content: "";
  position: absolute;
  left: 7%;
  right: 7%;
  top: 7px;
  height: 1px;
  background: linear-gradient(90deg,transparent,rgba(109,75,102,.28) 8% 92%,transparent);
}
.journey-stop {
  position: relative;
  min-height: 390px;
  padding: 36px 30px 32px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  border: 1px solid rgba(109,75,102,.1);
  border-radius: 30px;
  background: #f1e2ee;
  box-shadow: 0 16px 34px rgba(73,55,71,.07);
}
.journey-stop::before {
  content: "";
  position: absolute;
  z-index: 3;
  left: 50%;
  top: -26px;
  width: 13px;
  height: 13px;
  border: 5px solid #fffdf9;
  border-radius: 50%;
  background: var(--activity-berry);
  transform: translateX(-50%);
}
.journey-stop > * { position: relative; z-index: 2; }
.journey-number {
  position: absolute;
  z-index: 2;
  right: 24px;
  top: 18px;
  color: rgba(73,55,71,.24);
  font: 3.9rem/1 "Forum",Georgia,serif;
}
.journey-stop .card-kicker { margin: 0 0 16px; font-size: .7rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.journey-stop h3 { max-width: 290px; font: 400 clamp(2rem,2.7vw,3rem)/.94 "Forum",Georgia,serif; letter-spacing: -.035em; }
.journey-stop > p:last-child { margin: 20px 0 0; color: #62555d; font-size: .91rem; line-height: 1.58; }
.journey-notice {
  color: #fff;
  background:
    linear-gradient(180deg,rgba(55,37,51,.08),rgba(55,37,51,.86)),
    url('../assets/activity-group-painting.jpg') center/cover;
}
.journey-belong {
  color: #fff;
  background:
    linear-gradient(180deg,rgba(55,37,51,.06),rgba(55,37,51,.86)),
    url('../assets/activity-ocean-world.jpg') center/cover;
}
.journey-make {
  color: #fff;
  background:
    linear-gradient(180deg,rgba(55,37,51,.08),rgba(55,37,51,.84)),
    url('../assets/activity-seasonal-art.jpg') center/cover;
}
.journey-explore {
  color: #fff;
  background:
    linear-gradient(180deg,rgba(55,37,51,.1),rgba(55,37,51,.86)),
    url('../assets/activity-mud-kitchen.jpg') center/cover;
}
.journey-stop .journey-number { color: rgba(255,255,255,.36); }
.journey-stop > p:last-child { color: rgba(255,255,255,.84); }

.rhythm-section {
  padding: 94px max(24px,calc((100vw - 1280px)/2)) 108px;
  display: grid;
  grid-template-columns: 1.04fr .96fr;
  gap: 26px;
  background:
    radial-gradient(circle at 90% 4%,rgba(237,200,121,.3) 0 11%,transparent 11.2%),
    #dcc8db;
}
.rhythm-intro,.language-card { position: relative; min-height: 760px; overflow: hidden; border-radius: 40px; }
.rhythm-intro {
  padding: 54px;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 32px;
  align-items: stretch;
  background: linear-gradient(145deg,#fffaf2,#f7ebe4);
  box-shadow: 0 28px 52px rgba(62,40,58,.16);
}
.music-copy { position: relative; z-index: 2; }
.music-copy h2 { max-width: 630px; font-size: clamp(3.4rem,4.9vw,5.3rem); }
.music-copy > p:not(.eyebrow) { max-width: 490px; margin: 28px 0 0; color: #665a61; font-size: 1rem; line-height: 1.7; }
.music-window {
  position: relative;
  min-height: 360px;
  margin: 0;
  padding: 9px;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 20px 42px rgba(73,55,71,.16);
}
.music-window img { width: 100%; height: 100%; min-height: 342px; display: block; object-fit: cover; border-radius: 17px; }
.music-window > span { position: absolute; right: -12px; top: 42%; width: 62px; height: 62px; display: grid; place-items: center; border: 7px solid #fffaf2; border-radius: 50%; background: var(--activity-plum); color: #fff; font: 2rem/1 Georgia,serif; box-shadow: 0 11px 24px rgba(73,55,71,.18); }
.language-card {
  position: relative;
  min-height: 760px;
  padding: 54px;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 32px;
  background: linear-gradient(145deg,#d5e6ee,#edf2f2 68%,#f4e7df);
  box-shadow: 0 24px 48px rgba(65,65,72,.12);
}
.language-copy { position: relative; z-index: 2; }
.language-copy h3 { max-width: 520px; margin-top: 22px; font: 400 clamp(3rem,4.2vw,4.6rem)/.93 "Forum",Georgia,serif; letter-spacing: -.035em; }
.language-copy > p:not(.eyebrow) { max-width: 500px; margin: 20px 0 0; color: #52616a; font-size: 1rem; line-height: 1.68; }
.language-window { min-height: 360px; padding: 9px; display: grid; border-radius: 24px; background: rgba(255,255,255,.72); box-shadow: 0 20px 42px rgba(73,55,71,.11); }
.language-welcome { align-self: stretch; display: flex; flex-wrap: wrap; align-content: center; justify-content: center; gap: 18px 24px; margin: 0; padding: 30px 22px; border: 1px solid rgba(82,97,106,.09); border-radius: 17px; list-style: none; }
.language-welcome li { min-width: 100px; padding: 8px 10px 12px; text-align: center; }
.language-welcome .language-word { display: block; color: #394b56; font: 400 1.9rem/1.12 "Forum",Georgia,serif; }
.language-welcome .language-flag { display: block; margin-bottom: 8px; font-size: 1.55rem; line-height: 1; filter: saturate(.88); }
.language-welcome small { display: block; margin-top: 8px; color: #4f626d; font-size: .94rem; font-weight: 600; letter-spacing: .04em; }
.language-welcome li::after { content: ""; display: block; width: 42px; height: 5px; margin: 12px auto 0; border: 1px solid rgba(73,75,87,.07); border-radius: 99px; opacity: .65; background: var(--language-colors); box-shadow:0 2px 5px rgba(73,75,87,.08); }
.language-speech-badge { position:absolute; z-index:4; left:18px; top:46%; width:66px; height:66px; display:grid; place-items:center; border:7px solid #f8f5ef; border-radius:50%; background:#86a9bb; box-shadow:0 12px 26px rgba(54,75,86,.2); transform:rotate(-4deg); }
.language-speech-badge svg { width:42px; height:42px; fill:#fffaf4; stroke:#526f7e; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.language-speech-badge circle { fill:#526f7e; stroke:none; }
.language-speech-badge .badge-spark { fill:none; stroke:#fffaf4; stroke-width:3; }
.language-welcome li:nth-child(1) { --language-colors: linear-gradient(90deg,#a77581,#eee8df,#8297b0); }
.language-welcome li:nth-child(2) { --language-colors: linear-gradient(90deg,#fff 50%,#b16f7a 50%); }
.language-welcome li:nth-child(3) { --language-colors: linear-gradient(90deg,#7d91b0 33%,#fff 33% 66%,#b7777c 66%); }
.language-welcome li:nth-child(4) { --language-colors: linear-gradient(90deg,#b7777c 25%,#d4b774 25% 75%,#b7777c 75%); }
.language-welcome li:nth-child(5) { --language-colors: linear-gradient(90deg,#8ca58f 33%,#fff 33% 66%,#b7777c 66%); }
.language-orbit { position: relative; min-height: 230px; margin-top: 22px; }
.language-orbit::before,.language-orbit::after { content: ""; position: absolute; left: 50%; top: 50%; border: 1px solid rgba(73,75,87,.13); border-radius: 50%; transform: translate(-50%,-50%); }
.language-orbit::before { width: 270px; height: 150px; }
.language-orbit::after { width: 360px; height: 205px; }
.language-orbit span { position: absolute; z-index: 2; padding: 9px 14px; border: 1px solid rgba(58,76,88,.13); border-radius: 999px; background: rgba(255,255,255,.8); color: #51616a; font-size: .76rem; font-weight: 700; box-shadow: 0 8px 18px rgba(58,76,88,.07); }
.language-orbit .hello-core { left: 50%; top: 50%; width: 104px; height: 104px; padding: 0; display: grid; place-items: center; border: 0; border-radius: 50%; background: var(--activity-plum); color: #fff; font: 1.65rem/1 "Forum",Georgia,serif; transform: translate(-50%,-50%); box-shadow: 0 16px 30px rgba(73,55,71,.2); }
.language-orbit span:nth-child(2) { left: 4%; top: 17%; }
.language-orbit span:nth-child(3) { right: 0; top: 8%; }
.language-orbit span:nth-child(4) { left: 7%; bottom: 8%; }
.language-orbit span:nth-child(5) { right: 7%; bottom: 12%; }

.routine-section {
  padding: 72px max(24px,calc((100vw - 1320px)/2));
  background: linear-gradient(110deg,#fffaf3,#f7eee6 55%,#ebe2ed);
}
.routine-copy { max-width: 940px; margin-inline: auto; text-align: center; }
.routine-label {
  width: fit-content;
  margin: 0 auto 22px;
  padding: 11px 20px;
  border: 1px solid rgba(109,75,102,.16);
  border-radius: 999px;
  background: var(--activity-plum);
  color: #fff;
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  box-shadow: 0 10px 24px rgba(73,55,71,.14);
}
.routine-copy h2 { font-size: clamp(2.8rem,4.5vw,4.2rem); }
.routine-copy > p:last-child { max-width: 720px; margin: 20px auto 0; color: #665a61; font-size: 1rem; line-height: 1.7; }
.routine-flow { position: relative; display: grid; grid-template-columns: repeat(5,1fr); gap: 9px; margin: 38px 0 0; padding: 0; list-style: none; }
.routine-flow::before { content: ""; position: absolute; left: 8%; right: 8%; top: 71px; height: 1px; background: rgba(109,75,102,.2); }
.routine-flow li {
  position: relative;
  min-height: 176px;
  margin-top: 54px;
  padding: 44px 15px 18px;
  display: grid;
  align-content: center;
  text-align: center;
  border: 1px solid rgba(109,75,102,.1);
  border-radius: 22px;
  background: rgba(255,255,255,.68);
}
.routine-flow li::before { content: ""; position: absolute; z-index: 2; left: 50%; top: 19px; width: 13px; height: 13px; border: 4px solid #fffaf3; border-radius: 50%; background: var(--activity-berry); transform: translateX(-50%); }
.routine-flow time { position: absolute; left: 0; right: 0; top: -52px; color: var(--activity-plum); font: 400 1.72rem/1 "Forum",Georgia,serif; letter-spacing: .01em; }
.routine-flow small { margin-top: 7px; color: #916f86; font-size: .72rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.routine-flow strong { margin-top: 5px; color: #493a45; font: 1.34rem/1.14 "Forum",Georgia,serif; }
.routine-flow span { max-width: 205px; margin: 9px auto 0; color: #6f626a; font-size: .82rem; line-height: 1.42; }

.activities-contact { padding: 88px 24px 96px; text-align: center; background: #fffdf9; }
.activities-contact h2 { font-size: clamp(4rem,7vw,7rem); }
.activities-contact > p:not(.eyebrow) { margin: 25px auto 38px; color: #675a62; font-size: 1.05rem; }
.activities-actions { max-width: 800px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.activities-actions a {
  min-height: 92px;
  padding: 16px 22px;
  display: grid;
  grid-template-columns: 48px 1fr;
  grid-template-rows: auto auto;
  column-gap: 14px;
  align-content: center;
  text-align: left;
  border: 1px solid rgba(73,55,71,.14);
  border-radius: 999px;
  background: #fff;
  color: #443640;
  text-decoration: none;
  box-shadow: 0 12px 26px rgba(73,55,71,.09);
  transition: transform .25s,background .25s;
}
.activities-actions a:first-child { background: #eee0ed; }
.activities-actions a:last-child { background: #f5d58f; }
.activities-actions a:hover { transform: translateY(-4px); background: #dceaf3; }
.activities-actions a > span { grid-row: 1 / span 2; width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.72); font-size: 1.3rem; }
.activities-actions b { align-self: end; font-size: .84rem; letter-spacing: .06em; text-transform: uppercase; }
.activities-actions small { align-self: start; margin-top: 4px; font: 1rem/1.1 "Forum",Georgia,serif; }

.activities-footer {
  min-height: 170px;
  padding: 26px max(24px,calc((100vw - 1180px)/2));
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
  color: #665a62;
  background: #fbf6ef;
}
.activities-footer-brand { display: flex; align-items: center; gap: 13px; color: #493a45; font: 1.2rem/1.15 "Forum",Georgia,serif; text-decoration: none; }
.activities-footer-brand img { width: 140px; height: 108px; object-fit: contain; }
.activities-footer > p { text-align: center; font: 1.26rem/1.3 "Forum",Georgia,serif; }
.subpage-footer-links { justify-self:end; max-width:430px; padding:12px 15px; display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px 15px; border:1px solid rgba(104,72,97,.14); border-radius:20px; background:rgba(255,255,255,.72); }
.subpage-footer-links a { padding:5px 4px; color:#5c4857; font-size:.72rem; font-weight:700; text-decoration:none; white-space:nowrap; }
.subpage-footer-links a:hover,.subpage-footer-links a[aria-current="page"] { color:#7b6375; }
.activities-return-home {
  justify-self: end;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  column-gap: 13px;
  padding: 12px 17px;
  border: 1px solid rgba(104,72,97,.17);
  border-radius: 999px;
  background: #fff;
  color: var(--activity-plum);
  font-size: .8rem;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 9px 22px rgba(71,48,61,.08);
  transition: transform .25s,background .25s;
}
.activities-return-home span { grid-column: 1; }
.activities-return-home small { grid-column: 1; color: #9a8993; font-size: .58rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.activities-return-home b { grid-column: 2; grid-row: 1 / span 2; font-size: 1.05rem; }
.activities-return-home:hover { transform: translateY(-2px); background: #e5eff5; }

@media (max-width: 1050px) {
  .activities-hero { grid-template-columns: 1fr; gap: 65px; }
  .activities-photo-story { max-width: 760px; width: 100%; justify-self: center; }
  .discovery-journey { grid-template-columns: 1fr 1fr; }
  .discovery-journey::before { display: none; }
  .journey-stop::before { display: none; }
  .rhythm-section { grid-template-columns: 1fr; }
  .rhythm-intro,.language-card { min-height: 500px; }
  .rhythm-intro { grid-template-columns: 1.08fr .72fr; }
  .language-card { margin-top: 0; }
}

@media (max-width: 760px) {
  .activities-header nav { display: none; }
  .activities-header { grid-template-columns: 1fr auto; }
  .activities-hero { padding-top: 65px; padding-bottom: 100px; }
  .activities-hero-copy h1 { font-size: clamp(4rem,20vw,6rem); }
  .activities-lead { font-size: 1rem; }
  .activities-photo-story { min-height: 450px; }
  .activities-photo-main { right: 2%; }
  .activities-photo-small { width: 50%; height: 195px; right: -2%; }
  .discovery-section,.rhythm-section,.routine-section { padding-top: 66px; padding-bottom: 66px; }
  .discovery-heading { margin-bottom: 45px; }
  .discovery-journey { grid-template-columns: 1fr; }
  .journey-stop { min-height: 340px; padding: 34px 28px 30px; }
  .rhythm-intro,.language-card { padding: 44px 27px; border-radius: 28px; }
  .rhythm-intro { grid-template-columns: 1fr; gap: 36px; }
  .music-window { width: min(100%,320px); height: 390px; justify-self: center; }
  .language-card { min-height: 560px; }
  .language-window { min-height: 330px; }
  .language-welcome { gap: 12px 10px; padding: 24px 10px; }
  .language-welcome li { min-width: 88px; padding-inline: 5px; }
  .language-welcome .language-word { font-size:1.7rem; }
  .language-welcome .language-flag { font-size:1.4rem; }
  .language-welcome small { font-size:.83rem; }
  .language-speech-badge { left:14px; top:48%; width:56px; height:56px; border-width:6px; }
  .language-speech-badge svg { width:35px; height:35px; }
  .language-orbit { min-height: 245px; margin-top: 26px; }
  .language-orbit::before { width: 220px; height: 138px; }
  .language-orbit::after { width: 280px; height: 205px; }
  .language-orbit span:nth-child(2) { left: 0; }
  .language-orbit span:nth-child(3) { right: 0; }
  .language-orbit span:nth-child(4) { left: 0; }
  .language-orbit span:nth-child(5) { right: 0; }
  .routine-flow { grid-template-columns: 1fr; }
  .routine-flow::before { display: none; }
  .routine-flow li { min-height: 158px; margin-top: 52px; padding: 40px 22px 22px; text-align: center; }
  .routine-flow li::before { left: 50%; top: 16px; transform: translateX(-50%); }
  .routine-flow time { top: -42px; font-size: 1.55rem; }
  .routine-flow span { max-width: 290px; margin-inline: auto; font-size: .86rem; }
  .activities-actions { grid-template-columns: 1fr; }
  .activities-footer { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .activities-footer-brand { flex-direction: column; }
  .activities-return-home { justify-self: center; }
  .activities-home-link { min-height:43px; padding:5px 12px 5px 6px; gap:7px; font-size:.7rem; }
  .activities-home-icon { width:31px; height:31px; }
  .subpage-footer-links { justify-self:stretch; justify-content:center; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; }
  .subpage-footer-links a { text-align:center; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  .activities-photo,.activities-actions a { transition: none; }
}

/* Keep both weekly-feature cards within one shared visual system. */
.music-window { width: 100%; height: auto; }
.music-window img { aspect-ratio: 1600 / 1068; }

/* V37 — a gentle school-timetable treatment for the daily routine */
.routine-flow {
  gap:0;
  max-width:1320px;
  margin:40px auto 0;
  overflow:hidden;
  border:1px solid rgba(109,75,102,.17);
  border-radius:24px;
  background:
    repeating-linear-gradient(to bottom,rgba(177,126,159,.055) 0 1px,transparent 1px 34px),
    rgba(255,253,249,.72);
  box-shadow:0 18px 42px rgba(73,55,71,.08);
}
.routine-flow::before { display:none; }
.routine-flow li {
  min-height:250px;
  margin:0;
  padding:74px 18px 24px;
  align-content:start;
  border:0;
  border-right:1px solid rgba(109,75,102,.14);
  border-radius:0;
  background:transparent;
}
.routine-flow li:last-child { border-right:0; }
.routine-flow li::before { top:61px; width:7px; height:7px; border:0; }
.routine-flow time {
  top:0;
  min-height:52px;
  padding:15px 8px;
  display:grid;
  place-items:center;
  border-bottom:1px solid rgba(109,75,102,.14);
  background:rgba(235,219,233,.55);
  font-size:1.3rem;
}
.routine-flow li:nth-child(2) time { background:rgba(235,226,211,.6); }
.routine-flow li:nth-child(3) time { background:rgba(221,234,239,.62); }
.routine-flow li:nth-child(4) time { background:rgba(236,220,229,.55); }
.routine-flow li:nth-child(5) time { background:rgba(232,224,237,.58); }
.routine-flow small { margin-top:10px; }
.routine-flow strong { margin-top:12px; }
.routine-flow span { margin-top:14px; }

@media (max-width:760px) {
  .routine-flow { display:grid; margin-top:30px; border-radius:20px; }
  .routine-flow li {
    min-height:0;
    margin:0;
    padding:20px 18px;
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    grid-template-rows:auto auto auto;
    gap:4px 16px;
    align-items:center;
    text-align:left;
    border-right:0;
    border-bottom:1px solid rgba(109,75,102,.14);
  }
  .routine-flow li:last-child { border-bottom:0; }
  .routine-flow li::before { display:none; }
  .routine-flow time {
    position:static;
    grid-column:1;
    grid-row:1 / span 3;
    min-height:72px;
    padding:9px;
    border:1px solid rgba(109,75,102,.12);
    border-radius:14px;
    font-size:1.08rem;
    text-align:center;
  }
  .routine-flow small,.routine-flow strong,.routine-flow span { grid-column:2; margin:0; max-width:none; }
  .routine-flow small { font-size:.62rem; }
  .routine-flow strong { font-size:1.12rem; }
  .routine-flow span { font-size:.76rem; line-height:1.38; }
}
