/* Final cascade for the v3.2 refinement. Imported after globals.css. */
body { overflow-x:hidden; overflow-x:clip; }
main,section,header,footer,nav,div,article,aside { min-width:0; }
h1,h2,h3,p { overflow-wrap:break-word; }
[id] { scroll-margin-top:110px; }

.site-header { grid-template-columns:220px minmax(0,1fr) auto; }
.desktop-nav { gap:clamp(20px,2.2vw,34px); }
.desktop-nav a,.catalog-link { font-size:14px; }
.subpage-nav { gap:clamp(18px,2vw,30px); font-size:14px; }

.hero { min-height:650px; padding-top:62px; padding-bottom:42px; }
.hero h1 { font-size:clamp(46px,4.55vw,68px); }
.product-showcase { padding-top:72px; padding-bottom:72px; gap:38px 64px; }
.product-copy h2 { font-size:clamp(38px,3.75vw,57px); }
.product-visual { min-height:510px; }
.mini-product-photo { width:110px; aspect-ratio:1; display:grid; place-items:center; }
.mini-product-photo img { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 13px 18px rgba(31,23,40,.14)); }
.simulator-spotlight { margin-top:20px; margin-bottom:20px; padding:50px; gap:58px; }
.spotlight-copy h2 { font-size:clamp(36px,3.45vw,50px); }
.spotlight-preview-link { position:relative; }
.spotlight-sample-art { left:50%; top:43%; transform:translate(-50%,-50%); }
.spotlight-preview[data-side="back"] .spotlight-sample-art { top:40%; }
.spotlight-preview[data-garment="hoodie"] .spotlight-sample-art { width:25%; top:42%; }
.spotlight-open { position:absolute; left:50%; bottom:18px; margin:0; transform:translateX(-50%); }

