:root{--frame:#7a4a1f;--bg:#f4ebdc;--ink:#2b1a0c;--acc:#7a4a1f;--gray:#eadcc5;--line:#d8c6a6;--b1:#d8b9ae;--b2:#f6efe3;--head:"Playfair Display",Georgia,serif;--body:"DM Sans",system-ui,sans-serif}@media (prefers-color-scheme:dark){:root{--frame:#17120d;--bg:#241c15;--ink:#f3eadb;--gray:#33281e;--line:#4a3a2b}}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{background:var(--frame,var(--bg));color:var(--ink);font-family:var(--body);line-height:1.6;overflow-x:hidden;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}button,a{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--acc);outline-offset:3px}.wrap{max-width:1240px;margin:auto;padding:0 clamp(16px,4vw,48px)}.photo{position:relative;overflow:hidden}.photo>svg,.photo>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.photo>img{object-fit:cover}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;border-radius:40px;text-decoration:none;font-weight:600;border:1.5px solid var(--acc);background:var(--acc);color:var(--onacc,#fff);transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 26px #00000040}.btn.out{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.wa{background:#25d366;color:#072b14;border-color:#25d366}.btns{display:flex;gap:12px;flex-wrap:wrap}.card{display:flex;flex-direction:column;gap:8px}.card h3{font:600 1.15rem var(--head)}.card p{font-size:.87rem;opacity:.75}.price{font-weight:700;color:var(--acc)}.row{display:flex;gap:8px}select{flex:1;min-width:0;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--gray);color:var(--ink)}.add{background:var(--ink);color:var(--bg);border:0;padding:10px 16px;border-radius:12px}.buy{border-radius:12px;padding:11px;font-size:1rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--min,230px),1fr));gap:var(--gap,24px)}.tile{background:var(--gray);transition:transform .3s,box-shadow .3s}.tile>svg{top:20%;right:20%;bottom:20%;left:20%;width:60%;height:60%;transition:transform .6s}.card:hover .tile>svg{transform:scale(1.1)}.tile em{position:absolute;z-index:2;top:12px;left:12px;font-style:normal;background:var(--acc);color:#fff;padding:3px 12px;border-radius:20px;font-size:.75rem}.sec{padding:6vh 0 2vh}h2{font:600 clamp(1.8rem,3.8vw,2.8rem) var(--head);margin-bottom:8px}.sub{opacity:.75;margin-bottom:24px}.site-header .wrap{display:block}nav{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font:700 1.6rem var(--head);text-decoration:none;color:var(--ink)}.links{display:flex;gap:32px}.links a{text-decoration:none;color:var(--ink);font-size:.95rem;opacity:.85}.links a:hover{color:var(--acc);opacity:1}.bag{position:relative;border:0;width:44px;height:44px;display:grid;place-items:center}.bag b{position:absolute;top:-7px;right:-7px;background:var(--acc);color:#fff;font-size:.7rem;border-radius:20px;min-width:20px;height:20px;display:grid;place-items:center}.step-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:20px}.step-list div{padding:26px}.step-list h3{font:600 1.25rem var(--head);margin-bottom:6px}footer{text-align:center;padding:36px 0;opacity:.75;font-size:.9rem}.drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100%);background:var(--bg);color:var(--ink);transform:translate(105%);transition:transform .35s;z-index:20;display:flex;flex-direction:column;padding:22px;padding-top:calc(22px + env(safe-area-inset-top,0px));padding-bottom:calc(22px + env(safe-area-inset-bottom,0px));box-shadow:-20px 0 50px #0000004d}.drawer.open{transform:none}.drawer h2{text-align:left}.items{flex:1;overflow:auto;margin:14px 0}.line{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.q button{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:none;color:var(--ink)}.close{background:none;border:0;color:var(--ink);font-size:1.7rem;align-self:flex-end}.send{margin-top:12px}.send.disabled{opacity:.4;pointer-events:none}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@keyframes drift{to{transform:translate(5vw,3vw) scale(1.2)}}@keyframes scroll{to{transform:translate(-50%)}}@keyframes float{to{transform:translateY(-10px)}}@media (max-width:820px){.links{display:none}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}body{padding:3vw}.sheet{background:var(--bg);border-radius:28px;max-width:1240px;margin:auto;padding:0 clamp(18px,4vw,56px) 40px;overflow:hidden;box-shadow:0 30px 70px #00000047}.site-header .wrap{max-width:none;padding:26px 0}.bag{background:var(--gray);border:1px solid var(--line);color:var(--ink);border-radius:14px;width:46px;height:46px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:center;padding:4vh 0 6vh}.hero h1{font:600 clamp(2.8rem,6.4vw,5.2rem)/1.05 var(--head);animation:rise .9s ease-out both}.hero p{max-width:44ch;margin:24px 0 32px;opacity:.85}.stage{position:relative;aspect-ratio:1/1.08;max-width:520px;width:100%;margin:auto}.arch{position:absolute;right:2%;bottom:0;width:72%;height:84%;background:var(--acc);border-radius:999px 999px 0 0}.frame{position:absolute;left:14%;bottom:-3%;width:58%;height:54%;border:1.5px solid var(--ink);opacity:.55}.pic{position:absolute;right:5%;bottom:0;width:66%;height:80%;border-radius:999px 999px 0 0;background:var(--b1);animation:float 6s ease-in-out infinite alternate}.sec h2 small{font-size:.55em}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}.tab{background:none;border:1.5px solid var(--line);color:var(--ink);padding:9px 22px;border-radius:30px}.tab.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.tile{aspect-ratio:4/5;border-radius:22px}.card:hover .tile{transform:translateY(-6px)}.step-list div{background:var(--gray);border-radius:22px}.steps .wrap{max-width:none;padding:0}.steps{padding:5vh 0 2vh}.band{margin-top:6vh;background:var(--acc);color:#fff;border-radius:26px;padding:clamp(28px,5vw,56px);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.band h2{margin:0}.band .btn{background:#25d366;color:#072b14;border-color:#25d366}@media (max-width:820px){.hero{grid-template-columns:1fr}.stage{max-width:380px}}
