/* ======================================================================
   RVH ACADEMY • 2026 EDITION
   Camada de design independente — não altera o conteúdo nem a lógica PHP.
   ====================================================================== */
:root{
  --night:#07111e;--navy:#0b1b30;--navy2:#152a43;
  --gold:#d0b486;--gold2:#f3dbb0;--ink:#14243a;--muted:#64738a;
  --cream:#f5f6f8;--line:#e5eaf1;--paper:#fff;
  --radius:18px;--wide:1280px;
}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.65;background:#f6f7fa}
.container{width:min(var(--wide),calc(100% - 96px))}
::selection{background:#cfb184;color:#07111e}
.reading-progress{height:2px;position:fixed;z-index:105;top:0;left:0;right:0;background:transparent;pointer-events:none}
.reading-progress span{display:block;background:linear-gradient(90deg,#9a7744,#f4d9a9);height:100%;width:0;transition:width .1s linear}
.site-header{height:86px;background:rgba(8,19,33,.84);border-bottom:1px solid rgba(230,212,183,.15);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5)}
.site-header.is-scrolled{height:72px;box-shadow:0 16px 36px #06122538;background:rgba(8,19,33,.95)}
.brand{gap:15px}.brand>img{width:50px;height:50px;border:1px solid #d8bf8c7a;box-shadow:0 0 0 4px #ffffff0d}
.brand-copy strong{font:600 23px/1.15 Georgia,serif;letter-spacing:1.8px}.brand-copy small{font-size:8px;color:#a9b7cb;letter-spacing:1.55px}
.primary-nav{gap:24px;font-size:12px}.primary-nav>a:not(.btn){color:#d3dbe6;font-weight:600}.primary-nav>a:not(.btn):hover{color:#f3d6a5}
.btn{min-height:53px;padding:15px 23px;border-radius:999px;gap:16px;font-size:12px;letter-spacing:.1px;box-shadow:none;transition:transform .2s,box-shadow .2s,background .2s,color .2s}
.btn-gold{background:linear-gradient(125deg,#d7bd91,#b89968);border-color:#d4b88d;color:#102036;box-shadow:0 8px 24px rgba(182,145,94,.18)}
.btn-gold:hover{background:linear-gradient(125deg,#f2d7a8,#d5b680);border-color:#e5cca1;box-shadow:0 12px 32px rgba(191,145,83,.28)}
.btn-small{min-height:43px;padding:11px 18px;font-size:12px}.btn-outline{background:rgba(255,255,255,.045);border-color:rgba(240,228,207,.38)}
.btn-outline:hover{background:rgba(255,255,255,.1);border-color:#d9ba87}.btn-navy{background:#0c2037;color:#fff;box-shadow:0 9px 20px #12284118}.btn-navy:hover{background:#213954}
.btn-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#06162919;font-size:15px;font-weight:700;flex-shrink:0}
.section{padding:112px 0}.section-light{background:#fff}.section-cream{background:linear-gradient(160deg,#f5f7fa,#eef1f6)}.section-dark{background:#081827}
.section h2,.article-page h1{font-family:Georgia,'Iowan Old Style',serif;font-size:clamp(39px,4.4vw,63px);letter-spacing:-2px;line-height:1.11;font-weight:500}
.section p:not(.section-kicker):not(.eyebrow){font-size:15px;line-height:1.8}
.section p.lead{font-size:17px;line-height:1.75}
.section-kicker,.eyebrow{font-size:11px;letter-spacing:2px}.section-kicker{color:#a48352}.section-kicker span{color:#a2adbc}
.section-intro{margin-bottom:48px}.tiny-rule{height:4px;width:56px;border-radius:10px}

/* Hero — foco no brasão e na proposta acadêmica */
.hero{min-height:0;isolation:isolate;background:radial-gradient(ellipse at 85% 30%,#234361a6 0,transparent 36%),radial-gradient(ellipse at 4% 1%,#172e48 0,transparent 48%),linear-gradient(135deg,#0b1b2b 0%,#06111e 66%,#101f32 100%)}
.hero:before{opacity:.28;background-image:linear-gradient(#b4c7df0a 1px,transparent 1px),linear-gradient(90deg,#b4c7df0a 1px,transparent 1px);background-size:68px 68px;mask-image:radial-gradient(ellipse at 80% 50%,#000 0,transparent 70%)}
.hero:after{position:absolute;z-index:0;content:'';inset:auto -20% -70% 30%;height:900px;border-radius:50%;border:1px solid #c7ad7e1c;pointer-events:none;transform:rotate(-20deg)}
.hero-grain{right:-21%;top:-85%;width:104%;height:220%;border-color:#b7a07720}
.hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);min-height:710px;gap:45px;padding-top:66px;padding-bottom:48px}
.hero-copy{padding:20px 0;max-width:720px}
.hero-badge{display:inline-flex;align-items:center;gap:11px;border:1px solid #ead0a237;border-radius:100px;background:#c6ad8120;padding:10px 16px!important;margin-bottom:28px;color:#ebcd9b;font-size:10px!important;letter-spacing:1.9px}
.hero-live-point{display:block;background:#d5b17e;width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 5px #d5b17e1c}
.hero h1{font-family:Georgia,'Iowan Old Style',serif;font-size:clamp(64px,6.1vw,100px);line-height:.98;letter-spacing:-5px;font-weight:400;margin:0 0 20px}
.hero-title-dot{color:#ebcda1}.hero-subtitle{font-size:13px!important;font-weight:600;letter-spacing:1.45px;color:#c4cfdd;max-width:650px}
.gold-rule{margin:30px 0 24px;height:1px;background:linear-gradient(90deg,#debc85,transparent);width:150px}
.hero h2.hero-statement{font-size:clamp(25px,2.15vw,32px);letter-spacing:-.75px;line-height:1.35;max-width:680px;margin-bottom:20px}
.hero-description{color:#d0dae8!important;font-size:15px!important;max-width:585px;line-height:1.85!important}
.hero-detail{color:#9dafc5!important;font-size:13px!important;max-width:550px}
.hero-actions{gap:13px;margin-top:27px}.hero-actions .btn{padding-inline:22px;min-height:58px}.hero-actions .btn:first-child{max-width:none}.hero-actions .btn:last-child{max-width:315px}
.hero-trust{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:31px;color:#b8c5d5;font-size:11px;font-weight:650;letter-spacing:.25px}
.hero-trust span{display:flex;align-items:center;gap:7px}.hero-trust i{color:#dbbc86;font-style:normal;font-size:15px}
.hero-art{align-self:center;margin-inline:auto;width:100%;max-width:570px;transform:translateX(9px)}
.hero-art:before{content:'';position:absolute;inset:7%;border-radius:50%;background:radial-gradient(circle,#8da1bd2b,transparent 72%);filter:blur(34px)}
.hero-emblem,.hero-custom-image{width:86%;height:86%;position:relative;z-index:1;border-radius:50%;border:1px solid #dcc9aa52;box-shadow:0 22px 80px #0009,0 0 0 17px #ffffff04,0 0 0 18px #ddc09212;filter:contrast(1.08)}
.art-orbit-outer{width:108%;height:108%;border:1px dashed rgba(212,183,138,.18)}.art-orbit-inner{width:96%;height:96%;border:1px solid rgba(212,183,138,.12)}
.hero-float-label{position:absolute;z-index:3;bottom:12%;left:-9%;display:flex;align-items:center;gap:13px;padding:16px 20px;border:1px solid #e5d6b53d;border-radius:16px;background:rgba(18,37,56,.83);backdrop-filter:blur(18px);box-shadow:0 17px 40px #0005}
.hero-float-label b{display:block;font-size:11px;letter-spacing:1.7px;color:#eed3a6}.hero-float-label small{display:block;font-size:11px;color:#d2deea;margin-top:4px}
.float-label-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#f0d1a619;color:#f3d4a0;font-size:24px}
.art-caption{bottom:-8%;color:#c4b69e;font-size:9px}
.hero-footer{border-color:#f0dbba1b;padding:22px 0 24px}.hero-footer>span{color:#bac6d5;letter-spacing:.3px;font-size:11px}.hero-footer a{color:#ebd0a2}

/* Bento cards e superfícies */
.about-grid{gap:85px}.about-aside{border:none;border-radius:24px;min-height:570px;padding:40px 42px 0;box-shadow:0 25px 70px #1227442b;background:radial-gradient(circle at 100% 2%,#325778 0,transparent 43%),linear-gradient(145deg,#142e4a,#091725)}
.about-aside:before{content:'';position:absolute;inset:14px;border:1px solid #ffffff1c;border-radius:17px;pointer-events:none}
.aside-index{color:#e1c79f}.about-grid p:not(.lead){color:#66768a}.aside-body blockquote{color:#f1d5a5}
.course-showcase{gap:48px;grid-template-columns:420px 1fr}
.course-card{border-radius:24px;overflow:hidden;border-color:#d3b88e80;box-shadow:0 29px 60px #08192f35;background:radial-gradient(circle at 52% 30%,#284a6f 0,#0b1e33 60%)}
.course-card:before{border-radius:15px;inset:12px}.course-card-symbol{box-shadow:0 0 0 10px #f0d6a90a;color:#f7e2b7}
.course-details{border:1px solid #dfe5ed;background:#ffffffd9;border-radius:24px;padding:34px 37px;box-shadow:0 16px 48px #243c5412}
.pillars span{border-radius:12px;background:#f3f5f9;transition:background .2s}.pillars span:hover{background:#e9edf3}
.course-bottom{border-top:1px solid #d9e0e9;margin-top:57px;padding-top:33px}
.learning-grid{gap:12px}.learning-item,.learning-item:nth-child(4n),.learning-item:nth-child(n+5){border:1px solid #2c476180;border-radius:16px;background:linear-gradient(135deg,#15324a,#0b1d30);transition:transform .2s,border-color .2s,background .2s}
.learning-item:hover{transform:translateY(-4px);border-color:#b89d77aa;background:#1a3650}.learning-item p{color:#f0f4fb}
.format-highlights article{border-color:#3a4e61}
.competence-grid{gap:13px}.competence-card{border:1px solid #e4eaf2;border-radius:19px;min-height:267px;padding:27px;box-shadow:0 5px 22px #1a2b4210;transition:transform .22s,box-shadow .22s,border-color .22s}
.competence-card:hover{transform:translateY(-5px);background:#fff;border-color:#ceb58b;box-shadow:0 19px 44px #1a2b4218}.competence-top i{font-size:18px;color:#aa895c}
.section-method{background:radial-gradient(circle at 100% 0,#17324e,#09192d 53%,#081522)}
.method-step{border:1px solid #34526a80!important;border-radius:17px;margin:0 6px 12px 0;padding:31px 30px;background:#ffffff07;min-height:175px;transition:transform .2s,border-color .2s}
.method-step:hover{transform:translateY(-3px);border-color:#cfb07d!important}.method-step p{color:#b7c6d6!important}.method-foundations{gap:13px}.method-foundations article{background:#ffffff08;border:1px solid #35516c66;border-radius:18px;padding:26px}
.director-art{border-radius:24px;border-color:#ab967b9c;box-shadow:0 27px 60px #0a1e312e}.director-art img{border-radius:24px}.director-art-label{background:#0b1d30a6;backdrop-filter:blur(7px);border-radius:10px;padding:15px 17px;border-top:0}
.direction-copy blockquote{border-left:3px solid #d3b481;padding-left:20px}
.cohort-grid{gap:15px}.cohort-card{border-radius:20px;border:1px solid #304761;background:linear-gradient(145deg,#132d4a,#0b192c);box-shadow:0 15px 32px #12233c1d}
.cohort-card:nth-child(2){background:linear-gradient(145deg,#253b55,#111e33)}.cohort-note{padding:24px}.cohort-tag{border-radius:80px}
.section-application{background:radial-gradient(ellipse at 10% 10%,#263f60,#0c1d32 59%,#091624)}
.application-step>span{border-radius:12px}.form-panel{border-top:0;border-radius:24px;padding:45px;box-shadow:0 30px 90px #010d1c66;position:relative}
.form-panel:before{content:'';position:absolute;left:34px;right:34px;top:0;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,transparent,#c7a578,transparent)}
.interest-form input:not([type=checkbox]),.interest-form select,.interest-form textarea{border-radius:11px;background:#f9fafc;border:1px solid #e0e6ef;min-height:46px;transition:border-color .2s,box-shadow .2s}
.interest-form textarea{min-height:128px}.interest-form input:focus,.interest-form textarea:focus,.interest-form select:focus{box-shadow:0 0 0 3px #dfc9a935;border-color:#c3a578}
.faq-list{display:grid;gap:11px}.faq-item{border:1px solid #dde3eb;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 6px 23px #1028420b;transition:border-color .2s}
.faq-item[open]{border-color:#ddbd8d;background:#fff}.faq-item summary{padding:21px 24px;gap:14px}.faq-answer{padding:0 26px 22px 74px}.faq-item summary:hover{background:#faf9f7}
.final-cta{background:radial-gradient(ellipse at 50% -20%,#2b4b6e,#101f32 56%,#07111e)}.final-ornament{color:#e7cd9f}.final-actions{gap:13px}
/* Rodapé com identidade jurídica explícita */
.site-footer{background:#07111e;border-top:1px solid #d7bf961d;padding-top:83px}
.footer-grid{grid-template-columns:1.6fr 1fr 1.25fr 1.35fr;gap:48px}.footer-brand img{border-color:#c5aa7f88;box-shadow:0 0 0 5px #ffffff09}
.site-footer h3{color:#d5ba8a;font-weight:750}.footer-brand strong{letter-spacing:1px}
.footer-cnpj{display:block;max-width:max-content;border:1px solid #bda07549;border-radius:11px;padding:11px 13px;color:#b8c6d8;font-size:11px;line-height:1.8;margin-bottom:15px}
.footer-cnpj strong{display:block;color:#f0d1a3;font-size:14px;font-weight:800;letter-spacing:.45px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.footer-bottom{margin-top:65px;padding:25px 0;color:#8b9cb0}.footer-signature i{font-style:normal;color:#d1b17c;margin:0 10px}.back-top{border-radius:50%;background:#d3b78b;box-shadow:0 12px 32px #0005}
/* Páginas internas: compatíveis com todas as páginas PHP */
.page-hero{background:radial-gradient(circle at 85% 0,#294864,#0a1b2e 61%,#07111d);padding:108px 0 93px}
.page-hero h1{font-size:clamp(48px,5.9vw,76px);letter-spacing:-2px}.page-content{background:#f8f9fb}
.page-card{background:#fff;border:1px solid #e4e9f0;border-radius:18px;box-shadow:0 10px 30px #1c2e470f}
.page-callout{border-radius:17px;background:linear-gradient(120deg,#122a44,#081c31)}
@media(max-width:1150px){.container{width:min(var(--wide),calc(100% - 60px))}.primary-nav{gap:16px}.hero-grid{gap:20px}.hero-art{transform:translateX(0)}.hero h1{font-size:clamp(64px,6vw,82px)}.hero-float-label{left:-3%;bottom:10%}.about-grid{gap:55px}.course-showcase{grid-template-columns:390px 1fr;gap:35px}}
@media(max-width:900px){.site-header{height:75px}.site-header.is-scrolled{height:68px}.nav-toggle{border-radius:12px;border-color:#dabf944f}.primary-nav{gap:11px;background:#0b1d30;padding:24px;border:1px solid #b7a0793b;border-radius:0 0 18px 18px;box-shadow:0 28px 60px #0008}.primary-nav a:not(.btn){padding:7px 5px;font-size:15px}.hero-grid{grid-template-columns:1fr 1fr;min-height:640px;gap:12px}.hero h1{font-size:clamp(53px,7vw,76px)}.hero-badge{font-size:8px!important;padding:8px 12px!important}.hero h2.hero-statement{font-size:24px}.hero-art{width:107%}.hero-float-label{left:-10%;padding:12px 13px}.hero-float-label b{font-size:9px}.hero-float-label small{font-size:9px}.hero-trust{gap:10px}.hero-trust span{font-size:10px}.hero-actions .btn:last-child{max-width:none}.course-showcase{grid-template-columns:310px 1fr}.course-details{padding:25px}.learning-grid{gap:8px}.method-step{margin:0 0 10px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:35px 40px}}
@media(max-width:650px){
 .container{width:calc(100% - 38px)}.section{padding:77px 0}.section h2{font-size:clamp(37px,10vw,49px);letter-spacing:-1.6px}
 .site-header{height:70px}.brand{gap:11px}.brand>img{width:43px;height:43px}.brand-copy strong{font-size:18px}.brand-copy small{font-size:7px;letter-spacing:1.1px}
 .hero-grid{grid-template-columns:1fr;gap:0;min-height:0;padding-top:48px;padding-bottom:58px}.hero-copy{padding:0}.hero-badge{max-width:100%;font-size:8px!important;letter-spacing:1.25px;line-height:1.5;padding:10px 12px!important;margin-bottom:27px}
 .hero h1{font-size:clamp(59px,13vw,84px);letter-spacing:-3.7px}.hero-subtitle{font-size:11px!important;letter-spacing:1px;line-height:1.7!important}.gold-rule{margin:23px 0}
 .hero h2.hero-statement{font-size:clamp(25px,6.3vw,32px);line-height:1.4!important}.hero-description{font-size:14px!important}.hero-detail{font-size:12px!important}.hero-actions{gap:11px}
 .hero-actions .btn{max-width:none!important;width:100%;min-height:54px;justify-content:space-between;padding:14px 20px}
 .hero-trust{gap:12px 20px;margin-top:23px}.hero-trust span{font-size:10px}.hero-art{width:min(96%,410px);margin:52px auto 14px;transform:none}.hero-emblem,.hero-custom-image{width:88%;height:88%}
 .hero-float-label{bottom:-4%;left:-2%;padding:11px 14px;border-radius:12px}.hero-float-label .float-label-icon{width:31px;height:31px;font-size:19px}.hero-float-label b{font-size:9px}.hero-float-label small{font-size:9px}
 .art-caption{bottom:-14%;font-size:7px;letter-spacing:1.3px}.hero-footer{padding-top:27px}.hero-footer>span{max-width:80%;font-size:9px}.hero-footer a{font-size:9px}
 .about-grid{gap:37px}.about-aside{min-height:0;padding:28px;border-radius:20px;box-shadow:0 16px 40px #12243c20}.aside-body{padding:20px 0}
 .course-showcase{grid-template-columns:1fr;gap:23px}.course-card{border-radius:20px;max-width:450px;min-height:445px}.course-details{padding:26px;border-radius:20px}
 .course-bottom{margin-top:31px}.learning-grid{gap:9px}.learning-item,.learning-item:nth-child(4n),.learning-item:nth-child(n+5){min-height:148px;padding:17px;border:1px solid #2c476180}.learning-item p{font-size:11px!important}
 .competence-grid{grid-template-columns:1fr 1fr;gap:10px}.competence-card{padding:19px;border-radius:16px;min-height:240px}.competence-card h3{font-size:15px}.competence-card p{font-size:12px!important;line-height:1.65!important}
 .method-layout{grid-template-columns:1fr}.method-steps{grid-template-columns:1fr}.method-step,.method-step:nth-child(n+5){min-height:0;padding:23px 19px;border:1px solid #34526a80!important;border-radius:15px;margin:0 0 10px}
 .method-foundations{gap:12px}.method-foundations article{padding:22px}.director-art{border-radius:19px;min-height:430px}.director-art img{border-radius:19px}.cohort-grid{grid-template-columns:1fr 1fr;gap:10px}.cohort-card{min-height:285px;border-radius:17px;padding:16px}.cohort-note{grid-column:1/-1;padding:12px 0}
 .form-panel{padding:30px 21px;border-radius:18px}.form-panel h3{font-size:31px}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-item summary{padding:19px 15px;gap:9px}.faq-answer{padding:0 18px 17px 49px}
 .final-actions{flex-direction:column}.final-actions .btn{width:100%}.site-footer{padding-top:62px}.footer-grid{grid-template-columns:1fr 1fr;gap:36px 20px}.footer-about{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:10px;margin-top:39px}.page-hero{padding:70px 0}.page-content{padding:58px 0 70px}
}
@media(max-width:380px){.container{width:calc(100% - 30px)}.hero h1{font-size:57px}.hero-badge{letter-spacing:.8px}.hero-art{width:96%}.hero-float-label{left:-1%;bottom:-6%}.competence-grid{grid-template-columns:1fr}.competence-card{min-height:0}.cohort-grid{grid-template-columns:1fr}.cohort-card{min-height:250px}.footer-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.reading-progress span{transition:none}.learning-item,.competence-card,.method-step{transition:none}}
