/* Private product evaluation: a focused brief and a tangible written handover. */
.pt-teaser { display: grid; grid-template-columns: .9fr 1.1fr; gap: 9%; align-items: center; background: #dce0d0; border: 1px solid #bdc4ae; border-left: 4px solid #b64c30; padding: 32px 36px; margin-top: 34px; }
.pt-teaser .eyebrow { font-size: 9px; color: #76533a; margin-bottom: 12px; }
.pt-teaser h3 { font-size: clamp(25px,2.5vw,34px); line-height: 1.15; }
.pt-teaser > div > p:not(.eyebrow) { font-size: 14px; line-height: 1.85; color: #51594b; max-width: 600px; }
.pt-teaser .text-link { margin-top: 16px; font-size: 12px; }
.pt-page { --pt-line: #c7bda9; --pt-muted: #5c6052; }
.pt-page .eyebrow { font-size: 10px; letter-spacing: .12em; }
.pt-page .button, .pt-page .text-link { max-width: 100%; }
.pt-page h1 { font-size: clamp(48px,5.8vw,88px); line-height: 1.06; }
.brand-studio .pt-page h1 em { font-size: .77em; line-height: 1.5; display: inline; }
.pt-page h2 { font-size: clamp(34px,3.7vw,56px); line-height: 1.1; }
.brand-studio .pt-page h2 em { display: inline; font-size: .8em; line-height: 1.5; }
.pt-hero { padding-block: 54px 72px; display: grid; grid-template-columns: 1.15fr .85fr; gap: 8%; align-items: center; }
.pt-hero > * { min-width: 0; }
.pt-back { font: 9px/1.6 var(--mono); letter-spacing: .06em; text-transform: uppercase; display: inline-flex; gap: 12px; align-items: center; border-bottom: 1px solid var(--pt-line); padding-bottom: 6px; margin-bottom: 34px; }
.pt-back .icon { width: 14px; height: 14px; }
.pt-hero-copy > .eyebrow { color: #a73f25; margin-bottom: 17px; }
.pt-hero-line { font-size: clamp(23px,2vw,30px); letter-spacing: -.035em; line-height: 1.3; margin-top: 23px; }
.pt-intro { font-size: 17px; line-height: 1.8; color: var(--pt-muted); max-width: 580px; margin-top: 18px; }
.pt-hero .actions { gap: 23px; margin-top: 29px; }
.pt-hero .text-link { font-size: 12px; gap: 12px; }
.pt-remit { font: 10px/1.9 var(--mono); color: var(--pt-muted); margin-top: 27px; }
.pt-report-cover { background: #252d25; color: #f4ead8; padding: clamp(26px,3.1vw,46px); position: relative; border-top: 5px solid #b64c30; box-shadow: 12px 12px 0 #bcb8a833; }
.pt-cover-top { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding-bottom: 34px; border-bottom: 1px solid #606755; margin-bottom: 32px; }
.pt-cover-top img { width: 132px; height: auto; }
.pt-cover-top > span { font: 9px/1.8 var(--mono); color: #c4cabd; letter-spacing: .07em; text-align: right; }
.pt-report-cover > .eyebrow { color: #d7b38e; margin-bottom: 20px; }
.pt-report-cover h2 { font-size: clamp(35px,3.35vw,51px); }
.brand-studio .pt-report-cover h2 em { color: #e7a57f; }
.pt-report-cover ol { list-style: none; padding: 0; margin: 30px 0 26px; }
.pt-report-cover li { display: flex; align-items: baseline; gap: 19px; padding: 14px 0; border-top: 1px solid #56614e; font-size: 14px; }
.pt-report-cover li > span { font: 10px/1.5 var(--mono); color: #e7a57f; }
.pt-cover-foot { font: 9px/1.9 var(--mono); color: #b9c0b0; max-width: 250px; }
.pt-cover-pixels { position: absolute; right: 26px; bottom: 26px; height: 8px; width: 8px; background: #cb7550; box-shadow: -10px 0 #e7a57f, 0 -10px #e7a57f, -10px -10px #cb755055; }
.pt-questions, .pt-method { padding-block: 65px 74px; }
.pt-questions { border-top: 1px solid var(--pt-line); }
.pt-section-heading { display: grid; grid-template-columns: 1.2fr .8fr; align-items: end; gap: 9%; margin-bottom: 43px; }
.pt-section-heading > p { color: var(--pt-muted); font-size: 16px; line-height: 1.8; margin-bottom: 5px; }
.pt-question-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
.pt-question-grid article { border-top: 1px solid var(--pt-line); padding-top: 23px; }
.pt-number { color: #ad4329; font: 28px/1.3 var(--pixel); }
.pt-question-grid h3 { font-size: 26px; margin-top: 21px; line-height: 1.2; }
.pt-question-grid p { font-size: 14px; line-height: 1.85; color: var(--pt-muted); margin-top: 16px; }
.pt-report-section { background: #dce0d0; border-block: 1px solid #bdc4ae; padding-block: 76px; }
.pt-report-layout { display: grid; grid-template-columns: 1fr 1.07fr; gap: 10%; align-items: start; }
.pt-report-intro > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; color: #51594b; margin-top: 24px; max-width: 470px; }
.pt-report-intro > .pt-report-note { font-size: 12px !important; border-top: 1px solid #afb8a1; padding-top: 20px; }
.pt-report-intro > .text-link { margin-top: 26px; font-size: 12px; }
.pt-report-rows { list-style: none; margin: 0; padding: 0; }
.pt-report-rows li { display: grid; grid-template-columns: 32px 1fr; gap: 22px; border-top: 1px solid #afb8a1; padding: 22px 0; }
.pt-report-rows li:first-child { padding-top: 0; border-top: 0; }
.pt-report-rows li:last-child { padding-bottom: 0; }
.pt-report-index { font: 12px/1.8 var(--mono); color: #954126; padding-top: 3px; }
.pt-report-rows h3 { font-size: 24px; line-height: 1.25; }
.pt-report-rows p { font-size: 14px; line-height: 1.8; color: #51594b; margin-top: 9px; }
.pt-process { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 34px; counter-reset: process; }
.pt-process li { border-top: 1px solid var(--pt-line); padding-top: 24px; }
.pt-process h3 { font-size: 26px; line-height: 1.2; margin-top: 20px; }
.pt-process p { font-size: 14px; line-height: 1.85; color: var(--pt-muted); margin-top: 15px; }
.pt-experience { padding-block: 68px; }
.pt-experience-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 8%; align-items: center; }
.pt-experience figure { min-width: 0; }
.pt-experience img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.pt-experience figcaption { font: 9px/1.8 var(--mono); color: #b9c2b1; border-top: 1px solid #57634e; padding-top: 14px; margin-top: 17px; }
.pt-experience .eyebrow { color: #d6b08c; }
.brand-studio .pt-experience h2 em { color: #e7a57f; }
.pt-experience-grid > div > p:not(.eyebrow) { font-size: 15px; line-height: 1.85; color: #c5ccbd; margin-top: 22px; }
.pt-experience-links { display: flex; flex-wrap: wrap; gap: 17px 25px; margin-top: 27px; }
.pt-experience-links .text-link { font-size: 12px; gap: 12px; }
.pt-faq { display: grid; grid-template-columns: .8fr 1.2fr; gap: 11%; padding-block: 77px; }
.pt-faq > div > p:not(.eyebrow) { font-size: 15px; line-height: 1.8; color: var(--pt-muted); margin-top: 24px; }
.pt-answers details { border-top: 1px solid var(--pt-line); padding: 21px 0; }
.pt-answers details:last-child { border-bottom: 1px solid var(--pt-line); }
.pt-answers summary { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; font-size: 16px; font-weight: 550; line-height: 1.5; cursor: pointer; list-style: none; }
.pt-answers summary::-webkit-details-marker { display: none; }
.pt-answers summary .icon { width: 17px; height: 17px; color: #ad4329; margin-top: 3px; transition: transform .18s; }
.pt-answers details[open] summary .icon { transform: rotate(45deg); }
.pt-answers details p { font-size: 14px; line-height: 1.85; color: var(--pt-muted); margin-top: 16px; padding-right: 28px; }
.pt-closing { background: #e8dcc7; border-block: 1px solid #cabc9f; padding-block: 65px; }
.pt-closing > .container { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10%; align-items: center; }
.pt-closing > .container > div > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; color: #555b4e; }
.pt-closing .button { margin-top: 25px; }
.pt-closing > .container > div > .pt-closing-note { font-size: 11px; line-height: 1.85; margin-top: 17px; }
.pt-related { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px 30px; padding-block: 31px; }
.pt-related .eyebrow { margin: 0; }
.pt-related .text-link { font-size: 12px; }
@media (max-width: 1100px) {
  .pt-hero { gap: 5%; grid-template-columns: 1.1fr .9fr; }
  .pt-hero h1 { font-size: 6vw; }
  .pt-report-cover { padding: 28px; }
  .pt-report-cover h2 { font-size: 38px; }
  .pt-cover-top { gap: 15px; }
  .pt-cover-top img { width: 110px; }
  .pt-question-grid, .pt-process { gap: 24px; }
  .pt-report-layout { gap: 7%; }
}
@media (max-width: 800px) {
  .pt-teaser { gap: 6%; padding: 27px; }
  .pt-hero { grid-template-columns: 1fr; gap: 38px; padding-block: 40px 50px; }
  .pt-hero h1 { font-size: clamp(48px,8.7vw,70px); }
  .pt-hero-copy { max-width: 650px; }
  .pt-back { margin-bottom: 27px; }
  .pt-report-cover { max-width: 560px; width: 100%; padding: 32px; }
  .pt-report-cover h2 { font-size: 44px; }
  .pt-section-heading { grid-template-columns: 1fr; gap: 22px; margin-bottom: 32px; }
  .pt-section-heading > p { max-width: 620px; }
  .pt-questions, .pt-method { padding-block: 48px; }
  .pt-question-grid h3, .pt-process h3 { font-size: 23px; }
  .pt-report-section { padding-block: 50px; }
  .pt-report-layout { grid-template-columns: 1fr; gap: 38px; }
  .pt-report-intro > p:not(.eyebrow) { max-width: 650px; }
  .pt-report-rows li:first-child { border-top: 1px solid #afb8a1; padding-top: 22px; }
  .pt-experience { padding-block: 50px; }
  .pt-experience-grid { grid-template-columns: 1fr; gap: 33px; }
  .pt-experience img { aspect-ratio: 16/10; }
  .pt-experience-grid > div { max-width: 620px; }
  .pt-faq { grid-template-columns: 1fr; gap: 32px; padding-block: 50px; }
  .pt-faq > div > p:not(.eyebrow) { max-width: 560px; }
  .pt-closing { padding-block: 48px; }
  .pt-closing > .container { grid-template-columns: 1fr; gap: 25px; }
  .pt-closing > .container > div > p { max-width: 620px; }
}
@media (max-width: 560px) {
  .pt-teaser { grid-template-columns: 1fr; gap: 20px; padding: 24px; }
  .pt-hero h1 { font-size: clamp(43px,11vw,61px); }
  .pt-hero-line { font-size: 25px; }
  .pt-intro { font-size: 16px; }
  .pt-hero .actions { align-items: flex-start; flex-direction: column; gap: 13px; }
  .pt-hero .button { width: 100%; }
  .pt-report-cover { padding: 27px 24px; box-shadow: 7px 7px 0 #bcb8a833; }
  .pt-cover-top { margin-bottom: 25px; padding-bottom: 25px; }
  .pt-report-cover h2 { font-size: 37px; }
  .pt-cover-foot { max-width: calc(100% - 40px); }
  .pt-question-grid, .pt-process { grid-template-columns: 1fr; gap: 28px; }
  .pt-question-grid h3, .pt-process h3 { font-size: 26px; margin-top: 14px; }
  .pt-question-grid article, .pt-process li { padding-top: 20px; }
  .pt-report-rows li { gap: 14px; grid-template-columns: 25px 1fr; }
  .pt-report-rows h3 { font-size: 23px; }
  .pt-page h2 { font-size: 35px; }
  .pt-report-cover h2 { font-size: 37px; }
  .pt-answers details p { padding-right: 0; }
  .pt-related { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .pt-answers summary .icon { transition: none; }
}
