/* story */
.story-card{margin:2.2rem 0 0;border:1px solid var(--line-2);border-radius:var(--r-lg) var(--r-lg) var(--r-lg) 4px;overflow:hidden;background:#fff}
.story-card img{width:100%;height:230px;object-fit:cover}
.sc-cap{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1.2rem;border-top:1px solid var(--line)}
.sc-cap i{color:var(--green)}
.story-body p{color:var(--muted);font-size:1.05rem;line-height:1.8;margin-bottom:1.4rem}
.drop::first-letter{font-family:var(--disp);font-size:3.4em;line-height:.85;float:left;color:var(--green);padding-right:.14em}
.pull{border-left:3px solid var(--sky);background:#fff;border-radius:0 var(--r-md) var(--r-md) 0;
  padding:1.8rem 2rem;margin:2rem 0;box-shadow:var(--shadow)}
.pull p{font-family:var(--disp);font-size:1.25rem;color:var(--deep);line-height:1.55;margin-bottom:.8rem}
.pull cite{color:var(--green)}

/* commitment */
.feel-row{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin-top:2.2rem}
.feel-row .mono{margin-right:.4rem}

/* profile */
.profile{display:grid;grid-template-columns:420px 1fr;gap:4rem;align-items:center;
  border:1px solid var(--line-2);border-radius:var(--r-lg);background:#fff;overflow:hidden}
.pr-img{position:relative;height:100%;min-height:460px}
.pr-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pr-badge{position:absolute;left:1.4rem;bottom:1.4rem;background:var(--green);color:#fff;border-radius:99px;padding:.5rem 1.1rem}
.pr-body{padding:3rem 3rem 3rem 0}
.pr-body p{color:var(--muted);line-height:1.75}
.pr-list{list-style:none;padding:0;margin:1.6rem 0 2rem}
.pr-list li{padding:.5rem 0;font-weight:700;color:var(--deep);border-bottom:1px dashed var(--line-2)}
.pr-list li:last-child{border:0}
.pr-list i{color:var(--green);margin-right:.7rem}

/* tour scroller */
.tour-row{display:flex;gap:1.4rem;overflow-x:auto;padding:1rem .5rem 1.6rem;scroll-snap-type:x mandatory;cursor:grab;
  scrollbar-width:thin;scrollbar-color:var(--green) var(--cloud)}
.tour-row.grabbing{cursor:grabbing}
.tour-card{flex:0 0 300px;scroll-snap-align:start;margin:0}
.tour-card.wide{flex-basis:440px}
.tour-card img{width:100%;height:300px;object-fit:cover;border-radius:var(--r-md) var(--r-md) var(--r-md) 4px;border:1px solid var(--line-2);transition:.5s}
.tour-card:hover img{transform:scale(1.02)}
.tour-card figcaption{margin-top:.8rem}

/* timeline */
.tl-grid{display:grid;gap:2.2rem;grid-template-columns:1fr}
.tl-item{border-top:1px solid var(--line-2);padding-top:1.5rem;position:relative}
.tl-item::before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--green)}
.tl-item .no{color:var(--sky)}
.tl-item h4{color:var(--deep);margin:.5rem 0 .4rem;font-size:1.25rem}
.tl-item p{color:var(--muted);margin:0;max-width:34ch}
@media (min-width:992px){.tl-grid{grid-template-columns:repeat(4,1fr)}}

/* responsive */
@media (max-width:991.98px){
  .page-hero{padding-top:calc(var(--headH) + 3rem)}
  .ph-grid{grid-template-columns:1fr;gap:3rem}
  .ph-visual{min-height:440px}
  .profile{grid-template-columns:1fr}
  .pr-img{min-height:380px}
  .pr-body{padding:0 1.6rem 2.4rem}
  .pull{padding:1.4rem 1.5rem}
}
@media (max-width:575.98px){
  .ph-stats{gap:1.6rem}
  .ph-chip.b{right:0;font-size:.72rem}
  .tour-card{flex-basis:260px}.tour-card.wide{flex-basis:320px}
  .tour-card img{height:240px}
}