/* ================================================================
   TOP PRODUÇÕES — V8.0 FINAL PREMIUM POLISH
   Final visual system: spacing, typography, card rhythm, alignment.
   Loaded last and intentionally conservative with legacy components.
   ================================================================ */
:root{
  --v80-red:#ef2428;
  --v80-red-2:#ff3a35;
  --v80-black:#070708;
  --v80-panel:#101114;
  --v80-paper:#f4f3ef;
  --v80-paper-2:#ffffff;
  --v80-text:#f5f5f2;
  --v80-ink:#0c0d0f;
  --v80-muted-dark:#5b6068;
  --v80-muted-light:#aeb2ba;
  --v80-line-dark:rgba(255,255,255,.10);
  --v80-line-light:#d9d9d3;
  --v80-radius:18px;
  --v80-radius-sm:14px;
  --v80-shadow:0 20px 55px rgba(0,0,0,.18);
  --v80-shadow-soft:0 14px 34px rgba(0,0,0,.08);
  --v80-wrap:1460px;
  --v80-edge:clamp(18px,3vw,52px);
  --v80-s1:8px;
  --v80-s2:12px;
  --v80-s3:18px;
  --v80-s4:24px;
  --v80-s5:32px;
  --v80-s6:44px;
  --v80-s7:64px;
  --v80-s8:88px;
  --v80-title-max:92px;
}

/* Base rhythm */
body.site-v80{font-size:16px;line-height:1.58;letter-spacing:-.008em;background:var(--v80-black)}
body.site-v80 .wrap{width:min(calc(100% - (var(--v80-edge)*2)),var(--v80-wrap))!important;margin-inline:auto}
body.site-v80 .section{padding-block:clamp(68px,6.2vw,104px)!important}
body.site-v80 .section + .section{border-top:1px solid rgba(127,127,127,.08)}
body.site-v80 p{line-height:1.62}
body.site-v80 img{image-rendering:auto}

/* Universal title hierarchy */
body.site-v80 h1,body.site-v80 h2,body.site-v80 h3,body.site-v80 h4{margin-top:0;text-wrap:balance}
body.site-v80 .display-title{
  font-size:clamp(40px,5.25vw,var(--v80-title-max))!important;
  line-height:.9!important;
  letter-spacing:-.052em!important;
  max-width:12ch!important;
  margin:0!important;
}
body.site-v80 .hero-content h1{
  font-size:clamp(42px,min(6.8vw,10.4vh),118px)!important;
  line-height:.84!important;
  letter-spacing:-.058em!important;
  max-width:10.4ch!important;
}
body.site-v80 .inner-hero h1,
body.site-v80 .quote-hero h1,
body.site-v80 .about-hero h1,
body.site-v80 .festival-detail-hero h1,
body.site-v80 .product-title h1,
body.site-v80 .project-detail-title h1,
body.site-v80 .article-hero h1{
  font-size:clamp(42px,5.7vw,96px)!important;
  line-height:.88!important;
  letter-spacing:-.054em!important;
  max-width:12ch!important;
  margin:12px 0 0!important;
}
body.site-v80 .small-display{font-size:clamp(34px,4.1vw,64px)!important;line-height:.94!important;letter-spacing:-.045em!important}
body.site-v80 .section-index,body.site-v80 .micro,body.site-v80 .kicker{
  font-size:10px!important;line-height:1.35!important;letter-spacing:.16em!important;font-weight:800!important
}
body.site-v80 .section-head>p,body.site-v80 .intro-copy p,body.site-v80 .lead-copy,
body.site-v80 .inner-hero p,body.site-v80 .quote-hero p,body.site-v80 .about-hero p,
body.site-v80 .article-hero p,body.site-v80 .product-title p,body.site-v80 .project-detail-title p{
  font-size:clamp(15px,1.15vw,18px)!important;line-height:1.62!important;max-width:60ch!important
}

/* Section headers: consistent geometry everywhere */
body.site-v80 .section-head{
  display:grid!important;
  grid-template-columns:minmax(0,1.18fr) minmax(260px,.72fr)!important;
  gap:clamp(28px,5vw,76px)!important;
  align-items:end!important;
  margin-bottom:clamp(34px,4.4vw,58px)!important;
}
body.site-v80 .section-head>div{min-width:0}
body.site-v80 .section-head>p{margin:0!important;justify-self:end!important;color:inherit;opacity:.72}
body.site-v80 .section-index{display:block;margin-bottom:12px!important}

