@media(min-width:391px){
  .menu-toggle{flex-basis:100px;padding:0 15px}
  .mobile-budget{padding:0 15px;font-size:13px}
  .gallery{grid-template-columns:1fr 1fr;grid-auto-rows:220px}
}

@media(min-width:641px){
  .container{width:min(calc(100% - 40px),var(--max))}
  .topbar{padding-top:max(14px,env(safe-area-inset-top))}
  .hero{padding:72px 0}
  h1{font-size:clamp(52px,7vw,94px)}
  .hero-roles{font-size:14px}
  .hero-copy{font-size:clamp(17px,1.7vw,20px)}
  .hero-actions{display:flex;flex-wrap:wrap}
  .hero-actions .button{width:auto}
  .hero-media{width:min(100%,520px)}
  .hero-frame{border-radius:40px}
  .hero-tag{top:26px;right:-20px;padding:14px 17px;border-radius:16px;font-size:12px}
  section{padding:104px 0}
  #videos{padding-bottom:96px}
  #servicos{padding-top:104px}
  h2{font-size:clamp(40px,5.6vw,68px)}
  .section-head{margin-bottom:42px}
  .video-showcase{padding:96px 0}
  .video-showcase .container{width:min(calc(100% - 40px),var(--max))}
  .video-showcase .section-head,
  .video-showcase .video-note{margin-left:0;margin-right:0}
  .video-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    overflow:visible;
    padding:0;
    scroll-snap-type:none;
  }
  .video-card{border-radius:28px;scroll-snap-align:none}
  .video-info{padding:18px 18px 20px}
  .video-info small{font-size:9px}
  .video-info h3{font-size:19px}
  .video-note{margin-top:22px}
  .service{min-height:245px;padding:30px;border-radius:28px}
  .service-main{min-height:360px}
  .service h3{max-width:520px;font-size:clamp(26px,3.2vw,42px);line-height:1}
  .service p{max-width:470px;font-size:inherit;line-height:inherit}
  .about-copy{font-size:18px}
  .photo strong{font-size:15px}
  .cta-section{padding-bottom:110px}
  .cta{min-height:430px;padding:58px;border-radius:40px;align-items:center}
  .cta h2{font-size:clamp(48px,7vw,84px)}
  .cta::after{right:25px;bottom:-42px;font-size:clamp(72px,12vw,150px);letter-spacing:-.07em}
  .footer-row{flex-direction:row;justify-content:space-between;align-items:center}
}

@media(min-width:901px){
  .experience-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:70px}
  .experience-points{grid-template-columns:repeat(2,minmax(0,1fr))}
  .experience-point{min-height:160px}
}

@media(min-width:961px){
  .nav{
    flex-wrap:nowrap;
    min-height:66px;
    padding:9px 10px 9px 18px;
    gap:20px;
    border-radius:20px;
    background:rgba(247,242,238,.88);
    backdrop-filter:blur(18px);
  }
  .brand{flex:0 1 auto;padding:0}
  .brand small{display:block}
  .brand strong{font-size:15px}
  .nav-links{display:flex}
  .nav .desktop-budget{display:inline-flex}
  .menu-toggle,.mobile-budget,.menu-panel,.menu-panel.open{display:none}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:64px}
  .hero-media{justify-self:end;width:auto}
  .section-head{grid-template-columns:.92fr 1.08fr;gap:56px}
  .services-grid{grid-template-columns:1.15fr .85fr;grid-template-rows:1fr 1fr}
  .service-main{grid-row:1/3;min-height:506px}
  .service-scope{flex-direction:row;align-items:center}
  .service-scope .button{width:auto;flex:0 0 auto}
  .about-grid{grid-template-columns:1fr 1fr;gap:64px}
  .gallery{grid-template-columns:repeat(12,1fr);grid-auto-rows:86px;gap:14px}
  .photo{border-radius:24px}
  .photo figcaption{left:18px;right:18px;bottom:15px}
  .photo span{display:block}
  .p1{grid-column:1/5;grid-row:span 5}
  .p2{grid-column:5/9;grid-row:span 5}
  .p3{grid-column:9/13;grid-row:span 5}
  .p4{grid-column:1/5;grid-row:span 5}
  .p7{grid-column:5/9;grid-row:span 5}
  .p8{grid-column:9/13;grid-row:span 5}
  .steps{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media(min-width:1021px){
  .video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(hover:hover) and (pointer:fine){
  .nav-links a:hover{color:var(--accent)}
  .menu-panel a:hover{background:rgba(232,41,114,.07)}
  .button:hover{transform:translateY(-2px)}
  .video-card{transition:transform .22s ease,box-shadow .22s ease}
  .video-card:hover{transform:translateY(-5px);box-shadow:0 24px 62px rgba(42,25,34,.16)}
  .photo img{transition:transform .45s ease}
  .photo:hover img{transform:scale(1.035)}
  .p7:hover img{transform:scale(1.17)}
  .watch-video:hover{background:var(--accent);color:white}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}
}
