:root{
  --navy:#071e33;
  --navy-2:#0b2946;
  --navy-3:#041726;
  --gold:#c89a4a;
  --gold-light:#e1bb72;
  --gold-deep:#a96f17;
  --cream:#f4eddf;
  --paper:#fbf7ef;
  --white:#fff;
  --ink:#162333;
  --muted:#5f6670;
  --line:#d9cdb8;
  --line-soft:#e9dfcf;
  --shadow:0 12px 30px rgba(7,30,51,.10);
  --radius:12px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:118px}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.62;text-rendering:optimizeLegibility}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
p{margin:0 0 1rem}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.15;margin:0 0 1rem}
h2{font-size:clamp(1.9rem,3vw,2.65rem);color:var(--navy)}
h3{font-size:1.08rem}
button,input,select,textarea{font:inherit}
.container{width:min(var(--max),92%);margin-inline:auto}
.skip-link{position:fixed;left:12px;top:12px;z-index:9999;background:var(--white);color:var(--navy);padding:10px 14px;border-radius:6px;transform:translateY(-180%);box-shadow:var(--shadow)}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}

/* Cabeçalho institucional homologado */
.site-header{position:sticky;top:0;z-index:100;background:var(--navy);border-bottom:2px solid var(--gold);box-shadow:0 4px 16px rgba(0,0,0,.14)}
.header-inner{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:16px;min-width:0}
.brand-crest{width:82px;height:82px;object-fit:contain;flex:0 0 82px}
.brand-name{font-family:Georgia,'Times New Roman',serif;font-weight:700;color:var(--white);font-size:clamp(1.15rem,2vw,1.85rem);letter-spacing:.01em;white-space:nowrap}
.main-nav{display:flex;align-items:center;gap:22px;color:#f5f1e9;text-transform:uppercase;font-weight:700;font-size:.78rem}
.main-nav a{padding:12px 0;position:relative;opacity:.94}
.main-nav a:hover{color:var(--gold-light)}
.main-nav a[aria-current="page"]{color:var(--gold-light)}
.main-nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;background:var(--gold)}
.nav-cta{border:1px solid var(--gold);border-radius:6px;padding:9px 12px!important}
.menu-toggle{display:none;width:46px;height:42px;border:0;background:transparent;cursor:pointer;padding:7px}
.menu-toggle span{display:block;height:3px;background:var(--white);border-radius:2px;margin:5px 0;transition:.2s}

/* Base visual da página */
.section{padding:70px 0;border-bottom:1px solid rgba(217,205,184,.7)}
.section-white{background:var(--white)}
.section-cream{background:var(--cream)}
.section-paper{background:var(--paper)}
.section-navy{background:var(--navy);color:var(--white);border-block:2px solid var(--gold)}
.section-navy h2{color:var(--white)}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:#8a672e;margin-bottom:10px}
.eyebrow-gold{color:var(--gold-light)}
.gold-rule{display:block;width:74px;height:4px;border-radius:4px;background:var(--gold);margin:18px 0 24px}
.section-intro{max-width:820px;color:var(--muted);font-size:1.02rem;margin-bottom:34px}
.section-intro.light{color:#dce4ea}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;padding:12px 18px;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em;transition:transform .18s,box-shadow .18s,background .18s}
.btn:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(7,30,51,.14)}
.btn-gold{background:linear-gradient(180deg,var(--gold-light),var(--gold));color:var(--navy);border:1px solid var(--gold)}
.btn-large{padding:14px 22px}

/* 01 Hero */
.course-hero{padding:48px 0 52px;background:linear-gradient(120deg,#fbf7ef 0%,#f6efe4 58%,#f2e6d4 100%);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,.84fr) minmax(460px,1.16fr);gap:58px;align-items:center}
.breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.75rem;color:var(--muted);margin-bottom:20px}
.breadcrumb a:hover{color:var(--navy)}
.hero-copy h1{font-size:clamp(2.7rem,5vw,4.2rem);color:var(--navy);margin:0}
.hero-statement{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:clamp(1.18rem,1.8vw,1.55rem);line-height:1.38;max-width:640px;color:var(--navy)}
.course-meta{display:flex;gap:18px 24px;flex-wrap:wrap;margin:28px 0 26px;color:var(--navy);font-size:.82rem;font-weight:700}
.course-meta span{display:flex;align-items:center;gap:8px;padding-left:14px;border-left:2px solid var(--gold)}
.course-meta strong{font-family:Georgia,'Times New Roman',serif;font-size:1.15rem}
.hero-visual{margin:0;background:var(--white);border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}
.hero-visual img{width:100%;height:360px;object-fit:cover;object-position:center}
.hero-visual figcaption{padding:12px 16px;font-size:.75rem;color:var(--muted);border-top:1px solid var(--line-soft)}

/* 02 */
.meaning-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:54px;align-items:center}
.foundation-quote{margin:0;border-left:3px solid var(--gold);padding:10px 0 10px 28px;display:flex;gap:16px;color:var(--navy)}
.foundation-quote>span{font-family:Georgia,'Times New Roman',serif;color:var(--gold);font-size:3.4rem;line-height:.8}
.foundation-quote strong{font-family:Georgia,'Times New Roman',serif;font-size:1.35rem;line-height:1.45}
.learning-axis{margin-top:32px;border-top:1px solid var(--line);padding-top:28px;display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;color:var(--navy);font-weight:800;text-transform:uppercase;font-size:.82rem;letter-spacing:.035em}
.learning-axis i{font-style:normal;color:var(--gold);font-size:1.25rem}

