@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,700;12..96,800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";.landing-container{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1.25rem;display:flex}.landing-logo{filter:drop-shadow(0 4px 12px #c5a88026);width:min(500px,90vw);height:auto;margin-bottom:1.25rem}.landing-content{width:min(550px,100%)}.landing-title{margin-bottom:1rem;font-size:clamp(2rem,8vw,3rem);font-style:italic;font-weight:500;line-height:1.2}.landing-text{color:var(--text-muted);margin:0;font-size:clamp(1rem,3.8vw,1.15rem);font-weight:300;line-height:1.7}.landing-contact{color:var(--text-light);margin:1rem 0 0;font-size:clamp(.95rem,3.6vw,1rem);line-height:1.5}.landing-contact-link{color:inherit;text-underline-offset:2px;overflow-wrap:anywhere;align-items:center;gap:.35rem;font-weight:600;text-decoration-thickness:1px;display:inline-flex}.gold-button{background-color:var(--gold);color:var(--bg-main);letter-spacing:.05em;text-transform:uppercase;border-radius:4px;margin-top:1.25rem;padding:.85rem 2rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block;box-shadow:0 4px 20px #c5a88033}@media (width<=480px){.landing-container{min-height:100dvh;padding-top:max(1.5rem, env(safe-area-inset-top));padding-bottom:max(1.5rem, env(safe-area-inset-bottom))}.landing-logo{width:min(420px,92vw);margin-bottom:1rem}.landing-title{margin-bottom:.75rem}.gold-button{width:100%;max-width:320px;padding:.95rem 1.25rem}}.nasi-bakar-intro{width:100%;height:100vh;position:relative;overflow:hidden}.intro-hero-image{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.intro-overlay{z-index:2;text-align:center;box-sizing:border-box;background:#d6cbbaa6;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;display:flex;position:absolute;top:0;left:0}.menu-logo-overlay{width:250px;position:absolute;top:3rem;left:50%;transform:translate(-50%)}.intro-title{margin-bottom:1rem;font-family:Playfair Display,serif;font-size:clamp(2.5rem,8vw,4rem)}.intro-subtitle{color:#2f2f2f;max-width:600px;margin:0 auto 3rem;font-size:clamp(1rem,4vw,1.2rem)}.scroll-down-btn{color:#000;text-transform:uppercase;letter-spacing:.15em;font-size:.9rem;font-weight:600;text-decoration:none}.menu-container{box-sizing:border-box;flex-direction:column;align-items:center;min-height:100vh;padding:4rem 2rem;display:flex}.menu-logo{width:250px;margin-bottom:3rem}.menu-wrapper{width:100%;max-width:700px}.menu-header{text-align:center;margin-bottom:4rem}.menu-title{margin-bottom:.5rem;font-size:3.5rem;font-weight:400}.menu-subtitle{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;margin:0;font-size:.85rem}.menu-section-title{color:var(--gold);border-bottom:1px solid var(--border-dim);letter-spacing:.05em;margin-bottom:2rem;padding-bottom:.75rem;font-size:1.8rem;font-weight:400}.chevron-icon{color:var(--gold,#d4af37);margin-left:.6rem;font-size:.9rem;transition:transform .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.chevron-icon.open{transform:rotate(-90deg)}.menu-row{border-bottom:1px dashed var(--border-dashed);border-bottom:1px dashed var(--border-dashed,#ccc);-webkit-tap-highlight-color:transparent;flex-direction:column;gap:.5rem;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.menu-row.expandable{cursor:pointer}.menu-row.static{cursor:default}.menu-content-left{width:100%}.menu-item-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.menu-item-details{flex:1}.menu-item-desc{color:var(--text-muted);margin:0;font-size:.95rem;font-weight:300}.menu-item-price{color:var(--gold);white-space:nowrap;font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600}.menu-item-image-wrapper{opacity:0;border-radius:6px;width:100%;max-height:0;margin-top:1.25rem;transition:max-height .4s,opacity .3s,margin-top .3s;overflow:hidden;box-shadow:0 4px 12px #0000000d}.menu-item-image-wrapper.is-expanded{opacity:1;max-height:350px;margin-top:1.25rem}.menu-item-photo{object-fit:cover;width:100%;height:auto;max-height:280px;display:block}.menu-item-collapse-btn{color:var(--text-muted,#666);text-transform:uppercase;letter-spacing:.1em;text-align:center;margin-top:1rem;font-size:.85rem;font-weight:500;transition:color .2s}.menu-footer{text-align:center;margin-top:4rem}.back-link{color:var(--text-muted);letter-spacing:.05em;font-size:.9rem;text-decoration:none}@media (width>=768px){.menu-row.is-open{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:3rem}.menu-row.is-open .menu-content-left{flex:1;max-width:65%}.menu-row.is-open .menu-item-image-wrapper{flex:1;max-width:30%;margin-top:0}.menu-item-photo{max-height:320px}.menu-item-collapse-btn{margin-top:1.5rem}}:root{--bg-main:#fbf9f6;--bg-card:#fff;--border-dim:#e6e2db;--border-dashed:#dcd7ce;--gold:#b68d5d;--text-light:#2c2825;--text-muted:#7a746d}body{background-color:var(--bg-main);color:var(--text-light);min-height:100vh;margin:0;padding:0;font-family:Plus Jakarta Sans,sans-serif;line-height:1.6}h1,h2,h3{letter-spacing:-.02em;margin:0;font-family:Playfair Display,serif}button,a,input,textarea{touch-action:manipulation}:root{--bg-main:#16281c;--bg-lift:#24402e;--bg-card:#1c3324;--border-dim:#f4ebd924;--border-dashed:#f4ebd924;--gold:#e0a93e;--gold-hover:#edbb55;--text-light:#f4ebd9;--text-muted:#f4ebd99e;--font-display:"Bricolage Grotesque", "Plus Jakarta Sans", system-ui, sans-serif;--font-body:"Plus Jakarta Sans", system-ui, sans-serif;--radius-sm:8px;--radius-md:12px;--radius-full:9999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.22, 1, .36, 1)}body{background:radial-gradient(ellipse at 22% -5%, var(--bg-lift) 0%, transparent 55%), var(--bg-main);color:var(--text-light);font-family:var(--font-body)}body:after{content:"";pointer-events:none;z-index:9999;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{background:var(--gold);color:var(--bg-main)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;color:var(--text-light);line-height:1.05}.landing-eyebrow,.intro-eyebrow{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 1rem;font-size:.75rem;font-weight:600}.landing-logo{filter:drop-shadow(0 6px 24px #00000059);width:min(380px,82vw);margin-bottom:2rem}.landing-text{color:var(--text-light);max-width:34rem;margin:0 auto;font-weight:400}.landing-contact{color:var(--text-muted);margin-top:1.5rem}.landing-contact-link{color:var(--text-light)}.gold-button,.scroll-down-btn{background-color:var(--gold);color:var(--bg-main);font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-full);transition:transform .4s var(--ease-snap), box-shadow .4s var(--ease-snap), background-color .3s var(--ease-out);padding:.95rem 2.25rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-block;box-shadow:0 2px 10px #00000040}.gold-button:hover,.scroll-down-btn:hover{background-color:var(--gold-hover);transform:translateY(-2px);box-shadow:0 8px 24px #00000059}.gold-button:active,.scroll-down-btn:active{transition-duration:.1s;transform:translateY(0)scale(.98)}.gold-button{margin-top:2rem}.ghost-button{color:var(--text-light);font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-full);transition:transform .4s var(--ease-snap), border-color .3s var(--ease-snap), background-color .3s var(--ease-out);background:0 0;border:1px solid #f4ebd959;padding:.95rem 2.25rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block}.ghost-button:hover{border-color:var(--gold);color:var(--gold-hover);background-color:#e0a93e0f;transform:translateY(-2px)}.ghost-button:active{transition-duration:.1s;transform:translateY(0)scale(.98)}.landing-content .ghost-button{margin-top:.85rem;margin-left:.75rem}@media (width<=480px){.landing-content .ghost-button{box-sizing:border-box;width:100%;max-width:320px;margin-left:0}}.intro-overlay{text-align:left;background:linear-gradient(to top right,#0a140eeb 0%,#0a140e8c 45%,#0a140e1f 100%);justify-content:flex-end;align-items:flex-start;padding:clamp(1.5rem,5vw,4.5rem)}.menu-logo-overlay{filter:drop-shadow(0 4px 16px #0006);width:clamp(140px,16vw,190px);top:clamp(1.25rem,3vw,2.25rem);left:clamp(1.25rem,3.5vw,2.75rem);transform:none}.intro-text-box{max-width:40rem}.intro-title{font-family:var(--font-display);letter-spacing:-.035em;color:var(--text-light);margin-bottom:1.25rem;font-size:clamp(2.75rem,7vw,4.75rem);font-weight:700;line-height:1.02}.intro-subtitle{color:#f4ebd9c7;max-width:34rem;margin:0 0 2.25rem;font-size:clamp(1rem,2.2vw,1.125rem);line-height:1.65}.menu-container{padding:clamp(4rem,8vw,6.5rem) 2rem}.menu-header{text-align:left;flex-direction:column;margin-bottom:clamp(3rem,6vw,4.5rem);display:flex}.menu-title{color:var(--text-light);margin-bottom:0;font-size:clamp(2.75rem,6vw,4rem);font-weight:700}.menu-subtitle{color:var(--gold);letter-spacing:.16em;order:-1;margin-bottom:.85rem;font-weight:600}.menu-row{border-bottom:1px solid var(--border-dim);border-radius:var(--radius-sm);transition:background-color .3s var(--ease-snap);margin:0 -.85rem;padding:1.75rem .85rem}.menu-row.expandable:hover{background-color:#f4ebd909}.menu-item-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-light);font-size:1.2rem;font-weight:600}.menu-item-desc{color:var(--text-muted);max-width:52ch;margin-top:.4rem;font-weight:400;line-height:1.6}.menu-item-price{font-family:var(--font-display);color:var(--gold);font-size:1.2rem;font-weight:700}.chevron-icon{color:var(--gold)}.menu-item-image-wrapper{border-radius:var(--radius-md);border:1px solid #f4ebd938;box-shadow:0 16px 40px #00000059}.menu-item-image-wrapper.is-expanded{animation:photo-in .5s var(--ease-out) both}@keyframes photo-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.menu-item-collapse-btn{color:#f4ebd973}.menu-row:hover .menu-item-collapse-btn{color:var(--gold)}.menu-footer{margin-top:clamp(3.5rem,7vw,5rem)}.back-link{color:var(--text-muted);text-underline-offset:4px;transition:color .3s var(--ease-snap)}.back-link:hover{color:var(--text-light)}@keyframes enter-up{0%{opacity:0;filter:blur(6px);transform:translateY(24px)}to{opacity:1;filter:blur();transform:translateY(0)}}.enter-up{animation:enter-up .7s var(--ease-out) both;animation-delay:var(--stagger,0s)}@media (prefers-reduced-motion:reduce){.enter-up,.menu-item-image-wrapper.is-expanded{opacity:1;filter:none;animation:none;transform:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.unwrap-track{--p:0;height:400svh;position:relative}.unwrap-stage{--sp:clamp(0, calc(var(--p) / .2), 1);--rp:clamp(0, calc((var(--p) - .26) / .18), 1);--lp:clamp(0, calc((var(--p) - .44) / .18), 1);--gp:clamp(0, calc((var(--p) - .6) / .26), 1);--cp:clamp(0, calc((var(--p) - .82) / .16), 1);--gw:min(78vw, 460px);--gh:min(52svh, 380px);justify-content:center;align-items:center;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.unwrap-logo{z-index:5;filter:drop-shadow(0 4px 16px #0006);width:clamp(120px,14vw,170px);position:absolute;top:clamp(1.25rem,3vw,2rem);left:clamp(1.25rem,3.5vw,2.5rem)}.unwrap-reveal{opacity:clamp(0, calc((var(--p) - .2) / .06), 1);clip-path:inset(calc((100svh - var(--gh)) / 2 * (1 - var(--gp))) calc((100vw - var(--gw)) / 2 * (1 - var(--gp))) round calc(24px * (1 - var(--gp))));will-change:clip-path;position:absolute;inset:0}.unwrap-dish{object-fit:cover;width:100%;height:100%;transform:scale(calc(1.18 - var(--gp) * .18));will-change:transform;display:block}.unwrap-shade{opacity:calc(.2 + var(--cp) * .8);background:linear-gradient(#0a140e33 0%,#0a140e99 60%,#0a140ef2 100%);position:absolute;inset:0}.unwrap-content{text-align:center;opacity:var(--cp);transform:translateY(calc((1 - var(--cp)) * 44px));pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;padding:clamp(2rem,6vh,4.5rem) 1.5rem;display:flex;position:absolute;inset:0}.unwrap-stage[data-done=true] .unwrap-content{pointer-events:auto}.unwrap-content .intro-eyebrow{margin-bottom:.85rem}.unwrap-heading{font-family:var(--font-display);letter-spacing:-.035em;color:var(--text-light);text-shadow:0 2px 28px #0a140e99;max-width:16ch;margin-bottom:1rem;font-size:clamp(2.5rem,7vw,4.5rem);font-weight:700;line-height:1.02}.unwrap-sub{color:#f4ebd9d9;text-shadow:0 1px 16px #0a140e99;max-width:36rem;margin:0 0 1.75rem;font-size:clamp(.95rem,2vw,1.1rem);line-height:1.6}.unwrap-actions{flex-wrap:wrap;justify-content:center;gap:.85rem;display:flex}.unwrap-sprite{aspect-ratio:240/140;width:min(320px,64vw);transform:perspective(900px) rotateY(calc((1 - var(--sp)) * 360deg)) scale(calc(.16 + var(--sp) * .94));opacity:clamp(0, calc((.26 - var(--p)) / .06), 1);filter:drop-shadow(0 20px 44px #0006);will-change:transform, opacity;z-index:2;position:absolute}.unwrap-sprite svg{width:100%;height:100%;display:block}.unwrap-gift{width:var(--gw);height:var(--gh);perspective:1200px;opacity:calc(clamp(0, calc((var(--p) - .2) / .06), 1) * clamp(0, calc(1 - var(--gp) * 2.5), 1));filter:drop-shadow(0 30px 60px #00000073);will-change:transform, opacity;z-index:2;position:relative}.unwrap-leaf{backface-visibility:hidden;will-change:transform;background:repeating-linear-gradient(100deg,#f4ebd90d 0 1px,#0000 1px 9px),linear-gradient(105deg,#35643f 0%,#24462e 55%,#1a3421 100%);height:51%;position:absolute;left:0;right:0;box-shadow:inset 0 0 40px #00000059}.unwrap-leaf--top{transform-origin:top;transform:rotateX(calc(var(--lp) * 108deg));filter:brightness(calc(1 - var(--lp) * .35));border-radius:24px 24px 0 0;top:0}.unwrap-leaf--bottom{transform-origin:bottom;transform:rotateX(calc(var(--lp) * -108deg));filter:brightness(calc(1 - var(--lp) * .35));border-radius:0 0 24px 24px;bottom:0}.unwrap-leaf--top:after,.unwrap-leaf--bottom:after{content:"";background:#f4ebd92e;height:2px;position:absolute;left:0;right:0}.unwrap-leaf--top:after{bottom:0}.unwrap-leaf--bottom:after{top:0}.unwrap-ribbon{will-change:transform, opacity;z-index:3;background:linear-gradient(90deg,#c8922f 0%,#e0a93e 42%,#f0c46a 50%,#e0a93e 58%,#c8922f 100%);position:absolute;box-shadow:0 2px 10px #0000004d}.unwrap-ribbon--v{width:clamp(28px,8%,40px);transform:translateY(calc(var(--rp) * -140%));opacity:calc(1 - var(--rp) * .6);margin-left:calc(clamp(28px,8%,40px)/-2);top:-4%;bottom:-4%;left:50%}.unwrap-ribbon--h{height:clamp(28px,8%,40px);transform:translateX(calc(var(--rp) * 150%)) rotate(calc(var(--rp) * 8deg));opacity:calc(1 - var(--rp) * .6);background:linear-gradient(#c8922f 0%,#e0a93e 42%,#f0c46a 50%,#e0a93e 58%,#c8922f 100%);margin-top:calc(clamp(28px,8%,40px)/-2);top:50%;left:-4%;right:-4%}.unwrap-knot{width:clamp(52px,16%,72px);height:clamp(52px,16%,72px);transform:rotate(45deg) scale(calc(1 - var(--rp)));opacity:calc(1 - var(--rp));z-index:4;background:radial-gradient(circle at 35% 35%,#f0c46a,#e0a93e 55%,#b8842a);border-radius:50% 12%;margin:calc(clamp(52px,16%,72px)/-2) 0 0 calc(clamp(52px,16%,72px)/-2);position:absolute;top:50%;left:50%;box-shadow:0 4px 14px #00000059}.unwrap-hint{text-align:center;letter-spacing:.18em;text-transform:uppercase;color:#f4ebd9a6;opacity:clamp(0, calc(1 - var(--p) * 4), 1);animation:hint-drift 2.4s var(--ease-in-out,ease-in-out) infinite alternate;font-size:.75rem;font-weight:600;position:absolute;bottom:clamp(1.5rem,5vh,2.75rem);left:0;right:0}@keyframes hint-drift{0%{transform:translateY(0)}to{transform:translateY(7px)}}.unwrap-outro{text-align:center;padding:clamp(4rem,9vw,6rem) 1.5rem}.unwrap-outro h2{margin-bottom:.85rem;font-size:clamp(1.75rem,4vw,2.5rem)}.unwrap-outro p{color:var(--text-muted);max-width:34rem;margin:0 auto 1.75rem;line-height:1.65}@media (prefers-reduced-motion:reduce){.unwrap-track{--p:1;height:100svh}.unwrap-stage{position:relative}.unwrap-stage .unwrap-content{pointer-events:auto}.unwrap-hint,.unwrap-gift,.unwrap-sprite{display:none}}
