/* Real, full-frame photographs; dimensions reserve space before deferred loads. */
.photo-discovery{padding-bottom:18px}.prefecture-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.prefecture-tile{min-width:0}.prefecture-tile>a{text-decoration:none;display:block}.prefecture-tile img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#e5e7dc}.prefecture-tile h3{font-size:32px;margin:15px 0 5px}.prefecture-tile>a p{font-size:13px;color:#52624e;display:flex;justify-content:space-between}.tile-credit{font-size:10px;line-height:1.6;color:#66715f;margin-top:8px;overflow-wrap:anywhere}.hub-intro{padding:44px 0 35px;max-width:950px}.hub-intro h1{margin:15px 0 22px;font-size:clamp(52px,7vw,94px)}.hub-intro .dek{font-size:22px}.hub-intro>p:last-child{margin-top:20px}.hub-count,.hub-photo-note{font-size:13px;color:#61705a}.hub-back{padding-top:24px;font-size:12px}.photo-place-list{margin-top:32px}.photo-place{margin:0 0 68px;padding-bottom:42px;border-bottom:1px solid #ccd1c1}.place-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.place-photo-grid.count-1{grid-template-columns:1fr}.place-photo-grid.count-3>figure:first-child{grid-column:1/-1}.explorer-photo{min-width:0}.explorer-photo img{width:100%;height:auto;max-height:620px;object-fit:contain;background:#e5e7dc}.photo-open{display:block}.explorer-photo figcaption{font-size:12px;line-height:1.7;margin:10px 0 0;overflow-wrap:anywhere;color:#586451}.photo-context,.photo-byline{display:block}.photo-byline{font-size:10px;margin-top:3px}.place-copy{max-width:960px;margin-top:25px}.place-copy>h2{font-size:clamp(30px,4vw,48px);line-height:1.2;margin-bottom:14px}.place-copy>p{max-width:65ch;color:#52604d}.place-access{margin:18px 0;padding:15px 0;border-top:1px solid #d5dacb;border-bottom:1px solid #d5dacb;line-height:1.8;font-size:15px}.place-access>span{display:block;font-size:11px;font-weight:650;letter-spacing:.08em;color:#5b7052;margin-bottom:5px}.place-access>p{margin:0}.place-access details{margin-top:9px;border:0}.place-access summary{font:13px/1.6 inherit;padding:8px 0;display:inline-flex;gap:20px}.place-access dl{font-size:13px;display:grid;grid-template-columns:90px 1fr;gap:8px;margin:10px 0}.place-access dt{font-weight:600}.place-access dd{margin:0}.access-source{display:inline-block;font-size:12px;margin-top:7px}.pending-access{font-size:12px;color:#64705d}.place-links{display:flex;gap:18px;flex-wrap:wrap;margin:15px 0;font-size:14px}.place-sources{font-size:12px}.place-sources summary,.extra-photos summary{font-size:16px;padding:13px 0}.place-sources a{overflow-wrap:anywhere}.extra-photos{margin-top:22px}.extra-photos>div{padding-bottom:22px}.place-note{font-size:12px;color:#6b745f}.hub-event-link{padding:10px 0 55px}.hub-event-link h2{font-size:34px;margin-bottom:18px}.photo-pending{padding:40px 0 100px;max-width:680px}.photo-pending h2{font-size:35px;margin-bottom:20px}.photo-pending p{margin-bottom:25px}.all-prefectures{padding:60px 0}.all-prefectures h2{font-size:34px;margin-bottom:25px}.all-prefectures>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.all-prefectures a{padding:13px 16px;border:1px solid #cad0bf;text-decoration:none;display:block;font-size:15px}.all-prefectures small{display:block;font-size:10px;color:#728169;margin-top:3px}.all-prefectures .pending{border-style:dashed;color:#737b6d}.article-photo-story{margin:24px 0 40px}.article-photo-story h2{font-size:32px;margin-bottom:22px}.article-top+.place-access{max-width:850px}.region-strip-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.region-strip-toolbar p{font-size:13px;color:#617159}.region-strip-toolbar button{border:1px solid #8b9a7d;background:transparent;width:40px;height:40px;border-radius:50%;margin-left:8px}.region-strip-toolbar button:disabled{opacity:.3;cursor:default}.region-photo-strip{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;padding:2px 2px 18px;width:100%;max-width:100%;}.region-photo-choice{flex:0 0 238px;min-width:0;scroll-snap-align:start}.region-photo-choice .chip{display:block;width:100%;border-radius:0;padding:0;border:2px solid transparent;text-align:left;white-space:normal;background:none;color:inherit;overflow:hidden}.region-photo-choice .chip[aria-pressed=true]{border-color:#365448;background:#e4e9db;color:inherit}.region-image-frame{display:block;background:#e2e6d8;aspect-ratio:4/3}.region-image-frame img{width:100%;height:100%;object-fit:contain}.region-photo-choice .chip strong{font:28px Georgia,serif;display:block;padding:10px 10px 4px}.region-shot-subject{display:block;font-size:11px;line-height:1.6;padding:0 10px 12px;min-height:66px}.region-photo-credit{font-size:9px;line-height:1.6;color:#64735c;margin:8px 0 4px;overflow-wrap:anywhere;min-height:31px}.region-hub-link,.all-regions>a{font-size:12px}.all-region-sign{height:178px;display:flex;align-items:center;justify-content:center;font:74px Georgia,serif;color:#57734e;background:#e7e9dc}.all-regions .chip>span:last-child{display:block;font-size:11px;padding:7px 10px 16px}.photo-filter-wrap{border-top:1px solid #d1d8c6;padding-top:20px;margin-bottom:28px}.photo-filter-search{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #d1d8c6;padding-top:18px;margin-top:6px}.photo-filter-search .search{flex:1;max-width:400px}.photo-filter-search>a{font-size:13px}.photo-filter-search .search input{font-size:16px}.photo-discovery+.section-top{padding-top:30px}
@media(max-width:1100px){.prefecture-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.all-prefectures>div{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.prefecture-photo-grid{gap:24px 15px}.prefecture-tile h3{font-size:25px}.prefecture-tile>a p{font-size:11px}.tile-credit{font-size:9px}.hub-intro{padding-top:28px}.hub-intro h1{font-size:54px}.hub-intro .dek{font-size:18px}.place-photo-grid{gap:18px;grid-template-columns:1fr}.place-photo-grid.count-3>figure:first-child{grid-column:auto}.photo-place{margin-bottom:42px;padding-bottom:28px}.place-copy>h2{font-size:31px}.place-access{font-size:14px}.all-prefectures>div{grid-template-columns:repeat(2,minmax(0,1fr))}.all-prefectures a{font-size:14px}.region-photo-choice{flex-basis:178px}.region-photo-strip{gap:13px}.region-photo-choice .chip strong{font-size:25px}.region-shot-subject{font-size:10px;min-height:74px}.all-region-sign{height:132px;font-size:60px}.photo-filter-search{align-items:stretch;flex-direction:column;gap:10px}.photo-filter-search .search{width:100%;max-width:none;margin:0}.photo-place-list{margin-top:24px}.photo-place .place-photo-grid .explorer-photo img{max-height:500px}.photo-discovery .section-top h2{font-size:35px}.photo-discovery .section-top>a{display:inline-block;margin-top:14px}}
@media(prefers-reduced-motion:reduce){.region-photo-strip{scroll-behavior:auto;scroll-snap-type:none}}

/* A warm, photo-first invitation; no autoplay, heavy video or decorative motion. */
.hero-intro{padding:24px 0 22px;align-items:center}.hero-intro h1{font-size:clamp(42px,4.5vw,68px);line-height:1.03;max-width:700px}.hero-intro .eyebrow{color:#8a572e;margin-bottom:8px}.hero-intro>p{max-width:270px;font-size:15px}.hero-photo{border-radius:13px;overflow:hidden;background:#e3e8da}.hero-photo>img{height:clamp(350px,42vw,560px)}.hero-link{border-radius:9px;background:#fff9eb;box-shadow:0 3px 22px #182b1d12}.hero-link .eyebrow{color:#8a572e}.hero-link .arrow{display:flex;align-items:center;justify-content:center;background:#dfb76b;color:#243825;width:40px;height:40px;border-radius:50%;flex-shrink:0}.photo-filter-wrap{border-top:0;padding-top:0}.region-photo-choice .chip[aria-pressed=true]{background:#fff3d6;border-color:#c7984d}.region-photo-choice .chip:hover{border-color:#c7984d}.prefecture-tile img{border-radius:9px}.photo-open img{border-radius:10px}.photo-place{border-bottom-color:#dfc99f}.hub-intro .eyebrow{color:#8a572e}.hub-event-link{background:#efe6cf;border-radius:14px;padding:28px;margin-bottom:45px}.hub-event-link .text-link{margin-top:8px;display:inline-flex}.header nav{flex-wrap:wrap;justify-content:flex-end}.article-photo-story{border-radius:12px;background:#f4f0e5;padding:25px}.quick-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:25px 0 40px}.quick-guide article{border-top:2px solid #c59b59;padding:15px 0}.quick-guide h3{font-size:22px;line-height:1.35;margin:8px 0}.quick-guide p{font-size:14px;line-height:1.8}.quick-guide .eyebrow{color:#8a572e;font-size:10px}.quick-guide a{font-size:12px}.quick-guide details summary{font-size:13px;padding:9px 0}.quick-guide details p{font-size:12px}.quick-guide-section>h2{font-size:30px;margin:28px 0 18px}@media(max-width:700px){.hero-intro{padding:20px 0}.hero-intro h1,html[lang=ja] .hero-intro h1{font-size:clamp(37px,10vw,47px)}.hero-intro>p{font-size:13px;margin-top:12px}.hero-photo>img{height:340px}.hero-link{left:10px;right:10px;bottom:10px;padding:12px 14px}.hero-link strong{font-size:21px}.hero-link .eyebrow{font-size:9px}.hero-link .arrow{width:33px;height:33px;font-size:22px}.header nav{gap:2px 12px;width:100%;margin-left:0;justify-content:flex-start}.header nav a{min-height:36px}.header .language-switch{margin-left:auto}.quick-guide{grid-template-columns:1fr;gap:8px}.quick-guide article{padding:12px 0}.quick-guide h3{font-size:23px}.article-photo-story{padding:18px}.hub-event-link{padding:22px}.hub-event-link h2{font-size:29px}}
/* Photography comes first. The full hero frame remains visible; typography is an HTML overlay. */
.travel-hero{margin:20px 0 0}.travel-hero-photo{position:relative;background:#203e39;border-radius:12px;overflow:hidden;isolation:isolate}.travel-hero-photo>img{height:auto;width:100%;max-height:790px;object-fit:contain;object-position:center}.travel-hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06272685 0,transparent 65%),linear-gradient(0deg,#0525249c,transparent 45%);pointer-events:none;z-index:1}.hero-invitation{position:absolute;z-index:2;left:5%;bottom:11%;color:white}.hero-invitation .eyebrow{color:#fff8df;font-size:12px;letter-spacing:.2em;margin-bottom:18px}.hero-invitation h1{font-size:clamp(56px,6.5vw,92px);letter-spacing:-.025em;line-height:1.08;text-shadow:0 2px 14px #061d1c30}.hero-invitation>a{display:inline-flex;gap:25px;align-items:center;text-decoration:none;border-bottom:1px solid #f9f1db;font-size:14px;padding:15px 0 7px;margin-top:18px;min-height:44px}.hero-place-label{position:absolute;right:24px;bottom:20px;z-index:2;color:white;font-size:12px;text-decoration:none}.travel-hero>.credit{margin-left:2px}.experience-preview .section-top{padding:54px 0 25px}.experience-preview .section-top h2{font-size:36px}.experience-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.experience-tiles article{min-width:0}.experience-tiles article>a{display:block;position:relative;text-decoration:none;overflow:hidden;border-radius:10px;background:#dce2d8;isolation:isolate}.experience-tiles img{aspect-ratio:4/5;object-fit:contain;width:100%;height:auto;max-height:520px}.experience-tiles article>a:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(0deg,#06332edd,transparent);pointer-events:none}.experience-caption{position:absolute;z-index:2;bottom:24px;left:22px;right:16px;color:white}.experience-caption>span{font-size:11px;letter-spacing:.13em}.experience-caption strong{display:block;font-size:28px;font-weight:400;line-height:1.4;font-family:Georgia,'Yu Mincho',serif;margin-top:10px}.experience-preview+.section-top{padding-top:55px}:root{--green:#245e59}.quick-guide article{border-top-color:#2c7b70}.region-photo-choice .chip[aria-pressed=true]{border-color:#2c7b70;background:#e3efea}.region-photo-choice .chip:hover{border-color:#2c7b70}.region-strip-toolbar button{color:#245e59;border-color:#6d938b}
@media(max-width:700px){.travel-hero{margin:12px -20px 0}.travel-hero-photo{border-radius:0}.travel-hero-photo>img{height:auto;min-height:0;max-height:none}.travel-hero>figure>.credit{margin:8px 20px 0;font-size:10px}.hero-invitation{left:20px;bottom:33px}.hero-invitation .eyebrow{font-size:8px;margin-bottom:8px;letter-spacing:.08em}.hero-invitation h1,html[lang=ja] .hero-invitation h1{font-size:clamp(28px,8vw,37px);line-height:1.25}.hero-invitation>a{margin-top:2px;padding:3px 0;min-height:34px;font-size:10px;gap:15px}.hero-place-label{right:15px;bottom:9px;font-size:9px}.experience-preview .section-top{padding:34px 0 18px}.experience-preview .section-top h2,html[lang=ja] .experience-preview .section-top h2{font-size:25px}.experience-preview .section-top>a{font-size:12px;margin-top:6px}.experience-tiles{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:15px;padding-bottom:12px;overscroll-behavior-x:contain}.experience-tiles article{flex:0 0 85%;scroll-snap-align:start}.experience-tiles img{aspect-ratio:4/5;max-height:440px}.experience-caption strong{font-size:29px}.experience-caption{left:20px;bottom:22px}.experience-tiles .tile-credit{font-size:9px}.experience-preview+.section-top{padding-top:30px}.photo-filter-wrap{margin-top:0}}
@media(prefers-reduced-motion:reduce){.experience-tiles{scroll-snap-type:none}}
.experience-tiles img{aspect-ratio:4/3;object-fit:contain;max-height:none}.experience-caption{bottom:18px;left:18px}.experience-caption strong{font-size:24px;margin-top:5px}@media(max-width:700px){.experience-tiles img{aspect-ratio:4/3;max-height:none}.experience-caption strong{font-size:24px}}
.region-photo-choice.all-regions{flex-basis:115px}.all-region-sign{font-size:35px}.region-photo-choice.all-regions .chip strong{font-size:23px}.all-regions>a{font-size:11px}@media(max-width:700px){.region-photo-choice.all-regions{flex-basis:100px}.all-region-sign{font-size:30px}.region-photo-choice.all-regions .chip strong{font-size:22px}.all-regions .chip>span:last-child{font-size:10px}}
.hub-intro{padding:22px 0 20px}.hub-intro h1{margin:10px 0 15px}.hub-intro .dek{font-size:19px;margin-top:14px}.hub-intro>p:last-child{margin-top:12px}.hub-photo-note{max-width:700px}.article-top{padding:22px 0 25px}.article-top h1{font-size:clamp(38px,5vw,66px)}.article-top .eyebrow{margin:14px 0}.article-top .dek{font-size:18px;margin-top:16px}.article-image img{height:auto;max-height:700px;object-fit:contain!important;background:#e5e8de}@media(max-width:700px){.hub-intro h1{font-size:44px;line-height:1.2}.hub-intro .dek{font-size:16px}.hub-count,.hub-photo-note{font-size:11px}.hub-intro{padding:15px 0}.photo-place-list{margin-top:18px}.article-top h1,html[lang=ja] .article-top h1{font-size:31px}.article-top .dek{font-size:16px}.article-top .back{font-size:12px}.article-top{padding-top:12px}}
.event-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.event-photo-preview .explorer-photo img{aspect-ratio:4/3;object-fit:contain}.event-reference-label{font-size:11px;color:#245e59;margin:17px 0 12px;font-weight:650}.event-preview-grid h3{font-size:29px;margin:12px 0}.event-preview-grid h3 a{text-decoration:none}.event-preview-grid article>p:not(.eyebrow):not(.event-reference-label){font-size:14px}.event-preview-grid .text-link{font-size:13px}.event-photo-preview{padding-bottom:30px}@media(max-width:700px){.event-preview-grid{grid-template-columns:1fr;gap:35px}.event-preview-grid h3,html[lang=ja] .event-preview-grid h3{font-size:25px}}
.article-lead-photo{margin-top:20px}.article-lead-photo img{border-radius:10px}.article-lead-photo+.article-top{padding-top:10px}@media(max-width:700px){.article-lead-photo{margin-top:14px}.article-lead-photo+.article-top{padding-top:6px}}

.area-discovery{padding:22px 0 50px}.area-discovery>h2{font-size:34px;line-height:1.45}.area-intro{max-width:850px;font-size:16px;line-height:1.9}.area-orientation{margin:20px 0 28px;max-width:900px}.area-orientation p{font-size:14px;line-height:1.8}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.area-choice{border:1px solid #cdd1c5;overflow:hidden;border-radius:4px}.area-choice figure{margin:0}.area-choice img{width:100%;height:250px;object-fit:cover;display:block}.area-choice figcaption{font-size:10px;padding:9px 16px;line-height:1.6}.area-copy{padding:20px}.area-copy h3{font-size:25px;line-height:1.4;margin:0 0 12px}.area-tagline{font-size:16px;line-height:1.6;margin-bottom:20px}.area-copy details{border-top:1px solid #cdd1c5}.area-copy summary{font-size:15px;padding:16px 0;line-height:1.6}.area-copy details p,.area-copy li{font-size:14px;line-height:1.9}.area-copy ul,.area-copy ol{padding-left:22px}.area-copy small{font-size:12px;line-height:1.8;display:block;margin-bottom:16px}@media(max-width:700px){.area-grid{grid-template-columns:1fr}.area-discovery>h2{font-size:27px}.area-choice img{height:230px}.area-copy{padding:18px}.area-copy h3{font-size:23px}}

.prefecture-hub .hub-intro h1{font-size:56px;margin:10px 0 14px}.prefecture-hub .hub-intro{padding-bottom:10px}.area-discovery{padding-top:8px}.area-orientation{margin:8px 0 16px}.area-orientation summary{font-size:17px;padding:12px 0}@media(max-width:700px){.prefecture-hub .hub-intro h1{font-size:40px}.prefecture-hub .hub-intro .dek{font-size:16px}.area-discovery>h2{font-size:24px}}

.area-no-photo{grid-column:1/-1}.area-no-photo .area-copy{max-width:900px}.area-no-photo .area-copy h3{font-size:22px}
.inspiration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:18px 0 40px}.inspiration-card{border-radius:6px;overflow:hidden;background:var(--card);color:var(--ink)}.inspiration-open{display:block;text-decoration:none}.inspiration-open img{width:100%;height:240px;object-fit:cover;background:var(--card-soft)}.inspiration-open img.keep-frame{object-fit:contain}.inspiration-open>div{padding:18px}.inspiration-open h2{font-size:23px;line-height:1.45;margin-bottom:9px;letter-spacing:0}.inspiration-open p{font-size:14px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inspiration-credit{font-size:10px;line-height:1.6;padding:0 18px 16px;color:var(--muted)}.area-plan-entry{display:block;padding:19px 0;border-top:1px solid var(--line);font-size:16px}.inspiration-hub .hub-intro{padding-bottom:6px}.inspiration-hub .hub-intro h1{margin:8px 0;font-size:50px}@media(max-width:1000px){.inspiration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.inspiration-grid{gap:12px;padding-top:14px}.inspiration-open img{height:160px}.inspiration-open>div{padding:12px}.inspiration-open h2{font-size:17px;margin-bottom:6px}.inspiration-open p{font-size:12px}.inspiration-credit{font-size:9px;padding:0 12px 12px}.inspiration-hub .hub-intro h1{font-size:38px}}@media(max-width:360px){.inspiration-grid{grid-template-columns:1fr}.inspiration-open img{height:220px}}

html[lang=ja] .inspiration-open h2{font-size:23px;line-height:1.45;letter-spacing:0}@media(max-width:700px){html[lang=ja] .inspiration-open h2{font-size:17px}}
/* Thumbnails fill their frame; source assets and detail photographs keep the full view. */
.inspiration-open img,.inspiration-open img.keep-frame{object-fit:cover;object-position:50% 45%}
#place-umeda-sky-building .inspiration-open img{object-position:50% 22%}
#place-minoh-park-waterfall .inspiration-open img{object-position:50% 55%}
.inspiration-crop-note{font-size:11px;line-height:1.7;color:var(--muted);margin:-20px 0 24px}

/* Keep Osaka Castle left-of-center in the mobile/desktop thumbnail crop. */
#place-osaka-castle .inspiration-open img{object-position:15% 45%}
#place-dotonbori .inspiration-open img{object-position:70% 40%}

/* Listing thumbnails fill their cards. Detail and full-size image rules above remain full-frame. */
.region-image-frame img,.prefecture-tile>a>img,.experience-tiles article>a>img,.event-photo-preview .explorer-photo img{object-fit:cover;object-position:50% 45%;padding:0}
.region-image-frame img[data-photo-id="OS01"],.prefecture-tile img[data-photo-id="OS01"],.experience-tiles img[data-photo-id="OS01"]{object-position:15% 45%}
.region-image-frame img[data-photo-id="OS04"],.prefecture-tile img[data-photo-id="OS04"],.experience-tiles img[data-photo-id="OS04"]{object-position:70% 40%}
.region-image-frame img[data-photo-id="K01"],.prefecture-tile img[data-photo-id="K01"]{object-position:52% 55%}
.region-image-frame img[data-photo-id="K02"],.prefecture-tile img[data-photo-id="K02"]{object-position:100% 80%}
.region-image-frame img[data-photo-id="J11"],.prefecture-tile img[data-photo-id="J11"]{object-position:50% 65%}

/* The home hero is an invitation crop; guide/detail photographs retain their source frame. */
.travel-hero-photo>img{object-fit:cover;object-position:50% 0%}

.inspiration-open img[data-photo-id="J11"]{object-position:50% 70%}
/* Keep the three roof tiers prominent in the reviewed portrait of Hirosaki Castle. */
.prefecture-tile img[data-photo-id="FL55051579821"],.region-image-frame img[data-photo-id="FL55051579821"],.inspiration-open img[data-photo-id="FL55051579821"]{object-position:50% 30%}

.inspiration-open img[data-photo-id="FL55051579821"]{height:auto;aspect-ratio:4/3}

/* The reflection circles and mountain-town landmarks remain complete in the two approved official previews. */
.inspiration-open img[data-photo-id="OP01"],.inspiration-open img[data-photo-id="OP02"]{height:auto;aspect-ratio:4/3}.inspiration-open img[data-photo-id="OP01"],.prefecture-tile img[data-photo-id="OP01"]{object-position:50% 80%}.inspiration-open img[data-photo-id="OP02"],.prefecture-tile img[data-photo-id="OP02"]{object-position:50% 50%}
/* New municipal landscapes: natural detail height preserves the full image without a fixed-height canvas. */
.explorer-photo img[data-photo-id="OP01"],.explorer-photo img[data-photo-id="OP02"]{height:auto;max-height:none}

/* OP03: retain the building cluster and shoreline in the wide aerial context, never isolate bystanders/statues. */
.inspiration-open img[data-photo-id="OP03"]{height:auto;aspect-ratio:4/3}
.inspiration-open img[data-photo-id="OP03"],.prefecture-tile img[data-photo-id="OP03"]{object-position:43% 50%}
.explorer-photo img[data-photo-id="OP03"]{height:auto;max-height:none}

/* OP04: keep the wide inhabited village context; no enlargement of incidental walkers. */
.inspiration-open img[data-photo-id="OP04"],.prefecture-tile img[data-photo-id="OP04"]{height:auto;aspect-ratio:3/2;object-fit:cover;object-position:50% 50%}
.explorer-photo img[data-photo-id="OP04"]{height:auto;max-height:none}

/* Approved provided-copy landscapes: separate subject-preserving overview crops; full detail frames at safe native density. */
.inspiration-open img[data-photo-variant="overview"],.prefecture-tile img[data-photo-variant="overview"]{height:auto;aspect-ratio:auto var(--reserved-photo-ratio);object-fit:cover;object-position:50% 50%}
.explorer-photo.provider-photo{width:100%;margin-inline:auto}
.explorer-photo.provider-photo img.provider-full-image,.source-page .provider-full-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:auto var(--reserved-photo-ratio)}

/* TT01 is a dated snow panorama: retain sea, ridge and broad context without isolating visitors. */
.inspiration-open img[data-photo-id="TT01"],.prefecture-tile img[data-photo-id="TT01"]{height:auto;aspect-ratio:auto var(--reserved-photo-ratio);object-fit:cover;object-position:50% 50%}
.explorer-photo img[data-photo-id="TT01"]{height:auto;max-height:none;max-width:1280px;margin-inline:auto}
@media(max-width:700px){#place-tottori-sand-dunes-winter{grid-column:1/-1}}

/* IW01: month-dated official photograph; keep mountain summit and lake reflection whole. */
.inspiration-open img[data-photo-id="IW01"],.prefecture-tile img[data-photo-id="IW01"]{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 50%}
.explorer-photo img[data-photo-id="IW01"]{height:auto;max-height:none;max-width:1200px;margin-inline:auto}

/* Wakayama: the keep roof, garden pavilion and complete corridor fit their natural 4:3 frame. */
.inspiration-open img[data-photo-id^="WK"],.prefecture-tile img[data-photo-id^="WK"]{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 50%}
.explorer-photo img[data-photo-id^="WK"]{height:auto;max-height:none;max-width:1280px;margin-inline:auto}

/* Two regional gateways: whole mountain/bridge frames; secondary scenes are not extra destinations. */
.inspiration-open img[data-photo-id="OR01"],.inspiration-open img[data-photo-id="OR03"],.prefecture-tile img[data-photo-id="OR01"],.prefecture-tile img[data-photo-id="OR03"]{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 50%}
.explorer-photo img[data-photo-id="OR01"],.explorer-photo img[data-photo-id="OR02"],.explorer-photo img[data-photo-id="OR03"],.explorer-photo img[data-photo-id="OR04"]{height:auto;max-height:none;max-width:1280px;margin-inline:auto}
.regional-reference-photos{margin-top:32px}.regional-reference-photo{margin-top:20px}.regional-photo-scope{max-width:76ch;line-height:1.7}

/* Dated bath / waterfall / harbour records: whole subjects and natural-height detail. */
.inspiration-open img[data-photo-id="OR05"],.prefecture-tile img[data-photo-id="OR05"]{height:auto;aspect-ratio:3024/2012;object-fit:cover;object-position:50% 50%}
.inspiration-open img[data-photo-id="OT01"],.prefecture-tile img[data-photo-id="OT01"]{height:auto;aspect-ratio:4827/2720;object-fit:cover;object-position:50% 50%}
.inspiration-open img[data-photo-id="OK01"],.prefecture-tile img[data-photo-id="OK01"]{height:auto;aspect-ratio:3/2;object-fit:cover;object-position:50% 50%}
.explorer-photo img[data-photo-id="OR05"],.explorer-photo img[data-photo-id="OR06"],.explorer-photo img[data-photo-id="OT01"],.explorer-photo img[data-photo-id="OK01"]{height:auto;max-height:none;max-width:1280px;margin-inline:auto}

/* Four dated landscapes: retain shore, floating structure, Bizan peak and complete train within the real frame. */
.inspiration-open img[data-photo-id="ON01"],.prefecture-tile img[data-photo-id="ON01"]{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 50%}
.inspiration-open img[data-photo-id="NA01"],.inspiration-open img[data-photo-id="TK01"],.inspiration-open img[data-photo-id="FK01"],.prefecture-tile img[data-photo-id="NA01"],.prefecture-tile img[data-photo-id="TK01"],.prefecture-tile img[data-photo-id="FK01"]{height:auto;aspect-ratio:3/2;object-fit:cover;object-position:50% 50%}
.explorer-photo img[data-photo-id="ON01"],.explorer-photo img[data-photo-id="NA01"],.explorer-photo img[data-photo-id="TK01"],.explorer-photo img[data-photo-id="FK01"]{height:auto;max-height:none;max-width:1280px;margin-inline:auto}

/* One photographic destination: no empty second column. Existing multi-card focus is untouched. */
.single-destination-grid{grid-template-columns:minmax(0,1fr)!important}
.single-destination-grid .inspiration-card{width:100%;max-width:var(--single-photo-cap,960px);margin-inline:auto;grid-column:1/-1}
.single-destination-grid .inspiration-open img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}
/* Approved nature/infrastructure photographs remain whole; GM01 is deliberately small. */
.inspiration-open img[data-photo-id="TT02"],.prefecture-tile img[data-photo-id="TT02"],.inspiration-open img[data-photo-id="GM01"],.prefecture-tile img[data-photo-id="GM01"],.inspiration-open img[data-photo-id="KM02"],.prefecture-tile img[data-photo-id="KM02"],.inspiration-open img[data-photo-id="YG01"],.prefecture-tile img[data-photo-id="YG01"]{height:auto;aspect-ratio:auto var(--reserved-photo-ratio);object-fit:contain;object-position:50% 50%;padding:0}
.explorer-photo img[data-photo-id="TT02"],.explorer-photo img[data-photo-id="KM02"],.explorer-photo img[data-photo-id="YG01"],.explorer-photo img[data-photo-id="GM01"]{height:auto;max-height:none;margin-inline:auto}
.explorer-photo img[data-photo-id="TT02"]{max-width:1280px}
.explorer-photo img[data-photo-id="KM02"],.explorer-photo img[data-photo-id="YG01"]{max-width:1600px}
img[data-photo-id="GM01"]{max-width:500px}

/* New TT02 follows the pre-existing full-width TT01 mobile panorama, without a spare half-column. */
@media(max-width:700px){#place-chizu-takitani-waterfall.inspiration-card{grid-column:1/-1}}

/* Dated rural/lakeshore additions: natural ratio, no artificial letterbox or lost context. */
.inspiration-open img[data-photo-id="KG01"],.inspiration-open img[data-photo-id="KY01"],.inspiration-open img[data-photo-id="HY02"],.inspiration-open img[data-photo-id="SG01"],.prefecture-tile img[data-photo-id="SG01"]{height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}
.explorer-photo img[data-photo-id="KG01"],.explorer-photo img[data-photo-id="KY01"],.explorer-photo img[data-photo-id="HY02"],.explorer-photo img[data-photo-id="SG01"]{height:auto!important;max-height:none!important;max-width:1280px;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}
.guide-full-detail>.detail-body,.guide-full-detail>div{min-width:0}

/* Spring 2024 records: retain pagoda/branches and landscape/reflection together. */
.inspiration-open img[data-photo-id="NA03"],.inspiration-open img[data-photo-id="KY02"],.inspiration-open img[data-photo-id="TY01"],.explorer-photo img[data-photo-id="NA03"],.explorer-photo img[data-photo-id="KY02"],.explorer-photo img[data-photo-id="TY01"]{height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}

/* Incomplete final rows only. Portrait/native caps retain intentional outer space, never image bands. */
.balanced-tail-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.balanced-tail-grid>article{grid-column:span 2}
@media(min-width:1001px){.balanced-tail-grid>.tail-three-one{grid-column:1/-1}.balanced-tail-grid>.tail-three-two{grid-column:span 3}.balanced-tail-grid>.tail-three-one,.balanced-tail-grid>.tail-three-two{width:100%;max-width:var(--tail-cap);justify-self:center;align-self:start}.balanced-tail-grid>.tail-three-one img:not([data-photo-id="CO07"]),.balanced-tail-grid>.tail-three-two img:not([data-photo-id="CO07"]){height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}}
@media(min-width:361px) and (max-width:1000px){.balanced-tail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.balanced-tail-grid>.tail-two-one{grid-column:1/-1;width:100%;max-width:var(--tail-cap);justify-self:center;align-self:start}.balanced-tail-grid>.tail-two-one img:not([data-photo-id="CO07"]){height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}}
@media(max-width:360px){.balanced-tail-grid{grid-template-columns:1fr}.balanced-tail-grid>article{grid-column:auto}}
/* CO07 retains the previously approved background-only 4:3 overview crop in discovery.css; the complete object and full detail remain available. */

/* Two approved short photo articles: whole Buddha, branches and roots; no new crop. */
.inspiration-open img[data-photo-id="AC01"],.inspiration-open img[data-photo-id="HY03"],.explorer-photo img[data-photo-id="AC01"],.explorer-photo img[data-photo-id="HY03"]{height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}
.photo-entry-article>.explorer-photo{max-width:1280px;margin-inline:auto}.photo-entry-article .place-copy>h2{font-size:clamp(21px,2.8vw,30px);line-height:1.4;margin:18px 0 12px}.photo-entry-article .place-copy>p{line-height:1.8}.photo-visit-notes>summary{font-weight:650}.photo-visit-notes .detail-body p{line-height:1.8}
/* Content-height cards: remove only stretch-created grey bottoms, not natural external space. */
.inspiration-grid{align-items:start}

/* Approved coast records: preserve vertical Byobuiwa and full shoreline reflections. */
.inspiration-open img[data-photo-id="KY03"],.inspiration-open img[data-photo-id="IS01"],.explorer-photo img[data-photo-id="KY03"],.explorer-photo img[data-photo-id="IS01"]{height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important}
.photo-entry-article[data-photo-article="KY03"]>.explorer-photo{max-width:640px}
/* Reserve each new full-frame ratio before the lazy source is assigned. */
.inspiration-open img[data-photo-id="KY03"],.explorer-photo img[data-photo-id="KY03"]{aspect-ratio:auto 4000 / 5333!important}
.inspiration-open img[data-photo-id="IS01"],.explorer-photo img[data-photo-id="IS01"]{aspect-ratio:auto 3 / 2!important}
/* Historical 2024 festival record only: full portrait and stable pre-lazy ratio. */
.inspiration-open img[data-photo-id="HY06"],.explorer-photo img[data-photo-id="HY06"]{height:auto!important;max-height:none!important;aspect-ratio:auto 4000 / 5333!important;object-fit:contain!important;padding:0!important}
.photo-entry-article[data-photo-article="HY06"]>.explorer-photo{max-width:640px}
.historical-photo-records{margin:36px 0}.historical-photo-records>.inspiration-card{max-width:480px;align-self:start}
/* Three dated town/temple records: full frame without fixed-height letterboxing. */
.explorer-photo img[data-photo-id="TV01"],.explorer-photo img[data-photo-id="TV02"],.explorer-photo img[data-photo-id="TV03"],.inspiration-open img[data-photo-id="TV01"],.inspiration-open img[data-photo-id="TV02"],.inspiration-open img[data-photo-id="TV03"]{height:auto!important;max-height:none!important;aspect-ratio:auto var(--reserved-photo-ratio)!important;object-fit:contain!important;padding:0!important;max-width:1280px;margin-inline:auto}