/* 03 */
.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.line-card{background:rgba(255,255,255,.72);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:10px;padding:26px 24px;min-height:220px}
.card-symbol{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;color:var(--navy);font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:.8rem;margin-bottom:20px;background:var(--white)}
.line-card h3{color:var(--navy)}
.line-card p{color:var(--muted);font-size:.9rem;margin:0}

/* 04 */
.formation-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.formation-card{border:1px solid var(--line);border-radius:10px;padding:28px 24px;background:var(--white);box-shadow:0 6px 18px rgba(7,30,51,.04)}
.formation-card>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--navy);color:var(--gold-light);font-family:Georgia,'Times New Roman',serif;font-weight:700;margin-bottom:18px}
.formation-card h3{color:var(--navy);text-transform:uppercase;font-family:Arial,Helvetica,sans-serif;font-size:.9rem;letter-spacing:.04em}
.formation-card p{font-size:.9rem;color:var(--muted);margin:0}
.formation-axis{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;margin:36px auto 0;color:var(--navy);font-size:.9rem;letter-spacing:.05em}
.formation-axis i{font-style:normal;color:var(--gold);font-weight:800}
.formation-axis .serve{color:#9b681b}

/* 05 */
.journey-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:15px;align-items:center;margin:42px 0 26px}
.journey-flow div{border:1px solid rgba(225,187,114,.55);border-radius:10px;padding:24px 12px;text-align:center;background:rgba(255,255,255,.045)}
.journey-flow div span{display:block;color:var(--gold-light);font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;margin-bottom:8px}
.journey-flow div strong{font-size:.82rem;text-transform:uppercase;letter-spacing:.035em}
.journey-flow i{font-style:normal;color:var(--gold-light);font-size:1.35rem}
.journey-note{text-align:center;color:#d6e0e7;font-size:.9rem;margin:0}

/* 06 */
.disciplines-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:58px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:12px}
.disciplines-message{font-family:Georgia,'Times New Roman',serif;font-weight:700;color:var(--navy);font-size:1.15rem;line-height:1.45;border-left:2px solid var(--gold);padding-left:26px;margin:0}
.disciplines-grid{list-style:none;padding:0;margin-top:0;display:grid;grid-template-columns:repeat(4,1fr)}
.disciplines-grid li{display:flex;gap:14px;align-items:center;min-height:92px;padding:18px 18px;border-bottom:1px solid var(--line-soft);border-right:1px solid var(--line-soft)}
.disciplines-grid li:nth-child(4n){border-right:0}
.disciplines-grid span{flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--white);font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:.82rem}
.disciplines-grid strong{font-size:.92rem;color:var(--navy)}

