*{box-sizing:border-box} :root{--ink:#111;--cream:#f5f2ec;--gold:#c6b18a;--accent:#765d38;--muted:#625d55;--line:#e4ddd2;--serif:Georgia,'Times New Roman',serif;--wrap:min(92%,1680px)}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{margin:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:#fff;color:var(--ink);font:16px/1.5 system-ui,sans-serif}main{flex:1}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,select{cursor:pointer}button{background:none;border:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #8a6735;outline-offset:3px}svg{width:22px;height:22px;flex:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04}h2{font-size:clamp(2rem,3.6vw,4rem);letter-spacing:-.045em}em{font-weight:400;color:var(--accent)}[hidden]{display:none!important}.wrap{width:var(--wrap);margin-inline:auto}.skip{position:fixed;top:0;left:1rem;z-index:3;background:white;padding:.8rem;transform:translateY(-120%)}.skip:focus{transform:none}.notice{text-align:center;background:#181613;color:#f5ece0;font-size:.65rem;font-weight:650;letter-spacing:.17em;padding:.5rem .7rem}.notice span{color:var(--gold);margin:0 .45rem}header{background:#fff;border-bottom:1px solid var(--line)}.bar{min-height:85px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem}.logo{width:106px;display:block}.bar nav,.tools,.actions{display:flex;align-items:center;gap:clamp(.6rem,2.3vw,2.25rem)}.bar nav a{font-size:.89rem;padding:.7rem .1rem}.bar nav a:hover,.link:hover{text-decoration:underline}.tools{justify-content:end;gap:.5rem}.icon,.round,.close{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.bag{gap:.35rem}.bag span{background:#181613;color:white;min-width:22px;height:22px;border-radius:30px;font-size:.7rem;display:grid;place-items:center;padding:0 .25rem}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);max-width:1850px;margin:auto}.hero-copy{align-self:center;padding:clamp(2rem,6vw,7rem) clamp(1.1rem,6.2vw,7rem)}.eyebrow{display:block;text-transform:uppercase;font-weight:680;letter-spacing:.15em;font-size:.67rem}.gold{color:var(--accent);margin-bottom:.75rem}.hero h1{font-size:clamp(3.1rem,6.05vw,7.4rem);letter-spacing:-.07em;line-height:.92}.hero p{margin:1.45rem 0;color:var(--muted);max-width:34ch}.hero-image{position:relative;min-height:390px}.hero-image img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 37%}.hero-image>span{position:absolute;bottom:1.1rem;right:1.25rem;color:#fff;background:#1b140eaa;padding:.45rem .7rem;font-size:.63rem;letter-spacing:.22em}.hero-image i{display:inline-block;width:15px;vertical-align:middle;border-top:1px solid var(--gold);margin:0 .3rem}.actions{flex-wrap:wrap;gap:.65rem}.button{min-height:47px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;background:var(--ink);border:1px solid var(--ink);color:#fff;font-weight:620;font-size:.86rem;padding:.65rem 1rem;text-align:center}.button svg{width:18px;height:18px}.button:hover{background:#333}.button.outline{background:transparent;color:var(--ink);border-color:#998d7c}.button.outline:hover{background:#e9e1d5}.button:disabled{opacity:.5;cursor:not-allowed}.collection,.featured{padding-block:clamp(2.5rem,5vw,5rem)}.featured{padding-top:0}.featured .grid{margin-top:1.2rem}.section-top,.results,.contact-inner{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap}.search{display:flex;align-items:center;gap:.6rem;border:1px solid var(--line);padding:.2rem .8rem;min-height:46px;width:min(100%,310px)}.search input{width:100%;min-width:0;border:0;padding:.35rem;background:transparent}.chips{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.35rem}.chips button,.options span{border:1px solid var(--line);border-radius:30px;min-height:44px;padding:.5rem .85rem;font-size:.82rem}.chips button[aria-pressed=true],.options input:checked+span{background:var(--ink);color:white;border-color:var(--ink)}.results{margin:1rem 0;color:var(--muted);align-items:center;font-size:.85rem}.results select{min-height:44px;border:1px solid var(--line);background:white;margin-left:.25rem}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.6rem,1.6vw,1.5rem)}.card{border:1px solid var(--line);min-width:0}.card-image{display:block;position:relative;background:var(--cream)}.card-image img{width:100%;aspect-ratio:1/1.1;object-fit:cover;object-position:center top}.card-image span{position:absolute;top:.65rem;left:.65rem;background:#fffcf5;color:#54462f;padding:.3rem .45rem;font-size:.59rem;letter-spacing:.1em;font-weight:700}.card-body{padding:clamp(.55rem,1.5vw,1.15rem)}.card-body .eyebrow{color:var(--accent);letter-spacing:.08em}.card h3{font-size:clamp(1.12rem,2vw,1.85rem);margin-top:.35rem;overflow-wrap:anywhere}.card-end{display:flex;align-items:center;justify-content:space-between;gap:.2rem;margin-top:.35rem}.card-end strong{font-size:.88rem;white-space:nowrap}.round{border:1px solid var(--line);border-radius:50%}.round:hover{background:var(--cream)}.round svg{width:17px}.about{background:var(--cream)}.about-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:clamp(1rem,5vw,5rem);padding-block:clamp(1.6rem,4vw,3.5rem)}.about img{width:100%;max-height:360px;object-fit:cover;object-position:center 60%}.about p,.contact p{margin-top:.8rem;color:var(--muted);max-width:48ch}.contact-inner{align-items:center;padding-block:2rem}footer{background:#faf8f4;border-top:1px solid var(--line)}.foot{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:1rem;padding-block:1.6rem}.foot div{display:grid;align-content:start}.foot div a,.foot button{font-size:.86rem;margin-top:.35rem}.link{text-align:left;padding:0;text-decoration:underline;text-underline-offset:.2em}.fine{border-top:1px solid var(--line);padding-block:.65rem;font-size:.75rem;color:var(--muted)}.product,.missing{padding-block:1.5rem 3rem}.missing p{margin:1rem 0}.back{display:inline-block;padding:.5rem 0;margin-bottom:1rem;text-decoration:underline;text-underline-offset:.2em}.product-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:clamp(1rem,5vw,5rem)}.product-photo{width:100%;max-height:680px;object-fit:contain;background:var(--cream)}.product-info h1,.missing h1{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.05em}.sku{display:block;margin-top:.7rem;color:var(--muted);font-size:.82rem}.price{font-size:1.35rem;font-weight:650;margin:.8rem 0 .4rem}.thumbs,.options{display:flex;gap:.5rem;flex-wrap:wrap}.thumbs{margin-top:.6rem}.thumbs button{padding:.15rem;border:1px solid var(--line);width:68px}.thumbs button[aria-pressed=true]{border-color:#111}fieldset{border:0;padding:0;margin:.85rem 0}legend,.qty{font-weight:620;margin-bottom:.4rem}.options label{position:relative;cursor:pointer}.options input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.options span{display:grid;place-items:center;min-width:46px}.options input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.options input:disabled+span{opacity:.45;text-decoration:line-through}.qty input{width:76px;min-height:44px;border:1px solid var(--line);padding:.4rem;margin-left:.35rem}#stock{font-size:.82rem;margin:.5rem 0;color:var(--muted)}.share{display:block;margin-top:.8rem;min-height:44px}dialog{border:0;color:var(--ink);padding:1.15rem;max-height:calc(100dvh - 1.5rem);width:min(94%,530px);box-shadow:0 10px 60px #0004}dialog::backdrop{background:#17130fa0}#bag{margin:0 0 0 auto;max-width:100%;height:100dvh;max-height:100dvh}.drawer-head{display:flex;justify-content:space-between;gap:.5rem;align-items:center;border-bottom:1px solid var(--line);padding-bottom:.7rem}.drawer-head h2{font-size:2rem}.close{font-size:1.6rem}.line{display:grid;grid-template-columns:68px minmax(0,1fr);gap:.75rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.line img{width:68px;aspect-ratio:1;object-fit:cover}.line h3{font-size:1.2rem}.line p{font-size:.83rem;color:var(--muted);margin:.2rem 0}.line .qty,.line .link{font-size:.82rem}.line .link{min-height:44px;margin-left:.6rem}.empty-bag,#order-info{margin:.8rem 0}.total{display:flex;justify-content:space-between;gap:.5rem;margin:1rem 0 .5rem}#bag-total .button{width:100%}.bag-note{font-size:.8rem;color:var(--muted);margin:.5rem 0}#order-text{width:100%;min-height:12rem;resize:vertical;border:1px solid var(--line);padding:.5rem;margin-bottom:.5rem}.toast{position:fixed;z-index:2;bottom:1rem;right:1rem;max-width:calc(100% - 2rem);background:#111;color:white;padding:.65rem .9rem;pointer-events:none}.toast:empty{display:none}.dialog-feedback{font-size:.82rem;margin:.5rem 0}.contact-unavailable{margin:.65rem 0}
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-copy{padding:2rem}.hero-image{min-height:345px}}
@media(max-width:670px),(pointer:coarse) and (max-width:1050px) and (orientation:portrait){.bar{grid-template-columns:1fr 1fr;gap:0;min-height:0;padding-top:.25rem}.bar nav{grid-area:2/1/3/-1;justify-content:center;gap:clamp(.8rem,6vw,2.5rem);border-top:1px solid var(--line)}.logo{width:85px}.hero{grid-template-columns:1fr}.hero-copy{padding:1.8rem 4%}.hero h1{font-size:clamp(3.35rem,11vw,5.2rem)}.hero p{margin:.85rem 0 1rem}.hero-image{min-height:0;aspect-ratio:1.45}.hero-image img{object-position:center 5%}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-inner{grid-template-columns:1fr}.about img{max-height:240px}.foot{grid-template-columns:1fr 1fr}.foot>.logo{grid-column:1/-1}.product-grid{grid-template-columns:1fr}.product-photo{max-height:490px}.section-top{align-items:start}.search{width:100%}.notice{letter-spacing:.095em}.chips{margin-top:.85rem}}
@media(pointer:coarse) and (min-width:671px) and (max-width:1050px) and (orientation:landscape){.button,.chips button{font-size:1rem}.hero-copy{padding:1.4rem}.hero-image{min-height:300px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Páginas da boutique */
.bar nav a[aria-current="page"]{color:var(--accent);text-decoration:underline;text-underline-offset:.45em}
.collection h1,.about h1,.contact h1{font-size:clamp(2.25rem,4.4vw,4.65rem);letter-spacing:-.045em}
.featured{padding-top:clamp(2.5rem,5vw,5rem)}
.all-pieces,.page-actions{margin-top:1.25rem}
.contact-page{display:flex;flex-direction:column;justify-content:center;background:var(--cream)}
.contact-page .contact{padding-block:clamp(.5rem,3vw,2.5rem)}
.card-image{overflow:hidden}
.card-image span{z-index:1}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .card-image img{transition:transform .36s ease}
  .card:hover .card-image img,.card:focus-within .card-image img{transform:scale(1.045)}
}
@media(max-width:670px),(pointer:coarse) and (max-width:1050px) and (orientation:portrait){
  .bar nav{gap:clamp(.55rem,3.5vw,1.8rem)}
  .bar nav a{white-space:nowrap}
}


@media (prefers-reduced-motion:no-preference){
  .copy-pulse{animation:copy-pulse 1.2s ease-in-out 4}
}
@keyframes copy-pulse{
  50%{box-shadow:0 0 0 6px #ad8c51bb;transform:scale(1.035)}
}


#order-direct,#order-steps{margin:0 0 1rem}
#order-steps{padding-inline-start:1.55rem}
#order-steps li+li{margin-top:.5rem}
#order-steps li::marker{font-weight:700;color:var(--accent)}

.order-progress{margin:.3rem 0;color:var(--accent);font-weight:700}
#order-steps h3{font-size:1.45rem}
#order-steps section>p:last-child{margin:0}
.order-illustration{display:block;width:100%;height:5rem;margin:.45rem 0;color:var(--accent);background:var(--cream)}
#order-text{min-height:5.5rem}
#order-next:disabled{opacity:.55}
