:root { --ink:#17241f; --forest:#254d42; --paper:#f4f5f0; --white:#fff; --tomato:#dc482d; --sand:#e6e4da; --line:#d8ddd6; --muted:#66736d; --sans:"Pretendard Variable",Pretendard,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif; --width:min(1200px,calc(100% - 64px)); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); font-size:16px; line-height:1.65; } a { color:inherit; text-decoration:none; } button,a { font:inherit; } img { display:block; max-width:100%; } h1,h2,h3,p { margin-top:0; }.sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }.skip-link { position:fixed; z-index:20; left:1rem; top:-100px; padding:.7rem 1rem; background:var(--tomato); color:white; font-weight:700; }.skip-link:focus { top:1rem; }
.site-header { height:76px; width:var(--width); margin:0 auto; display:grid; grid-template-columns:190px 1fr auto; align-items:center; gap:2rem; background:var(--paper); }.logo { font-weight:800; font-size:1.05rem; letter-spacing:-.06em; white-space:nowrap; }.site-nav { display:flex; justify-content:center; gap:clamp(1rem,3vw,2.5rem); font-size:.83rem; font-weight:600; }.site-nav a { color:#40514b; }.site-nav a:hover { color:var(--tomato); }.header-cta { padding:.55rem .85rem; border:1px solid var(--ink); font-size:.76rem; font-weight:700; }.header-cta:hover { background:var(--ink); color:white; }.menu-toggle { display:none; }.menu-backdrop { display:none; }
.hero { min-height:min(680px,calc(100vh - 76px)); position:relative; display:flex; align-items:end; padding:72px max(32px,calc((100vw - 1200px)/2)); color:white; background:url("images/night-market.jpg") center/cover no-repeat; }.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,20,16,.74) 0%,rgba(10,20,16,.42) 50%,rgba(10,20,16,.1) 100%); }.hero-content,.hero-caption { position:relative; z-index:1; }.hero-content { max-width:760px; }.hero-content>p,.overline,.section-title>p,.feature-copy>p,.youth-copy>p,.night-heading>p,.story-heading>p,.visit-section>div>p:first-child { margin-bottom:1rem; font-size:.73rem; font-weight:700; }.hero h1 { margin-bottom:2.2rem; font-size:clamp(2.8rem,5.5vw,5.45rem); letter-spacing:-.09em; line-height:1.08; font-weight:800; }.hero-caption { position:absolute; right:max(32px,calc((100vw - 1200px)/2)); bottom:54px; max-width:210px; margin:0; font-size:.73rem; line-height:1.6; }.button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 1.15rem; font-weight:700; font-size:.8rem; }.button-light { background:var(--white); color:var(--ink); }.button-light:hover { background:var(--tomato); color:white; }.button-dark { background:var(--ink); color:white; }.button-dark:hover { background:var(--tomato); }
.market-intro { width:var(--width); margin:0 auto; padding:128px 0; display:grid; grid-template-columns:minmax(0,.94fr) minmax(440px,1.06fr); gap:clamp(4rem,10vw,11rem); }.overline,.section-title>p { color:var(--tomato); }.wide-copy h2,.section-title h2,.feature-copy h2,.youth-copy h2,.night-heading h2,.story-heading h2,.visit-section h2 { margin-bottom:1.45rem; font-size:clamp(2.2rem,4.3vw,4.1rem); letter-spacing:-.085em; line-height:1.16; font-weight:800; }.wide-copy>p:last-child { max-width:440px; color:#4f5c56; font-size:1rem; word-break:keep-all; }.place-list { border-top:1px solid var(--ink); }.place-row { min-height:83px; display:grid; grid-template-columns:155px 1fr 26px; gap:1rem; align-items:center; padding:1rem 0; border-bottom:1px solid var(--line); }.place-row span { color:var(--tomato); font-size:.76rem; font-weight:700; }.place-row strong { font-size:1.05rem; letter-spacing:-.045em; }.place-row b { color:var(--tomato); font-size:1.15rem; text-align:right; }.place-row:hover strong { text-decoration:underline; text-underline-offset:4px; }
.image-feature { display:grid; grid-template-columns:1.25fr .75fr; min-height:500px; background:var(--sand); }.image-feature figure { margin:0; min-height:500px; }.image-feature img { width:100%; height:100%; object-fit:cover; }.feature-copy { align-self:center; padding:3rem clamp(2.5rem,7vw,8rem) 3rem clamp(2rem,5vw,6rem); }.feature-copy>p,.night-heading>p,.story-heading>p,.visit-section>div>p:first-child { color:var(--tomato); }.feature-copy h2 { margin-bottom:1rem; }.feature-copy span { color:var(--muted); font-size:.85rem; }
.food-section { width:var(--width); margin:0 auto; padding:128px 0; }.section-title { display:flex; justify-content:space-between; align-items:end; margin-bottom:3.5rem; }.section-title h2 { margin:0; }.food-grid { display:grid; grid-template-columns:1.1fr .9fr .9fr; grid-template-rows:280px 210px; gap:16px; }.food-item { position:relative; overflow:hidden; min-width:0; }.food-item img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }.food-item:hover img { transform:scale(1.035); }.food-item::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(10,20,16,.68),transparent 65%); }.food-item div { position:absolute; z-index:1; left:1.4rem; right:1.4rem; bottom:1.15rem; color:white; }.food-item h3,.food-text h3 { margin:0; font-size:1.3rem; letter-spacing:-.06em; line-height:1.3; }.food-item p { margin:.25rem 0 0; font-size:.73rem; }.food-main { grid-row:1/span 2; }.food-main h3 { font-size:1.65rem; }.food-text { display:flex; flex-direction:column; justify-content:space-between; padding:1.45rem; background:var(--tomato); color:white; }.food-text p { margin:0; font-size:.72rem; font-weight:700; }.food-text h3 { font-size:1.55rem; }
.youth-section { display:grid; grid-template-columns:1fr 1fr; background:var(--white); }.youth-image { min-height:590px; }.youth-image img { width:100%; height:100%; object-fit:cover; }.youth-copy { align-self:center; max-width:525px; padding:5rem clamp(2.5rem,8vw,10rem); }.youth-copy>p:not(:first-child) { color:#506059; word-break:keep-all; }.youth-copy>p:first-child { color:var(--tomato); }.text-button { display:inline-flex; align-items:center; gap:.55rem; margin-top:1.4rem; padding-bottom:.25rem; border-bottom:1px solid var(--ink); font-size:.82rem; font-weight:700; }.text-button span { color:var(--tomato); }
.night-section { display:grid; grid-template-columns:.82fr 1.18fr; width:var(--width); margin:0 auto; padding:128px 0; gap:clamp(3rem,8vw,9rem); align-items:center; }.night-heading h2 { margin-bottom:2rem; }.night-section figure { margin:0; height:440px; }.night-section img { width:100%; height:100%; object-fit:cover; }
.story-section { background:var(--forest); color:white; padding:120px max(32px,calc((100vw - 1200px)/2)); display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(4rem,12vw,12rem); }.story-heading h2 { margin:0; }.story-list { border-top:1px solid rgba(255,255,255,.48); }.story-list article { display:grid; grid-template-columns:105px 1fr; gap:1rem; padding:1.55rem 0; border-bottom:1px solid rgba(255,255,255,.22); }.story-list time { color:#d2e4dc; font-size:.75rem; font-weight:700; }.story-list h3 { margin-bottom:.35rem; font-size:1.2rem; letter-spacing:-.045em; }.story-list p { max-width:455px; margin:0; color:#d6e4dd; font-size:.82rem; }
.visit-section { width:var(--width); margin:0 auto; padding:128px 0; display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(4rem,10vw,10rem); }.visit-section h2 { margin-bottom:1.1rem; }.visit-section address { color:#4d5a54; font-style:normal; font-size:.91rem; }.phone { margin:1rem 0 0; color:var(--tomato); font-size:1.18rem; font-weight:800; }.visit-info { align-self:end; border-top:1px solid var(--ink); }.visit-info article { display:grid; grid-template-columns:75px 1fr auto; gap:.45rem 1rem; align-items:center; padding:1.2rem 0; border-bottom:1px solid var(--line); }.visit-info span { grid-row:1/span 2; color:var(--tomato); font-size:.72rem; font-weight:700; }.visit-info strong { font-size:.96rem; letter-spacing:-.045em; }.visit-info p { grid-column:2; margin:0; color:var(--muted); font-size:.72rem; }.visit-info a { grid-column:3; grid-row:1/span 2; padding-bottom:2px; border-bottom:1px solid var(--ink); font-size:.72rem; font-weight:700; }
.site-footer { width:var(--width); min-height:150px; margin:0 auto; padding:2.5rem 0; border-top:1px solid var(--line); display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:2rem; }.site-footer div { display:flex; gap:1rem; }.site-footer div a,.site-footer p { margin:0; color:var(--muted); font-size:.7rem; }.site-footer p { text-align:right; }a:focus-visible,button:focus-visible { outline:3px solid var(--tomato); outline-offset:4px; }
@media (max-width:860px) { :root { --width:min(100% - 40px,680px); }.site-header { height:64px; grid-template-columns:1fr auto auto; gap:.7rem; }.site-header { position:relative; z-index:50; }
.menu-toggle { display:block; position:relative; width:44px; height:44px; padding:0; border:1px solid var(--line); border-radius:12px; color:var(--ink); background:var(--white); cursor:pointer; -webkit-tap-highlight-color:transparent; transition:background .25s ease,border-color .25s ease,transform .18s ease; }
.menu-toggle i { position:absolute; left:10px; top:16px; width:22px; height:2px; border-radius:2px; background:currentColor; transform-origin:center; transition:transform .32s cubic-bezier(.22,1,.36,1),width .32s cubic-bezier(.22,1,.36,1); }
.menu-toggle i:last-child { top:25px; width:16px; }
.menu-toggle:hover { border-color:var(--forest); }
.menu-toggle:active { transform:scale(.92); }
.menu-toggle[aria-expanded="true"] { color:var(--white); background:var(--forest); border-color:var(--forest); }
.menu-toggle[aria-expanded="true"] i:first-of-type { transform:translateY(4.5px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] i:last-child { width:22px; transform:translateY(-4.5px) rotate(-45deg); }
.site-nav { position:absolute; top:calc(100% + 8px); left:0; right:0; display:flex; flex-direction:column; gap:0; padding:8px 16px; max-height:calc(100dvh - 88px); overflow-y:auto; background:var(--paper); border:1px solid var(--line); border-radius:14px; box-shadow:0 16px 36px rgba(23,36,31,.16); z-index:51; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-12px) scale(.98); transform-origin:top right; transition:opacity .22s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility 0s .32s; }
.site-nav.open { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0) scale(1); transition-delay:0s; }
.site-nav a { display:flex; align-items:center; justify-content:space-between; min-height:56px; padding:12px 4px; border-bottom:1px solid var(--line); font-size:1.05rem; font-weight:700; opacity:0; transform:translateY(-6px); transition:opacity .18s ease,transform .25s ease,color .18s ease; }
.site-nav.open a { opacity:1; transform:translateY(0); transition-delay:calc(var(--menu-index,0) * 35ms + 55ms); }
.site-nav a::after { content:""; width:7px; height:7px; margin-right:5px; border-top:1.5px solid currentColor; border-right:1.5px solid currentColor; transform:rotate(45deg); opacity:.45; }
.site-nav a:hover,.site-nav a[aria-current="page"] { color:var(--forest); }
.site-nav a:active { color:var(--tomato); }
.site-nav a:last-child { border-bottom:0; }
.menu-backdrop { display:block; position:fixed; inset:0; z-index:40; background:rgba(23,36,31,.32); opacity:0; visibility:hidden; transition:opacity .25s ease,visibility 0s .32s; }
body.menu-open { overflow:hidden; }
body.menu-open .menu-backdrop { opacity:1; visibility:visible; transition-delay:0s; }.header-cta { font-size:.7rem; }.hero { min-height:580px; padding:48px 20px; }.hero h1 { font-size:clamp(2.65rem,11vw,4.2rem); }.hero-caption { display:none; }.market-intro,.youth-section,.night-section,.story-section,.visit-section { grid-template-columns:1fr; }.market-intro { padding:84px 0; gap:3rem; }.image-feature { grid-template-columns:1fr; }.image-feature figure { min-height:310px; height:310px; }.feature-copy { min-height:260px; padding:3rem 20px; }.food-section,.night-section,.visit-section { padding:84px 0; }.food-grid { grid-template-columns:1fr 1fr; grid-template-rows:260px 180px 150px; }.food-main { grid-column:1/-1; grid-row:auto; }.food-text { grid-column:1/-1; }.youth-image { min-height:340px; }.youth-copy { padding:4rem 20px; }.night-section { gap:2.5rem; }.night-section figure { height:300px; }.story-section { padding:84px 20px; gap:3rem; }.visit-section { gap:3rem; }.site-footer { grid-template-columns:1fr; gap:1rem; }.site-footer p { text-align:left; } }
@media (max-width:480px) { .header-cta { padding:.45rem .55rem; }.wide-copy h2,.section-title h2,.feature-copy h2,.youth-copy h2,.night-heading h2,.story-heading h2,.visit-section h2 { font-size:2.3rem; }.place-row { grid-template-columns:1fr 22px; gap:.2rem 1rem; padding:1.05rem 0; }.place-row span { grid-column:1; }.place-row strong { grid-column:1; grid-row:2; }.place-row b { grid-column:2; grid-row:1/span 2; align-self:center; }.section-title { display:block; margin-bottom:2.3rem; }.section-title>p { margin-bottom:.8rem; }.food-grid { grid-template-columns:1fr; grid-template-rows:240px 160px 160px 130px; }.food-item:nth-child(2),.food-item:nth-child(3),.food-text { grid-column:1/-1; }.story-list article { grid-template-columns:1fr; gap:.3rem; }.visit-info article { grid-template-columns:58px 1fr; }.visit-info a { grid-column:2; grid-row:3; justify-self:start; margin-top:.3rem; }.visit-info span { grid-row:1/span 3; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.food-item img { transition:none; } }

/* Detail pages */
.page-hero,.story-page-hero,.visit-page-intro { min-height:420px; padding:86px max(32px,calc((100vw - 1200px)/2)); display:flex; flex-direction:column; justify-content:end; color:white; }.page-hero p,.story-page-hero>p,.visit-page-intro>p,.detail-heading>p,.project-intro>p,.channel-section>p { margin-bottom:.8rem; color:var(--tomato); font-size:.74rem; font-weight:700; }.page-hero h1,.story-page-hero h1,.visit-page-intro h1 { max-width:760px; margin-bottom:1rem; font-size:clamp(2.8rem,5.2vw,5rem); letter-spacing:-.09em; line-height:1.1; }.page-hero span,.story-page-hero>span { max-width:500px; color:rgba(255,255,255,.84); font-size:.9rem; }.market-page-hero { background:linear-gradient(90deg,rgba(9,27,21,.76),rgba(9,27,21,.15)),url("images/pungnammun.jpg") center/cover no-repeat; }.food-page-hero { background:linear-gradient(90deg,rgba(9,27,21,.76),rgba(9,27,21,.12)),url("images/kongnamul.jpg") center/cover no-repeat; }.story-page-hero { background:var(--forest); min-height:440px; }.story-page-hero>p { color:#d7e8df; }.story-page-hero>span { color:#d7e8df; }.visit-page-intro { min-height:345px; background:var(--sand); color:var(--ink); justify-content:center; }.visit-page-intro>p { color:var(--tomato); }.visit-page-intro address { margin-bottom:.6rem; color:#4f5d56; font-style:normal; }.visit-page-intro strong { color:var(--tomato); font-size:1.2rem; }
.page-intro { width:min(750px,calc(100% - 64px)); margin:0 auto; padding:105px 0; color:#33433c; font-size:clamp(1.25rem,2vw,1.65rem); letter-spacing:-.045em; line-height:1.8; word-break:keep-all; }.detail-section,.food-list-section,.schedule-section,.parking-section,.direction-section,.archive-page-section { width:var(--width); margin:0 auto; padding:0 0 120px; }.detail-heading { margin-bottom:3.5rem; }.detail-heading h2,.project-intro h2 { margin:0; font-size:clamp(2.2rem,4vw,3.8rem); letter-spacing:-.085em; line-height:1.16; }.place-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.place-detail { min-height:420px; position:relative; overflow:hidden; background:var(--ink); color:white; }.place-detail.wide { grid-column:1/-1; min-height:480px; }.place-detail img { width:100%; height:100%; object-fit:cover; opacity:.78; }.place-detail:not(.text-only)::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(6,21,15,.85),transparent 65%); }.place-detail>div { position:absolute; z-index:1; left:2rem; right:2rem; bottom:1.7rem; }.place-detail p { margin-bottom:.25rem; color:#d1e5d8; font-size:.73rem; font-weight:700; }.place-detail h3 { margin-bottom:.35rem; font-size:1.75rem; letter-spacing:-.07em; }.place-detail span,.place-detail small { display:block; max-width:510px; color:#f0f6f1; font-size:.82rem; }.place-detail small { margin-top:.6rem; color:#d1e5d8; }.place-detail.text-only { min-height:240px; background:var(--tomato); }.place-detail.text-only>div { position:absolute; }.place-detail.text-only p,.place-detail.text-only small { color:#ffe1d8; }.page-callout { display:flex; align-items:end; justify-content:space-between; gap:2rem; padding:84px max(32px,calc((100vw - 1200px)/2)); background:var(--sand); }.page-callout p { margin-bottom:.7rem; color:var(--tomato); font-size:.72rem; font-weight:700; }.page-callout h2 { margin:0; font-size:clamp(2.1rem,4vw,3.5rem); line-height:1.17; letter-spacing:-.08em; }
.food-list-section { padding-top:0; }.food-spread { display:grid; grid-template-columns:1.3fr .7fr; min-height:480px; margin-bottom:16px; background:var(--forest); color:white; }.food-spread img { width:100%; height:100%; object-fit:cover; }.food-spread>div { align-self:end; padding:3.3rem; }.food-spread p { margin-bottom:.6rem; color:#d1e5d8; font-size:.74rem; font-weight:700; }.food-spread h2 { margin-bottom:1rem; font-size:clamp(2rem,3.4vw,3.2rem); letter-spacing:-.08em; line-height:1.15; }.food-spread span { color:#dbe9e2; font-size:.85rem; }.food-list-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }.food-list-grid article { min-width:0; }.food-list-grid img { width:100%; height:230px; object-fit:cover; }.food-list-grid h3 { margin:.9rem 0 .3rem; font-size:1.12rem; letter-spacing:-.05em; }.food-list-grid p { margin:0; color:var(--muted); font-size:.76rem; }.food-list-grid .food-list-text { min-height:230px; padding:1.4rem; display:flex; flex-direction:column; justify-content:space-between; background:var(--tomato); color:white; }.food-list-text p,.food-list-text span { color:white; font-size:.74rem; }.food-list-text h3 { margin:0; font-size:1.55rem; }.food-list-text a { width:max-content; padding-bottom:2px; border-bottom:1px solid white; font-size:.72rem; font-weight:700; }
.schedule-section { padding-top:108px; }.schedule-list { border-top:2px solid var(--ink); }.schedule-list article { display:grid; grid-template-columns:110px 1.1fr .8fr 1.3fr; gap:1rem; align-items:center; padding:1.5rem 0; border-bottom:1px solid var(--line); }.schedule-list span { color:var(--tomato); font-size:.75rem; font-weight:700; }.schedule-list h3 { margin:0; font-size:1.1rem; letter-spacing:-.05em; }.schedule-list strong { font-size:.9rem; }.schedule-list p { margin:0; color:var(--muted); font-size:.76rem; }.parking-section { padding-top:20px; }.parking-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.parking-grid article { padding:2rem; background:var(--white); }.parking-grid h3 { margin-bottom:.35rem; font-size:1.35rem; letter-spacing:-.06em; }.parking-grid>article>p { margin-bottom:1.6rem; color:var(--muted); font-size:.8rem; }.parking-grid dl { margin:0; border-top:1px solid var(--line); }.parking-grid dl>div { display:flex; justify-content:space-between; padding:.65rem 0; border-bottom:1px solid var(--line); font-size:.8rem; }.parking-grid dt { color:var(--muted); }.parking-grid dd { margin:0; font-weight:700; }.parking-grid .text-button { margin-bottom:0; }.channel-section { width:var(--width); margin:0 auto 120px; padding:2rem; display:flex; align-items:center; flex-wrap:wrap; gap:1rem 1.6rem; background:var(--sand); }.channel-section>p { width:100%; }.channel-section a { padding-bottom:2px; border-bottom:1px solid var(--ink); font-size:.8rem; font-weight:700; }
.project-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(3rem,10vw,10rem); padding:120px max(32px,calc((100vw - 1200px)/2)); background:var(--paper); }.project-intro>span { display:block; margin-top:1.2rem; color:var(--tomato); font-size:.82rem; font-weight:700; }.goal-list { border-top:1px solid var(--ink); }.goal-list article { padding:1.4rem 0; border-bottom:1px solid var(--line); }.goal-list h3 { margin-bottom:.4rem; font-size:1.28rem; letter-spacing:-.055em; }.goal-list p { margin:0; color:var(--muted); font-size:.84rem; }.direction-section { padding-top:120px; }.direction-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.direction-grid article { min-height:230px; padding:1.7rem; display:flex; flex-direction:column; justify-content:end; background:var(--sand); }.direction-grid h3 { margin-bottom:.7rem; font-size:1.4rem; letter-spacing:-.06em; }.direction-grid p { margin:0; font-size:.82rem; }.archive-page-section { padding-top:40px; }.archive-page-list { border-top:2px solid var(--ink); }.archive-page-list article { display:grid; grid-template-columns:120px 1fr; gap:1rem; padding:1.55rem 0; border-bottom:1px solid var(--line); }.archive-page-list time { color:var(--tomato); font-size:.76rem; font-weight:700; }.archive-page-list h3 { margin-bottom:.35rem; font-size:1.18rem; letter-spacing:-.05em; }.archive-page-list p { max-width:580px; margin:0; color:var(--muted); font-size:.82rem; }
@media (max-width:860px) { .page-hero,.story-page-hero,.visit-page-intro { min-height:330px; padding:64px 20px; }.page-intro { width:min(100% - 40px,680px); padding:72px 0; font-size:1.16rem; }.detail-section,.food-list-section,.schedule-section,.parking-section,.direction-section,.archive-page-section { padding-bottom:80px; }.detail-heading { margin-bottom:2.3rem; }.place-directory,.parking-grid,.project-section { grid-template-columns:1fr; }.place-detail.wide { grid-column:auto; }.place-detail { min-height:330px; }.page-callout { padding:60px 20px; align-items:flex-start; flex-direction:column; }.food-spread { grid-template-columns:1fr; }.food-spread img { height:300px; }.food-spread>div { padding:2rem; }.food-list-grid { grid-template-columns:1fr 1fr; row-gap:2rem; }.food-list-grid img { height:190px; }.schedule-section { padding-top:72px; }.schedule-list article { grid-template-columns:70px 1fr; gap:.3rem 1rem; }.schedule-list strong,.schedule-list p { grid-column:2; }.parking-section { padding-top:0; }.channel-section { width:var(--width); margin-bottom:80px; }.project-section { padding:80px 20px; gap:3rem; }.direction-section { padding-top:80px; }.direction-grid { grid-template-columns:1fr; }.direction-grid article { min-height:155px; }.archive-page-section { padding-top:0; }.archive-page-list article { grid-template-columns:1fr; gap:.35rem; } }
@media (max-width:480px) { .page-hero h1,.story-page-hero h1,.visit-page-intro h1 { font-size:2.5rem; }.place-detail>div { left:1.3rem; right:1.3rem; bottom:1.25rem; }.place-detail h3 { font-size:1.5rem; }.food-list-grid { grid-template-columns:1fr; }.food-list-grid img { height:220px; }.food-list-grid .food-list-text { min-height:170px; }.schedule-list article { padding:1.25rem 0; }.parking-grid article { padding:1.45rem; } }

@media (prefers-reduced-motion:reduce) { .menu-toggle,.menu-toggle i,.site-nav,.site-nav a,.menu-backdrop { transition:none; }.menu-toggle:active { transform:none; } }
