/* cherish-story · inner pages (services, about, notes, faq, discovery, article).
   Everything shared comes from styles.css; this file only adds the blocks the
   home page does not have. Same ground, same grid, same reveals. */

body.inner{padding-top:0}
body.inner .folio__era,body.inner .folio__rule{color:var(--pine)}

/* page opener: copy left, cutout right (the home's closing panel, as a page top) */
.sec--hero{padding-top:clamp(7rem,14vh,10rem);padding-bottom:clamp(3rem,6vh,5rem)}
.hero2{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(2rem,5vw,4.5rem);align-items:end}
.h1{font-family:var(--sc-font-display);font-weight:580;font-size:clamp(2.2rem,4.2vw,3.6rem);line-height:1.04;letter-spacing:-.022em;color:var(--pine-dark);margin:0 0 1rem}
.h1 em{font-style:italic;color:var(--pine)}
.hero2 .lead{max-width:36rem;margin-bottom:1.6rem}
.ctas{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:2rem}
.hero2__fig{margin:0;justify-self:end;align-self:end;height:min(70vh,640px)}
.hero2__fig img{width:auto;height:100%;display:block;filter:drop-shadow(0 24px 30px rgba(1,61,55,.22))}
.tabs--links{flex-wrap:wrap;width:auto;border-radius:22px}
.tabs--links .tab{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;white-space:nowrap}
.tab__n{display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:50%;background:var(--pine-pale);color:var(--pine-deep);font-size:.68rem;font-weight:600}
.tab.is-on .tab__n{background:rgba(255,255,255,.18);color:#fff}

/* stroke-icon notes under the steps */
.notes{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.6rem 0 0}
.note{display:inline-flex;align-items:center;gap:.5rem;font-size:.86rem;color:var(--sc-ink-soft);background:#fff;border:1px solid rgba(26,43,40,.08);border-radius:999px;padding:.55rem .9rem .55rem .7rem}
.note svg{width:18px;height:18px;color:var(--pine)}

/* the ten systems: a sticky tab row, three groups, cutout cards */
.tabs--sticky{position:sticky;top:5.2rem;z-index:5;margin:0 0 2rem;box-shadow:0 1px 2px rgba(26,43,40,.05),0 18px 36px -18px rgba(1,61,55,.35)}
.tabs--sticky .tab{text-decoration:none;white-space:nowrap}
.sysgroup{margin:0 0 3.2rem}
.sysgroup__h{font-family:var(--sc-font-display);font-weight:560;font-size:1.25rem;color:var(--pine-dark);margin:0 0 1.1rem;padding-left:.15rem}
.sysgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}
.sysgrid--4{grid-template-columns:repeat(2,1fr)}
.sys{display:flex;flex-direction:column;overflow:hidden}
.sys__fig{margin:0;height:230px;display:flex;justify-content:center;align-items:flex-end;padding:1.2rem 1.2rem 0;background:radial-gradient(62% 62% at 50% 70%,var(--pine-pale),rgba(224,242,240,0) 100%)}
.sys__fig img{height:100%;width:auto;max-width:86%;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(1,61,55,.22))}
.sys__body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;flex:1}
.sys h3{font-family:var(--sc-font-display);font-size:1.22rem;font-weight:560;letter-spacing:-.012em;color:var(--ink);margin:0 0 .2rem;line-height:1.2}
.sys__tag{font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--pine);margin:0 0 .9rem}
.sys__quote{font-family:var(--sc-font-display);font-style:italic;font-size:.98rem;line-height:1.5;color:var(--pine-dark);margin:0 0 1rem;padding:.8rem 1rem;background:var(--pine-pale);border-radius:12px}
.sys__what{font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin:0 0 .5rem}
.sys__list{list-style:none;margin:0 0 1.1rem;padding:0;display:flex;flex-direction:column;gap:.45rem}
.sys__list li{position:relative;padding-left:1.5rem;font-size:.86rem;line-height:1.5;color:var(--sc-ink-soft)}
.ck{position:absolute;left:0;top:.28em;width:.95rem;height:.95rem;color:var(--pine)}
.sys__price{margin:auto 0 0;padding-top:.9rem;border-top:1px solid rgba(1,121,111,.1);font-size:.82rem;color:var(--slate);display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem}
.sys__price strong{font-family:var(--sc-font-display);font-size:1.35rem;font-weight:560;color:var(--ink)}
.sys__price em{font-style:normal;color:var(--pine);font-weight:500;margin-left:auto}

/* packages with the fuller services copy */
.pkg--full .pkg__count{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--pine);margin:-.2rem 0 .6rem}
.pkg--full .pkg__blurb{min-height:4.6em}
.pkg__inc{font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin:1rem 0 0}
.pkg--full .pkg__card ul,.pkg--plans .pkg__card ul{margin-top:.2rem}
.pkg__per{font-size:.95rem;color:var(--slate);font-family:var(--sc-font-text);font-weight:500;margin-left:.15rem}
.pkg--plans .pkg__billing{margin-bottom:.4rem}

