/* Readability and interaction baseline for WCAG 2.2 AA review. */
:root{--ink:#293d2c;--muted:#526448;--accent:#3c5730;--control-border:#73826a;--focus:#254a78}
html{font-size:100%;scroll-padding-block:1.5rem;scroll-behavior:auto}body{font-size:1rem;line-height:1.6;color:var(--ink)}
main,section,form,fieldset,.wrap,.header,.header-identity,.header-links,.hero-story,.product,.row-info{min-width:0}
:where(a,button,input,textarea,summary){scroll-margin-block:6rem}
:is(a,button,input,textarea,summary):focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 5px #fffef8}
.skip-link{position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%);z-index:100;background:#fffef8;color:var(--ink);padding:.75rem 1rem;border:2px solid var(--ink);border-radius:.3rem;font-size:1rem}
.skip-link:focus{transform:none}main:focus{outline:none}
.header{flex-wrap:wrap;gap:.75rem;padding-block:1rem}.header-identity{gap:.75rem}.header-tagline{font-size:.875rem;line-height:1.5;white-space:normal;max-width:20rem;overflow-wrap:normal;padding-left:.75rem}.header .header-links{font-size:.875rem}.cart-link{min-height:44px;flex-wrap:wrap;border-color:var(--control-border)}.cart-link>span{font-size:.875rem;min-width:1.5rem;height:auto;min-height:1.5rem}
.hero{grid-template-columns:minmax(0,1fr) minmax(0,.65fr);gap:1.25rem;padding-block:1.75rem}.hero-copy,.hero-copy h1{display:block}.hero-copy{grid-column:1;grid-row:1}.hero-question,.hero-copy h1>em{display:block}.hero h1{font-size:clamp(2rem,4.5vw,3.625rem);line-height:1.15;letter-spacing:-.03em}.hero-copy h1>em{white-space:normal;color:var(--muted)}.hero-brand-photo{grid-column:2;grid-row:1;align-self:center}.hero-story{grid-column:1/-1;grid-row:2;margin-top:0;max-width:42rem}.hero-background .hero-story>p:not(.hero-invitation){font-size:1rem;line-height:1.65;color:var(--ink);text-align:left;hyphens:none;margin-bottom:.875rem}.hero-story>p.hero-invitation{font-size:1.625rem;line-height:1.3;color:var(--accent);margin-top:1rem}.hero-story .text-link,.text-link{font-size:1rem;line-height:1.5;min-height:44px;color:var(--accent);border-color:var(--control-border);white-space:normal}
.eyebrow,.section-heading .eyebrow{font-size:.875rem;line-height:1.6;letter-spacing:.06em;color:var(--muted)}.section-heading{align-items:flex-start;flex-wrap:wrap}.section-heading>span{font-size:.875rem;line-height:1.5;color:var(--muted);white-space:normal;max-width:none}.section-heading h2,.order .section-heading h2{font-size:clamp(1.875rem,4vw,2.5rem);line-height:1.15}.section-heading h2 em,.footer-signature em{color:var(--muted)}
.products{gap:1rem}.product h3{font-size:1.375rem;line-height:1.25;letter-spacing:-.02em;overflow-wrap:anywhere}.product-caption{font-size:.875rem;line-height:1.5;color:var(--muted)}.product-price{font-size:1.25rem;line-height:1.4}.product-add,.product-add>.add-label{font-size:.875rem;line-height:1.5}.product-add{min-height:44px;gap:.5rem;border-color:var(--control-border)}.details-button{width:44px;height:44px;background:#fffef8}.reference,.dialog-copy .reference{font-size:.875rem;line-height:1.6;color:var(--muted)}
.order .order-brand-band .band-tagline{font-size:.875rem;line-height:1.5;color:#f5ead3;white-space:normal;letter-spacing:0}.cart-empty a,.order .cart-empty a{min-height:44px;font-size:.875rem;line-height:1.5;color:var(--accent)}
.order-content{align-items:start}.cart-row{display:grid;grid-template-columns:38px minmax(0,1fr) 44px;gap:.75rem;padding-block:.875rem}.cart-row>.row-info{grid-column:2;grid-row:1}.cart-row>.remove{grid-column:3;grid-row:1}.cart-row>.quantity{grid-column:2/4;justify-self:start;grid-row:2}.row-info strong{font-size:1rem;line-height:1.5}.row-info>span{font-size:.875rem;color:var(--muted)}.quantity{height:auto;min-height:46px;border-color:var(--control-border)}.quantity>button{width:44px;min-width:44px;height:44px;font-size:1.25rem}.quantity input{font-size:1rem;width:3.5rem;min-height:44px}.remove{width:44px;height:44px;color:var(--accent);font-size:1.5rem}
.order-finish{padding:1.25rem 1rem 5rem}.order-finish::before,.order-finish::after{bottom:.5rem}.order-finish .cart-form-title{font-size:2rem;line-height:1.2;min-height:0;padding-top:0;color:var(--accent)}
.order-finish .order-form-intro,.order-finish #pickup-help,.order-finish .delivery-info>p,.order-finish .send-label,.order-finish .send-note{font-size:1rem;line-height:1.6;color:var(--muted)}.required-note,.required-mark{font-size:.875rem;line-height:1.6;color:var(--muted)}.order-finish .customer-field label,.delivery-info>.delivery-label{font-size:1rem;line-height:1.5;color:var(--accent)}.order-finish .customer-field input{font-size:1rem;height:auto;min-height:48px;line-height:1.5;border-color:var(--control-border);padding:.625rem .75rem}.customer-field input::placeholder,.order textarea::placeholder{color:#637058;opacity:1}.order-finish .customer-fields{gap:1rem}.order-finish .customer-field-date>small{max-width:100%;width:auto}.order-finish .total{min-height:48px;flex-wrap:wrap;gap:.5rem}.total>span,.order-finish .total>strong{font-size:1rem;line-height:1.5;color:var(--ink)}.order-finish .total>strong{font-size:1.25rem;white-space:normal;overflow-wrap:anywhere}.delivery-info>p{max-width:none}
.payment-field legend,.pix-choice strong{font-size:1rem;color:var(--accent)}.pix-choice small,.pix-information>small,.pix-information>.pix-empty,.pix-checkout>small,.pix-qr-hint,.pix-code-label,#pix-code-status{font-size:.875rem;line-height:1.6;color:var(--muted)}.pix-choice input{width:1.25rem;height:1.25rem}.pix-choice{min-height:44px}.pix-qr-title{font-size:1rem;color:var(--ink)}.pix-qr-title strong{font-size:1.25rem}.pix-qr{max-width:100%}#pix-code{font-size:1rem;line-height:1.5;min-height:6rem;resize:vertical;border-color:var(--control-border)}.pix-copy-code{font-size:1rem;line-height:1.5;padding:.625rem;min-height:44px}
.send-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.send-options .button,.button{font-size:1rem;line-height:1.5;min-height:48px;padding:.625rem;white-space:normal}.button.secondary{border-color:var(--control-border)}.button[aria-disabled=true]{opacity:1;background:#e1e6d9;color:#59664e;border-color:#73826a}.send-note{overflow-wrap:break-word}
.site-footer .footer-contacts>a{font-size:.875rem;line-height:1.6;min-height:44px;padding-block:.5rem;overflow-wrap:anywhere;color:var(--accent)}.site-footer .footer-bottom{font-size:.875rem;line-height:1.6;color:var(--muted)}.footer-signature{color:var(--muted)}.footer-contacts>a>span{min-width:0}.footer-social>svg{flex-shrink:0}
.whatsapp-float>span{font-size:.875rem;white-space:normal;max-width:12rem;min-width:8rem}.whatsapp-float:focus-visible{outline-color:#254a78}.order-finish:focus-within~.whatsapp-float{visibility:hidden}body:has(.order-finish :focus)>.whatsapp-float,body:has(dialog[open])>.whatsapp-float{visibility:hidden}
dialog{width:min(calc(100% - 2rem),38rem);max-height:90dvh}.dialog-close{position:sticky;top:.5rem;float:right;width:44px;height:44px;margin:.5rem;background:#fffef8;color:var(--ink);border-color:var(--control-border)}.dialog-copy{clear:both;padding:1.25rem}.dialog-copy h2{font-size:2rem;line-height:1.2}.dialog-copy ul{font-size:1rem;line-height:1.6}.dialog-image{height:auto}.dialog-copy .eyebrow{font-size:.875rem}
@media(min-width:700px){.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:1.5rem 3rem}.hero-copy{grid-row:1}.hero-story{grid-column:1;grid-row:2}.hero-brand-photo{grid-row:1/3}.header-tagline{font-size:1rem}.order-finish{padding-inline:1.375rem}.order .customer-fields{grid-template-columns:minmax(0,1fr)}.order-finish .customer-field-date{grid-column:1;grid-row:2}.order-finish .customer-field-phone{grid-column:1;grid-row:3}}
@media(max-width:600px){.header-identity{flex-basis:100%}.header .header-links{margin-left:auto}.header-tagline{font-size:.875rem;max-width:none}.header-identity .brand>img.official-logo{width:64px;height:64px}.hero{grid-template-columns:minmax(0,1fr) minmax(0,.55fr)}.hero-brand-photo::after{width:60px;height:85px}.order-finish .customer-fields{grid-template-columns:minmax(0,1fr)}.order-finish .customer-field-date{grid-column:1;grid-row:2}.order-finish .customer-field-phone{grid-column:1;grid-row:3}}
@media(max-width:360px){.products{grid-template-columns:1fr}.product-photo{height:250px}.product-photo>img{width:100%;margin:0;object-fit:cover}.hero{grid-template-columns:minmax(0,1fr)}.hero-copy{grid-column:1;grid-row:1}.hero-story{grid-column:1;grid-row:3}.hero-brand-photo{grid-column:1;grid-row:2;max-width:180px;justify-self:start}.hero-brand-photo::after{display:none}.send-options{grid-template-columns:1fr}.order .section-heading>span{margin-top:.5rem}.site-footer .footer-inner{gap:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){input,textarea,button,.button,.cart-link,.quantity{border:1px solid CanvasText}.product-add,.details-button{border:1px solid ButtonText}.whatsapp-float{forced-color-adjust:auto;border:2px solid LinkText}:focus-visible{outline:3px solid Highlight}.hero-brand-photo::after,.order-finish::before,.order-finish::after{display:none}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Keep decoration in its own row, away from text and controls. */
.order-finish{padding-bottom:1.25rem}.order-finish::before,.order-finish::after{content:none;display:none}.order-leaves{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem;pointer-events:none}.order-leaves img{width:36px;height:49px;opacity:.45;object-fit:contain}.order-leaves img:first-child{transform:scaleX(-1)}@media(forced-colors:active){.order-leaves{display:none}}
.section-heading>div{min-width:0;max-width:100%}.section-heading h2,.section-heading .eyebrow{overflow-wrap:anywhere}
.site-footer{padding-bottom:max(6rem,calc(env(safe-area-inset-bottom) + 5rem))}

.product-add.added{border-color:var(--control-border)}

/* The order already offers WhatsApp; keep floating UI away from its content. */
body.viewing-order>.whatsapp-float{visibility:hidden}@media(max-width:360px),(max-height:480px){.whatsapp-float{position:static;margin:1rem 1rem 1rem auto;transform:none}.has-cart-dock .whatsapp-float{position:static}}
/* Long help words also reflow with enlarged text and custom letter spacing. */
.order-finish{padding-inline:clamp(12px,3vw,22px)}.order-finish p,.order-finish small,.order-finish label,.order-finish legend{overflow-wrap:anywhere}.order-finish input[type="date"]{padding-inline:.375rem}
