/* Contatti only. Shared controls, typography, navigation and footer are unchanged. */
.ct-opening { padding-block: clamp(48px, 6.2vw, 88px) clamp(64px, 7vw, 104px); }
.ct-opening-grid { display: grid; gap: 40px; }
.ct-hero h1 { max-width: 11ch; margin-top: 28px; font-size: clamp(3.125rem, 6.7vw, 6rem); line-height: 1.055; }
.ct-hero-copy { max-width: 35rem; margin-top: 28px; }
.ct-section-nav { display: flex; flex-wrap: wrap; gap: 0 24px; margin-top: 22px; }
.ct-section-nav .text-link { font-size: .8125rem; }
.ct-projects { padding-top: 36px; border-top: 1px solid var(--line); }
.ct-projects h2 { max-width: 15ch; margin-top: 22px; font-size: clamp(2.5rem, 3.5vw, 3.25rem); line-height: 1.09; }
.ct-project-copy { max-width: 33rem; margin-top: 24px; }
.ct-contact-actions { display: flex; flex-direction: column; align-items: flex-start; margin-top: 28px; }
.ct-contact-actions .button { width: 100%; }
.ct-partnership { padding-block: clamp(72px, 7.5vw, 112px); }
.ct-partnership-grid { display: grid; gap: 32px; }
.ct-partnership h2 { max-width: 23ch; margin-top: 24px; font-size: clamp(2.5rem, 4.5vw, 4.25rem); line-height: 1.08; }
.ct-partnership-copy { max-width: 38rem; }
.ct-partnership-copy .button { width: 100%; margin-top: 28px; }
.contact-page .primary-nav a[aria-current], .contact-page .mobile-nav a[aria-current] { text-decoration-color: var(--blue); }
@media (min-width: 600px) {
  .ct-contact-actions .button { width: auto; min-width: 16rem; }
  .ct-partnership-copy .button { width: auto; }
}
@media (min-width: 1024px) {
  .ct-opening-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: center; gap: clamp(56px, 6.8vw, 104px); }
  .ct-projects { padding-block: 12px; padding-left: clamp(36px, 3.5vw, 52px); border-top: 0; border-left: 1px solid var(--line); }
  .ct-partnership-grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: end; gap: 96px; }
}
@media (prefers-reduced-motion: no-preference) {
  .ct-hero-entry { animation: hero-entry 380ms var(--ease); }
}
@media print {
  .ct-opening, .ct-partnership { padding-block: 15mm; }
  .ct-projects { break-inside: avoid; }
}