/* side-by-side table as one card */
.tbl{overflow:hidden}
.tbl table{width:100%;border-collapse:collapse;font-size:.88rem}
.tbl th,.tbl td{padding:.85rem 1rem;text-align:center;border-top:1px solid rgba(26,43,40,.07);vertical-align:middle}
.tbl thead th{background:var(--pine-dark);color:#fff;font-weight:600;font-size:.86rem;border-top:0;text-align:center}
.tbl thead th:first-child,.tbl tbody th{text-align:left}
.tbl thead th span{display:block;font-family:var(--sc-font-display);font-size:1.05rem;font-weight:560;color:var(--pine-light);margin-top:.15rem}
.tbl thead th.pop{background:var(--pine)}
.tbl tbody th{font-weight:500;color:var(--ink);line-height:1.45;width:44%}
.tbl .tbl__group th{background:#EEF3F2;color:var(--pine-deep);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:.6rem 1rem}
.tbl td.yes{color:var(--pine)} .tbl td.yes .ck{position:static;width:1.1rem;height:1.1rem}
.tbl td.no{color:rgba(109,129,150,.6)}
.tbl td.val{font-weight:600;color:var(--pine-dark)}
.note-card{margin-top:1.4rem;padding:1.6rem 1.8rem;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:2rem;align-items:start}
.note-card h3{font-family:var(--sc-font-display);font-size:1.15rem;font-weight:560;color:var(--pine-dark);margin:0}
.note-card p{font-size:.95rem;line-height:1.65;color:var(--sc-ink-soft);margin:0}

/* small screens */
@media (max-width:1020px){
  .sysgrid,.sysgrid--4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:860px){
  .hero2{grid-template-columns:1fr}
  .hero2__fig{justify-self:center;height:min(50vh,420px)}
  .sysgrid,.sysgrid--4{grid-template-columns:1fr}
  .tabs--sticky{position:static;flex-wrap:wrap;border-radius:18px}
  .note-card{grid-template-columns:1fr;gap:.8rem}
  .tbl{overflow-x:auto}
  .tbl table{min-width:720px}
}

/* ─── text-only openers (notes, faq, article) ─────────────────────────── */
.sec--hero-text{padding-top:clamp(7rem,14vh,10rem)}
.sec--hero-text .opener{margin-bottom:clamp(2.6rem,5vw,4rem)}
.opener .h1{margin:0;max-width:18ch}

/* ─── about: the letter on paper, the photos pasted in ────────────────── */
.hero2--about .h1{max-width:16ch}
.mat--photo{width:min(100%,420px);justify-self:end;transform:rotate(1.4deg)}
.letter{max-width:46rem;margin:0 auto 1.4rem;padding:clamp(2rem,4vw,3.2rem) clamp(1.6rem,4vw,3.4rem);background:linear-gradient(160deg,#FBF8F2,#F3ECD9);border-color:rgba(122,103,67,.2)}
.letter__p{font-size:1.02rem;line-height:1.75;color:var(--ink);margin:0 0 1.2rem;max-width:62ch}
.letter__p--first{font-family:var(--sc-font-display);font-size:1.2rem;line-height:1.55;color:var(--pine-dark)}
.letter__p--first::first-letter{font-size:3.2em;line-height:.8;float:left;padding:.08em .12em 0 0;color:var(--pine)}
.letter__pull{font-family:var(--sc-font-display);font-style:italic;font-size:1.1rem;line-height:1.5;color:var(--pine-dark);margin:1.6rem 0;padding-left:1.1rem;border-left:2px solid var(--pine-light)}
.letter__photos{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin:2rem 0 2.2rem}
.letter__photos .mat:nth-child(2){transform:rotate(1.2deg)}
.letter__sig{font-family:var(--hand);font-size:2rem;color:var(--pine-deep);margin:1.6rem 0 0;padding-top:1.4rem;border-top:1px solid rgba(122,103,67,.2)}
.letter__role{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sepia-soft);margin:.2rem 0 0}
.ps{max-width:46rem;margin:0 auto;padding:1.8rem 2rem;background:var(--pine-pale);border-color:rgba(1,121,111,.14)}
.ps__h{font-family:var(--sc-font-display);font-size:1.25rem;font-weight:560;color:var(--pine-dark);margin:0 0 .8rem}
.ps__mark{font-family:var(--hand);font-size:1.6rem;color:var(--pine);margin-right:.3rem}
.ps p{font-size:.98rem;line-height:1.7;color:var(--ink);margin:0 0 .8rem}
.ps p:last-child{margin:0}

/* ─── notes: the generated post list as cards ─────────────────────────── */
.posts{display:flex;flex-direction:column;gap:1rem;max-width:56rem}
.post-item{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid rgba(26,43,40,.08);border-radius:22px;padding:1.7rem 1.9rem 1.6rem;box-shadow:0 1px 2px rgba(26,43,40,.04),0 30px 60px -28px rgba(1,61,55,.2);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.post-item:hover{transform:translateY(-3px);box-shadow:0 1px 2px rgba(26,43,40,.05),0 36px 70px -26px rgba(1,61,55,.3)}
.post-meta{display:flex;align-items:center;gap:.7rem;margin-bottom:.8rem}
.post-date{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.post-tag{display:inline-flex;align-items:center;gap:.4rem;font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--pine-deep);background:var(--pine-pale);border-radius:999px;padding:.35rem .7rem}
.post-title{font-family:var(--sc-font-display);font-weight:560;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.15;letter-spacing:-.015em;color:var(--pine-dark);margin:0 0 .6rem}
.post-excerpt{font-size:1rem;line-height:1.6;color:var(--sc-ink-soft);margin:0 0 1rem;max-width:62ch}
.post-more{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;font-size:.9rem;color:var(--pine)}

/* ─── faq: sticky card left, accordion cards right ────────────────────── */
.split--faq{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.still{position:sticky;top:6rem;padding:1.8rem 1.9rem}
.still__h{font-family:var(--sc-font-display);font-size:1.4rem;font-weight:560;color:var(--pine-dark);margin:0 0 .6rem}
.still p{font-size:.98rem;line-height:1.6;color:var(--sc-ink-soft);margin:0 0 1.2rem}
.faqs{display:flex;flex-direction:column;gap:.8rem}
.faq{padding:0}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 1.4rem;font-family:var(--sc-font-display);font-size:1.12rem;font-weight:560;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq__plus{flex:0 0 auto;width:1.6rem;height:1.6rem;padding:.3rem;border-radius:50%;background:var(--pine-pale);color:var(--pine);transition:transform .35s var(--ease)}
.faq[open] .faq__plus{transform:rotate(45deg)}
.faq__a{padding:0 1.4rem 1.3rem}
.faq__a p{font-size:.98rem;line-height:1.65;color:var(--sc-ink-soft);margin:0;max-width:60ch}

/* ─── discovery: their form, our shell ───────────────────────────────── */
.hero2--disc .h1{max-width:14ch}
.page-discovery .form-container{max-width:44rem;margin:0 auto;padding:0}
.page-discovery .form-card{border-radius:22px;border:1px solid rgba(26,43,40,.08);box-shadow:0 1px 2px rgba(26,43,40,.04),0 30px 60px -28px rgba(1,61,55,.2)}
.page-discovery body,.page-discovery{background:var(--offwhite)}

/* ─── article: the long-read column ──────────────────────────────────── */
.opener--article{align-items:end}
.h1--article{font-size:clamp(1.9rem,3.4vw,2.9rem);max-width:22ch}
.crumb a{color:inherit;text-decoration:none}
.byline{font-size:.95rem;color:var(--sc-ink-soft)}
.byline a{color:var(--pine-deep);font-weight:600;text-decoration:none}
.byline .sep{margin:0 .5rem;color:var(--slate)}
.article{max-width:62ch;margin:0 0 clamp(3rem,6vh,5rem)}
.article .lede{font-family:var(--sc-font-display);font-size:1.25rem;line-height:1.55;color:var(--pine-dark);margin:0 0 1.6rem}
.article p{font-size:1.05rem;line-height:1.75;color:var(--ink);margin:0 0 1.3rem}
.article h2{font-family:var(--sc-font-display);font-weight:560;font-size:clamp(1.5rem,2.4vw,1.95rem);line-height:1.15;letter-spacing:-.015em;color:var(--pine-dark);margin:2.8rem 0 1rem}
.article h3{font-family:var(--sc-font-display);font-weight:560;font-size:1.25rem;color:var(--pine-dark);margin:2rem 0 .8rem}
.article blockquote{font-family:var(--sc-font-display);font-style:italic;font-size:1.2rem;line-height:1.5;color:var(--pine-dark);margin:2rem 0;padding:1.2rem 1.5rem;background:var(--pine-pale);border-radius:16px}
.article blockquote p{margin:0;font:inherit;color:inherit}
.article ul,.article ol{padding-left:1.4rem;margin:0 0 1.3rem}
.article li{font-size:1.02rem;line-height:1.7;color:var(--ink);margin-bottom:.5rem}
.article a{color:var(--pine-deep);font-weight:500;text-decoration:underline;text-underline-offset:3px}
.article hr{border:0;border-top:1px solid rgba(26,43,40,.1);margin:2.4rem 0}
.article strong{color:var(--pine-dark)}
.article__foot{margin-top:2.4rem;padding-top:1.4rem;border-top:1px solid rgba(26,43,40,.1);font-family:var(--sc-font-display);font-style:italic;color:var(--pine-dark)}

@media (max-width:860px){
  .split--faq{grid-template-columns:1fr}
  .still{position:static}
  .letter__photos{grid-template-columns:1fr}
  .mat--photo{justify-self:center}
}
