/* REVIG v19 — capa e experiência de vídeo. Os demais módulos usam os estilos existentes. */
@font-face{font-family:RevigSerif;src:url('assets/revig-serif-v19.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
.revig-home{--header-height:clamp(76px,6vw,106px);--campaign-green:#002e23;--campaign-gold:#edae26}
.revig-home .header,.revig-home .header.is-scrolled{display:flex;align-items:center;justify-content:space-between;gap:clamp(20px,2.6vw,48px);height:var(--header-height);padding:0 2.8vw;background:#002e23;color:#f8f6f0;border-bottom:1px solid rgba(237,174,38,.38);box-shadow:none;transition:background .3s,box-shadow .3s}
.revig-home .header.is-scrolled{background:rgba(0,38,29,.96);box-shadow:0 10px 32px #00140e1a;backdrop-filter:blur(16px)}
.revig-home .header::after{display:none}
.revig-home .header>.brand{position:static;width:16%;max-width:280px;height:auto;flex:0 0 auto}
.revig-home .header>.brand img,.revig-home .header:not(.is-scrolled)>.brand img{opacity:1;width:100%;height:auto}
.revig-home .desktop-nav{position:static;display:flex;flex:1;width:auto;height:auto;gap:clamp(10px,1.25vw,26px);justify-content:center;align-items:center}
.revig-home .desktop-nav a,.revig-home .header:not(.is-scrolled) .desktop-nav a{color:#f6f5ef;font-size:clamp(12px,1.05vw,18px);font-weight:500;min-height:44px}
.revig-home .desktop-nav a::after{bottom:0;background:var(--campaign-gold);opacity:1!important}
.revig-home .header-actions{position:static;width:auto;height:auto;gap:12px;flex:0 0 auto}
.revig-home .header-cta,.revig-home .header:not(.is-scrolled) .header-cta{height:clamp(44px,3.15vw,57px);min-height:44px;width:auto;padding:0 clamp(16px,1.8vw,34px);background:transparent;color:#f8f6f0;border:1px solid var(--campaign-gold);border-radius:10px;font-size:clamp(12px,1.08vw,18px);font-weight:500}
.revig-home .header-cta:hover,.revig-home .header:not(.is-scrolled) .header-cta:hover{background:#e2ab1812;transform:translateY(-1px)}
.revig-hero{position:relative;isolation:isolate;min-height:540px;height:46.2vw;max-height:910px;margin-top:var(--header-height);background:var(--campaign-green);overflow:hidden;color:#f8f7f2;display:flex;align-items:center}
.revig-hero-art{position:absolute;inset:0;display:block;z-index:-1;overflow:hidden}
.revig-hero-art img{position:absolute;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:right bottom}
.revig-hero-copy{width:47%;padding:0 0 1.8vw 5.1vw;position:relative;z-index:1}
.revig-hero-rule{display:block;width:52px;height:1px;background:var(--campaign-gold);margin-bottom:clamp(22px,2.2vw,40px);transform-origin:left}
.revig-hero-title{font:400 clamp(45px,5.2vw,100px)/1.04 RevigSerif,Georgia,serif;letter-spacing:-.052em;text-wrap:nowrap;margin:0;color:#f8f7f2}
.revig-title-line{display:block;transform-origin:left center}
.revig-title-gold{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-style:italic;font-size:1.1em;letter-spacing:-.035em;color:var(--campaign-gold);margin-top:.08em;padding-right:.14em}
.revig-hero-description{font-size:clamp(16px,1.85vw,33px);line-height:1.5;margin-top:clamp(16px,1.7vw,28px);letter-spacing:-.014em}
.revig-hero-actions{display:flex;align-items:center;gap:clamp(22px,2.7vw,50px);margin-top:clamp(30px,3.4vw,60px);white-space:nowrap}
.revig-hero-actions .revig-hero-schedule{min-height:clamp(52px,4.35vw,76px);padding:0 clamp(20px,2.35vw,42px);font-size:clamp(14px,1.32vw,23px);font-weight:500;background:transparent;color:#f8f7f2;border:1.5px solid var(--campaign-gold);border-radius:12px;letter-spacing:-.015em}
.revig-hero-actions .revig-hero-schedule:hover{background:var(--campaign-gold);color:#002e23;box-shadow:0 8px 34px #dfa6271a}
.revig-hero-about{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:8px 0;border-bottom:1px solid var(--campaign-gold);font-size:clamp(14px,1.32vw,23px);font-weight:500;letter-spacing:-.025em}
.revig-hero-about .icon{width:17px;height:17px;transition:transform .3s}
.revig-hero-about:hover .icon{transform:translate(3px,-3px)}
.revig-home .care-ribbon{background:#002e23;border-color:#c68e0538}
/* Entrada curta, seguida por uma única passagem de luz; sem piscar ou movimento contínuo. */
@media(prefers-reduced-motion:no-preference){
 .revig-hero-rule{animation:revig-rule-in 1.1s var(--ease) both}
 .revig-title-line{animation:revig-title-in 1.05s var(--ease) .12s both}
 .revig-title-gold{animation-delay:.26s}
 .revig-hero-description{animation:revig-title-in 1s var(--ease) .38s both}
 .revig-hero-actions{animation:revig-title-in 1s var(--ease) .5s both}
 @supports(background-clip:text){
  .revig-title-gold>span{display:block;background-image:linear-gradient(110deg,#e5a321 0%,#efb438 34%,#fff0b9 46%,#f6c558 51%,#edae26 62%,#e5a321 100%);background-size:260% 100%;background-position:0 0;background-clip:text;-webkit-background-clip:text;color:transparent;animation:revig-gold-light 2.8s ease-in-out .75s both}
 }
}
@keyframes revig-title-in{from{opacity:0;transform:translateY(18px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes revig-rule-in{from{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}
@keyframes revig-gold-light{from{background-position:100% 0}to{background-position:0 0}}

/* O quadro 4:3 esconde apenas as faixas pretas laterais presentes no MP4 original. */
.revig-home #empresas{position:relative;overflow:hidden;background:radial-gradient(ellipse at 83% 27%,#194b3a70 0,transparent 56%),var(--green)}
.companies-experience{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);gap:clamp(36px,5vw,90px);align-items:center}
.companies-experience .companies-heading{min-width:0}
.companies-experience .eyebrow{font-size:clamp(10px,.8vw,13px);letter-spacing:.17em;margin-bottom:26px}
.companies-experience #companies-title{font:400 clamp(38px,3.55vw,66px)/1.08 RevigSerif,Georgia,serif;letter-spacing:-.036em;text-wrap:balance}
.companies-experience #companies-title em{font:italic 400 1.1em/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em;color:#dfb856}
.companies-intro{font-size:clamp(14px,1.03vw,17px);color:#c0d0c7;line-height:1.85;max-width:400px;margin-top:25px}
.companies-experience .companies-heading .button{margin-top:30px;max-width:100%;min-height:54px;border-radius:10px;font-weight:500;font-size:13px;padding:15px 21px;white-space:normal;text-align:left}
.companies-experience .companies-heading .button .icon{width:17px;height:17px}
.company-film{margin:0;min-width:0;border:1px solid #dcb25166;border-radius:24px;background:#0a2821;box-shadow:0 28px 68px -30px #000a,0 0 60px -36px #c3983c55;overflow:hidden;isolation:isolate}
.company-film-screen{position:relative;aspect-ratio:4/3;overflow:hidden;background:#102e25}
.company-film-video{position:absolute;inset:0 auto 0 -16.666667%;width:133.333334%;max-width:none;height:100%;object-fit:cover;display:block}
.company-film-screen::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 32px #071b1420;background:linear-gradient(180deg,#032b2840,transparent 27%,transparent 85%,#082c2455)}
.company-film-tag{position:absolute;top:22px;left:22px;z-index:1;display:inline-flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.17em;font-weight:500;color:#fbf7eb;background:#06261cc9;border:1px solid #d9be7944;border-radius:100px;padding:10px 12px;backdrop-filter:blur(10px);pointer-events:none}
.company-film-tag>span{width:4px;height:4px;background:#e5bc62;border-radius:50%}
.company-film-start{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);width:72px;height:72px;display:grid;place-items:center;background:#072e24bf;backdrop-filter:blur(12px);color:#faefd3;border:1px solid #e3bc70ad;border-radius:50%;transition:background .25s,scale .25s}
.company-film-start:hover{background:#175442ed;scale:1.04}
.company-film-start svg{width:26px;height:26px;fill:currentColor;margin-left:3px}
.company-film-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 25px;background:linear-gradient(120deg,#143b30,#0b2c24);border-top:1px solid #e0b55d33}
.company-film figcaption{min-width:0}
.company-film figcaption>span{display:block;color:#d3af60;font-size:8px;letter-spacing:.19em;line-height:1.5}
.company-film figcaption>strong{display:block;color:#f6f2e9;font:400 clamp(22px,1.9vw,32px)/1.2 RevigSerif,Georgia,serif;letter-spacing:-.02em;margin-top:7px}
.company-film-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}
.film-control{width:44px;height:44px;display:grid;place-items:center;color:#f1e5c6;border:1px solid #e0bb703d;background:#0b2c2470;border-radius:50%;transition:background .2s,border-color .2s}
.film-control:hover{background:#e0b04b20;border-color:#e0bb7080}
.film-control svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}
.film-control .film-play-icon{fill:currentColor;stroke:none;width:16px}
.film-pause-icon,.film-sound-on,.company-film.is-playing .film-play-icon,.company-film.has-sound .film-sound-off{display:none}
.company-film.is-playing .film-pause-icon,.company-film.has-sound .film-sound-on{display:block}
.company-film-message{margin:0;padding:14px 24px 4px;font-size:.8rem;color:#f4e8cc;line-height:1.6}
.company-film-fallback{display:block;padding:8px 25px 18px;font-size:12px;color:#e9ce8b;text-decoration:underline;text-underline-offset:4px}
.company-film.is-enhanced:not(.has-error) .company-film-fallback{display:none}
.company-film:not(.is-enhanced) .company-film-video{position:static;width:100%;height:100%;object-fit:contain}
.company-film:not(.is-enhanced) .company-film-screen{aspect-ratio:16/9}
.company-film:fullscreen{width:100vw;height:100dvh;max-width:none;border:0;border-radius:0;display:flex;flex-direction:column;background:#001a13}
.company-film:fullscreen .company-film-screen{flex:1;min-height:0;aspect-ratio:auto}
.company-film:fullscreen .company-film-video{inset:0;width:100%;height:100%;object-fit:contain}
.company-film:fullscreen .company-film-footer{padding:18px clamp(20px,4vw,72px)}
.company-film::backdrop{background:#001a13}
.revig-home #empresas .company-grid{gap:clamp(22px,3vw,50px);margin-top:clamp(48px,5vw,80px)}
.revig-home #empresas .company-grid>div{border-top:1px solid #c9a15255;padding-top:22px}
.revig-home #empresas .company-grid h3{font-size:clamp(18px,1.45vw,25px);margin-top:17px;line-height:1.35;font-weight:500;letter-spacing:-.025em}
.revig-home #empresas .company-grid p{font-size:13px;line-height:1.85;color:#b9cbc0}

@media(max-width:1150px){
 .revig-home{--header-height:80px}
 .revig-home .header,.revig-home .header.is-scrolled{padding-inline:4vw;gap:16px}
 .revig-home .header>.brand{width:180px}
 .revig-home .desktop-nav{display:none}
 .revig-home .header-cta,.revig-home .header:not(.is-scrolled) .header-cta{font-size:14px;padding-inline:20px}
 .revig-home .menu-toggle{display:flex;border-color:#dcb25180}
 .revig-hero{height:56vw;min-height:510px;max-height:none}
 .revig-hero-art img{width:112%;max-width:none;left:-12%;height:100%}
 .revig-hero-copy{width:49%;padding-left:4vw;padding-bottom:1vw}
 .revig-hero-title{font-size:5.3vw}
 .revig-hero-description{font-size:1.75vw;max-width:92%}
 .revig-hero-actions{gap:20px;flex-wrap:wrap;margin-top:28px}
 .revig-hero-actions .revig-hero-schedule{font-size:14px;padding:0 20px;min-height:52px}
 .revig-hero-about{font-size:14px;gap:7px}
 .companies-experience{gap:32px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
 .companies-experience #companies-title{font-size:clamp(36px,4.1vw,48px)}
 .companies-experience .eyebrow{font-size:9px;letter-spacing:.14em}
 .company-film-footer{padding:18px;gap:12px}
 .company-film figcaption>strong{font-size:24px}
 .company-film-controls{gap:4px}
 .film-control{width:40px;height:40px}
}
@media(min-width:700px) and (max-width:899px){
 .revig-hero{height:64vw;min-height:480px}
 .revig-hero-art img{width:124%;left:-24%;object-position:62% bottom}
 .revig-hero-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#002e2355,transparent 52%)}
 .revig-hero-title{font-size:5.6vw}
 .revig-hero-description{font-size:16px;max-width:280px}
 .revig-hero-actions{flex-direction:column;align-items:flex-start;gap:15px}
 .companies-experience{grid-template-columns:1fr;gap:32px}
 .companies-experience .companies-heading{display:grid;grid-template-columns:1fr .72fr;column-gap:36px;align-items:start}
 .companies-experience .eyebrow,.companies-experience #companies-title{grid-column:1;grid-row:auto}
 .companies-experience #companies-title{font-size:44px}
 .companies-experience .companies-intro{grid-column:2;grid-row:2;margin:0}
 .companies-experience .companies-heading .button{grid-column:2;grid-row:3;margin-top:20px;justify-self:start}
 .company-film{max-width:700px;width:100%;justify-self:center}
}
@media(max-width:699px){
 .revig-home{--header-height:72px}
 .revig-home .header,.revig-home .header.is-scrolled{padding:0 max(18px,env(safe-area-inset-left));gap:12px}
 .revig-home .header>.brand{width:clamp(112px,34vw,158px)}
 .revig-home .header-actions{gap:8px}
 .revig-home .header-cta,.revig-home .header:not(.is-scrolled) .header-cta{font-size:12px;padding-inline:14px;border-radius:8px;min-height:42px;height:42px}
 .revig-home .menu-toggle{width:42px;height:42px}
 .revig-hero{height:auto;min-height:0;display:flex;flex-direction:column;align-items:stretch;padding:0}
 .revig-hero-copy{order:0;width:100%;padding:42px 6vw 24px;background:transparent}
 .revig-hero-rule{width:36px;margin-bottom:20px}
 .revig-hero-title{font-size:clamp(36px,9.75vw,65px);line-height:1.05;letter-spacing:-.045em}
 .revig-title-gold{font-size:1.12em;margin-top:6px;letter-spacing:-.03em}
 .revig-hero-description{font-size:clamp(14px,3.8vw,19px);max-width:none;margin-top:16px;letter-spacing:-.025em}
 .revig-hero-actions{gap:18px;flex-wrap:nowrap;justify-content:flex-start;margin-top:25px}
 .revig-hero-actions .revig-hero-schedule{font-size:clamp(12px,3.25vw,16px);min-height:48px;padding:0 16px;border-radius:9px;white-space:nowrap}
 .revig-hero-about{font-size:clamp(12px,3.2vw,16px);gap:5px;min-height:44px;white-space:nowrap}
 .revig-hero-about .icon{width:13px;height:13px}
 .revig-hero-art{position:relative;order:1;inset:auto;z-index:0;width:100%;aspect-ratio:1000/775;margin:0}
 .revig-hero-art img{position:static;inset:auto;width:100%;height:100%;object-fit:cover;object-position:center bottom;max-width:100%}
 .revig-hero-art::before{content:'';position:absolute;z-index:1;inset:0 0 auto;height:16%;background:linear-gradient(180deg,var(--campaign-green),transparent);pointer-events:none}
 .companies-experience{display:flex;flex-direction:column;gap:34px;align-items:stretch}
 .companies-experience .eyebrow{font-size:10px;margin-bottom:20px}
 .companies-experience #companies-title{font-size:clamp(37px,10vw,53px);max-width:480px;line-height:1.08;text-wrap:pretty}
 .companies-intro{font-size:14px;margin-top:22px;max-width:none;line-height:1.8}
 .companies-experience .companies-heading .button{margin-top:24px;min-height:51px;font-size:13px;padding:14px 19px}
 .company-film{border-radius:18px}
 .company-film-tag{top:15px;left:15px;font-size:8px;padding:8px 10px}
 .company-film-start{width:60px;height:60px}
 .company-film-footer{padding:17px 15px;gap:8px}
 .company-film figcaption>span{font-size:7px;letter-spacing:.12em}
 .company-film figcaption>strong{font-size:clamp(19px,5.2vw,28px);margin-top:6px}
 .company-film-controls{gap:4px}
 .film-control{width:40px;height:44px;border:0;background:transparent}
 .revig-home #empresas .company-grid{margin-top:40px;gap:25px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .revig-home #empresas .company-grid h3{font-size:18px;overflow-wrap:normal}
 .revig-home #empresas .company-grid p{font-size:12px}
}
@media(max-width:359px){
 .revig-home .header,.revig-home .header.is-scrolled{padding-inline:12px}
 .revig-home .header>.brand{width:108px}
 .revig-home .header-actions{gap:6px}
 .revig-home .header-cta,.revig-home .header:not(.is-scrolled) .header-cta{padding-inline:11px}
 .revig-hero-copy{padding-top:34px}
 .revig-hero-title{font-size:9.7vw}
 .revig-hero-actions{gap:12px}
 .revig-hero-actions .revig-hero-schedule{font-size:11px;padding-inline:12px}
 .revig-hero-about{font-size:11px;gap:3px}
 .revig-hero-about .icon{display:none}
 .company-film-footer{flex-wrap:wrap;row-gap:12px}
 .company-film-controls{margin-left:auto}
 .revig-home #empresas .company-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
 .revig-hero *, .company-film *{animation:none!important;transition:none!important;filter:none!important}
 .revig-title-gold,.revig-title-gold>span{background:none;color:var(--campaign-gold)}
}
@media print{.revig-hero{margin:0;height:auto;min-height:360px}.revig-hero-copy{padding-block:50px}.company-film-controls,.company-film-start{display:none!important}}
