
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/fraunces-latin-full-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}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nunito-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}
@font-face{font-family:'Nunito';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/nunito-latin-600-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}
@font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/nunito-latin-700-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}
@font-face{font-family:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/nunito-latin-800-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}
@font-face{font-family:'Patrick Hand';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/patrick-hand-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}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/fraunces-latin-ext-full-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:'Nunito';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nunito-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+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:'Nunito';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/nunito-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/nunito-latin-ext-700-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/nunito-latin-ext-800-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:'Patrick Hand';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/patrick-hand-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+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Layout idea: a doodled farm day, grown up and local (plums, džezva, stećak, shingle roofs, Pliva mill). Sky hero with a living meadow (sheep, cow, hens, bee), then paper
   sections where vegetables and handmade things do the pointing. Every drawing has a wobbly pencil line
   that "boils" like hand-drawn animation. Single daylight theme by choice. */
:root{
  color-scheme: light;
  --ink:#2B2A2E;      /* pencil */
  --paper:#F7F1E3;    /* page */
  --sky:#DAE6E3;      /* hero */
  --meadow:#9DB87A;   /* hills, feature band */
  --leaf:#4A6B35;     /* green text on paper */
  --tomato:#C4503A;   /* actions */
  --sun:#E2B04A;      /* highlights */
  --plum:#6E4A7E;     /* second accent */
  --mute:#6B6772;
  --display:"Fraunces",Georgia,"Times New Roman",serif;
  --hand:"Patrick Hand","Comic Sans MS","Segoe Print",cursive;
  --body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gut:clamp(16px,4vw,56px);
  --hdr:62px;
  --wob:255px 18px 225px 18px/18px 225px 18px 255px;
  --wob2:18px 225px 18px 255px/255px 18px 225px 18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.5 var(--body);overflow-x:hidden}
