@font-face{font-family:MeltDisplay;font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/coiny-latin-ext-400-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:MeltDisplay;font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/coiny-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--melt-display:MeltDisplay,"Arial Rounded MT Bold",sans-serif}
.display,.brand-display,.menu-page h1,.menu-page h2,.menu-page .tin-message em{font-family:var(--melt-display);font-weight:400;font-style:normal;letter-spacing:-.035em;line-height:1.04}
.brand-display{margin:0;color:var(--melt-brown)}
.menu-page .tin-message em{color:var(--melt-cream)}
.menu-page .menu-intro h1{font-size:clamp(56px,6.5vw,94px)}
.menu-page .collection-heading h2{font-size:clamp(34px,4.1vw,58px)}
body{overflow-x:clip}
.container{width:min(1240px,calc(100% - 80px))}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.brand img{width:137px;height:48px}
.brand{min-width:137px}
.nav-shell{min-height:66px}
.site-header{box-sizing:border-box;height:92px;display:flex;align-items:center}
.site-header>.container{width:min(1240px,calc(100% - 80px))}
.desktop-nav{gap:38px}
.btn{box-shadow:none}
.simple-link{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:8px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font-weight:800;font-size:13px;cursor:pointer;text-decoration:none}
.simple-link span{font-size:21px;font-weight:400;transition:transform .2s}
.simple-link:hover span{transform:translate(3px,-3px)}
.home-welcome{padding:42px 0 70px}
.home-welcome-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:64px;align-items:center}
.home-welcome-copy{padding:24px 0}
.home-welcome-copy .eyebrow{font-size:11px;letter-spacing:.15em;margin-bottom:23px}
.home-welcome h1{font-size:clamp(64px,6.8vw,98px);line-height:1.03;margin-bottom:24px}
.home-welcome h1 span{color:#4b281b}
.home-description{max-width:400px;font-size:18px;line-height:1.65;margin:0 0 30px}
.home-welcome .btn{gap:30px;font-size:14px;padding:0 24px;min-height:54px}
.home-micro{font-size:11px;letter-spacing:.035em;margin:22px 0 0;color:var(--muted)}
.home-photo{position:relative;min-width:0;margin:8px 0}
.home-photo>img{width:100%;height:555px;object-fit:cover;border-radius:150px 150px 30px 30px;object-position:center 52%}
.home-photo-caption{position:absolute;bottom:24px;left:50%;transform:translateX(-50%) rotate(-3deg);background:var(--melt-cream);color:var(--melt-brown);padding:12px 20px;border-radius:30px;white-space:nowrap;font-size:13px;font-weight:800;box-shadow:0 5px 0 rgba(75,40,27,.08)}
.home-sparkle{width:73px;height:73px;position:absolute;right:-25px;top:22px;transform:rotate(12deg)}
.home-invitation{padding:66px 0 78px;background:var(--melt-cream);text-align:center;border-radius:48px 48px 0 0}
.invitation-flower{font-size:44px;line-height:1;color:#7aaed3;display:block;margin-bottom:25px}
.home-invitation .eyebrow{font-size:10px;letter-spacing:.15em;margin-bottom:19px}
.home-invitation h2{font-size:clamp(34px,4.3vw,60px);max-width:1000px;margin:0 auto 22px}
.home-invitation p:not(.eyebrow){font-size:15px;line-height:1.75;max-width:650px;margin:0 auto 22px}
.home-invitation .simple-link{gap:50px}
.site-footer{border-top:1px solid var(--line)}
.site-footer .footer-col a.btn{display:inline-flex;color:var(--melt-cream);align-items:center;justify-content:center;min-width:150px}
.utility-main{padding:64px 0 90px;min-height:650px}
.locator-layout{display:grid;grid-template-columns:.8fr 1fr;gap:52px;align-items:start}
.postal-form{margin:0 0 28px}
.postal-form label,.melt-field label{font-size:11px;font-weight:900;letter-spacing:.12em;display:block;margin-bottom:11px}
.postal-controls{display:grid;grid-template-columns:1fr auto;gap:12px}
.postal-controls input{min-width:0;border:2px solid var(--melt-brown);background:rgba(255,248,239,.42);height:53px;border-radius:9px;padding:10px 15px;color:var(--melt-brown);font-size:18px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.postal-controls input::placeholder{color:#765e54;opacity:.8}
.postal-controls .btn{border-radius:9px;font-size:13px;min-height:53px;padding:0 20px}
.postal-status,.directions-status,.contact-status{font-size:12px;line-height:1.6;margin:0}
.postal-status:not(:empty){padding:12px 0 0}
.melt-location{background:var(--melt-brown);color:var(--melt-cream);padding:31px;border-radius:14px}
.location-label{font-size:10px;font-weight:900;letter-spacing:.1em;margin:0 0 18px;color:#c9e5fb}
.melt-location h2{color:var(--melt-cream);font-size:40px;margin-bottom:20px}
.location-coming{font-size:14px;margin:0 0 21px}
.melt-location address{font-size:14px;font-style:normal;line-height:1.6}
.opening-hours{font-size:13px;color:#e6d3c6;margin:10px 0 18px}
.location-actions{display:flex;gap:25px;flex-wrap:wrap}
.location-actions .simple-link{font-size:12px;gap:14px}
.directions-status:not(:empty){margin-top:17px;color:#c9e5fb}
.melt-map{min-height:555px;position:relative;isolation:isolate;overflow:hidden;border-radius:14px;border:1px solid rgba(75,40,27,.12);display:grid;place-items:center}
.location-map-art{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.map-message{padding:30px 35px;background:rgba(255,248,239,.95);border:1px solid rgba(75,40,27,.12);border-radius:20px;text-align:center;box-shadow:0 15px 55px #4b281b14}
.melt-map-pin{width:55px;height:55px;border-radius:50% 50% 50% 0;background:var(--melt-brown);color:var(--melt-cream);transform:rotate(-45deg);margin:0 auto 25px;display:grid;place-items:center}
.melt-map-pin span{transform:rotate(45deg);font-family:var(--melt-display);font-size:30px;line-height:1}
.map-message strong{font-size:15px;line-height:1.35;letter-spacing:.04em}
.map-message p{font-size:12px;line-height:1.7;margin:13px 0 0;color:var(--muted)}
.map-preview-label{position:absolute;bottom:14px;left:15px;right:15px;text-align:center;font-size:10px;line-height:1.5;padding:6px;background:rgba(255,248,239,.9);border-radius:5px}
.melt-contact-layout{display:grid;grid-template-columns:.77fr 1fr;gap:70px;align-items:start}
.contact-story .eyebrow{font-size:10px;margin-bottom:16px}
.contact-story h2{font-size:clamp(43px,4.4vw,62px);line-height:1.05;margin:0 0 22px}
.contact-story>p:not(.eyebrow){font-size:15px;line-height:1.65;max-width:450px;margin:0 0 26px}
.contact-story>img{width:100%;height:330px;object-fit:cover;object-position:center;border-radius:18px;margin-top:28px}
.contact-address{font-size:13px;line-height:1.65;margin-top:20px}
.contact-address p{margin:4px 0 0;color:var(--muted)}
.melt-contact-form{background:var(--melt-brown);color:var(--melt-cream);padding:38px;border-radius:14px}
.melt-fields{display:grid;grid-template-columns:1fr 1fr;gap:23px 18px}
.melt-field{min-width:0}
.melt-field.full{grid-column:1/-1}
.melt-field input,.melt-field select,.melt-field textarea{width:100%;border:1px solid #fff8ef;border-radius:5px;background:var(--melt-cream);color:var(--melt-brown);padding:12px 13px;min-height:48px;font-size:15px}
.melt-field select{padding-right:25px}
.melt-field textarea{min-height:180px;resize:vertical}
.melt-contact-form input:focus-visible,.melt-contact-form select:focus-visible,.melt-contact-form textarea:focus-visible,.contact-send:focus-visible{outline-color:var(--melt-blue)}
.contact-send{background:var(--melt-blue);color:var(--melt-brown);border-color:var(--melt-blue);border-radius:6px;margin-top:21px;gap:30px;font-size:13px;min-height:48px}
.contact-send:hover{background:var(--melt-cream);border-color:var(--melt-cream)}
.form-demo-note{font-size:10px;color:#e6d3c6;line-height:1.6;margin:18px 0 0}
.contact-status:not(:empty){margin-top:15px;padding-top:15px;border-top:1px solid #ffffff40;color:var(--melt-blue)}
.toast{max-width:calc(100vw - 32px);width:max-content;text-align:center;border-radius:14px}
.menu-page .menu-filter-wrap{top:92px;scroll-margin-top:92px}
.menu-page .tin-message{container-type:inline-size}
@media(max-width:1100px){.container,.site-header>.container{width:calc(100% - 48px)}.home-welcome-grid{gap:38px}.home-photo>img{height:485px}.home-welcome h1{font-size:7vw}.home-description{font-size:16px}.locator-layout{gap:32px}.melt-contact-layout{gap:38px;grid-template-columns:.8fr 1fr}.melt-contact-form{padding:28px}.contact-story h2{font-size:45px}.melt-map{min-height:540px}.melt-location{padding:26px}.menu-page .collection-heading h2{font-size:4.4vw}}
@media(max-width:980px){.nav-shell,.menu-page .nav-shell{grid-template-columns:auto 1fr}.nav-actions,.menu-page .nav-actions{justify-self:end}.mobile-panel{inset:96px 24px auto}.brand{min-width:120px}.menu-page .collection-heading h2{font-size:40px}.home-sparkle{right:-15px;width:58px;height:58px}.melt-contact-layout{grid-template-columns:1fr 1.1fr;gap:30px}.contact-story h2{font-size:38px}.melt-fields{gap:18px 12px}.melt-field label{font-size:10px}.melt-contact-form{padding:25px}.melt-field input,.melt-field select,.melt-field textarea{font-size:13px}.utility-main{padding-block:45px 65px}.melt-location h2{font-size:33px}}
@media(max-width:760px){.home-welcome{padding-block:28px 44px}.home-welcome-grid{gap:25px}.home-photo>img{height:410px;border-radius:100px 100px 24px 24px}.home-welcome h1{font-size:7.3vw}.home-welcome-copy .eyebrow{font-size:9px;letter-spacing:.1em}.home-description{font-size:15px}.home-welcome .btn{font-size:12px;padding-inline:18px;gap:20px;min-height:49px}.home-micro{font-size:10px;max-width:200px}.home-photo-caption{font-size:10px;padding:10px 15px;bottom:19px}.home-invitation h2{font-size:36px}.home-invitation p:not(.eyebrow){font-size:14px}.locator-layout,.melt-contact-layout{grid-template-columns:1fr;gap:30px}.melt-map{min-height:420px}.contact-story h2{font-size:clamp(40px,7vw,55px)}.contact-story>img{height:320px;max-width:480px}.melt-contact-form{padding:30px}.melt-field input,.melt-field select,.melt-field textarea{font-size:15px}.melt-location h2{font-size:37px}.postal-form{margin-bottom:24px}.utility-main{padding-top:30px}}
@media(max-width:720px){.site-header{height:76px}.site-header>.container{width:calc(100% - 24px)}.nav-shell{min-height:58px}.brand img{width:111px;height:40px}.brand{min-width:111px}.mobile-panel{inset:80px 12px auto}.menu-page .menu-filter-wrap{top:76px;scroll-margin-top:76px}.menu-page .collection-heading h2{font-size:36px}.menu-page .menu-intro h1{font-size:7.3vw}}
@media(max-width:560px){.container,.menu-page .container{width:calc(100% - 36px)}.home-welcome-grid{grid-template-columns:1fr;gap:25px}.home-welcome-copy{padding:10px 0 0}.home-welcome h1{font-size:clamp(48px,12.7vw,70px);line-height:1.05;margin-bottom:19px}.home-welcome-copy .eyebrow{margin-bottom:18px;font-size:10px}.home-description{font-size:15px;margin-bottom:24px;max-width:350px}.home-micro{max-width:none;margin-top:17px}.home-photo{margin:0 4px 0 0}.home-photo>img{height:370px;border-radius:130px 130px 22px 22px}.home-photo-caption{font-size:12px}.home-sparkle{right:-12px;top:16px;width:58px;height:58px}.home-invitation{padding:43px 0 52px;border-radius:28px 28px 0 0}.invitation-flower{font-size:35px;margin-bottom:20px}.home-invitation h2{font-size:clamp(26px,7.5vw,40px)}.home-invitation p:not(.eyebrow){font-size:13px;line-height:1.75}.home-invitation p br{display:none}.home-invitation .simple-link{font-size:12px;gap:30px}.utility-main{padding:28px 0 48px}.melt-location{padding:25px}.melt-location h2{font-size:34px}.postal-controls{gap:9px}.postal-controls input{font-size:16px;padding-inline:11px}.postal-controls .btn{padding-inline:17px;font-size:12px}.melt-map{min-height:390px}.map-message{padding:25px}.location-actions{gap:23px}.contact-story h2{font-size:clamp(34px,9.5vw,49px)}.contact-story>p:not(.eyebrow){font-size:14px}.contact-story>img{height:280px}.melt-contact-form{padding:25px 20px}.melt-fields{grid-template-columns:1fr;gap:18px}.melt-field.full{grid-column:auto}.melt-field label{font-size:10px}.contact-send{width:100%;justify-content:space-between}.melt-field textarea{min-height:170px}.menu-page .menu-intro h1{font-size:clamp(44px,11.4vw,65px)}.menu-page .collection-heading h2{font-size:clamp(28px,7.8vw,39px)}.menu-page .menu-finale h2{font-size:10vw}.menu-page .dialog-copy h2{font-size:30px}.menu-page .tin-message em{font-size:clamp(23px,6.6vw,36px)}.menu-page .site-header .container{width:calc(100% - 24px)}}
/* Keep display lettering inside both narrow and wide flavour tiles. */
.menu-page .tin-message em{font-size:clamp(22px,15cqw,52px)}

/* Keep the complete brand lockup readable inside the home link. */
.site-header .brand{flex-direction:column;align-items:center;justify-content:center;gap:1px;width:137px;min-width:137px}
.site-header .brand img{width:137px;height:43px;object-position:center}
.brand-slogan{display:block;color:#5a9bc9;font-size:10px;line-height:1.2;font-weight:900;letter-spacing:1.3px;white-space:nowrap}
@media(max-width:720px){.site-header .brand{width:111px;min-width:111px}.site-header .brand img{width:111px;height:34px}.brand-slogan{font-size:8px;letter-spacing:1.1px}}