/* Spacing between content systems */
body.site-v80 .intro-grid,body.site-v80 .activation-grid,body.site-v80 .quote-teaser-grid,
body.site-v80 .contact-grid,body.site-v80 .product-grid,body.site-v80 .project-detail-grid,
body.site-v80 .field-ops-grid,body.site-v80 .trust-grid,body.site-v80 .about-story-grid,
body.site-v80 .festival-detail-grid,body.site-v80 .quote-layout{gap:clamp(28px,4.5vw,72px)!important}
body.site-v80 .center-cta,body.site-v80 .work-actions{margin-top:clamp(28px,3.5vw,48px)!important}

/* Card geometry — equal height within each family */
body.site-v80 .service-rail,body.site-v80 .equipment-feature-grid,body.site-v80 .work-grid,
body.site-v80 .news-grid,body.site-v80 .festival-grid,body.site-v80 .project-masonry,
body.site-v80 .leadership-grid,body.site-v80 .strategy-grid,body.site-v80 .recognition-grid,
body.site-v80 .catalogue-grid,body.site-v80 .ticket-grid,body.site-v80 .client-project-grid,
body.site-v80 .internal-module-grid{gap:clamp(14px,1.6vw,24px)!important;align-items:stretch!important}
body.site-v80 .service-rail,body.site-v80 .news-grid,body.site-v80 .festival-grid,
body.site-v80 .leadership-grid,body.site-v80 .strategy-grid,body.site-v80 .recognition-grid,
body.site-v80 .catalogue-grid,body.site-v80 .ticket-grid,body.site-v80 .client-project-grid,
body.site-v80 .internal-module-grid{grid-auto-rows:1fr}

body.site-v80 .service-panel,body.site-v80 .equipment-feature,body.site-v80 .work-card,
body.site-v80 .news-card,body.site-v80 .festival-card,body.site-v80 .project-tile,
body.site-v80 .team-card,body.site-v80 .strategy-card,body.site-v80 .recognition-grid article,
body.site-v80 .catalogue-card,body.site-v80 .ticket-event-card,body.site-v80 .client-project-card,
body.site-v80 .internal-module{
  border-radius:var(--v80-radius)!important;overflow:hidden;min-width:0;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease!important
}
body.site-v80 .service-panel{min-height:300px!important;height:100%}
body.site-v80 .equipment-feature{min-height:clamp(360px,30vw,500px)!important;height:100%}
body.site-v80 .work-card{min-height:clamp(410px,35vw,560px)!important}
body.site-v80 .work-card.work-wide{min-height:clamp(500px,42vw,650px)!important}
body.site-v80 .news-card,body.site-v80 .festival-card,body.site-v80 .project-tile,
body.site-v80 .team-card,body.site-v80 .strategy-card,body.site-v80 .catalogue-card,
body.site-v80 .ticket-event-card,body.site-v80 .client-project-card{height:100%}
body.site-v80 .strategy-card{min-height:220px}
body.site-v80 .team-card{min-height:330px}
body.site-v80 .recognition-grid article{min-height:190px;height:100%}

/* Consistent media proportions */
body.site-v80 .news-image,body.site-v80 .project-tile-media,body.site-v80 .festival-card-media,
body.site-v80 .catalogue-image{aspect-ratio:16/10!important;overflow:hidden}
body.site-v80 .news-image img,body.site-v80 .project-tile-media img,body.site-v80 .festival-card-media img,
body.site-v80 .catalogue-image img,body.site-v80 .work-card img,body.site-v80 .eq-image img,
body.site-v80 .team-photo-img{width:100%;height:100%;object-fit:cover;object-position:center center}
body.site-v80 .roadshow-banner{height:clamp(260px,30vw,430px)!important;border-radius:var(--v80-radius)!important;overflow:hidden}
body.site-v80 .contact-map{min-height:420px;border-radius:var(--v80-radius)!important;overflow:hidden}