h1,h2,h3,h4,p,ul,ol,dl,dd{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit}
button,input{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
:focus-visible{outline:3px dashed var(--ink);outline-offset:3px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hand{font:400 22px/1.15 var(--hand);color:var(--leaf)}
h1,h2,h3,.wm,.alt,.giant,.way b,.plist b,.caps li,.step output,.plan ol li b,.menu a{font-variation-settings:"SOFT" 100,"WONK" 0}
h2{font:800 clamp(34px,5vw,72px)/1 var(--display);letter-spacing:-.02em;text-wrap:balance}
h2 em,h1 em{font-style:normal;color:var(--tomato)}
.wrap{max-width:1328px;margin:0 auto}
section[id]{scroll-margin-top:calc(var(--hdr) + 14px)}

/* doodles */
.dd{display:block;width:100%;height:auto;overflow:visible}
.dd *{vector-effect:non-scaling-stroke}
.live .dd,.dd.live{filter:url(#w1);animation:boil .54s steps(1) infinite}
@keyframes boil{0%{filter:url(#w1)}33%{filter:url(#w2)}66%{filter:url(#w3)}}
.dd .lg,.dd .tail,.dd .head,.dd .wing,.dd .rays,.dd .chew{transform-box:fill-box}
.dd .lg{transform-origin:50% 0}
.walk .lg.a{animation:leg .5s ease-in-out infinite alternate}
.walk .lg.b{animation:leg .5s ease-in-out infinite alternate-reverse}
@keyframes leg{from{transform:rotate(-16deg)}to{transform:rotate(16deg)}}
.dd .tail{transform-origin:100% 0;animation:tail 1.6s ease-in-out infinite alternate}
@keyframes tail{from{transform:rotate(-10deg)}to{transform:rotate(14deg)}}
.dd .chew{transform-origin:50% 50%;animation:chew .7s ease-in-out infinite alternate}
@keyframes chew{to{transform:translate(2px,2px) scaleY(.9)}}
.graze .head{transform-origin:20% 30%;animation:graze 3.2s ease-in-out infinite}
@keyframes graze{0%,45%,100%{transform:none}60%,85%{transform:rotate(24deg) translateY(6px)}}
.dd .rays{transform-origin:50% 50%;animation:spin 24s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.dd .wing{transform-origin:50% 100%;animation:flap .12s linear infinite alternate}
@keyframes flap{to{transform:scaleY(.45)}}
.dd .sm{animation:smoke 3s ease-out infinite}.dd .sm.s2{animation-delay:1.5s}
@keyframes smoke{from{transform:translateY(8px);opacity:0}30%{opacity:1}to{transform:translate(8px,-18px);opacity:0}}
.peck{transform-origin:45% 95%;animation:peck 2.6s ease-in-out infinite}
@keyframes peck{0%,55%,100%{transform:none}65%,78%{transform:rotate(22deg)}71%{transform:rotate(14deg)}}
.bob{animation:bob 2.4s ease-in-out infinite}
.bob:nth-child(2n){animation-delay:-.8s}.bob:nth-child(3n){animation-delay:-1.5s}
@keyframes bob{50%{transform:translateY(-9%) rotate(3deg)}}
.hop{animation:hop .55s cubic-bezier(.3,1.6,.5,1)!important}
@keyframes hop{35%{transform:translateY(-34px) rotate(-6deg)}70%{transform:translateY(0) scale(1.06,.92)}}

/* header */
.hdr{position:fixed;z-index:50;inset:0 0 auto 0;height:var(--hdr);background:var(--paper);border-bottom:3px solid var(--ink);display:flex;align-items:center;gap:18px;padding:0 var(--gut)}
.wm{font:900 27px/1 var(--display);text-decoration:none;display:inline-flex;align-items:center;gap:2px;white-space:nowrap}
.wm i{display:inline-block;width:15px;margin:0 2px 0 3px}
.nav{display:flex;gap:2px;margin:0 auto}
.nav a{font:700 15px/1 var(--body);text-decoration:none;padding:10px 12px;border-radius:var(--wob);white-space:nowrap;border:2px solid transparent}
.nav a:hover{border-color:var(--ink);background:var(--sun);transform:rotate(-2deg)}
.util{display:flex;align-items:center;gap:8px;margin-left:auto}
.nav + .util{margin-left:0}
.ubtn{height:42px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;font:700 14.5px/1 var(--body);border:2.5px solid var(--ink);border-radius:var(--wob);text-decoration:none;background:var(--paper);transition:transform .15s}
.ubtn:hover{background:var(--sun);transform:rotate(-2deg)}
.count{font:700 13px/1 var(--body);background:var(--tomato);color:#fff;border-radius:99px;padding:3px 7px;min-width:22px;text-align:center}
.lang{display:inline-flex;border:2.5px solid var(--ink);border-radius:var(--wob2);padding:3px;height:42px}
.lang button{font:800 13px/1 var(--body);padding:0 10px;border-radius:var(--wob)}
.lang button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.menu-btn{display:none}
@media (max-width:1099px){.nav,.u-desk{display:none}.menu-btn{display:inline-flex}.hdr .util{margin-left:auto}}
.menu{position:fixed;inset:0;z-index:60;background:var(--sun);padding:84px var(--gut) 32px;display:none;flex-direction:column;gap:4px;overflow:auto}
.menu.open{display:flex}
.menu a{font:700 clamp(30px,9vw,52px)/1.1 var(--display);text-decoration:none;padding:10px 0;border-bottom:3px dashed var(--ink)}
.menu .close{position:absolute;top:10px;right:var(--gut)}

/* hero */
.hero{position:relative;background:var(--sky);padding-top:var(--hdr);overflow:hidden}
.hero-in{position:relative;z-index:2;max-width:1328px;margin:0 auto;padding:clamp(28px,5vw,64px) var(--gut) 0;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,4vw,64px);align-items:end}
.eyebrow{font:400 clamp(24px,2.6vw,36px)/1 var(--hand);color:var(--leaf);transform:rotate(-2deg);transform-origin:left;margin-bottom:10px}
h1{font:900 clamp(54px,9vw,144px)/.9 var(--display);letter-spacing:-.02em}
h1 .l{display:block;white-space:nowrap}
.o-dd{display:inline-block;width:.5em;vertical-align:-.04em;margin:0 .02em}
.lede{font-size:clamp(17px,1.5vw,21px);line-height:1.45;max-width:30em;margin-top:18px;font-weight:600}
.search{min-width:0;background:var(--paper);border:3px solid var(--ink);border-radius:var(--wob);padding:clamp(16px,2vw,24px);box-shadow:6px 7px 0 var(--ink);transform:rotate(1deg)}
.search label{display:block;margin-bottom:8px}
.sw{position:relative}
.sbox{display:flex;align-items:center;gap:8px;border:2.5px solid var(--ink);border-radius:var(--wob2);padding:5px 5px 5px 16px;background:#fff}
.sbox input{flex:1;min-width:0;border:0;background:none;outline:0;font-size:18px;height:46px}
.sbox input::placeholder{color:var(--mute)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;background:var(--tomato);color:#fff;font:800 15.5px/1 var(--body);border:2.5px solid var(--ink);border-radius:var(--wob);text-decoration:none;box-shadow:3px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translate(-1px,-2px) rotate(-1.5deg);box-shadow:5px 7px 0 var(--ink)}
.btn:active{transform:translate(2px,3px);box-shadow:1px 1px 0 var(--ink)}
.btn.on{background:var(--meadow);color:var(--ink)}
.btn.line{background:var(--paper);color:var(--ink)}
.sugg{position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob2);padding:8px;z-index:5;box-shadow:5px 6px 0 var(--ink);display:none}
.sugg.open{display:block}
.sugg button{display:flex;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:10px 12px;border-radius:10px;font-weight:800}
.sugg button span{font:400 17px/1.2 var(--hand);color:var(--mute)}
.sugg button:hover,.sugg button.act{background:var(--sun)}
.sugg p{padding:10px 12px;font-size:15px;color:var(--mute)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.chip{font:700 14px/1 var(--body);padding:9px 12px;border:2px dashed var(--ink);border-radius:var(--wob)}
.chip:hover{background:var(--sun);border-style:solid;transform:rotate(-2deg)}
.sunbox{position:absolute;z-index:1;top:calc(var(--hdr) + 18px);right:clamp(12px,6vw,110px);width:clamp(84px,11vw,170px)}
.cloud{position:absolute;z-index:1;width:clamp(90px,12vw,190px);animation:drift 70s linear infinite}
.cloud.c1{top:calc(var(--hdr) + 40px);left:0}.cloud.c2{top:calc(var(--hdr) + 84px);left:0;width:clamp(70px,8vw,130px);animation-duration:95s;animation-delay:-50s}.cloud.c3{top:calc(var(--hdr) + 8px);left:0;animation-duration:120s;animation-delay:-80s;width:clamp(60px,7vw,110px)}
@keyframes drift{from{transform:translateX(-25vw)}to{transform:translateX(110vw)}}
.scene{position:relative;height:clamp(210px,29vw,400px);margin-top:clamp(-70px,-3.5vw,0px)}
.scene > svg{position:absolute;left:-1%;top:0;width:102%;height:calc(100% + 24px);filter:url(#w1)}
.it{position:absolute;display:block}
.critter{display:block;width:100%;position:relative}
.walker{position:absolute;left:0;animation:cross 46s linear infinite}
.walker:hover{animation-play-state:paused}
@keyframes cross{from{transform:translateX(-18vw)}to{transform:translateX(108vw)}}
.bubble{position:absolute;left:50%;bottom:102%;transform:translateX(-50%) rotate(-4deg);background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:4px 12px;font:400 22px/1.2 var(--hand);white-space:nowrap;animation:pop .9s both;pointer-events:none;z-index:5}
@keyframes pop{0%{opacity:0;transform:translateX(-50%) scale(.4)}20%{opacity:1;transform:translateX(-50%) scale(1.1) rotate(-4deg)}80%{opacity:1}100%{opacity:0;transform:translateX(-50%) translateY(-14px) rotate(-4deg)}}
.hint{position:absolute;z-index:3;left:var(--gut);bottom:10px;background:var(--paper);border:2px solid var(--ink);border-radius:var(--wob);padding:2px 12px;transform:rotate(-2deg);color:var(--ink)}

/* scroll bee */
.flybee{position:fixed;z-index:45;right:10px;top:20%;width:46px;pointer-events:none;transition:top .25s linear}
.flybee > div{animation:bee 1.8s ease-in-out infinite}
@keyframes bee{25%{transform:translate(-8px,-6px) rotate(-8deg)}75%{transform:translate(6px,5px) rotate(8deg)}}
@media (max-width:760px){.flybee{width:34px;right:4px}}

/* map */
.places{padding:clamp(48px,7vw,104px) var(--gut);position:relative}
.map-in{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}
.map-head h2{font-size:clamp(34px,3.7vw,54px)}
.map-in > *{min-width:0}
.map-head p.note{margin-top:10px;color:var(--mute);font-size:15px;max-width:28em}
.filters{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
.filters button{font:700 14.5px/1 var(--body);padding:10px 14px;border:2.5px solid var(--ink);border-radius:var(--wob)}
.filters button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.plist{display:flex;gap:10px;overflow-x:auto;margin:18px calc(-1*var(--gut)) 0;padding:4px var(--gut) 10px;scrollbar-width:none}
.plist button{flex:none;text-align:left;padding:10px 14px;border:2.5px solid var(--ink);border-radius:var(--wob);background:#fff;display:grid;gap:0;transition:transform .15s}
.plist button:nth-child(2n){border-radius:var(--wob2)}
.plist b{font:600 21px/1.1 var(--display)}
.plist span{font:400 17px/1.2 var(--hand);color:var(--mute)}
.plist button:hover{transform:rotate(-1.5deg)}
.plist button[aria-pressed="true"]{background:var(--sun)}
.plist button[aria-pressed="true"] span{color:var(--ink)}
.plist button[hidden]{display:none}
.mapbox{position:relative;width:100%;max-width:620px;aspect-ratio:720/700;margin:0 auto}
.mapbox canvas,.mapbox > svg{position:absolute;inset:0;width:100%;height:100%}
.mapbox > svg text{font:400 19px var(--hand);fill:var(--mute)}
.mk{position:absolute;width:46px;height:46px;margin:-23px 0 0 -23px;display:grid;place-items:center;transition:opacity .3s}
.mk i{width:34px;height:34px;border-radius:50%;border:2.5px solid var(--ink);background:#fff;display:grid;place-items:center;padding:4px;transition:transform .2s,background .2s}
.mk:hover i{transform:scale(1.2) rotate(-8deg)}
.mk[aria-pressed="true"] i{background:var(--sun);transform:scale(1.35);box-shadow:2px 3px 0 var(--ink)}
.mk em{position:absolute;top:50%;transform:translateY(-50%);font:400 19px/1 var(--hand);font-style:normal;white-space:nowrap;background:var(--paper);border:2px solid var(--ink);padding:1px 8px;border-radius:var(--wob);pointer-events:none}
.mk.r em{left:44px}.mk.l em{right:44px}.mk.up em{top:0}.mk.dn em{top:44px}
.mk.dim{opacity:.25}
.card{background:#fff;border:3px solid var(--ink);border-radius:var(--wob2);padding:clamp(20px,2.2vw,28px);display:grid;gap:12px;align-content:start;box-shadow:6px 7px 0 var(--ink);position:relative}
.card h3{font:700 clamp(30px,3vw,42px)/1 var(--display)}
.card > p{font-size:15.5px;line-height:1.45}
.card .pic{position:absolute;right:18px;top:-34px;width:70px;transform:rotate(8deg)}
.facts{display:grid;gap:6px;border-top:2.5px dashed var(--ink);padding-top:10px}
.facts h4{font:400 20px/1.1 var(--hand);color:var(--leaf)}
.facts li{font-size:14.5px;line-height:1.4;padding-left:20px;position:relative}
.facts li::before{content:"";position:absolute;left:0;top:.3em;width:10px;height:10px;border-radius:50% 60% 50% 60%;background:var(--tomato);border:2px solid var(--ink)}
.facts li b{font-weight:800}
.card-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border-top:2.5px dashed var(--ink);padding-top:12px}
.card-foot small{font-size:12.5px;line-height:1.4;color:var(--mute)}
.card-foot a{color:var(--leaf);font-weight:700}
.card.swap > *{animation:rise .4s cubic-bezier(.3,1.4,.5,1) both}
.card.swap > *:nth-child(3){animation-delay:.05s}.card.swap > *:nth-child(4){animation-delay:.1s}.card.swap > *:nth-child(5){animation-delay:.15s}.card.swap > *:nth-child(6){animation-delay:.2s}
@keyframes rise{from{opacity:0;transform:translateY(14px) rotate(-1deg)}}
@media (min-width:1100px){
  .map-in{grid-template-columns:minmax(260px,320px) minmax(0,1fr) minmax(300px,360px);gap:clamp(16px,2.4vw,40px)}
  .plist{flex-direction:column;overflow:visible;margin:18px 0 0;padding:0;gap:8px}
  .plist button{grid-template-columns:1fr auto;align-items:baseline;gap:10px}
}

/* five ways */
.ways{padding:clamp(40px,6vw,88px) var(--gut) clamp(48px,7vw,104px);background:var(--paper)}
.ways-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:clamp(28px,4vw,56px)}
.ways-head p{max-width:26em;color:var(--mute);font-weight:600}
.waygrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.way{display:grid;gap:10px;align-content:start;padding:18px 16px 20px;border:3px solid var(--ink);border-radius:var(--wob);text-decoration:none;background:#fff;box-shadow:5px 6px 0 var(--ink);transition:transform .2s,box-shadow .2s,background .2s}
.way:nth-child(2n){border-radius:var(--wob2);transform:rotate(.5deg)}
.way:nth-child(2n+1){transform:rotate(-.5deg)}
.way .pic{height:110px;display:block;margin:0 auto 4px}
.pic .dd{height:100%;width:auto;max-width:100%;margin:0 auto}
.card .pic .dd{height:auto;width:100%}
.way b{font:700 clamp(21px,1.9vw,27px)/1.05 var(--display)}
.way p{font-size:14.5px;line-height:1.4}
.way .go{font:400 21px/1 var(--hand);color:var(--tomato)}
.way:hover{transform:translateY(-8px) rotate(0);box-shadow:8px 12px 0 var(--ink)}
.way:nth-child(1):hover{background:#E6EBD6}.way:nth-child(2):hover{background:#F3DFD7}.way:nth-child(3):hover{background:#E0EAE8}.way:nth-child(4):hover{background:#F1E2B9}.way:nth-child(5):hover{background:#E8DFEC}
.way:hover .pic{animation:hop .55s cubic-bezier(.3,1.6,.5,1)}
@media (max-width:1099px){.waygrid{grid-template-columns:repeat(2,minmax(0,1fr))}.way:last-child{grid-column:1/-1}}
@media (max-width:480px){.way .pic{height:84px}.way{padding:14px 12px 16px}}

/* parade */
.parade{background:var(--sun);border-block:3px solid var(--ink);overflow:hidden;padding:18px 0 10px}
.parade > div{display:flex;width:max-content;animation:slide 80s linear infinite;align-items:flex-end}
.parade span{display:block;width:clamp(64px,7vw,104px);margin:0 clamp(14px,2vw,30px)}
.parade span.sm{width:clamp(44px,4.6vw,70px)}
@keyframes slide{to{transform:translateX(-50%)}}

/* feature */
.feat{background:var(--meadow);position:relative;padding:clamp(56px,8vw,112px) var(--gut);border-bottom:3px solid var(--ink)}
.feat .wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,5vw,80px);align-items:center}
.feat .hand{color:var(--ink)}
.peakpic{position:relative;width:min(100%,520px)}
.peakpic .s1{position:absolute;width:19%;left:38%;top:-3%}
.peakpic .s2{position:absolute;width:17%;right:-2%;bottom:-2%;transform:rotate(-10deg)}
.peakpic .s3{position:absolute;width:15%;left:2%;bottom:0}
.alt{font:700 clamp(72px,11vw,170px)/.9 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:6px}
.alt small{font:400 .4em/1 var(--hand);margin-left:.1em}
.feat h2{margin-bottom:14px}
.feat h2 em{color:#fff;-webkit-text-stroke:0}
.feat p.big{font-size:clamp(18px,1.6vw,22px);line-height:1.4;font-weight:600;max-width:30em}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}
.two-col > div{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--wob);padding:14px 16px}
.two-col > div:last-child{border-radius:var(--wob2)}
.two-col h4{font:400 21px/1.1 var(--hand);color:var(--leaf);margin-bottom:4px}
.two-col li{font-size:14.5px;line-height:1.4;padding:6px 0}
.two-col li b{display:block;font-weight:800}
.row{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:860px){.feat .wrap{grid-template-columns:1fr}.two-col{grid-template-columns:1fr}}

/* goods */
.goods{padding:clamp(56px,8vw,112px) var(--gut)}
.goods .wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(28px,5vw,88px);align-items:start}
.veg{display:flex;gap:clamp(8px,1.4vw,20px);align-items:flex-end;margin-bottom:14px}
.veg span{display:block;width:clamp(44px,5.4vw,76px);transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.veg span:hover{transform:translateY(-10px) rotate(-5deg)}
.veg span:nth-child(2){width:clamp(30px,3.6vw,50px)}
.goods h2{margin:6px 0 16px}
.goods .txt{font-size:clamp(17px,1.4vw,20px);max-width:32em;font-weight:600}
.caps{margin-top:26px;display:grid;gap:10px}
.caps li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;border:2.5px solid var(--ink);border-radius:var(--wob);background:#fff;font:600 clamp(19px,2vw,25px)/1 var(--display)}
.caps li:nth-child(2n){border-radius:var(--wob2)}
.st{font:800 13px/1 var(--body);padding:7px 10px;border-radius:var(--wob);display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border:2px solid var(--ink)}
.st::before{content:"";width:9px;height:9px;border-radius:50%;border:2px solid var(--ink)}
.st.yes{background:var(--meadow)}.st.yes::before{background:var(--ink)}
.st.unk{border-style:dashed;color:var(--mute)}.st.unk::before{border-style:dashed}
.st.pau{background:var(--sun)}.st.pau::before{border-radius:2px;background:var(--ink)}
.st.no{background:var(--paper)}.st.no::before{height:0;border-width:2px 0 0;border-radius:0;width:10px}
.caps-note{margin-top:14px;font:400 27px/1.1 var(--hand);color:var(--tomato);transform:rotate(-1.5deg);transform-origin:left}
.ex{background:#fff;border:3px solid var(--ink);border-radius:var(--wob2);padding:clamp(20px,2.4vw,32px);display:grid;gap:16px;box-shadow:6px 7px 0 var(--ink);transform:rotate(1deg)}
.ex-flag{justify-self:start;background:var(--sun);border:2px solid var(--ink);border-radius:var(--wob);padding:2px 12px;transform:rotate(-3deg);color:var(--ink)}
.ex h3{font:700 clamp(27px,2.8vw,38px)/1.05 var(--display)}
.ex dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;font-size:15px}
.ex dt{color:var(--mute)}.ex dd{font-weight:800;text-align:right}
.jars{display:flex;flex-wrap:wrap;gap:4px;min-height:58px;align-items:flex-end;border-bottom:3px solid var(--ink);padding:0 4px}
.jars span{width:34px;display:block;animation:hop .5s cubic-bezier(.3,1.6,.5,1)}
.step{display:flex;align-items:center;gap:14px;justify-content:space-between}
.step button{width:54px;height:54px;border-radius:50%;border:2.5px solid var(--ink);font:700 28px/1 var(--display);display:grid;place-items:center;background:var(--sun);box-shadow:2px 3px 0 var(--ink)}
.step button:hover:not(:disabled){transform:rotate(-8deg) scale(1.06)}
.step button:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}
.step output{font:700 60px/1 var(--display);font-variant-numeric:tabular-nums;text-align:center}
.step output small{display:block;font:400 19px/1.1 var(--hand);color:var(--mute)}
.ladder{display:flex;gap:6px;flex-wrap:wrap}
.ladder span{font:800 13px/1 var(--body);padding:6px 9px;border-radius:8px;border:2px solid var(--ink);font-variant-numeric:tabular-nums}
.ladder span.on{background:var(--meadow)}
.ladder span.bad{text-decoration:line-through;color:var(--mute);border:2px dashed #C9C4BB}
.ex .msg{font-size:14.5px;line-height:1.45;background:#F1E2B9;border:2px dashed var(--ink);border-radius:var(--wob);padding:12px 16px;display:none}
.ex .msg.show{display:block;animation:rise .4s both}
@media (max-width:860px){.goods .wrap{grid-template-columns:1fr}}

/* how + plan */
.how{background:var(--sky);border-block:3px solid var(--ink);padding:clamp(56px,8vw,112px) var(--gut)}
.how .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,88px);align-items:start}
.how h2{margin:6px 0 24px}
.rules{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rules li{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--wob);padding:16px 18px 18px;display:grid;gap:6px;align-content:start}
.rules li:nth-child(2n){border-radius:var(--wob2)}
.rules .pic{height:56px;display:block}
.rules .pic .dd{margin:0}
.rules h3{font:600 clamp(20px,1.9vw,25px)/1.1 var(--display)}
.rules p{font-size:15px;line-height:1.45}
.plan{background:#fff;border:3px solid var(--ink);border-radius:var(--wob2);padding:clamp(20px,2.4vw,32px);display:grid;gap:14px;box-shadow:6px 7px 0 var(--ink);position:sticky;top:calc(var(--hdr) + 20px);transform:rotate(-1deg)}
.plan h3{font:700 clamp(28px,3vw,40px)/1 var(--display)}
.plan ol{display:grid;counter-reset:s}
.plan ol li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:2.5px dashed var(--ink);counter-increment:s;animation:rise .4s both}
.plan ol li::before{content:counter(s);font:700 15px/1 var(--display);width:30px;height:30px;border-radius:50%;border:2.5px solid var(--ink);background:var(--sun);display:grid;place-items:center;flex:none}
.plan ol li b{font:600 21px/1.05 var(--display);display:block}
.plan ol li span{font:400 17px/1.2 var(--hand);color:var(--mute)}
.plan ol li button{width:36px;height:36px;border-radius:50%;border:2.5px solid var(--ink);font-size:18px;line-height:1;font-weight:800}
.plan ol li button:hover{background:var(--tomato);color:#fff}
.plan .empty{padding:18px;border:2.5px dashed var(--ink);border-radius:var(--wob);color:var(--mute);font-size:15px;display:flex;align-items:center;gap:14px}
.plan .empty i{width:54px;flex:none}
.plan small{font-size:13px;color:var(--mute);line-height:1.4}
@media (max-width:860px){.how .wrap{grid-template-columns:1fr}.plan{position:static}}
@media (max-width:560px){.rules{grid-template-columns:1fr}}

/* join + footer */
.join{padding:clamp(48px,7vw,96px) var(--gut)}
.join .wrap{display:flex;justify-content:space-between;align-items:end;gap:28px;flex-wrap:wrap}
.join h2{font-size:clamp(32px,4.6vw,64px);max-width:13em}
.join p{max-width:26em;color:var(--mute);margin-bottom:16px;font-weight:600}
.foot{background:var(--meadow);position:relative;padding:clamp(70px,9vw,120px) var(--gut) 110px;border-top:3px solid var(--ink)}
.foot .animals{position:absolute;left:0;right:0;bottom:100%;height:0}
.foot .animals .it{bottom:-6px}
.foot .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:28px;margin-bottom:clamp(28px,5vw,64px)}
.foot h4{font:400 22px/1.1 var(--hand);margin-bottom:8px}
.foot li{padding:3px 0}
.foot li a{text-decoration:none;font-weight:800;border-bottom:2.5px solid transparent}
.foot li a:hover{border-color:var(--ink)}
.foot .small{font-size:14px;line-height:1.5;max-width:30em;font-weight:600}
.giant{font:700 clamp(72px,21vw,360px)/.8 var(--display);letter-spacing:-.02em;white-space:nowrap;display:flex;align-items:center;margin-left:-.03em}
.giant i{display:inline-block;width:.2em;margin:0 .03em;align-self:flex-end;padding-bottom:.1em}
@media (min-width:1100px){.foot{padding-bottom:clamp(40px,6vw,72px)}}

/* dock */
.dock{position:fixed;z-index:40;left:12px;right:12px;bottom:12px;background:var(--paper);border-radius:var(--wob);display:flex;padding:5px;gap:4px;border:3px solid var(--ink);box-shadow:4px 5px 0 var(--ink)}
.dock a{flex:1;height:44px;border-radius:var(--wob2);display:inline-flex;align-items:center;justify-content:center;gap:8px;font:800 14px/1 var(--body);text-decoration:none}
.dock a:first-child{background:var(--tomato);color:#fff;border:2px solid var(--ink)}
@media (min-width:1100px){.dock{display:none}}

/* reveal */
html.js .rv{opacity:.2;transform:translateY(26px) rotate(-1deg);transition:opacity .7s,transform .7s cubic-bezier(.3,1.5,.5,1)}
html.js .rv.in{opacity:1;transform:none}
html.js .way.rv.in:nth-child(2n){transform:rotate(.5deg)}html.js .way.rv.in:nth-child(2n+1){transform:rotate(-.5deg)}
html.js .way.rv.in:hover{transform:translateY(-8px)}
html.js .ex.rv.in{transform:rotate(1deg)}html.js .plan.rv.in{transform:rotate(-1deg)}
html.js .way.rv{transition-delay:calc(var(--i,0)*70ms)}
@media (max-width:760px){.hero-in{grid-template-columns:minmax(0,1fr)}.search{transform:none}.it.hide-m{display:none}}
@media (max-width:760px){.sunbox{top:calc(var(--hdr) + 4px);right:34px;width:58px}.cloud.c1,.cloud.c2{display:none}.eyebrow{max-width:72%}.scene{height:250px;margin-top:8px}.hint{display:none}.mk em{font-size:15px;padding:0 5px}.mk.l em{right:40px}.mk.r em{left:40px}.mk{width:40px;height:40px;margin:-20px 0 0 -20px}.mk i{width:28px;height:28px;padding:3px}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  html.js .rv{opacity:1;transform:none}
  .walker{position:absolute;transform:translateX(var(--rx,30vw))}
}

/* ---------- place and listing pages ---------- */
.view[hidden]{display:none}
.badge{display:inline-flex;align-items:center;gap:5px;font:800 12.5px/1 var(--body);letter-spacing:.01em;background:var(--meadow);border:2px solid var(--ink);border-radius:var(--wob);padding:3px 9px 3px 4px;white-space:nowrap;vertical-align:middle;color:var(--ink)}
.badge i{width:18px;display:block}
.badge .dd *{stroke-width:2px}
.badge.big{font-size:15px;padding:5px 12px 5px 6px;transform:rotate(-3deg);box-shadow:2px 3px 0 var(--ink)}
.badge.big i{width:24px}
.badge.only{padding:3px;border-radius:50%}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tags li{font:700 13px/1 var(--body);padding:6px 10px;border:2px solid var(--ink);border-radius:var(--wob);background:var(--paper)}
.toast{position:fixed;z-index:80;left:50%;bottom:84px;transform:translateX(-50%) rotate(-1deg);background:var(--ink);color:var(--paper);font:700 15px/1.3 var(--body);padding:12px 18px;border-radius:var(--wob);max-width:min(92vw,460px);text-align:center;animation:rise .3s both}

.review{margin-top:var(--hdr);background:#EDE4F0;border-bottom:2.5px dashed var(--plum);padding:10px var(--gut);font-size:14px}
.review .wrap{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center}
.review .hand{color:var(--plum);font-size:21px}
.review p{color:#4d3a57}
.seg{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.seg b{font-weight:800}
.seg button{font:700 13px/1 var(--body);padding:7px 10px;border:2px solid var(--plum);border-radius:var(--wob);background:#fff;color:#4d3a57}
.seg button[aria-pressed="true"]{background:var(--plum);color:#fff}
.review details{flex-basis:100%}
.review summary{cursor:pointer;font-weight:800;color:#4d3a57;width:max-content;max-width:100%}
.seo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:14px 28px;margin:12px 0 6px}
.serp{background:#fff;border:2px solid var(--plum);border-radius:10px;padding:14px 16px;display:grid;gap:4px;align-content:start}
.serp small{font-size:12.5px;color:var(--mute);overflow-wrap:anywhere}
.serp b{font:700 18px/1.25 var(--body);color:#2d4f9a}
.serp span{font-size:13.5px;line-height:1.45;color:#3c3a40}
.seo dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 14px;font-size:13px;align-content:start}
.seo dt{font-weight:800;color:#4d3a57}
.seo dd{overflow-wrap:anywhere}
@media (max-width:760px){.seo{grid-template-columns:minmax(0,1fr)}}

.crumbs{margin-bottom:clamp(14px,2vw,24px)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:14px;font-weight:700}
.crumbs li{display:flex;gap:8px;align-items:center}
.crumbs li + li::before{content:"›";color:var(--mute)}
.crumbs a{color:var(--leaf)}
.crumbs span{color:var(--mute)}

.phead{background:var(--sky);border-bottom:3px solid var(--ink);padding:clamp(18px,2.6vw,32px) var(--gut) clamp(32px,5vw,64px)}
.phead-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,4.5vw,72px);align-items:center}
.phead-grid > *{min-width:0}
.phead h1{font-size:clamp(44px,6.6vw,104px);line-height:.95;overflow-wrap:anywhere}
.phead .lede{max-width:32em}
.factrow{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 22px}
.factrow li{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--wob);padding:8px 14px;display:grid;gap:1px}
.factrow li:nth-child(2n){border-radius:var(--wob2)}
.factrow span{font:400 17px/1.1 var(--hand);color:var(--leaf)}
.factrow b{font:700 19px/1.15 var(--display)}
.photo{margin:0;position:relative}
.photo .frame{border:3px solid var(--ink);border-radius:14px 22px 12px 26px/22px 12px 26px 14px;overflow:hidden;box-shadow:6px 7px 0 var(--ink);background:var(--paper);aspect-ratio:3/2}
.photo.big .frame{aspect-ratio:4/3}
.photo img{display:block;width:100%;height:100%;object-fit:cover;max-width:100%}
.photo::before{content:"";position:absolute;z-index:2;top:-12px;left:50%;width:92px;height:26px;margin-left:-46px;background:rgba(226,176,74,.82);border:2px solid var(--ink);transform:rotate(-3deg)}
.photo figcaption{margin-top:12px;font-size:13px;line-height:1.4;color:var(--mute)}
.photo figcaption b{font:400 19px/1.2 var(--hand);color:var(--ink);display:block}
.photo figcaption a{color:inherit}
.phead .photo{transform:rotate(1.2deg)}
.phead .photo .peek{position:absolute;z-index:3;width:21%;left:-6%;bottom:9%;transform:rotate(-6deg)}
.phead .photo .peek2{position:absolute;z-index:3;width:8%;right:4%;bottom:14%}
.pscene{position:relative;max-width:520px;margin:0 auto;width:100%}
.pscene .a{position:absolute;width:22%;left:6%;bottom:2%}
.pscene .b{position:absolute;width:8%;right:10%;bottom:0}
.pscene.water{max-width:400px}
.pscene.water .a{width:20%;left:-4%;bottom:-2%}

.psec{padding:clamp(40px,6vw,88px) var(--gut)}
.psec + .psec{padding-top:0}
.psec h2{font-size:clamp(30px,3.8vw,52px);margin-bottom:clamp(16px,2vw,24px)}
.psec .sub{color:var(--mute);font-weight:600;margin:-10px 0 18px}
.two{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4.5vw,72px);align-items:start}
.two > *{min-width:0}
.seelist{display:grid;gap:14px}
.seelist li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;align-items:center;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:14px 18px}
.seelist li:nth-child(2n){border-radius:var(--wob2)}
.seelist i{display:block;height:56px}
.seelist i .dd{height:100%;width:auto;max-width:100%;margin:0 auto}
.seelist b{font:700 22px/1.1 var(--display);display:block;margin-bottom:2px}
.seelist p{font-size:15.5px;line-height:1.45}
.note{background:#F1E2B9;border:2.5px solid var(--ink);border-radius:var(--wob2);padding:clamp(18px,2vw,26px);transform:rotate(1deg);box-shadow:5px 6px 0 var(--ink);display:grid;gap:10px;align-content:start}
.note h2,.note h3{font:400 clamp(27px,2.6vw,34px)/1.05 var(--hand);margin:0}
.note li{padding:8px 0 8px 30px;position:relative;font-size:15.5px;line-height:1.45;border-top:2px dashed var(--ink)}
.note li:first-child{border-top:0}
.note li::before{content:"";position:absolute;left:2px;top:13px;width:14px;height:14px;border:2.5px solid var(--ink);border-radius:4px;background:var(--paper)}
.note li b{display:block;font-weight:800}
.note p{font-size:15.5px;line-height:1.45}
.note a{font-weight:800;color:var(--ink)}
.photos2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3.5vw,48px)}
.photos2 .photo:nth-child(1){transform:rotate(-1.2deg)}
.photos2 .photo:nth-child(2){transform:rotate(1deg);margin-top:clamp(0px,3vw,40px)}

.lf{margin:0 0 18px}
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:16px}
.lgrid + h3{margin-top:clamp(26px,3.4vw,44px)}
.psec h3.hand{font-size:28px;margin-bottom:12px}
.lcard{display:grid;grid-template-columns:62px minmax(0,1fr);gap:4px 14px;align-content:start;padding:16px 16px 14px;background:#fff;border:3px solid var(--ink);border-radius:var(--wob);box-shadow:4px 5px 0 var(--ink);text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s}
.lcard:nth-child(2n){border-radius:var(--wob2)}
.lcard:hover{transform:translate(-2px,-4px) rotate(-.6deg);box-shadow:7px 10px 0 var(--ink);background:#FBF6E6}
.lcard[hidden]{display:none}
.lcard .lpic{grid-row:1 / span 5;height:58px;display:block;transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.lcard .lpic .dd{height:100%;width:auto;max-width:100%;margin:0 auto}
.lcard:hover .lpic{transform:translateY(-6px) rotate(-6deg)}
.lcard .ltype{font:400 18px/1.1 var(--hand);color:var(--leaf)}
.lcard b{font:700 22px/1.12 var(--display);display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.lcard .lloc{font-size:13.5px;font-weight:700;color:var(--mute)}
.lcard p{font-size:14.5px;line-height:1.42;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:2px 0 6px}
.lcard .go{font:400 20px/1 var(--hand);color:var(--tomato)}
.empty-hosts{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;align-items:center;border:3px dashed var(--ink);border-radius:var(--wob);padding:clamp(18px,2.4vw,28px);max-width:720px}
.empty-hosts b{font:700 24px/1.1 var(--display);display:block;margin-bottom:4px}
.empty-hosts p{margin-bottom:12px;color:var(--mute);font-weight:600}
.mini{border:3px solid var(--ink);border-radius:var(--wob);background:#fff;padding:10px;box-shadow:5px 6px 0 var(--ink);max-width:460px;transform:rotate(-1deg)}
.mini svg{display:block;width:100%;height:auto}
.mini text{font:400 26px var(--hand);fill:var(--mute)}
.mini text.here{font:700 30px var(--display);fill:var(--ink)}
.near{display:grid;gap:12px}
.near a{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 16px;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);text-decoration:none;transition:transform .15s}
.near a:nth-child(2n){border-radius:var(--wob2)}
.near a:hover{transform:rotate(-1deg) translateY(-2px);background:#FBF6E6}
.near i{display:block;height:44px}
.near i .dd{height:100%;width:auto;max-width:100%;margin:0 auto}
.near b{font:700 21px/1.1 var(--display);display:block}
.near span{font:400 18px/1.15 var(--hand);color:var(--mute)}
.near em{font:400 20px/1 var(--hand);font-style:normal;color:var(--tomato)}
.mapnote{font-size:13.5px;color:var(--mute);margin-top:14px}
.srcs{border-top:2.5px dashed var(--ink);padding-top:clamp(22px,3vw,36px)!important}
.srcs h2{font:400 28px/1.1 var(--hand);color:var(--leaf);margin-bottom:8px}
.srcs p{font-size:14px;line-height:1.6;color:var(--mute);max-width:70em}
.srcs a,.linkbtn{color:var(--leaf);font-weight:700;text-decoration:underline;font-size:inherit}

.lhead h1{font-size:clamp(36px,4.8vw,70px);line-height:1;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;overflow-wrap:anywhere}
.lhead-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(280px,4fr);gap:clamp(24px,4.5vw,72px);align-items:start}
.lhead-grid > *{min-width:0}
.lhead .lloc{font-weight:700;margin:12px 0 14px;font-size:16.5px}
.lhead .lloc a{color:var(--leaf)}
.lhead .lede{max-width:34em;margin-top:16px}
.lart{margin-top:24px;display:flex;align-items:flex-end;gap:18px;max-width:560px}
.lart .main{width:min(190px,40%)}
.lart .side{width:min(84px,18%)}
.gal{margin-top:24px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;max-width:640px}
.gal div{aspect-ratio:4/3;border:3px solid var(--ink);border-radius:12px 20px 10px 22px/20px 10px 22px 12px;background:repeating-linear-gradient(-45deg,#F7F1E3 0 10px,#EBE2CC 10px 20px);display:grid;place-items:center;padding:8px;text-align:center;font:400 16px/1.15 var(--hand);color:var(--mute)}
.gal div:nth-child(n+2){align-self:end}
.contact{background:var(--paper);border:3px solid var(--ink);border-radius:var(--wob2);padding:clamp(18px,2vw,26px);box-shadow:6px 7px 0 var(--ink);display:grid;gap:10px;transform:rotate(1deg);position:sticky;top:calc(var(--hdr) + 18px)}
.contact .hand{font-size:26px}
.contact .btn{width:100%;gap:10px}
.contact .btn small{font:700 12.5px/1 var(--body);opacity:.85}
.contact .txt{font-size:13.5px;color:var(--mute);margin:-4px 0 2px;overflow-wrap:anywhere}
.contact .chat{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.contact .l_note{font-size:13px;line-height:1.45;color:var(--mute);border-top:2.5px dashed var(--ink);padding-top:10px;margin-top:2px}
.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 22px;font-size:16px;max-width:560px}
.kv dt,.kv dd{padding:10px 0;border-top:2px dashed var(--ink)}
.kv dt:first-of-type,.kv dt:first-of-type + dd{border-top:0}
.kv dt{font:400 20px/1.2 var(--hand);color:var(--leaf)}
.kv dd{font-weight:700}
.claim{background:var(--sun);border-block:3px solid var(--ink);padding:clamp(28px,4vw,52px) var(--gut)}
.claim .wrap{display:grid;grid-template-columns:clamp(70px,9vw,120px) minmax(0,1fr) auto;gap:clamp(16px,3vw,40px);align-items:center}
.claim h2{font-size:clamp(28px,3.4vw,46px);margin-bottom:6px}
.claim p{font-weight:600;max-width:34em}
.claim.done{background:var(--meadow)}
.claim.done .wrap{grid-template-columns:clamp(50px,6vw,80px) minmax(0,1fr)}
.claimform{grid-column:1/-1;background:var(--paper);border:3px solid var(--ink);border-radius:var(--wob);padding:clamp(18px,2.4vw,28px);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(18px,3vw,40px)}
.claimform[hidden]{display:none}
.claimform ol{display:grid;gap:10px;counter-reset:c;align-content:start}
.claimform ol li{counter-increment:c;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;font-weight:600;font-size:15.5px}
.claimform ol li::before{content:counter(c);width:32px;height:32px;border-radius:50%;border:2.5px solid var(--ink);background:var(--sun);display:grid;place-items:center;font:700 16px/1 var(--display)}
.claimform form{display:grid;gap:10px}
.claimform label{font:400 19px/1.1 var(--hand);color:var(--leaf);display:grid;gap:4px}
.claimform input,.claimform select{font:600 16px/1.2 var(--body);color:var(--ink);height:46px;padding:0 12px;border:2.5px solid var(--ink);border-radius:10px;background:#fff;width:100%}
.claimform .msg{font-size:14.5px;line-height:1.45;background:#F1E2B9;border:2px dashed var(--ink);border-radius:var(--wob);padding:12px 16px}
.srcline{padding:18px var(--gut) 0;font-size:13.5px;color:var(--mute)}
.srcline .wrap{display:flex;flex-wrap:wrap;gap:4px 14px}
.srcline a{color:inherit}
.card .more{font-weight:800;color:var(--leaf);font-size:15px}
@media (max-width:900px){
  .phead-grid,.two,.lhead-grid{grid-template-columns:minmax(0,1fr)}
  .contact{position:static;transform:none}
  .note{transform:none}
  .claim .wrap{grid-template-columns:64px minmax(0,1fr)}
  .claim .wrap > .btn{grid-column:1/-1;justify-self:start}
  .claimform{grid-template-columns:minmax(0,1fr)}
  .phead .photo .peek{left:-2%}
}
@media (max-width:560px){
  .photos2{grid-template-columns:minmax(0,1fr)}
  .photos2 .photo:nth-child(2){margin-top:0}
  .empty-hosts{grid-template-columns:minmax(0,1fr)}
  .empty-hosts > i{width:90px}
  .seelist li{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:12px 14px}
  .near a{grid-template-columns:44px minmax(0,1fr)}
  .near em{display:none}
  .toast{bottom:76px}
}
.btn.line.on{background:var(--meadow)}
.plan ol li a{color:inherit;text-decoration:none}
.plan ol li a:hover b{text-decoration:underline}
.claim i{display:block}
.claim .linkbtn{color:var(--ink)}
.srcline .linkbtn{color:inherit;font-weight:400}
.lgrid .badge{font-size:11.5px}

.mini{max-width:380px}
.join[hidden]{display:none}
.contact .btn{white-space:normal;padding:10px 14px;text-align:center;flex-wrap:wrap;line-height:1.25}
@media (max-width:560px){.gal div:nth-child(n+2){font-size:0}}

#v-credits .phead{margin-top:var(--hdr)}
.crlist{display:grid;gap:12px;max-width:820px}
.crlist li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:10px 14px}
.crlist.plain li{grid-template-columns:minmax(0,1fr)}
.crlist img{width:120px;height:90px;object-fit:cover;border-radius:6px;border:2px solid var(--ink)}
.crlist b{font:700 19px/1.2 var(--display);display:block}
.crlist span{font-size:14.5px;color:var(--mute)}
.crlist a{color:var(--leaf);font-weight:700}

.lhead .more{max-width:38em;margin-top:12px;font-size:16.5px;line-height:1.6}
.chead-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(110px,16vw,220px);gap:24px;align-items:end}
.chead h1{font-size:clamp(40px,5.6vw,84px)}
.cart{position:relative}.cart .s{position:absolute;width:18%;right:-6%;bottom:0}
.ctabs{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(20px,3vw,36px)}
.ctabs a{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 10px;background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--wob);text-decoration:none;font:800 15px/1 var(--body);transition:transform .15s}
.ctabs a:nth-child(2n){border-radius:var(--wob2)}
.ctabs a:hover{transform:rotate(-1.5deg) translateY(-2px)}
.ctabs a[aria-current]{background:var(--sun);box-shadow:3px 4px 0 var(--ink)}
.ctabs i{display:block;width:30px;height:30px}.ctabs i .dd{height:100%;width:auto;max-width:100%;margin:0 auto}.ctabs .dd *{stroke-width:2px}
.ctabs .count{background:var(--ink)}
.cf{margin:0 0 clamp(20px,3vw,36px)}
.cf a{font:700 14.5px/1 var(--body);padding:10px 14px;border:2.5px solid var(--ink);border-radius:var(--wob);text-decoration:none}
.cf a[aria-current]{background:var(--ink);color:var(--paper)}
.cf small{font-weight:800;opacity:.7}
.cgroup + .cgroup{margin-top:clamp(32px,4.5vw,60px)}
.cgh{display:flex;flex-wrap:wrap;gap:6px 24px;align-items:baseline;margin-bottom:14px}
.cgh h2{margin:0}
.cgh p,.catlinks{display:flex;flex-wrap:wrap;gap:6px 18px}
.cgh a,.catlinks a{font:400 21px/1.2 var(--hand);color:var(--tomato)}
.catlinks{margin-top:20px}
@media (max-width:560px){.chead-grid{grid-template-columns:minmax(0,1fr)}.cart{display:none}}

.photo .peek{position:absolute;z-index:3;width:21%;left:-4%;bottom:9%;transform:rotate(-6deg)}
.photo .peek2{position:absolute;z-index:3;width:8%;right:4%;bottom:14%}
.fphoto{max-width:560px;transform:rotate(-1.5deg);margin-bottom:22px}
.fphoto .peek2{width:13%;right:-3%;bottom:6%;transform:rotate(-10deg)}
.cthumb{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:2.5px solid var(--ink);border-radius:10px 16px 8px 18px/16px 8px 18px 10px}
.dock{transition:transform .3s}
.dock.down{transform:translateY(160%)}
.factrow a{color:inherit}
.cgh h2 a{color:inherit;text-decoration:none}.cgh h2 a:hover{text-decoration:underline}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:20px}
.pcard{display:grid;gap:4px;align-content:start;padding:14px 16px 16px;background:#fff;border:3px solid var(--ink);border-radius:var(--wob);box-shadow:5px 6px 0 var(--ink);text-decoration:none;transition:transform .18s,box-shadow .18s}
.pcard:nth-child(2n){border-radius:var(--wob2)}
.pcard:hover{transform:translate(-2px,-4px) rotate(-.6deg);box-shadow:8px 11px 0 var(--ink)}
.pimg{display:block;aspect-ratio:16/10;border:2.5px solid var(--ink);border-radius:10px 16px 8px 18px/16px 8px 18px 10px;overflow:hidden;margin-bottom:8px;background:var(--sky)}
.pimg img{width:100%;height:100%;object-fit:cover;display:block}
.pimg.dd-only{display:grid;place-items:center;padding:14px}
.pimg.dd-only i{display:block;height:100%;max-height:150px;aspect-ratio:3/2}
.pimg.dd-only .dd{height:100%;width:auto;max-width:100%;margin:0 auto}
.pcard .ltype{font:400 19px/1.1 var(--hand);color:var(--leaf)}
.pcard b{font:700 27px/1.1 var(--display)}
.pcard p{font-size:15px;line-height:1.45;margin:2px 0 6px}
.pcard .go{font:400 21px/1 var(--hand);color:var(--tomato)}
/* ---------- search, map, plan, weekend, my plan, hosts, forms, legal ---------- */
.sbar{max-width:640px;margin-top:22px;display:grid;gap:6px}
.sbar .sbox{box-shadow:4px 5px 0 var(--ink)}
.filters.sub2{margin-top:10px}
.filters.sub2 button{border-style:dashed}
.rcount{margin:18px 0 6px;font:400 22px/1.1 var(--hand);color:var(--leaf)}
.psec h2.h2b{margin-top:clamp(28px,4vw,48px)}
.pgrid.sm{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}
.pgrid.sm .pcard b{font-size:23px}
.icard .pimg{background:#F1E2B9}
.mapv{padding:calc(var(--hdr) + 0px) var(--gut) clamp(32px,5vw,64px)}
.review + .mapv{padding-top:20px}
.mtop{max-width:1328px;margin:0 auto 16px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
.mtop h1{font-size:clamp(34px,4vw,54px);line-height:1}
.mtop .filters{margin:0}
.mswitch{display:none;border:2.5px solid var(--ink);border-radius:var(--wob);padding:3px;margin-left:auto}
.mswitch button{font:800 14px/1 var(--body);padding:9px 16px;border-radius:var(--wob2)}
.mswitch button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.mgrid{max-width:1328px;margin:0 auto;display:grid;grid-template-columns:minmax(300px,400px) minmax(0,1fr);gap:clamp(16px,2.6vw,40px);align-items:start}
.mside h2{font-size:clamp(26px,2.6vw,36px);margin-bottom:12px}
.mside .filters{margin:0 0 12px}
.mlist{display:grid;gap:8px}
.mrow{display:grid;grid-template-columns:minmax(0,1fr) 44px;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);overflow:hidden}
.mrow:nth-child(2n){border-radius:var(--wob2)}
.mrow.on{background:var(--sun);box-shadow:3px 4px 0 var(--ink)}
.mrow button{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:center;text-align:left;padding:10px 12px}
.mrow i{display:block;height:36px}.mrow i .dd{height:100%;width:auto;max-width:100%;margin:0 auto}.mrow .dd *{stroke-width:2.2px}
.mrow b{font:700 19px/1.15 var(--display);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.mrow small{font:400 17px/1.2 var(--hand);color:var(--mute);display:block}
.mrow.on small{color:var(--ink)}
.mrow > a{display:grid;place-items:center;text-decoration:none;font:700 20px/1 var(--body);border-left:2.5px dashed var(--ink);color:var(--tomato)}
.mbox{position:sticky;top:calc(var(--hdr) + 16px);aspect-ratio:720/700;max-height:calc(100vh - var(--hdr) - 40px);width:100%;max-width:calc((100vh - var(--hdr) - 40px)*720/700);justify-self:center;border:3px solid var(--ink);border-radius:var(--wob2);background:var(--sky);box-shadow:6px 7px 0 var(--ink);overflow:hidden}
.mbox svg{position:absolute;inset:0;width:100%;height:100%}
.mbox text{font-family:var(--hand);fill:var(--mute)}
.pin{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;border:2.5px solid var(--ink);border-radius:50%;background:#fff;transition:transform .18s,background .18s;z-index:2}
.pin i{display:block;width:100%;padding:4px}.pin .dd *{stroke-width:2px}
.pin.place{width:40px;height:40px}
.pin.host{width:32px;height:32px;background:var(--paper)}
.zoom .pin.place{width:48px;height:48px}.zoom .pin.host{width:40px;height:40px}
.pin:hover{transform:translate(-50%,-50%) scale(1.18) rotate(-6deg);z-index:4}
.pin.on{background:var(--sun);transform:translate(-50%,-50%) scale(1.25);z-index:5;box-shadow:2px 3px 0 var(--ink)}
.pin em{position:absolute;left:50%;bottom:calc(100% + 4px);transform:translateX(-50%);font:400 17px/1 var(--hand);font-style:normal;white-space:nowrap;background:var(--paper);border:2px solid var(--ink);border-radius:var(--wob);padding:1px 8px;pointer-events:none;display:none}
.pin.place em,.pin.on em,.pin:hover em{display:block}
.zoom .pin.place em{font-size:19px}
.pin.clus{width:30px;height:30px;background:var(--tomato);color:#fff;font:800 14px/1 var(--body);z-index:3}
.tips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tips.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.tips li{background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:16px 18px 18px;display:grid;gap:6px;align-content:start}
.tips li:nth-child(2n){border-radius:var(--wob2)}
.tips i{display:block;height:54px}.tips i .dd{height:100%;width:auto;max-width:100%;margin:0}
.tips b{font:700 22px/1.1 var(--display)}
.tips p{font-size:15px;line-height:1.45}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:st}
.steps.col{grid-template-columns:minmax(0,1fr)}
.steps li{counter-increment:st;background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--wob2);padding:16px 18px 18px 66px;position:relative;display:grid;gap:4px;align-content:start}
.steps li::before{content:counter(st);position:absolute;left:16px;top:14px;width:36px;height:36px;border-radius:50%;border:2.5px solid var(--ink);background:var(--sun);display:grid;place-items:center;font:700 18px/1 var(--display)}
.steps b{font:700 21px/1.15 var(--display)}
.steps p{font-size:15px;line-height:1.45}
.steps a,.tline a,.prose a,.hres a:not(.btn){font:400 20px/1.2 var(--hand);color:var(--tomato)}
.kvlist{display:grid;gap:0;max-width:760px}
.kvlist li{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);gap:16px;padding:12px 0;border-top:2.5px dashed var(--ink);font-size:16px;line-height:1.45}
.kvlist li:first-child{border-top:0}
.kvlist b{font:700 20px/1.2 var(--display)}
.tline{display:grid;gap:0;margin-bottom:clamp(24px,3vw,40px);border-left:3px dashed var(--ink);margin-left:10px}
.tline li{display:grid;grid-template-columns:minmax(84px,120px) minmax(0,1fr);gap:14px;padding:12px 0 12px 22px;position:relative;align-items:start}
.tline li::before{content:"";position:absolute;left:-10px;top:20px;width:14px;height:14px;border-radius:50%;background:var(--tomato);border:2.5px solid var(--ink)}
.tline .when{font:400 22px/1.2 var(--hand);color:var(--leaf);padding-top:8px}
.stop{display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:12px 16px}
.tline li:nth-child(2n) .stop{border-radius:var(--wob2)}
.stop i{display:block;height:46px}.stop i .dd{height:100%;width:auto;max-width:100%;margin:0 auto}
.stop p{font-size:15.5px;line-height:1.45;margin-bottom:4px}
.itside{gap:0}
.irow{display:grid;gap:2px;padding:10px 0;border-top:2.5px dashed var(--ink)}
.irow:first-of-type{border-top:0}
.irow a{text-decoration:none;color:inherit}
.irow b{font:700 19px/1.15 var(--display)}
.irow .tel{font-weight:800;color:var(--tomato);font-size:15px}
.itside .btn{margin-top:12px}
.plist2{display:grid;gap:10px}
.plist2 li{display:grid;grid-template-columns:48px minmax(0,1fr) auto 40px;gap:14px;align-items:center;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:10px 14px}
.plist2 li:nth-child(2n){border-radius:var(--wob2)}
.plist2 i{display:block;height:42px}.plist2 i .dd{height:100%;width:auto;max-width:100%;margin:0 auto}
.plist2 a{text-decoration:none;color:inherit}
.plist2 b{font:700 21px/1.15 var(--display)}
.plist2 small{font:400 18px/1.2 var(--hand);color:var(--mute);display:block}
.plist2 .tel{min-height:40px;padding:0 12px;font-size:14px;box-shadow:2px 3px 0 var(--ink);grid-column:3}
.plist2 .rm{grid-column:4;width:38px;height:38px;border-radius:50%;border:2.5px solid var(--ink);font:800 18px/1 var(--body)}
.plist2 .rm:hover{background:var(--tomato);color:#fff}
.planact{margin-top:20px}
.hres{display:grid;gap:10px;max-width:640px;margin-top:14px}
.hres li{display:flex;justify-content:space-between;align-items:center;gap:14px;background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--wob);padding:10px 14px}
.hres b{font:700 20px/1.15 var(--display);display:block}
.hres small{font:400 18px/1.2 var(--hand);color:var(--mute)}
.hnone{margin-top:12px;font-weight:700}
.faq{display:grid;gap:10px;max-width:640px}
.faq details{background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:12px 16px}
.faq summary{cursor:pointer;font:700 19px/1.2 var(--display)}
.faq p{margin-top:8px;font-size:15.5px;line-height:1.5}
.vform{display:grid;gap:12px}
.vform label{font:400 20px/1.1 var(--hand);color:var(--leaf);display:grid;gap:4px}
.vform input[type=text],.vform select,.vform textarea{font:600 16px/1.4 var(--body);color:var(--ink);min-height:46px;padding:8px 12px;border:2.5px solid var(--ink);border-radius:10px;background:#fff;width:100%}
.vform .msg{font-size:14.5px;line-height:1.45;background:#F1E2B9;border:2px dashed var(--ink);border-radius:var(--wob);padding:12px 16px}
.eh1{font-size:clamp(34px,4.6vw,64px)!important;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
.eform fieldset{border:2.5px solid var(--ink);border-radius:var(--wob);background:#fff;padding:14px 18px 18px;margin:0;display:grid;gap:12px;min-width:0}
.eform fieldset:nth-of-type(2n){border-radius:var(--wob2)}
.eform legend{font:700 22px/1 var(--display);padding:0 8px}
.checks{display:flex;flex-wrap:wrap;gap:8px}
.checks label{display:inline-flex;grid:none;position:relative;cursor:pointer}
.checks input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}
.checks span{font:700 14px/1 var(--body);color:var(--ink);padding:9px 12px;border:2.5px solid var(--ink);border-radius:var(--wob);background:var(--paper)}
.checks input:checked + span{background:var(--meadow)}
.checks input:focus-visible + span{outline:3px dashed var(--ink);outline-offset:3px}
.months span{min-width:52px;text-align:center}
.upl{display:flex;flex-wrap:wrap;gap:10px}
.upl .ph,.addph{width:120px;height:90px;border:2.5px solid var(--ink);border-radius:10px;overflow:hidden}
.upl .ph img{width:100%;height:100%;object-fit:cover;display:block}
.addph{display:grid!important;place-items:center;align-content:center;gap:0!important;border-style:dashed;cursor:pointer;text-align:center;font-size:16px!important;position:relative;background:var(--paper)}
.addph span{font:700 28px/1 var(--display);color:var(--ink)}
.addph input{position:absolute;inset:0;opacity:0;cursor:pointer}
.hint2{font-size:13.5px;color:var(--mute)}
.meter{height:18px;border:2.5px solid var(--ink);border-radius:99px;overflow:hidden;background:#fff}
.meter i{display:block;height:100%;width:0;background:var(--meadow);border-right:2.5px solid var(--ink);transition:width .4s}
.mtxt{font:700 34px/1 var(--display)}
.todo{display:grid;gap:6px}
.todo li{padding-left:28px;position:relative;font-size:15px;font-weight:600}
.todo li::before{content:"";position:absolute;left:0;top:2px;width:16px;height:16px;border:2.5px solid var(--ink);border-radius:4px;background:#fff}
.todo li.ok{color:var(--mute);text-decoration:line-through}
.todo li.ok::before{background:var(--meadow)}
.prose{max-width:720px}
.prose h2{font-size:clamp(26px,2.8vw,38px);margin:clamp(22px,3vw,36px) 0 10px}
.prose h2:first-child{margin-top:0}
.prose p{font-size:17px;line-height:1.6}
.nf{text-align:center;border-bottom:0;padding-top:calc(var(--hdr) + clamp(28px,5vw,64px));padding-bottom:clamp(48px,7vw,96px)}
.review + .nf{padding-top:clamp(28px,5vw,64px)}
.nf h1{font-size:clamp(38px,5.4vw,80px)}
.nf .lede{margin:14px auto 0}
.nf .sbar{margin:22px auto 0}
.nf .catlinks{justify-content:center}
.nfart{display:flex;justify-content:center;align-items:flex-end;gap:18px;margin-bottom:18px}
.nfart span:first-child{width:clamp(110px,14vw,180px)}.nfart span:last-child{width:clamp(60px,7vw,96px)}
@media (max-width:900px){
  .tips,.tips.three,.steps{grid-template-columns:minmax(0,1fr)}
  .mswitch{display:inline-flex}
  .mgrid{grid-template-columns:minmax(0,1fr)}
  .mapv.map .mside{display:none}.mapv.list .mbox{display:none}
  .mbox{position:relative;top:0;max-height:none;max-width:none}
  .plist2 li{grid-template-columns:40px minmax(0,1fr) 40px}
  .plist2 .tel{grid-column:1/-1;grid-row:2}.plist2 .rm{grid-column:3;grid-row:1}
  .tline li{grid-template-columns:minmax(0,1fr);gap:4px}.tline .when{padding-top:0}
  .kvlist li{grid-template-columns:minmax(0,1fr);gap:2px}
}

.sbar{grid-template-columns:minmax(0,1fr)}

.hmakers{display:grid;gap:16px}
.callnow{display:none}
.addph{width:136px!important;font-size:15px!important;padding:0 6px}
@media (max-width:900px){
  .callnow{display:inline-flex;margin:0 0 14px}
  .mbox:not(.zoom) .pin.place em{display:none}
  .mbox:not(.zoom) .pin.place.on em{display:block}
}

.pscene{background:var(--paper);border:3px solid var(--ink);border-radius:14px 22px 12px 26px/22px 12px 26px 14px;box-shadow:6px 7px 0 var(--ink);padding:18px 18px 10px;transform:rotate(1.2deg)}
.pscene .a{width:16%;left:8%;bottom:4%}.pscene .b{width:6%;right:8%;bottom:4%}
.xarea .sub{margin:0 0 16px;max-width:60em}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stats li{background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:14px 18px;display:grid;gap:2px}
.stats li:nth-child(2n){border-radius:var(--wob2)}
.stats span{font:400 20px/1.1 var(--hand);color:var(--leaf)}
.stats b{font:800 44px/1 var(--display);font-variant-numeric:tabular-nums}
.stats small{font-size:13.5px;color:var(--mute)}
.stats a{color:var(--tomato);font-weight:700}
.tips li .btn{justify-self:start;margin-top:6px}
.signbox{max-width:460px;background:#fff;border:3px solid var(--ink);border-radius:var(--wob);padding:clamp(18px,2.4vw,28px);box-shadow:6px 7px 0 var(--ink)}
.signbox .linkbtn{justify-self:start}
.smgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:28px 32px;align-items:start}
.smcol h2{font-size:24px!important;margin-bottom:8px!important}
.smcol li{padding:3px 0}
.smcol a{color:var(--leaf);font-weight:700;font-size:15.5px}
@media (max-width:900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cgh h2 a{font:inherit;color:inherit}

.skip{position:fixed;z-index:200;left:12px;top:-80px;background:var(--ink);color:var(--paper);padding:12px 16px;border-radius:8px;font-weight:800}
.skip:focus{top:8px}
.sbox:focus-within{outline:3px dashed var(--ink);outline-offset:3px}
@media (max-width:900px){.crumbs a,.crumbs span{display:inline-block;padding:7px 0}.catlinks a,.cgh p a{padding:6px 0;display:inline-block}}
#marks .mk em{display:none;z-index:6}#marks .mk[aria-pressed="true"] em,#marks .mk:hover em,#marks .mk:focus-visible em{display:block}#marks .mk[aria-pressed="true"]{z-index:5}

.pin.place{z-index:4}.pin.place em{z-index:6}.zoom .pin.host{width:34px;height:34px}

@media (min-width:1100px){#plist{max-height:54vh;overflow:auto;padding-right:6px}}

.mbox:not(.zoom) .pin.place em{display:none}.mbox:not(.zoom) .pin.place.on em,.mbox:not(.zoom) .pin.place:hover em{display:block}

.pin.clus{width:38px;height:38px;font-size:15px;box-shadow:2px 3px 0 var(--ink)}
.pin.clus em{color:var(--ink);font-weight:400}
.pin.clus:hover em,.pin.clus:focus-visible em{display:block}
@media (max-width:900px){
  .cf,.mtop .filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1*var(--gut));padding:2px var(--gut) 6px;max-width:100vw}
  .cf > *,.mtop .filters > *{flex:none}
  .mtop{gap:10px}
}

.subcats{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.subcats a{display:inline-flex;align-items:center;gap:6px;font:700 15px/1 var(--body);padding:8px 13px;border:2px solid var(--ink);border-radius:var(--wob);background:var(--paper);text-decoration:none;color:var(--ink)}
.subcats a[aria-current]{background:var(--sun)}.subcats i{width:20px;height:20px;display:block}.subcats small{color:var(--mute);font-weight:700}
.sortrow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0 4px;font:700 15px/1.2 var(--body);color:var(--mute)}
.seg2{display:inline-flex;border:2px solid var(--ink);border-radius:var(--wob);overflow:hidden}
.seg2 button{font:700 14px/1 var(--body);padding:9px 13px;background:var(--paper);border:0;color:var(--ink);cursor:pointer;min-height:40px}
.seg2 button+button{border-left:2px solid var(--ink)}.seg2 button[aria-pressed="true"]{background:var(--meadow)}
.morerow{margin-top:18px;text-align:center}
.lcard[hidden]{display:none}
.seasonal{font:800 11.5px/1 var(--body);background:var(--sky);border:2px solid var(--ink);border-radius:var(--wob);padding:4px 8px;white-space:nowrap}
.closed{background:var(--sky);border:2.5px solid var(--ink);border-radius:var(--wob);padding:12px 16px;margin:14px 0;font:600 16px/1.4 var(--body)}
.claimok,.welcome{display:flex;gap:16px;align-items:flex-start;background:#fff;border:3px solid var(--ink);border-radius:16px 24px 14px 26px/24px 14px 26px 16px;box-shadow:5px 6px 0 var(--ink);padding:20px}
.claimok>i{width:44px;flex:none;display:block}.welcome>i{width:76px;flex:none;display:block}
.claimok h3,.welcome h2{font:700 24px/1.15 var(--display);margin:0 0 6px}
.claimok p,.welcome p{margin:0 0 10px}
.okline{margin:14px 0}.claimform .okline li{color:var(--mute)}.claimform .okline li.done{color:var(--ink)}.claimform .okline li.done::before{background:var(--meadow)}
.welcome{margin-bottom:26px;background:var(--paper)}.welcome ol{margin:0 0 14px;padding-left:20px;display:grid;gap:4px}
.wbtns{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0}
@media (max-width:600px){.welcome>i{display:none}}
.photo .frame{position:relative}
.zoomb{position:absolute;inset:0;width:100%;height:100%;background:none;border:0;cursor:zoom-in;z-index:1}
.zoomb:focus-visible{outline:4px solid var(--sun);outline-offset:-6px}
.noscroll{overflow:hidden}
.lb{position:fixed;inset:0;z-index:200;background:rgba(43,42,46,.93);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:56px 10px 18px}
.lb figure{margin:0;display:grid;justify-items:center;gap:10px;min-width:0}
.lb img{max-width:100%;max-height:calc(100vh - 130px);border:3px solid var(--paper);border-radius:10px;display:block}
.lb figcaption{color:var(--paper);font:400 19px/1.2 var(--hand);text-align:center}
.lb button{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--wob);font:700 22px/1 var(--body);width:46px;height:46px;cursor:pointer;color:var(--ink)}
.lbx{position:absolute;top:8px;right:10px}.lb.one .lbn{visibility:hidden}
@media (max-width:600px){.lb{grid-template-columns:1fr 1fr;padding-top:60px}.lb figure{grid-column:1/-1;grid-row:1}.lbn.prev{justify-self:end}.lbn.next{justify-self:start}}
.welcome ol li{list-style:decimal}
.botabs{margin:26px 0 18px}.botabs small{background:var(--tomato);color:#fff;border-radius:99px;padding:1px 7px;font-size:12px}
.btn.sm{font-size:14px;padding:8px 12px;min-height:40px}
.bq{list-style:none;padding:0;display:grid;gap:12px}
.bq li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:16px 18px}
.bq li:nth-child(2n){border-radius:var(--wob2)}.bq li.done{background:var(--paper);opacity:.8}
.bq i{width:40px;display:block}.bq h3{font:700 21px/1.15 var(--display);margin:2px 0 4px}.bq h3 a{color:inherit}
.bq p{margin:0;font-size:15.5px}.bk{font:400 18px/1 var(--hand);color:var(--leaf)}.btel{color:var(--mute);margin-top:4px!important}
.bact{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.bnote{color:var(--mute);font-size:14.5px;margin-top:14px;max-width:70ch}
.bst{display:inline-block;font:800 12px/1 var(--body);padding:5px 9px;border:2px solid var(--ink);border-radius:var(--wob);white-space:nowrap;background:var(--paper)}
.bst.ver{background:var(--meadow)}.bst.sent{background:var(--sun)}.bst.none,.bst.gone{background:#ddd}
.bfilt{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;margin-bottom:8px}
.bfilt label{font:400 19px/1.1 var(--hand);color:var(--leaf);display:grid;gap:4px}
.bfilt input,.bfilt select,.bmsg{font:600 15.5px/1.4 var(--body);color:var(--ink);min-height:44px;padding:8px 12px;border:2.5px solid var(--ink);border-radius:10px;background:#fff;width:100%}
.bcount{color:var(--mute);font-weight:700;font-size:14px;margin:8px 0}
.btablew{overflow-x:auto;border:2.5px solid var(--ink);border-radius:12px;background:#fff}
.btable{width:100%;border-collapse:collapse;font-size:15px}
.btable th{text-align:left;font:400 18px/1 var(--hand);color:var(--leaf);padding:12px 14px;border-bottom:2.5px solid var(--ink);white-space:nowrap}
.btable td{padding:10px 14px;border-bottom:1.5px dashed #c9c2b2;vertical-align:middle}
.btable tr:last-child td{border-bottom:0}.btable td a{font-weight:800;color:var(--ink)}.btable td small{display:block;color:var(--mute)}
.bbar{display:inline-block;width:70px;height:9px;border:2px solid var(--ink);border-radius:9px;overflow:hidden;vertical-align:middle;background:var(--paper)}.bbar i{display:block;height:100%;background:var(--leaf)}
.bpipe{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px}
.bpipe li{border:2.5px solid var(--ink);border-radius:var(--wob);padding:12px 16px;background:var(--paper);display:grid}
.bpipe b{font:700 34px/1 var(--display)}.bpipe span{font:400 19px/1.2 var(--hand)}
.bpipe .sent{background:var(--sun)}.bpipe .ver{background:var(--meadow)}.bpipe .none{background:#ddd}
.bout{align-items:start}.bnext{list-style:none;padding:0;display:grid;gap:8px}
.bnext button{width:100%;text-align:left;background:#fff;border:2.5px solid var(--ink);border-radius:var(--wob);padding:10px 14px;cursor:pointer;display:grid;gap:2px;font:inherit;color:var(--ink);min-height:44px}
.bnext button[aria-pressed="true"]{background:var(--sun)}.bnext small{color:var(--mute)}
.bmsg{resize:vertical;margin-bottom:12px;font-weight:400}
@media (max-width:820px){.bq li{grid-template-columns:36px minmax(0,1fr)}.bact{grid-column:1/-1;justify-content:flex-start}.bfilt{grid-template-columns:1fr}.bpipe{grid-template-columns:1fr 1fr}
 .btablew{border:0;background:none}.btable thead{display:none}.btable,.btable tbody,.btable tr,.btable td{display:block}.btable tr{background:#fff;border:2.5px solid var(--ink);border-radius:12px;padding:10px 14px;margin-bottom:10px}.btable td{border:0;padding:3px 0}.btable td[data-th]:not(:first-child):before{content:attr(data-th)": ";color:var(--mute);font-size:13px}}
.seo .og{grid-row:span 2;container-type:inline-size;display:grid;gap:6px;align-content:start}.og small{color:var(--plum);font-size:12px}
.ogc{position:relative;aspect-ratio:1200/630;background:var(--sky);border:2px solid var(--ink);border-radius:8px;overflow:hidden;display:grid;align-content:center;gap:2cqw;padding:6cqw 42cqw 9cqw 6cqw}
.ogk{font:400 3.6cqw/1.1 var(--hand);color:var(--leaf)}.ogc b{font:700 7.4cqw/1.02 var(--display);letter-spacing:-.01em;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ogb{position:absolute;left:6cqw;bottom:4.5cqw;font:700 3.8cqw/1 var(--display);display:flex;align-items:center}.ogb i{width:2.6cqw;display:block;margin:0 .2cqw}
.oga{position:absolute;right:4cqw;bottom:0;width:36cqw;display:block}.oga svg{display:block}
.ogc:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3.4cqw;background:var(--meadow);border-top:2px solid var(--ink)}.oga,.ogb{z-index:1}.ogb{bottom:5.6cqw}
@media (max-width:760px){.seo .og{grid-row:auto}}
.ck{position:fixed;z-index:70;left:14px;bottom:14px;max-width:440px;background:var(--paper);border:3px solid var(--ink);border-radius:var(--wob);box-shadow:5px 6px 0 var(--ink);padding:14px 16px;display:grid;gap:10px}
.ck p{margin:0;font-size:14.5px;line-height:1.45}.ck a{color:var(--leaf);font-weight:700}.ck div{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:1099px){.ck{left:12px;right:12px;bottom:86px;max-width:none}}
.nocontact{margin:0 0 4px;font-size:15.5px;line-height:1.45}

.mpnote{flex-basis:100%;margin:6px 0 0;padding:8px 12px;border:2px dashed var(--ink);border-radius:12px;background:#fff;font-size:15px;line-height:1.35}
.mlist .nopin{font-style:italic}

/* map: the card for the pin that is selected */
.mpcard{grid-column:1/-1;display:none;align-items:center;gap:12px;border:3px solid var(--ink);border-radius:var(--wob);background:#fff;padding:10px 12px;box-shadow:4px 5px 0 var(--ink)}
.mpcard i{flex:0 0 44px;width:44px}.mpcard div{flex:1;min-width:0}.mpcard b{display:block;font-size:17px;line-height:1.2}.mpcard small{display:block;color:var(--mute);font-size:14px}.mpcard .btn{flex:0 0 auto;padding:10px 14px}
@media (max-width:900px){.mapv.map .mpcard{display:flex}}
.pin.on{z-index:7}
.snote{margin:0 0 10px;padding:8px 12px;border:2px dashed var(--ink);border-radius:12px;background:#fff;font-size:15px;line-height:1.35}
/* decorations never take a click meant for a link; the animals you can click are buttons and stay clickable */
svg.dd,i[data-d],span[data-d]{pointer-events:none}
.srcline{padding-bottom:clamp(70px,8vw,118px);position:relative;z-index:3}
@media (max-width:340px){.hdr .util{gap:6px}.hdr .util .btn,.menu-btn{padding-left:10px;padding-right:10px}.hdr{padding-left:12px;padding-right:12px}}


.view>.phead:first-child{margin-top:var(--hdr)}.view>.phead.nf:first-child{margin-top:0}.ssr{margin-top:var(--hdr)}
.lpg{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin-top:22px;max-width:760px}.bmail{font:600 15px/1.4 var(--body);min-height:40px;padding:6px 10px;border:2.5px solid var(--ink);border-radius:10px;background:#fff;min-width:210px}.bmail.bad{border-color:var(--tomato)}
html:not(.js) main>.view{display:none}.bnotep{white-space:normal}.bth{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px!important}.bth img{width:64px;height:64px;object-fit:cover;border:2px solid var(--ink);border-radius:8px}.upl .ph{position:relative}.upl .phe{position:absolute;left:4px;bottom:4px;background:var(--tomato);color:#fff;font:700 11px/1 var(--body);padding:3px 5px;border-radius:5px}.upl .ph.wait{opacity:.5}.upl .ph.bad{outline:3px solid var(--tomato)}.upl .ph button{position:absolute;top:4px;right:4px;width:28px;height:28px;border-radius:50%;border:2px solid var(--ink);background:var(--paper);font:700 16px/1 var(--body);cursor:pointer}
.boerr{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:#fff;border:3px solid var(--tomato);border-radius:var(--wob);padding:12px 16px;margin:18px 0}.boerr p{margin:0;font-weight:700}
html{scroll-padding-top:calc(var(--hdr) + 12px)}
.js .ssr{display:none}
.ssr{max-width:1100px;margin:0 auto;padding:24px var(--gut)}
