/* Site-specific fixes on top of the shared Lemonco styles. */
/* Hero buttons wrap on narrow screens instead of widening the column (two long CTAs overflowed 375px phones). */
.lc-btn-row{flex-wrap:wrap}
.lc-hero__grid > *{min-width:0}
/* Hero art is a tall drawing: cap it so it never outgrows the headline on desktop, and keep it small on phones
   so the first cards are not a full screen away. */
.lc-hero__art{max-width:340px;justify-self:center}
@media (max-width:900px){.lc-hero__art{max-width:220px;margin:8px auto 0}}
@media (max-width:620px){.lc-hero__art{max-width:170px}}
/* Copy-address button under the e-mail on the Chinese page (mailto often does nothing inside WeChat). */
.cta-copy{margin:14px 0 0}

/* ---------- Chinese pages: layout borrowed from Chinese study-tour product pages (structure only) ---------- */
/* Key facts strip right under the hero, the "基本信息" block those pages open with. */
.facts{padding:24px 0;border-top:1px solid var(--lc-line);background:var(--lc-card)}
.facts__list{display:grid;grid-template-columns:repeat(5,1fr);gap:16px 24px;margin:0}
.facts__list dt{font-size:.8rem;font-weight:600;color:var(--lc-muted)}
.facts__list dd{margin:2px 0 0;font-weight:600;color:var(--lc-ink)}
@media (max-width:900px){.facts__list{grid-template-columns:repeat(2,1fr)}}
/* Phones: the desktop nav links are hidden, so a sticky row of in-page tabs sits under the header. */
.tabs{display:none}
@media (max-width:820px){
  html{scroll-padding-top:124px}
  .tabs{display:block;position:sticky;top:calc(env(safe-area-inset-top,0px) + 68px);z-index:9;background:color-mix(in srgb,var(--lc-paper) 94%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--lc-line)}
  .tabs .lc-wrap{display:flex;gap:22px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tabs .lc-wrap::-webkit-scrollbar{display:none}
  .tabs a{flex:none;padding:12px 0;font-size:.9rem;color:var(--lc-ink-2);text-decoration:none;white-space:nowrap}
}
@media (min-width:821px){html{scroll-padding-top:84px}}
/* "What is not included": a muted cross instead of the leaf tick. */
.no-list li::before{border:0;transform:none;top:.15em;width:14px;height:14px;background:
  linear-gradient(45deg,transparent 43%,var(--lc-muted) 43% 57%,transparent 57%),
  linear-gradient(-45deg,transparent 43%,var(--lc-muted) 43% 57%,transparent 57%)}
.lc-card h3 + .lc-checks{margin-top:12px}
/* Link card from the home page to the sample itinerary. */
.sample-link{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:20px 24px;border:1px solid var(--lc-line);border-radius:var(--lc-radius-lg);background:var(--lc-lemon-soft);color:var(--lc-ink);text-decoration:none}
.sample-link strong{display:block;font-size:1.05rem;margin-bottom:2px}
.sample-link__go{font-size:1.4rem;flex:none}
.sample-link:hover{border-color:var(--lc-ink)}
/* Six steps: the role tag sits where the step number's row is. */
.steps{list-style:none;margin:0;padding:0}
.steps .lc-tag{position:absolute;top:26px;right:20px}
.steps h3{margin:0 0 6px}
.steps p{margin:0}
.about-card{max-width:860px}
/* Phones: a bottom bar with the two ways to reach us, like the fixed bar on Chinese product pages. */
.dock{display:none}
@media (max-width:620px){
  .dock{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:20;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--lc-paper) 94%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--lc-line)}
  .dock .lc-btn{flex:1 1 0;white-space:normal}
  body:has(.dock){padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
}
/* Sample itinerary page */
.notice{padding:12px 0;background:var(--lc-leaf-soft);color:var(--lc-leaf);font-size:.9rem}
.notice p{margin:0}
.days{list-style:none;margin:0;padding:0;max-width:860px}
.days li{position:relative;padding:0 0 28px 40px}
.days li::before{content:"";position:absolute;left:8px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--lc-lemon);box-shadow:0 0 0 4px var(--lc-paper)}
.days li:not(:last-child)::after{content:"";position:absolute;left:14px;top:24px;bottom:2px;border-left:2px solid var(--lc-line)}
.days h3{margin:0 0 6px;font-size:1.1rem}
.days h3 span{color:var(--lc-leaf);margin-right:8px}
.days p{margin:0 0 4px;color:var(--lc-ink-2)}
.days p b{color:var(--lc-ink);font-weight:600;margin-right:6px}
.parent-note{font-size:.9rem;color:var(--lc-ink-2)}
.ask-list{margin:12px 0 0;padding-left:1.3em;display:grid;gap:6px}
.facts__list--6{grid-template-columns:repeat(3,1fr)}
@media (max-width:620px){.facts__list--6{grid-template-columns:1fr 1fr}.facts__list--6 > :first-child{grid-column:1 / -1}}
.steps .lc-step > p:only-child{margin:0}
.optional-day,.deadline{margin-top:24px}
.optional-day h3{margin-top:0}

/* ---------- Parent-facing product pages: photo-led like Chinese product pages, images are illustrative ---------- */
.photo{position:relative;margin:0;border-radius:var(--lc-radius-lg);overflow:hidden;background:var(--lc-line)}
.photo img{display:block;width:100%;height:auto}
.photo figcaption{position:absolute;right:8px;bottom:8px;padding:2px 8px;border-radius:var(--lc-radius-pill);background:rgba(22,32,28,.6);color:#fff;font-size:.72rem;line-height:1.5}
.p-hero .lc-hero__grid{grid-template-columns:1fr 1.05fr}
.p-hero__photo{box-shadow:var(--lc-shadow-card,0 10px 30px rgba(22,32,28,.06))}
.p-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}
@media (max-width:900px){
  .p-hero .lc-hero__grid{grid-template-columns:1fr}
  .p-hero__photo{order:-1}
}
@media (max-width:620px){
  .p-hero{padding-top:20px}
  .p-hero .lc-wrap.lc-hero__grid{gap:24px}
}
.trip__card{padding:0;overflow:hidden}
.trip__card .photo{border-radius:0}
.trip__card h3,.trip__card p{padding:0 22px}
.trip__card h3{margin:18px 0 6px}
.trip__card h3 span{color:var(--lc-leaf);margin-right:8px}
.trip__card p{margin:0 0 22px}
.trip__more{margin:24px 0 0}
.lc-footer a{color:inherit}
.qr-slot{margin:16px 0 0}
/* Phones: the bottom bar already carries the same two buttons, so the hero row would only repeat them. */
@media (max-width:620px){.p-hero .lc-btn-row{display:none}}
