/* bundled: /assets/shared/shared-91a9b60c3dfd.css */
/* Oficina de Optica — modernizacao visual conservadora 2026
   Objetivo: melhorar UX/responsividade sem alterar conteudo SEO ou URLs. */
:root{--oo-navy:#113746;--oo-navy-2:#1d5367;--oo-blue:#377e94;--oo-orange:#ef7d32;--oo-ink:#1a2930;--oo-muted:#60727a;--oo-line:#dce6ea;--oo-bg:#f6f9fa;--oo-white:#fff;--oo-shadow:0 12px 34px rgba(17,55,70,.10);--oo-radius:18px}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0!important;color:var(--oo-ink)!important;background:#fff!important;font-family:Lato,Arial,Helvetica,sans-serif!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
/* Cabeçalho legado oculto; o cabeçalho atual é mantido. */
.block-sticky-bar,.block-header{display:none!important}
.oo-site-header{position:sticky;top:0;z-index:9999;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(17,55,70,.10);box-shadow:0 4px 18px rgba(17,55,70,.06)}
.oo-topline{background:var(--oo-navy);color:#eaf4f7;font-size:13px;line-height:1.3}
.oo-topline-inner,.oo-nav{width:min(1180px,calc(100% - 36px));margin:auto}
.oo-topline-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.oo-nav{min-height:78px;display:flex;align-items:center;gap:26px}
.oo-brand{display:flex;align-items:center;gap:10px;flex:0 0 auto;text-decoration:none!important;color:var(--oo-navy)!important;font-size:16px;font-weight:800;letter-spacing:.02em}
.oo-brand img{width:58px;height:58px;object-fit:contain}
.oo-links{display:flex;align-items:center;justify-content:center;gap:22px;margin-left:auto}
.oo-links a{font-size:14px;font-weight:700;color:#263940!important;text-decoration:none!important;white-space:nowrap;transition:color .18s ease}
.oo-links a:hover{color:var(--oo-blue)!important}
.oo-whatsapp{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:0 17px;border-radius:999px;background:var(--oo-orange);color:#fff!important;text-decoration:none!important;font-weight:800;font-size:14px;box-shadow:0 8px 20px rgba(239,125,50,.22);white-space:nowrap}
.oo-mobile-menu{display:none;margin-left:auto;position:relative}
.oo-mobile-menu summary{list-style:none;cursor:pointer;width:44px;height:44px;border:1px solid var(--oo-line);border-radius:12px;display:grid;place-items:center;color:var(--oo-navy);font-size:23px;background:#fff}
.oo-mobile-menu summary::-webkit-details-marker{display:none}
.oo-mobile-panel{position:absolute;right:0;top:52px;width:min(310px,calc(100vw - 28px));padding:12px;background:#fff;border:1px solid var(--oo-line);border-radius:16px;box-shadow:0 18px 45px rgba(17,55,70,.18)}
.oo-mobile-panel a{display:block;padding:12px 13px;border-radius:10px;color:var(--oo-ink)!important;text-decoration:none!important;font-weight:700}
.oo-mobile-panel a:hover{background:var(--oo-bg)}
.oo-mobile-panel .oo-m-wa{margin-top:6px;text-align:center;background:var(--oo-orange);color:#fff!important}
/* Tipografia e leitura: preserva os mesmos titulos e textos. */
main.page h1{line-height:1.08!important;letter-spacing:-.025em!important}
main.page h2,main.page h3{line-height:1.18!important;letter-spacing:-.012em}
main.page p,main.page li{line-height:1.62!important}
main.page a{transition:opacity .18s ease,transform .18s ease,color .18s ease}
/* Remove estados de animacao que podem esconder elementos no HTML salvo. */
.transition,.transition--root-hidden,[data-animation-state="active"]{opacity:1!important;visibility:visible!important;transform:none!important}
/* Botoes */
.grid-button,.product-list-item__button{border-radius:999px!important;min-height:46px!important;font-weight:700!important;letter-spacing:.01em!important;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important}
.grid-button:hover,.product-list-item__button:hover{transform:translateY(-1px)!important;box-shadow:0 9px 20px rgba(17,55,70,.13)!important}
.grid-button--primary{box-shadow:0 8px 20px rgba(74,122,140,.18)!important}
/* Produtos e vitrines */
.product-list-item{border-radius:var(--oo-radius)!important;overflow:hidden!important;background:#fff!important;border:1px solid var(--oo-line)!important;box-shadow:0 6px 22px rgba(17,55,70,.065)!important;transition:transform .2s ease,box-shadow .2s ease!important}
.product-list-item:hover{transform:translateY(-3px)!important;box-shadow:var(--oo-shadow)!important}
.product-list-item__image-wrapper,.ecommerce-product-image{background:#f4f7f8!important}
.product-list-item__details{padding-top:14px!important}
.product-list-item__title{font-weight:700!important;color:var(--oo-navy)!important}
/* Formularios */
.input__component,input,textarea,select{border-radius:12px!important}
.form__button{border-radius:999px!important}
/* Imagens de conteudo: acabamento discreto, sem alterar proporcao. */
.image-wrapper--layout:not(.image-wrapper--mobile) .image__image{border-radius:12px}
/* WhatsApp existente */
.whats-app-bubble{filter:drop-shadow(0 8px 14px rgba(0,0,0,.18));transition:transform .18s ease!important}
.whats-app-bubble:hover{transform:translateY(-2px) scale(1.02)!important}
/* Rodape original, apenas refinado. */
.block--footer .block-background{filter:saturate(.88) brightness(.82)}
.block--footer a{text-underline-offset:3px}
/* Foco para teclado/acessibilidade */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(55,126,148,.45)!important;outline-offset:3px!important}
@media(max-width:1050px){.oo-links{gap:14px}.oo-links a{font-size:13px}.oo-whatsapp{padding:0 14px}.oo-brand span{display:none}}
@media(max-width:820px){
 .oo-topline-inner{justify-content:center;text-align:center;min-height:32px}.oo-topline-inner span:last-child{display:none}
 .oo-nav{min-height:68px;width:min(100% - 28px,1180px)}.oo-brand img{width:50px;height:50px}.oo-brand span{display:inline;font-size:14px}
 .oo-links,.oo-nav>.oo-whatsapp{display:none}.oo-mobile-menu{display:block}
 main.page h1{font-size:clamp(32px,9vw,46px)!important}
 .block-layout{max-width:100%!important}
 .product-list-item{border-radius:15px!important}
}
@media(max-width:480px){.oo-topline{font-size:11.5px}.oo-topline-inner{width:calc(100% - 20px)}.oo-nav{width:calc(100% - 22px)}.oo-brand span{max-width:155px;line-height:1.1}.oo-mobile-panel{right:-2px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* Oficina: galeria de produtos funcional */
.product-carousel__image-list-element{cursor:pointer;border-radius:10px;transition:box-shadow .18s ease,opacity .18s ease}
.product-carousel__image-list-element--active{box-shadow:0 0 0 2px #2f7892 inset}
.product-carousel__image-list-element:not(.product-carousel__image-list-element--active){opacity:.78}
.product-carousel__image-list-element:hover{opacity:1}
.product-carousel__main-image{transition:opacity .15s ease}
@media(max-width:767px){.product-carousel__image-list{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.product-carousel__image-list-element{flex:0 0 auto}}
.oo-site-header { display:block !important; visibility:visible !important; height:auto !important; }
.oo-site-header .oo-brand img { width:58px !important; height:58px !important; max-width:58px !important; max-height:58px !important; display:block !important; }
@media(max-width:820px){.oo-site-header .oo-brand img{width:50px !important;height:50px !important;max-width:50px !important;max-height:50px !important}}

/* Oficina V5: icones sociais compactos no cabecalho */
.oo-socials{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.oo-social{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:50%;text-decoration:none!important;transition:transform .18s ease,filter .18s ease;box-shadow:0 4px 11px rgba(17,55,70,.12)}
.oo-social svg{display:block;width:30px;height:30px}
.oo-social:hover{transform:translateY(-1px) scale(1.04);filter:brightness(1.03)}
@media(max-width:820px){.oo-socials{gap:6px;margin-left:auto}.oo-social{width:31px;height:31px}.oo-social svg{width:28px;height:28px}.oo-mobile-menu{margin-left:4px}}
@media(max-width:480px){.oo-socials{gap:5px}.oo-social{width:29px;height:29px}.oo-social svg{width:27px;height:27px}}

/* bundled: assets/whatsapp-actions.css */
/* Oficina de Óptica - contatos V26 */
.oo-whatsapp-product-btn{cursor:pointer!important}
.oo-footer-whatsapp{display:inline-flex!important;align-items:center;justify-content:center;min-height:46px;padding:12px 22px!important;border-radius:999px!important;text-decoration:none!important;background:#25D366!important;color:#fff!important;font-weight:700!important;line-height:1.2!important}
.oo-footer-whatsapp:hover{filter:brightness(.96)}
.oo-whatsapp-contact-form button[type="submit"]{cursor:pointer}

/* bundled: /assets/v27-product-cards.css */
/* Oficina de Optica V27 — produtos relacionados e selo Novo */

/* Em paginas de produto, organiza "Voce tambem pode gostar": 4 no computador. */
.block-product__related-products .product-list__content{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  width:100%!important;
  overflow:visible!important;
}
.block-product__related-products .product-list__link{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  text-decoration:none!important;
}
.block-product__related-products .product-list-item{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
}
.block-product__related-products .product-list-item__content{
  width:100%!important;
  min-width:0!important;
}
.block-product__related-products .product-list-item__image-wrapper{
  width:100%!important;
  aspect-ratio:1 / 1!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
  background:#f7fafb!important;
}
.block-product__related-products .product-list-item__image-wrapper img,
.block-product__related-products .ecommerce-product-image{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.block-product__related-products .product-list-item__details{
  padding:12px 10px 10px!important;
  box-sizing:border-box!important;
}
.block-product__related-products .product-list-item__title{
  font-size:14px!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.block-product__related-products .product-list-item__price-wrapper,
.block-product__related-products .product-list-item__price-wrapper p,
.block-product__related-products .product-list-item__price-wrapper span{
  font-size:13px!important;
  line-height:1.25!important;
}
.block-product__related-products .product-list-item__button-wrapper{
  padding:0 10px 12px!important;
  box-sizing:border-box!important;
}
.block-product__related-products .product-list-item__button{
  width:100%!important;
  min-width:0!important;
  padding:9px 8px!important;
  font-size:12px!important;
  line-height:1.2!important;
  white-space:normal!important;
}
.block-product__related-products .block-product-list__category{
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* O selo Novo do autorefrator nao deve cobrir o equipamento. */
a[href*="auto-refrator-totalmente-automatico-somente-sob-consulta"] .ecommerce-product-ribbon{
  top:6px!important;
  left:6px!important;
  right:auto!important;
  margin:0!important;
  padding:3px 7px!important;
  min-width:0!important;
  max-width:max-content!important;
  max-height:none!important;
  border-radius:999px!important;
  line-height:1!important;
  z-index:2!important;
}
a[href*="auto-refrator-totalmente-automatico-somente-sob-consulta"] .ecommerce-product-ribbon__text{
  margin:0!important;
  padding:0!important;
  font-size:10px!important;
  line-height:1.15!important;
  font-weight:600!important;
  white-space:nowrap!important;
}

/* Celular/tablet: exatamente 2 produtos por linha. */
@media(max-width:920px){
  .block-product__related-products{
    margin-top:52px!important;
  }
  .block-product__related-products .product-list__content{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .block-product__related-products .product-list-item{
    border-radius:12px!important;
  }
  .block-product__related-products .product-list-item__details{
    padding:9px 8px 8px!important;
  }
  .block-product__related-products .product-list-item__title{
    font-size:13px!important;
    line-height:1.22!important;
  }
  .block-product__related-products .product-list-item__price-wrapper,
  .block-product__related-products .product-list-item__price-wrapper p,
  .block-product__related-products .product-list-item__price-wrapper span{
    font-size:12px!important;
  }
  .block-product__related-products .product-list-item__button-wrapper{
    padding:0 8px 9px!important;
  }
  .block-product__related-products .product-list-item__button{
    padding:8px 5px!important;
    font-size:11px!important;
  }
  a[href*="auto-refrator-totalmente-automatico-somente-sob-consulta"] .ecommerce-product-ribbon{
    top:5px!important;
    left:5px!important;
    padding:2px 6px!important;
  }
  a[href*="auto-refrator-totalmente-automatico-somente-sob-consulta"] .ecommerce-product-ribbon__text{
    font-size:9px!important;
  }
}
