/* R12 — Soluções and the representative introduction only. No directory/filter changes. */
@font-face { font-family: Montserrat; font-style: normal; font-weight: 900; font-display: swap; src: url('../fonts/Montserrat-Black.woff2') format('woff2'); }
.gtu-solutions-page > section { margin-block: 0; }
.gtu-solutions-page :is(h1,h2,h3) { line-height: 1.12 !important; text-wrap: balance; }
.gtu-solutions-page :is(h1,h2) { font-weight: 900 !important; font-synthesis: none; }
.gtu-solutions-page :is(p,figcaption) { overflow-wrap: break-word; }
.gtu-solutions-page :is(section,article,figure,li,div) { min-width: 0; }
.gtu-solutions-page .gtu-kicker-number { margin: 0 0 1.25rem; }
.gtu-solutions-hero__inner { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: clamp(2rem,4vw,4.5rem); align-items: center; min-height: 0; padding-block: clamp(3rem,5vw,5.5rem); }
.gtu-solutions-hero__copy { container-type: normal; }
.gtu-solutions-hero__copy h1 { font-size: clamp(2.6rem,4.8vw,5rem); margin: 0 0 1.5rem; max-width: 15ch; }
.gtu-solutions-hero__copy > p:last-of-type { font-size: clamp(1rem,1.2vw,1.125rem); max-width: 35rem; line-height: 1.7; }
.gtu-solutions-hero__actions { gap: 1rem; margin-top: 2rem; }
.gtu-solutions-page .wp-element-button,
.gtu-solutions-hero__actions > a:last-child,
.gtu-solution-card__button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: .9rem 1.25rem; border-radius: 14px; font: 700 .875rem/1.4 Montserrat,Arial,sans-serif; text-decoration: none; text-align: center; letter-spacing: 0; text-transform: none; }
.gtu-solutions-page .wp-element-button { background: var(--gtu-cyan); color: var(--gtu-navy); border: 1px solid var(--gtu-cyan); }
.gtu-solutions-hero__actions > a:last-child { border: 1px solid #b8cbd7; background: transparent; color: var(--gtu-navy); }
.gtu-solutions-page a:focus-visible { outline: 3px solid var(--gtu-blue); outline-offset: 5px; }
.gtu-solutions-page a:hover { text-decoration: none; }
.gtu-solutions-page .wp-element-button:hover { background: var(--gtu-navy); color: white; border-color: var(--gtu-navy); }
.gtu-solutions-hero__media { min-height: 0; height: clamp(400px,32vw,540px); border-radius: 26px; align-self: center; }
.gtu-solutions-hero__media img { display: block; object-position: 50% 58%; }
.gtu-solutions-hero__media figcaption { align-items: center; bottom: 1.75rem; left: 1.75rem; gap: .875rem; }
.gtu-solutions-hero__media figcaption strong { font-size: 3.5rem; line-height: 1; }
.gtu-solutions-hero__media figcaption span { font-size: .7rem; line-height: 1.5; }
.gtu-solutions-intro,
.gtu-foundry-process,
.gtu-foundry-story { padding-block: clamp(3.5rem,5vw,5.5rem); }
.gtu-solutions-intro__heading,
.gtu-foundry-process__heading,
.gtu-foundry-story__lead { grid-template-columns: minmax(0,1.25fr) minmax(0,.75fr); gap: clamp(2rem,5vw,5rem); align-items: center; margin: 0 0 clamp(2rem,3.5vw,3.5rem); }
.gtu-solutions-intro__heading h2,
.gtu-foundry-process__heading h2,
.gtu-foundry-story__lead h2 { font-size: clamp(2.2rem,3.8vw,4rem); margin: 0; max-width: 24ch; }
.gtu-solutions-intro__heading p,
.gtu-foundry-process__heading p,
.gtu-foundry-story__lead > p { font-size: 1rem; line-height: 1.75; max-width: 38rem; }
.gtu-foundry-story__lead > p { color: #c7d3dc; }
.gtu-foundry-story__copy > p { font-size: 1rem; line-height: 1.75; color: #c7d3dc; margin: 0; }
.gtu-foundry-story__copy .gtu-foundry-mold-note { margin-top: 1.25rem; padding: 1rem 1.25rem; border-left: 3px solid var(--gtu-cyan); border-radius: 0 14px 14px 0; background: rgba(8,184,216,.08); }
.gtu-foundry-mold-note strong { color: white; display: block; }
.gtu-solutions-services { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.gtu-solution-card { display: flex; flex-direction: column; justify-content: flex-end; min-height: 460px; padding: clamp(1.75rem,2.7vw,2.75rem); border-radius: 26px; isolation: isolate; }
.gtu-solution-card > div { position: relative; inset: auto; max-width: none; padding-top: 140px; z-index: 3; }
.gtu-solution-card h3 { font-size: clamp(1.85rem,2.5vw,2.75rem); max-width: 20ch; margin: 0 0 1rem; font-weight: 700; }
.gtu-solution-card > div > p:first-child { font-size: .68rem; color: #b1e7f0; }
.gtu-solution-card > div > p:last-of-type { font-size: 1rem; line-height: 1.65; color: #dae4eb; margin: 0; max-width: 38rem; min-height: 5em; }
.gtu-solution-card__button { margin-top: 1.5rem; color: white; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.45); }
.gtu-solution-card__button:hover { background: white; color: var(--gtu-navy); }
.gtu-solution-card--white-label img { width: 55%; height: 55%; right: 2%; top: -4%; opacity: .55; }
.gtu-solution-card--white-label::after { background: linear-gradient(180deg,rgba(6,36,67,.05),#062443 64%); }
.gtu-solution-card--foundry { background: #112d3d; }
.gtu-solution-card--foundry > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 62%; opacity: .5; }
.gtu-solution-card--foundry::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(6,36,67,.05),#102b3c 76%); z-index: 2; }
.gtu-foundry-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: clamp(340px,26vw,460px) auto; gap: 1.5rem; }
.gtu-foundry-gallery figure { border-radius: 24px; height: auto; }
.gtu-foundry-gallery__machine { grid-column: 1; grid-row: 1; }
.gtu-foundry-gallery__craft { grid-column: 2; grid-row: 1; }
.gtu-foundry-gallery figure img { display: block; object-position: center; }
.gtu-foundry-gallery__machine img { object-position: center 55%; }
.gtu-foundry-gallery__craft img { object-position: center 64%; }
.gtu-foundry-gallery figcaption { display: flex; flex-direction: column; gap: .5rem; inset: auto 1.75rem 1.75rem; }
.gtu-foundry-gallery figcaption strong { font-size: clamp(1.75rem,2.5vw,2.5rem); line-height: 1.15; }
.gtu-foundry-gallery figcaption small { color: #e4ebef; font-size: .7rem; line-height: 1.5; }
.gtu-foundry-gallery__statement { grid-column: 1 / -1; grid-row: 2; grid-template-columns: auto 1fr; gap: 1.5rem; padding: 1.5rem 2rem; min-height: 0; border-radius: 20px; background: #073a62; }
.gtu-foundry-gallery__statement span { font-size: 3rem; line-height: 1; }
.gtu-foundry-gallery__statement p { max-width: 55rem; font-size: 1rem; line-height: 1.55; }
.gtu-foundry-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.25rem; border: 0; }
.gtu-foundry-steps li,
.gtu-foundry-steps li:first-child,
.gtu-foundry-steps li:nth-child(3),
.gtu-foundry-steps li:nth-child(4) { display: flex; flex-direction: column; border: 1px solid #dcebf0; background: #eff7fa; border-radius: 24px; padding: clamp(1.25rem,1.8vw,2rem); min-height: 0; }
.gtu-foundry-steps li > img { width: 100%; height: 152px; object-fit: contain; display: block; margin-bottom: 1.5rem; }
.gtu-foundry-steps h3 { font-size: clamp(1.2rem,1.55vw,1.6rem); font-weight: 700; color: var(--gtu-navy); margin: 0 0 .875rem; }
.gtu-foundry-steps p { font-size: .9375rem; line-height: 1.65; margin: 0; color: #4f6575; }
.gtu-solutions-cta { padding-block: clamp(3.5rem,5vw,5.5rem); }
.gtu-solutions-cta__inner { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2rem 4rem; align-items: center; }
.gtu-solutions-cta h2 { font-size: clamp(2.4rem,4vw,4.5rem); margin: 0 0 1.25rem; max-width: 18ch; }
.gtu-solutions-cta__inner p { font-size: 1.0625rem; line-height: 1.7; max-width: 40rem; color: #c7d3dc; margin: 0; }
.gtu-solutions-cta .wp-element-button:hover { background: white; border-color: white; color: var(--gtu-navy); }

/* Equal padding and rows remove the stagger caused by the legacy first-child exception. */
.gtu-representatives-page .gtu-representatives-intro__points { gap: 1.25rem; align-items: stretch; }
.gtu-representatives-page .gtu-representatives-intro__points article,
.gtu-representatives-page .gtu-representatives-intro__points article:first-child { border: 1px solid #d6e9f1; border-radius: 22px; padding: clamp(1.5rem,2.25vw,2.25rem); background: #eaf5fa; min-height: 0; margin: 0; }
.gtu-representatives-page .gtu-representatives-intro__points strong { font-size: clamp(1.2rem,1.6vw,1.5rem); line-height: 1.3; min-height: 2.6em; margin: 0; }
.gtu-representatives-page .gtu-representatives-intro__points p { margin: .875rem 0 0; color: #4e6577; font-size: 1rem; line-height: 1.65; }

@media (max-width:1100px) {
  .gtu-solutions-services { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .gtu-solution-card > div > p:last-of-type { min-height: 0; }
  .gtu-foundry-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .gtu-solutions-hero__inner,
  .gtu-solutions-intro__heading,
  .gtu-foundry-process__heading,
  .gtu-foundry-story__lead,
  .gtu-solutions-cta__inner { grid-template-columns: minmax(0,1fr); }
  .gtu-solutions-hero__copy h1 { max-width: 18ch; font-size: clamp(2.5rem,6.5vw,4rem); }
  .gtu-solutions-hero__media { width: 100%; height: clamp(330px,55vw,460px); min-height: 0; }
  .gtu-solutions-cta .wp-element-button { justify-self: start; }
  .gtu-solutions-services { grid-template-columns: minmax(0,1fr); }
  .gtu-solution-card { min-height: 400px; }
  .gtu-solution-card h3 { max-width: none; }
  .gtu-foundry-gallery { grid-template-rows: 340px auto; }
  .gtu-representatives-page .gtu-representatives-intro__points { grid-template-columns: minmax(0,1fr); }
  .gtu-representatives-page .gtu-representatives-intro__points strong { min-height: 0; }
}
@media (max-width:620px) {
  .gtu-solutions-page :is(h1,h2) { text-wrap: pretty; }
  .gtu-solutions-hero__copy h1 { font-size: clamp(2rem,9vw,2.8rem); }
  .gtu-solutions-intro__heading h2,
  .gtu-foundry-process__heading h2,
  .gtu-foundry-story__lead h2,
  .gtu-solutions-cta h2 { font-size: clamp(1.9rem,8vw,2.5rem); }
  .gtu-solutions-hero__actions { align-items: stretch; }
  .gtu-solutions-hero__actions > a { width: 100%; }
  .gtu-solutions-hero__media { height: 330px; border-radius: 22px; }
  .gtu-solution-card { padding: 1.5rem; border-radius: 22px; min-height: 0; }
  .gtu-solution-card > div { padding-top: 115px; }
  .gtu-solution-card h3 { font-size: 1.85rem; }
  .gtu-solution-card--white-label img { top: 0; height: 40%; width: 70%; }
  .gtu-foundry-gallery { display: grid; grid-template-columns: minmax(0,1fr); grid-template-rows: auto; }
  .gtu-foundry-gallery figure { grid-column: 1; grid-row: auto; height: 340px; }
  .gtu-foundry-gallery figure + figure,
  .gtu-foundry-gallery__statement { margin-top: 0; }
  .gtu-foundry-gallery__statement { grid-column: 1; grid-row: auto; padding: 1.5rem; gap: 1rem; }
  .gtu-foundry-gallery__statement span { font-size: 2.5rem; }
  .gtu-foundry-gallery__statement p { font-size: .875rem; }
  .gtu-foundry-steps { display: grid; grid-template-columns: minmax(0,1fr); }
  .gtu-foundry-steps li > img { height: 140px; margin-bottom: 1.25rem; }
  .gtu-foundry-steps h3 { font-size: 1.4rem; }
  .gtu-solutions-cta .wp-element-button { justify-self: stretch; }
}
@media (prefers-reduced-motion:reduce) { .gtu-solutions-page * { scroll-behavior: auto; } }
