/* Revision 2: the approved paper composition, with actual cut edges.
   Shapes, masks and fibres are original procedural assets; no reference-site assets. */
:root{--ink:#12354c;--paper:#f8e9cc;--blue:#15549b;--teal:#247f83;--gold:#efa220;--coral:#e9774c}
body{background:#f4e3c4}body:after{opacity:.06}
.site-header{height:82px;background:#fbedd3 url(paper-grain.svg);box-shadow:0 4px 5px #173c3c44;padding:0 4.5%;z-index:5}
.brand{font-family:"Yu Gothic",sans-serif;letter-spacing:.05em;font-size:28px}.brand span{font-size:inherit;letter-spacing:inherit}.brand i,.brand-note{display:none}.brand{gap:0}
.site-header nav{font-size:14px;letter-spacing:.12em;gap:38px}
.paper-stage{padding:0 0 110px;background:#257e81 url(paper-grain.svg);isolation:isolate}
.sheet{rotate:0deg;border-radius:0;box-shadow:none;pointer-events:none}
.sheet-blue{left:0;top:-45px;width:100%;height:88.4vw;max-height:1280px;z-index:3;background:none;filter:drop-shadow(7px 8px 5px #112a3c66)}
.sheet-blue:before{content:"";position:absolute;inset:0;background:#17539a url(paper-grain.svg);mask:url(blue-cut.svg) 0 0/100% 100% no-repeat}
.sheet-gold{left:-16%;top:-80px;width:90%;height:auto;aspect-ratio:1;border-radius:50%;background:#f4a520 url(paper-grain.svg);box-shadow:6px 6px 9px #123b4344;z-index:0}
.sheet-teal{display:none}.sheet-coral{left:-25%;right:auto;bottom:-230px;width:113%;height:720px;rotate:14deg;border-radius:50%;background:#e5764a url(paper-grain.svg);box-shadow:0 -6px 8px #70401c38;z-index:1}
.hero{max-width:none;height:71vw;max-height:1030px;z-index:auto;margin:0;position:relative}
.breadcrumb,.vertical-note{display:none}
.hero-art{top:6vw;right:1.8%;width:77%;padding:12px 12px 0;transform:none;rotate:0deg;background:#f8e7c8 url(paper-grain.svg);z-index:2;box-shadow:4px 8px 9px #163d3d77}
.hero-art img{height:auto;aspect-ratio:1.5;object-fit:cover;width:100%}
.hero-art figcaption{padding:13px 8px 15px;font-size:12px;letter-spacing:.09em;color:var(--ink)}
.title-paper{left:1.6%;top:32.3vw;width:35.2%;min-height:0;padding:30px 35px 29px;rotate:0deg;clip-path:none;background:#fff0d4 url(paper-grain.svg);box-shadow:4px 7px 8px #35321c66;z-index:4}
.title-paper .eyebrow{font-family:inherit;font-size:17px;letter-spacing:.1em;border-left:1px solid var(--ink);padding-left:16px}
.kicker{font-size:20px;margin:25px 0 3px;font-weight:600;letter-spacing:.05em}
.title-paper h1{font-size:clamp(58px,8.1vw,116px);font-weight:600;letter-spacing:.045em;line-height:1.28;white-space:nowrap}
.hero-deck{font-size:clamp(16px,1.8vw,26px);letter-spacing:.045em;line-height:1.65;margin-top:12px}
.read-link{margin-top:23px;letter-spacing:.13em;line-height:1.7}.read-link span{display:none}
.reading-layout{max-width:none;margin:0;display:block;z-index:2;position:relative;min-height:460px}
.intro-cutout{position:relative;filter:drop-shadow(4px 7px 5px #263d3a55);min-height:480px}
.intro-surface{position:absolute;inset:0;background:#faeacf url(paper-grain.svg);mask:radial-gradient(ellipse 22% 65% at 86% 76%,transparent 99.4%,black 100%)}
.intro-copy{position:relative;padding:60px 5% 70px;width:70%;z-index:1}
.intro-copy h2{font-size:clamp(25px,3vw,44px);line-height:1.6;font-weight:600;letter-spacing:.05em;margin:0 0 28px}
.intro{font-size:19px;line-height:2.05;margin:0}.intro p{margin:0}.intro a{font-size:14px}.intro strong{font-weight:600}
.side-paper{position:absolute;top:-25px;right:0;width:29%;margin:0;rotate:0deg;min-height:350px;padding:30px 28px 42px;background:#ffe2a3 url(paper-grain.svg);box-shadow:4px 8px 8px #173e3d77;z-index:4}
.side-paper h2{font-size:29px;font-weight:600;margin:15px 0 22px}.side-paper .eyebrow{font-size:10px}.side-place{display:none}.side-paper nav{font-size:14px;gap:14px}.side-note{font-size:11px;line-height:1.9}.paper-stamp{display:none}
.long-reading{position:relative;z-index:2;margin:0;padding-top:60px;background:transparent}
.long-reading:before{content:"";position:absolute;top:-15px;left:-15%;width:95%;height:440px;border-radius:50% 55% 0 0;background:#e97950 url(paper-grain.svg);rotate:9deg;box-shadow:0 -5px 8px #70401c33;z-index:-1}
.long-reading .story-paper{width:78%;margin:0 0 0 4%;padding:55px 6%;background:#faeacf url(paper-grain.svg);box-shadow:4px 8px 9px #163d3d66}
.story-paper section{font-size:16px}.story-paper h2{font-weight:600;font-size:29px}.related{background:#f7e9d1 url(paper-grain.svg);max-width:none}.card-image,.place-card:nth-child(even) .card-image{rotate:0deg}.card-image{box-shadow:3px 5px 8px #253a3733}footer{background:#e8d9bc url(paper-grain.svg)}
html[lang=en] .title-paper{padding:28px}html[lang=en] .title-paper h1{font-size:clamp(34px,5vw,72px);white-space:normal;line-height:1.1}html[lang=en] .title-paper .eyebrow{font-size:13px}html[lang=en] .kicker{font-size:14px}html[lang=en] .hero-deck{font-size:18px}
@media(min-width:1450px){.hero-art{top:86px;width:74%;right:3%}.title-paper{top:450px;max-width:510px}.hero{height:1010px}.sheet-blue{height:1280px}.hero-art img{max-height:760px}.reading-layout{min-height:520px}.intro-copy{max-width:1050px}}
@media(max-width:1050px) and (min-width:701px){.title-paper{padding:25px}.title-paper .eyebrow{font-size:14px}.kicker{font-size:16px}.hero{height:76vw}.intro-copy{padding-left:4%;padding-right:6%}.intro{font-size:16px}.side-paper{padding:25px 20px 35px}.side-paper h2{font-size:24px}.side-paper nav{font-size:12px}.hero-art figcaption{font-size:10px}}
@media(max-width:700px){.site-header{height:70px;padding:0 5%}.brand{font-size:22px}.site-header nav{font-size:10px;gap:18px}.paper-stage{padding:0 0 60px}.hero{display:block;padding:0;height:680px;max-height:none}.sheet-blue{top:-15px;height:680px;width:135%;left:-16%;filter:drop-shadow(4px 5px 3px #15354b66)}.sheet-gold{top:0;left:-25%;width:120%}.hero-art{position:absolute;top:45px;right:2%;width:86%;margin:0;padding:7px 7px 0;transform:none}.hero-art img{aspect-ratio:1.13;object-position:center}.hero-art figcaption{font-size:8px;line-height:1.5;padding:9px 4px;min-height:30px}.title-paper{position:absolute;top:330px;left:3%;width:76%;margin:0;padding:25px 25px 26px;min-height:0}.title-paper .eyebrow{font-size:13px;padding-left:12px}.kicker{font-size:15px;margin:20px 0 6px}.title-paper h1{font-size:65px;line-height:1.3}.hero-deck{font-size:16px}.read-link{font-size:10px;margin-top:20px}.reading-layout{display:flex;flex-direction:column;min-height:0;gap:0}.intro-cutout{min-height:0;width:100%;padding-bottom:32px}.intro-surface{mask:radial-gradient(ellipse 30% 22% at 100% 100%,transparent 99%,black 100%)}.intro-copy{width:100%;padding:38px 8% 55px}.intro-copy h2{font-size:26px;line-height:1.7;margin-bottom:25px}.intro{font-size:15px;line-height:2.1}.intro a{font-size:13px}.side-paper{position:relative;right:auto;top:auto;width:81%;margin:-10px 0 0 15%;min-height:0;padding:28px 26px 30px}.side-paper h2{font-size:26px}.side-paper nav{font-size:13px}.side-note{font-size:11px}.long-reading{padding-top:65px}.long-reading:before{width:130%;left:-45%;top:20px;height:400px}.long-reading .story-paper{width:92%;margin:0 4%;padding:35px 26px}.story-paper section{font-size:14px}.story-paper h2{font-size:23px}.sheet-coral{height:500px;bottom:-160px;width:150%;left:-40%}.related{padding:50px 6%}html[lang=en] .hero{height:720px}html[lang=en] .title-paper{padding:25px}html[lang=en] .title-paper h1{font-size:43px}html[lang=en] .hero-deck{font-size:16px}.policy{background-image:url(paper-grain.svg)}}
@media(max-width:370px){.hero{height:650px}.title-paper{top:295px}.title-paper h1{font-size:58px}.hero-art{top:35px}.title-paper .eyebrow{font-size:12px}html[lang=en] .hero{height:720px}}

.title-paper h1.long-name{font-size:clamp(42px,6.2vw,90px)}
@media(max-width:700px){.title-paper h1.long-name{font-size:51px}}

/* Handmade fibre texture: separate grain scale and offset for each sheet. */
.site-header,.paper-stage,.sheet-blue:before,.sheet-gold,.sheet-coral,
.hero-art,.title-paper,.intro-surface,.side-paper,.long-reading:before,
.long-reading .story-paper,.related,footer,.policy{
 background-image:url(paper-washi-v1.webp);
 background-size:640px 640px;
 background-blend-mode:multiply;
}
.sheet-blue:before{background-position:90px 160px;background-size:550px 550px}
.sheet-gold{background-position:-150px 70px;background-size:590px 590px}
.sheet-coral,.long-reading:before{background-position:240px -120px}
.paper-stage{background-size:570px 570px;background-position:-210px 130px}
.title-paper{background-color:#fff5e3;background-position:40px 100px;background-size:720px 720px}
.hero-art{background-color:#fff3df;background-position:-100px -70px}
.side-paper{background-color:#ffe5ac;background-position:210px 10px;background-size:690px 690px}
.intro-surface,.long-reading .story-paper,.policy{
 background-color:#fff5e5;
 background-image:linear-gradient(#ffffff26,#ffffff26),url(paper-washi-v1.webp);
 background-size:auto,760px 760px;
 background-blend-mode:normal,multiply;
}
.intro-surface{background-position:0 0,110px 70px}
.long-reading .story-paper{background-position:0 0,-90px 240px}
.site-header{background-color:#fff3df;background-size:760px 760px;background-position:210px -170px}
body:after{display:none}

/* Illustration disclosure lives in the legal notice, not below every image. */
.hero-art{padding-bottom:22px}
@media(max-width:700px){.hero-art{padding-bottom:14px}}


/* Approved: lift all related-place papers toward the upper left, without scaling.
   Remove this block to restore the previous hover effect. */
.related .place-card{--lift-x:-3px;--lift-y:-5px;--lift-angle:-.6deg;--shadow-x:7px;--shadow-y:13px}
.related .card-image{transform-origin:center;transition:transform 280ms cubic-bezier(.2,.7,.25,1),box-shadow 280ms ease-out}
.related .place-card:hover img,.related .place-card:focus-visible img{transform:none}
@media(hover:hover) and (pointer:fine){
 .related .place-card:hover .card-image{
  transform:translate(var(--lift-x),var(--lift-y)) rotate(var(--lift-angle));
  box-shadow:var(--shadow-x) var(--shadow-y) 19px -4px #253a3740,1px 3px 5px #253a371a;
 }
}
.related .place-card:focus-visible .card-image{
 transform:translate(-3px,-5px) rotate(-.6deg);
 box-shadow:7px 13px 19px -4px #253a3740,1px 3px 5px #253a371a;
}
@media(prefers-reduced-motion:reduce){
 .related .card-image{transition:none}
 .related .place-card:hover .card-image,.related .place-card:focus-visible .card-image{transform:none}
}

/* Lavo 3 masthead: typographic mark with an original dance-and-dining print. */
.site-header{height:104px;padding:0 5%;gap:0;overflow:hidden}
.site-header .brand{font-family:Georgia,"Yu Mincho",serif;font-size:38px;font-weight:500;letter-spacing:.035em;color:#153c59;line-height:1;text-decoration:none;position:relative;z-index:1}
.site-header .brand:after{content:"";position:absolute;left:1px;right:2px;bottom:-10px;height:1px;background:#c56b4c}
.site-header .brand-note{display:block;margin-left:19px;padding-left:18px;border-left:1px solid #bd9872;color:#38535a;font-family:"Yu Gothic",sans-serif;font-size:12px;letter-spacing:.13em;white-space:nowrap}
.site-header .header-art{width:clamp(180px,25vw,340px);height:auto;max-height:92px;object-fit:contain;object-position:center;margin-left:12px;mix-blend-mode:multiply;flex:0 1 auto}
.site-header nav{gap:30px;font-size:13px;white-space:nowrap}
.site-header .language{padding-left:21px}
@media(max-width:1050px) and (min-width:701px){.site-header{padding:0 3%;}.site-header .brand-note{display:none}.site-header .header-art{width:27vw;margin-left:10px}.site-header nav{gap:20px}}
@media(max-width:700px){.site-header{height:76px;padding:0 5%;gap:0;flex-wrap:nowrap;align-content:normal;overflow:hidden}.site-header .brand{font-size:27px;flex:none}.site-header .brand:after{bottom:-7px}.site-header .brand-note{display:none}.site-header .header-art{width:clamp(78px,25vw,120px);max-height:56px;margin-left:4px;object-position:center}.site-header nav{margin-left:auto;gap:15px;font-size:10px;flex:none}.site-header nav a:nth-child(2){display:none}.site-header .language{padding-left:14px}}
@media(max-width:370px){.site-header{padding:0 4%}.site-header .brand{font-size:24px}.site-header .header-art{width:72px;margin-left:2px}.site-header nav{gap:11px;font-size:9px}.site-header .language{padding-left:10px}}

/* A fold changes the lighting of the entire flap, edge to edge. */
.side-paper{--fold-inset:28px;padding-bottom:0}
.fold-flap{position:relative;margin:30px calc(-1 * var(--fold-inset)) 0;padding:27px var(--fold-inset) 34px;background:linear-gradient(to bottom,rgba(255,252,220,.16),rgba(255,252,220,.08) 70px,rgba(97,60,20,.025));isolation:isolate}
.fold-flap:before{content:"";position:absolute;pointer-events:none;left:0;right:0;top:-23px;height:46px;background:linear-gradient(to bottom,transparent 0%,rgba(101,65,24,.025) 12%,rgba(101,65,24,.04) 30%,rgba(86,53,18,.085) 45%,rgba(75,47,17,.145) 49%,rgba(255,255,236,.33) 51%,rgba(255,255,236,.14) 58%,rgba(255,255,236,.08) 76%,transparent 100%);z-index:-1}
.fold-flap .map-link{border:0;padding:0;margin:0 0 23px}
.fold-flap .side-note{position:relative}
.title-paper .eyebrow,.site-header .brand-note,.site-header .language{border-left:0}
.site-header .brand:after{display:none}
.title-paper:before{content:"";position:absolute;pointer-events:none;top:0;bottom:0;left:12px;width:22px;background:linear-gradient(to right,transparent,rgba(90,65,30,.035) 25%,rgba(90,65,30,.075) 48%,rgba(255,255,245,.30) 52%,rgba(255,255,245,.12) 70%,transparent)}
@media(max-width:1050px) and (min-width:701px){.side-paper{--fold-inset:20px}}
@media(max-width:700px){.side-paper{--fold-inset:26px;padding-bottom:0}.fold-flap{padding-bottom:30px}.title-paper:before{left:7px;width:18px}}

/* Quiet edge-to-edge folds above the main article's section headings. */
.long-reading .story-paper{--article-gutter:6vw;padding-left:var(--article-gutter);padding-right:var(--article-gutter)}
.long-reading .story-paper section{position:relative;padding-top:28px}
.long-reading .story-paper section:before{content:"";position:absolute;pointer-events:none;left:calc(-1 * var(--article-gutter));right:calc(-1 * var(--article-gutter));top:0;height:30px;transform:translateY(-50%);background:linear-gradient(to bottom,transparent,rgba(95,69,35,.025) 25%,rgba(95,69,35,.05) 43%,rgba(95,69,35,.10) 49%,rgba(255,255,245,.36) 52%,rgba(255,255,245,.11) 66%,transparent)}
@media(max-width:700px){.long-reading .story-paper{--article-gutter:26px}.long-reading .story-paper section{padding-top:24px}}

/* Editorial counterpart of the restaurant card: same paper, calmer reading rhythm. */
.editorial-page .title-paper h1{font-family:Georgia,serif;font-size:clamp(40px,5.7vw,80px);line-height:1.03;letter-spacing:.015em;white-space:normal;margin-top:13px}
.editorial-page .title-paper{padding-bottom:30px}
.editorial-page .hero-deck{font-size:clamp(17px,2vw,25px)}
.editorial-page .intro-copy h2{margin-top:15px}
.article-facts{font-size:13px;line-height:1.9;margin:0 0 28px}
.article-facts dt{font-size:10px;letter-spacing:.1em;margin-top:12px;opacity:.75}
.article-facts dd{margin:0}
.article-source-note{margin-top:48px!important;font-size:12px;line-height:1.9!important;color:#53605b}
.editorial-page .side-paper{min-height:0}
.editorial-page .intro-cutout{min-height:520px}
@media(max-width:700px){.editorial-page .hero{height:730px}.editorial-page .title-paper h1{font-size:46px}.editorial-page .title-paper{width:79%;top:325px}.editorial-page .intro-cutout{min-height:0}.editorial-page .hero-deck{font-size:18px}.editorial-page .intro-copy h2{font-size:25px}}


/* Wordmark refinement: the Arabic numeral reads as an intentional seal-like accent. */
.site-header .brand{gap:0;letter-spacing:.015em}
.site-header .brand .brand-word{font-size:inherit;letter-spacing:inherit;color:#153c59}
.site-header .brand .brand-number{font-family:Georgia,"Yu Mincho",serif;font-size:.88em;font-style:italic;font-weight:500;letter-spacing:-.045em;color:#bd5e45;margin-left:.10em;transform:translateY(-.025em)}
.site-header .brand:after{right:1.05em}
@media(max-width:700px){.site-header .brand .brand-number{font-size:.88em;margin-left:.08em}.site-header .brand:after{right:.95em}}

/* Complete catalogue and archive: preserve paper geometry for long titles. */
.catalog-group{margin-top:50px}.catalog-group>h2,.catalog-group>p{max-width:1100px;margin:0 auto 18px;line-height:1.8}.catalog-group>h2{font-weight:500;font-size:30px}.catalog-group .catalog-cards{padding-top:16px}
.place-status{display:block;color:#8b3e2b;font:12px/1.7 "Yu Gothic",sans-serif;margin-top:15px}.place-status:empty{display:none}
.title-paper h1.extended-name{font-size:clamp(28px,3.3vw,50px);letter-spacing:.03em;overflow-wrap:anywhere;line-height:1.45}
.editorial-page .title-paper h1.archive-title{font-size:clamp(27px,3.5vw,54px);letter-spacing:.035em;line-height:1.5;overflow-wrap:anywhere}
.archive-index .place-card h2{font-size:24px;line-height:1.7;font-weight:500;margin:14px 0}.archive-index .catalog-intro h1{font-size:clamp(35px,5vw,64px)}
.site-header nav{gap:22px;letter-spacing:.04em;font-size:12px}.site-header .header-art{flex-shrink:1;min-width:0}
@media(max-width:700px){.title-paper h1.extended-name{font-size:28px}.editorial-page .title-paper h1.archive-title{font-size:28px}.catalog-group>h2{font-size:25px}.catalog-group{margin-top:32px}.site-header nav{gap:10px;font-size:10px}.site-header nav a:nth-child(2){display:inline}.site-header nav a:nth-child(3){display:none}}

.catalog{background:#fff4e1 url(paper-washi-v1.webp);background-size:760px;background-blend-mode:multiply}.catalog .place-card{background:#fff3df url(paper-washi-v1.webp);background-size:680px;background-blend-mode:multiply}

@media(max-width:700px){.site-header:not(.home-header){height:auto;min-height:110px;flex-wrap:wrap;gap:12px;padding:14px 5%}.site-header:not(.home-header) .header-art{width:105px;max-height:44px;flex:none;margin-left:8px}.site-header:not(.home-header) nav{width:100%;margin-left:0;justify-content:space-between;gap:8px}.site-header:not(.home-header) .language{padding-left:12px}}
