/* Reference structure: full-width hero, horizontal product rows, paired contact columns. */
.reference-wrap{width:85%;max-width:1440px;margin-inline:auto}
.menu-page{background:var(--melt-blue)}
.menu-page #main{overflow:clip}
.melt-menu-hero{position:relative;isolation:isolate;text-align:center;padding:clamp(90px,10vw,160px) 0 clamp(80px,9vw,144px);color:var(--melt-cream);background:var(--melt-brown)}
.melt-menu-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;z-index:-2}
.melt-menu-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#2d160dd9,#2d160d99,#2d160dd9);z-index:-1}
.menu-page .melt-menu-hero h1{color:var(--melt-cream);font-size:clamp(66px,9vw,144px);margin:0 0 30px;line-height:1.02}
.melt-menu-hero p{font-size:clamp(18px,1.8vw,26px);font-weight:600;line-height:1.45;max-width:720px;margin:0 auto 36px}
.melt-reference-button{background:var(--melt-cream);color:var(--melt-brown);border-radius:3px;border:0;border-bottom:4px solid var(--melt-brown);font-weight:900;font-size:20px;text-transform:uppercase;min-height:54px;padding:12px 27px}
.melt-reference-button:hover{background:white;transform:translateY(-2px)}
.melt-menu-category{padding:36px 0;scroll-margin-top:110px}
.melt-menu-category:first-child{padding-top:56px}
.melt-menu-category:last-child{padding-bottom:68px}
.melt-category-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:25px}
.menu-page .melt-category-head h2{font-size:clamp(36px,5vw,72px);text-transform:uppercase;max-width:75%;line-height:1.04;margin:0}
.melt-category-tools{display:flex;align-items:center;gap:22px;flex-shrink:0}
.melt-see-all{color:var(--melt-brown);background:none;border:0;border-bottom:2px solid currentColor;padding:9px 6px;font-size:14px;line-height:1.4;font-weight:800;letter-spacing:.035em;text-transform:uppercase;cursor:pointer}
.melt-row-arrows{display:flex;gap:10px}
.melt-row-arrows button{display:grid;place-items:center;width:48px;height:48px;border:2px solid var(--melt-brown);border-radius:50%;background:transparent;color:var(--melt-brown);font-size:24px;cursor:pointer;transition:background .2s,color .2s}
.melt-row-arrows button:hover:not(:disabled){background:var(--melt-brown);color:var(--melt-cream)}
.melt-row-arrows button:disabled{opacity:.35;cursor:default}
.melt-menu-row{--row-pad:max(7.5vw,calc((100vw - 1440px)/2));display:flex;gap:clamp(20px,2vw,32px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--row-pad);padding:24px var(--row-pad) 36px;scrollbar-width:none;overscroll-behavior-x:contain}
.melt-menu-row::-webkit-scrollbar{display:none}
.melt-menu-card{flex:0 0 clamp(280px,24vw,360px);min-width:0;display:flex;flex-direction:column;scroll-snap-align:start}
.melt-card-art{height:auto;aspect-ratio:1;display:grid;place-items:center;position:relative;padding:8px;min-width:0}
.melt-card-art img{display:block;width:100%;height:100%;object-fit:contain;border-radius:18px;transition:transform .4s ease}
.melt-card-art svg{display:block;width:85%;height:85%;color:var(--melt-brown);transition:transform .4s ease}
.melt-card-art .art-label{position:absolute;bottom:16px;left:18px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--melt-brown);opacity:.65}
.melt-card-label{margin-top:24px;padding:18px 20px 20px;border-radius:24px;background:var(--melt-brown);color:var(--melt-cream);flex:1}
.melt-card-label h3{font-family:var(--melt-display);font-weight:400;font-size:24px;line-height:1.1;margin:0 0 8px;text-transform:uppercase;color:var(--melt-cream)}
.melt-card-label p{font-size:14px;line-height:1.45;margin:0;color:var(--melt-cream)}
.melt-menu-row.is-grid{flex-wrap:wrap;overflow:visible;scroll-snap-type:none}
.melt-menu-row.is-grid .melt-menu-card{flex:0 0 calc((100% - 2 * clamp(20px,2vw,32px))/3)}
.melt-menu-category.is-expanded .melt-row-arrows{display:none}
/* Match the reference contact proportions, retaining MELT's colors and type. */
.contact-page .utility-main,.locations-page .utility-main{padding:72px 0 7vw;min-height:0}
.contact-page .melt-contact-layout,.locations-page .locator-layout{width:85%;max-width:1440px;gap:4vw;grid-template-columns:.85fr 1.1fr}
.contact-page .contact-story h2{font-size:clamp(44px,5vw,76px);line-height:1.02;margin:0 0 24px}
.contact-page .contact-story>p{font-size:16px;line-height:1.5;max-width:100%;margin:0 0 28px}
.contact-page .contact-story>img{width:min(100%,420px);height:auto;aspect-ratio:1;object-fit:contain;border-radius:22px;padding:32px;background:var(--melt-cream);box-shadow:0 18px 36px #4b281b18;margin:0 0 28px}
.contact-page .contact-address{font-size:16px;line-height:1.5;margin:0}
.contact-page .contact-address p{color:var(--melt-brown)}
.contact-page .melt-contact-form{padding:40px;border-radius:6px}
.contact-page .melt-fields{gap:16px;grid-template-columns:1fr 1fr}
.contact-page .melt-field label{font-size:12px;letter-spacing:.1em;margin-bottom:8px}
.contact-page .melt-field input,.contact-page .melt-field select,.contact-page .melt-field textarea{font-size:16px;border-radius:3px;padding:12px 14px;background:var(--melt-cream);min-height:48px}
.contact-page .melt-field textarea{height:168px;min-height:168px}
.contact-page .contact-send{background:var(--melt-cream);color:var(--melt-brown);border-radius:3px;border:0;min-height:52px;padding:12px 28px;font-size:20px;font-weight:900;text-transform:uppercase;margin-top:22px}
.contact-page .form-demo-note{margin:16px 0 0;font-size:11px}
.locations-page .locator-layout{grid-template-columns:.8fr 1fr}
.locations-page .melt-location{padding:26px;border-radius:6px}
.locations-page .melt-location h2{font-size:clamp(28px,2.6vw,42px);line-height:1.1;margin-bottom:12px}
.locations-page .location-coming{font-size:12px;letter-spacing:.1em;font-weight:700;color:#e6d3c6;margin-bottom:14px}
.locations-page .melt-location address{font-size:16px;line-height:1.5}
.locations-page .opening-hours{font-size:15px}
.locations-page .melt-map{display:block;min-height:560px;border-radius:6px;background:var(--melt-cream);overflow:hidden}
.melt-map iframe{display:block;border:0;width:100%;height:560px}
.map-address-link{display:block;padding:14px 20px;font-size:13px;text-align:center;background:var(--melt-cream);text-decoration:underline}
@media(prefers-reduced-motion:no-preference){
 .melt-menu-hero h1{animation:melt-menu-arrive .75s both}
 .melt-menu-hero p{animation:melt-menu-arrive .75s .1s both}
 .melt-menu-hero .btn{animation:melt-menu-arrive .75s .2s both}
 .melt-menu-card:hover .melt-card-art img,.melt-menu-card:hover .melt-card-art svg{transform:translateY(-6px) rotate(-1deg)}
 .melt-menu-category.is-in-view .melt-category-head{animation:melt-menu-arrive .6s both}
}
@keyframes melt-menu-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:980px){.melt-category-head{align-items:start}.menu-page .melt-category-head h2{font-size:4.8vw;max-width:65%}.melt-category-tools{gap:12px}.melt-row-arrows button{width:40px;height:40px}.contact-page .melt-contact-form{padding:28px}}
@media(max-width:760px){.reference-wrap,.contact-page .melt-contact-layout,.locations-page .locator-layout{width:90%}.melt-category-head{flex-wrap:wrap;gap:20px}.menu-page .melt-category-head h2{font-size:clamp(32px,6.8vw,48px);max-width:100%}.melt-category-tools{width:100%;justify-content:space-between}.melt-menu-row{--row-pad:5vw;gap:20px}.melt-menu-card{flex-basis:76vw;max-width:340px}.melt-menu-row.is-grid .melt-menu-card{flex-basis:calc((100% - 20px)/2);max-width:none}.melt-card-label h3{font-size:21px}.contact-page .utility-main,.locations-page .utility-main{padding:44px 0 64px}.contact-page .melt-contact-layout,.locations-page .locator-layout{grid-template-columns:1fr;gap:36px}.contact-page .contact-story h2{font-size:clamp(44px,9vw,62px)}.melt-menu-hero{padding:88px 0 80px}.menu-page .melt-menu-hero h1{font-size:clamp(58px,13vw,92px)}.melt-menu-hero p{font-size:18px}.melt-menu-category{padding:28px 0}.melt-menu-category:first-child{padding-top:40px}.locations-page .melt-map{min-height:430px}.melt-map iframe{height:430px}}
@media(max-width:480px){.melt-menu-row.is-grid .melt-menu-card{flex-basis:100%}.contact-page .melt-contact-form{padding:24px}.contact-page .melt-fields{grid-template-columns:1fr}.contact-page .contact-story>img{padding:25px}.melt-category-head{margin-bottom:4px}.melt-card-label{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.menu-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