/* Card copy + typography */
body.site-v80 .news-body,body.site-v80 .festival-card-copy,body.site-v80 .project-tile-copy,
body.site-v80 .catalogue-copy,body.site-v80 .team-card,body.site-v80 .strategy-card,
body.site-v80 .ticket-event-card,body.site-v80 .client-project-card,body.site-v80 .internal-module{
  padding:clamp(20px,2vw,28px)!important
}
body.site-v80 .news-body h3,body.site-v80 .festival-card-copy h3,body.site-v80 .project-tile-copy h2,
body.site-v80 .catalogue-copy h2,body.site-v80 .team-card h3,body.site-v80 .strategy-card h3,
body.site-v80 .ticket-event-card h3,body.site-v80 .client-project-card h3{
  font-size:clamp(21px,2vw,30px)!important;line-height:1.04!important;letter-spacing:-.03em!important;margin:8px 0 10px!important
}
body.site-v80 .work-info{padding:clamp(22px,2.5vw,34px)!important}
body.site-v80 .work-info h3{font-size:clamp(30px,3.7vw,58px)!important;line-height:.94!important;letter-spacing:-.045em!important;max-width:13ch!important}
body.site-v80 .news-body p,body.site-v80 .festival-card-copy p,body.site-v80 .project-tile-copy p,
body.site-v80 .catalogue-copy p,body.site-v80 .team-card p,body.site-v80 .team-card small,
body.site-v80 .strategy-card p{font-size:14.5px!important;line-height:1.55!important}

/* Button system */
body.site-v80 .btn{min-height:46px!important;padding-inline:20px!important;border-radius:999px!important;font-size:11px!important;letter-spacing:.07em!important}
body.site-v80 .btn-xl{min-height:54px!important;padding-inline:26px!important}
body.site-v80 .text-link{font-size:10.5px!important;letter-spacing:.1em!important}

/* Premium surface treatment */
body.site-v80 .theme-dark .service-panel,body.site-v80 .theme-dark .news-card,body.site-v80 .theme-dark .festival-card,
body.site-v80 .theme-dark .project-tile,body.site-v80 .theme-dark .catalogue-card,
body.site-v80 .dark-stage .equipment-feature,body.site-v80 .work-card{
  border:1px solid var(--v80-line-dark)!important;box-shadow:0 1px 0 rgba(255,255,255,.025) inset
}
body.site-v80 .theme-light .service-panel,body.site-v80 .theme-light .news-card,body.site-v80 .theme-light .festival-card,
body.site-v80 .theme-light .project-tile,body.site-v80 .theme-light .catalogue-card,
body.site-v80 .theme-light .team-card,body.site-v80 .theme-light .strategy-card{
  border:1px solid var(--v80-line-light)!important;box-shadow:0 8px 24px rgba(15,16,18,.045)
}
@media (hover:hover) and (pointer:fine){
  body.site-v80 .service-panel:hover,body.site-v80 .equipment-feature:hover,body.site-v80 .work-card:hover,
  body.site-v80 .news-card:hover,body.site-v80 .festival-card:hover,body.site-v80 .project-tile:hover,
  body.site-v80 .catalogue-card:hover,body.site-v80 .team-card:hover{
    transform:translateY(-4px)!important;box-shadow:var(--v80-shadow)!important;border-color:rgba(239,36,40,.52)!important
  }
}

/* Detail pages: more disciplined image/copy proportions */
body.site-v80 .product-hero,body.site-v80 .project-detail-hero,body.site-v80 .article-hero,
body.site-v80 .festival-detail-hero,body.site-v80 .about-hero{min-height:clamp(480px,67vh,720px)!important}
body.site-v80 .product-grid,body.site-v80 .project-detail-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important}
body.site-v80 .article-body{max-width:860px!important;padding-top:clamp(48px,5vw,76px)!important;padding-bottom:clamp(70px,7vw,110px)!important}
body.site-v80 .article-body>p{font-size:clamp(17px,1.3vw,19px)!important;line-height:1.76!important}

/* Footer + trust areas */
body.site-v80 .site-footer{padding-top:clamp(60px,6vw,96px)}
body.site-v80 .footer-grid{gap:clamp(28px,5vw,72px)!important}
body.site-v80 .footer-intro h2{font-size:clamp(34px,4.1vw,68px)!important;line-height:.94!important;letter-spacing:-.045em!important;max-width:10ch}
body.site-v80 .trust-grid{align-items:stretch}
body.site-v80 .trust-hse,body.site-v80 .trust-clients{padding:clamp(28px,3.2vw,46px)!important}

/* Floating actions: quiet, useful, unobtrusive */
body.site-v80 .floating-contact-dock{gap:8px!important}
body.site-v80 .floating-contact-action{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important}
body.site-v80 .floating-action-icon{font-size:10px!important}
body.site-v80 .floating-action-text{font-size:10px!important}

