@font-face { font-family:'ChunkFive'; src:url('/fonts/ChunkFive-Regular.otf') format('opentype'); font-display:swap; }
:root { --red:#BE202E; --red-dk:#8E1622; --cream:#FFF7EA; --ink:#1F2933; --sea:#2E6F8E; --sea-dk:#1F4F66; --sky:#7FC4DC; --sand:#EFE3CC; --sun:#F2B632; }
#home .dir{ max-width:1080px; margin:0 auto 3rem; border-radius:14px; overflow:hidden; box-shadow:0 8px 30px rgba(0,0,0,.18); border:1px solid var(--border); }
#home .dir-label{ display:flex; align-items:baseline; gap:.75rem; max-width:1080px; margin:0 auto .6rem; }
#home .dir-label .tag{ font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; background:var(--bg-tertiary); color:var(--text-secondary); padding:.2rem .55rem; border-radius:6px; }
#home .dir-label h3{ margin:0; }
#home .dir-label p{ color:var(--text-secondary); font-size:.9rem; margin:0; }
#home .chrome{ background:#e9e9ec; height:30px; display:flex; align-items:center; gap:6px; padding:0 12px; border-bottom:1px solid #d5d5da; }
#home .chrome i{ width:10px; height:10px; border-radius:50%; background:#c9c9ce; display:block; }
#home .chrome span{ margin-left:12px; background:#fff; border-radius:6px; font:11px system-ui; color:#777; padding:2px 10px; flex:1; max-width:340px; }
#home .ph{ background-size:cover; background-position:center; }
#home .logo{ display:block; height:auto; }
#home .deco{ position:absolute; pointer-events:none; }
#home .h{ font-family:'ChunkFive',serif; font-weight:400; }
#home .edge{ display:block; width:100%; height:64px; background:#fff; }
#home 
  .edge.anim .catch{ animation: reel 16s ease-in-out infinite; }
@keyframes reel {
    0%,10%,20% { transform:translate(0,0); } 5%,15% { transform:translate(0,-1.5px); }
    22% { transform:translate(0,4px); } 25% { transform:translate(0,0); }
    37%,66% { transform:translate(6px,-34px); }
    71%,80%,90%,100% { transform:translate(0,0); } 85%,95% { transform:translate(0,-1.5px); } }
#home .edge.anim .fish{ transform-origin:910px 47px; animation: fishSwing 16s ease-in-out infinite; }
@keyframes fishSwing {
    0%,29% { opacity:0; transform:rotate(0); } 30% { opacity:1; }
    40% { transform:rotate(-12deg); } 44% { transform:rotate(12deg); } 48% { transform:rotate(-8deg); } 52% { transform:rotate(6deg); opacity:1; }
    56%,100% { transform:rotate(0); opacity:0; } }
#home .edge.anim .line{ animation: lineLen 16s ease-in-out infinite; }
@keyframes lineLen { 0%,25% { stroke-dashoffset:0; } 37%,66% { stroke-dashoffset:35; } 71%,100% { stroke-dashoffset:0; } }
#home .edge.anim .rod{ transform-origin:948px 25px; animation: rodMove 16s ease-in-out infinite; }
@keyframes rodMove {
    0%,20% { transform:rotate(0); } 22% { transform:rotate(-9deg); } 26% { transform:rotate(-4deg); } 29% { transform:rotate(-7deg); } 32% { transform:rotate(-3deg); } 35% { transform:rotate(-6deg); } 38%,58% { transform:rotate(0); }
    62% { transform:rotate(16deg); } 66% { transform:rotate(-10deg); } 70%,100% { transform:rotate(0); } }
#home .edge.anim .ripple{ animation: rippleShow 16s linear infinite; }
@keyframes rippleShow { 0%,24% { opacity:.6; } 26%,72% { opacity:0; } 74%,100% { opacity:.6; } }
#home .edge.anim .splash{ transform-origin:910px 44px; animation: splash 16s ease-out infinite; }
@keyframes splash { 0%,70% { opacity:0; transform:scale(.2); } 71% { opacity:.9; transform:scale(.4); } 76%,100% { opacity:0; transform:scale(1.5); } }
#home 
  .edge.anim .surfer{ transform-origin:305px 44px; animation: rock 3.2s ease-in-out infinite; }
@keyframes rock { 0%,100% { transform:rotate(-2.5deg); } 50% { transform:rotate(2.5deg); } }
#home .edge.anim .spray{ animation: sprayPulse 3.2s ease-in-out infinite; }
@keyframes sprayPulse { 0%,100% { opacity:.35; } 50% { opacity:.9; } }
@media (prefers-reduced-motion: reduce) {#home .edge.anim *{ animation:none !important; }}
#home .kit{ max-width:1080px; margin:0 auto 3rem; display:grid; grid-template-columns:repeat(8,1fr); gap:.7rem; }
#home .tile{ background:var(--cream); border:2px solid var(--border); border-radius:10px; padding:.8rem .4rem .5rem; text-align:center; cursor:pointer; transition:all .15s; }
@media (hover:hover){#home .tile:hover{ border-color:var(--accent); }}
#home .tile.selected{ border-color:var(--selected-border); box-shadow:0 0 0 2px var(--selected-border) inset; }
#home .tile svg{ width:64px; height:60px; display:block; margin:0 auto .4rem; }
#home .tile b{ display:block; font-size:.72rem; color:#3b2b17; font-weight:700; }
#home .s{ position:relative; background:var(--cream); color:var(--ink); font-family:'Nunito',sans-serif; }
#home .s nav{ display:flex; align-items:center; gap:1.5rem; padding:1.1rem 2.2rem .8rem; position:relative; background:#fff; }
#home .s nav .logo{ width:96px; margin-right:auto; }
#home .s nav a{ font-weight:800; font-size:.9rem; color:var(--ink); display:flex; align-items:center; gap:.45rem; }
#home .s nav a svg{ width:22px; height:20px; color:var(--red); }
#home .btn{ background:var(--red); color:#fff; font-family:'ChunkFive',serif; letter-spacing:.02em; padding:.6rem 1.15rem; border-radius:999px; font-size:.9rem; box-shadow:0 3px 0 var(--red-dk); display:inline-flex; align-items:center; gap:.5rem; }
#home .btn svg{ width:16px; height:18px; color:#fff; }
#home .btn.sea{ background:var(--sea); box-shadow:0 3px 0 var(--sea-dk); }
#home .btn.ghost{ background:var(--cream); color:var(--red); box-shadow:0 3px 0 #d9c9a6; }
#home .kicker{ font-family:'ChunkFive',serif; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--red); margin-bottom:.7rem; }
#home 
  .SS .hero{ height:420px; position:relative; overflow:hidden; user-select:none; touch-action:pan-y; }
#home .SS .track{ display:flex; height:100%; transition:transform .65s cubic-bezier(.22,.61,.36,1); will-change:transform; }
#home .SS .slide{ flex:0 0 100%; position:relative; background-size:cover; background-position:center; }
#home .SS .slide::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(20,30,40,.76)); }
#home .SS .slide .cap{ position:absolute; right:1.6rem; top:1.3rem; z-index:2; background:#FFFDF6; padding:.35rem .8rem .45rem; font-family:'Caveat',cursive; font-size:1.2rem; color:#2b2419; transform:rotate(2.5deg); box-shadow:0 4px 12px rgba(0,0,0,.28); }
#home .SS .slide .cap::before{ content:''; position:absolute; left:50%; top:-9px; width:44px; height:14px; background:rgba(255,241,170,.8); transform:translateX(-50%) rotate(-3deg); }
#home .SS .slide .in{ position:absolute; left:0; bottom:0; z-index:2; padding:2.2rem 2.2rem 2.6rem; color:#fff; max-width:760px; pointer-events:none; }
#home .SS .slide .in.right{ left:auto; right:0; text-align:right; max-width:640px; }
#home .SS .slide .in.right h1{ justify-content:flex-end; }
#home .SS .slide .cap.left{ right:auto; left:1.6rem; transform:rotate(-2.5deg); }
#home .SS .slide h1{ font-size:2.7rem; line-height:1.05; margin:0 0 .6rem; display:flex; align-items:center; gap:.7rem; }
#home .SS .slide h1 svg{ flex-shrink:0; }
#home .SS .slide p{ margin:0 0 .3rem; font-size:.95rem; font-weight:600; opacity:.95; }
#home .SS .slide .hrs{ font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; opacity:.85; font-weight:800; }
#home .SS .arrow{ position:absolute; top:50%; transform:translateY(-50%); z-index:3; width:42px; height:42px; border-radius:50%; background:rgba(255,247,234,.92); border:0; color:var(--red); cursor:pointer; box-shadow:0 3px 10px rgba(0,0,0,.28); display:flex; align-items:center; justify-content:center; transition:background .15s, transform .15s; }
@media (hover:hover){#home .SS .arrow:hover{ background:#fff; transform:translateY(-50%) scale(1.06); }}
#home .SS .arrow svg{ width:16px; height:16px; }
#home .SS .arrow.prev{ left:1rem; }
#home .SS .arrow.next{ right:1rem; }
#home .SS .dots{ position:absolute; right:1.8rem; bottom:1.3rem; z-index:3; display:flex; gap:.45rem; align-items:center; }
#home .SS .dots button{ width:10px; height:10px; border-radius:50%; border:0; background:rgba(255,255,255,.55); cursor:pointer; padding:0; transition:all .25s; }
#home .SS .dots button.on{ background:var(--red); width:24px; border-radius:5px; }
#home 
  .flattop{ display:grid; grid-template-columns:1fr 1.25fr; gap:1.8rem; padding:1.8rem 2.2rem 2rem; background:#fff; border-top:6px solid var(--red); position:relative; }
#home .flattop .photo{ border-radius:12px; min-height:280px; position:relative; box-shadow:0 8px 20px rgba(31,41,51,.18); }
#home .flattop .photo.mini{ overflow:hidden; user-select:none; touch-action:pan-y; }
#home .flattop .mtrack{ display:flex; height:100%; position:absolute; inset:0; transition:transform .55s cubic-bezier(.22,.61,.36,1); }
#home .flattop .mslide{ flex:0 0 100%; position:relative; }
#home .flattop .mslide .tag{ position:absolute; left:-10px; bottom:18px; background:var(--sun); color:var(--ink); font-family:'Caveat',cursive; font-size:1.2rem; padding:.3rem .9rem; transform:rotate(-3deg); box-shadow:0 4px 10px rgba(0,0,0,.2); max-width:85%; }
#home .flattop .marrow{ position:absolute; top:50%; transform:translateY(-50%); z-index:3; width:32px; height:32px; border-radius:50%; background:rgba(255,247,234,.92); border:0; color:var(--red); cursor:pointer; box-shadow:0 3px 8px rgba(0,0,0,.28); display:flex; align-items:center; justify-content:center; }
#home .flattop .marrow svg{ width:13px; height:13px; }
#home .flattop .marrow.prev{ left:.6rem; }
#home .flattop .marrow.next{ right:.6rem; }
#home .flattop .mdots{ position:absolute; right:.9rem; top:.8rem; z-index:3; display:flex; gap:.35rem; }
#home .flattop .mdots button{ width:8px; height:8px; border-radius:50%; border:0; background:rgba(255,255,255,.6); cursor:pointer; padding:0; transition:all .25s; }
#home .flattop .mdots button.on{ background:var(--red); width:18px; border-radius:4px; }
#home .flattop h2{ font-size:1.4rem; margin:0 0 .2rem; color:var(--ink); display:flex; align-items:center; gap:.6rem; }
#home .flattop h2 svg{ width:34px; height:20px; }
#home .flattop .sub{ font-family:'Caveat',cursive; font-size:1.25rem; color:#8a7a5e; margin:0 0 1rem; }
#home .menu4{ display:grid; grid-template-columns:1fr 1fr; gap:.8rem 1.2rem; margin-bottom:1.1rem; }
#home .mi{ display:flex; gap:.8rem; align-items:center; padding:.6rem .7rem; border-radius:10px; background:var(--cream); border:1px solid #f0e4cc; transition:transform .15s, box-shadow .15s; }
@media (hover:hover){#home .mi:hover{ transform:translateY(-2px); box-shadow:0 6px 14px rgba(31,41,51,.12); }}
#home .mi svg{ width:52px; height:46px; flex-shrink:0; }
#home .mi h4{ font-family:'ChunkFive',serif; font-weight:400; font-size:.98rem; margin:0; line-height:1.15; }
#home .mi p{ margin:.1rem 0 0; font-size:.74rem; color:#5f6a74; font-weight:600; }
#home .mi b{ margin-left:auto; font-family:'ChunkFive',serif; font-weight:400; color:var(--red); font-size:1rem; }
#home .flattop{ grid-template-columns:300px 1fr; }
#home .menu6{ display:grid; grid-template-columns:repeat(3,1fr); gap:.8rem; margin-bottom:1rem; }
#home .mt{ border-radius:12px; overflow:hidden; background:#fff; border:1px solid #f0e4cc; box-shadow:0 4px 12px rgba(31,41,51,.08); transition:transform .18s, box-shadow .18s; cursor:pointer; }
@media (hover:hover){#home .mt:hover{ transform:translateY(-3px); box-shadow:0 12px 22px rgba(31,41,51,.16); }}
#home .mt .pic{ position:relative; height:126px; overflow:hidden; background:var(--sand); }
#home .mt .pic .ico{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
#home .mt .pic .ico svg{ width:66px; height:58px; }
#home .mt .pic .img{ position:absolute; inset:0; background-size:cover; background-position:center; transition:transform .5s ease; }
@media (hover:hover){#home .mt:hover .pic .img{ transform:scale(1.06); }}
#home .mt .pic .price{ position:absolute; right:8px; top:8px; background:var(--red); color:#fff; font-family:'ChunkFive',serif; font-size:.85rem; padding:.25rem .6rem; border-radius:999px; box-shadow:0 2px 6px rgba(0,0,0,.3); }
#home .mt .pic .badge{ position:absolute; left:8px; bottom:8px; width:34px; height:34px; border-radius:50%; background:rgba(255,247,234,.96); display:flex; align-items:center; justify-content:center; box-shadow:0 2px 6px rgba(0,0,0,.25); }
#home .mt .pic .badge svg{ width:24px; height:22px; }
#home .mt .txt{ padding:.55rem .7rem .65rem; }
#home .mt h4{ font-family:'ChunkFive',serif; font-weight:400; font-size:.95rem; margin:0; line-height:1.15; }
#home .mt p{ margin:.12rem 0 0; font-size:.72rem; color:#5f6a74; font-weight:600; }
#home 
  .rackwall{ padding:1.6rem 2.2rem 1.6rem; position:relative; background:var(--cream); }
#home .rackwall h2{ font-size:1.3rem; margin:0 0 1.3rem; color:var(--red); letter-spacing:.04em; text-transform:uppercase; display:flex; align-items:baseline; gap:.8rem; }
#home .rackwall h2 small{ font-family:'Nunito'; font-weight:700; font-size:.78rem; letter-spacing:0; color:#8a7a5e; text-transform:none; }
#home .rackwall h2 .month{ font-family:'ChunkFive',serif; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:var(--cream); background:var(--ink); padding:.3rem .7rem; border-radius:999px; position:relative; top:-3px; }
#home .rackwall .post{ position:absolute; top:4.6rem; bottom:1.6rem; width:12px; background:linear-gradient(90deg,#9a6a3a,#7a4f28); border-radius:3px; box-shadow:2px 0 4px rgba(0,0,0,.18); }
#home .rackwall .post.l{ left:5.2rem; }
#home .rackwall .post.r{ right:5.2rem; }
#home .ev{ position:relative; margin:0 auto .9rem; filter:drop-shadow(0 6px 8px rgba(31,41,51,.22)); transition:filter .2s; }
#home .ev.open{ filter:drop-shadow(0 12px 14px rgba(31,41,51,.3)); z-index:2; }
@media (hover:hover){#home .ev:hover{ filter:drop-shadow(0 12px 14px rgba(31,41,51,.3)); z-index:2; }}
#home .ev.w1{ width:94%; }
#home .ev.w2{ width:88%; }
#home .ev.w3{ width:92%; }
#home .ev.w4{ width:86%; }
#home .bd{ position:relative; height:66px; clip-path:url(#boardclip); display:flex; align-items:center; gap:1rem; padding:0 4.2rem 0 .9rem; color:#fff; cursor:pointer; transition:transform .18s; }
#home .ev.open .bd{ transform:translateY(-3px); }
@media (hover:hover){#home .ev:hover .bd{ transform:translateY(-3px); }}
#home .bd::before{ content:''; position:absolute; right:.9rem; top:50%; width:11%; height:2px; background:rgba(255,247,234,.45); z-index:0; transform:translateY(-1px); }
#home .bd > *{ position:relative; z-index:1; }
#home .bd.red{ background:linear-gradient(180deg,#c9303e,var(--red) 55%,#a81b28); }
#home .bd.sea{ background:linear-gradient(180deg,#3a7fa0,var(--sea) 55%,#255a74); }
#home .bd.sun{ background:linear-gradient(180deg,#f6c854,var(--sun) 55%,#d99f1c); color:var(--ink); }
#home .bd.sky{ background:linear-gradient(180deg,#96d2e6,var(--sky) 55%,#5fadc9); color:var(--ink); }
#home .bd.sun::before, #home .bd.sky::before{ background:rgba(31,41,51,.18); }
#home .bd .nose{ width:52px; height:52px; border-radius:50%; background:var(--cream); color:var(--ink); font-family:'ChunkFive',serif; display:flex; flex-direction:column; align-items:center; justify-content:center; line-height:1; flex-shrink:0; box-shadow:inset 0 0 0 3px rgba(0,0,0,.08); transition:transform .3s; }
@media (hover:hover){#home .ev:hover .nose{ transform:rotate(-8deg) scale(1.05); }}
#home .bd .nose b{ font-size:1.15rem; font-weight:400; }
#home .bd .nose small{ font-size:.5rem; letter-spacing:.14em; margin-top:2px; }
#home .bd h4{ font-family:'ChunkFive',serif; font-weight:400; font-size:1.1rem; margin:0; line-height:1.1; }
#home .bd p{ margin:.15rem 0 0; font-size:.78rem; font-weight:600; opacity:.9; }
#home .bd .more{ margin-left:auto; flex-shrink:0; background:rgba(255,247,234,.95); color:var(--ink); font-family:'ChunkFive',serif; font-size:.72rem; letter-spacing:.06em; padding:.5rem .9rem; border-radius:999px; display:flex; align-items:center; gap:.35rem; box-shadow:0 2px 0 rgba(0,0,0,.15); transition:background .15s; }
@media (hover:hover){#home .ev:hover .more{ background:#fff; }}
#home .bd .more i{ display:inline-block; width:0; height:0; border-left:6px solid var(--red); border-top:5px solid transparent; border-bottom:5px solid transparent; transition:transform .25s; }
#home .ev.open .more i{ transform:rotate(90deg); }
@media (hover:hover){#home .ev:hover .more i{ transform:rotate(90deg); }}
#home .panel{ display:grid; grid-template-columns:220px 1fr auto; gap:1.2rem; align-items:center; margin:0 2.4rem 0 1.6rem; padding:0 1.2rem; background:#fff; border-radius:0 0 14px 14px; border:1px solid #f0e4cc; border-top:0; max-height:0; opacity:0; overflow:hidden; transition:max-height .32s ease, opacity .22s ease, padding .32s ease; }
#home .ev.open .panel{ max-height:220px; opacity:1; padding:1.1rem 1.2rem; }
@media (hover:hover){#home .ev:hover .panel{ max-height:220px; opacity:1; padding:1.1rem 1.2rem; }}
#home .panel .pph{ height:130px; border-radius:10px; box-shadow:0 4px 10px rgba(0,0,0,.18); }
#home .panel h5{ font-family:'ChunkFive',serif; font-weight:400; font-size:1rem; margin:0 0 .3rem; color:var(--ink); }
#home .panel p{ margin:0 0 .5rem; font-size:.84rem; color:#4a5561; font-weight:600; line-height:1.5; }
#home .panel .facts{ display:flex; gap:1.2rem; font-size:.74rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:#8a7a5e; }
#home .panel .facts b{ color:var(--ink); }
#home .panel .acts{ display:flex; flex-direction:column; gap:.5rem; }
#home .panel .acts .btn{ font-size:.8rem; padding:.5rem 1rem; justify-content:center; }
#home .SS .about{ display:grid; grid-template-columns:1fr 1fr; gap:2rem; padding:1.8rem 2.2rem 2rem; align-items:center; position:relative; background:#fff; }
#home .SS .about h3{ font-size:1.35rem; margin:0 0 .5rem; }
#home .SS .about p{ font-size:.9rem; color:#4a5561; margin:0 0 .9rem; font-weight:600; }
#home .SS .about .vint{ height:260px; border-radius:12px; box-shadow:0 8px 20px rgba(31,41,51,.2); position:relative; filter:sepia(.25); }
#home .SS .about .vint .cap{ position:absolute; left:14px; bottom:-12px; background:#FFFDF6; padding:.3rem .8rem; font-family:'Caveat',cursive; font-size:1.15rem; color:#2b2419; transform:rotate(-2deg); box-shadow:0 4px 10px rgba(0,0,0,.2); }
#home .SS .sandfoot{ position:relative; background:var(--sand); background-image:radial-gradient(rgba(120,80,40,.10) 1px, transparent 1.4px); background-size:7px 7px; padding:2rem 2.2rem 1.6rem; text-align:center; overflow:hidden; }
#home .SS .sandfoot .logo{ width:110px; margin:0 auto .6rem; }
#home .SS .sandfoot .links{ font-family:'ChunkFive',serif; font-size:.85rem; letter-spacing:.06em; color:var(--red); display:flex; justify-content:center; gap:1.6rem; margin-bottom:.5rem; position:relative; z-index:1; }
#home .SS .sandfoot .addr{ font-size:.78rem; font-weight:700; color:#5a4a33; position:relative; z-index:1; }
#home .pick{ max-width:1080px; margin:0 auto; }
.inner .dir{ max-width:1080px; margin:0 auto 3rem; border-radius:14px; overflow:hidden; box-shadow:0 8px 30px rgba(0,0,0,.18); border:1px solid var(--border); }
.inner .dir-label{ display:flex; align-items:baseline; gap:.75rem; max-width:1080px; margin:0 auto .6rem; }
.inner .dir-label .tag{ font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; background:var(--bg-tertiary); color:var(--text-secondary); padding:.2rem .55rem; border-radius:6px; }
.inner .dir-label h3{ margin:0; }
.inner .dir-label p{ color:var(--text-secondary); font-size:.9rem; margin:0; }
.inner .chrome{ background:#e9e9ec; height:30px; display:flex; align-items:center; gap:6px; padding:0 12px; border-bottom:1px solid #d5d5da; }
.inner .chrome i{ width:10px; height:10px; border-radius:50%; background:#c9c9ce; display:block; }
.inner .chrome span{ margin-left:12px; background:#fff; border-radius:6px; font:11px system-ui; color:#777; padding:2px 10px; flex:1; max-width:340px; }
.inner .ph{ background-size:cover; background-position:center; }
.inner .logo{ display:block; height:auto; }
.inner .h{ font-family:'ChunkFive',serif; font-weight:400; }
.inner .edge{ display:block; width:100%; height:64px; background:#fff; }
.inner .s{ position:relative; background:#fff; color:var(--ink); font-family:'Nunito',sans-serif; }
.inner .s nav{ display:flex; align-items:center; gap:1.5rem; padding:1.1rem 2.2rem .8rem; background:#fff; }
.inner .s nav .logo{ width:96px; margin-right:auto; }
.inner .s nav a{ font-weight:800; font-size:.9rem; color:var(--ink); display:flex; align-items:center; gap:.45rem; padding-bottom:.2rem; border-bottom:3px solid transparent; }
.inner .s nav a.on{ border-bottom-color:var(--red); }
.inner .s nav a svg{ width:22px; height:20px; color:var(--red); }
.inner .btn{ background:var(--red); color:#fff; font-family:'ChunkFive',serif; letter-spacing:.02em; padding:.6rem 1.15rem; border-radius:999px; font-size:.9rem; box-shadow:0 3px 0 var(--red-dk); display:inline-flex; align-items:center; gap:.5rem; }
.inner .btn svg{ width:16px; height:18px; color:#fff; }
.inner .btn.sea{ background:var(--sea); box-shadow:0 3px 0 var(--sea-dk); }
.inner .btn.ghost{ background:var(--cream); color:var(--red); box-shadow:0 3px 0 #d9c9a6; }
.inner .btn.ghost svg{ color:var(--red); }
.inner .kicker{ font-family:'ChunkFive',serif; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--red); margin-bottom:.5rem; }
.inner .cap{ display:inline-block; background:#FFFDF6; padding:.3rem .8rem .4rem; font-family:'Caveat',cursive; font-size:1.15rem; color:#2b2419; transform:rotate(-2deg); box-shadow:0 4px 12px rgba(0,0,0,.2); position:relative; }
.inner .cap::before{ content:''; position:absolute; left:50%; top:-8px; width:40px; height:12px; background:rgba(255,241,170,.85); transform:translateX(-50%) rotate(-3deg); }
.inner 
  .phead{ display:grid; grid-template-columns:1.1fr 1fr; gap:2rem; padding:1.6rem 2.2rem 1.6rem; background:var(--cream); align-items:center; border-bottom:6px solid var(--red); }
.inner .phead h1{ font-size:2.4rem; line-height:1.05; margin:0 0 .5rem; display:flex; align-items:center; gap:.7rem; }
.inner .phead h1 svg{ width:44px; height:40px; flex-shrink:0; }
.inner .phead p{ margin:0 0 .9rem; font-size:.95rem; font-weight:600; color:#4a5561; max-width:520px; }
.inner .phead .pic{ height:200px; border-radius:12px; box-shadow:0 8px 20px rgba(31,41,51,.2); position:relative; }
.inner .phead .pic .cap{ position:absolute; left:14px; bottom:-10px; }
.inner 
  .foot{ background:var(--sand); background-image:radial-gradient(rgba(120,80,40,.10) 1px, transparent 1.4px); background-size:7px 7px; padding:1rem 2.2rem; text-align:center; font-size:.75rem; font-weight:700; color:#5a4a33; }
.inner .foot b{ font-family:'ChunkFive',serif; font-weight:400; color:var(--red); letter-spacing:.06em; margin-right:1rem; }
.inner 
  .mtabs{ display:flex; gap:.5rem; padding:1rem 2.2rem; background:#fff; border-bottom:1px solid #f0e4cc; position:sticky; top:0; }
.inner .mtabs a{ display:flex; align-items:center; gap:.4rem; font-weight:800; font-size:.82rem; padding:.45rem .9rem; border-radius:999px; background:var(--cream); color:var(--ink); }
.inner .mtabs a.on{ background:var(--red); color:#fff; }
.inner .mtabs a svg{ width:20px; height:18px; }
.inner .msec{ padding:1.4rem 2.2rem 1.2rem; display:grid; grid-template-columns:1fr 1fr; gap:.4rem 3rem; }
.inner .msec h2{ grid-column:1/-1; font-size:1.3rem; margin:0 0 .6rem; display:flex; align-items:center; gap:.6rem; }
.inner .msec h2 svg{ width:34px; height:30px; }
.inner .msec h2 small{ font-family:'Caveat',cursive; font-size:1.1rem; color:#8a7a5e; margin-left:.4rem; }
.inner .mi{ display:flex; align-items:baseline; gap:.5rem; padding:.45rem 0; border-bottom:1px dotted #d9c9a6; }
.inner .mi .n{ font-family:'ChunkFive',serif; font-size:.95rem; white-space:nowrap; }
.inner .mi .d{ font-size:.74rem; color:#5f6a74; font-weight:600; flex:1; }
.inner .mi .p{ font-family:'ChunkFive',serif; color:var(--red); font-size:.95rem; }
.inner .msec.alt{ background:var(--cream); }
.inner .mnote{ padding:.8rem 2.2rem 1.4rem; font-size:.78rem; font-weight:700; color:#8a7a5e; display:flex; gap:1.5rem; align-items:center; }
.inner 
  .filters{ display:flex; gap:.5rem; align-items:center; padding:1rem 2.2rem 0; }
.inner .filters a{ font-weight:800; font-size:.8rem; padding:.4rem .9rem; border-radius:999px; background:var(--cream); }
.inner .filters a.on{ background:var(--ink); color:var(--cream); }
.inner .rackwall{ padding:1.2rem 2.2rem 1.4rem; position:relative; background:#fff; }
.inner .rackwall .post{ position:absolute; top:1.2rem; bottom:1.2rem; width:12px; background:linear-gradient(90deg,#9a6a3a,#7a4f28); border-radius:3px; box-shadow:2px 0 4px rgba(0,0,0,.18); }
.inner .rackwall .post.l{ left:5.2rem; }
.inner .rackwall .post.r{ right:5.2rem; }
.inner .ev{ position:relative; margin:0 auto .8rem; filter:drop-shadow(0 6px 8px rgba(31,41,51,.22)); }
.inner .ev.w1{ width:94%; }
.inner .ev.w2{ width:88%; }
.inner .ev.w3{ width:92%; }
.inner .ev.w4{ width:86%; }
.inner .ev.w5{ width:90%; }
.inner .ev.w6{ width:87%; }
.inner .bd{ position:relative; height:58px; clip-path:url(#boardclip); display:flex; align-items:center; gap:1rem; padding:0 4.2rem 0 .8rem; color:#fff; }
.inner .bd::before{ content:''; position:absolute; right:.9rem; top:50%; width:11%; height:2px; background:rgba(255,247,234,.45); }
.inner .bd.red{ background:linear-gradient(180deg,#c9303e,var(--red) 55%,#a81b28); }
.inner .bd.sea{ background:linear-gradient(180deg,#3a7fa0,var(--sea) 55%,#255a74); }
.inner .bd.sun{ background:linear-gradient(180deg,#f6c854,var(--sun) 55%,#d99f1c); color:var(--ink); }
.inner .bd.sky{ background:linear-gradient(180deg,#96d2e6,var(--sky) 55%,#5fadc9); color:var(--ink); }
.inner .bd.ink{ background:linear-gradient(180deg,#34414d,var(--ink) 55%,#141b22); }
.inner .bd .nose{ width:46px; height:46px; border-radius:50%; background:var(--cream); color:var(--ink); font-family:'ChunkFive',serif; display:flex; flex-direction:column; align-items:center; justify-content:center; line-height:1; flex-shrink:0; box-shadow:inset 0 0 0 3px rgba(0,0,0,.08); }
.inner .bd .nose b{ font-size:1.05rem; font-weight:400; }
.inner .bd .nose small{ font-size:.48rem; letter-spacing:.14em; margin-top:2px; }
.inner .bd h4{ font-family:'ChunkFive',serif; font-weight:400; font-size:1.02rem; margin:0; line-height:1.1; }
.inner .bd p{ margin:.12rem 0 0; font-size:.75rem; font-weight:600; opacity:.9; }
.inner .bd .more{ margin-left:auto; flex-shrink:0; background:rgba(255,247,234,.95); color:var(--ink); font-family:'ChunkFive',serif; font-size:.7rem; letter-spacing:.06em; padding:.45rem .85rem; border-radius:999px; }
.inner .groups{ padding:1.4rem 2.2rem 1.8rem; background:var(--cream); }
.inner .groups h2{ font-size:1.3rem; margin:0 0 1rem; }
.inner .gcards{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.inner .gc{ background:#fff; border-radius:12px; overflow:hidden; border:1px solid #f0e4cc; box-shadow:0 4px 12px rgba(31,41,51,.08); }
.inner .gc .pic{ height:120px; position:relative; }
.inner .gc .pic .ic{ position:absolute; right:8px; bottom:-14px; width:40px; height:40px; border-radius:50%; background:var(--cream); display:flex; align-items:center; justify-content:center; box-shadow:0 2px 6px rgba(0,0,0,.25); }
.inner .gc .pic .ic svg{ width:24px; height:24px; }
.inner .gc .txt{ padding:1.1rem .8rem .8rem; }
.inner .gc h4{ font-family:'ChunkFive',serif; font-weight:400; font-size:1rem; margin:0 0 .2rem; }
.inner .gc .when{ font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--sea); margin-bottom:.35rem; }
.inner .gc p{ margin:0 0 .6rem; font-size:.76rem; color:#4d5763; font-weight:600; line-height:1.45; }
.inner .gc .btn{ font-size:.75rem; padding:.4rem .8rem; }
.inner .callouts{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; padding:1.2rem 2.2rem 1.6rem; }
.inner .co{ display:flex; gap:1rem; align-items:center; background:var(--sea); color:#fff; border-radius:12px; padding:1rem 1.2rem; }
.inner .co.red{ background:var(--red); }
.inner .co svg{ width:44px; height:40px; color:#fff; flex-shrink:0; }
.inner .co h4{ font-family:'ChunkFive',serif; font-weight:400; margin:0 0 .2rem; font-size:1.05rem; }
.inner .co p{ margin:0; font-size:.78rem; font-weight:600; opacity:.92; }
.inner .co .btn{ margin-left:auto; background:var(--cream); color:var(--ink); box-shadow:0 3px 0 rgba(0,0,0,.25); font-size:.78rem; padding:.45rem .9rem; flex-shrink:0; }
.inner 
  .rent{ display:grid; grid-template-columns:1.15fr 1fr; gap:2rem; padding:1.6rem 2.2rem 1.4rem; }
.inner .plist{ display:flex; flex-direction:column; gap:.6rem; }
.inner .pi{ display:flex; align-items:center; gap:.9rem; background:var(--cream); border:1px solid #f0e4cc; border-radius:12px; padding:.55rem .9rem; }
.inner .pi svg{ width:36px; height:38px; flex-shrink:0; }
.inner .pi h4{ font-family:'ChunkFive',serif; font-weight:400; font-size:.95rem; margin:0; }
.inner .pi p{ margin:.1rem 0 0; font-size:.72rem; color:#5f6a74; font-weight:600; }
.inner .pi b{ margin-left:auto; font-family:'ChunkFive',serif; font-weight:400; color:var(--red); font-size:1rem; white-space:nowrap; }
.inner .steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; padding:0 2.2rem 1.6rem; }
.inner .st{ text-align:center; padding:1rem .8rem; background:var(--cream); border-radius:12px; }
.inner .st .num{ width:34px; height:34px; border-radius:50%; background:var(--red); color:#fff; font-family:'ChunkFive',serif; display:flex; align-items:center; justify-content:center; margin:0 auto .5rem; }
.inner .st h4{ font-family:'ChunkFive',serif; font-weight:400; margin:0 0 .25rem; font-size:.95rem; }
.inner .st p{ margin:0; font-size:.75rem; color:#4d5763; font-weight:600; }
.inner .rackpic{ position:relative; height:100%; min-height:300px; border-radius:12px; box-shadow:0 8px 20px rgba(31,41,51,.2); }
.inner .rackpic .cap{ position:absolute; left:14px; bottom:-10px; }
.inner .boardsrow{ display:flex; gap:.6rem; justify-content:center; padding:.2rem 0 1.2rem; }
.inner .boardsrow svg{ width:22px; height:66px; }
.inner 
  .pk{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; padding:1.4rem 2.2rem 1rem; }
.inner .pkg{ background:var(--cream); border:1px solid #f0e4cc; border-radius:14px; padding:1.1rem 1.1rem 1rem; position:relative; }
.inner .pkg.fav{ background:var(--ink); color:var(--cream); border-color:var(--ink); }
.inner .pkg .badge{ position:absolute; right:12px; top:-10px; background:var(--sun); color:var(--ink); font-family:'ChunkFive',serif; font-size:.65rem; letter-spacing:.1em; padding:.3rem .6rem; border-radius:999px; }
.inner .pkg svg{ width:44px; height:40px; margin-bottom:.4rem; }
.inner .pkg h4{ font-family:'ChunkFive',serif; font-weight:400; font-size:1.1rem; margin:0 0 .2rem; }
.inner .pkg .price{ font-family:'ChunkFive',serif; color:var(--red); font-size:1rem; margin-bottom:.5rem; }
.inner .pkg.fav .price{ color:var(--sun); }
.inner .pkg ul{ margin:0 0 .8rem; padding-left:1.1rem; font-size:.78rem; font-weight:600; color:#4d5763; line-height:1.5; }
.inner .pkg.fav ul{ color:#DDEFF5; }
.inner .pkg .btn{ font-size:.78rem; padding:.45rem .9rem; }
.inner .form{ display:grid; grid-template-columns:1fr 1fr; gap:2rem; padding:1.4rem 2.2rem 1.8rem; background:var(--cream); align-items:start; }
.inner .form h2{ font-size:1.3rem; margin:0 0 .4rem; }
.inner .form p{ margin:0 0 .8rem; font-size:.85rem; font-weight:600; color:#4a5561; }
.inner .fields{ display:grid; grid-template-columns:1fr 1fr; gap:.6rem; }
.inner .fld{ background:#fff; border:1.5px solid #e5d6b8; border-radius:10px; padding:.55rem .75rem; font-size:.8rem; font-weight:600; color:#8a7a5e; }
.inner .fld.full{ grid-column:1/-1; }
.inner .fld.tall{ min-height:70px; }
.inner .fld b{ display:block; font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink); margin-bottom:.15rem; }
.inner .form .side{ background:#fff; border-radius:12px; padding:1rem 1.1rem; border:1px solid #f0e4cc; }
.inner .form .side h4{ font-family:'ChunkFive',serif; font-weight:400; margin:0 0 .4rem; font-size:1rem; }
.inner .form .side p{ font-size:.8rem; margin:0 0 .6rem; }
.inner .pick{ max-width:1080px; margin:0 auto; }
  
  #home .SS .hero .arrow, #home .flattop .marrow { display:none !important; }
  
  #home .mt .pic .badge { display:none !important; }
  
  #home .mt .txt { display:flex; flex-wrap:wrap; align-items:baseline; gap:.15rem .6rem; }
  #home .mt .txt h4 { flex:1; }
  #home .mt .txt .price { position:static; background:none; box-shadow:none; padding:0; color:var(--red); font-family:'ChunkFive',serif; font-size:.9rem; }
  #home .mt .txt p { flex-basis:100%; }
  
  .inner .tops { display:grid; grid-template-columns:1.15fr 1fr; gap:1.6rem; padding:.4rem 2.2rem 1.6rem; background:var(--cream); align-items:center; }
  .inner .tops h3 { font-size:1.15rem; margin:0 0 .7rem; display:flex; align-items:baseline; gap:.5rem; }
  .inner .tops h3 small { font-family:'Caveat',cursive; font-size:1.05rem; color:#8a7a5e; }
  .inner .chips { display:flex; flex-wrap:wrap; gap:.45rem; margin-bottom:.7rem; }
  .inner .chip { font-family:'Caveat',cursive; font-size:1.2rem; font-weight:700; padding:.15rem .75rem .25rem; border-radius:999px; background:#fff; border:1.5px solid #e5d6b8; }
  .inner .chip.a { color:var(--red); } .inner .chip.b { color:var(--sea); } .inner .chip.c { color:#b5851c; }
  .inner .tnote { margin:0; font-size:.78rem; font-weight:700; color:#8a7a5e; }
  .inner .tpic { aspect-ratio:828/857; height:auto; border-radius:12px; box-shadow:0 8px 20px rgba(31,41,51,.2); position:relative; background-size:cover; background-position:center; }
  .inner .tops { grid-template-columns:1.3fr 1fr; align-items:center; }
  .inner .tpic .cap { position:absolute; left:14px; top:-12px; bottom:auto; }
  .inner .msec.ss2 { display:block; }
  .inner .ss-grid { display:grid; grid-template-columns:1.59fr 1fr; gap:2rem; align-items:start; }  
  .inner .ss-grid h2 { grid-column:auto; margin:0 0 .6rem; }
  .inner .ss-tops .tpic { max-width:380px; }
  .inner .flavors { margin-top:1.6rem; }  
  
  .inner .msec.boards { display:block; }
  .inner .board-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.6rem; align-items:start; }
  .inner .board-grid.sa { grid-template-columns:1.31fr 1fr; }  
  .inner .board { display:block; cursor:zoom-in; }
  .inner .board img { display:block; width:100%; height:auto; border-radius:12px; box-shadow:0 8px 20px rgba(31,41,51,.2); }
  .inner .board-grid.bi { grid-template-columns:1fr 1.42fr; }  
  .inner .board-grid.bk { grid-template-columns:44% 1fr; }  
  .inner .board-grid.bk .stack { display:grid; gap:1.6rem; }
  .inner .board-grid.one { grid-template-columns:minmax(0, 56%); }  
  .inner .board-note { margin-top:.9rem; font-size:.78rem; font-weight:700; color:#8a7a5e; }
  @media (max-width:720px) { .inner .board-grid { grid-template-columns:1fr; } }
  #zoom { position:fixed; inset:0; background:rgba(31,41,51,.88); display:none; align-items:center; justify-content:center; padding:2rem; z-index:99998; cursor:zoom-out; }
  #zoom.show { display:flex; }
  #zoom img { max-width:96vw; max-height:92vh; border-radius:10px; box-shadow:0 20px 60px rgba(0,0,0,.5); }
  
  .inner .fader { position:relative; overflow:hidden; }
  .inner .fader .fs { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; animation:xfade 32s infinite; }
  .inner .fader .fs:nth-child(1) { animation-delay:0s; } .inner .fader .fs:nth-child(2) { animation-delay:4s; } .inner .fader .fs:nth-child(3) { animation-delay:8s; } .inner .fader .fs:nth-child(4) { animation-delay:12s; } .inner .fader .fs:nth-child(5) { animation-delay:16s; } .inner .fader .fs:nth-child(6) { animation-delay:20s; } .inner .fader .fs:nth-child(7) { animation-delay:24s; } .inner .fader .fs:nth-child(8) { animation-delay:28s; }
  @keyframes xfade { 0% { opacity:0; } 3.1% { opacity:1; } 12.5% { opacity:1; } 15.6% { opacity:0; } 100% { opacity:0; } }
  .inner .owner { display:grid; grid-template-columns:260px 1fr; gap:2.2rem; align-items:center; margin:2rem 0 1rem; padding:1.8rem; background:#FFFDF6; border-radius:14px; box-shadow:0 8px 20px rgba(31,41,51,.12); }
  .inner .owner .opic { position:relative; transform:rotate(-2deg); background:#fff; padding:10px 10px 38px; box-shadow:0 8px 20px rgba(31,41,51,.2); }
  .inner .owner .oph { height:260px; background:repeating-linear-gradient(135deg,#F3EBDD 0 12px,#EFE4D2 12px 24px); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.5rem; color:#8a7a62; font-family:'Caveat',cursive; font-size:1.3rem; text-align:center; line-height:1.1; }
  .inner .owner .oph svg { width:30px; height:42px; }
  .inner .owner .opic .cap { position:absolute; left:0; right:0; bottom:8px; text-align:center; font-family:'Caveat',cursive; font-size:1.2rem; color:#2b2419; }
  .inner .owner h3 { font-size:1.9rem; margin:0 0 .6rem; }
  .inner .owner p { font-size:.95rem; font-weight:600; color:#4a5561; line-height:1.6; margin:0 0 .8rem; }
  .inner .owner .sig { font-family:'Caveat',cursive; font-size:1.7rem; color:var(--red); margin:.2rem 0 1rem; }
  @media (max-width:700px){ .inner .owner { grid-template-columns:1fr; padding:1.2rem; } .inner .owner .opic { max-width:260px; margin:0 auto; } }
  .inner .owner .reach { margin-top:1rem; padding-top:.9rem; border-top:2px dotted var(--red); font-size:.92rem; font-weight:600; color:#4a5561; }
  .inner .owner .reach .kicker { margin-bottom:.4rem; }
  .inner .owner .reach > div:not(.kicker) { display:flex; align-items:baseline; gap:.6rem; padding:.18rem 0; flex-wrap:wrap; }
  .inner .owner .reach b { font-family:'ChunkFive',serif; font-weight:400; color:var(--ink); width:3.6rem; flex:none; }
  .inner .owner .reach a { color:var(--red); font-weight:800; }
  .inner .owner .reach i { font-style:normal; color:#8a7a62; font-size:.85rem; }
  .inner .jobs { display:grid; grid-template-columns:150px 1fr; gap:2rem; align-items:center; margin:1.4rem 2.2rem 2rem; padding:1.6rem 1.8rem; background:var(--cream); border:2px dashed var(--red); border-radius:14px; }
  .inner .jobs .jsign { aspect-ratio:1; border-radius:50%; background:var(--red); color:#fff; display:flex; align-items:center; justify-content:center; text-align:center; font-family:'ChunkFive',serif; font-size:1.5rem; line-height:1.05; letter-spacing:.04em; text-transform:uppercase; transform:rotate(-8deg); box-shadow:0 4px 0 var(--red-dk); }
  .inner .jobs h3 { font-size:1.6rem; margin:0 0 .5rem; }
  .inner .jobs p { font-size:.95rem; font-weight:600; color:#4a5561; line-height:1.6; margin:0 0 1rem; }
  .inner .jobs .btn { margin:0 .5rem .4rem 0; }
  @media (max-width:700px){ .inner .jobs { grid-template-columns:1fr; gap:1rem; padding:1.2rem; margin:1rem; } .inner .jobs .jsign { width:110px; font-size:1.15rem; } }
  #rentals .rent { grid-template-columns:1fr 320px; align-items:start; }
  #rentals .rackpic { height:auto; min-height:0; aspect-ratio:3/4; }
  #rentals .rent { grid-template-columns:1fr 500px; }
  #rentals .phead .pic { height:auto; aspect-ratio:1179/818; }  
  #rentals .pi b { text-align:right; line-height:1.3; }
  #rentals .pi b small { font-family:'Nunito',sans-serif; font-weight:700; font-size:.68rem; color:#5f6a74; }
  #shop .phead .pic { height:auto; aspect-ratio:1024/769; }
  #shop .mpills { padding:1.5rem 2.2rem 0; flex-wrap:wrap; }
  #shop .shopsec { padding:1.1rem 2.2rem .2rem; }
  #shop .shopsec.hide { display:none; }
  #shop .shopsec h3 { font-family:'ChunkFive',serif; font-weight:400; font-size:1.2rem; margin:0 0 .7rem; }
  #shop .mgrid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem 1rem; }
  #shop .mgrid .ph { aspect-ratio:3/2; border-radius:12px; box-shadow:0 8px 20px rgba(31,41,51,.18); background-color:#fff; background-size:contain; background-repeat:no-repeat; background-position:center; }
  #shop .mgrid h4 { font-family:'ChunkFive',serif; font-weight:400; font-size:1rem; margin:.7rem 0 0; }
  #shop .mgrid b { font-family:'ChunkFive',serif; font-weight:400; color:var(--red); }
  #shop .merchmore { padding:0 2.2rem; margin:1rem 0 0; font-size:.9rem; font-weight:600; color:#4a5561; }
  #shop .merchmore b { color:var(--red); }
  #shop .mcard .ph, #shop .mcard h4 { cursor:pointer; }
  @media (hover:hover){#shop .mcard h4:hover{ color:var(--red); }}
  #shop .mcard .mrow { display:flex; align-items:center; justify-content:space-between; margin-top:.15rem; }
  #shop .mcard .buybtn { background:var(--red); color:#fff; font-family:'ChunkFive',serif; font-size:.8rem; padding:.35rem 1rem; border-radius:999px; box-shadow:0 3px 0 #8f1620; }
  @media (hover:hover){#shop .mcard .buybtn:hover, #shop .mcard .ph:hover ~ .mrow .buybtn{ filter:brightness(1.08); }}
  #shop .mshow { background:#fff; }
  #shop .mshow .sslide { position:absolute; inset:0; border-radius:12px; background-color:#fff; background-size:contain; background-repeat:no-repeat; background-position:center; opacity:0; transition:opacity .6s; cursor:pointer; }
  #shop .mshow .sslide.on { opacity:1; z-index:1; }
  #shop .mshow .mprev, #shop .mshow .mnext { position:absolute; top:50%; transform:translateY(-50%); z-index:3; width:34px; height:34px; border-radius:50%; border:0; background:rgba(31,41,51,.5); color:#fff; font-size:1.4rem; line-height:1; cursor:pointer; }
  #shop .mshow .mprev { left:8px; } #shop .mshow .mnext { right:8px; }
  #shop .mshow .sdots { position:absolute; right:12px; bottom:10px; z-index:3; display:flex; gap:5px; }
  #shop .mshow .sdots i { width:8px; height:8px; border-radius:50%; background:rgba(31,41,51,.22); }
  #shop .mshow .sdots i.on { background:var(--red); }
  #shop .mshow .cap { z-index:3; }
  @media (max-width:700px){ #shop .mgrid { grid-template-columns:1fr 1fr; } }
  .evpage .phead .pic { height:auto; aspect-ratio:4/3; }
  #ev-mini-musicians .phead .pic { width:100%; aspect-ratio:825/1238; max-width:340px; justify-self:center; }  
  .evpage .kicker a { color:inherit; text-decoration:none; }
  .evpage .evwhen { font-family:'ChunkFive',serif; color:var(--red); font-size:1.05rem; margin:-.1rem 0 .6rem; }
  .evpage .facts { display:flex; flex-wrap:wrap; gap:.5rem; margin:0 0 1rem; }
  .evpage .facts span { background:#fff; border:1px solid #f0e4cc; border-radius:999px; padding:.3rem .8rem; font-size:.78rem; font-weight:700; color:#5f6a74; }
  .evpage .facts b { color:var(--ink); }
  .evpage .evmore { padding:1.2rem 2.2rem 1.6rem; display:flex; flex-wrap:wrap; gap:.5rem .9rem; align-items:center; font-size:.9rem; }
  .evpage .evmore b { font-family:'ChunkFive',serif; font-weight:400; margin-right:.3rem; }
  .evpage .evmore a { color:var(--red); font-weight:700; text-decoration:none; }
  #events .gc h4 a { color:inherit; text-decoration:none; }
  
  .inner .sandfoot { position:relative; background:var(--sand); background-image:radial-gradient(rgba(120,80,40,.10) 1px, transparent 1.4px); background-size:7px 7px; padding:2rem 2.2rem 1.6rem; text-align:center; overflow:hidden; }
  .inner .sandfoot .deco { position:absolute; pointer-events:none; }
  .inner .sandfoot .logo { width:110px; margin:0 auto .6rem; display:block; }
  .inner .sandfoot .links { font-family:'ChunkFive',serif; font-size:.85rem; letter-spacing:.06em; display:flex; justify-content:center; gap:1.6rem; margin-bottom:.5rem; position:relative; z-index:1; }
  .inner .sandfoot .addr { font-size:.78rem; font-weight:700; color:#5a4a33; position:relative; z-index:1; }
  .inner .sandfoot .links a { color:var(--red); } .inner .sandfoot .addr a { color:#5a4a33; }
  .sandfoot .links { flex-wrap:wrap; row-gap:.4rem; }
  #rentals .racks { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
  @media (max-width:700px){ #rentals .rent { grid-template-columns:1fr; } #rentals .racks .rackpic { max-width:none; } }
  #rentals .rleft .steps { grid-template-columns:1fr; gap:.6rem; padding:0; margin-top:1rem; }
  #rentals .rleft .st { display:grid; grid-template-columns:34px 1fr; column-gap:.8rem; align-items:center; text-align:left; padding:.7rem .9rem; }
  #rentals .rleft .st .num { grid-row:span 2; margin:0; }
  #rentals .rleft .st h4, #rentals .rleft .st p { margin:0; }
  @media (max-width:700px){ #rentals .rent { grid-template-columns:1fr; } #rentals .rackpic { max-width:360px; margin:0 auto; } }
  .inner .tl { display:grid; grid-template-columns:repeat(4,1fr); gap:.5rem; margin:.4rem 0 1.1rem; border-top:3px dotted var(--red); padding-top:.7rem; }
  .inner .tl b { display:block; font-family:'ChunkFive',serif; color:var(--red); font-size:1.15rem; }
  .inner .tl span { display:block; font-family:'Caveat',cursive; font-size:1.1rem; line-height:1.1; color:#2b2419; }
  @media (max-width:600px){ .inner .tl { grid-template-columns:1fr 1fr; } }
  .inner .fader5 .fs { animation:xfade5 20s infinite; }  
  .inner .fader5 .fs:nth-child(1) { animation-delay:0s; } .inner .fader5 .fs:nth-child(2) { animation-delay:4s; } .inner .fader5 .fs:nth-child(3) { animation-delay:8s; } .inner .fader5 .fs:nth-child(4) { animation-delay:12s; } .inner .fader5 .fs:nth-child(5) { animation-delay:16s; }
  @keyframes xfade5 { 0% { opacity:0; } 5% { opacity:1; } 20% { opacity:1; } 25% { opacity:0; } 100% { opacity:0; } }
  @media (prefers-reduced-motion: reduce) { .inner .fader .fs, .inner .fader5 .fs { animation:none; } .inner .fader .fs:nth-child(1) { opacity:1; } }
  
  #home .pets { display:grid; grid-template-columns:1fr 1.15fr; gap:2rem; padding:1.8rem 2.2rem 2rem; align-items:center; background:var(--cream); border-top:1px solid #f0e4cc; }
  #home .petpic { aspect-ratio:1/1; height:auto; max-width:420px; border-radius:12px; box-shadow:0 8px 20px rgba(31,41,51,.2); position:relative; }
  #home .petpic .cap { position:absolute; left:14px; bottom:-12px; background:#FFFDF6; padding:.3rem .8rem; font-family:'Caveat',cursive; font-size:1.15rem; color:#2b2419; transform:rotate(-2deg); box-shadow:0 4px 10px rgba(0,0,0,.2); }
  #home .pets h3 { font-family:'ChunkFive',serif; font-weight:400; font-size:1.35rem; margin:0 0 .5rem; }
  #home .pets p { font-size:.9rem; color:#4a5561; margin:0 0 .7rem; font-weight:600; }
  #home .pets .petnote { font-family:'Caveat',cursive; font-size:1.2rem; color:#8a7a5e; font-weight:600; }
  
  #home .bd, .inner .bd { height:72px; padding-left:1.35rem; gap:.9rem; }
  #home .bd .nose, .inner .bd .nose { width:50px; height:50px; }
  #home .bd::after, .inner .bd::after { content:''; position:absolute; left:6%; right:9%; top:7px; bottom:7px; border-top:1.5px solid rgba(255,247,234,.38); border-bottom:1.5px solid rgba(255,247,234,.38); pointer-events:none; z-index:0; }
  #home .bd.sun::after, #home .bd.sky::after, .inner .bd.sun::after, .inner .bd.sky::after { border-color:rgba(31,41,51,.22); }
  #home .bd .art, .inner .bd .art { position:absolute; right:8.2rem; top:0; height:100%; width:170px; color:#FFF7EA; opacity:.34; pointer-events:none; z-index:0; }
  #home .bd.sun .art, #home .bd.sky .art, .inner .bd.sun .art, .inner .bd.sky .art { color:#1F2933; opacity:.26; }
  .inner .bd .art { right:7.6rem; }
  #home .bd > *:not(.art), .inner .bd > *:not(.art) { position:relative; z-index:1; }
  #home .bd .more, .inner .bd .more { z-index:2; }
  .page { display:none; } .page.show { display:block; }
  #home .s nav .logo-link, .inner .s nav .logo-link { margin-right:auto; display:block; padding:0; border:0; }
  #home .s nav .logo, .inner .s nav .logo { margin-right:0; }
  #home .s nav a.btn, .inner .s nav a.btn { border-bottom:0; padding:.7rem 1.15rem .5rem; color:#fff; font-family:'ChunkFive',serif; font-weight:400; font-size:.9rem; display:inline-flex; gap:.5rem; }
  #home .btn svg, .inner .btn svg { transform:translateY(-1.4px); }  
  #home .s nav a.btn svg, .inner .s nav a.btn svg { width:16px; height:18px; color:#fff; transform:translateY(-1.3px); }
  .inner .s nav a.on, #home .s nav a.on { border-bottom:3px solid var(--red); }
  #home .s nav a { padding-bottom:.2rem; border-bottom:3px solid transparent; }
  a { color:inherit; text-decoration:none; }
  .inner .foot a { color:#5a4a33; } @media (hover:hover){.inner .foot a:hover{ color:var(--red); }}
  #home .sandfoot .links a { color:var(--red); } #home .sandfoot .addr a { color:#5a4a33; }
  .inner .fld input, .inner .fld select, .inner .fld textarea { display:block; width:100%; border:0; background:transparent; font:600 .85rem Nunito,sans-serif; color:var(--ink); outline:none; padding:0; }
  .inner .fld { cursor:text; } .inner .fld:focus-within { border-color:var(--sea); }
  .inner .fld.full { grid-column:1/-1; } .inner .fields .full { grid-column:1/-1; }
  .inner .fields button.btn { border:0; cursor:pointer; font-size:.9rem; }
  .inner .sent { background:#fff; border:1px solid #f0e4cc; border-radius:12px; padding:1.2rem; }
  .inner .sent p { font-size:.85rem; color:#4a5561; font-weight:600; margin:0 0 .8rem; }
  .inner .mtabs a.on { background:var(--red); color:#fff; }
  
  
  #home .hero { height:520px; }
  
  #home .slide::after { display:none; }
  #home .slide .in { text-shadow:0 2px 12px rgba(10,16,22,.65), 0 1px 3px rgba(10,16,22,.55); }
  #home .slide .in::before { content:''; position:absolute; inset:-20% -8% -10% -8%; z-index:-1; pointer-events:none;
    background:radial-gradient(ellipse 62% 58% at 34% 66%, rgba(20,30,40,.46), rgba(20,30,40,.18) 55%, rgba(20,30,40,0) 78%); }
  #home .slide .in.right::before { background:radial-gradient(ellipse 62% 58% at 66% 66%, rgba(20,30,40,.46), rgba(20,30,40,.18) 55%, rgba(20,30,40,0) 78%); }
  .inner .filters a.on { background:var(--ink); color:var(--cream); }
  .inner .ev.hide { display:none; }
  #home .mt { display:block; color:inherit; }
  #toast { position:fixed; left:50%; bottom:28px; transform:translateX(-50%) translateY(20px); background:var(--ink); color:var(--cream); font:600 .85rem Nunito,sans-serif; padding:.8rem 1.1rem; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.35); max-width:520px; opacity:0; transition:opacity .2s, transform .2s; z-index:99999; pointer-events:none; }
  #toast.show { opacity:1; transform:translateX(-50%) translateY(0); }
  #toast b { color:var(--sun); font-family:'ChunkFive',serif; font-weight:400; letter-spacing:.06em; margin-right:.5rem; }


  #buy { position:fixed; inset:0; background:rgba(31,41,51,.62); display:none; align-items:center; justify-content:center; padding:1.5rem; z-index:99990; font-family:Nunito,sans-serif; color:var(--ink); }
  #buy.show { display:flex; }
  #buy .bsheet { position:relative; background:#fff; border-radius:16px; width:min(880px,100%); max-height:92vh; overflow:auto; display:grid; grid-template-columns:1.15fr 1fr; box-shadow:0 24px 70px rgba(0,0,0,.4); }
  #buy .bx { position:absolute; right:.6rem; top:.5rem; border:0; background:none; font-size:1.8rem; line-height:1; color:#7a6a52; cursor:pointer; z-index:2; }
  #buy .bpic { background:#fff; display:flex; align-items:center; justify-content:center; padding:1rem; border-right:1px solid #f0e4cc; }
  #buy .bpic img { width:100%; max-height:70vh; object-fit:contain; }
  #buy .bside { padding:1.6rem 1.5rem 1.4rem; background:var(--cream); }
  #buy .bstep { display:none; } #buy .bstep.on { display:block; }
  #buy .bkick { font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--red); }
  #buy h3 { font-family:'ChunkFive',serif; font-weight:400; font-size:1.45rem; margin:.15rem 0 .2rem; }
  #buy .bprice { font-family:'ChunkFive',serif; color:var(--red); font-size:1.15rem; margin-bottom:.4rem; }
  #buy .blbl { font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#7a6a52; margin:.9rem 0 .4rem; }
  #buy .bsizes { display:flex; flex-wrap:wrap; gap:.4rem; }
  #buy .bsizes button { min-width:3rem; padding:.5rem .7rem; border:2px solid #e6d9bf; background:#fff; border-radius:10px; font:800 .9rem Nunito,sans-serif; color:var(--ink); cursor:pointer; }
  #buy .bsizes button[aria-pressed="true"] { background:var(--ink); border-color:var(--ink); color:var(--cream); }
  #buy .bqty { display:inline-flex; align-items:center; border:2px solid #e6d9bf; border-radius:10px; background:#fff; }
  #buy .bqty button { border:0; background:none; width:2.3rem; height:2.2rem; font-size:1.2rem; cursor:pointer; color:var(--ink); }
  #buy .bqty span { min-width:1.6rem; text-align:center; font-weight:800; }
  #buy .bshipln { display:flex; justify-content:space-between; margin-top:1.1rem; padding-top:.7rem; border-top:1px dashed #e6d9bf; font-weight:700; font-size:.9rem; color:#7a6a52; }
  #buy .btotal { display:flex; justify-content:space-between; align-items:baseline; margin:.3rem 0 .8rem; font-weight:800; }
  #buy .btotal b { font-family:'ChunkFive',serif; font-weight:400; font-size:1.3rem; color:var(--red); }
  #buy .bgo { display:block; width:100%; border:0; border-radius:999px; background:var(--red); color:#fff; font-family:'ChunkFive',serif; font-size:1.05rem; padding:.8rem 1rem; box-shadow:0 3px 0 #8f1620; cursor:pointer; }
  #buy .bgo:disabled { background:#cdbf9f; box-shadow:none; cursor:not-allowed; }
  #buy .bback { border:0; background:none; padding:0; font:800 .85rem Nunito,sans-serif; color:#7a6a52; cursor:pointer; }
  #buy .bsum { background:#fff; border:1px solid #f0e4cc; border-radius:10px; padding:.7rem .85rem; font-size:.88rem; font-weight:600; line-height:1.55; margin:.5rem 0 .9rem; }
  #buy .bsum b { font-weight:800; }
  #buy .bapple { display:block; width:100%; border:0; border-radius:999px; background:#000; color:#fff; font:700 1.02rem -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; padding:.8rem 1rem; cursor:pointer; }
  #buy .bor { display:flex; align-items:center; gap:.6rem; color:#9a8a70; font-size:.78rem; font-weight:800; margin:.8rem 0; }
  #buy .bor::before, #buy .bor::after { content:""; flex:1; border-top:1px solid #e6d9bf; }
  #buy .bfields input { display:block; width:100%; box-sizing:border-box; border:2px solid #e6d9bf; border-radius:10px; background:#fff; padding:.55rem .7rem; font:600 .88rem Nunito,sans-serif; color:var(--ink); margin-bottom:.4rem; outline:none; }
  #buy .bfields input:focus { border-color:var(--sea); }
  #buy .brow3 { display:grid; grid-template-columns:1.6fr .7fr 1fr; gap:.4rem; }
  #buy .bfine { font-size:.75rem; color:#7a6a52; font-weight:600; margin:.7rem 0 0; line-height:1.45; }
  #buy .bcheck { width:52px; height:52px; border-radius:50%; background:var(--sea); color:#fff; display:flex; align-items:center; justify-content:center; margin:.4rem 0 .6rem; }
  #buy .bcheck svg { width:30px; height:30px; }
  #buy .bnext { font-size:.9rem; font-weight:600; color:#4a5561; margin:0 0 1rem; }
  @media (max-width:700px){
    #buy { padding:0; align-items:flex-end; }
    #buy .bsheet { grid-template-columns:1fr; border-radius:16px 16px 0 0; max-height:94vh; }
    #buy .bpic { border-right:0; border-bottom:1px solid #f0e4cc; padding:.6rem; }
    #buy .bpic img { max-height:34vh; }
  }


:root { --border:#e6dccb; }
html, body { margin:0; background:#fff; }
#home .dir, .inner .dir { margin:0 auto; border-radius:0; box-shadow:none; border:0; }
.notice { background:var(--red); color:#fff; text-align:center; font-family:'Nunito',sans-serif; font-weight:800; font-size:.9rem; padding:.55rem 1rem; }
.bd[data-href] { cursor:pointer; }
.bd h4 a { color:inherit; text-decoration:none; }
.ev.hide { display:none; }

#buy .bsizes button:disabled { text-decoration:line-through; color:#b3a586; background:#f7f0e2; border-style:dashed; cursor:not-allowed; }
#buy .berr { color:var(--red); font-weight:800; font-size:.86rem; margin:.1rem 0 .7rem; }
#buy .berr:empty { display:none; }
#shop .mcard.out .ph, #shop .mcard.out h4 { cursor:default; }
#shop .mcard.out .ph { opacity:.5; }
#shop .mcard .buybtn.off { background:#cdbf9f; box-shadow:none; }

#thanks .s, #notfound .s, #error .s, .evpage .s { min-height:100vh; min-height:100svh; display:flex; flex-direction:column; }
#thanks .sandfoot, #notfound .sandfoot, #error .sandfoot, .evpage .sandfoot { margin-top:auto; }

#thanks .thanks { flex:1 0 auto; background:var(--cream); padding-top:3rem; padding-bottom:3.4rem; display:flex; justify-content:center; align-items:flex-start; }
#thanks .tcard { background:#fff; border-radius:18px; box-shadow:0 12px 34px rgba(31,41,51,.12); padding:2rem 2rem 1.8rem; width:100%; max-width:540px; text-align:center; }
#thanks .bcheck { width:58px; height:58px; margin:0 auto .9rem; border-radius:50%; background:var(--sea); color:#fff; display:flex; align-items:center; justify-content:center; }
#thanks .bcheck svg { width:32px; height:32px; }
#thanks .tcard .kicker b { color:var(--ink); }
#thanks .tcard h1 { font-size:clamp(1.8rem, 3vw, 2.4rem); line-height:1.08; margin:.25rem 0 .6rem; text-wrap:balance; }
#thanks .tcard p { color:#4a5561; margin:0 0 1.3rem; }
#thanks .titem { display:flex; align-items:center; gap:.9rem; text-align:left; background:var(--cream); border-radius:12px; padding:.7rem .9rem; margin:0 0 1.4rem; }
#thanks .tph { flex:0 0 76px; height:76px; border-radius:10px; background:#fff center / contain no-repeat; }
#thanks .titem b { display:block; font-family:'ChunkFive',serif; font-weight:400; font-size:1.08rem; }
#thanks .titem span { display:block; font-size:.88rem; font-weight:700; color:#4a5561; margin-top:.15rem; }
#thanks .tbtns { display:flex; gap:.6rem; justify-content:center; flex-wrap:wrap; }
@media (max-width:700px){ #thanks .thanks { padding-top:1.6rem; padding-bottom:2rem; } #thanks .tcard { padding:1.5rem 1.1rem 1.4rem; } }
.ph.nophoto { background:linear-gradient(135deg,var(--sea),var(--sea-dk)); position:relative; }
.ph.nophoto .cap { position:absolute; left:14px; bottom:12px; background:#FFFDF6; padding:.25rem .7rem; font-family:'Caveat',cursive; font-size:1.1rem; color:#2b2419; transform:rotate(-2deg); }
.evover { font-weight:800; color:var(--red); }
.inner .phead .pic .cap { bottom:12px !important; }   
#home .SS .track { transition-duration:.9s; }   

.edgewrap { position:relative; height:64px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 216 64'%3E%3Cpath d='M0 44 C36 36 72 36 108 44 C144 52 180 52 216 44' fill='none' stroke='%232E6F8E' stroke-width='4'/%3E%3C/svg%3E") repeat-x calc(100% - 1080px) 0 / 216px 64px; }
.edgewrap > .edge { display:block !important; position:absolute; top:0; height:64px !important; margin:0; }
.edgewrap > .edge.surferbit { width:90px !important; left:20%; left:calc(100% - 825px - round(nearest, calc(78% - 825px), 216px)); }
.edgewrap > .edge.fisherbit { width:185px !important; right:0; }

#home .dir, .inner .dir { overflow:clip; }
.orderbar { display:none; }

@media (min-width:701px){
  .s { --gut: max(2.2rem, calc((100% - 1200px) / 2)); --hgut: max(2.2rem, calc((100% - 1720px) / 2)); }
  #home .dir, .inner .dir { max-width:none !important; }
  .s > *:not(.edgewrap):not(.herorow):not(.owner):not(.jobs):not(.boardsrow):not(.notice):not(nav) { padding-left:var(--gut) !important; padding-right:var(--gut) !important; }
  .s > nav { padding-left:var(--hgut) !important; padding-right:var(--hgut) !important; }
  #home .s > nav, .inner .s > nav { position:sticky; top:0; z-index:60; transition:box-shadow .2s; }
  #home .s > nav.stuck, .inner .s > nav.stuck { box-shadow:0 4px 14px rgba(31,41,51,.12); }
  html { scroll-padding-top:120px; }   
  .s > .owner, .s > .jobs { margin-left:var(--gut) !important; margin-right:var(--gut) !important; }
  
  #home .SS .hero { margin:0 var(--hgut); border-radius:14px 14px 0 0;   
    height:clamp(420px, calc(min(100vw - 4.4rem, 1720px) / 2.571), 80vh); }
  #home .SS .slide h1 { font-size:clamp(2.7rem, 3.2vw, 4rem); }
  #home .SS .slide .hrs { font-size:clamp(.78rem, .8vw, .95rem); }
  #home .SS .slide .in, #home .SS .slide .in.right { max-width:none; }
  .rackwall .post.l { left:calc(var(--gut) + 3rem) !important; }
  
  .inner .phead { padding-top:2.6rem !important; padding-bottom:2.8rem !important; column-gap:3rem; }
  .inner .phead .pic { height:clamp(240px, 16vw, 360px) !important; }
  .inner .phead h1 { font-size:clamp(2.4rem, 2.5vw, 3.2rem) !important; text-wrap:balance; }
  .inner .phead p { font-size:1.05rem !important; max-width:600px !important; }
  .rackwall .post.r { right:calc(var(--gut) + 3rem) !important; }
}

@media (min-width:701px) and (max-width:1000px){
  .s > nav { gap:1.1rem !important; }
  .s > nav > a { white-space:nowrap; }
  .s > nav > a:not(.logo-link):not(.btn) svg { display:none; }
}

.herorow { position:relative; }
.beach { display:none; }
@media (min-width:1900px){
  .beach { display:block; position:absolute; top:0; bottom:0; width:var(--hgut); overflow:hidden; background:var(--sand);
    background-image:radial-gradient(rgba(120,80,40,.10) 1px, transparent 1.4px); background-size:7px 7px; }
  .beach.l { left:0; } .beach.r { right:0; }
  .beach > * { position:absolute; display:block; }
  .beach .gull { width:48px; } .beach .gull svg, .beach .rod svg, .beach .tackle svg { width:100%; height:auto; display:block; }
  .beach .g1 { top:7%; left:16%; animation:beachGlide 7s ease-in-out infinite; }
  .beach .g2 { top:15%; left:58%; width:32px; animation:beachGlide 8.5s ease-in-out -3s infinite; }
  .beach .g3 { top:9%; right:20%; animation:beachGlide 7.5s ease-in-out -1.5s infinite; }
  .beach .star { width:34px; height:34px; top:25%; left:22%; color:#E8945A; animation:beachSpin 40s linear infinite; }
  .beach .shell { width:36px; height:38px; color:#EAD6B2; }
  .beach .s1 { top:33%; left:58%; transform:rotate(-20deg); }
  .beach .foot { width:13px; height:24px; color:rgba(120,80,40,.38); opacity:0; animation:beachStep 6s ease-in-out infinite; }
  .beach .f1 { top:60%; left:30%; transform:rotate(-8deg); }
  .beach .f2 { top:53%; left:46%; transform:scaleX(-1) rotate(8deg); animation-delay:.6s; }
  .beach .f3 { top:46%; left:32%; transform:rotate(-6deg); animation-delay:1.2s; }
  .beach .f4 { top:39%; left:48%; transform:scaleX(-1) rotate(6deg); animation-delay:1.8s; }
  
  .beach .board { width:34px; height:200px; bottom:2%; transform-origin:50% 100%; }
  .beach .b1 { left:18%; color:var(--red); transform:rotate(-7deg); }
  .beach .b2 { left:50%; height:170px; color:var(--sun); transform:rotate(6deg); }
  
  .beach .s2 { top:42%; right:52%; transform:rotate(150deg); }
  .beach .dollar { width:34px; height:34px; color:#E6D3B0; top:33%; right:16%; }
  .beach .rod { bottom:2%; transform-origin:74% 98%; }
  .beach .r1 { width:92px; right:2%; }
  .beach .r2 { width:76px; right:40%; animation:beachBite 7s ease-in-out infinite; }
  .beach .catchline { transform-origin:14px 10px; animation:beachDangle 3.6s ease-in-out infinite; }
  .beach .tackle { width:44px; bottom:1.5%; left:4%; }
  .beach .pail { width:32px; height:32px; color:var(--sea); bottom:2%; right:2%; }
  .beach .st2 { width:24px; height:24px; color:#E8945A; top:24%; left:18%; animation:beachSpin 55s linear infinite; }
}
@keyframes beachGlide { 0%,100% { transform:translate(0,0); } 50% { transform:translate(10px,-7px); } }
@keyframes beachSpin { to { transform:rotate(360deg); } }
@keyframes beachStep { 0%,8% { opacity:0; } 14%,70% { opacity:1; } 82%,100% { opacity:0; } }
@keyframes beachDangle { 0%,100% { transform:rotate(-6deg); } 50% { transform:rotate(6deg); } }
@keyframes beachBite { 0%,78%,100% { transform:rotate(0); } 82% { transform:rotate(-3deg); } 86% { transform:rotate(1deg); } 90% { transform:rotate(-2.5deg); } 95% { transform:rotate(0); } }
@media (prefers-reduced-motion: reduce) { .beach * { animation:none !important; } .beach .foot { opacity:1; } }

@media (max-width:700px){
  
  nav { flex-wrap:wrap; justify-content:space-between; gap:0 .4rem !important; padding:.5rem .9rem .2rem !important; }
  nav::after { content:''; order:1; flex-basis:100%; height:0; }
  nav .logo-link, nav .btn { order:0; }
  nav > a:not(.logo-link):not(.btn) { order:2; font-size:.82rem; padding:0 .1rem; margin:0 !important; }
  nav > a:not(.logo-link):not(.btn) svg { display:none; }
  nav .logo { width:84px; }
  nav .btn { margin-left:0; }
  #home .SS .hero { height:380px; }
  #home .SS .slide .in, #home .SS .slide .in.right { padding:1.2rem 1.1rem 2.6rem; max-width:none; }
  #home .SS .slide h1 { font-size:1.75rem; }
  #home .SS .arrow { display:none; }
  .flattop, #home .SS .about, .pets, .phead, .board-grid, .ss-grid, .callouts, .steps, .rent, .owner, .jobs { grid-template-columns:1fr !important; }
  
  
  .edgewrap > .edge.surferbit { display:none !important; }
  
  #home .SS .slide.nophone, #home .SS .dots button.nophone { display:none !important; }
  
  .s > *:not(.edgewrap):not(.herorow):not(.hero):not(.owner):not(.jobs):not(nav):not(.notice):not(.boardsrow) { padding-left:1.1rem !important; padding-right:1.1rem !important; }
  .inner .phead h1 { font-size:2rem !important; line-height:1.05; text-wrap:balance; }
  
  #menu .phead .pic, #events .phead .pic, #shop .phead .pic { display:none !important; }
  
  #story .phead > .pic { display:block !important; order:-1; height:auto !important; aspect-ratio:4/3; margin-bottom:.3rem; }
  .inner .phead { padding-top:1.3rem !important; padding-bottom:1.4rem !important; }
  
  .menu6 { display:grid !important; grid-template-columns:none !important; grid-auto-flow:column; grid-auto-columns:46%; gap:.7rem;
    overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:1.1rem; margin:0 -1.1rem .4rem; padding:0 1.1rem .5rem; scrollbar-width:none; }
  .menu6::-webkit-scrollbar { display:none; }
  .menu6 .mt { scroll-snap-align:start; }
  
  #home .flattop .photo.mini { order:2; height:210px !important; min-height:0; aspect-ratio:auto; margin-top:1rem; }
  #home .petpic { aspect-ratio:4/3 !important; max-width:none !important; }
  
  .rackwall .bd h4 { white-space:normal !important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; font-size:.95rem; line-height:1.1; }
  
  .msec h2 { flex-wrap:wrap; } .msec h2 small { flex-basis:100%; margin:0 !important; }
  #zoom { overflow:auto; align-items:flex-start !important; justify-content:flex-start !important; padding:0 !important; }
  #zoom img { width:200vw; max-width:none !important; max-height:none !important; border-radius:0; }
  #zoom::after { content:'×'; position:fixed; top:10px; right:12px; width:40px; height:40px; border-radius:50%; background:#fff; color:var(--ink);
    font:700 28px/40px 'Nunito',sans-serif; text-align:center; box-shadow:0 2px 8px rgba(0,0,0,.3); }
  
  #monthpill { display:none !important; }
  .gcards { grid-template-columns:1fr !important; gap:.7rem !important; }
  .inner .gc { display:grid; grid-template-columns:108px 1fr; }
  .inner .gc .pic { height:auto !important; min-height:132px; }
  
  .inner .gc .pic .ic { bottom:8px; }
  .inner .gc .txt { padding:.75rem .85rem .8rem !important; }
  .inner .gc .txt p { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin:.2rem 0 .45rem; }
  .inner .gc .btn { min-height:36px !important; padding:.3rem .9rem; font-size:.8rem; }
  
  .pk { grid-template-columns:1fr !important; }
  .inner .pkg ul { columns:2; column-gap:1.2rem; }
  
  #rentals .rackpic { width:100%; }
  .inner .pkg { padding:.9rem 1rem .8rem !important; }
  .inner .pkg svg { width:30px !important; height:28px !important; margin-bottom:.2rem !important; }
  
  #rentals .steps { grid-template-columns:1fr !important; gap:.6rem !important; }
  #rentals .steps .st { display:grid; grid-template-columns:34px 1fr; column-gap:.8rem; align-items:center; text-align:left; padding:.7rem .9rem; }
  #rentals .steps .st .num { grid-row:span 2; margin:0; }
  .co { flex-wrap:wrap; }
  .rackwall .ev { width:100% !important; }
  .rackwall h2 { font-size:1.25rem !important; flex-wrap:wrap; gap:.3rem .6rem; }
  .rackwall h2 small { flex-basis:100%; }
  .rackwall .bd .art { display:none; }
  .rackwall .post { display:none; }
  .owner .opic { width:100%; max-width:260px; box-sizing:border-box; }
  
  .rackwall .bd { padding-right:1.8rem !important; }
  .rackwall .bd .more { display:none !important; }
  .rackwall .bd > div:not(.nose) { flex:1 1 auto; min-width:0; }
  .rackwall .bd h4, .rackwall .bd p { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .sandfoot .links { gap:.4rem 1rem; }
  .sandfoot .deco { display:none; }
  .filters { flex-wrap:wrap; gap:.4rem; }
  .rackwall .bd p, .plist p, .gc .when { font-size:13px !important; }
  nav a, .btn { min-height:40px !important; display:inline-flex !important; align-items:center; }
  
  .orderbar { display:flex; position:fixed; left:12px; right:12px; bottom:calc(12px + env(safe-area-inset-bottom)); z-index:950;
    align-items:center; justify-content:center; gap:.55rem; min-height:54px; border-radius:14px; background:var(--red); color:#fff;
    font-family:'ChunkFive',serif; font-size:1.15rem; letter-spacing:.02em; text-decoration:none; box-shadow:0 8px 22px rgba(31,41,51,.3);
    transform:translateY(calc(100% + 40px + env(safe-area-inset-bottom))); visibility:hidden; transition:transform .25s ease, visibility 0s .25s; }
  .orderbar.up { transform:none; visibility:visible; transition:transform .25s ease; }
  .orderbar svg { width:20px; height:20px; color:#fff; flex:none; }
  .sandfoot { padding-bottom:calc(1.6rem + 80px) !important; }
  
  #buy { align-items:center !important; padding:12px !important; }
  #buy .bsheet { border-radius:16px; max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); overscroll-behavior:contain; }
  #buy .bpic img { max-height:26vh; }
  #buy .bside { padding:1.2rem 1.1rem 1.1rem; }
  
  #home .s > nav > a:not(.logo-link):not(.btn) { font-size:.82rem; }
  #shop .mcard .buybtn { min-height:38px; padding:.55rem 1.1rem; box-sizing:border-box; display:inline-flex; align-items:center; }
  .filters > a, .filters > button { min-height:38px; box-sizing:border-box; display:inline-flex; align-items:center; }
  .rackwall h2 small a { display:inline-block; padding:.6rem .3rem .6rem 0; margin:-.6rem 0; }
  .reach a { padding:.45rem 0; }
  .sandfoot .addr { line-height:2.1; }
  .nose small { font-size:9.5px !important; }
  .menu6 .mt .txt p { font-size:12.5px !important; }
  .pi b small { font-size:12px !important; }
  
  html:has(#buy.show), html:has(#zoom.show) { overflow:hidden; }
  html:has(#buy.show) .orderbar, html:has(#zoom.show) .orderbar { visibility:hidden; }
}
@media (max-width:700px) and (max-height:720px) { #buy .bpic img { max-height:19vh; } }   
@media (prefers-reduced-motion: reduce) { .orderbar, .orderbar.up, .s > nav { transition:none !important; } }

a.going svg { display:none; }
a.going::before { content:''; flex:none; width:15px; height:15px; border:2.5px solid currentColor; border-right-color:transparent; border-radius:50%; animation:going .8s linear infinite; }
@keyframes going { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { a.going::before { animation:none; } }

@media (prefers-reduced-motion: reduce) { .inner .fader .fs { animation:none !important; } .inner .fader .fs:first-child { opacity:1 !important; } }


#home .SS .slide .hrs { opacity:1; text-shadow:0 1px 3px rgba(0,0,0,.65); }
@media (max-width:700px){ #home .SS .slide .hrs { font-size:.875rem; } }

#zoom, #buy .bsheet { overscroll-behavior:contain; }

@media (pointer:coarse) {
  nav a, .btn { min-height:40px !important; display:inline-flex !important; align-items:center; }
  #shop .mcard .buybtn { min-height:38px; padding:.55rem 1.1rem; box-sizing:border-box; display:inline-flex; align-items:center; }
  .filters > a, .filters > button { min-height:38px; box-sizing:border-box; display:inline-flex; align-items:center; }
  .reach a { padding:.45rem 0; }
  .sandfoot .links a, .sandfoot .addr a { display:inline-block; padding:.55rem .3rem; }
  html:has(#buy.show), html:has(#zoom.show) { overflow:hidden; }
  html:has(#buy.show) .orderbar, html:has(#zoom.show) .orderbar { visibility:hidden; }
  #zoom { overflow:auto; align-items:flex-start !important; justify-content:flex-start !important; padding:0 !important; }
  #zoom img { width:max(200vw, 1100px); max-width:none !important; max-height:none !important; border-radius:0; }
  #zoom::after { content:'×'; position:fixed; top:10px; right:12px; width:40px; height:40px; border-radius:50%; background:#fff; color:var(--ink);
    font:700 28px/40px 'Nunito',sans-serif; text-align:center; box-shadow:0 2px 8px rgba(0,0,0,.3); }
  #buy .bx { width:44px; height:44px; }
}

@media (max-height:500px) and (orientation:landscape) {
  #home .s > nav, .inner .s > nav { position:static !important; }
  #home .SS .hero { height:min(380px, 78vh) !important; }
}

@media (min-width:701px) and (max-width:1000px) {
  #rentals .rent { grid-template-columns:minmax(0, 1fr) minmax(0, 1.3fr) !important; }
  #rentals .racks { grid-template-columns:repeat(2, minmax(0, 1fr)) !important; }
}

.btn { vertical-align:middle; }

.calbtns { display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; }
.calbtns .btn { margin:0 !important; white-space:nowrap; }
@media (max-width:700px){
  .calbtns { flex-wrap:nowrap; }
  .calbtns .btn { flex:1 1 0; justify-content:center; text-align:center; padding-left:.5rem !important; padding-right:.5rem !important; font-size:.85rem !important; }
}

#home .rackwall h2 .wk { display:inline-flex; align-items:baseline; gap:.8rem; flex-wrap:wrap; }
@media (max-width:700px){
  #home .rackwall h2 .wk { flex-basis:100%; align-items:center; gap:.6rem; flex-wrap:nowrap; }
  #home .rackwall h2 .wk small { flex-basis:auto !important; white-space:nowrap; }
  #home .rackwall h2 .wk .month { top:0; flex-shrink:0; }
}
@media (max-width:420px){ #home .rackwall h2 .fd { display:none; } }

@media (max-width:700px){
  .filters { flex-wrap:nowrap !important; gap:.35rem !important; }
  .filters > a { padding:.45rem .7rem !important; font-size:.78rem !important; white-space:nowrap; flex-shrink:1; min-width:0; }
}

.petpic.dogs { position:relative; overflow:hidden; background-color:#2E6F8E; }
.petpic.dogs .dog { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity 1.2s ease; }
.petpic.dogs .dog.on { opacity:1; }

.evpage .phead .pic.evphoto { height:auto !important; aspect-ratio:auto !important; background:none !important; overflow:hidden; align-self:start; }
.evpage .phead .pic.evphoto img { display:block; width:100%; height:auto; max-height:min(85vh, 680px); object-fit:contain; border-radius:12px; }

@media (max-width:700px){ .orderbar { bottom:calc(30px + env(safe-area-inset-bottom)) !important; } }

a.bd, a.bd:visited { text-decoration:none; cursor:pointer; }

[data-buy-ref], [data-zoom] { cursor:pointer; }

#shop .mcard .buybtn.off { background:#6E6248; }

#home .SS .slide .hrs a { color:inherit; pointer-events:auto; white-space:nowrap; padding:.6rem 0; text-decoration:underline; text-decoration-color:rgba(255,255,255,.45); text-underline-offset:3px; }
#home .bd.ink{ background:linear-gradient(180deg,#34414d,var(--ink) 55%,#141b22); }
