*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbf7f3;color:#332628;font-family:'DM Sans',sans-serif;transition:.3s}body.dark{--bg:#21191d;--surface:#2b2024;--ink:#f8efec;--muted:#bca9ab;--line:#49373b;--rose:#df91a6;--deep:#f2b1c2;background:var(--bg);color:var(--ink)}:root{--bg:#fbf7f3;--surface:#fffdfb;--ink:#332628;--muted:#8f7c7d;--rose:#bd7086;--deep:#9c536d;--line:#eadbd7;--gold:#c6a477}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.loader{position:fixed;inset:0;background:#fbf7f3;z-index:100;display:grid;place-content:center;justify-items:center;color:#9c536d;transition:opacity .4s}.loader.hide{opacity:0;pointer-events:none}.loader-logo{width:120px;height:120px;border:1px solid var(--gold);padding:8px;border-radius:50%;animation:pulse 1.5s infinite}.loader-logo img{width:100%;height:100%;border-radius:50%;object-fit:cover}.loader strong{font:500 25px 'Playfair Display',serif;margin-top:24px}.loader span{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#b59a97}.topbar{height:78px;position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,7vw,100px);background:rgba(251,247,243,.8);backdrop-filter:blur(16px);border-bottom:1px solid transparent}.dark .topbar{background:rgba(33,25,29,.82)}.brand{display:flex;align-items:center;gap:10px}.brand img{width:42px;height:42px;object-fit:cover;border-radius:50%;border:1px solid var(--gold)}.brand span{font:500 20px 'Playfair Display',serif}.brand em{color:var(--rose);font-style:italic}.topbar nav{display:flex;gap:30px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:1.5px}.actions{display:flex;gap:10px}.round,.bag,.close{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}.round{width:38px;height:38px;border-radius:50%}.bag{border-radius:24px;padding:9px 14px}.bag b{display:none;background:var(--rose);color:white;border-radius:50%;padding:2px 6px;margin-left:4px;font-size:10px}.hero{min-height:780px;padding:160px clamp(24px,8vw,130px) 100px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;background:radial-gradient(circle at 77% 44%,rgba(221,183,179,.2),transparent 33%),var(--bg)}.hero-copy{max-width:580px}.hero-copy small,.heading small,.closing small,.contact small{color:var(--rose);font-size:10px;letter-spacing:2px;font-weight:700}.hero h1,.heading h2,.closing h2,.contact h2{font:500 clamp(48px,6vw,84px)/.98 'Playfair Display',serif;letter-spacing:-3px;margin:22px 0}.hero h1 em,.heading em,.closing em,.contact em{color:var(--rose);font-style:italic}.hero p{max-width:430px;color:var(--muted);line-height:1.8;font-size:14px}.cta{display:inline-flex;background:var(--rose);color:white;padding:15px 21px;margin-top:25px;font-size:12px;font-weight:700;gap:20px}.hero-art{height:500px;position:relative;display:grid;place-items:center}.hero-glow{width:390px;height:390px;border-radius:50%;background:linear-gradient(135deg,#f0d7d0,#e4aeb5);opacity:.45;filter:blur(4px)}.hero-card{position:absolute;width:230px;height:300px;border:7px solid var(--surface);border-radius:120px 120px 8px 8px;overflow:hidden;box-shadow:0 24px 60px rgba(82,47,49,.16)}.hero-card img{width:100%;height:100%;object-fit:cover}.hero-card.back{transform:translate(-95px,45px) rotate(-12deg);opacity:.8}.hero-card.front{transform:translate(35px,-40px) rotate(7deg)}.hero-card span{position:absolute;bottom:15px;left:14px;background:#fffdfbe8;padding:8px 11px;color:#9c536d;font-size:10px}.promises{padding:28px clamp(24px,8vw,130px);display:grid;grid-template-columns:repeat(3,1fr);gap:30px;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.promises div{display:grid;grid-template-columns:30px 1fr;column-gap:12px}.promises b{grid-row:span 2;color:var(--gold);font:italic 18px 'Playfair Display',serif}.promises strong{font:500 18px 'Playfair Display',serif}.promises span{color:var(--muted);font-size:10px;margin-top:4px}.catalog{max-width:1500px;margin:auto;padding:120px clamp(24px,8vw,130px)}.heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:44px}.heading h2,.closing h2,.contact h2{font-size:58px;margin:16px 0}.heading p{max-width:250px;color:var(--muted);font-size:13px;line-height:1.7}.toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:30px}.tabs{display:flex;gap:24px;flex-wrap:wrap}.tabs button{border:0;background:none;color:var(--muted);padding:0 0 8px;cursor:pointer;font-size:12px}.tabs button.active{color:var(--ink);font-weight:700;border-bottom:2px solid var(--rose)}.search{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:7px 0;color:var(--muted);width:210px}.search input{width:100%;background:none;border:0;outline:0;color:var(--ink);font-size:11px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 18px}.card{min-width:0}.photo{height:300px;background:#eee2dc;position:relative;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;transition:.5s}.card:hover .photo img{transform:scale(1.05)}.tag{position:absolute;top:12px;left:12px;background:var(--surface);padding:7px 9px;color:var(--deep);font-size:9px;letter-spacing:1px;text-transform:uppercase}.heart{position:absolute;top:10px;right:10px;border:0;border-radius:50%;width:32px;height:32px;background:var(--surface);color:var(--rose);cursor:pointer}.add{position:absolute;bottom:0;left:0;right:0;transform:translateY(100%);border:0;background:var(--rose);color:white;padding:13px;text-transform:uppercase;font-size:9px;letter-spacing:1px;cursor:pointer;transition:.3s}.card:hover .add{transform:translateY(0)}.info{padding:14px 2px;position:relative}.info h3{font:500 17px/1.15 'Playfair Display',serif;margin:0 0 7px;padding-right:70px}.info small{color:var(--muted);font-size:10px}.info p{color:var(--muted);font-size:11px;line-height:1.5;min-height:34px}.info strong{position:absolute;right:0;top:16px;color:var(--deep);font-size:13px}.closing{max-width:1100px;margin:0 auto 110px;padding:70px 8%;min-height:350px;display:flex;align-items:center;gap:70px;background:linear-gradient(105deg,#ead4cd,#f2e4dc)}.dark .closing{background:linear-gradient(105deg,#3a292e,#2e2226)}.closing>img{width:210px;height:210px;border-radius:50%;border:1px solid var(--gold);padding:12px;object-fit:cover}.closing p{color:var(--muted);font-size:13px}.closing a{color:var(--deep);font-size:12px;font-weight:700}.contact{padding:70px clamp(24px,8vw,130px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.contact h2{font-size:45px}.contact>div:last-child{display:grid;gap:12px;min-width:270px}.contact a{border-bottom:1px solid var(--line);padding:13px 0;display:flex;justify-content:space-between;gap:20px;font-size:11px}.contact a span{color:var(--muted)}.contact a b{color:var(--deep)}footer{padding:40px clamp(24px,8vw,130px);display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font-size:10px}footer p{color:var(--deep);font:500 17px 'Playfair Display',serif}footer p em{font-style:italic}.overlay{display:none;position:fixed;inset:0;background:#21191d99;z-index:50;justify-content:flex-end}.overlay.open{display:flex}.drawer,.checkout{background:var(--surface);color:var(--ink);width:min(440px,100%);height:100%;padding:34px;overflow:auto;position:relative}.drawer h2,.checkout h2{font:500 38px 'Playfair Display',serif;margin:10px 0 24px}.checkout{height:auto;max-height:92vh;width:min(650px,100%);margin:auto}.checkout h2 em{color:var(--rose)}.close{position:absolute;top:28px;right:28px;width:34px;height:34px;border-radius:50%;font-size:20px}.cart-row{display:grid;grid-template-columns:60px 1fr 25px;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}.cart-row img{width:60px;height:66px;object-fit:cover}.cart-row h4{font:500 14px 'Playfair Display',serif;margin:0 0 6px}.cart-row button{border:0;background:none;color:var(--muted);cursor:pointer}.total,.summary{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0;margin-top:16px}.total b,.summary b{color:var(--deep);font-size:18px}.whatsapp{width:100%;border:0;background:#4d8d68;color:white;padding:15px;cursor:pointer;font-weight:700}.hint{color:var(--muted);font-size:10px;text-align:center}.checkout>p{color:var(--muted);font-size:12px;line-height:1.6}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.formgrid label{display:grid;gap:6px;color:var(--muted);font-size:11px}.formgrid label.wide{grid-column:1/-1}.formgrid input,.formgrid select{border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:12px;outline:0}.falling{pointer-events:none;position:fixed;inset:0;z-index:5;overflow:hidden}.falling i{position:absolute;top:-30px;color:var(--rose);opacity:.35;font-style:normal;font-size:20px;animation:fall 12s linear infinite}.falling i:nth-child(1){left:8%;animation-delay:1s}.falling i:nth-child(2){left:28%;animation-delay:5s;font-size:27px}.falling i:nth-child(3){left:52%;animation-delay:8s}.falling i:nth-child(4){left:76%;animation-delay:3s;font-size:25px}.falling i:nth-child(5){left:91%;animation-delay:10s}.reveal{opacity:0;transform:translateY(18px);transition:.7s}.reveal.visible{opacity:1;transform:none}.card.hidden{display:none}@keyframes fall{to{transform:translateY(110vh) rotate(180deg);opacity:0}}@keyframes pulse{50%{transform:scale(1.04)}}
@media(max-width:850px){.topbar nav{display:none}.hero{grid-template-columns:1fr;padding-top:130px}.hero-art{height:430px}.grid{grid-template-columns:repeat(2,1fr)}.photo{height:260px}.heading{display:block}.heading p{margin-top:20px}.contact{display:block}.contact>div:last-child{margin-top:30px}.closing{margin:0 20px 80px;gap:30px}.closing>img{width:150px;height:150px}}
@media(max-width:560px){.brand span{font-size:17px}.actions{gap:5px}.bag{padding:9px 10px}.hero{padding-left:20px;padding-right:20px}.hero h1{font-size:51px}.hero-art{transform:scale(.8);margin:-30px 0}.promises{grid-template-columns:1fr;gap:18px}.catalog{padding:80px 20px}.heading h2{font-size:46px}.toolbar{display:block}.search{width:100%;margin-top:20px}.grid{gap:26px 12px}.photo{height:220px}.info h3{font-size:15px}.info p{font-size:10px}.closing{display:block;padding:45px 28px}.closing>img{margin-bottom:25px}.contact h2{font-size:40px}.contact{padding:60px 20px}footer{display:block;padding:30px 20px}footer p{margin:25px 0}.formgrid{grid-template-columns:1fr}.formgrid label.wide{grid-column:auto}.drawer,.checkout{padding:28px 20px}}
