/* The studio homepage and case studies. Shared navigation, forms and service
   landing pages retain their existing stylesheet. */
.studio-home, .studio-case, .studio-page { --paper: #eef0f4; --paper-deep: #dce1ea; --surface: #fff; --ink: #251c2c; --ink-soft: #625b69; --line: #cbd0db; --section-space: clamp(3.25rem, 5vw, 4.5rem); }
.studio-home .section-heading { font-family: var(--body); font-size: clamp(2.1rem, 3.2vw, 3rem); font-weight: 500; line-height: 1.12; letter-spacing: -0.035em; }
.studio-home .section-intro { margin: 0; max-width: 34rem; font-size: 1rem; line-height: 1.65; }
.section-heading-row { display: grid; grid-template-columns: 1.1fr 0.9fr; align-items: end; gap: 3rem; }
.studio-home .section-kicker { font-size: 0.7rem; }
.studio-home .hero { padding-block: 2.5rem 3rem; }
.studio-home .hero__grid { grid-template-columns: minmax(0, 0.65fr) minmax(0, 1.35fr); gap: 3rem; }
.studio-home .hero h1 { max-width: 16ch; font-family: var(--body); font-size: clamp(2.3rem, 3.3vw, 3.35rem); font-weight: 500; line-height: 1.12; letter-spacing: -0.045em; text-wrap: balance; }
.studio-home .hero__lead { max-width: 31rem; margin-top: 1.25rem; font-size: 1rem; line-height: 1.65; }
.studio-home .hero__price { font-size: 0.85rem; }
.studio-home .hero__actions { align-items: center; gap: 0.75rem 1.25rem; }
.studio-home .hero__actions .text-link { min-height: 3rem; font-size: 0.9rem; }
.studio-home .hero__availability { font-size: 0.78rem; margin-top: 1.25rem; }
.studio-home .hero__availability::before { display: none; }

.studio-home .site-header, .studio-case .site-header, .studio-page .site-header { background: rgb(238 240 244 / 94%); }
.studio-home .section-heading .outline-word { color: inherit; }
.hero-canvas { position: relative; isolation: isolate; min-width: 0; border: 1px solid #c8ceda; border-radius: 0.7rem; padding: 1.25rem; background: #dfe4ed; box-shadow: 0 18px 50px rgb(37 28 44 / 7%); }
.hero-canvas::before { display: none; }
.canvas-heading { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0.4rem 1rem; font-size: 0.7rem; color: var(--ink-soft); }
.canvas-heading span:first-child { display: inline-flex; align-items: center; gap: 0.55rem; color: var(--ink); font-weight: 700; }
.canvas-tabs { display: none; gap: 1rem; margin-top: 0.9rem; }
.has-project-viewer .canvas-tabs { display: flex; }
.canvas-tabs button { min-height: 2.5rem; border-bottom: 2px solid transparent; padding: 0.4rem 0; background: transparent; color: var(--ink-soft); cursor: pointer; font-size: 0.75rem; }
.canvas-tabs button[aria-pressed="true"] { border-bottom-color: var(--accent); color: var(--ink); font-weight: 700; }
.hero-canvas__screen { display: flex; align-items: center; justify-content: center; aspect-ratio: 1430 / 900; overflow: hidden; margin-top: 1rem; border: 6px solid white; background: white; box-shadow: 0 6px 24px rgb(37 28 44 / 12%); text-decoration: none; }
.hero-canvas__screen img { width: 100%; height: 100%; object-fit: contain; }
.hero-canvas figcaption { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.6rem 1rem; margin-top: 1rem; font-size: 0.7rem; color: var(--ink-soft); }
.hero-canvas figcaption .text-link { min-height: 2rem; font-size: 0.75rem; color: var(--ink); }
.inspect-button { display: none; }
.has-project-viewer .inspect-button { display: inline-flex; }
.has-project-viewer .canvas-case-link { display: none; }
.selected-projects { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 2rem; margin-top: 2.25rem; }
.studio-home .project-card { display: flex; min-width: 0; flex-direction: column; border: 0; padding: 0; gap: 0; }
.studio-home .project-card:last-child { border: 0; }
.studio-home .project-card__image { position: relative; display: flex; align-items: center; overflow: hidden; padding: 0; border-radius: 0.35rem; aspect-ratio: auto; background: var(--paper-deep); }
.studio-home .project-card__image::after { border-color: rgb(25 24 23 / 10%); }
.studio-home .project-card__image img { width: 100%; height: auto; aspect-ratio: 1430 / 900; object-fit: contain; }
.studio-home .project-card:hover .project-card__image img { transform: none; filter: none; }
.studio-home .project-card__image:hover { background: var(--paper-deep); }
.studio-home .project-card__body { display: flex; flex: 1; align-items: start; justify-content: start; min-height: 0; padding-top: 1.1rem; }
.studio-home .project-card__index { font-size: 0.61rem; letter-spacing: 0.055em; }
.studio-home .project-card h3 { margin-top: 0.55rem; font-family: var(--body); font-size: clamp(1.6rem, 2.25vw, 2rem); font-weight: 500; line-height: 1.15; letter-spacing: -0.035em; }
.studio-home .project-card__summary { margin-top: 0.8rem; font-size: 0.95rem; line-height: 1.6; }
.studio-home .project-card__sector { margin-block: 0.8rem 1rem; font-size: 0.72rem; }
.studio-home .project-card .text-link { margin-top: auto; min-height: 2.5rem; font-size: 0.86rem; }

.project-presentation { min-width: 0; }
.project-screen-caption { margin-top: 0.6rem; font-size: 0.7rem; color: var(--ink-soft); }
.project-image-action { position: absolute; right: 0.75rem; bottom: 0.75rem; display: none; align-items: center; gap: 1rem; border-radius: 3rem; padding: 0.6rem 0.8rem; background: var(--ink); color: white; font-size: 0.7rem; box-shadow: 0 2px 10px rgb(0 0 0 / 10%); }
.has-project-viewer .project-image-action { display: inline-flex; }
.project-card__image:hover .project-image-action { background: var(--accent-deep); }
.studio-home .project-card--feature { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1.65fr) minmax(0, 0.75fr); gap: 1.5rem 2.25rem; align-items: center; }
.studio-home .project-card--feature .project-card__body { padding: 0; }
.studio-home .project-card--feature h3 { font-size: 1.15rem; font-weight: 700; letter-spacing: -0.02em; }
.project-design-title { margin-top: 1rem; font-family: var(--body); font-size: clamp(1.65rem, 2.3vw, 2.25rem); font-weight: 500; letter-spacing: -0.03em; line-height: 1.2; }
.studio-home .project-card--feature .project-card__image img { aspect-ratio: auto; }
.project-testimonial { border-left: 2px solid var(--accent); margin-top: 1rem; padding-left: 1rem; }
.project-testimonial blockquote { font-size: 0.95rem; color: var(--ink-soft); line-height: 1.65; }
.project-testimonial figcaption { margin-top: 0.65rem; font-size: 0.72rem; color: var(--ink-soft); }
.project-testimonial strong { color: var(--ink); font-weight: 700; }
.project-card--feature .project-testimonial { grid-column: 1 / -1; max-width: 55rem; margin: 0; }
.portfolio-more { margin-top: 2rem; border-block: 1px solid var(--line); }
.portfolio-more > summary { display: flex; align-items: center; flex-wrap: wrap; min-height: 4rem; gap: 0.5rem 1.25rem; cursor: pointer; list-style: none; font-weight: 700; }
.portfolio-more > summary::-webkit-details-marker { display: none; }
.portfolio-more > summary span { margin-left: auto; color: var(--ink-soft); font-size: 0.8rem; font-weight: 400; }
.portfolio-more > summary::after { content: "+"; color: var(--accent-deep); font-size: 1.5rem; font-weight: 400; }
.portfolio-more[open] > summary::after { content: "−"; }
.portfolio-more .work-grid { margin-block: 0.5rem 1.75rem; }
.studio-home .work-tile__image { aspect-ratio: auto; }
.studio-home .work-tile img { height: auto; aspect-ratio: 1424 / 900; object-fit: contain; }
.studio-home .work-tile__meta { align-items: start; flex-direction: column; gap: 0.3rem; }
.studio-home .work-tile__meta span { text-align: left; }
.studio-home .price-grid { margin-top: 2rem; }
.studio-home .price-card { min-height: 0; padding: 1.7rem; }
.studio-home .price-card--featured::before { display: none; }
.studio-home .price-card__fit { font-size: 0.61rem; letter-spacing: 0.06em; }
.studio-home .price-card h3 { max-width: none; margin-top: 0.8rem; font-size: 2rem; line-height: 1.05; letter-spacing: -0.025em; }
.studio-home .price-card__price { margin-top: 1rem; font-size: 2rem; font-variant-numeric: tabular-nums; }
.studio-home .price-card__summary { font-size: 0.95rem; min-height: 4.7rem; }
.studio-home .price-card ul { margin-block: 1.25rem 1.5rem; gap: 0.55rem; }
.studio-home .price-card li { font-size: 0.83rem; }
.studio-home .price-card .text-link { min-height: 2.75rem; font-size: 0.85rem; text-align: left; }

.studio-home .price-card--featured { border-top: 3px solid var(--accent); background: #f3edf5; color: var(--ink); }
.studio-home .price-card--featured .price-card__fit { color: var(--ink); }
.studio-home .price-card--featured .price-card__summary { color: var(--ink-soft); }
.studio-home .price-card--featured li::before { color: var(--accent-deep); }
.studio-home .services-help { margin-top: 1rem; font-size: 0.85rem; }
.studio-partnership { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 2.5rem 4rem; }
.founder-intro { display: grid; grid-template-columns: minmax(0, 0.55fr) minmax(0, 1fr); gap: 1.75rem; }
.founder-intro > img { width: 100%; height: auto; align-self: start; object-fit: cover; filter: grayscale(1); }
.founder-intro .section-heading { margin-top: 0.8rem; }
.founder-intro p:not(.section-kicker) { margin-top: 1rem; color: var(--ink-soft); font-size: 0.95rem; line-height: 1.65; }
.working-process { scroll-margin-top: 1rem; }
.process-list { margin-top: 1.2rem; }
.process-list li { display: grid; grid-template-columns: 2rem 1fr; gap: 0.75rem; padding-block: 1.15rem; border-top: 1px solid var(--line); }
.process-list li > span { padding-top: 0.2rem; color: var(--accent-deep); font-family: var(--mono); font-size: 0.65rem; }
.process-list h3 { font-size: 1.1rem; }
.process-list p { margin-top: 0.35rem; color: var(--ink-soft); font-size: 0.9rem; line-height: 1.6; }
.client-quote { display: grid; grid-column: 1 / -1; grid-template-columns: 1.6fr 0.7fr; align-items: center; gap: 2rem; border-top: 1px solid var(--line); padding-top: 1.75rem; }
.client-quote blockquote { max-width: 50rem; font-size: 1.1rem; line-height: 1.65; }
.client-quote figcaption { font-size: 0.8rem; color: var(--ink-soft); }
.client-quote strong { color: var(--ink); }
.studio-home .faq-layout { grid-template-columns: 0.7fr 1.3fr; gap: 3rem; }
.studio-home .faq-list summary { padding-block: 1.05rem; font-size: 1rem; }
.studio-home .faq-list details p { font-size: 0.95rem; padding-bottom: 1.1rem; }
.studio-home .contact-grid { grid-template-columns: 1.15fr 0.85fr; align-items: center; gap: 3rem; }
.studio-home .contact-grid .section-heading { max-width: none; }
.studio-home .contact-side { border: 0; padding: 0; }
.studio-home .contact-email { margin: 0; font-size: 0.85rem; }
.studio-home .contact-actions { align-items: center; gap: 1rem 1.5rem; margin-top: 1.25rem; }
.studio-home .contact-side .reply-note { margin-top: 0.85rem; font-size: 0.75rem; }
.studio-home .project-dialog__header { padding: 1.5rem 1.75rem; gap: 1rem; }
.studio-home .project-dialog__header h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); line-height: 1.1; }
.dialog-description { margin-top: 0.75rem; max-width: 35rem; font-size: 0.85rem; color: var(--ink-soft); }
.studio-home .project-form__scroll { padding: 1.5rem 1.75rem; }
.studio-home .field label span { color: var(--ink-soft); font-weight: 400; }
.studio-home .field textarea { min-height: 6rem; }
.brief-options { border-top: 1px solid var(--line); padding-top: 0.75rem; }
.brief-options > summary { padding-block: 0.5rem; font-size: 0.85rem; font-weight: 700; cursor: pointer; }
.brief-options > summary span { color: var(--ink-soft); font-weight: 400; }
.brief-options .form-grid { margin-top: 1rem; }

