:root{--navy:#06254d;--red:#f50022;--teal:#007d99;--green:#00b43d;--paper:#fffcf4;--reference:url('../images/approved-top-reference.png');font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;color:var(--navy)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#e8edef;font-weight:600}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #f9b600;outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.icon{width:25px;height:25px;display:inline-block;flex-shrink:0}.chevron{width:12px;height:15px;flex-shrink:0}.red-icon{color:var(--red)}.site{max-width:434px;width:100%;margin:0 auto;background:var(--paper);container-type:inline-size;position:relative;isolation:isolate;box-shadow:0 5px 30px #17294413}.hero{position:relative}.hero-art{background-image:var(--reference);width:100%;aspect-ratio:434/311}.brand-link{position:absolute;top:0;left:31%;width:38%;height:40%}.hamburger{position:absolute;top:1.2%;right:3.1%;width:11.2%;aspect-ratio:1;border:1px solid #ffffffb0;border-radius:50%;background:#05294e;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:12px;box-shadow:inset 0 1px 3px #ffffff30}.hamburger span{width:100%;height:1.5px;background:white;border-radius:1px}.hero nav{position:absolute;z-index:10;right:3%;top:19%;min-width:210px;padding:10px;background:#fffefbf7;border-radius:15px;box-shadow:0 8px 25px #00244b40;backdrop-filter:blur(10px)}.hero nav a,.hero nav button{display:block;border:0;background:none;text-align:left;width:100%;padding:13px;font-size:13px}.location{position:relative;margin:0 2.3%;padding:2.1% 3.2% 2.4%;border-radius:21px;background:#fff;box-shadow:0 3px 12px #735e2610;min-height:120px}.status-heading{margin-bottom:2.6%}.badge{display:inline-flex;background:var(--red);color:white;border-radius:40px;align-items:center;justify-content:center;min-height:6.5cqw;padding:2px 22px;font-size:3.7cqw;font-weight:900;letter-spacing:1px}.location-body{position:relative;min-height:19cqw;display:flex;gap:10px}.location-details{flex:1;min-width:0;padding-right:31%}.location h2{display:flex;align-items:center;gap:8px;font-size:4.9cqw;font-weight:900;line-height:1.35;margin:0;letter-spacing:-.6px}.location h2 .icon{width:6cqw;height:7cqw}.location-details h2 .icon{filter:drop-shadow(-2px -2px 0 #f50022)}#location-address{font-size:2.5cqw;line-height:1.45;margin:4px 0 4px 8cqw;white-space:normal;letter-spacing:-.2px}.hours{display:flex;align-items:center;gap:9px;margin:7px 0 0;font-size:5.5cqw;line-height:1.2;font-weight:900;white-space:nowrap;letter-spacing:.3px}.hours .icon{width:6.2cqw;height:6.2cqw}.location-photo{width:30%;aspect-ratio:132/106;position:absolute;right:0;top:-5%;border-radius:10px;background-color:#c5e7ed}.reference-crop{background-image:var(--reference);background-repeat:no-repeat}.actions{display:flex;gap:8px;margin-top:9px}.button{border:0;border-radius:40px;display:flex;align-items:center;justify-content:center;gap:6px;min-height:9cqw;padding:7px 12px;color:#fff;font-size:2.9cqw;font-weight:800;letter-spacing:.4px;line-height:1.25;white-space:nowrap;box-shadow:inset 0 -2px 0 #002d4810}.button .icon{width:4.7cqw;height:4.7cqw}.button .chevron{width:10px}.teal{background:var(--teal)}.red{background:var(--red)}.green{background:var(--green)}#map-link{flex:1.3}#schedule-button{flex:.9}.status-notice{display:flex;align-items:center;gap:13px;background:#ffe9e9;border-radius:12px;padding:10px 14px;margin:-8px -3px 10px;width:85%;min-height:64px}.status-notice>.icon{width:40px;height:40px;color:var(--red)}.status-notice strong{display:block;font-size:4.2cqw;color:var(--red);white-space:nowrap}.status-notice span{display:block;font-size:3.1cqw;margin-top:4px}.next-date{font-size:6.7cqw;line-height:1.15;margin:0 0 6px;font-weight:900}.next-date small{font-size:4.6cqw;color:var(--red);margin-left:6px}.line-mini{display:inline-flex;align-items:center;justify-content:center;color:var(--green);background:#fff;border-radius:50%;font-size:6px;width:21px;height:21px;flex-shrink:0}.questions{display:grid;grid-template-columns:1.05fr 1.05fr .8fr;gap:6px;margin:10px 10px 0}.questions button,.questions a{border:1px solid #f1eee8;background:#fff;box-shadow:0 3px 7px #58422610;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 5px;border-radius:17px;font-size:2.8cqw;line-height:1.25;text-align:left;min-height:57px;letter-spacing:-.3px}.questions .icon{width:6.5cqw;height:6.5cqw}.menu-section{padding:15px 10px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:10px}.section-heading h2{display:flex;align-items:center;gap:8px;font-size:5.2cqw;line-height:1.2;font-weight:900;margin:0;letter-spacing:.2px}.section-heading .icon{width:6.3cqw;height:6.7cqw}.section-heading .cutlery{width:7cqw;height:8cqw}.text-link{border:0;background:none;font-size:2.7cqw;display:inline-flex;align-items:center;gap:2px;padding:6px 0;white-space:nowrap;font-weight:700}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.menu-card{min-width:0;text-align:center}.menu-photo{aspect-ratio:134/84;width:100%;border-radius:5px;position:relative;overflow:hidden}.menu-photo img{width:100%;height:100%;object-fit:cover}.menu-photo.placeholder{background:#f0eee8;display:flex;align-items:center;justify-content:center;color:#787a7c;font-size:11px;font-weight:400}.menu-card h3{font-size:2.7cqw;line-height:1.3;margin:5px -2px 0;letter-spacing:-.35px;font-weight:800}.menu-card .price{font-size:3cqw;line-height:1.2;margin:1px 0 0;font-weight:800;letter-spacing:.4px}.stock-tag{position:absolute;right:3px;bottom:3px;left:3px;border-radius:3px;padding:3px 1px;font-size:9px;background:#fff4d8;color:#6b4500}.sold-out .menu-photo::after{content:'SOLD OUT';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#06254d99;color:white;font-weight:900;font-size:13px;letter-spacing:1px}.menu-meta{display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:9px;font-weight:400;padding:8px 1px 0}.menu-meta button{border:0;background:none;font-size:9px;padding:4px;color:#50677d}.menu-message{font-size:13px;line-height:1.7;padding:15px 12px;background:#f4f3ed;border-radius:10px;margin:0}.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:9px 10px 12px}.quick-links button,.quick-links a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;background:#fff;box-shadow:0 2px 8px #48381d0d;border:1px solid #f0eee8;min-height:18.5cqw;border-radius:14px;padding:6px 2px;font-size:2.5cqw;font-weight:800;white-space:normal;line-height:1.25;letter-spacing:-.4px}.quick-links .icon{width:8cqw;height:8cqw}.line-icon{width:8.7cqw;height:8.7cqw;background:#00bb3b;color:white;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:2.5cqw;font-weight:900}.ai-avatar{display:block;width:10cqw;height:10cqw;border-radius:50%}.ai-band{position:relative;min-height:31cqw;background:#e8faff url('https://sadamisaki.net/wp/wp-content/uploads/2026/10/MISAKI-AI-背景-高解像度.png') center/cover no-repeat;overflow:hidden}.ai-band::before,.ai-band::after{display:none}.ai-art{display:none}.ai-content{position:relative;z-index:3;margin-left:39%;padding:10px 14px 14px 0}.ai-content h2{font-size:4cqw;font-weight:900;line-height:1.18;margin:0 0 8px;white-space:nowrap;letter-spacing:-.5px}.ai-prompts{display:flex;gap:5px;margin:0 0 10px}.ai-prompts button,.ai-prompts a{padding:6px 7px;font-size:2.15cqw;flex:1;border:1px solid #9dcbdc;border-radius:999px;background:#fffefa;color:var(--navy);white-space:nowrap;letter-spacing:-.4px;text-align:center}.ai-content>.button{margin:0 auto;width:74%;min-height:7.7cqw;font-size:2.75cqw}.news-section{padding:12px 12px 14px}.news-section .section-heading{margin-bottom:5px}.news-section .section-heading h2{font-size:4.7cqw}.news-row{display:grid;grid-template-columns:58px 62px 1fr;align-items:center;gap:6px;font-size:2.4cqw;line-height:1.3;padding:6px 0;border-bottom:1px solid #eeeade;letter-spacing:-.3px}.news-row:last-child{border-bottom:0}.news-row time{font-weight:400}.news-tag{font-size:2.25cqw;white-space:nowrap;display:inline-block;border-radius:3px;background:#00a5d7;color:white;text-align:center;padding:3px}.news-tag.event{background:#f00024}.news-tag.media{background:#fc8350}.news-title{font-weight:500}.empty-copy{font-size:12px;line-height:1.6;color:#52657a}.bottom-nav{position:sticky;bottom:0;z-index:15;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#fffefbf7;backdrop-filter:blur(8px);border-top:1px solid #eeeade;border-radius:18px 18px 0 0;padding:8px 4px max(8px,env(safe-area-inset-bottom));box-shadow:0 -3px 10px #735e2605}.bottom-nav button,.bottom-nav a{border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:2.3cqw;font-weight:800;padding:0;line-height:1.3;min-height:38px;white-space:nowrap}.bottom-nav .icon{width:5.5cqw;height:5.5cqw}.bottom-nav [aria-current]{color:#073a6a}.site:is([data-state='closed'],[data-state='inactive']) .location{margin-top:-1px;padding-top:0;background:transparent;box-shadow:none}.site:is([data-state='closed'],[data-state='inactive']) .status-heading{margin-bottom:7px}.site:is([data-state='closed'],[data-state='inactive']) .status-heading h2{font-size:4.9cqw;gap:9px}.site:is([data-state='closed'],[data-state='inactive']) .location-body{margin-left:1px;padding-left:31px}.site:is([data-state='closed'],[data-state='inactive']) .location-body::before{content:'';position:absolute;top:2px;bottom:0;left:0;width:24px;border-radius:12px;background:#ffecd3}.site:is([data-state='closed'],[data-state='inactive']) .location-photo{top:0;width:33%;aspect-ratio:136/103}.site:is([data-state='closed'],[data-state='inactive']) .location-details{padding-right:33%}.site:is([data-state='closed'],[data-state='inactive']) .location-details h2{font-size:3.75cqw;letter-spacing:-.5px;gap:5px}.site:is([data-state='closed'],[data-state='inactive']) .location-details h2 .icon{width:4.6cqw;height:5.5cqw;filter:none}.site:is([data-state='closed'],[data-state='inactive']) #location-address{margin:2px 0 0 5.8cqw;font-size:2.25cqw;line-height:1.25}.site:is([data-state='closed'],[data-state='inactive']) .hours{font-size:4.8cqw;gap:7px;margin:1px 0 5px;order:-1}.site:is([data-state='closed'],[data-state='inactive']) .hours .icon{width:4.7cqw;height:4.7cqw}.site:is([data-state='closed'],[data-state='inactive']) #schedule-button{background:var(--teal);flex:.9;font-size:2.7cqw}.site:is([data-state='closed'],[data-state='inactive']) #line-button{flex:1.2;font-size:2.5cqw;padding:7px 8px;gap:4px}.site:is([data-state='closed'],[data-state='inactive']) .menu-section{padding-top:14px}.site:is([data-state='closed'],[data-state='inactive']) .news-section{display:none}.site[data-state='error'] .hero-art,.site[data-state='loading'] .hero-art{opacity:.72}.site[data-state='error'] .badge{background:#66798d}.site[data-state='error'] .location-details,.site[data-state='loading'] .location-details{padding-right:0}.site[data-state='error'] .location h2{font-size:4cqw}.site[data-state='error'] #location-address{margin-left:0;font-size:3cqw}.site[data-state='error'] .location-details h2 .icon{filter:none}.preview-bar{position:sticky;top:0;z-index:40;background:#fffefbf5;border-bottom:1px solid #cfd9dd;padding:12px 20px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;font-size:12px;backdrop-filter:blur(12px)}.preview-bar strong{font-size:13px}.preview-bar select{border:1px solid #d4dde2;border-radius:6px;background:white;padding:6px;color:var(--navy);font:inherit}.preview-bar button{border:1px solid #d4dde2;border-radius:6px;background:#fff;padding:7px 10px;font-size:12px}.review-layout{display:grid;grid-template-columns:minmax(0,434px) minmax(0,434px);gap:28px;max-width:928px;padding:20px 16px 36px;margin:auto;align-items:start}.review-label{font-size:11px;font-weight:700;color:#506575;letter-spacing:1px;margin:0 0 9px;display:flex;justify-content:space-between}.review-label span{font-weight:400;letter-spacing:0}.reference-frame{width:100%;background-image:var(--reference);box-shadow:0 5px 30px #17294413;aspect-ratio:434/1068}.preview-note{max-width:900px;margin:12px auto 0;padding:0 16px;font-size:11px;font-weight:400;color:#506575;line-height:1.7}.preview-mode .menu-meta{padding-top:3px;min-height:17px}.preview-mode .menu-meta button{padding:1px 0}.preview-mode #updated{display:none}.review-layout.hide-reference{display:block;max-width:466px}.review-layout.hide-reference .reference-column{display:none}.review-layout.hide-reference .site{margin:auto}@media(max-width:760px){.preview-bar{padding:8px 10px;gap:6px;justify-content:space-between}.preview-bar strong{font-size:11px}.preview-bar label{font-size:10px}.preview-bar button{font-size:10px;padding:6px}.preview-note{font-size:10px;margin-top:8px}.review-layout{display:block;padding:12px 0 0;max-width:434px}.review-label{padding:0 10px}.reference-column{display:none}.review-layout.show-reference .reference-column{display:block;margin-top:30px}.reference-frame{margin-bottom:30px}.review-layout.hide-reference{max-width:434px}.preview-bar select{font-size:11px}.preview-mode .site{box-shadow:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero-art{background-size:302.304147% 385.530547%;background-position:23.348519% 12.725225%;}
.site[data-state="closed"] .hero-art{background-size:298.181818% 385.530547%;background-position:76.949541% 12.725225%;}
.location-photo{background-size:993.939394% 1131.132075%;background-position:41.186441% 41.354071%;}
.ref-burger{background-size:979.104478% 1462.195122%;background-position:18.251273% 59.444942%;}
.ref-chicken{background-size:986.466165% 1462.195122%;background-position:30.110263% 59.444942%;}
.ref-lemon{background-size:979.104478% 1462.195122%;background-position:42.020374% 59.444942%;}
.ai-avatar{background-size:2572.549020% 2551.063830%;background-position:44.171293% 69.270833%;}
.ai-art{background-size:790.361446% 875.182482%;background-position:17.888307% 82.768362%;}
.reference-frame{background-size:302.304147% 112.265918%;background-position:23.348519% 86.259542%;}
.reference-frame.closed{background-size:298.181818% 112.265918%;background-position:76.949541% 86.259542%;}
/* Restore the upper logo arc without reproducing the mockup's phone status bar. */
.hero{padding-top:3.45622cqw;background:#8ad8f8;border-radius:22px 22px 0 0}
.logo-cap{position:absolute;left:31.56682%;top:0;width:38.70968%;height:3.45622cqw}
.hamburger{top:5.4%}.brand-link{top:0;height:44%}
.location-photo{top:-16px}.section-heading{margin-bottom:8px}.section-heading .cutlery{height:7.2cqw}
.site:is([data-state='closed'],[data-state='inactive']) .location-details{display:flex;flex-direction:column}
.site:is([data-state='closed'],[data-state='inactive']) .next-date{order:0}
.site:is([data-state='closed'],[data-state='inactive']) .hours{order:1}
.site:is([data-state='closed'],[data-state='inactive']) .location-details h2{order:2}
.site:is([data-state='closed'],[data-state='inactive']) #location-address{order:3}
.site:is([data-state='closed'],[data-state='inactive']) .location-photo{top:0}
.site[data-state='inactive'] .news-section{display:none}

.logo-cap{background-size:780.952381% 7993.333333%;background-position:29.895105% 8.277027%;}
.site[data-state="closed"] .logo-cap{background-size:780.952381% 7993.333333%;background-position:70.804196% 8.277027%;}
.reference-frame{background-size:302.304147% 110.710988%;background-position:23.348519% 84.482759%;}
.reference-frame.closed{background-size:298.181818% 110.710988%;background-position:76.949541% 84.482759%;}
.reference-frame{aspect-ratio:434/1083}.preview-mode .menu-meta{min-height:12px}.quick-links{margin-top:6px}

:root{--full-reference:url('../images/full-page-reference.png')}
.full-ref{background-image:var(--full-reference);background-repeat:no-repeat;background-color:#e5f2f4}
.home-block{padding:28px 16px;background:var(--paper)}
.home-block+.home-block{border-top:1px solid #eee8dd}
.block-heading{margin-bottom:15px}
.block-heading h2{display:flex;align-items:center;gap:10px;margin:0;color:var(--navy);font-size:5.3cqw;line-height:1.3;font-weight:900;letter-spacing:-.4px}
.block-heading h2 .icon{width:7.5cqw;height:7.5cqw}
.block-heading p{margin:4px 0 0 9.8cqw;font-size:2.9cqw;line-height:1.55;font-weight:500}
.wide-button{width:100%;min-height:10cqw;margin-top:16px;font-size:3.1cqw}

.calendar-section{padding-top:31px}
.calendar-card{background:#fff;border-radius:18px;padding:14px 13px 10px;box-shadow:0 3px 14px #293f5710}
.calendar-nav{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;text-align:center;margin-bottom:10px}
.calendar-nav strong{font-size:4cqw}
.calendar-nav button{width:31px;height:31px;border:0;border-radius:50%;background:#f8f7f3;font-size:22px;line-height:1}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}
.calendar-week{font-size:2.6cqw;margin-bottom:4px}
.calendar-week .sat{color:#009ed2}.calendar-week .sun{color:var(--red)}
.calendar-days{gap:3px 0;font-size:2.7cqw;font-weight:500}
.calendar-days span{display:flex;align-items:center;justify-content:center;width:7.1cqw;height:7.1cqw;margin:auto;border-radius:50%}
.calendar-days .muted{color:#c0c5c7}.calendar-days .event-blue,.calendar-days .event-red{color:#fff;font-weight:900}.calendar-days .event-blue{background:#059ccc}.calendar-days .event-red{background:var(--red)}
.calendar-legend{display:flex;justify-content:center;gap:14px;margin-top:10px;font-size:2.35cqw;font-weight:500}
.calendar-legend span{display:flex;align-items:center;gap:4px}.calendar-legend i{display:block;width:9px;height:9px;border-radius:50%;background:#c8cccd}.calendar-legend .blue{background:#059ccc}.calendar-legend .red{background:var(--red)}

.places-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px 8px}
.places-grid article{min-width:0}.places-grid .full-ref{aspect-ratio:120/75;border-radius:7px}
.places-grid .cms-place-image{background-size:cover;background-position:center;background-repeat:no-repeat}
.places-grid .place-card{
  overflow:hidden;
  border:1px solid #eee8dd;
  border-radius:10px;
  background:#fff;
  box-shadow:0 4px 14px rgba(0,40,75,.07)
}
.places-grid .place-card .cms-place-image{
  border-radius:0
}
.place-card__body{
  padding:7px 10px 9px;
  text-align:center
}
.places-grid .place-card h3{
  margin:0 0 4px
}
.places-grid .place-card h3{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px
}
.place-card__name-icon{
  width:14px;
  height:14px;
  flex:0 0 14px;
  color:#0b2f59
}
.place-card__map-icon{
  width:13px;
  height:13px;
  flex:0 0 13px
}
.place-card__map{
  display:inline-flex;
  align-items:center;
  gap:3px;
  color:#078da6;
  font-size:13px;
  line-height:1.4;
  font-weight:700;
  text-decoration:none
}
.place-card__map:hover{
  text-decoration:underline
}
.places-grid h3{font-size:2.9cqw;line-height:1.35;margin:5px 2px 0;text-align:center}
.ref-place1{background-size:750% 2330.6667%;background-position:41.7949% 27.7944%}
.ref-place2{background-size:750% 2330.6667%;background-position:58.3333% 27.7944%}
.ref-place3{background-size:750% 2330.6667%;background-position:41.7949% 34.3694%}
.ref-place4{background-size:750% 2330.6667%;background-position:58.3333% 34.3694%}

.story-section{background:var(--paper);padding-bottom:28px}
.story-visual{width:100%;aspect-ratio:286/190;background-size:314.6853% 920%;background-position:50% 44.8652%}
.story-copy{padding:18px 20px 0}
.story-copy h2{font-size:8cqw;line-height:1.22;letter-spacing:-1.5px;margin:0 0 12px;transform:rotate(-3deg);text-decoration:underline;text-decoration-color:#22b8df;text-decoration-thickness:3px;text-underline-offset:5px}
.story-copy p{font-size:3.15cqw;line-height:1.85;font-weight:500;margin:0 0 4px}

.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:start;margin-bottom:18px}
.gallery-grid .full-ref{aspect-ratio:1;border-radius:8px;background-size:cover;background-position:center;background-repeat:no-repeat}
.ref-gallery1{background-size:937.5% 2009.1954%;background-position:38.9303% 69.8374%}
.ref-gallery2{background-size:937.5% 2009.1954%;background-position:51.2438% 69.8374%}
.ref-gallery3{background-size:1216.2162% 2009.1954%;background-position:61.8644% 69.8374%}
.ref-gallery4{background-size:937.5% 2009.1954%;background-position:38.9303% 75.3161%}
.ref-gallery5{background-size:937.5% 2009.1954%;background-position:51.2438% 75.3161%}
.ref-gallery6{background-size:1216.2162% 2009.1954%;background-position:61.8644% 75.3161%}

.voice-section{background:#fffdf8}.gallery-section,.voice-section{display:flex;flex-direction:column}.gallery-section>.wide-button,.voice-section>.wide-button{margin-top:auto}
.voice-list{display:grid;gap:8px;margin-bottom:18px}.voice-list article{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid #f0eadf;border-radius:18px;padding:11px 13px;box-shadow:0 2px 7px #3144570d}
.voice-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 37px;width:37px;height:37px;border-radius:50%;background:#f3c55d;color:white;font-size:21px}
.voice-list p{font-size:2.75cqw;line-height:1.45;margin:0;font-weight:500}.voice-list strong{display:block}.voice-list small{display:block;color:#687888;font-size:2.3cqw;margin-top:2px}

.line-heading-icon{display:inline-flex;align-items:center;justify-content:center;width:9cqw;height:9cqw;border-radius:12px;background:#00b943;color:#fff;font-size:2.4cqw}
.stamp-set-title{margin:10px 8px 9px;font-size:3cqw;line-height:1.35;font-weight:900;color:var(--navy)}
.stamp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0;width:100%;max-width:100%;margin:0 auto;align-items:start;justify-items:center}.stamp-grid .full-ref,.stamp-grid .cms-stamp-image{width:100%;min-width:0;aspect-ratio:320/270;background-color:transparent}.cms-stamp-image{display:flex;align-items:center;justify-content:center;overflow:hidden}.cms-stamp-image img{display:block;width:100%;max-width:100%;height:100%;object-fit:contain;margin:0 auto}
.stamp-archive-button{background:#fff;color:var(--teal);border:2px solid var(--teal);box-shadow:none;margin-top:9px}
.ref-stamp1{background-size:756.3025% 1157.6159%;background-position:80.4097% 5.6982%}.ref-stamp2{background-size:756.3025% 1157.6159%;background-position:96.6709% 5.6982%}.ref-stamp3{background-size:756.3025% 1157.6159%;background-position:80.4097% 14.8403%}.ref-stamp4{background-size:756.3025% 1157.6159%;background-position:96.6709% 14.8403%}

.goods-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 7px}.goods-grid article{min-width:0}.goods-grid .full-ref,.goods-grid .cms-goods-image{aspect-ratio:82/94;border-radius:7px}.cms-goods-image{background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#e5f2f4}.goods-grid h3{font-size:2.55cqw;line-height:1.35;margin:5px 1px 0}.goods-grid p{font-size:2.6cqw;margin:0;font-weight:800}
.ref-goods1{background-size:1097.561% 1859.5745%;background-position:76.6504% 29.5042%}.ref-goods2{background-size:1097.561% 1859.5745%;background-position:87.1638% 29.5042%}.ref-goods3{background-size:1097.561% 1859.5745%;background-position:97.6773% 29.5042%}.ref-goods4{background-size:1097.561% 1859.5745%;background-position:76.6504% 37.364%}.ref-goods5{background-size:1097.561% 1859.5745%;background-position:87.1638% 37.364%}.ref-goods6{background-size:1097.561% 1859.5745%;background-position:97.6773% 37.364%}

.media-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.media-cards article{position:relative}.media-cards .full-ref{aspect-ratio:123/145;border-radius:6px}.media-cards span{position:absolute;left:5px;bottom:5px;background:#fffef0dc;border-radius:3px;padding:2px 5px;font-size:2.4cqw}
.ref-media1{background-size:731.7073% 1205.5172%;background-position:80.5663% 54.7723%}.ref-media2{background-size:731.7073% 1205.5172%;background-position:97.1686% 54.7723%}
.carousel-dots{display:flex;justify-content:center;gap:5px;margin:10px 0 0}.carousel-dots i{width:7px;height:7px;border-radius:50%;background:#d8dbdc}.carousel-dots .active{background:var(--red)}

.booking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.booking-grid button{border:1px solid #eee9e0;background:#fff;border-radius:14px;min-height:70px;padding:36px 4px 7px;font-size:2.4cqw;font-weight:800;line-height:1.3;box-shadow:0 2px 7px #3144570a;position:relative}.booking-grid button::before{content:'◆';position:absolute;top:9px;left:50%;transform:translateX(-50%);font-size:19px;color:#0581a3}.booking-grid button:nth-child(2)::before,.booking-grid button:nth-child(5)::before{content:'♜'}.booking-grid button:nth-child(3)::before{content:'▣'}.booking-grid button:nth-child(4)::before{content:'⌂'}.booking-grid button:nth-child(6)::before{content:'◉'}.contact-form-section{background:#fffdf8}.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px}.contact-form label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:2.55cqw;font-weight:800}.contact-label{display:flex;align-items:center;gap:7px;min-height:20px}.contact-label b{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:999px;background:#fff0f0;color:#b4212c;font-size:.78em;line-height:1.35}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #d8d0c2;border-radius:10px;background:#fff;padding:10px 12px;color:var(--navy);font:inherit;font-size:2.55cqw;line-height:1.4}.contact-message{grid-column:1/-1}.contact-form textarea{resize:vertical;min-height:132px}.contact-submit{grid-column:1/-1;margin-top:2px}.contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-form-notice{margin:0 0 12px;padding:10px 12px;border-radius:9px;font-size:2.5cqw;line-height:1.5}.contact-form-notice.success{background:#e9f8ee;color:#126b2f}.contact-form-notice.error{background:#fff0f0;color:#9a1e25}.home-booking-contact{display:grid;grid-template-columns:1fr;grid-column:1/-1;width:100%}.home-booking-contact>.home-block+.home-block{border-top:0}.home-booking-contact .booking-section{border-right:0}@media(min-width:900px){.home-booking-contact{grid-template-columns:repeat(2,minmax(0,1fr));width:min(1180px,calc(100% - 64px));margin:0 auto;align-items:stretch}.booking-section{border-right:1px solid #eee8dd}.booking-section,.contact-form-section{padding:42px 28px}.booking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-grid button{min-height:112px}.contact-form{gap:14px 12px}.contact-form label,.contact-form input,.contact-form select,.contact-form textarea{font-size:14px}.contact-form input,.contact-form select{min-height:44px;padding:8px 10px}.contact-form textarea{min-height:118px}.contact-form-notice{font-size:14px}}

.footer-visual{height:180px;overflow:hidden}.footer-scene{height:100%;background-size:315.7895% 891.8367%;background-position:99.6748% 87.3067%}
.site-footer{position:relative;background:#052650;color:#fff;text-align:center;padding:24px 18px 85px}.site-footer>img{width:44%;max-width:175px;filter:brightness(0) invert(1);margin-bottom:12px}.social-links{display:flex;justify-content:center;gap:16px;margin-bottom:17px}.social-links button{border:0;background:none;color:#fff;width:28px;height:28px;padding:2px}.social-links .icon{width:100%;height:100%}.social-links span{font-size:8px;border:1px solid currentColor;border-radius:50%;width:25px;height:25px;display:flex;align-items:center;justify-content:center}.site-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 10px;margin:0 auto 18px;max-width:360px}.site-footer nav a,.site-footer nav button{border:0;background:none;color:#fff;font-size:2.45cqw;padding:0}.site-footer nav a:not(:last-child)::after,.site-footer nav button:not(:last-child)::after{content:' |';margin-left:8px;color:#7d9ab5}.site-footer small{font-size:2.2cqw;font-weight:400;color:#d6e3ed}.to-top{position:absolute;right:15px;bottom:22px;width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#079dc6;font-size:22px;font-weight:900}

.reference-column img.full-page-reference{display:block;width:100%;height:auto;box-shadow:0 5px 30px #17294413}
.bottom-nav{position:sticky}

/* User review fixes: use a dedicated high-resolution story image and stop the footer crop before the navy footer begins. */
.story-visual{background-image:url('../images/story-enhanced-v2.png');background-size:cover;background-position:center 48%}
.footer-visual{height:auto;aspect-ratio:285/110}
.footer-scene{height:100%;background-size:315.7895% 1589.0909%;background-position:99.6748% 82.7228%}

/* Keep the footer message editable and crisp instead of baking it into a low-resolution crop. */
.footer-visual{position:relative;aspect-ratio:2022/778}
.footer-scene{position:absolute;inset:0;background-image:url('../images/footer-banner-v2.png');background-size:cover;background-position:center}
.footer-message{position:absolute;z-index:2;left:5%;top:22%;width:52%;margin:0;color:#fff;font-size:4.05cqw;line-height:1.42;font-weight:900;letter-spacing:.2px;transform:rotate(-4deg);text-shadow:0 2px 2px #00668d,0 0 8px #00668da0}
