:root{--u-dark:#444444;--u-ink:#303030;--u-accent:#454545;--u-gray:#666666;--u-line:#dddddd;--u-soft:#f5f5f5;--u-width:1180px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#fff;color:var(--u-ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}img,video,iframe{max-width:100%;height:auto}figure{margin:0}a{color:var(--u-dark);text-underline-offset:3px}a:hover{color:#444444}h1,h2,h3,h4{line-height:1.42;color:#303030;overflow-wrap:anywhere}h1{font-size:clamp(1.7rem,2.5vw,2.6rem)}h2{font-size:clamp(1.45rem,2.2vw,2rem)}h3{font-size:clamp(1.22rem,1.7vw,1.5rem)}p{margin-top:0;margin-bottom:1.2em}.container-wide{width:min(calc(100% - 40px),var(--u-width));margin-inline:auto}.content-shell{min-height:60vh}.page-shell{padding-top:42px;padding-bottom:72px}.front-content{padding:22px 0 70px}.front-content .content-shell{width:min(calc(100% - 40px),var(--u-width));margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed!important;z-index:99999;top:8px;left:8px;width:auto;height:auto;padding:8px 12px;clip:auto;background:#fff;color:#000}
.site-header{position:sticky;top:0;z-index:900;background:#fff;border-bottom:1px solid var(--u-line);box-shadow:0 3px 16px rgba(0,0,0,.05)}body.admin-bar .site-header{top:32px}.site-header__inner{min-height:77px;display:flex;align-items:center;gap:18px}.site-brand{display:inline-flex;align-items:center;flex:none;text-decoration:none}.site-brand__logo{width:155px;max-height:58px;object-fit:contain}.site-brand__text{font-size:1.2rem;font-weight:800}.site-nav{margin-left:auto}.nav-links{display:flex;align-items:center;gap:15px;list-style:none;margin:0;padding:0}.nav-links li{margin:0}.nav-links a{font-weight:700;font-size:.82rem;color:#444444;text-decoration:none;white-space:nowrap}.nav-links a:hover{text-decoration:underline}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;padding:.85em 1.35em;border:0;border-radius:6px;background:var(--u-accent);color:#fff!important;text-decoration:none;font-weight:700;line-height:1.4;cursor:pointer;transition:filter .2s}.button:hover,.wp-block-button__link:hover{filter:brightness(.9);color:#fff}.button--small{font-size:.8rem;white-space:nowrap;padding:.76em .95em}.button--full{width:100%}.mobile-nav{display:none}.site-footer{padding:48px 0 18px;color:#444444;background:#ededed}.site-footer a{color:#444444}.site-footer h2{color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:40px}.footer-title{font-size:1.15rem}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:10px}.copyright{text-align:center;margin:20px 0 0;padding:18px;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem;color:#666666}
.entry-content{overflow-wrap:anywhere}.entry-content>*:not(.alignwide):not(.alignfull){max-width:100%}.entry-content>.wp-block-group{margin-bottom:22px}.entry-content .wp-block-media-text{margin:0 auto 30px}.entry-content .wp-block-media-text__content{padding:22px}.entry-content .wp-block-columns{gap:24px}.entry-content .wp-block-image img{border-radius:3px}.entry-content .wp-block-table{overflow:auto;margin:24px 0}.entry-content table{width:100%;border-collapse:collapse}.entry-content table td,.entry-content table th{border:1px solid var(--u-line);padding:11px}.entry-content .wp-block-quote{border-left:4px solid var(--u-dark);padding-left:20px}.entry-content .wp-block-buttons{gap:12px}.entry-content .hs-form-frame{min-height:320px}.entry-content .wp-block-embed iframe{max-width:100%}.entry-content a:not(.wp-block-button__link){overflow-wrap:anywhere}.entry-content .wp-block-heading{scroll-margin-top:100px}.entry-content ul,.entry-content ol{padding-left:1.5em}.static-content{max-width:100%}.page-heading,.page-title{margin:0 0 28px}.listing-hero{margin-bottom:22px}.listing-hero .wp-block-media-text{display:grid;margin-bottom:15px}.listing-body{margin:0 auto}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.post-card{background:#fff;border:1px solid var(--u-line);border-radius:9px;overflow:hidden;box-shadow:0 7px 23px rgba(0,0,0,.045);transition:transform .2s,box-shadow .2s}.post-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.09)}.post-card__link{display:block;height:100%;color:inherit;text-decoration:none}.post-card__image{aspect-ratio:16/9;background:var(--u-soft);display:flex;align-items:center;justify-content:center;overflow:hidden}.post-card__image img{width:100%;height:100%;object-fit:cover}.post-card__empty{color:#999999;font-weight:bold}.post-card__body{padding:19px 20px 22px}.post-card__eyebrow{font-size:.76rem;color:var(--u-gray)}.post-card__title{font-size:1.06rem;line-height:1.6;margin:8px 0 10px;font-weight:750;color:#363636}.post-card__excerpt{font-size:.86rem;color:#5c5c5c;line-height:1.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 14px}.post-card__more{font-size:.84rem;font-weight:700;color:var(--u-dark)}.pagination{margin:42px auto}.pagination .page-numbers{display:flex;gap:9px;align-items:center;justify-content:center;list-style:none;padding:0}.pagination a,.pagination span{border:1px solid var(--u-line);border-radius:4px;padding:5px 12px;text-decoration:none}.pagination .current{background:var(--u-dark);color:white}.empty-posts{padding:40px;text-align:center;color:var(--u-gray)}.notice{padding:15px;border:1px solid #bbbbbb;background:#f5f5f5}
.article-layout{display:grid;grid-template-columns:minmax(0,800px) minmax(230px,290px);gap:45px;align-items:start}.article-main{min-width:0}.breadcrumbs{font-size:.81rem;color:var(--u-gray);margin:0 0 22px}.breadcrumbs a{color:var(--u-gray)}.breadcrumbs span{margin:0 7px}.article-header{margin:0 0 25px}.article-eyebrow{font-size:.84rem;color:var(--u-gray);margin-bottom:5px}.article-title{font-size:clamp(1.68rem,2.5vw,2.35rem);margin:0}.article-featured{margin-bottom:25px}.article-featured img{width:100%;height:auto;border-radius:6px}.article-content{font-size:1rem;line-height:2}.article-content h2{border-left:5px solid var(--u-dark);background:var(--u-soft);padding:13px 17px;margin-top:2.3em}.article-content h3{border-bottom:2px solid var(--u-line);padding:0 0 8px;margin-top:2em}.article-content img{height:auto}.article-end{border-top:1px solid var(--u-line);padding:25px 0;margin-top:45px}.article-sidebar{position:sticky;top:105px;display:flex;flex-direction:column;gap:19px}.sidebar-card{border:1px solid var(--u-line);border-radius:7px;background:var(--u-soft);padding:20px}.sidebar-card h2{font-size:1.05rem;margin:0 0 12px}.sidebar-card p{font-size:.86rem}.related-links{list-style:none;padding:0;margin:0}.related-links li{border-top:1px solid var(--u-line);padding:10px 0;font-size:.87rem;line-height:1.55}.related-links a{text-decoration:none}.not-found{text-align:center;padding-top:100px}
/* Gutenberg & imported Astra-era content compatibility. */
.wp-block-media-text{display:grid;grid-template-columns:50% 1fr;gap:0}.wp-block-media-text__media{margin:0}.wp-block-media-text__media img{width:100%;height:auto;object-fit:contain}.wp-block-media-text.is-image-fill-element .wp-block-media-text__media img{height:100%;object-fit:cover}.wp-block-columns{display:flex;flex-wrap:nowrap}.wp-block-column{min-width:0;flex:1}.wp-block-group.is-layout-flex{display:flex;gap:16px}.wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap}.wp-block-image{margin:0 0 1.5rem}.alignwide{max-width:var(--u-width);margin-left:auto;margin-right:auto}.alignfull{width:100%}
@media(max-width:1150px){.desktop-nav{display:none}.header-cta{margin-left:auto}.mobile-nav{display:block;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;font-weight:700;border:1px solid var(--u-line);border-radius:5px;padding:7px 10px;font-size:.9rem;white-space:nowrap}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav[open]>nav{position:absolute;right:0;top:44px;width:min(330px,86vw);max-height:75vh;overflow:auto;background:white;padding:17px;border:1px solid var(--u-line);border-radius:6px;box-shadow:0 20px 35px rgba(0,0,0,.13)}.mobile-nav .nav-links{display:flex;flex-direction:column;align-items:stretch;gap:0}.mobile-nav .nav-links li{border-bottom:1px solid var(--u-line)}.mobile-nav .nav-links a{display:block;padding:9px 0;white-space:normal}}
@media(max-width:850px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.article-layout{grid-template-columns:1fr;gap:20px}.article-sidebar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.site-header__inner{min-height:67px}.footer-grid{grid-template-columns:1fr}.wp-block-media-text.is-stacked-on-mobile{grid-template-columns:1fr!important}.wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media{grid-column:1!important;grid-row:1!important}.wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content{grid-column:1!important;grid-row:2!important}.wp-block-columns{flex-wrap:wrap}.wp-block-column{flex-basis:100%!important}}
@media(max-width:600px){html{scroll-padding-top:72px}.container-wide{width:min(calc(100% - 28px),var(--u-width))}.page-shell{padding-top:25px;padding-bottom:48px}.front-content{padding-top:15px}.front-content .content-shell{width:min(calc(100% - 28px),var(--u-width))}.site-brand__logo{width:123px}.site-header__inner{gap:7px}.header-cta{font-size:.7rem;padding:.75em .6em}.mobile-nav summary{font-size:.75rem;padding:7px}.card-grid{grid-template-columns:1fr;gap:14px}.post-card__body{padding:14px 16px}.post-card__title{font-size:1rem}.article-sidebar{grid-template-columns:1fr}.article-title{font-size:1.55rem}.article-content h2{font-size:1.35rem}.entry-content .wp-block-media-text__content{padding:14px 2px}.hide-only-image-on-mobile .wp-block-media-text__media{display:none!important}.hide-only-image-on-mobile .wp-block-media-text__content{grid-row:1!important}.site-footer{padding-top:30px}.wp-block-cover{min-height:unset!important}body.admin-bar .site-header{top:46px}}

/* v1.0.1: grayscale visual system and restored spacing for imported Gutenberg markup. */
:root {color-scheme:light;--wp--preset--color--ast-global-color-0:#262626;--wp--preset--color--ast-global-color-1:#404040;--wp--preset--color--ast-global-color-2:#3c3c3c;--wp--preset--color--ast-global-color-3:#555555;--wp--preset--color--ast-global-color-4:#ffffff;--wp--preset--color--ast-global-color-5:#f4f4f4;--wp--preset--color--ast-global-color-6:#ededed;--wp--preset--color--ast-global-color-7:#e2e2e2;--wp--preset--color--ast-global-color-8:#757575;--wp--preset--color--ast-global-color-9:#272727;}
html{scroll-padding-top:90px}
body{color:#333;background:#fff}
a{color:#3c3c3c}
a:hover{color:#151515}
h1,h2,h3,h4,h5,h6{color:#292929}
:where(.has-ast-global-color-5-background-color){background-color:#f4f4f4}
:where(.has-ast-global-color-6-background-color){background-color:#ededed}
:where(.has-ast-global-color-2-color){color:#3c3c3c}
:where(.has-ast-global-color-3-color){color:#555}
:where(.has-ast-global-color-0-color){color:#262626}
:where(.has-ast-global-color-4-color){color:#fff}
:where(.has-ast-global-color-0-background-color){background-color:#262626}
:where(.has-ast-global-color-1-background-color){background-color:#404040}
:where(.has-ast-global-color-2-background-color){background-color:#3c3c3c}
:where(.has-ast-global-color-3-background-color){background-color:#f4f4f4}
.site-header{background:#fff;border-bottom:1px solid #dedede;box-shadow:0 2px 10px rgba(0,0,0,.035)}
.nav-links a{color:#3b3b3b}
.nav-links a:hover,.nav-links .current-menu-item a{color:#111}
.button,.wp-block-button__link{background:#444;color:#fff!important}
.button:hover,.wp-block-button__link:hover{background:#282828;color:#fff!important}
.site-footer{background:#ededed;color:#383838;border-top:1px solid #d4d4d4}
.site-footer h2,.site-footer a{color:#303030}
.site-footer a:hover{color:#111}
.site-footer .copyright{border-top:1px solid #d0d0d0;color:#626262}
/* Avoid extra block margins on top of the spacing already exported in markup. */
.front-content{padding:0 0 64px}
.front-content .content-shell{width:min(calc(100% - 40px),var(--u-width));margin-inline:auto}
.front-content .content-shell> :first-child{margin-top:0}
.front-content .content-shell> .wp-block-group{margin-bottom:0}
.front-content .content-shell> .wp-block-group:not(.alignfull){padding-block:18px}
.front-content .content-shell> .wp-block-group.alignfull{margin-block:0}
.front-content .content-shell> .wp-block-group.alignfull + .wp-block-group.alignfull{margin-top:0}
.front-content .content-shell> .wp-block-group:not(.alignfull) + .wp-block-group:not(.alignfull){margin-top:20px}
.front-content .content-shell> .wp-block-group + .wp-block-group:not(.alignfull){margin-top:32px}
.entry-content>.wp-block-group{margin-bottom:0}
.entry-content>.wp-block-group+.wp-block-group{margin-top:32px}
.entry-content>.wp-block-media-text+.wp-block-group{margin-top:32px}
.entry-content .wp-block-media-text{margin-bottom:24px}
.entry-content h2{margin-block:1.7em .65em}
.entry-content h3{margin-block:1.35em .55em}
.entry-content p{margin-block:0 1.1em}
.entry-content :is(.wp-block-group,.wp-block-columns,.wp-block-column)>:last-child{margin-bottom:0}
/* Restore centered max-width without clipping intentional full-width groups. */
.front-content .content-shell>.alignfull{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.front-content .content-shell>.alignfull>.wp-block-group__inner-container{max-width:var(--u-width);margin-inline:auto}
/* Fixed 16:9 video for all static pages, including interviews. */
.urikata-video{width:min(100%,900px);margin:28px auto 34px}
.urikata-video__ratio{position:relative;aspect-ratio:16/9;width:100%;background:#151515;overflow:hidden}
.urikata-video__ratio iframe{position:absolute;inset:0;display:block;border:0;width:100%;height:100%;max-width:none}
.entry-content .urikata-video{margin-block:28px 34px}
/* Gutenberg iframe sizing must not be overridden by generic media auto-height. */
.wp-block-embed__wrapper iframe,.wp-block-embed iframe{height:auto;aspect-ratio:16/9;max-width:100%}
.urikata-video__ratio iframe{height:100%!important;aspect-ratio:auto}
/* Repair column and media block gaps without changing inline per-page widths. */
.wp-block-media-text{max-width:100%;align-items:center}
.wp-block-media-text .wp-block-media-text__content{min-width:0}
.wp-block-columns{gap:clamp(14px,2.5vw,28px)}
.wp-block-column{min-width:0}
.wp-block-group.is-layout-flex{flex-wrap:wrap;gap:clamp(12px,2vw,22px)}
.wp-block-group:empty{display:none}
.post-card,.sidebar-card{border-color:#ddd;box-shadow:none}
.post-card:hover{box-shadow:0 8px 22px rgba(0,0,0,.07)}
.article-content h2{border-left-color:#565656;background:#f5f5f5}
.entry-content .wp-block-quote{border-left-color:#666}
.pagination .current{background:#444;color:#fff}
@media(max-width:850px){
 .front-content .content-shell{width:min(calc(100% - 28px),var(--u-width))}
 .front-content .content-shell>.alignfull{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
 .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content{padding:16px 0}
 .entry-content>.wp-block-group+.wp-block-group{margin-top:24px}
}
@media(max-width:600px){
 .front-content{padding-bottom:42px}
 .front-content .content-shell> .wp-block-group:not(.alignfull){padding-block:12px}
 .front-content .content-shell> .wp-block-group + .wp-block-group:not(.alignfull){margin-top:20px}
 .urikata-video{margin-block:20px 28px}
 .entry-content .urikata-video{margin-block:20px 28px}
 .footer-grid{gap:20px}
}

/* ===== v1.0.2: live-site structure/spacing compatibility (monochrome) ===== */
:root{
  --u-width:1200px;
  --wp--preset--spacing--20:10px;
  --wp--preset--spacing--30:16px;
  --wp--preset--spacing--40:24px;
  --wp--preset--spacing--50:32px;
  --wp--preset--spacing--60:48px;
  --wp--preset--spacing--70:64px;
  --wp--preset--spacing--80:80px;
}
html,body{max-width:100%;overflow-x:clip}
body{font-size:16px;line-height:1.78}
.site-header{box-shadow:0 1px 4px rgba(0,0,0,.035)}
.site-header__inner{min-height:82px;gap:26px}
.site-brand__logo{width:171px;max-height:55px}
.site-nav{margin-left:auto}
.site-nav .nav-links{gap:26px}
.site-nav .nav-links a{font-size:14px;font-weight:600;letter-spacing:.015em}
.header-contact{color:#333;text-decoration:none;white-space:nowrap;font-size:14px;font-weight:600;padding:7px 8px}
.header-contact:hover{text-decoration:underline}
.site-footer{background:#eee;color:#333;padding:44px 0 18px}
.site-footer h2,.site-footer .footer-title{color:#333;font-size:1rem}
.site-footer a{color:#555}
.site-footer .copyright{border-top:1px solid #d7d7d7;color:#666}
/* Reintroduce the spacing and width primitives previously supplied by Astra. */
.wp-block-group{min-width:0}
.wp-block-group.has-background,.has-ast-global-color-5-background-color{background-color:#f5f5f5}
.has-ast-global-color-6-background-color{background-color:#ededed}
.has-ast-global-color-2-color{color:#3b3b3b}
.wp-block-group.alignfull{max-width:none}
.wp-block-group.is-layout-flex,.wp-block-group[style*="flex"]{align-items:center}
.wp-block-group.is-layout-flex>.wp-block-image{flex:none;margin:0}
.wp-block-group.is-layout-flex>.wp-block-heading{min-width:0;margin:0}
.wp-block-columns{align-items:stretch;gap:clamp(18px,3vw,40px)}
.wp-block-column{flex:1 1 0;min-width:0}
.wp-block-column[style*="flex-basis"]{flex-grow:0}
.wp-block-media-text{width:100%;align-items:center}
.wp-block-media-text>.wp-block-media-text__media{min-width:0}
.wp-block-media-text>.wp-block-media-text__content{min-width:0;padding:clamp(14px,2.7vw,38px)}
.wp-block-media-text .wp-block-media-text__media img{display:block;width:100%;height:auto}
.wp-block-media-text.is-image-fill-element>.wp-block-media-text__media{height:100%}
.wp-block-media-text.is-image-fill-element>.wp-block-media-text__media img{width:100%;height:100%;object-fit:contain}
.wp-block-image img{max-width:100%;height:auto}
.wp-block-image.aligncenter,.wp-block-image .aligncenter{text-align:center;margin-inline:auto}
.wp-block-image.aligncenter img{margin-inline:auto}
.wp-block-heading{margin-block-start:0}
.entry-content .wp-block-heading{overflow-wrap:normal;word-break:normal}
.entry-content :is(h2.wp-block-heading,h3.wp-block-heading){line-height:1.5}
.entry-content :is(.wp-block-group,.wp-block-column)>p:last-child{margin-bottom:0}
.entry-content .wp-block-embed,.front-content .wp-block-embed{margin:16px 0 22px}
.entry-content .urikata-video{margin:16px 0 22px;width:100%;max-width:none}
.wp-block-buttons{display:flex;align-items:center;gap:12px}
.wp-block-button{margin:0}
.wp-block-button__link{background:#444}
/* Main landing page: full-width section backgrounds, constrained content within. */
.front-content{padding:0 0 0}
.front-content .content-shell{width:min(calc(100% - 40px),1200px);margin:auto;min-height:0}
.front-content .content-shell>.wp-block-media-text{
  width:100%;max-width:1200px;margin:0 auto;
  min-height:310px;padding-block:clamp(18px,2.8vw,42px)
}
.front-content .content-shell>.wp-block-media-text .wp-block-media-text__content{padding:clamp(14px,2.5vw,38px)}
.front-content .content-shell>.wp-block-media-text h1{font-size:clamp(32px,4vw,54px)!important;line-height:1.25;margin:0 0 14px}
.front-content .content-shell>.wp-block-media-text h2{font-size:clamp(19px,2.4vw,32px)!important;line-height:1.4;margin:0 0 20px}
.front-content .content-shell>.wp-block-media-text .wp-block-group{margin:0}
.front-content .content-shell>.wp-block-group.alignfull{
  width:100vw;max-width:none;margin-inline:calc(50% - 50vw);padding:clamp(32px,4vw,56px) max(20px,calc((100vw - 1200px)/2))
}
.front-content .content-shell>.wp-block-group.alignfull>.wp-block-group,
.front-content .content-shell>.wp-block-group.alignfull>.wp-block-columns{max-width:1200px;margin-inline:auto}
.front-content .content-shell>.wp-block-group:not(.alignfull){
  width:100%;max-width:1200px;margin-inline:auto;padding:clamp(32px,4vw,55px) 0
}
.front-content .content-shell>.wp-block-group.alignfull+.wp-block-group.alignfull{margin-top:0}
.front-content .content-shell>.wp-block-group.alignfull+.wp-block-group:not(.alignfull){margin-top:0}
.front-content .content-shell>.wp-block-group:not(.alignfull)+.wp-block-group.alignfull{margin-top:0}
.front-content .content-shell>.wp-block-group.alignfull .wp-block-columns{gap:clamp(22px,3.4vw,48px)}
.front-content .content-shell>.wp-block-group.alignfull .wp-block-columns>.wp-block-column{flex:1 1 0}
.front-content .content-shell>.wp-block-group.alignfull .wp-block-columns>.wp-block-column .wp-block-group.is-layout-flex{gap:8px;flex-wrap:nowrap}
.front-content .content-shell>.wp-block-group.alignfull .wp-block-columns>.wp-block-column .wp-block-group.is-layout-flex .wp-block-image img{width:36px}
.front-content .content-shell>.wp-block-group.alignfull .wp-block-columns>.wp-block-column h3{font-size:clamp(17px,1.55vw,22px);margin:0}
.front-content .content-shell>.wp-block-group.alignfull .wp-block-columns>.wp-block-column p{font-size:15px;line-height:1.8}
.front-content .content-shell>.wp-block-group.alignfull .wp-block-columns>.wp-block-column .urikata-video{margin:14px 0 19px}
.front-content .content-shell>.wp-block-group.alignfull h2{margin:0 0 20px}
.front-content .content-shell>.wp-block-group.alignfull h2+h3{margin-top:24px}
.front-content .content-shell>.wp-block-group.alignfull h3{margin:22px 0 8px}
.front-content .content-shell>.wp-block-group.alignfull p+h3{margin-top:23px}
.front-content .content-shell>.wp-block-group.alignfull p{margin-bottom:16px}
/* Keep the live page's long service/FAQ text readable and avoid huge voids. */
.front-content .content-shell>.wp-block-group:not(.alignfull) :is(h2,h3,h4){margin-block:25px 10px}
.front-content .content-shell>.wp-block-group:not(.alignfull) h2:first-child{margin-top:0}
.front-content .content-shell>.wp-block-group:not(.alignfull) p{margin-bottom:16px}
.front-content .content-shell>.wp-block-group:not(.alignfull)>.wp-block-group{margin-block:0}
.front-content .content-shell>h4,.front-content .content-shell>p{max-width:1200px;margin-inline:auto}
/* Standalone page content and list hero follow the same width system. */
.page-shell{padding-top:44px;padding-bottom:65px}
.page-shell>.entry-content,.page-shell>.listing-hero{width:100%}
.page-shell>.entry-content>.wp-block-media-text,.page-shell>.listing-hero>.wp-block-media-text{margin:0 auto 34px}
.page-shell>.entry-content>.wp-block-group.alignfull{width:100vw;max-width:none;margin-inline:calc(50% - 50vw);padding-inline:max(20px,calc((100vw - 1200px)/2))}
.page-shell .wp-block-media-text__content{padding:clamp(16px,3vw,36px)}
.page-shell .listing-hero{margin-bottom:34px}
.page-shell .listing-hero .wp-block-media-text{margin-bottom:0}
.page-shell .listing-body{padding-top:12px}
/* Embedded media: preserve a true 16:9 frame at all viewport widths. */
.urikata-video,.wp-block-embed{max-width:100%}
.urikata-video__ratio{position:relative;aspect-ratio:16/9;width:100%;background:#171717}
.urikata-video__ratio iframe{position:absolute;inset:0;width:100%!important;height:100%!important;border:0}
/* Keep elements from collapsing on small screens. */
@media(max-width:1050px){
  .site-header__inner{min-height:71px}
  .header-contact{margin-left:auto}
  .site-brand__logo{width:160px}
}
@media(max-width:850px){
  .front-content .content-shell>.wp-block-group.alignfull{padding:28px 22px}
  .front-content .content-shell>.wp-block-group.alignfull .wp-block-columns{gap:26px}
  .front-content .content-shell>.wp-block-group:not(.alignfull){padding:26px 0}
  .front-content .content-shell>.wp-block-media-text{min-height:0}
  .front-content .content-shell>.wp-block-media-text .wp-block-media-text__content{padding:18px 14px}
  .wp-block-columns{flex-wrap:wrap}
  .wp-block-columns>.wp-block-column{flex:1 1 100%!important}
}
@media(max-width:600px){
  .container-wide,.front-content .content-shell{width:min(calc(100% - 32px),1200px)}
  .header-contact{font-size:12px;padding:3px 2px}
  .site-header__inner{min-height:65px;gap:10px}
  .site-brand__logo{width:145px}
  .front-content .content-shell>.wp-block-media-text{padding:20px 0 26px}
  .front-content .content-shell>.wp-block-media-text h1{font-size:clamp(27px,7.5vw,37px)!important;line-height:1.3}
  .front-content .content-shell>.wp-block-media-text h2{font-size:clamp(17px,4.6vw,24px)!important}
  .front-content .content-shell>.wp-block-group.alignfull{padding:27px 16px}
  .front-content .content-shell>.wp-block-group:not(.alignfull){padding:22px 0}
  .wp-block-media-text.is-stacked-on-mobile{grid-template-columns:1fr!important}
  .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media{grid-column:1!important;grid-row:1!important}
  .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content{grid-column:1!important;grid-row:2!important;padding:12px 0}
  .wp-block-media-text.hide-only-image-on-mobile>.wp-block-media-text__media{display:none!important}
  .wp-block-media-text.hide-only-image-on-mobile>.wp-block-media-text__content{grid-row:1!important}
  .page-shell{padding-top:25px;padding-bottom:45px}
  .page-shell>.entry-content>.wp-block-group.alignfull{padding-inline:16px}
  .site-footer{padding-top:30px}
  .footer-grid{gap:18px}
}
@media(max-width:1150px){
  .header-contact{display:none}
  .mobile-nav{margin-left:auto}
}

/* SEO article archive directory: crawlable links without visual clutter. */
.urikata-archive-page-directory { max-width: 960px; margin: 2rem auto 0; padding: 1rem 1.25rem; border: 1px solid #d7d7d7; border-radius: 8px; background: #f7f7f7; color: #333; }
.urikata-archive-page-directory summary { cursor: pointer; font-weight: 600; }
.urikata-archive-page-directory nav { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1rem; }
.urikata-archive-page-directory nav a { display: inline-flex; min-width: 2.25rem; min-height: 2.25rem; align-items: center; justify-content: center; padding: .3rem .6rem; border-radius: 4px; border: 1px solid #ddd; background: #fff; color: #292929; text-decoration: underline; }

/* New dedicated B2B service page, monochrome to match the existing theme. */
.urikata-service-page { padding-block: clamp(2.5rem, 6vw, 5rem); }
.urikata-service-inner { max-width: 1040px; margin-inline: auto; color: #282828; font-family: 'Noto Sans JP', sans-serif; }
.urikata-service-kicker { margin: 0 0 .75rem; color: #575757; font-weight: 700; font-size: .9rem; }
.urikata-service-hero { padding: clamp(1.25rem, 3vw, 2.75rem) 0 2.8rem; }
.urikata-service-hero h1 { font-size: clamp(1.7rem, 3vw, 2.65rem); line-height: 1.5; margin: 0 0 1.4rem; color: #242424; }
.urikata-service-lead { font-size: 1.06rem; line-height: 1.95; max-width: 780px; }
.urikata-service-section { padding: 2.3rem 0; border-top: 1px solid #ddd; }
.urikata-service-section h2 { margin: 0 0 1.35rem; font-size: clamp(1.35rem, 2.3vw, 1.8rem); }
.urikata-service-section p, .urikata-service-section li { line-height: 2; }
.urikata-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; }
.urikata-service-grid > div { border: 1px solid #ddd; border-radius: 8px; padding: 1.45rem; background: #fafafa; }
.urikata-service-grid h3 { margin: 0 0 .65rem; font-size: 1.08rem; }
.urikata-service-grid p { margin: 0; }
.urikata-service-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-top: 1.8rem; }
.urikata-service-primary { display: inline-block; padding: .85rem 1.4rem; background: #404040; color: #fff !important; border-radius: 6px; text-decoration: none; font-weight: 700; }
.urikata-service-secondary { color: #333; text-underline-offset: 4px; }
@media (max-width: 760px) { .urikata-service-grid { grid-template-columns: 1fr; } }