/* Case evidence: one broad view, explicit scope, then desktop/mobile detail. */
.studio-case .case-hero { padding-block: 2.5rem 2rem; }
.studio-case .case-hero h1 { max-width: 24ch; margin-top: 1.5rem; font-family: var(--body); font-size: clamp(2.75rem, 5vw, 4.5rem); font-weight: 500; line-height: 1.1; letter-spacing: -0.04em; }
.studio-case .case-hero__summary { grid-template-columns: minmax(0, 1fr) auto; max-width: none; align-items: center; margin-top: 1.25rem; }
.studio-case .case-hero__summary > p { max-width: 48rem; font-size: 1.15rem; }
.studio-case .case-cover { border: 1px solid var(--line); padding: clamp(0.75rem, 2vw, 1.5rem); background: var(--paper-deep); }
.studio-case .case-cover img { width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
.studio-case .case-cover__caption { border: 0; padding: 1rem 0 0; background: transparent; }
.case-brief-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 4rem; padding-block: var(--section-space); }
.case-brief-grid h2, .case-decisions > h2, .case-delivery h2 { margin-top: 0.9rem; font-family: var(--display); font-size: clamp(1.6rem, 2.5vw, 2.4rem); font-weight: 500; line-height: 1.15; letter-spacing: -0.025em; }
.case-brief-grid p:not(.section-kicker) { margin-top: 1rem; color: var(--ink-soft); line-height: 1.75; }
.case-brief-grid ul { display: grid; gap: 0.6rem; margin-top: 1.2rem; }
.case-brief-grid li { display: flex; gap: 0.65rem; font-size: 0.95rem; }
.case-brief-grid li::before { color: var(--accent-deep); content: "↗"; }
.case-evidence { border-top: 1px solid var(--line); padding-block: var(--section-space); }
.case-evidence__views { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 0.3fr); gap: 2rem; align-items: start; }
.case-cover-inspect { position: relative; display: block; }
.case-detail-screen { padding: 0.8rem; background: var(--paper-deep); }
.case-detail-screen img { width: 100%; height: auto; }
.case-mobile-screen { max-width: 18rem; }
.case-mobile-screen > a { display: block; overflow: hidden; border: 5px solid var(--ink); border-radius: 0.7rem; background: white; }
.case-mobile-screen img { width: 100%; height: auto; }
.case-evidence figcaption { margin-top: 0.8rem; color: var(--ink-soft); font-size: 0.78rem; }
.case-decisions { margin-top: 2.5rem; }
.case-decisions ol { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; margin-top: 1.5rem; }
.case-decisions li { display: grid; grid-template-columns: 2rem 1fr; border-top: 1px solid var(--line); padding-top: 1.2rem; gap: 0.75rem; }
.case-decisions li > span { color: var(--accent-deep); font-family: var(--mono); font-size: 0.7rem; padding-top: 0.25rem; }
.case-decisions h3 { font-size: 1.1rem; }
.case-decisions li p { margin-top: 0.6rem; color: var(--ink-soft); font-size: 0.95rem; line-height: 1.7; }
.case-delivery { background: var(--surface); border-block: 1px solid var(--line); padding-block: var(--section-space); }
.case-delivery__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 4rem; }
.case-delivery p:not(.section-kicker) { margin-top: 1rem; font-size: 0.9rem; color: var(--ink-soft); }
.studio-case .case-quote blockquote { font-size: 1.35rem; line-height: 1.5; letter-spacing: -0.015em; }
.case-enquiry { padding-block: 2rem; }
.case-enquiry > div { display: flex; justify-content: space-between; align-items: center; gap: 2rem; }
.case-enquiry h2 { font-family: var(--display); font-size: 1.8rem; font-weight: 500; }
.case-enquiry p { margin-top: 0.4rem; color: var(--ink-soft); font-size: 0.95rem; }
.studio-case .case-next { padding-block: 2rem; }
.studio-case .case-next strong { font-size: clamp(1.75rem, 3vw, 3rem); line-height: 1.1; }

