/*
Theme Name: Tema Cliente Netlify
Author: Sua Empresa
Version: 1.0
*/


:root {
      --blue-950: #052f5f;
      --blue-900: #06417b;
      --blue-800: #07549b;
      --blue-700: #0a63b5;
      --sand: #cfa275;
      --sand-soft: #f3e8dc;
      --orange: #ef7c00;
      --ink: #13263a;
      --muted: #5b6a78;
      --line: #d9e2e9;
      --paper: #f6f8fa;
      --white: #fff;
      --max: 1180px;
      --radius: 1rem;
      --shadow: 0 10px 28px rgba(3, 48, 92, .09);
    }

    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; scroll-padding-top: 6.25rem; }
    body {
      margin: 0; color: var(--ink); background: var(--white);
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.58; -webkit-font-smoothing: antialiased;
    }
    body.menu-open { overflow: hidden; }
    img { display: block; max-width: 100%; }
    a { color: inherit; }
    button, a { -webkit-tap-highlight-color: transparent; }
    :focus-visible { outline: 3px solid var(--orange); outline-offset: 4px; }
    .skip-link {
      position: fixed; z-index: 1000; left: 1rem; top: 1rem; transform: translateY(-160%);
      padding: .7rem 1rem; color: #fff; background: var(--blue-950); border-radius: .45rem;
    }
    .skip-link:focus { transform: none; }
    .container { width: min(calc(100% - 2.5rem), var(--max)); margin-inline: auto; }
    .section { padding: clamp(3.5rem, 5.25vw, 4.8rem) 0; }
    .section-kicker {
      margin: 0 0 .7rem; color: var(--blue-700); font-size: .76rem; font-weight: 850;
      letter-spacing: .13em; text-transform: uppercase;
    }
    .section-title {
      max-width: 20ch; margin: 0; color: var(--blue-950);
      font-size: clamp(2rem, 3.8vw, 3.25rem); font-weight: 680; line-height: 1.06; letter-spacing: -.04em;
      text-wrap: balance;
    }
    .section-copy { color: var(--muted); font-size: 1.04rem; }
    .btn {
      display: inline-flex; min-height: 3rem; align-items: center; justify-content: center; gap: .55rem;
      padding: .75rem 1.25rem; border: 2px solid var(--blue-800); border-radius: 999px;
      color: var(--white); background: var(--blue-800); font: inherit; font-weight: 700; text-decoration: none; cursor: pointer;
      transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
    }
    .btn::after { content: "→"; }
    .btn:hover:not(:disabled) { transform: translateY(-2px); background: var(--blue-950); box-shadow: 0 9px 22px rgba(7,84,155,.2); }
    .btn-secondary { color: var(--blue-900); background: transparent; }
    .btn-secondary:hover { color: var(--white); }
    .btn:disabled { cursor: not-allowed; color: #6f7b86; border-color: #cbd4dc; background: #edf1f4; box-shadow: none; transform: none; }
    .cta-note { margin: .65rem 0 0; color: var(--muted); font-size: .87rem; }

    .site-header {
      position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.96);
      border-bottom: 1px solid rgba(5,47,95,.1); backdrop-filter: blur(12px);
    }
    .header-inner { min-height: 5.35rem; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
    .brand-group { display: flex; align-items: center; gap: 1rem; flex: 0 0 auto; text-decoration: none; }
    .brand-mark { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; }
    .brand-divider { flex: 0 0 1px; width: 1px; height: 2.6rem; background: var(--line); }
    .brand-idor { width: auto; height: 3.75rem; }
    .brand-faculdade { width: 10rem; height: auto; }
    .brand-signature { width: 7.5rem; height: auto; }
    .site-nav { display: flex; align-items: center; gap: 1.5rem; }
    .site-nav > a:not(.btn) { color: var(--blue-950); font-size: .9rem; font-weight: 650; text-decoration: none; }
    .site-nav > a:not(.btn):hover { color: var(--blue-700); }
    .menu-toggle { display: none; border: 0; padding: .65rem; color: var(--blue-950); background: transparent; font: inherit; font-weight: 800; }

    .hero { position: relative; overflow: hidden; padding: clamp(2.6rem, 5vw, 4.5rem) 0 2.2rem; background: linear-gradient(110deg, #fff 0%, #fff 58%, #f0f6fa 100%); }
    .hero-grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(360px,.92fr); align-items: center; gap: clamp(2.5rem, 5vw, 4.5rem); }
    .eyebrow {
      display: inline-flex; align-items: center; gap: .6rem; margin-bottom: 1rem;
      color: var(--blue-900); font-size: .76rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase;
    }
    .eyebrow::before { content: ""; width: 1.75rem; height: 3px; background: var(--orange); }
    .hero h1 {
      max-width: 13ch; margin: 0; color: var(--blue-950);
      font-size: clamp(3.2rem, 5.4vw, 4.85rem); font-weight: 700; line-height: .98; letter-spacing: -.055em;
      text-wrap: balance;
    }
    .hero h1 span { color: var(--sand); }
    .hero-lead { max-width: 36rem; margin: 1.25rem 0 0; color: #425568; font-size: clamp(1.03rem, 1.7vw, 1.2rem); }
    .hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
    .hero-visual { position: relative; margin: 0; }
    .hero-visual img { position: relative; display: block; width: 100%; height: auto; border-radius: .75rem; box-shadow: var(--shadow); }

    .intro { padding: clamp(3rem, 5vw, 4.25rem) 0; }
    .intro-grid {
      display: grid; grid-template-columns: .75fr 1.25fr;
      grid-template-areas: "kicker ." "title copy";
      column-gap: clamp(2.5rem, 7vw, 6rem); row-gap: .7rem; align-items: start;
    }
    .intro-grid .section-kicker { grid-area: kicker; margin-bottom: 0; }
    .intro-grid .section-title { max-width: 13ch; }
    .intro-grid .section-title { grid-area: title; }
    .intro-copy { grid-area: copy; margin: 0; color: #425568; font-size: 1.08rem; }
    .care-line { display: block; margin-top: 1.1rem; color: var(--blue-900); font-size: 1.25rem; font-weight: 700; }
    .stats {
      display: grid; grid-template-columns: repeat(3,1fr); margin-top: 2.5rem;
      border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
    }
    .stat { padding: 1.25rem 1rem 1.25rem 0; }
    .stat + .stat { padding-left: 1.25rem; border-left: 1px solid var(--line); }
    .stat strong { display: block; color: var(--blue-900); font-size: clamp(1.45rem, 3vw, 2.2rem); line-height: 1.05; letter-spacing: -.035em; }
    .stat span { display: block; margin-top: .3rem; color: var(--muted); font-size: .86rem; }

    .differentials { background: var(--paper); }
    .diff-grid { display: grid; grid-template-columns: repeat(6,1fr); align-items: stretch; gap: 0 2rem; margin-top: 2.5rem; border-top: 1px solid var(--line); }
    .diff-item { grid-column: span 2; }
    .diff-item:nth-child(-n+2) { grid-column: span 3; }
    .diff-item { display: grid; grid-template-columns: 2rem 1fr; align-items: start; gap: .85rem; height: 100%; padding: 1.5rem 0; border-bottom: 1px solid var(--line); }
    .diff-number { padding-top: .16rem; color: var(--sand); font-size: .75rem; font-weight: 700; letter-spacing: .08em; }
    .diff-item h3 { margin: 0; color: var(--blue-950); font-size: 1.08rem; font-weight: 650; line-height: 1.25; text-wrap: balance; }
    .diff-item p { margin: .6rem 0 0; color: var(--muted); font-size: .92rem; line-height: 1.55; }
    .inline-cta { display: flex; align-items: center; gap: 1rem; margin-top: 2rem; }
    .inline-cta p { margin: 0; color: var(--muted); font-size: .9rem; }

    .formation-grid { display: block; }
    .formation-grid .section-title { white-space: normal; }
    .steps { border-top: 1px solid var(--line); }
    .step { display: grid; grid-template-columns: 10rem 1fr; gap: 1.25rem; padding: 1.2rem 0; border-bottom: 1px solid var(--line); }
    .step strong { color: var(--blue-900); }
    .step p { margin: 0; color: var(--muted); }
    .trails-details { margin-top: 1.5rem; border: 1px solid #dcc7b2; border-radius: .8rem; background: var(--sand-soft); }
    .trails-details summary {
      position: relative; cursor: pointer; list-style: none; padding: 1.15rem 3.25rem 1.15rem 1.25rem;
      color: var(--blue-950); font-weight: 700;
    }
    .trails-details summary::-webkit-details-marker { display: none; }
    .trails-details summary::after { content: "+"; position: absolute; right: 1.25rem; top: .65rem; color: var(--blue-700); font-size: 1.7rem; font-weight: 400; transition: transform .18s ease; }
    .trails-details[open] summary::after { transform: rotate(45deg); }
    .tracks { display: grid; grid-template-columns: repeat(3,1fr); padding: 0 1.25rem 1.25rem; }
    .track { padding: .75rem 1.25rem .5rem 0; }
    .track + .track { padding-left: 1.25rem; border-left: 1px solid rgba(5,47,95,.18); }
    .track h3 { margin: 0; color: var(--blue-950); font-size: 1rem; line-height: 1.25; }
    .track p { margin: .4rem 0 0; color: #53616d; font-size: .89rem; }
    .track-note { margin: .65rem 1.25rem 1.25rem; color: var(--blue-950); font-size: .9rem; font-weight: 700; }

    .infra { color: var(--white); background: var(--blue-950); }
    .infra .section-kicker { color: #9ecdec; }
    .infra .section-title { color: var(--white); }
    .infra-top { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(2.5rem, 7vw, 6rem); }
    .address { margin-top: 1.35rem; padding-left: 1rem; border-left: 4px solid var(--sand); color: #d7e5f0; font-size: .95rem; }
    .address strong { display: block; color: var(--white); }
    .space-list-intro { margin: 0 0 .8rem; color: var(--white); font-weight: 650; }
    .space-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.75rem; margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.18); }
    .space-list li { display: flex; gap: .7rem; padding: .9rem 0; border-bottom: 1px solid rgba(255,255,255,.18); color: #e4edf4; font-size: .92rem; }
    .space-list li::before { content: ""; flex: 0 0 .48rem; width: .48rem; height: .48rem; margin-top: .48rem; background: var(--sand); border-radius: 50%; }
    .scenario-note { grid-column: 1 / -1; margin: 1rem 0 0; color: #bdd0df; font-size: .91rem; }

    .faq { background: var(--paper); }
    .faq-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2.5rem, 7vw, 6rem); align-items: start; }
    .faq-list { border-top: 1px solid var(--line); }
    .faq-list details { border-bottom: 1px solid var(--line); }
    .faq-list summary {
      position: relative; cursor: pointer; list-style: none; padding: 1.1rem 3rem 1.1rem 0;
      color: var(--blue-950); font-weight: 700;
    }
    .faq-list summary::-webkit-details-marker { display: none; }
    .faq-list summary::after { content: "+"; position: absolute; right: .2rem; top: .62rem; color: var(--blue-700); font-size: 1.55rem; font-weight: 400; transition: transform .18s ease; }
    .faq-list details[open] summary::after { transform: rotate(45deg); }
    .faq-list p { margin: -.25rem 0 1.15rem; color: var(--muted); }

    .final-cta { padding: clamp(2.9rem, 5vw, 4.25rem) 0; color: var(--white); background: var(--blue-800); }
    .final-grid { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 1.5rem; }
    .final-cta h2 { max-width: 20ch; margin: 0; font-size: clamp(2.1rem, 4vw, 3.7rem); font-weight: 650; line-height: 1.03; letter-spacing: -.045em; text-wrap: balance; }
    .final-cta p { margin: .8rem 0 0; color: #dbeaf6; }
    .final-action { min-width: 16.5rem; }
    .final-cta .btn { color: var(--blue-950); border-color: var(--white); background: var(--white); }
    .final-cta .btn:disabled { color: #d5dde4; border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.12); }
    .final-cta .cta-note { color: #dbeaf6; }

    .site-footer { padding: 1.8rem 0; background: #eef2f5; }
    .footer-grid { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2rem; }
    .footer-logos { display: flex; align-items: center; gap: 1rem; }
    .footer-logos .brand-idor { width: auto; height: 3.4rem; }
    .footer-logos .brand-faculdade { width: 9.5rem; height: auto; }
    .footer-logos .brand-signature { width: 7.35rem; height: auto; }
    .footer-copy { text-align: right; color: var(--muted); font-size: .82rem; }
    .footer-copy strong { display: block; color: var(--blue-950); }

    @media (max-width: 940px) {
      .menu-toggle { display: inline-flex; }
      .site-nav {
        position: fixed; inset: 5.35rem 0 auto; display: none; align-items: stretch;
        padding: 1.25rem 1.25rem 1.6rem; background: var(--white);
        border-bottom: 1px solid var(--line); box-shadow: 0 15px 28px rgba(3,48,92,.1);
      }
      .site-nav.is-open { display: grid; }
      .site-nav > a:not(.btn) { padding: .65rem 0; }
      .hero-grid { grid-template-columns: minmax(0,1fr) minmax(300px,.85fr); gap: 2.25rem; }
      .hero h1 { font-size: clamp(3rem, 7vw, 4.2rem); }
      .intro-grid {
        grid-template-columns: 1fr; grid-template-areas: "kicker" "title" "copy";
        column-gap: 0; row-gap: 0;
      }
      .intro-grid .section-kicker { margin-bottom: .7rem; }
      .intro-grid .section-title { margin-bottom: 1.5rem; }
      .formation-grid, .infra-top, .faq-grid { grid-template-columns: 1fr; gap: 2rem; }
      .formation-grid .section-title { white-space: normal; }
      .diff-grid { grid-template-columns: 1fr 1fr; }
      .diff-item, .diff-item:nth-child(-n+2) { grid-column: auto; }
      .diff-item:last-child { grid-column: 1 / -1; }
    }

    @media (max-width: 700px) {
      html { scroll-padding-top: 5.6rem; }
      .container { width: min(calc(100% - 1.5rem), var(--max)); }
      .header-inner { min-height: 4.7rem; }
      .header-inner { gap: .45rem; }
      .brand-group { min-width: 0; gap: .35rem; }
      .brand-divider { height: 1.8rem; }
      .brand-idor { width: auto; height: 2.3rem; }
      .brand-faculdade { width: 6.1rem; height: auto; }
      .brand-signature { width: 5.2rem; height: auto; }
      .menu-toggle { padding: .45rem; font-size: .9rem; }
      .site-nav { inset-block-start: 4.7rem; }
      .hero { padding-top: 2.2rem; }
      .hero-grid { grid-template-columns: 1fr; gap: 2.8rem; }
      .hero h1 { max-width: 12ch; font-size: clamp(2.75rem, 13vw, 4.1rem); }
      .hero-actions { flex-direction: column; align-items: stretch; }
      .hero-actions .btn { width: 100%; }
      .stats, .diff-grid, .tracks, .space-list { grid-template-columns: 1fr; }
      .diff-item:last-child { grid-column: auto; }
      .stat { padding: 1rem 0; }
      .stat + .stat { padding-left: 0; border-top: 1px solid var(--line); border-left: 0; }
      .step { grid-template-columns: 1fr; gap: .3rem; }
      .track { padding: .8rem 0; }
      .track + .track { padding-left: 0; border-top: 1px solid rgba(5,47,95,.18); border-left: 0; }
      .inline-cta { align-items: flex-start; flex-direction: column; }
      .final-grid, .footer-grid { grid-template-columns: 1fr; }
      .final-action { min-width: 0; }
      .final-action .btn { width: 100%; }
      .footer-copy { text-align: left; }
      .footer-logos { gap: .7rem; }
      .footer-logos .brand-idor { height: 2.6rem; }
      .footer-logos .brand-faculdade { width: 7rem; }
      .footer-logos .brand-signature { width: 5.75rem; }
    }

    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    }

    :root {
      --blue-950: #001d46;
      --blue-900: #003d82;
      --blue-800: #004fb8;
      --blue-700: #0878de;
      --sand: #d6a66f;
      --sand-soft: #f5e7d6;
      --ink: #071f3d;
      --muted: #50677f;
      --line: #cbdbea;
      --paper: #eef6fc;
      --radius: 1.15rem;
      --shadow: 0 24px 60px rgba(0, 47, 104, .22);
    }

    body { background: #f8fbfe; }

    .site-header {
      background: rgba(255,255,255,.92);
      border-bottom-color: rgba(0,79,184,.14);
      box-shadow: 0 8px 30px rgba(0,38,84,.06);
    }

    .site-nav > a:not(.btn) { position: relative; }
    .site-nav > a:not(.btn)::after {
      content: ""; position: absolute; inset: auto 0 -.48rem; height: 2px;
      background: linear-gradient(90deg, var(--blue-700), #60c8ff); transform: scaleX(0); transform-origin: left;
      transition: transform .2s ease;
    }
    .site-nav > a:not(.btn):hover::after { transform: scaleX(1); }

    .btn {
      min-height: 3.15rem; padding-inline: 1.45rem; border-radius: .58rem;
      border-color: #0967cf; background: linear-gradient(135deg, #0755bd, #003d91);
      box-shadow: 0 10px 28px rgba(0,79,184,.2);
    }
    .btn:hover:not(:disabled) { background: linear-gradient(135deg, #0878de, #0046a6); box-shadow: 0 13px 30px rgba(0,79,184,.3); }
    .btn:disabled { box-shadow: none; }
    .btn-secondary { color: #bfe7ff; border-color: rgba(159,218,255,.6); background: rgba(3,48,104,.42); box-shadow: none; }
    .btn-secondary:hover { color: #fff; border-color: #fff; background: rgba(7,120,222,.42); }

    .hero {
      isolation: isolate; color: #fff; padding: clamp(3.6rem, 7vw, 6.2rem) 0 clamp(3.4rem, 6vw, 5.2rem);
      background:
        radial-gradient(circle at 74% 44%, rgba(0,162,255,.34), transparent 28%),
        radial-gradient(circle at 15% 20%, rgba(12,107,210,.34), transparent 32%),
        linear-gradient(118deg, #00152f 0%, #002f6e 52%, #001a3d 100%);
    }
    .hero::before {
      content: ""; position: absolute; z-index: -2; inset: 0; opacity: .34;
      background-image:
        linear-gradient(rgba(73,176,255,.16) 1px, transparent 1px),
        linear-gradient(90deg, rgba(73,176,255,.16) 1px, transparent 1px);
      background-size: 58px 58px;
      mask-image: linear-gradient(90deg, #000, transparent 48%, #000);
    }
    .hero::after {
      content: ""; position: absolute; z-index: -1; inset: 0;
      background:
        linear-gradient(106deg, transparent 16%, rgba(80,194,255,.24) 16.15%, transparent 16.3%),
        linear-gradient(74deg, transparent 77%, rgba(80,194,255,.2) 77.15%, transparent 77.3%);
      pointer-events: none;
    }
    .hero-grid { grid-template-columns: minmax(0,1fr) minmax(390px,.95fr); }
    .eyebrow { color: #9edbff; }
    .eyebrow::before { background: var(--sand); box-shadow: 0 0 16px rgba(214,166,111,.65); }
    .hero h1 { max-width: 12ch; color: #fff; text-shadow: 0 4px 26px rgba(0,10,30,.32); }
    .hero h1 span { color: var(--sand); }
    .hero-lead { color: #d4eaff; }
    .hero .cta-note { color: #a9c8e1; }
    .hero-visual { padding: .6rem; }
    .hero-visual::before {
      content: ""; position: absolute; inset: 0; border: 1px solid rgba(116,211,255,.72); border-radius: 1rem;
      box-shadow: 0 0 42px rgba(0,159,255,.38), inset 0 0 34px rgba(0,126,255,.18); transform: perspective(900px) rotateY(-2deg);
    }
    .hero-visual img { border-radius: .65rem; box-shadow: 0 26px 70px rgba(0,10,35,.44); }

    .intro { position: relative; background: #fff; }
    .intro::before {
      content: ""; position: absolute; inset: 0 0 auto; height: 3px;
      background: linear-gradient(90deg, transparent, #0d8cec 30%, var(--sand) 65%, transparent);
    }
    .section-kicker { color: #0068c9; }
    .section-title { color: var(--blue-950); }
    .care-line { color: var(--blue-800); }
    .stat strong { color: #004aa9; }

    .differentials {
      position: relative; overflow: hidden; color: #fff;
      background:
        radial-gradient(circle at 85% 8%, rgba(0,144,255,.25), transparent 26%),
        linear-gradient(135deg, #001b40, #003d80 62%, #00295c);
    }
    .differentials::before {
      content: ""; position: absolute; inset: 0; opacity: .24; pointer-events: none;
      background-image: linear-gradient(rgba(87,183,255,.2) 1px, transparent 1px), linear-gradient(90deg, rgba(87,183,255,.2) 1px, transparent 1px);
      background-size: 52px 52px;
    }
    .differentials .container { position: relative; }
    .differentials .section-kicker { color: #91d5ff; }
    .differentials .section-title, .differentials .diff-item h3 { color: #fff; }
    .diff-grid { gap: 1rem; border-top: 0; }
    .diff-item, .diff-item:nth-child(-n+2) {
      padding: 1.35rem; border: 1px solid rgba(118,202,255,.22); border-radius: .8rem;
      background: linear-gradient(145deg, rgba(11,78,145,.68), rgba(0,33,76,.58));
      box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 16px 35px rgba(0,13,37,.16);
    }
    .diff-number { color: #efbd83; }
    .diff-item p, .differentials .inline-cta p { color: #c9dded; }
    .differentials .btn:disabled { color: #b7cee1; border-color: rgba(170,218,248,.3); background: rgba(255,255,255,.09); }

    .formation-grid .steps, .faq-list { border-top-color: #9bc7e7; }
    .step, .faq-list details { border-bottom-color: #cfdfeb; }
    .step strong { color: #0057b8; }
    .trails-details { border-color: #d8b58c; background: linear-gradient(135deg, #faf1e6, #f2dfc8); }

    .infra {
      position: relative; overflow: hidden;
      background:
        radial-gradient(circle at 75% 25%, rgba(0,144,255,.24), transparent 30%),
        linear-gradient(120deg, #00162f, #00346f);
    }
    .infra::after {
      content: ""; position: absolute; width: 30rem; aspect-ratio: 1; right: -9rem; bottom: -18rem;
      border: 1px solid rgba(102,202,255,.3); border-radius: 50%; box-shadow: 0 0 60px rgba(0,134,255,.22);
    }
    .space-list li::before { background: var(--sand); box-shadow: 0 0 12px rgba(214,166,111,.7); }

    .coord-strip { padding: clamp(2.4rem, 4vw, 3.4rem) 0; background: var(--white); border-bottom: 1px solid var(--line); }
    .faq { background: linear-gradient(180deg, #eff7fc, #f8fbfd); }
    .faq-list summary::after { color: #0074da; }

    .final-cta {
      position: relative; overflow: hidden;
      background:
        radial-gradient(circle at 82% 50%, rgba(36,162,255,.4), transparent 26%),
        linear-gradient(118deg, #002458, #0050ad 64%, #003578);
    }
    .final-cta::before {
      content: ""; position: absolute; inset: 0; opacity: .25;
      background-image: linear-gradient(105deg, transparent 48%, rgba(150,222,255,.35) 48.2%, transparent 48.4%);
    }
    .final-grid { position: relative; }
    .final-cta .btn { color: #003e8d; border-color: #fff; background: #fff; box-shadow: 0 12px 32px rgba(0,20,54,.2); }
    .site-footer { background: #e8f1f8; border-top: 1px solid #c9dcea; }

    @media (max-width: 940px) {
      .site-nav { background: rgba(255,255,255,.98); }
      .hero-grid { grid-template-columns: minmax(0,1fr) minmax(310px,.85fr); }
      .diff-grid { gap: .85rem; }
    }

    @media (max-width: 700px) {
      .hero { padding-top: 3rem; }
      .hero-grid { grid-template-columns: 1fr; }
      .hero-visual { margin-top: .6rem; }
      .diff-grid { gap: .75rem; }
      .diff-item, .diff-item:nth-child(-n+2) { padding: 1.15rem; }
    }

    .institutional { padding-block: clamp(3.75rem, 5vw, 4.75rem); background: #fff; }
    .institutional-intro { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: clamp(2.5rem, 5vw, 4.5rem); align-items: center; }
    .institutional-intro > *, .institution-grid > *, .numbers-band > *, .teaching-card > *, .vestibular-grid > * { min-width: 0; }
    .institutional-intro .section-title { max-width: 17ch; }
    .institutional-lead { max-width: 64ch; margin: 0; color: #425b73; font-size: 1.08rem; }
    .institutional-lead strong { color: var(--blue-900); }
    .institution-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 2.4rem; }
    .institution-card {
      padding: 1.55rem; border: 1px solid #cbddea; border-radius: .9rem;
      background: linear-gradient(145deg, #f8fcff, #edf6fc); box-shadow: 0 14px 32px rgba(0,47,104,.07);
    }
    .institution-card h3 { margin: 0; color: var(--blue-950); font-size: 1.25rem; }
    .institution-card h3 span { display: block; margin-bottom: .35rem; color: #0872cf; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
    .institution-card p { max-width: 62ch; margin: .75rem 0 0; color: var(--muted); }
    .numbers-band {
      display: grid; grid-template-columns: repeat(2,1fr); margin-top: 1rem; overflow: hidden;
      color: #fff; background: linear-gradient(120deg, #001d46, #0054ad); border-radius: .9rem;
    }
    .number-item { display: grid; grid-template-rows: auto 1fr; align-content: start; padding: 1.4rem 1.25rem; }
    .number-item + .number-item { border-left: 1px solid rgba(255,255,255,.16); }
    .number-item strong { display: block; color: #fff; font-size: clamp(1.55rem, 2.45vw, 2.15rem); line-height: 1; white-space: nowrap; }
    .number-item span { display: block; max-width: 23ch; margin-top: .55rem; color: #cfe8f8; font-size: .8rem; line-height: 1.35; }

    .teaching-hospital { padding: clamp(2.6rem, 5vw, 4rem) 0; background: #edf6fc; }
    .teaching-card {
      position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 4rem); align-items: center;
      padding: clamp(1.8rem, 3.5vw, 2.75rem); overflow: hidden; border: 1px solid #bdd8eb; border-radius: 1rem; background: #fff;
      box-shadow: 0 18px 45px rgba(0,53,112,.08);
    }
    .teaching-card::after { content: ""; position: absolute; width: 15rem; aspect-ratio: 1; right: -7rem; top: -8rem; border: 1px solid rgba(8,120,222,.25); border-radius: 50%; }
    .teaching-card .section-title { max-width: 20ch; font-size: clamp(1.85rem, 3vw, 2.7rem); }
    .teaching-copy { position: relative; max-width: 66ch; margin: 0; color: var(--muted); font-size: 1.04rem; }
    .teaching-copy strong { color: var(--blue-900); }

    .vestibular { background: #fff; }
    .vestibular-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2.5rem, 7vw, 6rem); align-items: start; }
    .vestibular .section-title { max-width: 14ch; }
    .vestibular-copy { margin: 1rem 0 0; color: var(--muted); }
    .document-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid #a9cce5; }
    .document-item { display: grid; grid-template-columns: 1fr auto; gap: 1rem; align-items: center; padding: 1rem 0; border-bottom: 1px solid #cfdfeb; }
    .document-name { color: var(--blue-950); font-weight: 700; }
    .document-status { padding: .32rem .58rem; color: #48657c; background: #edf3f7; border-radius: .35rem; font-size: .74rem; font-weight: 750; text-transform: uppercase; letter-spacing: .05em; }
    .document-link { color: #005ec5; font-weight: 750; text-decoration-thickness: 2px; text-underline-offset: .25rem; }
    .document-note { margin: 1rem 0 0; color: #4f667a; font-size: .9rem; }

    .faq-list a { color: #005ec5; font-weight: 700; text-underline-offset: .2rem; }
    .inline-cta .btn { flex: 0 0 auto; }

    .diff-item > div, .step > *, .final-grid > *, .footer-grid > * { min-width: 0; }
    .diff-item p { max-width: 54ch; }
    .coord-bio { max-width: 72ch; }
    .vestibular-copy { max-width: 42ch; }
    .faq-list p { max-width: 68ch; }

    @media (max-width: 1080px) {
      .menu-toggle { display: inline-flex; }
      .site-nav {
        position: fixed; inset: 5.35rem 0 auto; display: none; align-items: stretch;
        padding: 1.25rem 1.25rem 1.6rem; background: rgba(255,255,255,.98);
        border-bottom: 1px solid var(--line); box-shadow: 0 15px 28px rgba(3,48,92,.1);
      }
      .site-nav.is-open { display: grid; }
      .site-nav > a:not(.btn) { padding: .65rem 0; }
    }

    @media (max-width: 940px) {
      .institutional-intro, .teaching-card { grid-template-columns: 1fr; gap: 1.4rem; }
      .institutional-intro .section-title { max-width: 18ch; }
      .institution-grid { grid-template-columns: 1fr; }
      .numbers-band { grid-template-columns: 1fr 1fr; }
      .number-item:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.16); }
      .number-item:nth-child(4) { border-top: 1px solid rgba(255,255,255,.16); }
    }

    @media (max-width: 700px) {
      .numbers-band { grid-template-columns: 1fr; }
      .number-item + .number-item, .number-item:nth-child(3) { border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
      .document-item { grid-template-columns: 1fr; gap: .45rem; }
      .document-status { justify-self: start; }
      .teaching-card { padding: 1.35rem; }
      .institutional { padding-block: 3.5rem; }
      .institutional-intro .section-title { max-width: 15ch; }
      .institutional-lead { font-size: 1rem; }
      .institution-grid { margin-top: 2rem; }
      .institution-card { padding: 1.3rem; }
      .number-item { min-height: 6rem; padding: 1.25rem; }
      .number-item span { max-width: 28ch; }
    }

    @media (max-width: 820px) {
      .footer-grid { grid-template-columns: 1fr; gap: 1.25rem; }
      .footer-copy { text-align: left; }
    }

    body { overflow-x: hidden; }

    .hero {
      min-height: min(46rem, calc(100vh - 5.35rem)); display: grid; align-items: center;
      padding: clamp(4.5rem, 9vw, 7.5rem) 0;
      background: #001a3d;
    }
    .hero::before {
      z-index: 0; opacity: 1; mask-image: none;
      background:
        linear-gradient(90deg, rgba(0,20,49,.98) 0%, rgba(0,31,73,.94) 37%, rgba(0,40,87,.57) 59%, rgba(0,25,60,.12) 78%),
        linear-gradient(180deg, rgba(0,15,37,.08), rgba(0,20,50,.4));
    }
    .hero::after {
      z-index: 2; opacity: .7;
      background:
        radial-gradient(circle at 74% 40%, rgba(30,166,255,.22), transparent 26%),
        linear-gradient(104deg, transparent 18%, rgba(87,196,255,.23) 18.12%, transparent 18.28%),
        linear-gradient(77deg, transparent 78%, rgba(214,166,111,.26) 78.12%, transparent 78.28%);
    }
    .hero-grid { position: static; display: block; }
    .hero-copy { position: relative; z-index: 4; width: min(100%, 40rem); }
    .hero h1 { max-width: 11.5ch; font-size: clamp(3.4rem, 6vw, 5.6rem); }
    .hero-lead { max-width: 34rem; color: #e0effa; }
    .hero-visual { position: absolute; z-index: -1; inset: 0 0 0 auto; width: min(66vw, 72rem); margin: 0; padding: 0; }
    .hero-visual::before { display: none; }
    .hero-visual img {
      width: auto; height: 100%; object-fit: cover; object-position: right top;
      border-radius: 0; box-shadow: none;
      -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.75) 20%, #000 42%);
      mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.75) 20%, #000 42%);
    }

    .institutional-intro { align-items: start; }
    .institutional-story { display: grid; gap: 1rem; }
    .institutional-story p { max-width: 66ch; margin: 0; color: #425b73; font-size: 1.08rem; }
    .institutional-story p:first-child { color: var(--blue-950); font-size: 1.18rem; font-weight: 650; }
    .numbers-band { margin-top: 2.4rem; }
    .number-source {
      display: inline-flex !important; width: fit-content; margin: 0 0 .7rem !important; padding: .28rem .48rem;
      color: #001d46 !important; background: #9edbff; border-radius: .3rem;
      font-size: .66rem !important; font-weight: 850; line-height: 1 !important; letter-spacing: .08em; text-transform: uppercase;
    }
    .number-item:last-child .number-source { background: #f0c695; }

    .teaching-hospital { padding-top: 0; }
    .teaching-card { border-top-left-radius: 0; border-top-right-radius: 0; }

    .infra-top { position: relative; z-index: 2; }
    .infra-gallery {
      position: relative; z-index: 2; display: grid; grid-template-columns: repeat(12, minmax(0,1fr));
      grid-template-rows: repeat(2, minmax(15rem, 25vw)); gap: 1rem; margin-top: 2.4rem;
    }
    .infra-photo {
      position: relative; min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.2);
      border-radius: .9rem; background: #001126; box-shadow: 0 18px 42px rgba(0,10,28,.32);
    }
    .infra-photo:nth-child(1), .infra-photo:nth-child(4) { grid-column: span 7; }
    .infra-photo:nth-child(2), .infra-photo:nth-child(3) { grid-column: span 5; }
    .infra-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
    .infra-photo:nth-child(1) img { object-position: center 48%; }
    .infra-photo:nth-child(2) img { object-position: center center; }
    .infra-photo:nth-child(3) img { object-position: center 45%; }
    .infra-photo:nth-child(4) img { object-position: center 48%; }
    .infra-photo:hover img { transform: scale(1.025); }
    .infra-photo figcaption {
      position: absolute; inset: auto 0 0; padding: 2.6rem 1rem .9rem;
      color: #fff; background: linear-gradient(transparent, rgba(0,18,43,.9)); font-size: .92rem; font-weight: 700;
    }

    @media (max-width: 940px) {
      .hero { min-height: 42rem; }
      .hero-visual { width: 76vw; }
      .hero-copy { width: min(100%, 36rem); }
      .infra-gallery { grid-template-rows: repeat(2, minmax(14rem, 33vw)); }
    }

    @media (max-width: 700px) {
      .hero { min-height: 46rem; align-items: start; padding: 3.5rem 0 18rem; }
      .hero::before {
        background:
          linear-gradient(180deg, rgba(0,22,53,.98) 0%, rgba(0,31,73,.92) 48%, rgba(0,28,65,.35) 68%, rgba(0,20,49,.82) 100%),
          linear-gradient(90deg, rgba(0,25,60,.2), rgba(0,25,60,.05));
      }
      .hero-grid { display: block; }
      .hero h1 { max-width: 10.5ch; font-size: clamp(2.75rem, 13vw, 4.15rem); }
      .hero-lead { max-width: 32rem; }
      .hero-visual { inset: auto 0 0; width: 100%; height: 25rem; }
      .hero-visual img {
        object-position: 62% center;
        -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.78) 28%, #000 48%);
        mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.78) 28%, #000 48%);
      }
      .institutional-story p, .institutional-story p:first-child { font-size: 1rem; }
      .infra-gallery { grid-template-columns: 1fr; grid-template-rows: none; gap: .8rem; margin-top: 2rem; }
      .infra-photo:nth-child(n) { grid-column: auto; aspect-ratio: 4 / 3; }
      .infra-photo:hover img { transform: none; }
    }

    .photo-label-v3 {
      position: absolute; z-index: 5; right: 1.25rem; bottom: 1.1rem; margin: 0;
      padding: .28rem .5rem; color: #fff; background: rgba(0,29,70,.72); border: 1px solid rgba(255,255,255,.25);
      border-radius: .3rem; font-size: .72rem; font-weight: 700; letter-spacing: .02em;
    }
    .selection-summary { padding: 1.65rem 0; background: #fff; border-bottom: 1px solid var(--line); }
    .selection-card-v3 { display: grid; grid-template-columns: minmax(13rem,.72fr) minmax(0,1.28fr); gap: 2rem; align-items: center; }
    .selection-heading h2 { max-width: none; font-size: clamp(1.45rem,2.2vw,2rem); }
    .selection-status { display: inline-block; margin-top: .65rem; color: var(--blue-700); font-size: .82rem; font-weight: 750; }
    .selection-grid-v3 { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .selection-item-v3 { min-width: 0; padding: .85rem 1rem; }
    .selection-item-v3 + .selection-item-v3 { border-left: 1px solid var(--line); }
    .selection-item-v3 span { display: block; color: var(--muted); font-size: .75rem; }
    .selection-item-v3 strong, .selection-item-v3 a { display: block; margin-top: .2rem; color: var(--blue-950); font-size: .9rem; font-weight: 750; }
    .selection-links-v3 { display: flex; flex-wrap: wrap; gap: .25rem .8rem; }
    .stats--four { grid-template-columns: repeat(4,1fr); }
    .teaching-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
    .teaching-cards .teaching-card { display: block; }
    .teaching-cards .teaching-card .section-title { font-size: clamp(1.55rem,2.4vw,2.15rem); }
    .teaching-cards .teaching-copy { margin-top: 1rem; }
    .formation-lead { margin: 1rem 0 0; color: var(--muted); }
    .academic-details { margin-top: 1.5rem; border-top: 1px solid #a9cce5; }
    .academic-details details { border-bottom: 1px solid #cfdfeb; }
    .academic-details summary { position: relative; cursor: pointer; list-style: none; padding: 1rem 3rem 1rem 0; color: var(--blue-950); font-weight: 700; }
    .academic-details summary::-webkit-details-marker { display: none; }
    .academic-details summary::after { content: "+"; position: absolute; right: .2rem; top: .5rem; color: var(--blue-700); font-size: 1.55rem; font-weight: 400; transition: transform .18s ease; }
    .academic-details details[open] summary::after { transform: rotate(45deg); }
    .academic-details details > p { margin: -.1rem 0 1rem; color: var(--muted); }
    .axes-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.5rem; padding: 0 1.25rem 1.25rem; }
    .axis-item { padding: .8rem 0; border-top: 1px solid rgba(5,47,95,.14); }
    .axis-item:first-child, .axis-item:nth-child(2) { border-top: 0; }
    .axis-item h3 { margin: 0; color: var(--blue-950); font-size: 1rem; }
    .axis-item p { margin: .35rem 0 0; color: var(--muted); font-size: .89rem; }
    .career-strip { background: #fff; }
    .career-strip .formation-grid {
      grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: start;
    }
    .career-strip .formation-grid > * { min-width: 0; }
    .career-strip .section-title { max-width: 18ch; white-space: normal; }
    .career-strip .section-copy { margin: 0 0 1.1rem; }
    .career-list-v3 { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
    .career-list-v3 li { padding: .8rem 0; color: var(--muted); border-bottom: 1px solid var(--line); }
    .career-list-v3 strong { color: var(--blue-900); }

    .visit-strip { padding: 2.25rem 0; background: var(--sand-soft); border-top: 1px solid #dcc7b2; border-bottom: 1px solid #dcc7b2; }
    .visit-inner-v3 { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2.5rem; align-items: center; }
    .visit-inner-v3 > div:first-child { max-width: none; min-width: 0; }
    .visit-inner-v3 > div:last-child { justify-self: end; align-self: center; }
    .visit-inner-v3 h2 { max-width: none; margin: 0; color: var(--blue-950); font-size: clamp(1.9rem,2.7vw,2.35rem); line-height: 1.08; letter-spacing: -.035em; }
    .visit-inner-v3 p { margin: .65rem 0 0; color: var(--muted); }

    .process-list-v3 { margin-top: 1.4rem; border-top: 1px solid #a9cce5; }
    .process-row-v3 { display: grid; grid-template-columns: 1fr auto; gap: 1rem; padding: .85rem 0; border-bottom: 1px solid #cfdfeb; }
    .process-row-v3 span { color: var(--muted); }
    .process-row-v3 strong { color: var(--blue-950); text-align: right; }
    .vestibular-actions {
      display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin-top: 1.25rem;
    }
    .vestibular-actions .btn { flex: 0 1 auto; min-width: 12.75rem; }
    .vestibular-actions .btn-secondary {
      color: var(--blue-800); border-color: var(--blue-800); background: transparent; box-shadow: none;
    }
    .vestibular-actions .btn-secondary:hover:not(.is-disabled) {
      color: var(--white); border-color: var(--blue-800); background: var(--blue-800);
    }
    .js-edital.is-disabled { color: var(--muted); cursor: default; text-decoration: none; }
    .vestibular-actions .btn-secondary.is-disabled {
      color: #6f7b86; border-color: #cbd4dc; background: #edf1f4; box-shadow: none;
    }
    .vestibular-actions .btn-secondary.is-disabled::after { display: none; }
    .institutional-link { color: #005ec5; font-weight: 700; text-underline-offset: .2rem; }
    .infra-photo figcaption small { display: block; margin-top: .12rem; color: #cfe8f8; font-size: .72rem; font-weight: 500; }

    @media (max-width: 940px) {
      .selection-card-v3, .teaching-cards { grid-template-columns: 1fr; }
      .career-strip .formation-grid { grid-template-columns: 1fr; }
      .selection-grid-v3 { grid-template-columns: 1fr 1fr; }
      .selection-item-v3:nth-child(3) { border-left: 0; border-top: 1px solid var(--line); }
      .selection-item-v3:nth-child(4) { border-top: 1px solid var(--line); }
      .stats--four { grid-template-columns: 1fr 1fr; }
      .stats--four .stat:nth-child(3) { padding-left: 0; border-top: 1px solid var(--line); border-left: 0; }
      .stats--four .stat:nth-child(4) { border-top: 1px solid var(--line); }
      .visit-inner-v3 { grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; }
    }
    @media (max-width: 700px) {
      .hero-visual img { object-position: 58% center; }
      .photo-label-v3 { right: .75rem; bottom: .75rem; }
      .selection-grid-v3, .stats--four, .axes-grid { grid-template-columns: 1fr; }
      .selection-item-v3 + .selection-item-v3, .selection-item-v3:nth-child(3) { border-top: 1px solid var(--line); border-left: 0; }
      .stats--four .stat:nth-child(n) { padding: 1rem 0; border-top: 1px solid var(--line); border-left: 0; }
      .stats--four .stat:first-child { border-top: 0; }
      .axis-item:nth-child(2) { border-top: 1px solid rgba(5,47,95,.14); }
      .visit-inner-v3 .btn { width: 100%; }
      .vestibular-actions { align-items: stretch; flex-direction: column; }
      .vestibular-actions .btn { width: 100%; min-width: 0; }
      .process-row-v3 { grid-template-columns: 1fr; gap: .2rem; }
      .process-row-v3 strong { text-align: left; }
    }

    .brand-group--complete { gap: .8rem; }
    .brand-group--complete .brand-divider { height: 2.7rem; }
    .header-faculdade { width: auto; height: 3.15rem; }
    .header-idor { width: auto; height: 3.25rem; }
    .header-rede { width: auto; height: 2.35rem; }
    .hero-slogan { margin: 1rem 0 0; color: #f0c79e; font-size: clamp(1.15rem, 2vw, 1.45rem); font-weight: 760; }
    .breadcrumb { padding: .85rem 0; border-bottom: 1px solid var(--line); background: #fff; }
    .breadcrumb ol { display: flex; flex-wrap: wrap; gap: .4rem .65rem; margin: 0; padding: 0; list-style: none; color: var(--muted); font-size: .82rem; }
    .breadcrumb li + li::before { content: "/"; margin-right: .65rem; color: #9aa7b2; }
    .breadcrumb a { color: var(--blue-800); text-decoration-thickness: 1px; text-underline-offset: 3px; }
    .status-pill { display: inline-flex; align-items: center; gap: .45rem; width: fit-content; padding: .45rem .8rem; color: var(--blue-950); background: var(--sand-soft); border: 1px solid #dcc7b2; border-radius: 999px; font-weight: 760; }
    .status-pill::before { content: ""; width: .48rem; height: .48rem; border-radius: 50%; background: var(--orange); }
    .section-title { font-size: clamp(2rem, 3.35vw, 3rem); line-height: 1.08; }
    .selection-summary { padding: clamp(2rem, 3vw, 2.7rem) 0; }
    .selection-card-v3 { display: grid; grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr); gap: clamp(2.5rem, 6vw, 5rem); max-width: none; align-items: center; text-align: left; }
    .selection-heading { max-width: 32rem; }
    .selection-heading h2 { max-width: 25ch; margin-inline: 0; font-size: clamp(1.65rem, 2.5vw, 2.15rem); line-height: 1.12; }
    .selection-grid-v3--preopen { display: block; margin: 0; padding: 0; border: 0; }
    .selection-grid-v3--preopen > div { display: flex; flex-direction: column; align-items: flex-start; gap: .8rem; max-width: 40rem; }
    .selection-grid-v3--preopen p { max-width: 58ch; margin: 0; color: var(--muted); text-align: left; }
    .topic-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 2rem; }
    .topic-card { padding: 1.35rem; border: 1px solid var(--line); border-radius: .8rem; background: #fff; }
    .topic-card h3 { margin: 0; color: var(--blue-950); font-size: 1.07rem; line-height: 1.3; }
    .topic-card p { margin: .65rem 0 0; color: var(--muted); font-size: .93rem; }
    .regulatory { background: var(--paper); }
    .regulatory-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2.5rem, 7vw, 6rem); align-items: start; }
    .notice { padding: 1.25rem 1.35rem; border-left: 4px solid var(--sand); background: #fff; box-shadow: var(--shadow); }
    .notice p { margin: 0; color: #425568; }
    .subsection-title { margin: 2.2rem 0 .85rem; color: var(--blue-950); font-size: clamp(1.35rem, 2.1vw, 1.75rem); line-height: 1.2; }
    .curriculum-block { margin-top: 2.25rem; }
    .formation-grid { display: block; }
    .formation-grid > * { min-width: 0; }
    .formation-grid > div:first-child { max-width: 56.25rem; margin-inline: auto; text-align: center; }
    .formation-grid .section-title { width: 100%; max-width: 56.25rem; margin-inline: auto; white-space: normal; font-size: clamp(2.125rem, 2.6vw, 2.25rem); }
    .formation-grid .steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 2rem; border-top: 0; }
    .formation-grid .step { display: block; padding: 1.35rem; border: 1px solid var(--line); border-radius: .8rem; background: #fff; }
    .formation-grid .step p { margin-top: .55rem; }
    .curriculum-block > p { max-width: 68rem; color: var(--muted); }
    .tracks-static, .axes-static { display: grid; gap: 1rem; margin-top: 1rem; }
    .tracks-static { grid-template-columns: repeat(3, 1fr); }
    .axes-static { grid-template-columns: repeat(5, 1fr); }
    .track-static, .axis-static { padding: 1.15rem; border: 1px solid var(--line); border-radius: .75rem; background: #fff; }
    .track-static h4, .axis-static h4 { margin: 0; color: var(--blue-950); font-size: 1rem; line-height: 1.25; }
    .track-static p, .axis-static p { margin: .55rem 0 0; color: var(--muted); font-size: .88rem; }
    .internship-callout { margin-top: 1.75rem; padding: 1.4rem; color: #e4edf4; background: var(--blue-950); border-radius: .8rem; }
    .internship-callout h3 { margin: 0; color: #fff; font-size: 1.25rem; }
    .internship-callout p { margin: .55rem 0 0; }
    .map-link { display: inline-flex; margin-top: 1rem; color: #fff; font-weight: 700; text-underline-offset: 4px; }
    .laboratory-note { margin: 1rem 0 0; padding: 1rem; color: #d7e5f0; background: rgba(255,255,255,.08); border-radius: .65rem; }

    /* Composições específicas por conteúdo */
    .intro-grid { display: grid; grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr); grid-template-rows: auto 1fr; gap: 0 clamp(3rem, 7vw, 6rem); max-width: none; margin-inline: 0; align-items: start; }
    .intro-grid .section-kicker { grid-column: 1; grid-row: 1; margin-bottom: .7rem; }
    .intro-grid .section-title { grid-column: 1; grid-row: 2; max-width: 18ch; margin-inline: 0; text-align: left; font-size: clamp(2rem, 3.15vw, 2.85rem); }
    .intro-copy { grid-column: 2; grid-row: 1 / span 2; max-width: 68ch; margin: 2.15rem 0 0; text-align: left; }
    .stats--four { gap: 0; margin-top: 2.75rem; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .stats--four .stat { min-width: 0; min-height: 7.5rem; padding: 1.35rem 1.25rem; border: 0; border-radius: 0; background: transparent; }
    .stats--four .stat + .stat { padding-left: 1.25rem; border-left: 1px solid var(--line); }

    .infra-top { display: grid; grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr); gap: clamp(3rem, 7vw, 6rem); align-items: start; }
    .infra-top > div:first-child { max-width: 34rem; margin-inline: 0; text-align: left; }
    .infra-top > div:first-child .section-title { max-width: 19ch; margin-inline: 0; }
    .infra-top .address { display: block; margin-top: 1.5rem; text-align: left; }
    .infra-top .map-link { display: inline-flex; width: auto; margin: 1rem 0 0; }
    .infra-top > div + div { max-width: none; margin: 2.15rem 0 0; }
    .space-list-intro { text-align: left; }
    .space-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 2rem; }
    .scenario-note { max-width: 68rem; margin-inline: auto; }

    .coord-strip { padding: clamp(2.6rem, 4vw, 3.6rem) 0; }
    .coord-compact { display: grid; grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr); gap: clamp(3rem, 7vw, 6rem); max-width: none; align-items: center; }
    .coord-compact > div:first-child { max-width: 34rem; text-align: left; }
    .coord-profile { max-width: 68ch; margin: 0; }
    .coord-heading { margin: 0; color: var(--blue-700); font-size: .78rem; font-weight: 850; line-height: 1.2; letter-spacing: .13em; text-transform: uppercase; }
    .coord-name-v4 { margin: .55rem 0 0; color: var(--blue-950); font-size: clamp(2.05rem, 3.25vw, 2.75rem); line-height: 1.08; letter-spacing: -.035em; }
    .coord-role { margin: .55rem 0 0; font-size: 1rem; }
    .coord-bio { margin: 0; max-width: 68ch; font-size: 1rem; line-height: 1.65; text-align: left; }
    .visit-strip .selection-status { display: none; }
    .vestibular-copy + .status-pill { margin-top: .85rem; }
    .preopen-list { margin: 1.25rem 0 0; padding-left: 1.2rem; color: var(--muted); }
    .preopen-list li + li { margin-top: .5rem; }
    .processo-links { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; }
    .finance { background: var(--paper); }
    .finance-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2.5rem, 7vw, 6rem); align-items: start; }
    .pending-public-info { padding: 1.4rem; border: 1px solid var(--line); border-radius: .8rem; background: #fff; }
    .pending-public-info p { margin: 0; color: var(--muted); }
    .footer-logos { flex-wrap: wrap; }
    .footer-logos img { width: auto; object-fit: contain; }
    .footer-faculdade { height: 3.15rem; }
    .footer-idor { height: 3.7rem; }
    .footer-rede { height: 2.6rem; }
    main section { scroll-margin-top: 5.5rem; }
    .visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }

    @media (max-width: 1080px) {
      .selection-card-v3, .intro-grid, .infra-top, .coord-compact { grid-template-columns: minmax(16rem, .85fr) minmax(0, 1.15fr); gap: 2.5rem; }
      .stats--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .axes-static { grid-template-columns: repeat(2, 1fr); }
      .topic-grid { grid-template-columns: 1fr; }
      .brand-group--complete { gap: .55rem; }
      .brand-group--complete .brand-divider { height: 2.2rem; }
      .header-faculdade { height: 2.55rem; }
      .header-idor { height: 2.65rem; }
      .header-rede { height: 1.9rem; }
    }
    @media (max-width: 760px) {
      .section { padding: 3rem 0; }
      .breadcrumb { padding: .7rem 0; }
      .breadcrumb ol { gap: .32rem .5rem; font-size: .76rem; line-height: 1.45; }
      .breadcrumb li + li::before { margin-right: .5rem; }
      /* ALTERAÇÃO */
      /*.hero { min-height: 42rem; padding: 3rem 0 16rem; }*/
      .hero { min-height: 42rem; padding: 3rem 0 6rem !important; }

      .hero h1 { max-width: 11ch; font-size: clamp(2.5rem, 11.5vw, 3rem); line-height: .98; }
      .hero-slogan { font-size: 1.08rem; line-height: 1.45; }
      .hero-lead { font-size: 1rem; line-height: 1.55; }
      .section-title { font-size: clamp(1.9rem, 9vw, 2.35rem); }
      .selection-card-v3, .intro-grid, .infra-top, .coord-compact { display: block; }
      .intro-copy { margin-top: 1.2rem; }
      .stats--four, .space-list { grid-template-columns: 1fr; }
      .stats--four { gap: .75rem; margin-top: 2rem; border: 0; }
      .stats--four .stat, .stats--four .stat + .stat { min-height: 0; padding: 1.1rem; border: 1px solid var(--line); border-radius: .7rem; }
      .infra-top > div + div { margin-top: 2rem; }
      .selection-grid-v3--preopen, .regulatory-grid, .finance-grid, .coord-compact, .vestibular-grid { grid-template-columns: 1fr; }
      .selection-heading h2, .formation-grid .section-title { font-size: clamp(1.85rem, 8.5vw, 2.25rem); }
      .formation-grid .steps { grid-template-columns: 1fr; margin-top: 1.5rem; }
      .coord-name-v4 { font-size: clamp(2.05rem, 10vw, 2.65rem); }
      .coord-strip { padding: 2.75rem 0; }
      .coord-profile { margin-top: 1rem; }
      .selection-grid-v3--preopen { margin-top: 1.25rem; }
      .visit-inner-v3 { grid-template-columns: 1fr; gap: 1.25rem; }
      .visit-inner-v3 > div:last-child { justify-self: stretch; }
      .tracks-static, .axes-static { grid-template-columns: 1fr; }
      .brand-group--complete { gap: .35rem; }
      .brand-group--complete .brand-divider { height: 1.65rem; }
      .header-faculdade { height: 1.85rem; }
      .header-idor { height: 1.9rem; }
      .header-rede { height: 1.4rem; }
      .footer-logos { align-items: flex-start; flex-direction: column; }
      .footer-logos .brand-divider { display: none; }
    }