/* iette’ie design system: warm paper, leaf green, sky blue, generous reading space. */
:root{--ink:#33291f;--muted:#716c62;--primary:#2477bb;--primary-dark:#155c92;--leaf:#678c56;--accent:#e9b94d;--paper:#fffdf7;--cream:#fbf6e8;--white:#fff;--line:#eadfc8;--shadow:0 12px 36px rgba(66,54,31,.09);--radius:22px;--radius-sm:13px;--container:1160px;--body:clamp(16px,1.05vw,18px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:var(--body);line-height:1.8}img{max-width:100%;height:auto;vertical-align:middle}a{color:var(--primary-dark);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:#b06f19}button,input,textarea,select{font:inherit}button,a,input{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #e6a82f;outline-offset:3px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-999px;top:8px;z-index:999;background:#fff;padding:10px}.skip-link:focus{left:8px}.site-header{position:relative;z-index:10;background:rgba(255,253,247,.97);border-bottom:1px solid rgba(234,223,200,.7)}.header-inner{max-width:var(--container);min-height:82px;margin:auto;padding:10px 22px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#e5f0db;color:var(--leaf);font-size:32px;line-height:1}.brand strong{display:block;font-family:Georgia,serif;font-size:27px;line-height:1.1;letter-spacing:.04em}.brand small{display:block;font-size:11px;letter-spacing:.18em;text-align:center}.custom-logo{max-height:64px;width:auto}.primary-nav{margin-left:auto}.primary-nav ul,.footer-nav ul{display:flex;align-items:center;gap:clamp(12px,2vw,30px);list-style:none;margin:0;padding:0}.primary-nav a{font-size:15px;font-weight:700;color:var(--ink);text-decoration:none}.primary-nav a:hover{color:var(--primary)}.menu-toggle{display:none}.search-toggle{border:0;background:none;color:var(--ink);font-size:32px;line-height:1;cursor:pointer;width:44px;height:44px}.header-search{max-width:var(--container);margin:auto;padding:0 22px 15px}.search-form{display:flex;align-items:stretch;width:100%;max-width:620px;background:#fff;border:1px solid var(--line);border-radius:999px;overflow:hidden;box-shadow:0 3px 15px rgba(60,51,34,.06)}.search-field{min-width:0;flex:1;border:0;background:transparent;padding:13px 20px;color:var(--ink)}.search-submit{width:54px;border:0;background:var(--primary);color:#fff;font-size:26px;cursor:pointer}.hero{position:relative;min-height:520px;overflow:hidden;background:#eaf5fb}.hero-art{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,253,247,.98) 0%,rgba(255,253,247,.90) 31%,rgba(255,253,247,.16) 59%,rgba(255,253,247,0) 100%),url('../images/hero-neighborhood.webp');background-size:cover;background-position:center}.hero-inner{position:relative;max-width:var(--container);margin:auto;padding:74px 22px 55px;z-index:1}.eyebrow{margin:0 0 7px;color:var(--leaf);font-size:12px;font-weight:800;letter-spacing:.16em}.hero h1{max-width:670px;margin:0 0 17px;font-size:clamp(30px,4.2vw,54px);line-height:1.45;letter-spacing:.015em}.hero h1 span{position:relative;display:inline;background:linear-gradient(transparent 75%,rgba(237,194,84,.53) 75%)}.hero-copy{max-width:490px;margin:0 0 22px;font-size:clamp(15px,1.4vw,18px);font-weight:550;line-height:1.9}.hero-search .search-form{max-width:510px}.keyword-list{max-width:570px;margin-top:18px}.keyword-list strong{display:block;margin-bottom:7px;font-size:13px}.keyword-list>div{display:flex;flex-wrap:wrap;gap:8px}.keyword-list a{padding:5px 14px;border:1px solid #e7dab9;border-radius:99px;background:rgba(255,255,255,.9);color:var(--ink);font-size:13px;text-decoration:none}.keyword-list a:hover{border-color:var(--primary);color:var(--primary)}.hero-leaf{position:absolute;color:#8aa96f;opacity:.4;font-size:40px}.leaf-one{right:4%;top:15%}.leaf-two{right:47%;bottom:10%}.section{max-width:var(--container);margin:0 auto;padding:72px 22px}.section-heading{text-align:center;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:2px}.section-heading h2,.heading-row h2{margin:0;font-size:clamp(25px,3vw,34px);line-height:1.4}.section-heading>p:last-child{margin:8px 0 0;color:var(--muted);font-size:15px}.featured-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:20px;align-items:stretch}.featured-main,.featured-side{padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.featured-main .card-image{display:block;height:300px;overflow:hidden;border-radius:15px}.featured-main .card-image img{width:100%;height:100%;object-fit:cover}.featured-main .card-body{padding:16px 3px 0}.featured-main h3{font-size:clamp(22px,2.5vw,30px)}.feature-excerpt{margin:8px 3px 10px;color:var(--muted);font-size:15px}.text-link{display:inline-block;font-weight:750;text-decoration:none}.featured-side{display:grid;gap:14px;align-content:stretch}.post-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;transition:transform .2s ease,box-shadow .2s ease}.post-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-image{display:block;aspect-ratio:1.6/1;overflow:hidden;background:#f5edda}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.post-card:hover .card-image img{transform:scale(1.035)}.image-fallback{display:grid;place-items:center;width:100%;height:100%;color:#94aa73;font-size:56px;background:linear-gradient(135deg,#f8efd7,#e9f2e0)}.card-body{padding:13px 15px 16px}.category-pill{display:inline-flex;align-items:center;padding:3px 11px;border-radius:999px;background:#e7f2fa;color:#17699f;font-size:12px;font-weight:800;text-decoration:none}.card-body h3{margin:8px 0 7px;font-size:17px;line-height:1.55}.card-body h3 a{color:var(--ink);text-decoration:none}.card-body time{color:#817b70;font-size:12px}.compact-card{display:grid;grid-template-columns:38% 1fr;align-items:center}.compact-card .card-image{height:100%;min-height:140px;aspect-ratio:auto}.compact-card .card-body{padding:12px}.compact-card h3{font-size:16px}.category-section{padding-top:52px}.category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.category-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;padding:15px 8px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(160deg,#fff,#fffaf0);color:var(--ink);text-align:center;text-decoration:none;transition:transform .2s,border-color .2s}.category-card:hover{transform:translateY(-3px);border-color:#c6d7a9}.category-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:8px;border-radius:50%;background:#edf3e5;color:var(--leaf);font-size:23px;font-weight:800}.category-card strong{font-size:15px}.category-card small{color:var(--muted);font-size:12px}.center-link{display:block;width:max-content;margin:24px auto 0}.latest-section{padding-top:35px}.heading-row{display:flex;align-items:end;justify-content:space-between;text-align:left}.heading-row .text-link{font-size:14px}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.about-band{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:335px;background:linear-gradient(100deg,#eef5e6,#fff8e9)}.about-illustration{align-self:stretch;min-height:320px;background-image:url('../images/hero-neighborhood.webp');background-size:cover;background-position:70% 58%;mask-image:linear-gradient(90deg,#000 75%,transparent)}.about-copy{max-width:540px;padding:45px 45px 45px 10px}.about-copy h2{margin:0 0 13px;font-size:clamp(25px,3vw,36px)}.about-copy p:not(.eyebrow){line-height:1.95}.button{display:inline-block;padding:10px 22px;border:1px solid var(--primary);border-radius:999px;background:var(--primary);color:#fff;font-size:15px;font-weight:750;text-decoration:none}.button:hover{background:var(--primary-dark);color:#fff}.button-outline{background:transparent;color:var(--primary-dark)}.site-footer{background:#f4eedf;padding:42px 22px 16px}.footer-inner{display:grid;grid-template-columns:1fr 1.5fr auto;gap:30px;align-items:center;max-width:var(--container);margin:auto}.footer-brand p{font-size:13px;color:var(--muted)}.footer-nav ul{flex-wrap:wrap;gap:12px 20px}.footer-nav a{font-size:13px;color:var(--ink);text-decoration:none}.social-links{display:flex;gap:8px}.social-links a{padding:7px 10px;border:1px solid var(--line);border-radius:50px;font-size:12px;text-decoration:none}.copyright{max-width:var(--container);margin:25px auto 0;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);text-align:center;font-size:12px}.back-top{position:fixed;right:18px;bottom:18px;z-index:5;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.94);color:var(--primary-dark);text-decoration:none;font-size:20px;line-height:1}.back-top span{font-size:8px;font-weight:800}
/* Archive and reading layouts */
.page-shell{max-width:var(--container);margin:auto;padding:36px 22px 80px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-bottom:25px;color:var(--muted);font-size:13px}.breadcrumbs a{color:var(--muted)}.archive-heading{text-align:center;margin:30px auto 38px}.archive-heading h1{margin:0;font-size:clamp(27px,3.5vw,40px);line-height:1.45}.archive-heading>p:not(.eyebrow){color:var(--muted)}.archive-heading .search-form{margin:20px auto 0}.archive-description{max-width:760px;margin:12px auto;color:var(--muted)}.page-shell .post-grid{margin-bottom:35px}.pagination,.nav-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.page-numbers{display:grid;place-items:center;min-width:42px;min-height:42px;padding:4px 10px;border:1px solid var(--line);border-radius:50%;background:#fff;text-decoration:none}.page-numbers.current{background:var(--primary);color:#fff}.article-shell{max-width:1000px}.article{max-width:900px;margin:auto}.article-header{text-align:center;padding:15px 0 24px}.article-header h1{margin:14px auto 16px;font-size:clamp(29px,4vw,45px);line-height:1.5;letter-spacing:.01em}.article-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 20px;color:var(--muted);font-size:13px}.article-featured{max-width:900px;margin:0 auto 32px;border-radius:var(--radius);overflow:hidden}.article-featured img{display:block;width:100%;max-height:560px;object-fit:cover}.article-layout{display:grid;grid-template-columns:minmax(0,1fr);max-width:780px;margin:auto}.article-content{font-size:clamp(17px,1.15vw,19px);line-height:2.05;overflow-wrap:anywhere}.article-content p{margin:0 0 1.55em}.article-content h2{margin:2.2em 0 .75em;padding:.28em 0 .35em .65em;border-left:5px solid var(--leaf);border-bottom:1px solid var(--line);font-size:clamp(24px,2.7vw,31px);line-height:1.55}.article-content h3{margin:1.8em 0 .6em;padding-bottom:.35em;border-bottom:2px dotted #c5d5b2;font-size:clamp(20px,2.2vw,25px)}.article-content h4{font-size:19px}.article-content ul,.article-content ol{padding-left:1.5em;margin:0 0 1.6em}.article-content li{padding-left:.25em;margin:.35em 0}.article-content blockquote{margin:1.8em 0;padding:18px 24px;border-left:4px solid var(--accent);border-radius:0 14px 14px 0;background:#fbf5e8;color:#5c5144}.article-content figure{margin:1.8em 0}.article-content figcaption{color:var(--muted);font-size:.82em;text-align:center}.article-content table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.9em}.article-content th,.article-content td{padding:10px;border:1px solid #dcd2bd;text-align:left}.article-content th{background:#f3efdf}.article-content pre{max-width:100%;overflow:auto;padding:18px;border-radius:14px;background:#242b34;color:#f8f5eb;font-size:.85em}.article-content code{padding:.12em .35em;border-radius:5px;background:#f2eedf}.article-content pre code{padding:0;background:none}.article-content iframe{max-width:100%}.article-content .wp-block-button__link{border-radius:999px}.article-content .wp-block-gallery{margin:1.6em 0}.article-content .alignwide{max-width:min(100% + 120px,900px);margin-left:50%;transform:translateX(-50%)}.article-content .alignfull{width:100vw;max-width:100vw;margin-left:50%;transform:translateX(-50%)}.article-content .wp-block-image img{border-radius:12px}.toc{margin:25px 0 35px;padding:18px 22px;border:1px solid var(--line);border-radius:16px;background:#fffaf0}.toc summary{font-weight:800;cursor:pointer}.toc ol{margin:12px 0 0;padding-left:1.35em;font-size:.9em}.toc li{margin:.25em 0}.toc .toc-level-3{margin-left:1.1em}.article-taxonomy{margin-top:30px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.article-taxonomy a{margin-right:8px}.tag-list{margin-top:9px}.share-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:18px 0 30px;font-size:13px}.share-row a,.share-row button{padding:7px 13px;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--ink);text-decoration:none;cursor:pointer}.author-box{display:flex;gap:15px;align-items:center;margin:28px 0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.author-box h2{margin:0;font-size:18px}.author-box p{margin:4px 0;font-size:14px}.author-avatar img{border-radius:50%}.post-navigation{display:flex;justify-content:space-between;gap:12px;margin:30px 0}.post-navigation a{display:block;max-width:48%;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;text-decoration:none;font-size:14px}.related-posts{margin:50px 0}.related-posts h2,.comments-area h2{font-size:25px}.related-posts .post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.comments-area{max-width:780px;margin:50px auto}.comment-list{padding-left:20px}.comment-body{padding:12px;border-bottom:1px solid var(--line)}.comment-form input,.comment-form textarea{max-width:100%;padding:10px;border:1px solid var(--line);border-radius:8px}.comment-form .submit{padding:10px 18px;border:0;border-radius:999px;background:var(--primary);color:#fff;cursor:pointer}.empty-state{max-width:680px;margin:80px auto;padding:40px 24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;text-align:center}.empty-state h1,.empty-state h2{font-size:clamp(27px,4vw,38px)}.empty-state .search-form{margin:22px auto}.not-found .button{margin-top:18px}.result-count{color:var(--muted);font-size:14px}.widget{margin:24px 0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.widget-title{margin:0 0 10px;font-size:19px}
@media(max-width:900px){.header-inner{gap:12px}.primary-nav{order:5}.primary-nav ul{gap:12px}.primary-nav a{font-size:13px}.hero{min-height:495px}.hero-inner{padding-top:62px}.featured-grid{grid-template-columns:1fr}.featured-side{grid-template-columns:1fr 1fr}.compact-card{grid-template-columns:1fr}.compact-card .card-image{height:auto;min-height:120px;aspect-ratio:1.6}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-inner{grid-template-columns:1fr 1fr}.social-links{grid-column:1/-1}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){:root{--radius:18px}.header-inner{min-height:70px;padding:8px 16px;justify-content:space-between}.brand-mark{width:40px;height:40px;font-size:27px}.brand strong{font-size:23px}.brand small{font-size:9px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:9px;border:1px solid var(--line);border-radius:12px;background:#fff}.menu-toggle>span:not(.screen-reader-text){width:100%;height:2px;background:var(--ink)}.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:9px 16px 17px;border-bottom:1px solid var(--line);background:var(--paper);box-shadow:0 12px 20px rgba(51,41,31,.08)}.primary-nav.is-open{display:block}.primary-nav ul{display:grid;gap:0}.primary-nav li a{display:block;padding:12px 7px;border-bottom:1px solid #eee6d5;font-size:16px}.search-toggle{width:40px;height:40px;font-size:30px}.hero{min-height:610px}.hero-art{background-image:linear-gradient(180deg,rgba(255,253,247,.96) 0%,rgba(255,253,247,.9) 44%,rgba(255,253,247,.05) 78%),url('../images/hero-neighborhood.webp');background-size:auto 100%,auto 58%;background-position:center,62% bottom;background-repeat:no-repeat}.hero-inner{padding:42px 20px 250px}.hero h1{font-size:clamp(29px,8vw,39px)}.hero-copy{max-width:100%;font-size:15px}.hero-search .search-form{max-width:100%}.search-field{padding:12px 15px;font-size:15px}.keyword-list{margin-top:13px}.section{padding:50px 17px}.section-heading{margin-bottom:22px}.section-heading h2,.heading-row h2{font-size:26px}.featured-main,.featured-side{padding:12px;border-radius:18px}.featured-main .card-image{height:auto;aspect-ratio:1.48}.featured-main h3{font-size:21px}.featured-side{grid-template-columns:1fr}.compact-card{grid-template-columns:37% 1fr}.compact-card .card-image{height:100%;min-height:112px;aspect-ratio:auto}.compact-card .card-body{padding:10px}.compact-card h3{font-size:15px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.category-card{min-height:128px}.category-icon{width:45px;height:45px;font-size:20px}.latest-section{padding-top:20px}.heading-row{align-items:start;gap:10px}.heading-row .text-link{max-width:44%;font-size:12px;text-align:right}.post-grid{grid-template-columns:1fr 1fr;gap:11px}.card-body{padding:10px}.card-body h3{font-size:14px}.card-body time{font-size:11px}.category-pill{font-size:10px;padding:2px 8px}.about-band{grid-template-columns:1fr}.about-illustration{min-height:205px;max-height:240px;background-position:65% 57%;mask-image:linear-gradient(180deg,#000 75%,transparent)}.about-copy{padding:8px 22px 34px}.about-copy h2{font-size:27px}.site-footer{padding:30px 18px 14px}.footer-inner{grid-template-columns:1fr;gap:16px}.footer-nav ul{gap:10px 14px}.social-links{grid-column:auto}.page-shell{padding:25px 17px 58px}.archive-heading{margin:20px auto 27px}.article-header{padding:4px 0 18px}.article-header h1{font-size:clamp(27px,7vw,36px)}.article-featured{margin-bottom:24px;border-radius:14px}.article-content{font-size:17px;line-height:1.95}.article-content h2{margin-top:1.9em;font-size:25px}.article-content h3{font-size:21px}.article-content .alignwide,.article-content .alignfull{width:100%;max-width:100%;margin-left:0;transform:none}.article-content table{display:block;overflow-x:auto;white-space:nowrap}.toc{padding:15px}.related-posts .post-grid{grid-template-columns:1fr 1fr;gap:10px}.related-posts h2,.comments-area h2{font-size:23px}.author-box{align-items:flex-start;padding:14px}.post-navigation a{font-size:12px}.empty-state{margin:44px auto;padding:30px 16px}}
@media(max-width:380px){.post-grid,.related-posts .post-grid{grid-template-columns:1fr}.post-card:not(.compact-card) .card-image{aspect-ratio:1.75}.hero{min-height:635px}.hero-inner{padding-bottom:255px}.hero h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
