/*
Theme Name: HARUÉN Walk
Description: 旅とお散歩のための、白とベージュのブロックテーマ。
Version: 1.1.2
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: haruen-walk
*/
:root{--background:#fffefa;--foreground:#373730;--primary:#665d4d;--primary-foreground:#fff;--border:#dedbd3;--radius:0;--font-sans:Arial,Helvetica,sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--background);color:var(--foreground);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid #78694e;outline-offset:8px}a:hover{opacity:.65}.header{height:110px;padding:0 6%;display:flex;align-items:center;justify-content:space-between}.logo{font-family:Arial,sans-serif;font-size:27px;letter-spacing:5px;font-weight:500}nav{display:flex;gap:40px;font-size:14px}nav span{margin-left:14px}.hero{position:relative;padding:0 3%}.hero-copy{padding:65px 3.2% 72px;width:51%;min-height:545px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:13px;letter-spacing:.14em;margin:0 0 30px}h1{font-size:clamp(1.8rem,3vw,3.1rem);font-weight:400;line-height:1.8;letter-spacing:.1em;margin:0 0 25px}.lead,p{font-size:16px;line-height:2.2}.lead{color:#69685f;margin:0 0 35px}.text-link{font-size:14px;border-bottom:1px solid #a49a85;width:fit-content;padding:0 0 12px}.text-link span{margin-left:35px}.hero-photo{position:absolute;right:3%;top:0;width:46%;height:545px;background:#e9e5db;background-size:cover;background-position:center}.photo-caption{position:absolute;bottom:20px;left:20px;font-size:11px;letter-spacing:.13em;background:#fffefad9;padding:8px 12px}.hero-foot{display:flex;justify-content:space-between;margin:30px 3.2% 0;padding-bottom:30px;border-bottom:1px solid var(--border);font-size:11px;letter-spacing:.13em;color:#77766c}.section{padding:95px 6%}.section-label{font-size:12px;letter-spacing:.13em;display:flex;flex-direction:column;gap:14px;color:#777267}.section-label span+span{font-size:14px;letter-spacing:.04em;color:#45453f}.about{display:grid;grid-template-columns:1fr 1.8fr .6fr;gap:35px}.about h2{font-weight:400;font-size:30px;line-height:1.9;letter-spacing:.1em;margin:0 0 30px}.about p{color:#66665e;margin:0 0 23px}.side-note{writing-mode:vertical-rl;font-size:12px;letter-spacing:.2em;line-height:2.2;justify-self:end;color:#a29c8f}.moments{background:#f3f0e9;display:grid;grid-template-columns:1fr 1.2fr 1.2fr;gap:55px;padding-top:68px;padding-bottom:68px}.number{font-size:12px;color:#827764;letter-spacing:.12em}.moment h3{font-size:23px;font-weight:400;letter-spacing:.1em;margin:18px 0}.moment p{font-size:15px;color:#66665e;margin:0}.connect{text-align:center;padding-top:100px;padding-bottom:110px}.connect .eyebrow{font-size:12px;color:#8a816f;margin-bottom:20px}.connect h2{font-size:36px;line-height:1.8;letter-spacing:.12em;font-weight:400;margin:0 0 22px}.connect>p:not(.eyebrow){color:#77766d;font-size:14px}.tiktok{margin:35px auto 0;background:#e9e4d9;width:min(100%,440px);display:flex;justify-content:space-between;text-align:left;align-items:center;padding:23px 30px}.tiktok strong{display:block;font-size:20px;font-family:Arial,sans-serif;font-weight:500;letter-spacing:1px}.tiktok small{display:block;font-size:13px;margin-top:8px;color:#70685a}.tiktok>span+span{font-size:24px}footer{border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:38px 6%}footer .logo{font-size:22px}footer>span{font-size:12px;color:#77766d}footer small{font-size:12px;color:#77766d}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:#fff;color:#000;z-index:10}.skip:focus{top:15px}.image-note{font-size:11px;color:#7c766b;text-align:right;margin:8px 0 0;letter-spacing:.03em}
@media(min-width:1600px){main{max-width:1700px;margin:auto}}@media(max-width:760px){.header{height:88px;padding:0 6%}.logo{font-size:23px;letter-spacing:3px}nav{gap:20px;font-size:12px}nav a:first-child{display:none}.hero{padding:0 6%}.hero-copy{width:100%;padding:32px 0 42px;min-height:0}.eyebrow{font-size:12px;margin-bottom:24px}h1{font-size:26px;letter-spacing:.05em;margin-bottom:22px}.lead{font-size:14px;line-height:2.2;margin-bottom:26px}.hero-photo{position:relative;right:auto;width:100%;height:340px}.hero-foot{margin:24px 0 0;font-size:10px;padding-bottom:24px}.section{padding:60px 7%}.about{grid-template-columns:1fr;gap:34px}.section-label{flex-direction:row;justify-content:space-between;font-size:11px}.section-label span+span{font-size:13px}.about h2{font-size:25px}.about p{font-size:15px}.side-note{display:none}.moments{grid-template-columns:1fr;gap:34px}.moment+.moment{border-top:1px solid #dad5ca;padding-top:28px}.moment h3{font-size:22px;margin:12px 0}.connect h2{font-size:29px}.connect{padding-top:72px;padding-bottom:72px}footer{flex-wrap:wrap;padding:30px 7%}footer .logo{flex-basis:100%}footer>span{display:none}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.logo{display:flex;align-items:center;gap:14px}.logo img{width:64px;height:64px;object-fit:contain}.hero-photo{background:#f8f3ed;display:flex;align-items:center;justify-content:center}.hero-photo img{width:100%;height:100%;object-fit:contain}.walk-image{margin:0 6% 70px}.walk-image>img{display:block;width:100%;height:360px;object-fit:cover;object-position:center 60%}.walk-image figcaption{font-size:12px;color:#7c766b;margin-top:12px;text-align:right}footer .logo img{width:48px;height:48px}@media(max-width:760px){.logo{gap:10px}.logo img{width:48px;height:48px}.hero-photo{height:auto;aspect-ratio:1}.walk-image{margin:0 7% 45px}.walk-image>img{height:240px}.walk-image figcaption{font-size:12px}}

.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}.wp-block-group>*{margin-block-start:0}.hero-photo .wp-block-image{margin:0;width:100%;height:100%}.header .wp-block-navigation{font-size:14px}.header .wp-block-navigation a{display:initial}.article-content{max-width:960px;margin:auto;padding:70px 6%;min-height:50vh}.article-content img{max-width:100%;height:auto}.wp-block-image img{max-width:100%}.wp-block-navigation__responsive-container.is-menu-open{padding:30px}.hero .wp-block-image img{height:100%;object-fit:contain}h2,h3{font-weight:400}

.travel-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}.travel-gallery figure{margin:0}.travel-gallery img{width:100%;height:260px;object-fit:cover}@media(max-width:600px){.travel-gallery{grid-template-columns:1fr}}

.haruhi-socials{max-width:440px;margin:20px auto 0;text-align:left}.haruhi-socials p{margin:0;border-bottom:1px solid #dedbd3}.haruhi-socials a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 4px;font-size:16px}.haruhi-socials span{font-size:13px;color:#70685a}.article-content .haruhi-socials{margin:24px 0 0}@media(max-width:400px){.haruhi-socials a{flex-wrap:wrap;gap:4px}}

.sticker-product{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.sticker-product figure{margin:0;background:#f3f0e9;padding:20px}.sticker-product img{display:block;width:100%;height:auto}.sticker-description h2{font-size:24px;line-height:1.7}.sticker-link a{display:inline-block;background:#e9e4d9;padding:14px 22px;font-size:16px}@media(max-width:700px){.sticker-product{grid-template-columns:1fr}.sticker-product figure{max-width:400px}}

.creator-tiktok{display:flex;align-items:center;gap:24px;width:100%;max-width:600px;min-height:154px;padding:28px 32px;margin:32px 0;background:#373730;color:#fffefa;border-radius:12px;box-shadow:0 6px 18px #37373016;transition:background .15s}.creator-tiktok:hover{opacity:1;background:#514d43}.creator-tiktok:focus-visible{outline:3px solid #8b7754;outline-offset:5px}.creator-tiktok-icon{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;background:#e9e4d9;color:#373730;border-radius:50%;font-size:23px}.creator-tiktok-text{display:flex;flex-direction:column;gap:4px}.creator-tiktok-text strong{font-size:24px;line-height:1.5;font-weight:600}.creator-tiktok-text>span{font-size:16px;letter-spacing:.04em}.creator-tiktok-text small{font-size:14px;color:#dfd9cd}.creator-tiktok-arrow{margin-left:auto;font-size:30px}@media(max-width:600px){.creator-tiktok{gap:14px;padding:24px 18px;min-height:144px}.creator-tiktok-icon{width:42px;height:42px;font-size:18px}.creator-tiktok-text strong{font-size:20px}.creator-tiktok-arrow{font-size:24px}}

/* Mobile home: show brand artwork before introductory copy. */
@media(max-width:760px){.hero{display:flex;flex-direction:column}.hero>.hero-photo{order:-1}.hero>.hero-copy{order:0}.hero>.hero-foot{order:1}}

/* Edge-to-edge brand image on mobile, keeping copy gutters. */
@media(max-width:760px){.hero{padding-left:0;padding-right:0}.hero>.hero-photo{width:100%;margin-left:0;margin-right:0}.hero>.hero-copy{width:auto;margin-left:6%;margin-right:6%}.hero>.hero-foot{margin-left:6%;margin-right:6%}}

/* Immersive landscape hero. */
main:has(>.cinematic-hero){max-width:none}
.hero.cinematic-hero{display:flex;flex-direction:column;justify-content:flex-end;position:relative;isolation:isolate;margin:0;padding:0;min-height:calc(100svh - 110px);overflow:hidden;background:#263d39;color:#fff}
.cinematic-hero>.hero-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;margin:0;z-index:-2;background:#263d39}
.cinematic-hero>.hero-photo figure{width:100%;height:100%;margin:0}
.cinematic-hero>.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}

.cinematic-hero>.hero-copy{order:0;width:auto;min-height:0;margin:0;padding:130px 6% 38px;display:block}
.cinematic-hero .eyebrow{margin-bottom:20px;color:#fff}.cinematic-hero h1{font-size:clamp(28px,3.5vw,52px);line-height:1.6;margin-bottom:18px;text-shadow:0 1px 12px #0003}
.cinematic-hero .lead{color:#fff;margin-bottom:24px}.cinematic-hero .text-link{display:inline-block;color:#fff;border-color:#fff9}
.cinematic-hero>.hero-foot{order:1;margin:0 6%;padding:20px 0 24px;color:#fff;border-color:#ffffff60}
.wp-block-navigation__responsive-container-open{width:44px;height:44px;align-items:center;justify-content:center}
.wp-block-navigation__responsive-container-open svg{display:none}
.wp-block-navigation__responsive-container-open:before{content:"";display:block;width:26px;height:20px;background:linear-gradient(currentColor,currentColor) top/100% 2px no-repeat,linear-gradient(currentColor,currentColor) center/100% 2px no-repeat,linear-gradient(currentColor,currentColor) bottom/100% 2px no-repeat}
@media(max-width:760px){.hero.cinematic-hero{min-height:calc(100svh - 88px)}.cinematic-hero>.hero-copy{padding:140px 7% 28px;margin:0;width:100%}.cinematic-hero h1{font-size:28px;letter-spacing:.04em}.cinematic-hero .lead{font-size:14px}.cinematic-hero>.hero-foot{margin:0 7%}.cinematic-hero>.hero-photo img{object-position:42% center}}

.cinematic-hero>.hero-photo figure{position:absolute;inset:0;opacity:0;transition:opacity 2s ease-in-out;pointer-events:none}.cinematic-hero>.hero-photo figure:first-child{opacity:1}.cinematic-hero.slideshow-ready>.hero-photo figure{opacity:0}.cinematic-hero.slideshow-ready>.hero-photo figure.is-current{opacity:1}.cinematic-hero>.hero-foot{align-items:center;gap:16px;flex-wrap:wrap}@media(prefers-reduced-motion:reduce){.cinematic-hero>.hero-photo figure{transition:none}}