/* 07 */
.method-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.65fr);gap:58px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:30px}
.method-highlight{margin:0;border-left:2px solid var(--gold);padding-left:25px;color:var(--muted);font-size:.9rem}
.method-highlight strong{display:inline-block;color:#9a6718;margin-bottom:7px}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.method-grid article{padding:24px;border-right:1px solid var(--line-soft)}
.method-grid article:last-child{border-right:0}
.method-number{font-family:Georgia,'Times New Roman',serif;color:var(--gold-deep);font-weight:700;font-size:1.35rem}
.method-grid h3{color:var(--navy);margin-top:14px}
.method-grid p{font-size:.9rem;color:var(--muted);margin:0}

/* 08 */
.academic-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:28px}
.academic-grid article{background:rgba(255,255,255,.76);border:1px solid var(--line);border-radius:9px;padding:22px 20px;min-height:130px}
.academic-grid article:nth-child(1),.academic-grid article:nth-child(2),.academic-grid article:nth-child(3){grid-column:span 2}
.academic-wide{grid-column:span 3}
.academic-grid span{display:block;text-transform:uppercase;letter-spacing:.055em;color:#91682a;font-size:.72rem;font-weight:800;margin-bottom:10px}
.academic-grid strong{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:1.2rem}
.academic-grid p{color:var(--muted);font-size:.88rem;margin:0}

/* 09 */
.commitment-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:70px;align-items:start}
.commitment-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}
.commitment-list li{position:relative;padding:16px 0 16px 26px;border-bottom:1px solid var(--line-soft);font-size:.9rem;color:var(--muted)}
.commitment-list li::before{content:"✓";position:absolute;left:0;color:#9b6b22;font-weight:800}
.commitment-close{text-align:center;margin-top:34px;font-family:Georgia,'Times New Roman',serif;font-weight:700;color:var(--navy);font-size:1.15rem}

/* 10 */
.after-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.65fr);gap:64px;align-items:center}
.after-lead{font-family:Georgia,'Times New Roman',serif;font-size:1.35rem;font-weight:700;color:var(--navy);line-height:1.45}
.after-card{border:1px solid var(--line);border-top:3px solid var(--gold);background:var(--white);border-radius:10px;padding:30px;box-shadow:0 8px 24px rgba(7,30,51,.05)}
.after-card>span{display:block;text-transform:uppercase;color:#936727;font-size:.72rem;font-weight:800;letter-spacing:.055em;margin-bottom:10px}
.after-card h3{color:var(--navy)}
.after-card p{color:var(--muted);font-size:.9rem;margin:0}
.after-close{margin-top:34px;border-top:1px solid var(--line);padding-top:24px;font-family:Georgia,'Times New Roman',serif;font-weight:700;color:var(--navy);text-align:center}

/* 11 */
.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin-top:30px}
.faq-item{border:1px solid var(--line);border-radius:8px;background:var(--paper);overflow:hidden}
.faq-item h3{margin:0}
.faq-question{width:100%;border:0;background:transparent;color:var(--navy);font-family:Arial,Helvetica,sans-serif;font-size:.88rem;font-weight:800;text-align:left;padding:17px 18px;display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:pointer}
.faq-question span{font-family:Georgia,'Times New Roman',serif;color:var(--gold-deep);font-size:1.35rem;line-height:1;transition:transform .2s}
.faq-question[aria-expanded="true"] span{transform:rotate(45deg)}
.faq-answer{padding:0 18px 17px;color:var(--muted);font-size:.88rem}
.faq-answer p{margin:0}
.faq-answer[hidden]{display:none}

