﻿/* Shared palette and typography */
:root{--paper:#f7f3eb;--ink:#302921;--muted:#74695f;--line:#dcd3c6;--accent:#9d624b;--tint:#eee7dc}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:2}a{color:inherit;text-decoration:none;transition:color .2s,background .2s}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{font:inherit}header{max-width:1440px;margin:auto;padding:34px 6%;display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:132px}.brand{display:inline-block}.wordmark{display:block;font:42px/1.1 Georgia,"Times New Roman",serif;letter-spacing:-2px}.brand small{display:block;font-size:12px;letter-spacing:.28em;margin-top:10px}nav{display:flex;gap:38px}nav a{font:11px/2 Arial,sans-serif;letter-spacing:1.8px;padding:13px 0;border-bottom:1px solid transparent}nav a[aria-current]{border-color:var(--accent);color:var(--accent)}.toggle{display:none}.skip{position:absolute;top:-100px;background:var(--paper);padding:12px;z-index:20}.skip:focus{top:0}.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}
h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;line-height:1.08;margin:28px 0 35px}h1{font-size:clamp(54px,5.4vw,82px)}h2{font-size:clamp(44px,4.7vw,68px)}h1 em,h2 em{font-weight:400;color:var(--accent)}h3{font-family:"Yu Mincho",serif;font-size:22px;font-weight:400;line-height:1.8}.eyebrow{font:11px/1.8 Arial,sans-serif;letter-spacing:2.8px;color:var(--accent)}p{margin:0 0 20px}.section{max-width:1440px;margin:auto;padding:120px 8%}.text-link{display:inline-block;border-bottom:1px solid var(--accent);padding:10px 0;font-size:13px;min-height:44px;margin-top:18px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:45px;background:var(--ink);color:var(--paper);min-height:54px;padding:14px 30px;font-size:13px;margin-top:28px}.button:hover{background:var(--accent);color:var(--paper)}
/* Home */
.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:5%;max-width:1440px;margin:auto;padding:35px 6% 50px;align-items:center}.hero-copy{padding:25px 0 40px}.hero-copy>p:not(.eyebrow){font-size:14px;line-height:2.3;color:var(--muted)}.hero-copy .japanese-title{color:var(--ink)!important;font-size:18px!important;margin:0 0 24px}.coffee-art{min-height:560px;position:relative;overflow:hidden;background:linear-gradient(135deg,#bba48c,#8d735d 65%,#705541);border-radius:48% 48% 0 0;box-shadow:inset 0 0 70px #54403422;color:var(--paper)}.coffee-art:before{content:"";position:absolute;width:100%;height:130%;background:linear-gradient(110deg,transparent 30%,#f5e8c83b 31%,#f5e8c83b 46%,transparent 47%);transform:rotate(18deg);top:-20%}.coffee-art:after{content:"";position:absolute;background:#6d514038;width:120%;height:30%;bottom:-10%;transform:rotate(-12deg)}.art-title{position:absolute;left:35px;top:55px;font:italic 33px/1.2 Georgia,serif}.saucer{position:absolute;left:47%;top:48%;width:255px;height:255px;transform:translate(-50%,-20%);border-radius:50%;background:#e5d8bf;box-shadow:16px 26px 30px #3e2c3855,inset 0 0 0 14px #f0e6d2;z-index:1}.cup{position:absolute;inset:40px;border-radius:50%;border:12px solid #f7eddb;background:radial-gradient(ellipse at 40% 40%,#c19266,#835332);color:#edcf9f;font:110px/1 Georgia,serif;display:grid;place-items:center;transform:rotate(-20deg);box-shadow:2px 5px 8px #493d3a55}.cup:after{content:"";position:absolute;border:11px solid #f7eddb;width:27px;height:46px;right:-36px;top:40px;border-radius:12px;z-index:-1}.cookie{position:absolute;width:100px;height:84px;border-radius:45%;background:radial-gradient(circle at 30% 35%,#76513c 0 5px,transparent 6px),radial-gradient(circle at 65% 62%,#76513c 0 4px,transparent 5px),#c29662;border:5px solid #b68a59;right:27px;bottom:65px;transform:rotate(20deg);box-shadow:7px 12px 15px #47382b55;z-index:1}.art-caption{position:absolute;bottom:22px;left:26px;font:10px Arial,sans-serif;letter-spacing:2.5px;z-index:2}.hero-bottom{margin:0 auto;max-width:1268px;width:88%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:12px;color:var(--muted)}.intro{text-align:center;padding-top:140px;padding-bottom:140px}.intro h3{font-size:20px;margin:0 0 34px}.intro p:not(.eyebrow){color:var(--muted);line-height:2.5}.favorites{background:var(--tint);display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:50px}.favorites article{padding-left:32px;border-left:1px solid #cfc1b0;align-self:center}.favorites article h3{font-size:21px}.favorites article p{font-size:13px;color:var(--muted)}.favorites article>span:last-child{font:20px Georgia,serif}.visit{text-align:center}.visit p:not(.eyebrow){color:var(--muted)}.visit h3{font-size:18px}
/* Interior pages */
.page-heading{max-width:1268px;width:88%;margin:auto;border-bottom:1px solid var(--line);padding:85px 0 75px}.page-heading h1{font-size:clamp(65px,8vw,112px);margin:25px 0}.page-heading>p:last-child{color:var(--muted);font-size:14px}.menu-section{display:grid;grid-template-columns:1fr 1.5fr;gap:10%;padding-top:85px;padding-bottom:85px}.menu-section+.menu-section{border-top:1px solid var(--line)}.menu-section>div>p:last-child{color:var(--muted);font-size:14px}.menu-list{margin:0}.menu-list>div{display:flex;justify-content:space-between;gap:25px;padding:28px 0;border-bottom:1px solid var(--line)}.menu-list dt{font-size:17px}.menu-list dt span{display:block;font-size:13px;color:var(--muted);margin-top:9px}.menu-list dt small{display:block;font:10px/1.8 Arial,sans-serif;letter-spacing:1px;color:var(--accent)}.menu-list dd{font:22px/1.8 Georgia,serif;margin:0;white-space:nowrap}.note{text-align:center;background:var(--tint);font-size:13px;color:var(--muted);padding-top:50px;padding-bottom:50px}.story{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.story>div:last-child p{color:var(--muted);line-height:2.4;margin-bottom:28px}.values{background:var(--tint)}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin-top:55px}.value-grid article{border-top:1px solid #cfc1b0;padding-top:28px}.value-grid article>span{font:italic 30px Georgia,serif;color:var(--accent)}.value-grid p{font-size:14px;color:var(--muted)}.access-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.shop-info h2{margin-bottom:16px}.shop-info dl>div{display:grid;grid-template-columns:85px 1fr;gap:15px;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px}.shop-info dd{margin:0}.shop-info small{color:var(--muted);font-size:12px}.map{position:relative;background:#e8e0d3;min-height:500px;overflow:hidden;font-size:13px}.park{position:absolute;top:45px;left:20px;width:42%;height:150px;border-radius:45%;background:#d5c6b2;display:grid;place-items:center}.road{position:absolute;top:255px;width:100%;height:40px;background:var(--paper);transform:rotate(-12deg)}.path{position:absolute;left:53%;height:100%;width:36px;background:var(--paper)}.path:after{content:"";position:absolute;left:17px;top:200px;height:170px;border-left:2px dashed var(--accent)}.cafe{position:absolute;left:64%;top:150px;background:var(--accent);padding:12px 17px;color:var(--paper);text-align:center;font-size:16px}.station{position:absolute;bottom:55px;left:27%;padding:8px 22px;background:#cbbba7}.north{position:absolute;right:20px;top:20px}.map-note{position:absolute;bottom:14px;width:100%;text-align:center;font-size:11px}
/* Shared footer */
.site-footer{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px 55px;background:#eae2d6;padding:75px max(6%,calc((100% - 1268px)/2)) 25px;font-size:13px}.site-footer .brand{margin-bottom:24px}.site-footer .wordmark{font-size:45px}.site-footer .eyebrow{margin:4px 0 25px}.social{font:26px Georgia,serif;border-bottom:1px solid var(--accent);display:inline-block;padding:0 0 10px;min-height:44px}.site-footer .fine{font-size:12px;color:var(--muted);margin-top:14px}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:25px;align-items:center;border-top:1px solid #cfc1b0;padding-top:23px;color:var(--muted)}.footer-bottom small{font:10px/1.8 Arial,sans-serif;letter-spacing:1px}.footer-bottom p{font-size:11px;margin:0}
@media(max-width:1000px){header{padding:28px 5%}nav{gap:22px}.hero{gap:4%;padding-left:5%;padding-right:5%}.coffee-art{min-height:490px}.saucer{width:220px;height:220px}.cup{inset:30px;font-size:95px}.cup:after{top:32px}.cookie{width:85px;right:12px}.section{padding:90px 6%}.favorites{gap:25px}.favorites article{padding-left:22px}.site-footer{gap:45px 25px}.access-grid{gap:5%}.map{min-height:460px}}
@media(max-width:760px){header{padding:24px 6%;min-height:110px;flex-wrap:wrap;gap:20px}.wordmark{font-size:33px}.brand small{font-size:11px;margin-top:7px}.toggle:not([hidden]){display:block;background:transparent;border:1px solid var(--line);color:var(--ink);min-height:44px;padding:10px 12px;font-size:12px}nav{width:100%;gap:15px 25px;flex-wrap:wrap;padding:10px 0}nav a{font-size:11px;min-height:44px}body:has(.toggle:not([hidden])) nav{display:none}body:has(.toggle:not([hidden])) nav.is-open{display:flex}.hero{grid-template-columns:1fr;padding:25px 6% 40px;gap:35px}.hero-copy{padding:10px 0}.hero h1{font-size:clamp(45px,9.3vw,68px)}.hero-copy .japanese-title{font-size:16px!important}.hero-copy>p:not(.eyebrow){font-size:14px}.coffee-art{min-height:450px;width:100%;max-width:500px;margin:auto}.saucer{width:245px;height:245px;top:44%}.cup{inset:36px}.cookie{right:23px;bottom:50px}.hero-bottom{flex-direction:column;gap:8px;padding:20px 0;font-size:12px}.section{padding:80px 7%}h2{font-size:46px}.intro h3{font-size:17px}.intro p:not(.eyebrow){font-size:14px}.intro p br{display:none}.favorites,.value-grid,.menu-section,.story,.access-grid{grid-template-columns:1fr;gap:38px}.favorites article{border-left:0;border-top:1px solid #cfc1b0;padding:28px 0 0}.favorites article p br{display:none}.favorites h2 br{display:none}.page-heading{padding:55px 0 45px}.page-heading h1{font-size:65px}.page-heading>p:last-child{font-size:13px}.menu-section{gap:15px}.menu-list dt{font-size:16px}.menu-list dt span{font-size:12px}.menu-list dd{font-size:20px}.menu-list>div{gap:14px}.note{font-size:12px}.value-grid{margin-top:35px;gap:30px}.value-grid h3{margin:15px 0}.story p{font-size:14px}.map{min-height:410px}.shop-info dl>div{grid-template-columns:75px 1fr;gap:10px}.map-note{font-size:10px}.visit h3{font-size:17px}.visit p{font-size:14px}.site-footer{grid-template-columns:1fr 1fr;gap:35px;padding:55px 7% 25px}.site-footer>div:first-child{grid-column:1/-1}.site-footer .eyebrow{font-size:10px;letter-spacing:1.5px}.site-footer .wordmark{font-size:40px}.site-footer p{font-size:12px}.social{font-size:22px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}.footer-bottom p{font-size:10px}}
@media(prefers-reduced-motion:reduce){a{transition:none}}

/* Home: photo-led landing page */
.home-hero{position:relative;isolation:isolate;min-height:650px;height:calc(100svh - 132px);max-height:950px;display:flex;align-items:center;background:#30261e;color:#fff9ee;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,22,17,.65),rgba(29,22,17,.37) 47%,rgba(29,22,17,.05));z-index:-1}.home-hero-content{width:100%;max-width:1440px;margin:auto;padding:60px 8% 100px}.home-hero .eyebrow{color:#f1dfcb;font-size:11px;letter-spacing:3px}.home-hero h1{font-size:clamp(56px,6.8vw,98px);margin:30px 0;line-height:1.06;max-width:850px;text-shadow:0 2px 24px #241a1633}.home-hero h1 em{color:inherit}.hero-tagline{font-size:19px;letter-spacing:.12em;margin-bottom:22px}.hero-description{font-size:14px;line-height:2.2;color:#f5eee4}.hero-link{display:inline-flex;justify-content:space-between;gap:65px;border-bottom:1px solid #f5eee488;padding:12px 0;margin-top:12px;font-size:13px;min-height:48px}.hero-link:hover,.hero-scroll:hover{color:#fff;background:#ffffff0d}.hero-footnote,.hero-scroll{position:absolute;bottom:28px;font:10px/2 Arial,sans-serif;letter-spacing:2px;color:#f5eee4}.hero-footnote{left:8%}.hero-scroll{right:8%;padding:10px 0;min-height:44px}.hero-scroll span{margin-left:20px;font-size:18px}.home-story{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;padding-top:140px;padding-bottom:140px;scroll-margin-top:30px}.home-story-copy h3{font-size:26px;margin:0 0 32px}.home-story-copy>p{color:var(--muted);font-size:14px;line-height:2.4}.home-favorites{background:var(--tint)}.home-section-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:55px}.home-section-heading h2{margin-bottom:20px}.home-section-heading p:not(.eyebrow){font-size:14px;color:var(--muted)}.home-section-heading .text-link{white-space:nowrap}.menu-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.menu-card{padding:30px 28px;background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column}.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:40px}.card-top .eyebrow{font-size:10px;letter-spacing:1.8px}.card-symbol{font:italic 45px/1 Georgia,serif;color:#b89983}.menu-card h3{font-size:21px;margin:0 0 20px}.menu-card>p:not(.card-price){font-size:13px;color:var(--muted);line-height:2.2;margin-bottom:30px}.menu-card .card-price{font:30px/1.4 Georgia,serif;margin:auto 0 0;padding-top:22px;border-top:1px solid var(--line)}.card-price small{font:11px "Yu Gothic",sans-serif;margin-left:8px;color:var(--muted)}.home-access{display:grid;grid-template-columns:1.25fr 1fr;gap:8%;align-items:center}.home-access>div>p:not(.eyebrow){color:var(--muted);font-size:14px}.home-access-details{border-left:1px solid var(--line);padding:24px 0 24px 15%}.home-access-details .access-hours{font:38px/1.4 Georgia,serif;color:var(--ink);margin-bottom:20px}.home-access-details .sample-note{font-size:11px;margin-top:20px}.home-access .button{white-space:nowrap;gap:25px}
@media(min-width:1600px){.home-hero-content{padding-left:115px;padding-right:115px}}
@media(max-width:1000px){.home-hero{height:auto;min-height:680px}.home-hero-content{padding-left:6%;padding-right:6%}.menu-cards{gap:16px}.menu-card{padding:25px 22px}.menu-card h3{font-size:18px}.card-top .eyebrow{font-size:9px;letter-spacing:1px}.home-access-details{padding-left:10%}.home-story{gap:7%;padding-top:100px;padding-bottom:100px}}
@media(max-width:760px){.home-hero{min-height:660px;height:calc(100svh - 110px);max-height:850px}.hero-photo{object-position:45% center}.home-hero:after{background:linear-gradient(90deg,#201a15b8,#201a1555),linear-gradient(0deg,#201a1544,transparent 50%)}.home-hero-content{padding:65px 7% 110px}.home-hero h1{font-size:clamp(43px,9.4vw,68px);margin:30px 0}.home-hero .eyebrow{font-size:10px;letter-spacing:2px}.hero-tagline{font-size:15px;letter-spacing:.06em}.hero-description{font-size:13px}.hero-footnote{display:none}.hero-scroll{left:7%;right:auto;bottom:25px;font-size:9px}.home-story{grid-template-columns:1fr;gap:24px;padding:80px 7%}.home-story h2{margin-bottom:15px}.home-story-copy h3{font-size:22px}.home-story-copy>p{font-size:14px}.home-story-copy>p br{display:none}.home-story-copy h3 br{display:block}.home-section-heading{display:block;margin-bottom:35px}.home-section-heading h2{font-size:43px}.home-section-heading .text-link{margin-top:0}.menu-cards{grid-template-columns:1fr;gap:20px}.menu-card{padding:30px}.card-top{margin-bottom:20px}.card-top .eyebrow{font-size:11px;letter-spacing:2px}.menu-card h3{font-size:22px}.menu-card>p:not(.card-price){font-size:14px;margin-bottom:24px}.home-access{grid-template-columns:1fr;gap:25px}.home-access-details{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.home-access-details .access-hours{font-size:35px}.home-access .button{width:100%;max-width:330px}}

/* Supplied photos: preserve the complete image at every screen size. */
.story-photo{display:block;width:100%;max-width:100%;height:auto;margin-top:38px;border:1px solid var(--line)}
.menu-card-photo{display:block;width:100%;max-width:100%;height:auto;margin-bottom:24px;border:1px solid var(--line)}
.menu-card .card-top{margin-bottom:22px}
.menu-photo-note{font-size:12px;color:var(--muted);margin:25px 0 0}
@media(max-width:760px){.story-photo{margin-top:28px}.menu-card-photo{margin-bottom:24px}.menu-photo-note{font-size:11px}}

/* Interior pages share the home page's restrained editorial rhythm. */
[hidden]{display:none!important}
.menu-controls{max-width:1268px;width:88%;margin:40px auto 0}
.filter-buttons{display:flex;flex-wrap:wrap;gap:12px}
.filter-buttons button{min-height:48px;min-width:110px;padding:12px 23px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:13px;cursor:pointer;border-radius:0;transition:background .2s,color .2s}
.filter-buttons button:hover{border-color:var(--accent);color:var(--accent)}
.filter-buttons button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.filter-status{font-size:12px;color:var(--muted);margin:18px 0 0}
.category-photo{display:block;width:100%;max-width:350px;height:auto;margin-top:30px;border:1px solid var(--line)}
.shop-facts{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}
.facts-list{margin:0}.facts-list>div{display:grid;grid-template-columns:95px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);font-size:14px}.facts-list dd{margin:0;color:var(--muted)}
.fiction-note{font-size:12px;line-height:2;color:var(--muted);margin:22px 0}
.access-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:center;padding-bottom:65px}
.access-aside{background:var(--tint);padding:42px}.access-aside h3{font-size:22px}.access-aside p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:2.3}
.live-map-section{padding-top:45px;padding-bottom:50px}.map-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.demo-map-label{font:10px/2 Arial,sans-serif;letter-spacing:2px;color:var(--accent);border:1px solid var(--line);padding:8px 15px;white-space:nowrap}
.osm-map{display:block;width:100%;height:500px;border:1px solid var(--line);background:var(--tint)}
.map-links{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:14px;font-size:12px}.map-links a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){.filter-buttons{gap:10px;display:grid;grid-template-columns:1fr 1fr}.filter-buttons button{min-width:0;font-size:14px}.menu-controls{margin-top:28px}.category-photo{max-width:none;margin-top:25px}.shop-facts,.access-layout{grid-template-columns:1fr;gap:35px}.facts-list>div{grid-template-columns:75px 1fr;gap:15px;font-size:13px;padding:18px 0}.access-layout{padding-bottom:30px}.access-aside{padding:28px}.map-heading{align-items:flex-start;flex-direction:column;gap:0}.map-heading h2{font-size:43px}.live-map-section{padding-top:35px;padding-bottom:30px}.osm-map{height:400px}.map-links{gap:0;font-size:11px;flex-direction:column;align-items:flex-start}.fiction-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){.filter-buttons button{transition:none}}

/* Subtle interactions; content never depends on animation to be visible. */
.button,.hero-link,.text-link,.filter-buttons button,.toggle,.back-to-top{transition:background-color .22s,color .22s,border-color .22s,box-shadow .22s,transform .22s}
.menu-card{transition:transform .3s,box-shadow .3s,border-color .3s}
@media(hover:hover) and (pointer:fine){
.button:hover,.filter-buttons button:hover{transform:translateY(-2px);box-shadow:0 5px 14px #30292112}
.menu-card:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 16px 30px #30292112}
.hero-link:hover,.text-link:hover{transform:translateX(3px)}
.back-to-top:hover{transform:translateY(-3px);background:var(--accent);color:var(--paper)}
}
.button:active,.toggle:active,.filter-buttons button:active,.back-to-top:active{transform:translateY(1px)}
#page-top:focus{outline:none}
.back-to-top{position:fixed;right:28px;bottom:28px;right:max(28px,env(safe-area-inset-right));bottom:max(28px,env(safe-area-inset-bottom));z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:64px;background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 4px 20px #30292118;line-height:1.1}
.back-to-top>span:first-child{font-size:24px}.back-to-top-label{font:9px/1.7 Arial,sans-serif;letter-spacing:1.5px;margin-top:4px}
.site-footer{padding-bottom:100px}
.hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:23px;height:23px}
.hamburger span{display:block;width:23px;height:1px;background:currentColor;transition:transform .25s,opacity .25s}
.toggle[aria-expanded="true"] .hamburger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.toggle[aria-expanded="true"] .hamburger span:nth-child(2){opacity:0}
.toggle[aria-expanded="true"] .hamburger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:760px){.toggle:not([hidden]){display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:10px;cursor:pointer}.back-to-top{right:16px;bottom:20px;right:max(16px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:48px;height:56px}nav.is-open{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;align-items:stretch;gap:0}nav.is-open a{padding:15px 5px}nav.is-open a[aria-current]{border-bottom-color:var(--accent)}}
@media(prefers-reduced-motion:reduce){.button,.hero-link,.text-link,.filter-buttons button,.toggle,.back-to-top,.menu-card,.hamburger span{transition:none}.button:hover,.filter-buttons button:hover,.menu-card:hover,.hero-link:hover,.text-link:hover,.back-to-top:hover{transform:none}html{scroll-behavior:auto}}