.intro-section { padding-top:82px; padding-bottom:82px; gap:48px; }
.audience-section { padding-top:76px; padding-bottom:86px; }
.section-heading { margin-bottom:36px; }
.intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { font-size:clamp(36px,3.55vw,53px); }
.audience-editorial { min-height:450px; }
.editorial-1 { min-height:510px; }
.editorial-1 img { max-height:510px; }
.audience-copy h3 { font-size:clamp(27px,2.35vw,38px); }
.editorial-2 .audience-copy h3,.editorial-3 .audience-copy h3 { font-size:clamp(25px,2vw,32px); }
.journey { padding-top:82px; padding-bottom:82px; gap:80px; }
.journey-list li { min-height:104px; padding:18px 6px; }
.tools-section { margin-bottom:80px; padding:58px; min-height:460px; }
.local-section { padding-top:82px; padding-bottom:82px; }
.quote-section { padding-top:78px; padding-bottom:78px; }
.quote-copy h2 { color:#17131d; font-size:clamp(36px,3.55vw,51px); }
.faq-section { padding-top:78px; padding-bottom:78px; gap:72px; }
.final-cta { min-height:450px; padding:78px 24px; }
.final-cta h2 { font-size:clamp(39px,4.45vw,64px); }

footer { padding-top:64px; gap:44px; }
.footer-brand { display:flex; flex-direction:column; align-items:center; text-align:center; }
.footer-mark { width:95px; height:110px; position:relative; display:block; overflow:hidden; flex:0 0 auto; }
.footer-brand .footer-mark img { width:404px; max-width:none; height:auto; padding:0; position:absolute; left:0; top:50%; border:0; border-radius:0; background:transparent; filter:none; transform:translateY(-50%); }
.footer-brand p { margin:8px auto 0; max-width:390px; }

.subpage-hero { min-height:470px; padding-top:68px; padding-bottom:68px; gap:54px; }
.subpage-hero h1 { font-size:clamp(45px,5vw,68px); }
.catalog-hero { min-height:420px; padding-top:58px; padding-bottom:58px; }
.catalog-hero h1 { max-width:780px; font-size:clamp(42px,4.25vw,58px); }
.catalog-mark { width:min(330px,72vw); }
.measures-hero { min-height:360px; padding-top:48px; padding-bottom:48px; grid-template-columns:1.3fr .7fr; gap:40px; }
.measures-hero h1 { max-width:760px; font-size:clamp(34px,3.45vw,46px); line-height:1.12; }
.measures-hero p { font-size:15px; }
.measure-illustration { width:min(285px,66vw); }
.measure-illustration svg:first-child { width:78px; height:78px; padding:15px; }
.measure-illustration svg:last-child { width:66px; height:66px; padding:14px; border-radius:20px; }
.catalog-grid,.measure-guide { padding-top:72px; padding-bottom:72px; }
.catalog-grid article { min-height:330px; }
.catalog-admin-note { margin-bottom:72px; padding:52px; }
.catalog-admin-note h2 { font-size:clamp(31px,3.35vw,46px); }
.measure-guide { gap:64px; }
.measure-steps h2,.measure-models h2 { font-size:clamp(32px,3.45vw,48px); }
.measure-warning { margin-bottom:72px; }
.subpage-cta { min-height:370px; padding:65px 24px; }
.subpage-cta h2 { font-size:clamp(38px,4.45vw,60px); }
.simulator-heading { padding-top:50px; padding-bottom:18px; }
.simulator-heading h1 { margin:0 0 17px; font-size:clamp(31px,3.1vw,40px); line-height:1.12; }
.simulator-heading p { font-size:15px; }
.simulator-full-wrap { margin-bottom:70px; }
.simulator-next { margin-bottom:72px; padding:44px; }

@media (max-width:1100px) {
  .desktop-nav,.catalog-link { display:none; }
  .site-header { grid-template-columns:1fr auto; }
}

@media (max-width:960px) {
  .catalog-hero,.measures-hero { grid-template-columns:1fr; min-height:0; text-align:center; }
  .catalog-hero p,.measures-hero p { margin-left:auto; margin-right:auto; }
}

@media (max-width:780px) {
  [id] { scroll-margin-top:82px; }
  .hero { padding-top:46px; padding-bottom:30px; }
  .hero h1 { font-size:clamp(39px,10.5vw,51px); }
  .product-showcase { padding-top:54px; padding-bottom:54px; }
  .product-copy h2 { font-size:clamp(34px,8.8vw,44px); }
  .product-visual { min-height:420px; }
  .mini-product-photo { width:88px; }
  .simulator-spotlight { padding:30px 18px; }
  .spotlight-copy h2 { font-size:clamp(32px,8.3vw,41px); }
  .spotlight-open { bottom:12px; }
  .intro-section,.journey,.faq-section { padding-top:58px; padding-bottom:58px; }
  .intro-section h2,.section-heading h2,.journey h2,.tools-section h2,.local-section h2,.faq-section h2 { font-size:clamp(32px,8.4vw,42px); }
  .audience-section { padding-top:58px; padding-bottom:62px; }
  .audience-editorial,.editorial-1 { min-height:440px; }
  .tools-section { margin-bottom:58px; padding:38px 20px; min-height:0; }
  .local-section,.quote-section { padding-top:58px; padding-bottom:58px; }
  .quote-copy h2 { font-size:clamp(33px,8.5vw,43px); }
  .final-cta { min-height:400px; padding:60px 18px; }
  .final-cta h2 { font-size:clamp(36px,9.3vw,48px); }
  footer { padding-top:52px; }
  .subpage-hero,.catalog-hero,.measures-hero { padding:48px 18px 54px; gap:34px; }
  .subpage-hero h1,.catalog-hero h1 { font-size:clamp(36px,9.5vw,47px); }
  .measures-hero h1 { font-size:clamp(30px,7.8vw,38px); }
  .catalog-mark { width:min(270px,72vw); }
  .measure-illustration { width:min(235px,64vw); }
  .catalog-grid,.measure-guide { padding-top:54px; padding-bottom:54px; }
  .catalog-admin-note,.measure-warning { margin-bottom:54px; }
  .subpage-cta { min-height:330px; padding:54px 18px; }
  .subpage-cta h2 { font-size:clamp(34px,8.7vw,46px); }
  .simulator-heading { padding:42px 18px 18px; }
  .simulator-heading h1 { font-size:clamp(29px,7.5vw,35px); }
}

@media (max-width:460px) {
  .product-visual { min-height:360px; }
  .product-more article { grid-template-columns:74px 1fr; }
  .mini-product-photo { width:72px; }
  .spotlight-preview-link { min-height:330px; }
  .audience-editorial,.editorial-1 { min-height:420px; }
  .footer-mark { width:86px; height:101px; }
  .footer-brand .footer-mark img { width:366px; }
}

/* Aviso de cookies: compacto, legível e sem bloquear a navegação. */
.cookie-notice {
  width:min(700px,calc(100vw - 36px));
  min-height:92px;
  padding:16px 17px;
  position:fixed;
  z-index:10000;
  left:18px;
  bottom:18px;
  display:grid;
  grid-template-columns:9px minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  border:1px solid rgba(23,19,29,.11);
  border-radius:22px;
  background:rgba(255,255,255,.97);
  box-shadow:0 20px 55px rgba(34,23,42,.14);
  backdrop-filter:blur(18px);
}
.cookie-notice-dot { width:9px; height:9px; align-self:start; margin-top:7px; border-radius:50%; background:linear-gradient(135deg,var(--pink),var(--yellow)); box-shadow:0 0 0 5px rgba(255,8,120,.07); }
.cookie-notice-copy { display:grid; gap:4px; }
.cookie-notice-copy b { font:600 14px/1.25 "Sora",sans-serif; }
.cookie-notice-copy p { max-width:420px; margin:0; color:var(--muted); font-size:11px; line-height:1.55; }
.cookie-notice-actions { display:flex; align-items:center; gap:7px; }
.cookie-choice { min-height:40px!important; padding:0 13px!important; border-radius:12px!important; font-size:10px!important; font-weight:800!important; white-space:nowrap; box-shadow:none!important; }
.cookie-essential { border:1px solid var(--line)!important; background:#fff!important; color:var(--ink)!important; }
.cookie-accept { border:1px solid var(--ink)!important; background:var(--ink)!important; color:#fff!important; }
.cookie-choice:focus-visible { outline:3px solid rgba(39,142,255,.28); outline-offset:2px; }

@media (max-width:680px) {
  .cookie-notice { width:calc(100vw - 20px); min-height:0; left:10px; bottom:10px; grid-template-columns:8px 1fr; gap:10px 12px; padding:15px; border-radius:18px; }
  .cookie-notice-dot { width:8px; height:8px; }
  .cookie-notice-actions { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; }
  .cookie-choice { width:100%; }
}

/* Ponte WordPress/Elementor para a composição aprovada no site ao vivo. */
body.imaginart-theme { margin:0; background:#fff; color:var(--ink); font-family:"Plus Jakarta Sans",sans-serif; }
.im-v93-home { width:100%; overflow:hidden; overflow:clip; }
.im-home-approved-v93,.im-home-approved-v93>.e-con-inner,.im-home-approved-v93>.elementor-container,
.im-home-approved-v93 .elementor-widget-shortcode,.im-home-approved-v93 .elementor-widget-container { width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
.im-home-approved-v93>.e-con-inner,.im-home-approved-v93>.elementor-container { display:block!important; }
.imaginart-theme .site-header { width:100%; max-width:none; margin:0; }
.site-header>.desktop-nav>ul { margin:0; padding:0; list-style:none; display:flex; align-items:center; justify-content:center; gap:inherit; }
.site-header>.desktop-nav li { margin:0; padding:0; }
.site-header .brand img { width:100%; height:100%; object-fit:contain; }
.imaginart-theme .menu-button i { width:18px; height:2px; display:block; border-radius:999px; background:var(--ink); transition:.2s; }
.imaginart-theme .menu-button { align-content:center; gap:5px; cursor:pointer; }
.imaginart-theme .menu-button.is-open i:first-child { transform:translateY(3.5px) rotate(45deg); }
.imaginart-theme .menu-button.is-open i:last-child { transform:translateY(-3.5px) rotate(-45deg); }
.im-v93-home .im-quote-form-wrap { margin:0; }
.im-v93-home .im-quote-form-wrap.quote-section { border-radius:0; }
.im-v93-home .spotlight-garment-color { -webkit-mask-image:var(--spot-mask)!important; mask-image:var(--spot-mask)!important; }
.im-v93-home .quote-form input,.im-v93-home .quote-form select,.im-v93-home .quote-form textarea { color:var(--ink); }
.im-v93-home .quote-form select option { color:var(--ink); background:#fff; }
.im-v93-home .form-file input { min-height:0; padding:8px 0; border:0; background:transparent; }
.im-v93-home .form-status { margin:0; padding:12px 14px; border-radius:12px; background:#e9fff2; color:#11633a; font-size:12px; }
.im-v93-faq-answer[hidden] { display:none!important; }
.faq-list button.is-open .im-v93-faq-chevron { transform:rotate(180deg); }
.site-footer.im-footer { margin:0; }
.site-footer .footer-mark { margin-inline:auto; }
.site-footer .footer-brand p { text-align:center; }
.imaginart-theme .im-wa-icon {
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  max-width:20px!important;
  min-height:20px!important;
  max-height:20px!important;
  flex:0 0 20px!important;
  display:block!important;
  margin:0!important;
  overflow:visible!important;
  color:currentColor;
}
.imaginart-theme .wa-button,.imaginart-theme .im-header-cta,.imaginart-theme .im-whatsapp { align-items:center!important; justify-content:center!important; }
.im-v93-home .quote-section .quote-copy h2 { color:#17131d!important; }
.imaginart-theme .im-spot-sample-art { left:50%!important; top:43%!important; transform:translate(-50%,-50%)!important; }
.imaginart-theme .im-spot-preview-3d[data-side="back"] .im-spot-sample-art { top:40%!important; }
.imaginart-theme .im-spot-preview-3d[data-garment="hoodie"] .im-spot-sample-art { width:25%!important; top:42%!important; }
.imaginart-theme .im-spot-open { left:50%!important; right:auto!important; bottom:18px!important; margin:0!important; transform:translateX(-50%)!important; }
.imaginart-theme .im-preview-3d::before { width:max-content!important; max-width:none!important; white-space:nowrap!important; font-size:clamp(22px,3vw,34px)!important; line-height:1!important; }
body:has(.im-simulator-v3) .im-auto-hero { min-height:0!important; padding-top:34px!important; padding-bottom:16px!important; }
body:has(.im-simulator-v3) .im-auto-hero>.e-con-inner,
body:has(.im-simulator-v3) .im-auto-hero>.elementor-container { min-height:180px!important; }
body:has(.im-simulator-v3) .im-auto-button { display:none!important; }
body:has(.im-simulator-v3) .im-auto-content { padding-top:0!important; }
body:has(.im-simulator-v3) .im-simulator-v3 { padding-top:18px!important; }
body:has(.im-tools-lab) .im-seo-title .elementor-heading-title {
  color:#762653!important;
  font-size:clamp(30px,3vw,43px)!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}
.im-cookie-notice[hidden] { display:none!important; }
.im-cookie-notice .cookie-policy-link { width:max-content; color:var(--ink); font-size:10px; font-weight:750; text-decoration:underline; text-underline-offset:3px; }
.admin-bar .site-header { top:32px; }

@media (max-width:1100px) {
  .site-header>.desktop-nav.is-open { position:absolute; top:calc(100% + 1px); left:18px; right:18px; z-index:1001; display:block; padding:12px 18px 17px; border:1px solid var(--line); border-radius:0 0 20px 20px; background:rgba(255,255,255,.98); box-shadow:0 20px 50px rgba(23,19,29,.15); backdrop-filter:blur(20px); }
  .site-header>.desktop-nav.is-open>ul { display:grid; gap:0; }
  .site-header>.desktop-nav.is-open li { border-bottom:1px solid var(--line); }
  .site-header>.desktop-nav.is-open li:last-child { border-bottom:0; }
  .site-header>.desktop-nav.is-open a { display:block; padding:13px 5px; }
}

@media (max-width:782px) {
  .admin-bar .site-header { top:46px; }
  .imaginart-theme .site-header { gap:8px; }
  .imaginart-theme .site-header .header-actions { gap:6px; }
  .imaginart-theme .site-header .wa-button.small {
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:15px!important;
    line-height:0!important;
  }
  .imaginart-theme .site-header .wa-button.small>span { display:none!important; }
  .imaginart-theme .site-header .wa-button.small .im-wa-icon { width:21px!important; height:21px!important; min-width:21px!important; max-width:21px!important; min-height:21px!important; max-height:21px!important; flex-basis:21px!important; }
  .imaginart-theme .im-whatsapp { display:grid!important; place-items:center!important; line-height:0!important; }
  .imaginart-theme .im-spot-open { bottom:12px!important; }
  .imaginart-theme .im-preview-3d::before { font-size:clamp(17px,4.8vw,25px)!important; }
  body:has(.im-simulator-v3) .im-auto-hero { padding-top:28px!important; padding-bottom:12px!important; }
  body:has(.im-simulator-v3) .im-auto-hero>.e-con-inner,
  body:has(.im-simulator-v3) .im-auto-hero>.elementor-container { min-height:0!important; }
  body:has(.im-simulator-v3) .im-simulator-v3 { padding-top:12px!important; }
}

@media (max-width:600px) {
  .admin-bar .site-header { top:0; }
}