@media (max-width: 1100px) {
  .studio-home .hero__grid { gap: 2rem; }
  .studio-partnership { gap: 2rem; }
  .founder-intro { grid-template-columns: 0.45fr 1fr; gap: 1.25rem; }
  .studio-home .price-card { padding: 1.25rem; }
}
@media (max-width: 960px) {
  .studio-home .hero__grid { grid-template-columns: 1fr; gap: 2.25rem; }
  .studio-home .hero h1 { max-width: 23ch; font-size: clamp(2.5rem, 5vw, 3rem); }
  .selected-projects { gap: 1.25rem; }
  .studio-home .project-card h3 { font-size: 1.6rem; }
  .studio-home .price-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .studio-home .price-card h3 { font-size: 1.65rem; }
  .studio-home .price-card__price { font-size: 1.75rem; }
  .studio-partnership { grid-template-columns: 1fr; }
  .founder-intro { grid-template-columns: minmax(0, 0.4fr) minmax(0, 1fr); }
  .founder-intro > img { max-height: 22rem; }
  .process-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
  .client-quote { grid-template-columns: 1.5fr 1fr; }
  .studio-home .faq-layout, .studio-home .contact-grid, .case-brief-grid, .case-delivery__grid { gap: 2rem; }
}
@media (max-width: 700px) {
  .section-heading-row { grid-template-columns: 1fr; gap: 1.1rem; }
  .selected-projects { grid-template-columns: 1fr; gap: 2rem; }
  .studio-home .project-card--feature { grid-template-columns: 1fr; gap: 1.25rem; }
  .project-card--feature .project-testimonial { grid-column: auto; }
  .project-design-title br { display: none; }
  .studio-home .project-card h3 { font-size: 1.9rem; }
  .studio-home .project-card__body { padding-top: 1rem; }
  .studio-home .project-card__summary { margin-top: 0.6rem; }
  .studio-home .project-card__sector { margin-block: 0.6rem 0.4rem; }
  .studio-home .price-grid { grid-template-columns: 1fr; }
  .studio-home .price-card { padding: 1.5rem; }
  .studio-home .price-card h3 { font-size: 1.8rem; }
  .studio-home .price-card__summary { min-height: 0; }
  .studio-home .price-card__price { margin-top: 0.75rem; }
  .studio-home .price-card ul { margin-block: 1rem; }
  .studio-home .services-help { gap: 0.5rem; }
  .studio-home .faq-layout, .studio-home .contact-grid, .case-brief-grid, .case-delivery__grid { grid-template-columns: 1fr; }
  .client-quote, .process-list { grid-template-columns: 1fr; gap: 1rem; }
  .studio-case .case-hero__summary { grid-template-columns: 1fr; gap: 1.25rem; }
  .studio-case .case-hero__summary .button { justify-self: start; }
  .case-evidence__views { grid-template-columns: 1fr; gap: 1.5rem; }
  .case-mobile-screen { max-width: 15rem; margin-inline: auto; }
  .case-decisions ol { grid-template-columns: 1fr; gap: 1.25rem; }
  .case-enquiry > div { align-items: start; flex-direction: column; gap: 1rem; }
}
@media (max-width: 560px) {
  .studio-home .hero { padding-block: 2rem 2.5rem; }
  .hero-canvas { padding: 0.85rem; border-radius: 0.5rem; }
  .canvas-heading span:last-child { width: 100%; }
  .canvas-tabs { gap: 1rem; margin-top: 0.5rem; }
  .canvas-tabs button { font-size: 0.7rem; }
  .hero-canvas__screen { border-width: 3px; margin-top: 0.7rem; }
  .studio-home .hero h1 { max-width: 18ch; font-size: clamp(2.2rem, 8.8vw, 2.9rem); }
  .studio-home .hero__lead { font-size: 1rem; }
  .studio-home .hero__actions { flex-direction: row; flex-wrap: wrap; gap: 0.6rem 1.5rem; }
  .studio-home .hero__actions .button { width: auto; }
  .portfolio-more > summary span { display: none; }
  .portfolio-more > summary::after { margin-left: auto; }
  .founder-intro { grid-template-columns: 1fr; }
  .founder-intro > img { width: 8rem; height: 10rem; }
  .founder-intro .section-heading br { display: none; }
  .studio-home .contact-actions { align-items: start; flex-direction: column; }
  .studio-home .project-dialog__header, .studio-home .project-form__scroll { padding: 1.25rem; }
  .studio-home .project-dialog__header .eyebrow { font-size: 0.62rem; }
  .studio-home .project-dialog__header h2 { font-size: 1.75rem; }
  .studio-home .project-dialog { max-height: calc(100dvh - 2.4rem); box-shadow: 0.4rem 0.4rem 0 var(--accent); }
  .studio-case .case-hero__topline { align-items: start; flex-direction: column; }
  .studio-case .case-hero h1 { font-size: clamp(2.5rem, 10vw, 3.4rem); }
  .studio-case .case-hero__summary > p { font-size: 1.05rem; }
}

