/* Phase 6 only. Shared Hero, header, footer, contact interactions and frozen pages stay unchanged. */
.tpc-page { --tpc-space:36px; --tpc-gap:32px; --tpc-heading:clamp(26px,2.15vw,32px); }
.tpc-page .tpc-width { max-width:1160px; }
.tpc-page .tpc-section { padding-block:var(--tpc-space); }
.tpc-page :is(.tpc-copy,.tpc-rfq-ui,.tpc-timeline) h2 { margin:0 0 14px; font-size:var(--tpc-heading); line-height:1.2; }
.tpc-page .tpc-copy { min-width:0; }
.tpc-page .tpc-copy p { max-width:65ch; margin:0 0 14px; font-size:16px; line-height:1.6; }
.tpc-page .tpc-copy > :last-child { margin-bottom:0; }
.tpc-page .tpc-split { display:grid; grid-template-columns:1fr 1fr; gap:var(--tpc-gap); align-items:center; }
.tpc-page .tpc-split--text { grid-template-columns:minmax(0,760px); }
.tpc-page .tpc-image { margin:0; min-width:0; position:relative; overflow:hidden; background:var(--tr-surface); aspect-ratio:3/2; }
.tpc-page .tpc-image > img { display:block; width:100%; height:100%; object-fit:cover; }
.tpc-page .tpc-image figcaption { position:absolute; inset:auto 0 0; padding:7px 10px; background:rgb(16 22 64 / .9); color:#fff; font-size:12px; line-height:1.4; }
.tpc-page .tpc-preview-note { margin:12px 0 0; font-size:12px; color:var(--tr-muted); }
.tpc-page .tpc-timeline { background:var(--tr-surface); }
.tpc-page .tpc-timeline-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; list-style:none; padding:0; margin:24px 0 0; }
.tpc-page .tpc-milestone { min-width:0; position:relative; border-top:1px solid var(--tr-border); padding:22px 0 0; }
.tpc-page .tpc-milestone::before { content:''; width:9px; height:9px; position:absolute; top:-5px; left:0; border-radius:50%; background:var(--tr-accent); }
.tpc-page .tpc-milestone .tpc-date { color:var(--tr-accent); font-size:20px; font-weight:700; margin:0 0 10px; }
.tpc-page .tpc-milestone h3 { font-size:19px; line-height:1.3; margin:0 0 10px; }
.tpc-page .tpc-milestone p { font-size:15px; line-height:1.6; margin:0 0 14px; }
.tpc-page .tpc-statement { max-width:850px; font-size:var(--tpc-heading); line-height:1.2; margin:0 0 24px; }
.tpc-page .tpc-enquiry-section { background:var(--tr-surface); }
.tpc-page .tpc-enquiry-grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:var(--tpc-gap); align-items:start; }
.tpc-page .tpc-enquiry-grid--form-only { display:block; max-width:820px; }
.tpc-page .tpc-enquiry-grid > .tpc-copy .tpc-image { margin:20px 0; aspect-ratio:16/10; }
.tpc-page .tpc-steps { counter-reset:steps; list-style:none; margin:24px 0 0; padding:0; }
.tpc-page .tpc-steps li { counter-increment:steps; position:relative; padding:0 0 20px 36px; }
.tpc-page .tpc-steps li::before { content:counter(steps,decimal-leading-zero); position:absolute; left:0; top:0; color:var(--tr-accent); font-weight:700; font-size:14px; }
.tpc-page .tpc-steps h3 { font-size:18px; line-height:1.35; margin:0 0 8px; }
.tpc-page .tpc-steps p { font-size:15px; margin:0; }
.tpc-page .tpc-rfq-ui { min-width:0; padding:24px; border:1px solid var(--tr-border); background:#fff; }
.tpc-page .tpc-rfq-ui h2 { font-size:24px; }
.tpc-page .tpc-rfq-ui > p { margin:0 0 18px; font-size:14px; line-height:1.5; }
.tpc-page .tpc-form-status { padding:12px; background:var(--tr-hover-surface); border-left:3px solid var(--tr-accent); }
.tpc-page .tpc-form-status strong { display:block; margin-bottom:4px; }
.tpc-page .tpc-rfq-ui fieldset { min-width:0; margin:0 0 20px; padding:0; border:0; }
.tpc-page .tpc-rfq-ui legend { display:block; width:100%; margin-bottom:12px; padding:0 0 8px; border-bottom:1px solid var(--tr-border); font-size:15px; font-weight:700; }
.tpc-page .tpc-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.tpc-page .tpc-field { min-width:0; }
.tpc-page .tpc-field--wide { grid-column:1/-1; }
.tpc-page :is(.tpc-field,.tpc-upload) label { display:block; margin-bottom:5px; color:var(--tr-text); font-size:14px; font-weight:600; line-height:1.4; }
.tpc-page .tpc-field :is(input,textarea) { display:block; width:100%; min-width:0; min-height:44px; margin:0; padding:10px 11px; border:1px solid #aeb9c7; border-radius:3px; background:#fff; color:var(--tr-text); font:inherit; font-size:16px; line-height:1.4; transition:border-color var(--tr-motion) var(--tr-easing),background-color var(--tr-motion) var(--tr-easing); }
.tpc-page .tpc-field textarea { resize:vertical; }
.tpc-page .tpc-field :is(input,textarea):hover { border-color:var(--tr-accent); background:#fbfdff; }
.tpc-page .tpc-field :is(input,textarea):focus-visible { outline:2px solid var(--tr-accent); outline-offset:2px; border-color:var(--tr-accent); }
.tpc-page .tpc-field :is(input,textarea)[aria-invalid="true"] { border-color:#a32d36; background:#fff7f7; }
.tpc-page .tpc-upload { padding:14px; border:1px dashed #aeb9c7; background:var(--tr-surface); }
.tpc-page .tpc-upload input { max-width:100%; width:100%; font-size:14px; color:var(--tr-muted); cursor:not-allowed; }
.tpc-page .tpc-upload p { margin:8px 0 0; font-size:13px; line-height:1.5; color:var(--tr-muted); }
.tpc-page .tpc-submit:disabled { opacity:.7; cursor:not-allowed; background:var(--tr-accent); border-color:var(--tr-accent); transform:none; }
.tpc-page .tpc-contact-band { background:var(--tr-dark); color:#fff; }
.tpc-page .tpc-contact-panel { background:var(--tr-dark); padding:24px; min-width:0; }
.tpc-page .company-contact { margin:0; }
.tpc-page .tpc-contact-band .tpc-copy h2 { color:inherit; }
.tpc-page .tpc-rfq-invitation { background:var(--tr-surface); }
.tpc-page .tpc-rfq-invitation > .container { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.tpc-page .tpc-rfq-invitation .tpc-copy { max-width:720px; }
.tpc-page .tpc-rfq-invitation .tr-button { flex-shrink:0; }
@media(max-width:1024px) {
  .tpc-page { --tpc-gap:24px; --tpc-space:30px; }
  .tpc-page .tpc-enquiry-grid { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
  .tpc-page .tpc-rfq-ui { padding:20px; }
}
@media(max-width:767px) {
  .tpc-page { --tpc-space:24px; --tpc-gap:20px; }
  .tpc-page :is(.tpc-split,.tpc-enquiry-grid) { grid-template-columns:minmax(0,1fr); }
  .tpc-page .tpc-timeline-list { grid-template-columns:1fr; gap:18px; }
  .tpc-page .tpc-milestone { border-top:0; border-left:1px solid var(--tr-border); padding:0 0 0 20px; }
  .tpc-page .tpc-milestone::before { top:7px; left:-5px; }
  .tpc-page .tpc-fields { grid-template-columns:1fr; }
  .tpc-page .tpc-rfq-ui { padding:16px; }
  .tpc-page .tpc-rfq-invitation > .container { display:block; }
  .tpc-page .tpc-rfq-invitation .tr-button { margin-top:20px; }
}
@media(prefers-reduced-motion:reduce) {
  .tpc-page .tpc-field :is(input,textarea) { transition:none; }
}
