/* Ledger — business page: accent band header, services first, proof band. */
:root { --t-font-display: "DM Serif Display", Georgia, serif; --t-font-body: "DM Sans", system-ui, sans-serif; --t-max: 1120px; --t-radius: 18px; }

/* hero: a full-width accent band with inverted text */
.t-hero--band { background: var(--t-accent); color: var(--t-on-accent); padding-block: clamp(32px, 6vw, 72px); }
.t-hero--band .t-hero__inner { padding-block: 0; }
.t-hero--band .t-eyebrow, .t-hero--band .t-tagline, .t-hero--band .t-meta { color: var(--t-on-accent); opacity: .85; }
.t-hero--band .t-name { font-size: clamp(2.6rem, 6vw, 4.2rem); font-weight: 400; }
.t-hero--band .t-headline { font-size: clamp(1.15rem, 2.2vw, 1.5rem); max-width: 40ch; }
.t-hero--band .t-photo { width: clamp(112px, 16vw, 176px); border-radius: var(--t-radius); box-shadow: 0 20px 50px -20px rgba(0,0,0,.5); }
.t-hero--band .btn-primary { --bs-btn-bg: var(--t-on-accent); --bs-btn-color: var(--t-accent); --bs-btn-border-color: var(--t-on-accent); --bs-btn-hover-bg: var(--t-on-accent); --bs-btn-hover-color: var(--t-accent); --bs-btn-hover-border-color: var(--t-on-accent); --bs-btn-active-bg: var(--t-on-accent); --bs-btn-active-color: var(--t-accent); }
.t-hero--band .btn-outline-primary { --bs-btn-color: var(--t-on-accent); --bs-btn-border-color: var(--t-on-accent); --bs-btn-hover-bg: rgba(255,255,255,.12); --bs-btn-hover-color: var(--t-on-accent); --bs-btn-hover-border-color: var(--t-on-accent); }
.t-hero--band .t-link { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.3); color: var(--t-on-accent); }
.t-hero--band .t-link:hover { border-color: var(--t-on-accent); color: var(--t-on-accent); }
.t-hero--band .t-link__handle { color: var(--t-on-accent); opacity: .8; }
.t-hero--band .t-stats { gap: 24px 40px; }
.t-hero--band .t-stats strong { color: var(--t-on-accent); }
.t-hero--band .t-stats span { color: var(--t-on-accent); opacity: .8; }

/* summary as a big statement */
.t-section--summary .t-section__title { display: none; }
.t-summary { font-family: var(--t-font-display); font-size: clamp(1.4rem, 2.6vw, 1.9rem); line-height: 1.35; max-width: 34ch; }

/* services: three columns, price tag styled */
.t-cards--services { grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
.t-cards--services .card { border-block-start: 4px solid var(--t-accent); }
.t-cards--services .t-item__title { font-family: var(--t-font-display); font-size: 1.35rem; font-weight: 400; }
.t-cards--services .t-card__price { font-size: var(--t-size-2); }

/* testimonials as a full-width tinted band */
.t-section--testimonials { background: var(--t-surface2); margin-inline: calc(-1 * var(--t-gutter)); padding: clamp(24px, 4vw, 48px) var(--t-gutter); border-radius: var(--t-radius); }
.t-section--testimonials .t-quote { background: var(--t-surface); border: 0; }
.t-section--testimonials .t-quote blockquote { font-size: var(--t-size-2); }

/* section titles with a small accent rule */
.t-section__title { font-size: clamp(1.5rem, 2.6vw, 2rem); font-weight: 400; }
.t-section__title::before { content: ""; display: block; width: 36px; height: 4px; border-radius: 2px; background: var(--t-accent); margin-block-end: 12px; }

/* contact at the end: two columns */
@media (min-width: 900px) { .t-section--contact { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; } .t-section--contact .t-section__title { grid-column: 1 / -1; } }