/* Property offer and the low-commitment review route. */
.trust-strip { display: flex; flex-wrap: wrap; gap: .75rem 2rem; padding-block: 1rem; border-block: 1px solid var(--line); font-size: .75rem; color: var(--ink-soft); }
.trust-strip a { margin-left: auto; color: var(--ink); }
.offer-credit { font-size: .85rem; line-height: 1.5; border-top: 1px solid currentColor; padding-top: 1rem; }
.case-enquiry__actions { display: flex; flex-direction: column; align-items: start; gap: .8rem; }
.offer-page h1 { font-size: clamp(2.6rem, 4.6vw, 4.6rem); line-height: 1.04; letter-spacing: -.045em; font-family: var(--body); font-weight: 500; }
.offer-page h1 em { font-family: var(--display); font-weight: 400; }
.offer-page h2 { font-family: var(--body); font-weight: 500; font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.12; letter-spacing: -.035em; }
.offer-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 3rem; align-items: center; padding-block: 4.5rem; }
.offer-lead { font-size: 1.1rem; line-height: 1.65; max-width: 40rem; margin-block: 1.4rem; color: var(--ink-soft); }
.offer-facts { display: flex; gap: 2.5rem; border-block: 1px solid var(--line); padding-block: 1.2rem; margin-block: 1.5rem; }
.offer-facts span { font-size: .78rem; color: var(--ink-soft); }
.offer-facts strong { display: block; font-size: 1.25rem; color: var(--ink); font-weight: 600; margin-bottom: .25rem; }
.offer-proof { padding: 1rem; border: 1px solid var(--line); border-radius: .5rem; background: var(--paper-deep); }
.offer-proof img { width: 100%; height: auto; }
.offer-proof figcaption { font-size: .75rem; line-height: 1.5; margin-top: 1rem; }
.offer-proof figcaption a { display: block; }
.offer-credit-grid, .offer-scope { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 4rem; }
.offer-credit-grid p, .offer-scope p { line-height: 1.7; }
.offer-credit-grid p + p, .offer-scope p + p { margin-top: 1.2rem; }
.offer-credit-grid .credit-example { border-block: 1px solid rgb(255 255 255 / 25%); padding-block: 1.2rem; font-size: 1.1rem; }
.offer-small { font-size: .8rem; opacity: .85; }
.offer-work-links { display: grid; gap: 1rem; }
.offer-work-links a { display: flex; flex-direction: column; gap: .6rem; border-bottom: 1px solid var(--line); padding-block: 1rem; text-decoration: none; }
.offer-work-links strong { font-size: 1.15rem; font-weight: 500; }
.offer-work-links span { color: var(--ink-soft); font-size: .8rem; }
.teardown-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 5rem; align-items: start; padding-block: 4.5rem; }
.teardown-points { list-style: none; padding: 0; margin-block: 2rem; }
.teardown-points li { padding-block: .9rem; border-top: 1px solid var(--line); font-size: .92rem; color: var(--ink-soft); }
.teardown-points strong { display: block; font-size: 1rem; margin-bottom: .3rem; color: var(--ink); }
.teardown-founder { display: flex; gap: 1rem; align-items: center; margin-top: 2rem; font-size: .8rem; line-height: 1.6; }
.teardown-founder img { width: 64px; height: 80px; object-fit: cover; border-radius: .3rem; }
.teardown-form-panel { padding: 2.2rem; background: white; border: 1px solid var(--line); border-radius: .7rem; }
.teardown-form { display: grid; gap: 1.4rem; margin-top: 2rem; overflow: visible; }
.teardown-form .form-note, .teardown-form .microcopy { margin: 0; }
.teardown-form .button { width: 100%; }
.teardown-form .form-status { margin: 0; }
.archived-offer { max-width: 54rem; min-height: 65vh; }
.archived-offer p { margin-top: 1.5rem; line-height: 1.7; }
.case-archive { margin-block: 2rem; padding: 1.5rem; border-block: 1px solid var(--line); }
.case-archive p { max-width: 64rem; line-height: 1.65; font-size: .9rem; }
.case-archive h2 { font-size: 1.3rem; margin-bottom: .75rem; }
@media(max-width: 960px) {
  .offer-hero, .teardown-layout { grid-template-columns: 1fr; gap: 2.5rem; padding-block: 3rem; }
  .offer-credit-grid, .offer-scope { gap: 2rem; }
  .teardown-form-panel { max-width: 42rem; }
}
@media(max-width: 640px) {
  .offer-credit-grid, .offer-scope { grid-template-columns: 1fr; }
  .teardown-form-panel { padding: 1.35rem; }
  .offer-facts { gap: 1.5rem; }
  .offer-facts strong { font-size: 1.1rem; }
  .trust-strip { gap: .65rem 1rem; }
  .trust-strip a { margin-left: 0; }
  .offer-page .hero__actions { align-items: stretch; }
}

@media(max-width: 960px) {
  .teardown-intro { display: contents; }
  .teardown-opening { order: 1; }
  .teardown-form-panel { order: 2; max-width: none; }
  .teardown-explanation { order: 3; }
  .teardown-opening .offer-lead { margin-bottom: 0; }
  .teardown-explanation .teardown-points { margin-top: 0; }
}

/* Clear project attribution and form guidance. */
.project-credit { font-size: .75rem; line-height: 1.55; color: var(--muted, #615866); margin: .65rem 0 0; }
.hero-canvas > .project-credit { padding: 0 1rem 1rem; margin: 0; }
.case-credit { max-width: 60ch; font-size: .9rem; line-height: 1.6; margin: 1rem 0; }
.field-hint { font-size: .75rem; line-height: 1.5; margin: .4rem 0 0; color: #615866; }
.case-delivery__grid { grid-template-columns: minmax(0, 1fr); }
.case-delivery__grid > div { max-width: 900px; }
.legal-copy section[id] { scroll-margin-top: 7rem; }
