@charset "UTF-8";
/* Load after base.css. Fourteen art-directed compositions share semantic markup.
   Hero photography is advertising imagery. Original case photos retain their captions.
   Geometry is animated by motion.js through data-motion; this sheet never animates copy. */
body.region-nishiku{--ink:#092c31;--paper:#f4f0e6;--gold:#c9a86a;--accent:#61928a}
body.region-sawaraku{--ink:#133f36;--paper:#f5f1e7;--gold:#b79453;--accent:#719783}
body.region-minamiku{--ink:#232726;--paper:#e9e6db;--gold:#c7aa72;--accent:#7b8c7d}
body.region-Jonanku{--ink:#473c31;--paper:#f1e9da;--gold:#b88b51;--accent:#a28160}
body.region-Higashiku{--ink:#183e43;--paper:#f5f1e8;--gold:#ceb27b;--accent:#73a0a0}
body.region-chuuouku{--ink:#253333;--paper:#f1eee7;--gold:#ac8955;--accent:#8a9793}
body.region-itoshima-shi{--ink:#234d3a;--paper:#edecdc;--gold:#c8ad6a;--accent:#8c9c63}
body.region-hakataku{--ink:#302b2a;--paper:#ede7dc;--gold:#c3a574;--accent:#937568}
body.region-Kasuga-shi{--ink:#5a4d3f;--paper:#f6eee0;--gold:#b18a50;--accent:#b3a083}
body.region-nakagawa-cho{--ink:#393f2d;--paper:#e9e5d6;--gold:#c8b06c;--accent:#97996e}
body.region-Onojo-shi{--ink:#473139;--paper:#f2ebe2;--gold:#bc9c67;--accent:#a08280}
body.region-Tsukushino-shi{--ink:#253d4b;--paper:#ecf0eb;--gold:#bfa46e;--accent:#819798}
body.region-Dazaifu-shi{--ink:#4a2735;--paper:#f1e7e0;--gold:#c3a16b;--accent:#ab827d}
body.region-Kasuya-gun{--ink:#183b49;--paper:#edf0e8;--gold:#c0a565;--accent:#70a0a0}

/* Common geometry safeguards: backdrop and decorations may crop; text never does. */
body[class*="region-"] .hero-backdrop{overflow:hidden}
.hero .hero-backdrop,.hero .hero-shade{width:auto;height:auto}
body[class*="region-"] .hero-backdrop img{width:100%;height:100%;object-fit:cover}
.hero .hero-art{inset:auto}
body[class*="region-"] .hero-art{pointer-events:none}
body[class*="region-"] .hero-detail-photo{display:block;width:100%;height:100%;object-fit:cover}
body[class*="region-"] .hero-region-name{pointer-events:none;user-select:none;white-space:nowrap}
body[class*="region-"] .story-card{min-width:0}
body[class*="region-"] .story-card img{width:100%;object-fit:cover}

/* 01 NISHI — full-width cinema; low composition, long horizon, one dominant case. */
.region-nishiku .hero{min-height:850px;background:var(--ink);color:#fff}
.region-nishiku .hero-backdrop{inset:0}
.region-nishiku .hero-backdrop img{object-position:67% 54%}
.region-nishiku .hero-shade{background:linear-gradient(90deg,rgba(4,28,32,.93) 0%,rgba(4,28,32,.74) 36%,rgba(4,28,32,.12) 78%),linear-gradient(0deg,#092c31 0%,transparent 32%)}
.region-nishiku .hero-inner{align-items:center;padding-top:54px}
.region-nishiku .hero-copy{width:56%;max-width:740px;padding-bottom:70px}
.region-nishiku .hero h1{font-size:clamp(43px,4.45vw,68px);letter-spacing:.035em;line-height:1.5}
.region-nishiku .hero-eyebrow{letter-spacing:.3em;border-left:34px solid var(--gold);padding-left:16px}
.region-nishiku .hero-art{right:5%;bottom:88px;width:30%;height:195px;border:1px solid rgba(201,168,106,.5);padding:9px;background:rgba(9,44,49,.25)}
.region-nishiku .hero-region-name{right:2%;bottom:-19px;font-size:clamp(130px,19vw,300px);letter-spacing:.02em;opacity:.15}
.region-nishiku .hero-rail{left:0;right:0;bottom:0;border-top:1px solid rgba(201,168,106,.6)}
.region-nishiku .recovery-stage{background:var(--ink);color:var(--gold);border-top:1px solid rgba(201,168,106,.3)}
.region-nishiku .story-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:35px}
.region-nishiku .story-card:first-child{grid-row:span 2}
.region-nishiku .story-card:first-child img{height:560px}
.region-nishiku .story-card:not(:first-child) img{height:245px}
.region-nishiku .process-section{background:#e5e4d8}

/* 02 SAWARA — ivory typography beside a tall emerald framed photograph. */
.region-sawaraku .hero{min-height:860px;background:var(--paper);color:var(--ink)}
.region-sawaraku .hero-backdrop{top:38px;right:3%;bottom:38px;left:auto;width:48%;border-radius:230px 0 0 0}
.region-sawaraku .hero-backdrop img{object-position:60% center}
.region-sawaraku .hero-shade{background:linear-gradient(90deg,var(--paper) 0%,var(--paper) 43%,transparent 57%)}
.region-sawaraku .hero-inner{align-items:center}
.region-sawaraku .hero-copy{width:49%;padding:45px 24px 110px 0}
.region-sawaraku .hero h1{font-size:clamp(38px,3.8vw,60px);line-height:1.65;letter-spacing:.025em}
.region-sawaraku .hero-lead{color:#52645b;max-width:450px}
.region-sawaraku .hero-eyebrow{color:#806738}
.region-sawaraku .hero-art{right:7%;bottom:72px;width:23%;height:210px;border:9px solid var(--paper);box-shadow:0 22px 45px #0f2e3525}
.region-sawaraku .hero-region-name{left:2%;bottom:3px;font-size:clamp(96px,13vw,204px);color:var(--ink);opacity:.065;letter-spacing:.09em}
.region-sawaraku .hero-counter{left:calc(50% - 55px);bottom:110px;color:var(--gold)}
.region-sawaraku .hero-scroll{color:var(--ink)}
.region-sawaraku .story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.region-sawaraku .story-card:nth-child(2){margin-top:80px}
.region-sawaraku .story-card:nth-child(3){margin-top:160px}
.region-sawaraku .story-card img{height:360px}
.region-sawaraku .service-section{background:var(--ink);color:var(--paper)}
.region-sawaraku .process-section{border-top:1px solid #b7945355}

/* 03 MINAMI — graphite engineering, diagonal vehicle field, numbered service panels. */
.region-minamiku .hero{min-height:810px;background:#232726;color:#fff}
.region-minamiku .hero-backdrop{left:auto;right:0;top:0;bottom:0;width:67%;clip-path:polygon(19% 0,100% 0,100% 100%,0 100%)}
.region-minamiku .hero-backdrop img{object-position:64% center;filter:saturate(.7)}
.region-minamiku .hero-shade{background:linear-gradient(90deg,#232726 0%,#232726 33%,#232726b8 54%,#23272612 87%)}
.region-minamiku .hero-inner{align-items:center}
.region-minamiku .hero-copy{width:53%;padding-bottom:52px;border-left:1px solid var(--gold);padding-left:28px}
.region-minamiku .hero h1{font-size:clamp(41px,4.2vw,65px);letter-spacing:.025em;line-height:1.55}
.region-minamiku .hero-eyebrow{font-family:monospace;letter-spacing:.18em}
.region-minamiku .hero-art{right:6%;bottom:72px;width:26%;height:180px;clip-path:polygon(12% 0,100% 0,88% 100%,0 100%);border-block:2px solid var(--gold)}
.region-minamiku .hero-region-name{left:-10px;bottom:-32px;font-size:clamp(130px,19vw,290px);letter-spacing:-.025em;opacity:.1}
.region-minamiku .hero-rail{transform:skewX(-18deg);left:49%;right:3%;bottom:35px;border-bottom:1px solid var(--gold)}
.region-minamiku .recovery-stage{background:#303632;color:var(--gold);border-block:1px solid #c7aa7266}
.region-minamiku .story-grid{display:grid;grid-template-columns:1fr}
.region-minamiku .story-card{display:grid;grid-template-columns:1.3fr 1fr;gap:45px;align-items:center}
.region-minamiku .story-card img{height:430px}
.region-minamiku .process-section{background:#dcded4;border-top:4px solid var(--ink)}

/* 04 JONAN — warm editorial spread; arch portrait and a small offset contact sheet. */
.region-Jonanku .hero{min-height:870px;background:var(--paper);color:var(--ink)}
.region-Jonanku .hero-backdrop{left:auto;right:5%;top:75px;bottom:95px;width:45%;border-radius:250px 250px 4px 4px}
.region-Jonanku .hero-backdrop img{object-position:60% center}
.region-Jonanku .hero-shade{background:linear-gradient(90deg,var(--paper) 0%,var(--paper) 41%,transparent 55%)}
.region-Jonanku .hero-copy{width:49%;padding-bottom:110px}
.region-Jonanku .hero h1{font-size:clamp(34px,3.3vw,52px);line-height:1.8;letter-spacing:.025em}
.region-Jonanku .hero-eyebrow{color:#926638;letter-spacing:.25em}
.region-Jonanku .hero-lead{color:#756655;max-width:455px}
.region-Jonanku .hero-art{right:35%;bottom:44px;width:20%;height:195px;transform:rotate(-5deg);border:10px solid #fffaf1;box-shadow:0 20px 40px #473c311f}
.region-Jonanku .hero-region-name{left:3%;bottom:13px;font-size:clamp(95px,17vw,250px);color:var(--ink);opacity:.075;letter-spacing:.1em}
.region-Jonanku .hero-scroll{color:var(--ink)}
.region-Jonanku .story-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.region-Jonanku .story-card:nth-child(even){padding-top:100px}
.region-Jonanku .story-card img{height:420px}
.region-Jonanku .service-section{background:#e4d8c3}
.region-Jonanku .process-section{background:#473c31;color:var(--paper)}

/* 05 HIGASHI — centered type above a broad, low photographic horizon. */
.region-Higashiku .hero{min-height:950px;background:var(--ink);color:#fff}
.region-Higashiku .hero-backdrop{top:auto;bottom:0;left:0;right:0;height:61%}
.region-Higashiku .hero-backdrop img{object-position:center 54%}
.region-Higashiku .hero-shade{background:linear-gradient(180deg,#183e43 0%,#183e43 30%,#183e43c7 46%,#183e4315 75%,#183e4380 100%)}
.region-Higashiku .hero-inner{align-items:flex-start;justify-content:center;padding-top:74px;text-align:center}
.region-Higashiku .hero-copy{width:90%;max-width:980px}
.region-Higashiku .hero h1{font-size:clamp(40px,4vw,63px);line-height:1.45;letter-spacing:.05em}
.region-Higashiku .hero-lead{max-width:610px;margin-inline:auto}
.region-Higashiku .hero-cta{justify-content:center}
.region-Higashiku .hero-art{left:4%;bottom:35px;width:20%;height:170px;border:7px solid #e5e5d3}
.region-Higashiku .hero-region-name{right:2%;bottom:1px;font-size:clamp(95px,15vw,240px);opacity:.22}
.region-Higashiku .hero-counter{right:5%;top:90px}
.region-Higashiku .story-grid{display:grid;grid-template-columns:1fr}
.region-Higashiku .story-card{max-width:1000px;margin-inline:auto;width:100%}
.region-Higashiku .story-card img{height:500px;aspect-ratio:2/1}
.region-Higashiku .service-section{background:#e2e9df}
.region-Higashiku .recovery-stage{background:var(--ink);color:var(--gold)}

/* 06 CHUO — architectural white margins, off-grid photographs, vertical region label. */
.region-chuuouku .hero{min-height:850px;background:var(--paper);color:var(--ink);border-bottom:1px solid #c3bba8}
.region-chuuouku .hero-backdrop{top:100px;right:4%;bottom:0;left:auto;width:47%;clip-path:polygon(0 0,100% 0,100% 90%,82% 100%,0 100%)}
.region-chuuouku .hero-backdrop img{object-position:63% center;filter:saturate(.68)}
.region-chuuouku .hero-shade{background:linear-gradient(90deg,var(--paper) 0%,var(--paper) 39%,#f1eee766 50%,transparent 60%)}
.region-chuuouku .hero-inner{padding-left:35px}
.region-chuuouku .hero-copy{width:47%;padding-bottom:20px}
.region-chuuouku .hero h1{font-size:clamp(37px,3.5vw,55px);line-height:1.75;letter-spacing:.035em}
.region-chuuouku .hero-eyebrow{color:#7b694b}
.region-chuuouku .hero-lead{max-width:430px;color:#5f6966}
.region-chuuouku .hero-art{right:34%;bottom:40px;width:20%;height:230px;border:8px solid var(--paper)}
.region-chuuouku .hero-region-name{left:-64px;top:50%;bottom:auto;font-size:118px;letter-spacing:.15em;opacity:.09;transform:translateY(-50%) rotate(-90deg);transform-origin:center}
.region-chuuouku .hero-scroll{color:var(--ink)}
.region-chuuouku .hero-rail{top:45px;right:4%;width:43%;border-top:1px solid var(--gold)}
.region-chuuouku .story-grid{display:grid;grid-template-columns:1fr}
.region-chuuouku .story-card{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.region-chuuouku .story-card img{height:500px}
.region-chuuouku .service-section{background:#dfe2da;border-block:1px solid #bfc6bc}
.region-chuuouku .process-section{background:#253333;color:var(--paper)}

/* 07 ITOSHIMA — asymmetric landscape band beneath light editorial copy. */
.region-itoshima-shi .hero{min-height:930px;background:var(--paper);color:var(--ink)}
.region-itoshima-shi .hero-backdrop{left:0;right:0;top:auto;bottom:0;height:57%;clip-path:polygon(0 14%,100% 0,100% 100%,0 100%)}
.region-itoshima-shi .hero-backdrop img{object-position:center 60%}
.region-itoshima-shi .hero-shade{background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 31%,#edecdcaa 44%,transparent 63%,#234d3a44 100%)}
.region-itoshima-shi .hero-inner{align-items:flex-start;padding-top:60px}
.region-itoshima-shi .hero-copy{width:73%;max-width:880px}
.region-itoshima-shi .hero h1{font-size:clamp(40px,4.1vw,64px);line-height:1.48;letter-spacing:.02em}
.region-itoshima-shi .hero-lead{max-width:590px;color:#5b6952}
.region-itoshima-shi .hero-eyebrow{color:#7b733f}
.region-itoshima-shi .hero-art{right:5%;top:77px;width:23%;height:260px;clip-path:polygon(9% 0,100% 0,100% 90%,0 100%,0 9%)}
.region-itoshima-shi .hero-region-name{left:3%;bottom:16px;font-size:clamp(110px,18vw,280px);color:#fff;opacity:.38;letter-spacing:.04em}
.region-itoshima-shi .hero-scroll{color:#fff}
.region-itoshima-shi .story-grid{display:grid;grid-template-columns:1fr}
.region-itoshima-shi .story-card{max-width:1080px;margin-inline:auto}
.region-itoshima-shi .story-card img{height:470px;aspect-ratio:2/1}
.region-itoshima-shi .service-section{background:var(--ink);color:var(--paper)}
.region-itoshima-shi .process-section{background:#dedfcb}

/* 08 HAKATA — inset night photograph inside a dark bronze gallery frame. */
.region-hakataku .hero{min-height:880px;background:var(--ink);color:#fff;padding:32px}
.region-hakataku .hero-backdrop{inset:32px;border:1px solid #c3a57477}
.region-hakataku .hero-backdrop img{object-position:72% center;filter:saturate(.65)}
.region-hakataku .hero-shade{inset:33px;background:linear-gradient(90deg,#302b2af0 0%,#302b2abd 42%,#302b2a15 80%),linear-gradient(0deg,#302b2acd,transparent 45%)}
.region-hakataku .hero-inner{min-height:816px}
.region-hakataku .hero-copy{width:57%;padding-left:32px;border-left:2px solid var(--gold)}
.region-hakataku .hero h1{font-size:clamp(42px,4.3vw,65px);letter-spacing:.03em;line-height:1.55}
.region-hakataku .hero-eyebrow{letter-spacing:.32em}
.region-hakataku .hero-art{right:7%;bottom:95px;width:27%;height:175px;outline:1px solid #c3a57477;outline-offset:9px}
.region-hakataku .hero-region-name{right:6%;top:59px;font-size:clamp(72px,12vw,185px);opacity:.19;letter-spacing:.035em}
.region-hakataku .hero-rail{left:6%;bottom:46px;right:6%;border-top:1px solid #c3a57477}
.region-hakataku .recovery-stage{background:#201e1d;color:var(--gold)}
.region-hakataku .service-section{background:#e1d8c8}
.region-hakataku .process-section{background:#302b2a;color:var(--paper);border-block:1px solid #c3a57444}
.region-hakataku .story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c3a57466}
.region-hakataku .story-card{background:var(--paper);padding:24px}
.region-hakataku .story-card img{height:280px}

/* 09 KASUGA — luminous round photograph, orbit detail, generous domestic scale. */
.region-Kasuga-shi .hero{min-height:880px;background:var(--paper);color:var(--ink)}
.region-Kasuga-shi .hero-backdrop{left:auto;right:-8%;top:60px;bottom:auto;width:66%;height:730px;border-radius:50%}
.region-Kasuga-shi .hero-backdrop img{object-position:64% center}
.region-Kasuga-shi .hero-shade{background:linear-gradient(90deg,var(--paper) 0%,var(--paper) 31%,#f6eee0cc 45%,transparent 66%)}
.region-Kasuga-shi .hero-copy{width:54%;padding-bottom:100px}
.region-Kasuga-shi .hero h1{font-size:clamp(41px,4.1vw,65px);line-height:1.65;letter-spacing:.045em}
.region-Kasuga-shi .hero-lead{color:#746b5a;max-width:475px}
.region-Kasuga-shi .hero-eyebrow{color:#977341}
.region-Kasuga-shi .hero-art{right:36%;bottom:54px;width:175px;height:175px;border-radius:50%;overflow:hidden;border:8px solid var(--paper);box-shadow:0 0 0 1px var(--gold)}
.region-Kasuga-shi .hero-region-name{left:3%;bottom:-8px;font-size:clamp(106px,17vw,260px);color:var(--ink);opacity:.075;letter-spacing:.05em}
.region-Kasuga-shi .hero-scroll{color:var(--ink)}
.region-Kasuga-shi .service-section{background:#e7decc;border-radius:80px 0 0 0}
.region-Kasuga-shi .story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:60px}
.region-Kasuga-shi .story-card img{height:390px;border-radius:140px 140px 0 0}
.region-Kasuga-shi .process-section{background:#efe4d1}

/* 10 NAKAGAWA — workshop masthead above a low, panoramic working-vehicle field. */
.region-nakagawa-cho .hero{min-height:940px;background:var(--ink);color:var(--paper)}
.region-nakagawa-cho .hero-backdrop{top:auto;bottom:0;left:5%;right:0;height:56%;clip-path:polygon(0 0,100% 0,100% 100%,4% 100%)}
.region-nakagawa-cho .hero-backdrop img{object-position:center 56%;filter:saturate(.65)}
.region-nakagawa-cho .hero-shade{background:linear-gradient(180deg,#393f2d 0%,#393f2d 35%,#393f2d88 52%,transparent 80%)}
.region-nakagawa-cho .hero-inner{align-items:flex-start;padding-top:68px}
.region-nakagawa-cho .hero-copy{width:73%;max-width:820px}
.region-nakagawa-cho .hero h1{font-size:clamp(43px,4.4vw,68px);line-height:1.45;letter-spacing:.02em}
.region-nakagawa-cho .hero-lead{max-width:595px}
.region-nakagawa-cho .hero-art{right:6%;top:68px;width:21%;height:240px;clip-path:polygon(0 0,100% 0,100% 85%,75% 100%,0 100%);border-top:3px solid var(--gold)}
.region-nakagawa-cho .hero-region-name{left:2%;bottom:20px;font-size:clamp(82px,12.7vw,200px);opacity:.23;letter-spacing:.02em}
.region-nakagawa-cho .hero-rail{top:45%;left:0;right:0;border-top:1px solid var(--gold)}
.region-nakagawa-cho .recovery-stage{background:#292e20;color:var(--gold);border-top:1px solid #c8b06c55}
.region-nakagawa-cho .service-section{background:#d8dac7}
.region-nakagawa-cho .process-section{border-top:5px solid var(--ink)}
.region-nakagawa-cho .story-grid{display:grid;grid-template-columns:2fr 1fr;gap:36px}
.region-nakagawa-cho .story-card img{height:350px}

/* 11 ONOJO — reversed portrait essay: image left, quiet decision copy right. */
.region-Onojo-shi .hero{min-height:870px;background:var(--paper);color:var(--ink)}
.region-Onojo-shi .hero-backdrop{left:5%;right:auto;top:50px;bottom:50px;width:39%;border-radius:3px 3px 180px 3px}
.region-Onojo-shi .hero-backdrop img{object-position:58% center}
.region-Onojo-shi .hero-shade{background:linear-gradient(90deg,transparent 0%,transparent 35%,#f2ebe266 43%,var(--paper) 52%,var(--paper) 100%)}
.region-Onojo-shi .hero-inner{justify-content:flex-end}
.region-Onojo-shi .hero-copy{width:49%;padding:15px 0 100px 16px}
.region-Onojo-shi .hero h1{font-size:clamp(37px,3.5vw,55px);line-height:1.75;letter-spacing:.035em}
.region-Onojo-shi .hero-eyebrow{color:#92734a}
.region-Onojo-shi .hero-lead{color:#776666}
.region-Onojo-shi .hero-art{left:32%;bottom:28px;width:20%;height:200px;border:9px solid var(--paper);box-shadow:0 18px 32px #47313919}
.region-Onojo-shi .hero-region-name{right:2%;bottom:22px;color:var(--ink);font-size:clamp(100px,15vw,240px);opacity:.075;letter-spacing:.06em}
.region-Onojo-shi .hero-scroll{color:var(--ink)}
.region-Onojo-shi .service-section{background:#e2d5ca}
.region-Onojo-shi .process-section{background:var(--ink);color:var(--paper)}
.region-Onojo-shi .story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:56px}
.region-Onojo-shi .story-card:nth-child(odd){padding-top:70px}
.region-Onojo-shi .story-card img{height:420px}

/* 12 CHIKUSHINO — blue-white folded composition; clear right-hand reading path. */
.region-Tsukushino-shi .hero{min-height:830px;background:var(--paper);color:var(--ink)}
.region-Tsukushino-shi .hero-backdrop{left:0;right:auto;top:0;bottom:0;width:49%;clip-path:polygon(0 0,88% 0,100% 75%,78% 100%,0 100%)}
.region-Tsukushino-shi .hero-backdrop img{object-position:60% center;filter:saturate(.72)}
.region-Tsukushino-shi .hero-shade{background:linear-gradient(90deg,transparent 0%,transparent 33%,#ecf0eb66 45%,var(--paper) 55%,var(--paper) 100%)}
.region-Tsukushino-shi .hero-inner{justify-content:flex-end}
.region-Tsukushino-shi .hero-copy{width:49%;padding:15px 0 105px 16px}
.region-Tsukushino-shi .hero h1{font-size:clamp(37px,3.6vw,57px);line-height:1.7;letter-spacing:.03em}
.region-Tsukushino-shi .hero-eyebrow{color:#8d794e}
.region-Tsukushino-shi .hero-lead{color:#637277}
.region-Tsukushino-shi .hero-art{left:33%;bottom:65px;width:18%;height:170px;border:8px solid var(--paper);transform:rotate(4deg)}
.region-Tsukushino-shi .hero-region-name{right:2%;bottom:15px;font-size:clamp(64px,10.5vw,165px);color:var(--ink);opacity:.085;letter-spacing:.04em}
.region-Tsukushino-shi .hero-scroll{color:var(--ink)}
.region-Tsukushino-shi .process-section{background:var(--ink);color:var(--paper);border-top:3px solid var(--gold)}
.region-Tsukushino-shi .service-section{background:#dce3dd}
.region-Tsukushino-shi .story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.region-Tsukushino-shi .story-card img{height:315px}

/* 13 DAZAIFU — wine-coloured photographic gallery; centered image and overlay title. */
.region-Dazaifu-shi .hero{min-height:940px;background:var(--ink);color:#fff}
.region-Dazaifu-shi .hero-backdrop{top:65px;bottom:65px;left:23%;right:23%;border-radius:230px 230px 4px 4px}
.region-Dazaifu-shi .hero-backdrop img{object-position:60% center;filter:saturate(.7)}
.region-Dazaifu-shi .hero-shade{background:linear-gradient(90deg,#4a2735aa,transparent 35%,transparent 65%,#4a2735aa),linear-gradient(0deg,#4a2735 0%,#4a2735b3 32%,#4a27355c 65%,#4a273540 100%)}
.region-Dazaifu-shi .hero-inner{justify-content:center;align-items:center;text-align:center;padding-top:100px}
.region-Dazaifu-shi .hero-copy{width:90%;max-width:940px;padding-bottom:40px}
.region-Dazaifu-shi .hero h1{font-size:clamp(44px,4.7vw,73px);line-height:1.5;letter-spacing:.07em;text-shadow:0 3px 32px #25171ce0}
.region-Dazaifu-shi .hero-lead{max-width:620px;margin-inline:auto;color:#f3e6df}
.region-Dazaifu-shi .hero-cta{justify-content:center}
.region-Dazaifu-shi .hero-eyebrow{letter-spacing:.38em}
.region-Dazaifu-shi .hero-art{right:4%;bottom:90px;width:18%;height:190px;border:1px solid var(--gold);padding:8px}
.region-Dazaifu-shi .hero-region-name{left:3%;right:3%;top:18px;text-align:center;font-size:clamp(110px,17.5vw,270px);opacity:.13;letter-spacing:.13em}
.region-Dazaifu-shi .hero-rail{left:8%;right:8%;bottom:45px;border-top:1px solid #c3a16b80}
.region-Dazaifu-shi .story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px}
.region-Dazaifu-shi .story-card img{height:480px;border-radius:150px 150px 0 0}
.region-Dazaifu-shi .service-section{background:#e3d5cb}
.region-Dazaifu-shi .recovery-stage{background:#361d27;color:var(--gold)}

/* 14 KASUYA — navy wayfinding masthead with a low left photograph and right detail. */
.region-Kasuya-gun .hero{min-height:940px;background:var(--ink);color:#fff}
.region-Kasuya-gun .hero-backdrop{left:0;right:auto;top:auto;bottom:0;width:73%;height:57%;clip-path:polygon(0 0,100% 0,94% 100%,0 100%)}
.region-Kasuya-gun .hero-backdrop img{object-position:65% center;filter:saturate(.77)}
.region-Kasuya-gun .hero-shade{background:linear-gradient(180deg,#183b49 0%,#183b49 32%,#183b4977 50%,transparent 75%),linear-gradient(90deg,transparent 56%,#183b49cc 80%,#183b49 100%)}
.region-Kasuya-gun .hero-inner{align-items:flex-start;padding-top:70px}
.region-Kasuya-gun .hero-copy{width:82%;max-width:880px}
.region-Kasuya-gun .hero h1{font-size:clamp(44px,4.45vw,69px);line-height:1.47;letter-spacing:.04em}
.region-Kasuya-gun .hero-lead{max-width:625px}
.region-Kasuya-gun .hero-eyebrow{letter-spacing:.27em}
.region-Kasuya-gun .hero-art{right:4%;bottom:160px;width:23%;height:235px;border-top:1px solid var(--gold);padding-top:12px}
.region-Kasuya-gun .hero-region-name{right:-28px;top:53%;bottom:auto;font-size:114px;letter-spacing:.1em;opacity:.16;transform:rotate(90deg);transform-origin:center}
.region-Kasuya-gun .hero-rail{left:0;right:0;top:45%;border-top:1px solid #c0a56599}
.region-Kasuya-gun .service-section{background:#dce7df}
.region-Kasuya-gun .recovery-stage{background:#102c38;color:var(--gold)}
.region-Kasuya-gun .process-section{background:var(--ink);color:var(--paper)}
.region-Kasuya-gun .story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.region-Kasuya-gun .story-card{border-top:3px solid var(--gold)}
.region-Kasuya-gun .story-card img{height:290px}

/* Tablet: preserve the individual photograph windows while giving text more width. */
@media (min-width:681px) and (max-width:1040px){
  body[class*="region-"] .hero{min-height:790px}
  body[class*="region-"] .hero-inner{width:calc(100% - 60px)}
  body[class*="region-"] .hero h1{font-size:clamp(31px,4.25vw,45px)}
  body[class*="region-"] .hero-lead{font-size:14px;line-height:1.95}
  body[class*="region-"] .hero-art{height:145px}
  .region-hakataku .hero{padding:20px}
  .region-hakataku .hero-backdrop{inset:20px}
  .region-hakataku .hero-shade{inset:21px}
  .region-hakataku .hero-inner{min-height:750px}
  .region-hakataku .hero-copy{padding-left:20px}
  .region-Kasuga-shi .hero-backdrop{height:600px;top:90px}
  .region-Higashiku .hero-copy,.region-Dazaifu-shi .hero-copy{width:92%}
  .region-nakagawa-cho .hero-copy,.region-Kasuya-gun .hero-copy{width:78%}
  body[class*="region-"] .story-card img{height:300px}
  .region-nishiku .story-card:first-child img{height:495px}
  .region-minamiku .story-card,.region-chuuouku .story-card{gap:30px}
  .region-sawaraku .story-card:nth-child(2){margin-top:45px}
  .region-sawaraku .story-card:nth-child(3){margin-top:90px}
}

/* Mobile: text and photo each retain their own space; decorative masks never cut text. */
@media (max-width:680px){
  body[class*="region-"] .hero{min-height:850px;padding:0;background:var(--ink);color:#fff;isolation:isolate}
  body[class*="region-"] .hero-inner{width:calc(100% - 44px);min-height:850px;align-items:flex-start;justify-content:flex-start;padding:44px 0 0;text-align:left}
  body[class*="region-"] .hero-copy{width:100%;max-width:none;padding:0;border:0;color:#fff}
  body[class*="region-"] .hero h1{font-size:clamp(29px,8.3vw,40px);line-height:1.6;letter-spacing:.025em;text-shadow:none}
  body[class*="region-"] .hero-eyebrow{color:var(--gold);font-size:10px;letter-spacing:.2em;border:0;padding:0}
  body[class*="region-"] .hero-lead{font-size:14px;line-height:1.95;color:#eeeae0;max-width:none;margin-inline:0}
  body[class*="region-"] .hero-cta{justify-content:flex-start}
  body[class*="region-"] .hero-backdrop{top:auto;bottom:0;left:0;right:0;width:100%;height:47%;border:0;border-radius:0;clip-path:none}
  body[class*="region-"] .hero-backdrop img{object-position:center 55%}
  body[class*="region-"] .hero-shade{inset:0;background:linear-gradient(180deg,var(--ink) 0%,var(--ink) 43%,transparent 68%,#0003 100%)}
  body[class*="region-"] .hero-art{top:auto;left:auto;right:20px;bottom:38px;width:32%;height:112px;border:5px solid var(--paper);padding:0;outline:none;border-radius:0;clip-path:none;transform:none;box-shadow:0 8px 30px #0003}
  body[class*="region-"] .hero-region-name{left:18px;right:auto;top:auto;bottom:9px;font-size:clamp(42px,13vw,84px);line-height:1;letter-spacing:.035em;color:#fff;opacity:.32;transform:none;text-align:left}
  body[class*="region-"] .hero-rail{top:auto;bottom:0;left:0;right:0;width:auto;transform:none;border:0;border-top:1px solid #ffffff50}
  body[class*="region-"] .hero-counter{top:auto;left:22px;right:auto;bottom:70px;color:#fff}
  body[class*="region-"] .hero-scroll{color:#fff;bottom:28px}
  body[class*="region-"] .story-grid{display:grid;grid-template-columns:1fr;gap:34px;background:transparent}
  body[class*="region-"] .story-card{display:block;grid-row:auto;padding:0;margin:0;max-width:none}
  body[class*="region-"] .story-card img{height:280px;aspect-ratio:auto;border-radius:0}
  body[class*="region-"] .service-section{border-radius:0}
  /* Keep differences visible at phone width: arch, diagonal, inset frame and portrait. */
  body.region-sawaraku .hero-backdrop{left:20px;width:calc(100% - 20px);border-radius:110px 0 0 0}
  body.region-Jonanku .hero-backdrop{left:22px;right:22px;width:calc(100% - 44px);border-radius:140px 140px 0 0;height:44%}
  body.region-minamiku .hero-backdrop{clip-path:polygon(9% 0,100% 0,100% 100%,0 100%,0 18%)}
  body.region-hakataku .hero-backdrop{left:16px;right:16px;bottom:16px;width:calc(100% - 32px);height:44%;border:1px solid #c3a57488}
  body.region-hakataku .hero-art{bottom:50px;right:32px}
  body.region-Kasuga-shi .hero-backdrop{height:43%;border-radius:160px 160px 0 0;left:18px;width:calc(100% - 36px)}
  body.region-Kasuga-shi .hero-art{border-radius:50%;width:112px;height:112px}
  body.region-itoshima-shi .hero-backdrop{height:46%;clip-path:polygon(0 8%,100% 0,100% 100%,0 100%)}
  body.region-Onojo-shi .hero-backdrop{left:22px;width:calc(100% - 44px);border-radius:0 0 110px 0;height:45%}
  body.region-Tsukushino-shi .hero-backdrop{clip-path:polygon(0 0,90% 0,100% 74%,85% 100%,0 100%)}
  body.region-Dazaifu-shi .hero-backdrop{left:38px;right:38px;width:calc(100% - 76px);height:46%;border-radius:160px 160px 0 0}
  body.region-Kasuya-gun .hero-backdrop{width:88%;clip-path:polygon(0 0,100% 0,88% 100%,0 100%)}
  body.region-nakagawa-cho .hero-backdrop{left:18px;width:calc(100% - 18px);clip-path:polygon(0 0,100% 0,100% 100%,6% 100%)}
}
@media (max-width:359px){
  body[class*="region-"] .hero,body[class*="region-"] .hero-inner{min-height:920px}
  body[class*="region-"] .hero-inner{width:calc(100% - 36px);padding-top:32px}
  body[class*="region-"] .hero h1{font-size:28px;letter-spacing:0}
  body[class*="region-"] .hero-lead{font-size:13px}
  body[class*="region-"] .hero-backdrop{height:43%}
  body[class*="region-"] .hero-art{height:95px}
}
@media (prefers-reduced-motion:reduce){
  body[class*="region-"] .hero-backdrop img,body[class*="region-"] .hero-art{animation:none!important;transition:none!important;transform:none!important}
}

/* Integration corrections against base.css: contrast, intrinsic height and real photo captions. */
body[class*="region-"] .hero-inner{height:100%}
.region-minamiku .hero-rail{transform:none}
.hero .image-note{padding:4px 8px;background:#092c31c7;color:#fff4dc;border:1px solid #d9c89a40;text-shadow:none;line-height:1.6}

/* Seven light desktop compositions must not inherit white location/telephone text. */
@media (min-width:681px){
  :is(.region-sawaraku,.region-Jonanku,.region-chuuouku,.region-itoshima-shi,.region-Kasuga-shi,.region-Onojo-shi,.region-Tsukushino-shi) .hero-location,
  :is(.region-sawaraku,.region-Jonanku,.region-chuuouku,.region-itoshima-shi,.region-Kasuga-shi,.region-Onojo-shi,.region-Tsukushino-shi) .hero-phone{color:var(--ink)}
  :is(.region-sawaraku,.region-Jonanku,.region-chuuouku,.region-itoshima-shi,.region-Kasuga-shi,.region-Onojo-shi,.region-Tsukushino-shi) .hero h1{text-shadow:none}
  :is(.region-sawaraku,.region-Jonanku,.region-chuuouku,.region-Kasuga-shi,.region-Onojo-shi,.region-Tsukushino-shi) .hero-rail{color:var(--ink)}
}

/* Dark variants override only the muted text and figures, preserving the gold labels. */
:is(.region-sawaraku,.region-itoshima-shi) .service-section .service-copy>p:last-child,
:is(.region-sawaraku,.region-itoshima-shi) .service-section .service-note,
:is(.region-sawaraku,.region-itoshima-shi) .service-section .section-heading>p{color:#e1e3d7}
:is(.region-sawaraku,.region-itoshima-shi) .service-section .fee-orbit strong{color:#fbf3df}
:is(.region-sawaraku,.region-itoshima-shi) .service-section .fee-orbit{border-color:#ddc59077;background:#ffffff07}
:is(.region-sawaraku,.region-itoshima-shi) .service-section .fee-orbit small{color:#ece7d8}
:is(.region-Jonanku,.region-chuuouku,.region-hakataku,.region-Onojo-shi,.region-Tsukushino-shi,.region-Kasuya-gun) .process-section .process-intro p,
:is(.region-Jonanku,.region-chuuouku,.region-hakataku,.region-Onojo-shi,.region-Tsukushino-shi,.region-Kasuya-gun) .process-section .process-list p,
:is(.region-Jonanku,.region-chuuouku,.region-hakataku,.region-Onojo-shi,.region-Tsukushino-shi,.region-Kasuya-gun) .process-section .section-heading>p{color:#e2dfd4}
:is(.region-Jonanku,.region-chuuouku,.region-hakataku,.region-Onojo-shi,.region-Tsukushino-shi,.region-Kasuya-gun) .process-section .process-list li{border-bottom-color:#ddc59040}

/* Single-case DOM in base.css is a two-column card; these two regions use a photo essay. */
.region-Higashiku .story-grid.single .story-card,
.region-itoshima-shi .story-grid.single .story-card{display:block}

/* Keep the actual-photo source caption outside the crop. Decorative windows do not clip it. */
.hero .hero-art:has(.hero-detail-photo){overflow:visible;clip-path:none}
.hero .hero-art .hero-detail-photo{border-radius:inherit}
.hero .hero-art figcaption{position:absolute;left:0;right:0;top:calc(100% + 8px);bottom:auto;font-size:9px;line-height:1.65;text-align:right;color:#f2e6cf;letter-spacing:.015em;text-shadow:0 1px 8px #0008}
.hero .hero-art figcaption a{pointer-events:auto;text-decoration:underline;text-underline-offset:3px}
@media (min-width:681px){
  :is(.region-sawaraku,.region-Jonanku,.region-chuuouku,.region-Kasuga-shi,.region-Onojo-shi,.region-Tsukushino-shi) .hero-art figcaption{color:var(--ink);text-shadow:none}
  .region-itoshima-shi .hero-art figcaption{color:var(--ink);text-shadow:none}
}

/* These three slots carry the original gold vehicle sequence, not a photograph frame. */
:is(.region-nishiku,.region-minamiku,.region-Higashiku) .hero-art{
  left:auto;right:3%;top:auto;bottom:77px;width:50%;height:auto;
  border:0;outline:0;padding:0;border-radius:0;clip-path:none;overflow:visible;
  background:transparent;box-shadow:none;transform:none
}
:is(.region-nishiku,.region-minamiku,.region-Higashiku) .hero-art .sai-motion{
  position:relative;display:block;width:100%;height:auto;aspect-ratio:5/2;margin:0
}

/* Content determines phone hero height. The fixed photo space starts below all copy/CTAs. */
@media (max-width:680px){
  body[class*="region-"] .hero{height:auto;min-height:850px;max-height:none}
  body[class*="region-"] .hero-inner{height:auto;min-height:850px;padding:44px 0 410px}
  body[class*="region-"] .hero-backdrop{height:360px}
  body[class*="region-"] .hero-location,
  body[class*="region-"] .hero-phone{color:#f6f0e2}
  body[class*="region-"] .hero-shade{background:linear-gradient(0deg,#061e2033 0,transparent 180px,var(--ink) 390px)}
  body[class*="region-"] .hero-art{bottom:90px}
  body[class*="region-"] .hero-rail{bottom:22px;left:22px;right:22px;border:0;color:#eee7d5}
  body[class*="region-"] .hero-region-name{bottom:70px;opacity:.2}
  body[class*="region-"] .hero-scroll:before{height:26px}
  body[class*="region-"] .hero-art figcaption{font-size:8px;top:calc(100% + 6px);color:#f6efdf;text-shadow:0 1px 8px #000}
  .hero .image-note{right:12px;top:12px;font-size:8px;max-width:42%}
  body.region-nishiku .hero-art,
  body.region-minamiku .hero-art,
  body.region-Higashiku .hero-art{width:88%;height:auto;bottom:73px;right:2%;left:auto;top:auto;border:0;padding:0;background:transparent;box-shadow:none;outline:0;clip-path:none;border-radius:0}
  body.region-Higashiku .story-grid.single .story-card,
  body.region-itoshima-shi .story-grid.single .story-card{display:block}
}
@media (max-width:359px){
  body[class*="region-"] .hero{min-height:900px}
  body[class*="region-"] .hero-inner{min-height:900px;padding:38px 0 375px}
  body[class*="region-"] .hero-backdrop{height:320px}
}

/* Mobile art direction: a compact first read, followed immediately by the photo.
   Eleven shaped compositions use real grid rows rather than a large padding spacer.
   The three vehicle-animation heroes retain their full-bleed photographic impact. */
@media (max-width:680px){
  body[class*="region-"] .hero{
    display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 410px;
    height:auto;min-height:810px;max-height:none
  }
  body[class*="region-"] .hero-inner{
    grid-column:1;grid-row:1;width:calc(100% - 44px);height:auto;min-height:0;
    padding:36px 0 28px;align-items:flex-start;align-self:stretch
  }
  body[class*="region-"] .hero-copy{width:100%;min-width:0;padding:0}
  body[class*="region-"] .hero-eyebrow{
    font-size:7.5px;line-height:1.45;letter-spacing:.13em;gap:8px;margin-bottom:13px
  }
  body[class*="region-"] .hero-eyebrow:before{width:21px;flex:none}
  body[class*="region-"] .hero-location{font-size:9px;line-height:1.65;letter-spacing:.07em;margin-bottom:10px}
  body[class*="region-"] .hero h1{
    font-size:clamp(28px,7.8vw,34px);line-height:1.62;letter-spacing:.01em;overflow-wrap:normal
  }
  body[class*="region-"] .hero h1 span{max-width:100%;overflow-wrap:anywhere}
  body[class*="region-"] .hero-lead{
    font-size:12px;line-height:1.9;margin-top:15px;max-width:530px
  }
  body[class*="region-"] .hero-cta{
    display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);
    gap:12px;align-items:center;margin-top:20px;max-width:410px
  }
  body[class*="region-"] .hero-cta .btn{
    min-width:0;min-height:51px;font-size:10.5px;padding:11px 12px;gap:8px;letter-spacing:0
  }
  body[class*="region-"] .hero-cta .btn .icon{width:17px;height:17px;flex:none}
  body[class*="region-"] .hero-phone{display:block;min-width:0;margin:0}
  body[class*="region-"] .hero-phone small{font-size:7px;line-height:1.55;letter-spacing:0}
  body[class*="region-"] .hero-phone strong{font-size:20px;line-height:1.5;letter-spacing:0;white-space:nowrap}
  body[class*="region-"] .hero-backdrop{
    position:relative;grid-column:1;grid-row:2;top:auto;bottom:auto;height:410px;align-self:stretch
  }
  body[class*="region-"] .hero-shade{
    background:linear-gradient(0deg,#061e2038 0,transparent 225px,var(--ink) 422px)
  }
  body[class*="region-"] .hero-art{bottom:86px}
  body[class*="region-"] .hero-rail{bottom:22px}
  body[class*="region-"] .hero-region-name{bottom:68px}
  body[class*="region-"] .image-note{top:10px;right:12px;font-size:7px;padding:3px 6px}

  body.region-nishiku .hero,
  body.region-minamiku .hero,
  body.region-Higashiku .hero{display:block;min-height:810px}
  body.region-nishiku .hero-inner,
  body.region-minamiku .hero-inner,
  body.region-Higashiku .hero-inner{min-height:810px;padding:36px 0 240px}
  body.region-nishiku .hero-backdrop,
  body.region-minamiku .hero-backdrop,
  body.region-Higashiku .hero-backdrop{
    position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;clip-path:none
  }
  body.region-nishiku .hero-backdrop img{object-position:65% center}
  body.region-minamiku .hero-backdrop img{object-position:68% center}
  body.region-Higashiku .hero-backdrop img{object-position:64% center}
  body.region-nishiku .hero-shade,
  body.region-minamiku .hero-shade,
  body.region-Higashiku .hero-shade{
    background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 95%,transparent) 0%,color-mix(in srgb,var(--ink) 80%,transparent) 26%,color-mix(in srgb,var(--ink) 43%,transparent) 48%,color-mix(in srgb,var(--ink) 8%,transparent) 74%,color-mix(in srgb,var(--ink) 34%,transparent) 100%),linear-gradient(90deg,#051b203d,transparent 80%)
  }
  body.region-nishiku .hero h1,
  body.region-minamiku .hero h1,
  body.region-Higashiku .hero h1{text-shadow:0 2px 18px #0006}
  body.region-nishiku .hero-art,
  body.region-minamiku .hero-art,
  body.region-Higashiku .hero-art{width:92%;height:auto;right:1%;bottom:76px}
}
@media (max-width:359px){
  body[class*="region-"] .hero{min-height:815px;grid-template-rows:auto 385px}
  body[class*="region-"] .hero-inner{width:calc(100% - 36px);min-height:0;padding:31px 0 24px}
  body[class*="region-"] .hero h1{font-size:27px;line-height:1.6;letter-spacing:0}
  body[class*="region-"] .hero-lead{font-size:11.5px;line-height:1.85}
  body[class*="region-"] .hero-cta{gap:9px}
  body[class*="region-"] .hero-cta .btn{font-size:10px;padding:11px 10px;gap:6px}
  body[class*="region-"] .hero-cta .btn .icon{width:15px;height:15px}
  body[class*="region-"] .hero-backdrop{height:385px}
  body.region-nishiku .hero,
  body.region-minamiku .hero,
  body.region-Higashiku .hero{min-height:815px}
  body.region-nishiku .hero-inner,
  body.region-minamiku .hero-inner,
  body.region-Higashiku .hero-inner{min-height:815px;padding:31px 0 235px}
  body.region-nishiku .hero-backdrop,
  body.region-minamiku .hero-backdrop,
  body.region-Higashiku .hero-backdrop{height:100%}
}