/* 12 */
.final-cta{background:var(--navy);color:var(--white);border-block:2px solid var(--gold);padding:58px 0}
.final-cta h2{color:var(--white);font-size:clamp(1.8rem,3vw,2.5rem)}
.final-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr);gap:56px;align-items:center}
.final-grid>div:first-child>p:last-child{color:#dfe7ec;max-width:760px}
.final-action{display:flex;flex-direction:column;align-items:flex-start;gap:10px}

/* Rodapé institucional homologado */
.footer{background:var(--navy-3);color:#e7edf1;border-top:2px solid var(--gold)}
.footer-grid{padding:46px 0 34px;display:grid;grid-template-columns:1.45fr .7fr .55fr;gap:54px;align-items:start}
.footer-brand{display:flex;align-items:flex-start;gap:22px}
.footer-brand img{width:96px;height:96px;object-fit:contain;flex:0 0 96px}
.footer-brand div{display:grid;gap:7px}
.footer-brand strong{font-family:Georgia,'Times New Roman',serif;font-size:1.18rem;color:var(--white)}
.footer-signature{font-size:.78rem;color:var(--gold-light);font-weight:700;max-width:470px}
.footer-brand p{font-size:.78rem;color:#c2ced6;max-width:520px;margin:2px 0 0}
.footer-column{border-left:1px solid rgba(225,187,114,.35);padding-left:34px;min-height:120px}
.footer-column h2{font-family:Arial,Helvetica,sans-serif;color:var(--gold-light);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.footer-column a,.footer-column p{font-size:.86rem;color:#d4dee5;margin:7px 0}
.footer-column a:hover{color:var(--gold-light)}
.btn-outline-footer{border:1px solid var(--gold);color:var(--gold-light);padding:9px 13px;margin-top:12px;width:max-content}
.site-link{font-family:Georgia,'Times New Roman',serif;font-size:1rem!important}
.copyright{border-top:1px solid rgba(225,187,114,.3);padding:15px 4%;text-align:center;font-size:.72rem;color:#afbdc7}

@media (max-width:1100px){
  .header-inner{flex-wrap:wrap}
  .js .menu-toggle{display:block}
  .main-nav{position:static;display:flex;flex-direction:column;align-items:stretch;width:100%;padding:10px 0 16px;gap:0}
  .js .main-nav{position:absolute;left:0;right:0;top:108px;background:var(--navy);display:none;flex-direction:column;align-items:stretch;padding:18px 4%;gap:0;border-bottom:1px solid var(--gold);box-shadow:0 12px 20px rgba(0,0,0,.14)}
  .main-nav.open{display:flex}
  .main-nav a{padding:11px 0}
  .main-nav a[aria-current="page"]::after{display:none}
  .hero-grid{grid-template-columns:1fr 1fr;gap:42px}
  .audience-grid,.formation-grid,.method-grid{grid-template-columns:repeat(2,1fr)}
  .method-grid article:nth-child(2){border-right:0}
  .method-grid article:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}
  .disciplines-grid{grid-template-columns:repeat(3,1fr)}
  .disciplines-grid li:nth-child(4n){border-right:1px solid var(--line-soft)}
  .disciplines-grid li:nth-child(3n){border-right:0}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-column:last-child{border-left:0;padding-left:0}
}

@media (max-width:820px){
  html{scroll-padding-top:82px}
  .header-inner{min-height:82px}
  .brand{gap:10px;max-width:calc(100% - 58px)}
  .brand-crest{width:58px;height:58px;flex-basis:58px}
  .brand-name{font-size:clamp(.95rem,4.2vw,1.2rem);white-space:normal;line-height:1.08}
  .js .main-nav{top:82px}
  .course-hero{padding:34px 0 44px}
  .hero-grid,.meaning-grid,.disciplines-head,.method-head,.commitment-grid,.after-grid,.final-grid{grid-template-columns:1fr}
  .hero-grid{gap:30px}
  .hero-copy h1{font-size:2.8rem}
  .hero-visual{order:2}.hero-visual img{height:300px}
  .course-meta{display:grid;grid-template-columns:1fr;gap:10px;margin:22px 0 24px}
  .foundation-quote{padding-left:22px}
  .learning-axis{justify-content:flex-start}
  .journey-flow{grid-template-columns:1fr;gap:10px}
  .journey-flow i{transform:rotate(90deg);text-align:center}
  .disciplines-grid{grid-template-columns:repeat(2,1fr)}
  .disciplines-grid li:nth-child(3n){border-right:1px solid var(--line-soft)}
  .disciplines-grid li:nth-child(2n){border-right:0}
  .academic-grid{grid-template-columns:1fr 1fr}
  .academic-grid article:nth-child(1),.academic-grid article:nth-child(2),.academic-grid article:nth-child(3),.academic-wide{grid-column:span 1}
  .academic-grid article:last-child{grid-column:1/-1}
  .commitment-list{grid-template-columns:1fr}
  .faq-list{grid-template-columns:1fr}
  .final-action{align-items:flex-start}
  .footer-grid{grid-template-columns:1fr;gap:28px}.footer-brand{grid-column:auto}.footer-column,.footer-column:last-child{border-left:0;border-top:1px solid rgba(225,187,114,.3);padding:24px 0 0;min-height:0}
}

@media (max-width:560px){
  .container{width:min(92%,680px)}
  .section{padding:52px 0}
  .header-inner{min-height:76px}
  .brand-crest{width:54px;height:54px;flex-basis:54px}
  .brand-name{font-size:.9rem}
  .menu-toggle{width:42px;height:40px;padding:6px;flex:0 0 auto}
  .js .main-nav{top:76px}
  .breadcrumb{font-size:.7rem;margin-bottom:16px}
  .hero-copy h1{font-size:2.35rem}
  .hero-statement{font-size:1.08rem}
  .hero-visual img{height:220px}
  .btn{width:100%;text-align:center}
  .audience-grid,.formation-grid,.method-grid,.disciplines-grid,.academic-grid{grid-template-columns:1fr}
  .line-card{min-height:0}
  .method-grid article,.method-grid article:nth-child(2){border-right:0;border-bottom:1px solid var(--line-soft)}
  .method-grid article:last-child{border-bottom:0}
  .disciplines-grid li,.disciplines-grid li:nth-child(2n),.disciplines-grid li:nth-child(3n),.disciplines-grid li:nth-child(4n){border-right:0}
  .academic-grid article:nth-child(1),.academic-grid article:nth-child(2),.academic-grid article:nth-child(3),.academic-wide,.academic-grid article:last-child{grid-column:auto}
  .formation-axis{font-size:.8rem;gap:10px}
  .learning-axis{display:grid;grid-template-columns:1fr auto;gap:9px 14px;justify-items:start}
  .learning-axis span:last-child{grid-column:1/-1}
  .learning-axis i:nth-of-type(3){display:none}
  .foundation-quote strong{font-size:1.16rem}
  .footer-brand{flex-direction:column;align-items:center;text-align:center}
  .footer-brand img{width:88px;height:88px;flex-basis:auto}
  .footer-signature,.footer-brand p{max-width:340px}
  .footer-column{text-align:left}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn,.menu-toggle span,.faq-question span{transition:none}
}
