/* Frozen Love — a colorful, illustrated neighborhood ice cream parlor. */
:root {
  --paper:#FFF8EC; --paper-2:#F8EDD9; --paper-3:#F0DFC1;
  --ink:#15365A; --ink-2:#3D5670; --ink-3:#65798D;
  --ice:#1460CE; --ice-deep:#124FA6; --ice-pale:#C7EAF8; --ice-line:#8CCCEB;
  --pink:#F8BCD0; --butter:#FADD8C;
  --font-display:'Lilita One', 'Arial Rounded MT Bold', sans-serif;
  --nav-h:88px; --maxw:1400px; --r:20px;
}
body{background:var(--paper)}
.skip-link{position:fixed;top:10px;left:12px;z-index:250;transform:translateY(-150%);background:var(--ink);color:white;padding:12px 20px;border-radius:12px}
.skip-link:focus{transform:none}
.nav{border-bottom:1px solid rgba(21,54,90,.17)}
.nav__logo{display:flex;align-items:center;gap:11px}
.nav__logo img{height:64px}
.nav__wordmark{font-family:var(--font-display);font-size:1.5rem;line-height:.85;color:var(--ice);max-width:95px;text-transform:uppercase;letter-spacing:-.035em}
.nav__link{font-size:.86rem;font-weight:700;padding:.65em .85em}
.nav__phone{background:var(--ice);color:white;border-radius:30px;padding:12px 20px;font-size:.83rem}
.nav__phone:hover{background:var(--ink);color:white}
.nav__phone svg{color:inherit}
.nav__burger{border-width:2px}
.nav__burger span{position:absolute;left:11px;margin:0!important}
.nav__burger span:nth-child(1){top:13px}.nav__burger span:nth-child(2){top:20px}.nav__burger span:nth-child(3){top:27px}
.little-label{font-size:.76rem;line-height:1.4;letter-spacing:.15em;font-weight:800;color:var(--ice);display:flex;align-items:center;gap:10px}
.little-label>span{font-size:27px;line-height:1}
.scoop-hero{position:relative;overflow:hidden;padding-top:var(--nav-h);background:var(--paper)}
.scoop-hero__grid{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:28px;padding-top:48px;padding-bottom:44px;min-height:690px}
.scoop-hero__copy{position:relative;z-index:2}
.scoop-hero h1{font-size:clamp(72px,7.7vw,112px);line-height:.95;color:var(--ice);letter-spacing:-.035em;margin:23px 0 23px;max-width:650px}
.scoop-hero__lot{color:var(--ink);display:inline-block;position:relative;transform:rotate(-5deg);z-index:0}
.scoop-hero__lot:before{content:'';position:absolute;inset:14% -9% 6%;background:var(--pink);border-radius:46% 54% 50% 43%;transform:rotate(4deg);z-index:-1}
.scoop-hero__last{white-space:nowrap}.scoop-hero__dot{color:#E95786}
.scoop-hero__intro{font-size:1.02rem;line-height:1.65;max-width:35ch;color:var(--ink-2)}
.scoop-hero__actions{display:flex;align-items:center;gap:27px;margin:25px 0 25px}
.btn{font-weight:700;border-width:2px;box-shadow:3px 4px 0 var(--ink);font-size:.89rem;padding:1em 1.5em}
.btn__face{box-shadow:3px 4px 0 var(--ink)}
.scoop-hero__actions .btn>span:last-child{font-size:1.4rem;line-height:1}
.scoop-hero__flavor{font-weight:700;font-size:.9rem;display:flex;align-items:center;gap:10px;border-bottom:1.5px solid var(--ink);padding-bottom:4px}
.scoop-hero__flavor span{font-size:1.7rem;line-height:1;color:#CE416E}
.scoop-hero__location{display:flex;flex-wrap:wrap;align-items:center;gap:10px 17px;font-size:.8rem;color:var(--ink-2)}
.scoop-hero__location>a{padding-block:11px;text-decoration:underline;text-underline-offset:4px}
.scoop-stage{position:relative;isolation:isolate;width:100%;max-width:620px;aspect-ratio:1/1.07;justify-self:center}
.scoop-stage__circle{position:absolute;inset:11% 3% 9%;border-radius:50%;background:var(--ice-pale);transform:rotate(-8deg);border:1.5px solid rgba(20,96,206,.12)}
.scoop-stage__circle:after{content:'';position:absolute;inset:13px;border:1.5px dashed var(--ice);border-radius:50%;opacity:.24}
.scoop-stage__circle>span{position:absolute;bottom:9%;width:100%;text-align:center;font-family:var(--font-display);font-size:clamp(34px,4.5vw,65px);color:rgba(20,96,206,.1);letter-spacing:.07em}
.scoop-stage__cup{position:absolute;width:89%;top:-7%;left:5%;transform:rotate(9deg);filter:drop-shadow(10px 19px 0 rgba(21,54,90,.13));animation:cup-bob 7s ease-in-out infinite}
.scoop-stage__cup img{width:100%;height:auto;
  /* The generated extraction has an opaque backdrop. A vector silhouette
     clips the backdrop in the browser, preserving the source bitmap. */
  clip-path:polygon(8.984% 29.362%,10.073% 28.872%,14.428% 28.381%,16.697% 33.287%,18.330% 31.605%,19.964% 31.254%,21.779% 31.465%,23.775% 32.516%,24.955% 29.012%,26.225% 26.139%,27.586% 24.317%,29.310% 22.705%,30.762% 22.074%,32.577% 22.355%,34.483% 23.196%,35.935% 24.667%,38.294% 24.527%,41.289% 25.158%,43.466% 24.737%,45.009% 24.317%,47.641% 24.387%,49.909% 23.196%,52.722% 22.845%,54.446% 22.004%,56.261% 21.374%,58.167% 21.724%,59.982% 22.985%,61.706% 23.756%,63.430% 23.896%,65.245% 24.597%,67.332% 24.597%,68.603% 25.858%,69.691% 29.082%,71.869% 31.114%,73.503% 31.745%,74.773% 32.936%,77.042% 31.044%,79.673% 29.713%,81.851% 29.362%,83.303% 27.260%,85.662% 25.298%,88.203% 23.616%,90.835% 22.285%,93.103% 22.214%,92.740% 23.896%,91.924% 26.769%,91.198% 30.063%,90.200% 33.287%,89.383% 36.440%,89.111% 39.243%,89.655% 40.505%,91.379% 41.696%,91.652% 43.238%,90.835% 44.919%,89.201% 46.461%,88.475% 48.563%,87.387% 57.533%,85.753% 68.045%,84.211% 76.875%,82.577% 80.238%,80.309% 82.481%,76.951% 84.443%,71.688% 86.265%,65.245% 87.666%,57.895% 88.718%,49.909% 89.138%,41.107% 88.718%,33.394% 87.807%,26.770% 86.195%,21.688% 84.093%,19.147% 81.570%,17.604% 77.786%,16.334% 72.600%,15.064% 66.643%,13.975% 59.846%,12.886% 52.488%,12.160% 48.704%,11.797% 47.442%,10.980% 46.461%,9.982% 44.989%,9.982% 43.448%,10.436% 41.976%,11.343% 40.505%,10.617% 38.612%,9.891% 35.950%,9.347% 32.866%)}
.scoop-stage__seal{position:absolute;right:-2%;top:12%;width:122px;height:122px;background:var(--butter);color:var(--ink);clip-path:polygon(50% 0%,59% 5%,70% 3%,76% 12%,87% 13%,89% 24%,98% 30%,95% 42%,100% 50%,95% 59%,97% 70%,88% 76%,87% 87%,76% 89%,70% 98%,58% 95%,50% 100%,41% 95%,30% 97%,24% 88%,13% 87%,11% 76%,2% 70%,5% 58%,0% 50%,5% 41%,3% 30%,12% 24%,13% 13%,24% 11%,30% 2%,42% 5%);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(13deg);gap:1px}
.scoop-stage__seal>span{font-family:var(--font-hand);font-size:21px;line-height:1}.scoop-stage__seal b{font-family:var(--font-display);font-size:31px;line-height:1.05;font-weight:400}.scoop-stage__seal svg{width:26px;height:25px}
.scoop-stage__spark{position:absolute;font-size:64px;line-height:1;color:var(--ice);z-index:2}.scoop-stage__spark--one{left:7%;top:12%;transform:rotate(-12deg)}.scoop-stage__spark--two{right:2%;bottom:13%;font-size:73px;color:#DF6086}
.scoop-stage__doodle{position:absolute;display:block;color:var(--ink);width:69px;height:69px;z-index:2}
.scoop-stage__doodle--berry{left:-1%;bottom:24%;transform:rotate(-24deg);color:#B53962;background:var(--pink);border-radius:58% 47% 62% 44%;padding:11px}
.scoop-stage__doodle--cookie{right:0;top:44%;transform:rotate(22deg);width:65px;height:65px;background:var(--butter);border-radius:50%;padding:10px}
.scoop-stage__note{position:absolute;bottom:-1%;left:22%;font-family:var(--font-hand);font-weight:700;font-size:27px;line-height:1;transform:rotate(-8deg);color:var(--ink)}
.scoop-stage__note svg{position:absolute;left:100%;top:-12px;width:84px;transform:rotate(-17deg)}
.scoop-hero__bottom{display:flex;justify-content:space-between;align-items:center;padding-bottom:25px;gap:16px;font-size:.72rem;font-weight:800;letter-spacing:.13em;color:var(--ink-2)}
.scoop-hero__bottom a{display:flex;align-items:center;gap:12px}.scoop-hero__bottom a span{font-size:19px}
@keyframes cup-bob{0%,100%{transform:translateY(0) rotate(9deg)}50%{transform:translateY(-10px) rotate(7deg)}}
body.ready .scoop-hero__copy{animation:riseIn .7s var(--ease) backwards}
body.ready .scoop-stage{animation:shotIn 1s var(--ease) .1s backwards}
/* The awning ties the digital shop to the illustrated storefront. */
.awning{--awn-a:#1460CE;--awn-b:#307BDF}
.ticker{border-top:2px solid var(--ink);padding-block:22px}
.ticker__seam{opacity:.4}.ticker__item{font-family:var(--font-display);font-weight:400;font-size:1.35rem;letter-spacing:.01em}
.ticker__word:after{display:none}.ticker__item [data-flake]{width:23px;height:23px;color:var(--butter)}
.section{padding-block:85px}.sec-head{max-width:none;gap:12px;margin-bottom:37px}
.sec-head .lede{font-size:1rem;max-width:54ch}.t-xl{font-size:clamp(38px,4.5vw,64px);line-height:1.03;letter-spacing:-.025em;color:var(--ice)}
.eyebrow{font-size:.74rem;letter-spacing:.16em;font-weight:800}
#kinds .sec-head{max-width:730px}.kinds{grid-template-columns:repeat(5,1fr);gap:16px}
.kind,.kind:nth-child(4),.kind:nth-child(5){grid-column:auto;padding:16px 14px 18px;gap:12px;background:var(--ice-pale);border:1.5px solid var(--ink);border-radius:100px 100px 17px 17px;box-shadow:0 4px 0 var(--ink);text-align:center}
.kind:nth-child(2){background:var(--pink)}.kind:nth-child(3){background:var(--butter)}.kind:nth-child(4){background:#E0EACD}.kind:nth-child(5){background:#E2D5F5}
.kind:hover{background:var(--paper);box-shadow:0 7px 0 var(--ink)}
.kind__shot,.kind__art{grid-row:1;border-radius:90px 90px 14px 14px;aspect-ratio:1/1.04;border:0;padding:0;background:transparent}
.kind__shot img{border-radius:inherit}.kind__top{justify-content:center;min-height:50px;align-items:center}.kind__head{gap:0}.kind h3{font-size:1.45rem;line-height:1.03}.kind__tape,.kind__no,.kind__flake,.kind__glyph{display:none}
.kind__note{font-family:var(--font-ui);font-size:.82rem;line-height:1.5;color:var(--ink);min-height:64px}.kind__go{justify-content:center;font-size:.8rem;color:var(--ink);padding-top:4px}
.kind__art>.ic{width:65%;height:65%;color:var(--ink);transform:rotate(-8deg)}
.menu{background:#DCECF6;border-block:1.5px solid var(--ink)}.menu__bar{background:#DCECF6}.menu__bar:after{background:linear-gradient(90deg,transparent,#DCECF6)}
.menu__board{box-shadow:6px 7px 0 rgba(21,54,90,.14);border-color:var(--ink)}
.menu__name{font-family:var(--font-display);font-style:normal;font-size:2.5rem}.menu__head{padding-bottom:22px}.menu__mark{width:62px}.menu__where{font-size:1.2rem}
.menu__tab{background:#AFD1E8;color:var(--ink);font-size:.8rem}.menu__tab:hover{background:#BBDDF0}
.board__head h3{font-size:1.6rem}.dish h4{font-size:1.25rem}.dish .p,.row .p{font-family:var(--font-ui);font-weight:700;font-size:.85rem}
.menu__bleed{opacity:.5}
#gallery{overflow:hidden;background:var(--paper)}#gallery .sec-head{display:grid;grid-template-columns:1fr auto;align-items:end}#gallery .eyebrow{grid-column:1/-1}#gallery .lede{max-width:34ch}
.gal{grid-template-columns:repeat(4,1fr);align-items:start;gap:20px;padding:8px 0}
.gal .gal__i{grid-column:auto;aspect-ratio:4/5;margin:0;padding:8px 8px 42px;border:1.5px solid var(--ink);border-radius:9px;background:white;box-shadow:3px 5px 0 rgba(21,54,90,.12);overflow:visible;transform:rotate(-2deg)}
.gal .gal__i:nth-child(even){transform:rotate(2deg);margin-top:18px}
.gal .gal__i img{height:100%;border-radius:4px;object-fit:cover}
.gal__cap{background:none;color:var(--ink);border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-shadow:none;transform:none;opacity:1;bottom:4px;left:4px;right:4px;padding:4px 6px;font-family:var(--font-hand);font-size:1.03rem;text-align:center;line-height:1.05;min-height:30px;display:grid;place-items:center}
.gal__cap:after{display:none}.gal__frost,.gal__badge{display:none}
.gal .gal__i:hover{transform:translateY(-6px) rotate(0)}
.visit__grid{gap:34px}.card__hd{padding:20px 25px}.card__hd h3{font-size:1.6rem}.card__hd .sign{--sw:190px;--cord:25px}.card__hd .sign__card{padding:9px 13px}.card__hd .sign__word{font-size:2rem}.card__hd .sign__lead,.card__hd .sign__sub{font-size:.95rem}
.foot{background:var(--ice)}.foot__in{padding-bottom:15px}.foot__nav a{color:var(--paper)}.foot__base{color:rgba(255,248,236,.8)}.foot__logo img{height:84px;background:var(--paper);border-radius:50%;padding:8px}
.foot__farewell{font-family:var(--font-display);font-size:clamp(46px,7vw,100px);letter-spacing:-.03em;line-height:1;text-align:center;margin-bottom:45px}.foot__farewell span{color:var(--pink)}
.sign__fly{display:none}
.lb{transition:opacity .3s,visibility 0s .3s}
.lb.is-open{transition:opacity .3s,visibility 0s}
@media(min-width:1600px){.scoop-hero__grid{min-height:730px}.scoop-hero h1{font-size:118px}}
@media(max-width:1100px){
  .nav__wordmark{display:none}.nav__link{padding:.6em .65em}.nav__right{margin-left:0}.nav__phone{padding:11px 15px}
  .scoop-hero h1{font-size:8.5vw}.scoop-hero__grid{min-height:600px;gap:16px;padding-top:40px;padding-bottom:45px}.scoop-hero__actions{gap:18px}.scoop-stage__seal{width:100px;height:100px}.scoop-stage__seal b{font-size:27px}.scoop-stage__note{font-size:24px}
  .kinds{grid-template-columns:repeat(3,1fr);gap:22px}.kind__note{min-height:0}.kind{border-radius:90px 90px 16px 16px}.kind__shot,.kind__art{aspect-ratio:1.3/1}
}
@media(max-width:900px){
  :root{--nav-h:74px}.nav__logo img{height:52px}.nav__wordmark{display:block;font-size:1.2rem;max-width:76px}.nav__phone{display:none}.nav__right{margin-left:auto}
  .scoop-hero__grid{grid-template-columns:1fr 1fr;gap:8px;padding-top:42px;min-height:570px}.scoop-hero h1{font-size:8.4vw}.little-label{font-size:.7rem;letter-spacing:.1em;gap:6px}.scoop-hero__intro{font-size:.9rem}.scoop-hero__actions{flex-wrap:wrap;gap:17px}.scoop-hero__location{gap:5px 12px}.scoop-stage__note{left:12%;font-size:22px}.scoop-stage__spark{font-size:45px}.scoop-stage__doodle{width:50px;height:50px;padding:7px}
  .gal{grid-template-columns:repeat(4,1fr);gap:13px}.gal__cap{font-size:.86rem}.gal .gal__i{padding:6px 6px 40px}
}
@media(max-width:700px){
  .scoop-hero__grid{grid-template-columns:1fr;gap:0;padding-top:30px;padding-bottom:38px;min-height:0}
  .scoop-hero__copy{display:contents}.scoop-hero .little-label{grid-row:1;justify-content:center;font-size:.72rem;letter-spacing:.1em;gap:7px}.scoop-hero .little-label>span{font-size:23px}
  .scoop-hero h1{grid-row:2;font-size:clamp(54px,12.5vw,82px);line-height:.97;text-align:center;margin:16px 0 0;letter-spacing:-.03em}.scoop-hero h1>br:nth-of-type(2){display:none}.scoop-hero__last:before{content:' '}
  .scoop-stage{grid-row:3;max-width:365px;width:91%;aspect-ratio:1/1.03;margin-top:1px;margin-bottom:14px}
  .scoop-stage__cup{width:86%;left:7%;top:-7%}.scoop-stage__seal{top:9%;right:-3%;width:87px;height:87px}.scoop-stage__seal>span{font-size:17px}.scoop-stage__seal b{font-size:23px}.scoop-stage__seal svg{width:20px;height:19px}.scoop-stage__note{font-size:21px;left:16%;bottom:-1%}.scoop-stage__note svg{width:57px}.scoop-stage__spark--two{font-size:49px;bottom:10%}.scoop-stage__doodle--berry{left:0;bottom:19%}
  .scoop-hero__intro{grid-row:4;text-align:center;max-width:none;font-size:.88rem;line-height:1.5;margin-top:10px}
  .scoop-hero__actions{grid-row:5;justify-content:center;flex-wrap:nowrap;gap:20px;margin:19px 0}.scoop-hero__actions .btn{font-size:.8rem;padding:.96em 1.25em}.scoop-hero__flavor{font-size:.82rem;gap:5px;padding-block:9px 6px}.scoop-hero__flavor span{font-size:1.35rem}
  .scoop-hero__location{grid-row:6;justify-content:center;font-size:.78rem;gap:2px 12px}
  .scoop-hero__bottom{display:none}.section{padding-block:60px}.sec-head{gap:11px;margin-bottom:30px}.sec-head .lede{font-size:.9rem}.t-xl{font-size:40px}.ticker{padding-block:17px}.ticker__item{font-size:1.17rem}
  .kinds{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 14px}.kind,.kind:nth-child(4),.kind:nth-child(5){grid-column:auto;padding:12px 10px 16px;gap:10px}.kind:last-child{grid-column:1/-1;max-width:calc(50% - 7px);width:100%;justify-self:center}.kind__shot,.kind__art{aspect-ratio:1/1.05}.kind h3{font-size:1.23rem}.kind__note{font-size:.78rem;line-height:1.45;min-height:60px}.kind__go{font-size:.76rem}.kind__top{min-height:42px}
  #gallery .sec-head{display:grid;grid-template-columns:1fr}#gallery .lede{max-width:38ch}.gal{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 16px}.gal .gal__i{aspect-ratio:3/4;margin:0;padding:6px 6px 43px}.gal .gal__i:nth-child(even){margin-top:13px}.gal__cap{font-size:.96rem;line-height:1.05}
  .menu__name{font-size:2rem}.menu__head{padding-bottom:10px}.menu__mark{width:52px}.menu__blurb{font-size:.87rem}.menu__tab{font-size:.74rem}.board__head h3{font-size:1.4rem}.dish h4{font-size:1.15rem}
  .visit__grid{gap:25px}.card__hd{padding:18px 20px;flex-wrap:nowrap;gap:9px}.card__hd h3{font-size:1.4rem}.card__hd .sign{--sw:165px}.card__hd .sign__word{font-size:1.8rem}.card__hd .sign__lead,.card__hd .sign__sub{font-size:.85rem}.map__where b{font-size:1.1rem}.foot__farewell{margin-bottom:30px}.foot{padding-bottom:30px}
}
@media(max-width:360px){.scoop-hero h1{font-size:49px}.scoop-hero__actions{gap:13px}.scoop-hero__actions .btn{font-size:.75rem}.scoop-hero__flavor{font-size:.75rem}.nav__wordmark{font-size:1.05rem}.kind__note{font-size:.74rem}.card__hd .sign{--sw:143px}}
@media(max-width:960px){
  .nav__links .nav__link{font-family:var(--font-display);font-size:clamp(1.65rem,6vw,2.1rem);font-weight:400;padding:.3em 0;line-height:1.2}
  .nav__links .nav__link--tel{font-family:var(--font-ui);font-size:1rem;font-weight:700;padding-top:18px}
  .nav__status .sign{--sw:200px}.nav__status .sign__word{font-size:2rem}
}
@media(prefers-reduced-motion:reduce){.scoop-stage__cup{animation:none}}