/* 800x600 and compact desktop */
@media (max-width:1120px), (max-height:700px){
  body.site-v80 .section{padding-block:clamp(52px,6vw,76px)!important}
  body.site-v80 .section-head{grid-template-columns:1fr!important;gap:14px!important;margin-bottom:30px!important}
  body.site-v80 .section-head>p{justify-self:start!important}
  body.site-v80 .display-title{font-size:clamp(34px,5vw,68px)!important}
  body.site-v80 .hero-content h1{font-size:clamp(34px,min(6vw,9vh),80px)!important}
  body.site-v80 .service-panel{min-height:260px!important}
  body.site-v80 .equipment-feature{min-height:320px!important}
  body.site-v80 .work-card{min-height:360px!important}
  body.site-v80 .work-card.work-wide{min-height:420px!important}
}

/* Tablet */
@media (max-width:900px){
  body.site-v80 .service-rail,body.site-v80 .news-grid,body.site-v80 .festival-grid,
  body.site-v80 .leadership-grid,body.site-v80 .strategy-grid,body.site-v80 .recognition-grid,
  body.site-v80 .catalogue-grid,body.site-v80 .ticket-grid,body.site-v80 .client-project-grid,
  body.site-v80 .internal-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.site-v80 .equipment-feature-grid{grid-template-columns:1fr 1fr!important}
  body.site-v80 .equipment-feature{grid-column:auto!important}
  body.site-v80 .section-head{grid-template-columns:1fr!important}
  body.site-v80 .section-head>p{justify-self:start!important}
}

/* Mobile */
@media (max-width:620px){
  :root{--v80-edge:16px;--v80-radius:15px}
  body.site-v80{font-size:15px}
  body.site-v80 .section{padding-block:48px!important}
  body.site-v80 .display-title{font-size:clamp(30px,9vw,48px)!important;line-height:.94!important;max-width:13ch!important}
  body.site-v80 .hero-content h1{font-size:clamp(31px,10.8vw,54px)!important;max-width:8.8ch!important;line-height:.87!important}
  body.site-v80 .inner-hero h1,body.site-v80 .quote-hero h1,body.site-v80 .about-hero h1,
  body.site-v80 .festival-detail-hero h1,body.site-v80 .product-title h1,
  body.site-v80 .project-detail-title h1,body.site-v80 .article-hero h1{
    font-size:clamp(32px,10vw,52px)!important;line-height:.92!important;max-width:10.5ch!important
  }
  body.site-v80 .service-rail,body.site-v80 .news-grid,body.site-v80 .festival-grid,
  body.site-v80 .leadership-grid,body.site-v80 .strategy-grid,body.site-v80 .recognition-grid,
  body.site-v80 .catalogue-grid,body.site-v80 .ticket-grid,body.site-v80 .client-project-grid,
  body.site-v80 .internal-module-grid,body.site-v80 .equipment-feature-grid{grid-template-columns:1fr!important}
  body.site-v80 .service-panel{min-height:230px!important}
  body.site-v80 .equipment-feature{min-height:280px!important}
  body.site-v80 .work-card,body.site-v80 .work-card.work-wide{min-height:330px!important}
  body.site-v80 .work-info h3{font-size:clamp(26px,8.5vw,42px)!important}
  body.site-v80 .news-image,body.site-v80 .project-tile-media,body.site-v80 .festival-card-media,
  body.site-v80 .catalogue-image{aspect-ratio:4/3!important}
  body.site-v80 .product-grid,body.site-v80 .project-detail-grid{grid-template-columns:1fr!important}
  body.site-v80 .product-hero,body.site-v80 .project-detail-hero,body.site-v80 .article-hero,
  body.site-v80 .festival-detail-hero,body.site-v80 .about-hero{min-height:440px!important}
  body.site-v80 .btn{min-height:44px!important;padding-inline:17px!important}
  body.site-v80 .footer-intro h2{font-size:38px!important}
}

/* Accessibility / motion */
@media (prefers-reduced-motion:reduce){
  body.site-v80 .service-panel,body.site-v80 .equipment-feature,body.site-v80 .work-card,
  body.site-v80 .news-card,body.site-v80 .festival-card,body.site-v80 .project-tile,
  body.site-v80 .catalogue-card,body.site-v80 .team-card{transition:none!important;transform:none!important}
}
