/* Testimonials page — layout only; shared tokens and components live in styles.css */
.testimonials-page *,.testimonials-page *::before,.testimonials-page *::after{font-style:normal!important}
.footer-links a[aria-current="page"]{color:var(--fg)}

.t-narrow{max-width:780px}
.t-open{padding:clamp(3.5rem,8vw,7rem) 0 clamp(3.5rem,7vw,5.5rem)}
.t-stories{padding-top:clamp(3.5rem,7vw,5.5rem)}
.t-title{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,5.6vw,4.4rem);line-height:1.06;margin:0 auto;max-width:14ch}
.t-lead{font-family:var(--serif);font-size:clamp(1.3rem,2.3vw,1.7rem);line-height:1.5;color:var(--fg);margin:2.2rem auto 0;max-width:26em}
.t-intro{font-size:clamp(1.05rem,1.4vw,1.18rem);line-height:1.85;color:var(--text-2);margin:1.6rem auto 0;max-width:34em}

/* Shared quote pieces */
.t-context{margin:1.1rem 0 0;font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;line-height:1.6;color:var(--text-3)}

/* Featured story */
.t-featured{border:1px solid var(--line-strong);padding:clamp(2.2rem,5vw,4rem) clamp(1.6rem,5vw,4.5rem);text-align:center}
.t-featured-headline{font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.2;margin:0 auto;max-width:20ch}
.t-more{margin-top:2rem;border-bottom:0}
.t-more summary{display:inline-flex;align-items:center;min-height:44px;padding:0;font-family:var(--sans);font-weight:400;line-height:1.4;cursor:pointer;list-style:none;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--fg);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.t-more summary::-webkit-details-marker{display:none}
.t-more summary::marker{content:""}
.t-more summary::after{content:none}
.t-more summary:hover{text-decoration-thickness:2px}
.t-more-close{display:none}
.t-more[open] .t-more-open{display:none}
.t-more[open] .t-more-close{display:inline}
.t-story{max-width:40em;margin:2.2rem auto 0;padding-top:2.2rem;border-top:1px solid var(--line);text-align:left}
.t-story p{padding:0;max-width:none;font-size:clamp(1.05rem,1.4vw,1.18rem);line-height:1.85;color:var(--text-2);margin:0 0 1.3em}
.t-story p:last-child{margin-bottom:0;color:var(--fg)}

/* Short reflections */
.t-grid{list-style:none;padding:0;margin:clamp(3rem,6vw,4.5rem) 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2rem,5vw,4.5rem)}
.t-card{padding:clamp(2rem,4vw,2.8rem) 0;border-top:1px solid var(--line)}
.t-headline{font-family:var(--serif);font-weight:400;font-size:clamp(1.4rem,2.3vw,1.85rem);line-height:1.25;margin:0}
.t-body{margin:1.4rem 0 0;font-size:1.05rem;line-height:1.85;color:var(--text-2)}

/* Closing */
.t-close-title{font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.15;margin:0 auto;max-width:18ch}
.t-close-text{font-size:clamp(1.05rem,1.4vw,1.18rem);line-height:1.85;color:var(--text-2);margin:1.6rem auto 0;max-width:30em}
.t-explore{margin:clamp(1.8rem,4vw,2.4rem) 0 0;font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.6rem);line-height:1.4}
.t-explore a{color:var(--fg);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.t-explore a:hover{text-decoration-thickness:2px}
.t-close .cta-row{margin-top:clamp(2rem,4vw,2.6rem)}

@media (max-width:760px){
  .t-grid{grid-template-columns:1fr}
}
