/* Consistent product cards and layouts from small phones to desktop. */
html{scroll-padding-top:20px}body{overflow-wrap:anywhere}img{max-width:100%}button,input,select,textarea{min-width:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}main,.hero>div,.story>div,.footer-columns>div{min-width:0}
header{display:grid;grid-template-columns:1fr auto;gap:0 20px;padding:20px 6% 0}header>a{justify-self:start;margin-bottom:20px}header>a img{display:block;width:150px;max-height:100px;object-fit:contain}header>.bag{grid-column:2;grid-row:1;margin-bottom:20px;min-height:44px}.menu-toggle{display:none}header nav{grid-column:1/-1;grid-row:2;width:auto;margin:0 -6.82%;padding:10px 6.82%;flex-wrap:wrap;gap:4px 22px;align-items:center}header nav[hidden]{display:none}.menu-group>a{padding:10px 0;line-height:1.4}.submenu-toggle{min-width:44px;min-height:44px}.submenu{min-width:min(240px,80vw);max-width:min(320px,85vw)}.menu-item:last-child .submenu{left:auto;right:0}
.grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.card{display:flex;flex-direction:column;min-width:0}.card>.productphoto,.card>.picture{flex:none;width:100%;height:auto;aspect-ratio:1;min-height:0;object-fit:contain;display:flex}.card>.productphoto{display:block}.details{display:flex;flex-direction:column;flex:1;min-width:0;padding:22px;gap:0}.details h3{font-size:23px;line-height:1.25;height:2.5em;flex:none;margin:0 0 10px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.details>p{font-size:13px;line-height:1.6;height:4.8em;min-height:0;flex:none;margin:0 0 14px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.details .price{font-size:20px;line-height:1.35;min-height:2.7em;display:flex;align-items:center;margin:0 0 14px}.details>button{margin-top:auto;min-height:54px;line-height:1.4;padding:10px 12px;white-space:normal}.search{min-height:44px}.filters button{min-height:44px;white-space:normal;max-width:100%;line-height:1.4}.filters{align-items:stretch}
dialog{width:min(calc(100% - 24px),560px);max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:24px;overflow:auto;overscroll-behavior:contain}dialog h2{overflow-wrap:anywhere;padding-right:20px}.close{min-width:44px;min-height:44px;position:sticky;top:0;z-index:2}dialog input,dialog select,dialog textarea{font-size:16px;max-width:100%;min-height:44px}dialog input[type=radio],dialog input[type=checkbox]{min-height:auto}#productDesc{display:flow-root}#productDesc>*{max-width:100%}#gallery>img{height:auto;max-height:340px;aspect-ratio:1;object-fit:contain}.choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.choice{width:100%;min-width:0;margin:0}.option-button{min-height:44px;max-width:100%;line-height:1.4}.cartrow{display:flow-root;overflow-wrap:anywhere}.cartthumb{margin:0 0 8px 12px}.cart-actions{grid-template-columns:1fr 1.2fr}.cart-actions button{min-height:48px}.footer-link,.footer-columns a{min-height:32px}.copyright{padding-bottom:60px}.whatsapp-float{bottom:max(16px,env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right))}.banner-controls{gap:8px}.banner-dot{width:32px;height:44px;border:0;position:relative;background:transparent!important;flex:none}.banner-dot::after{content:'';position:absolute;width:10px;height:10px;border:1px solid #456b6e;border-radius:50%;left:10px;top:16px;box-sizing:border-box;background:white}.banner-dot[aria-current=true]::after{background:#456b6e}.banner-dots{flex-wrap:wrap;justify-content:center;gap:0;max-width:100%}.banner-toggle{min-height:44px}.banner-arrows button{min-height:44px;min-width:44px}
@media(min-width:701px) and (max-width:1023px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{gap:24px;padding:45px 5%}.hero h1{font-size:46px}.scene{height:300px}.scene>.book{width:130px;height:190px}.footer-columns{gap:30px}}
@media(max-width:900px){header{grid-template-columns:44px minmax(0,1fr) auto;padding:14px 5%;gap:12px}header>a{grid-column:2;grid-row:1;margin:0;justify-self:center}header>a img{width:110px;max-height:75px}header>.bag{grid-column:3;grid-row:1;margin:0;padding:10px 12px;font-size:13px;line-height:1.4}.bag .bag-label{display:none}.menu-toggle{display:inline-flex;grid-column:1;grid-row:1;align-items:center;justify-content:center;padding:10px;width:44px;height:44px;background:#f3dddd;color:#30494b}.menu-toggle svg{width:24px;height:24px}.menu-toggle .menu-close-icon{display:none}.menu-toggle[aria-expanded=true] .menu-open-icon{display:none}.menu-toggle[aria-expanded=true] .menu-close-icon{display:block}header nav{grid-column:1/-1;grid-row:2;width:auto;margin:2px -5.56% -14px;padding:12px 5.56%;flex-direction:column;align-items:stretch;gap:0;white-space:normal;overflow:visible;font-size:15px;max-height:70dvh;overflow-y:auto;border-top:1px solid #dfc4c1}.menu-item{width:100%}.menu-group{padding:0;justify-content:space-between;gap:8px}.menu-group>a{flex:1;min-height:44px;display:flex;align-items:center}.submenu,.menu-item:last-child .submenu{position:static;min-width:0;max-width:none;width:100%;box-shadow:none;margin-bottom:8px}.submenu a{font-size:14px;min-height:44px}.menu-item+.menu-item{border-top:1px solid #e4cbc8}}
@media(max-width:700px){.top{font-size:10px;letter-spacing:1px;padding:8px 16px}.hero h1{font-size:clamp(36px,10vw,43px)}.hero{padding:32px 6%}.benefits{flex-wrap:wrap;justify-content:center;font-size:12px;padding:16px;gap:8px 18px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.details{padding:12px}.details h3{font-size:18px}.details>p{font-size:12px}.details .price{font-size:17px}.details>button{font-size:12px;min-height:54px;padding:10px 8px}.section{padding:32px 5%}h2{font-size:30px}.story{padding:24px;gap:12px}.footer-columns{gap:24px}.footer-columns a,.footer-link{min-height:44px;display:flex;align-items:center;margin:0}.whatsapp-float{width:52px;height:52px;padding:12px;justify-content:center}.whatsapp-float>span{display:none}.copyright{line-height:1.7;padding-bottom:65px}dialog{padding:18px}dialog h2{font-size:26px}.cart-actions{grid-template-columns:1fr}.banner-slide.has-mobile img{aspect-ratio:4/5}.banner-arrows{left:8px;right:8px}}
@media(max-width:359px){header{gap:8px}header>a img{width:90px}header>.bag{font-size:12px;padding:8px}.grid{grid-template-columns:minmax(0,1fr)}.details{padding:18px}.details h3{font-size:21px}.details .price{font-size:20px}.details>button{font-size:14px}.footer-columns{grid-template-columns:1fr}.footer-columns>div:first-child{grid-column:auto}}
@media(max-width:700px){.filters{flex-wrap:nowrap;overflow-x:auto;padding:3px 3px 10px;scroll-padding-inline:3px;gap:8px;-webkit-overflow-scrolling:touch}.filters button{flex:0 0 auto;max-width:85%;white-space:normal}.filters::-webkit-scrollbar{height:4px}.filters::-webkit-scrollbar-thumb{background:#c4d6d5;border-radius:4px}}
/* Institutional content lives on its own page. */
#sobre[hidden]{display:none}.about-page{padding:52px 5% 64px;min-height:50vh}.about-page h1{font:clamp(32px,4vw,46px)/1.15 Georgia,serif;margin:14px 0 30px}.about-layout{display:grid;gap:36px;align-items:start}.about-layout.has-photo{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.about-copy,.about-photos{min-width:0}.about-photos[hidden]{display:none}.about-photos figure[data-page-photo]{margin-top:0;margin-bottom:18px}.about-photos figure[data-page-photo]>img{height:auto;max-height:440px;object-fit:contain;object-position:top center}.about-view .hero,.about-view #bannerCarousel,.about-view .benefits,.about-view #catalogo,.about-view #como{display:none!important}.about-home-link{display:inline-flex;min-height:44px;align-items:center;margin-bottom:24px;text-decoration:underline;font-size:14px}#como.story{display:block;max-width:900px;margin-inline:auto}#como .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}#como .steps h3,#como .steps>a{grid-column:1/-1}#como .steps h3{font:28px Georgia,serif;margin:0 0 16px}
@media(max-width:700px){.about-page{padding:30px 6% 45px}.about-layout.has-photo{grid-template-columns:1fr;gap:24px}.about-layout.has-photo .about-photos{grid-row:1}.about-photos figure[data-page-photo]>img{max-height:300px}.about-page h1{margin-bottom:24px}#como.story{margin:20px 5% 45px}#como .steps{display:block}}
/* Keep the brand centered independently of the controls on either side. */
header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}header>a{grid-column:2;grid-row:1;justify-self:center}header>.bag{grid-column:3;justify-self:end;display:flex;align-items:center;gap:3px}.cart-icon{display:none}header nav{align-items:center}.menu-group{min-height:44px;align-items:center;padding-block:0}.menu-group>a{display:flex;align-items:center;min-height:44px;line-height:1.4;padding-block:0}.menu-group>.submenu-toggle{height:44px;flex:none;padding:0 9px}.installment-offer{display:flex;align-items:flex-start;font-size:12px;line-height:1.5;min-height:4.5em;margin:-8px 0 10px;overflow-wrap:anywhere}.personalization-info{margin:24px 0 16px;padding:14px 16px;background:#f4f8f7;border-radius:8px;white-space:pre-line}.personalization-info h3{font:24px/1.3 Georgia,serif;margin:0 0 8px}.personalization-info h4{font-size:18px;line-height:1.4;margin:0 0 8px}.personalization-info p{margin:0}.personalization-info .muted{margin-top:6px}.personalization-info.subheading{background:transparent;padding:4px 0}.personalization-info.info{border-left:3px solid #9bb6b8}.buy-shortcut{text-align:center;margin:0 5% 55px;padding:26px;background:#edf3f2;border-radius:10px}.buy-shortcut h2{font-size:28px;margin:0}.buy-view .hero,.buy-view #bannerCarousel,.buy-view .benefits,.buy-view #catalogo,.buy-view .buy-shortcut,.about-view .buy-shortcut{display:none!important}#comprar[hidden]{display:none}#buy-content{max-width:850px;line-height:1.75}#buy-content h2{font-size:27px;margin:28px 0 12px}#buy-content img{max-width:100%;height:auto}.about-view #comprar,.buy-view #sobre{display:none}
@media(max-width:900px){header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.menu-toggle{justify-self:start}header nav .menu-group{padding-block:2px}header>.bag{white-space:nowrap}.bag .bag-label{display:none}}
@media(max-width:380px){header>.bag{font-size:12px;padding:10px 8px}.cart-icon{display:inline-block}.cart-word{display:none}header>a img{width:100px}}
.installment-offer{display:none}.grid.has-installments .installment-offer{display:flex}
/* Footer inspired by the reference, using the DessaPaper palette. */
.site-footer{padding:42px 5% 22px;background:#f5e5e2;text-align:left}.site-footer .footer-columns{max-width:1300px;display:grid;grid-template-columns:1.25fr .85fr 1fr 1.2fr;gap:32px;margin:auto;padding:0 0 35px;align-items:start}.site-footer.has-socials .footer-columns{grid-template-columns:1.3fr .85fr 1fr 1.2fr .8fr}.site-footer .footer-columns>div{min-width:0}.site-footer h3{font:600 16px/1.4 Arial,sans-serif;color:#7e4b48;margin:0 0 18px}.site-footer p{font-size:13px;line-height:1.7;margin:0 0 16px}.site-footer .footer-brand>img{display:block;width:120px;height:auto;max-height:100px;object-fit:contain;object-position:left center;margin-top:18px}.site-footer .footer-columns a,.site-footer .footer-link{font-size:13px;line-height:1.6;margin:0 0 6px;min-height:32px;display:flex;align-items:center;overflow-wrap:anywhere}.site-footer .footer-columns a:hover,.site-footer .footer-link:hover{text-decoration:underline}.site-footer .footer-subtitle{margin-top:28px;margin-bottom:12px}.site-footer .footer-columns .footer-child{margin-left:12px;font-size:12px}.site-footer .footer-contact-line{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;font-size:13px;line-height:1.65}.footer-contact-line>svg{flex:none;color:#7e4b48;margin-top:2px}.footer-contact-line>div{min-width:0;white-space:pre-line}.site-footer .footer-contact-line a{min-height:0;margin:0}.site-footer .footer-social-icons{display:flex;gap:10px;flex-wrap:wrap}.site-footer .footer-social-icons a{display:inline-flex;justify-content:center;align-items:center;width:44px;height:44px;min-height:44px;border-radius:50%;background:#567b7d;color:white;margin:0;flex:none}.site-footer .footer-social-icons a:hover{background:#30494b}.site-footer #footerSocialSection[hidden]{display:none}.footer-payment{max-width:1300px;border-top:1px solid #dac5c1;padding:27px 0;margin:auto;display:flex;align-items:center;gap:24px 48px;flex-wrap:wrap}.site-footer .footer-payment h3{margin:0}.footer-payment-methods{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.site-footer .footer-payment-methods p{margin:0;font-size:12px}.payment-badge{display:inline-flex;min-height:32px;align-items:center;padding:5px 9px;background:#fffdfb;border:1px solid #e1d7d3;border-radius:4px;font-size:11px;font-weight:700;color:#30494b}.payment-visa{color:#1a4380;font-style:italic;font-size:15px}.payment-mastercard::before{content:'';display:block;flex:none;width:22px;height:14px;margin-right:6px;background:radial-gradient(circle at 7px 7px,#df4e40 0 7px,transparent 7px),radial-gradient(circle at 15px 7px,#eda746 0 7px,transparent 7px)}.payment-pix{color:#286b64}.payment-pix::before{content:'◆';margin-right:5px;color:#41a99a}.payment-amex{background:#2e76a1;color:white}.footer-bottom{max-width:1300px;margin:auto;border-top:1px solid #dac5c1;padding-top:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.site-footer .copyright{border:0;padding:0;margin:0;font-size:10px;line-height:1.7}.footer-admin{font-size:11px;text-decoration:underline;white-space:nowrap}.payment-settings{display:flex;gap:8px 24px;flex-wrap:wrap}.payment-settings label{min-width:140px;margin:5px 0;min-height:32px;display:flex;align-items:center;gap:8px}
@media(min-width:701px) and (max-width:1050px){.site-footer .footer-columns,.site-footer.has-socials .footer-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.site-footer .footer-brand{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;column-gap:24px}.site-footer .footer-brand h3{grid-column:1}.site-footer .footer-brand>p{grid-column:1;max-width:550px}.site-footer .footer-brand>img{grid-column:2;grid-row:1/3;align-self:center;margin:0}.site-footer #footerSocialSection{grid-column:1/-1}}
@media(max-width:700px){.site-footer{padding:30px 6% 80px}.site-footer .footer-columns,.site-footer.has-socials .footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px;padding-bottom:26px}.site-footer .footer-brand,.site-footer #footerSocialSection{grid-column:1/-1}.site-footer .footer-brand>p{max-width:100%}.site-footer .footer-columns a,.site-footer .footer-link{min-height:44px;margin:0}.site-footer .footer-contact-line a{min-height:32px}.site-footer .footer-contact-line{margin-bottom:10px}.site-footer h3{font-size:15px;margin-bottom:12px}.footer-payment{padding:24px 0;display:block}.site-footer .footer-payment h3{margin-bottom:15px}.footer-bottom{flex-direction:column;gap:12px}.site-footer .copyright{padding-bottom:0}.site-footer .footer-admin{min-height:32px;display:flex;align-items:center}}
@media(max-width:359px){.site-footer .footer-columns,.site-footer.has-socials .footer-columns{grid-template-columns:minmax(0,1fr)}.site-footer .footer-brand,.site-footer #footerSocialSection{grid-column:auto}}
@media(max-width:700px){.site-footer .footer-columns>div:nth-child(4){grid-column:1/-1}}

/* Keep submenu arrows optically centered with their label and evenly spaced. */
header nav{column-gap:24px;row-gap:4px}.menu-group{gap:2px}.menu-group>.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:44px;min-height:44px;padding:0;line-height:0}.submenu-toggle svg{display:block;flex:none;transition:transform .18s ease}.submenu-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
/* The owner shortcut stays in the document flow, clear of the contact button. */
.site-footer{padding-bottom:90px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:18px}.footer-owner-access[hidden]{display:none}.footer-owner-access{order:-1;max-width:100%}.site-footer .footer-admin{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #9bb6b8;border-radius:6px;background:#fffdfb;color:#30494b;font-size:13px;white-space:normal;text-decoration:none}.footer-admin:hover{background:#edf3f2}.footer-admin:focus-visible,.submenu-toggle:focus-visible{outline:2px solid #30494b;outline-offset:3px}
@media(max-width:900px){header nav{gap:0}.menu-group{justify-content:flex-start;gap:2px}.menu-group>a{flex:0 1 auto;min-width:0}.menu-group>.submenu-toggle{width:44px;min-width:44px}.menu-group{min-height:48px}}
@media(prefers-reduced-motion:reduce){.submenu-toggle svg{transition:none}}

.customer-file{padding:14px;background:#f3f7f6;border:1px solid #d4e1df;border-radius:7px;margin:16px 0}.customer-file input{width:100%}.customer-file p{overflow-wrap:anywhere}.customer-file button[hidden]{display:none}#orderNext[hidden],#orderFeedback[hidden]{display:none}#orderNext a{white-space:normal;line-height:1.5}

/* Open menus smoothly while keeping the panel connected to its parent. */
header nav .submenu:not([hidden]){animation:submenu-reveal .18s ease-out both;transform-origin:top center}header nav .submenu a{transition:background-color .14s ease,color .14s ease}header nav .submenu a:hover,header nav .submenu a:focus-visible{background:#f6e5e2;color:#653f3b}header nav .submenu a:focus-visible{outline:2px solid #9bb6b8;outline-offset:-2px}.menu-item.is-open>.menu-group>a{color:#7e4b48}
@keyframes submenu-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){header nav .submenu:not([hidden]){animation:none}header nav .submenu a{transition:none}}
