/* Ichikawa Official 1.0.0 — no framework, no remote fonts. */
:root{--navy:#10233d;--navy-2:#213954;--gold:#d7bb7d;--gold-dark:#78613a;--ivory:#f6f3ec;--white:#fff;--ink:#172b43;--muted:#526173;--line:#deded8;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif CJK JP',serif;--sans:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic','Noto Sans CJK JP',Meiryo,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.9;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased}
body,button,input,select,textarea{font-family:var(--sans)}
a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
a:hover{text-decoration-color:var(--gold-dark)}
img{max-width:100%;height:auto;vertical-align:middle}
figure{margin:0}
button,input,select,textarea{font-size:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:default}
:focus-visible{outline:3px solid #98670d;outline-offset:5px}
.hero :focus-visible,.site-footer :focus-visible,.profile-band :focus-visible,.video-frame :focus-visible{outline-color:#f0d296}
[hidden]{display:none!important}
h1,h2,h3,h4,h5,h6{font-family:var(--serif);font-weight:600;line-height:1.6;margin:0;overflow-wrap:anywhere}
p{margin:0 0 1.25em}
p:last-child{margin-bottom:0}
.container{width:calc(100% - 112px);max-width:1200px;margin-inline:auto}
.container-wide{width:calc(100% - 80px);max-width:1320px;margin-inline:auto}
.container-narrow{width:calc(100% - 112px);max-width:800px;margin-inline:auto}
.section-pad{padding-block:110px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap!important}
.skip-link{position:fixed;left:20px;top:-140px;z-index:100000;background:var(--white);color:var(--navy);padding:15px 24px;font-weight:700;box-shadow:0 2px 12px #0003}
.skip-link:focus{top:16px}
.review-banner{background:var(--navy);color:#e7dbc1;font-size:11px;letter-spacing:.04em;line-height:1.7;padding-block:7px;text-align:center}
.review-banner .container>span:first-child{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.18em;padding-right:16px;color:var(--gold)}
.review-divider{margin-inline:5px}
.site-header{position:relative;z-index:20;background:var(--white);border-bottom:1px solid #edf0f2}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:105px}
.site-branding{flex-shrink:0}
.brand{display:flex;flex-direction:column;text-decoration:none;color:var(--navy);line-height:1.3}
.brand-name{font-family:var(--serif);font-size:31px;letter-spacing:.16em;font-weight:600}
.brand-label{font:9px/1.6 Arial,sans-serif;letter-spacing:.26em;margin-top:7px;color:var(--muted)}
.custom-logo-link{display:block}
.custom-logo{max-width:245px;max-height:80px;width:auto;height:auto}
.site-nav{display:flex;align-items:center;gap:30px}
.nav-menu{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:25px}
.nav-menu>li{position:relative;margin:0}
.nav-menu a{font-size:13px;letter-spacing:.02em;font-weight:600;text-decoration:none;display:block;padding:20px 0}
.nav-menu a:hover,.nav-menu .current-menu-item>a,.nav-menu .current_page_item>a{color:var(--gold-dark)}
.nav-menu .sub-menu{position:absolute;top:100%;left:-18px;min-width:220px;padding:12px 18px;margin:0;background:#fff;border:1px solid var(--line);list-style:none;visibility:hidden;opacity:0;box-shadow:0 6px 16px #10233d0d}
.nav-menu li:focus-within>.sub-menu,.nav-menu li:hover>.sub-menu{visibility:visible;opacity:1}
.nav-menu .sub-menu a{padding:10px 0;font-size:13px}
.nav-contact{display:flex;align-items:center;gap:24px;border:1px solid #c3b18c;padding:11px 18px;text-decoration:none;font-size:12px;font-weight:600;min-height:46px;white-space:nowrap}
.nav-contact:hover{background:var(--ivory)}
.nav-toggle{display:none}
.hero{position:relative;isolation:isolate;background:var(--navy);color:var(--white);min-height:710px;overflow:hidden}
.hero-photo{position:absolute;inset:0 0 0 auto;width:56%;z-index:-3}
.hero-photo picture,.hero-photo img{display:block;width:100%;height:100%}
.hero-photo img{object-fit:cover;object-position:48% 34%}
.hero-wash{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#10233d 0%,#10233d 44%,#10233dd9 49%,#10233d4d 58%,#10233d00 69%),linear-gradient(0deg,#10233d3b,transparent 35%)}
.hero-inner{min-height:710px;display:flex;align-items:center;padding-block:65px 38px}
.hero-copy{width:64%;max-width:710px}
.hero-role{display:flex;align-items:center;gap:15px;color:var(--gold);font-size:13px;font-weight:500;letter-spacing:.07em;margin-bottom:27px}
.gold-rule{width:32px;height:1px;background:var(--gold);flex-shrink:0}
.hero h1{font-size:clamp(37px,4.1vw,62px);line-height:1.64;letter-spacing:.035em;font-weight:500;margin:0 0 20px;text-shadow:0 2px 28px #10233d38}
.hero-subtitle{font-size:16px;letter-spacing:.085em;color:#f0f1f4;margin-bottom:30px}
.hero-identity{display:flex;align-items:center;gap:24px;margin:0 0 30px}
.hero-name{font-family:var(--serif);font-size:42px;letter-spacing:.2em;line-height:1.5;margin:0}
.hero-identity-rule{width:1px;height:36px;background:#d7bb7d70}
.hero-identity-label{font:9px/1.7 Arial,sans-serif;letter-spacing:.18em;color:#e0cc9f}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:56px;padding:14px 24px;border:1px solid transparent;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.04em;line-height:1.7;transition:background-color .2s,border-color .2s,color .2s}
.button>span:last-child{font-size:18px;line-height:1}
.button-gold{background:var(--gold);color:var(--navy)}
.button-gold:hover{background:#e5cea0}
.button-navy{background:var(--navy);color:#fff}
.button-navy:hover{background:var(--navy-2)}
.button-outline-light{border-color:#b9c4d166;color:#fff;background:transparent}
.button-outline-light:hover{border-color:var(--gold);background:#ffffff09}
.hero-video-link{display:inline-flex;gap:10px;align-items:center;text-decoration:none;font-size:13px;padding:10px 0;min-height:48px}
.mini-play{width:29px;height:29px;border:1px solid #ffffff80;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px}
.hero-scroll{display:flex;align-items:center;gap:15px;font:9px/1.4 Arial,sans-serif;letter-spacing:.2em;color:#d0d9e3;margin-top:42px;margin-bottom:0}
.hero-scroll span{height:1px;width:52px;background:#a5b1c1}
.entry-links{display:grid;grid-template-columns:repeat(3,1fr);padding:0;border-bottom:1px solid var(--line)}
.entry-links>a{display:flex;gap:24px;align-items:center;padding:30px 30px 31px;text-decoration:none;position:relative}
.entry-links>a:first-child{padding-left:0}
.entry-links>a+a::before{content:'';position:absolute;left:0;top:30px;bottom:30px;width:1px;background:var(--line)}
.entry-number{font:32px/1 Georgia,serif;color:#857247}
.entry-links small{display:block;font:9px/1.6 Arial,sans-serif;letter-spacing:.18em;color:var(--muted);margin-bottom:5px}
.entry-links strong{font-family:var(--serif);font-size:20px;font-weight:600;letter-spacing:.04em}
.entry-arrow{margin-left:auto;font-size:19px}
.entry-links>a:hover{background:#f6f3ec77}
.eyebrow{font:11px/1.5 Arial,sans-serif;letter-spacing:.21em;color:var(--gold-dark);margin-bottom:17px;display:flex;align-items:center;gap:13px}
.eyebrow::before{content:'';display:block;width:25px;height:1px;background:currentColor}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:42px;margin-bottom:45px}
.section-heading h2,.movie-copy h2,.news-grid h2,.profile-band h2,.footer-contact h2{font-size:36px;letter-spacing:.07em;line-height:1.65}
.section-lead{max-width:410px;color:var(--muted);font-size:14px;line-height:2}
.section-body{font-size:15px;line-height:2.15;color:var(--muted);margin-block:27px}
.section-intro{color:var(--muted);font-size:14px;margin:-20px 0 35px}
.message-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:110px;align-items:center}
.message-photo{position:relative;isolation:isolate;aspect-ratio:4/5;max-width:450px}
.message-photo::before{content:'';position:absolute;inset:20px -20px -20px 20px;border:1px solid #c4ae80;z-index:-1}
.message-photo picture,.message-photo img{display:block;height:100%;width:100%}
.message-photo img{object-fit:cover;object-position:50% 38%}
.message-photo figcaption{position:absolute;bottom:23px;left:24px;right:24px;display:flex;gap:24px;align-items:center;color:#fff;background:#10233dc9;padding:10px 14px;font:9px/1.5 Arial,sans-serif;letter-spacing:.18em}
.caption-line{height:1px;flex:1;background:#d7bb7d99}
.message-copy h2{font-size:36px;font-weight:500;line-height:1.85;letter-spacing:.065em}
.message-signature{font-family:var(--serif);font-size:24px;text-align:right;letter-spacing:.15em;margin-top:30px;margin-bottom:30px}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;text-decoration:none;border-bottom:1px solid #ad9870;padding:11px 0;font-size:13px;font-weight:600;min-height:45px;line-height:1.7}
.text-link>span{font-size:20px;transition:transform .2s}
.text-link:hover>span{transform:translate(2px,-2px)}
.policy-section{background:var(--ivory)}
.sample-notice{display:flex;align-items:center;gap:12px;font-size:12px;color:#66583f;margin-top:-12px;margin-bottom:28px;line-height:1.8}
.sample-notice>span{flex-shrink:0;background:#e8ddc7;padding:4px 9px;font-size:11px;letter-spacing:.03em}
.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.policy-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e3e0d7;min-width:0}
.policy-card>a{padding:28px 28px 23px;display:flex;flex-direction:column;text-decoration:none;flex:1;transition:background-color .2s}
.policy-card>a:hover{background:#fdfbf6}
.policy-card.is-example{padding:28px 28px 25px}
.policy-number{font:34px/1.3 Georgia,serif;color:#887044;display:block}
.policy-card h3{font-size:21px;letter-spacing:.03em;line-height:1.7;margin:17px 0;min-height:3.4em}
.policy-card p{font-size:12px;color:var(--muted);line-height:1.95;margin-bottom:23px}
.draft-label{font-size:11px;color:#726046;margin-top:auto;border-top:1px solid #ebe7de;padding-top:15px;letter-spacing:.04em}
.policy-more{display:flex;justify-content:space-between;align-items:center;margin-top:auto;border-top:1px solid #ebe7de;padding-top:16px;font-size:12px}
.section-end{display:flex;justify-content:flex-end;margin-top:28px}
.profile-band{background:var(--navy);color:#fff;position:relative}
.profile-band-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:105px;align-items:center}
.profile-band .eyebrow,.footer-contact .eyebrow{color:var(--gold)}
.profile-band .section-body{color:#d1d7df;max-width:510px;margin-bottom:30px}
.profile-topics{border-top:1px solid #d7bb7d66}
.profile-topics p{display:flex;align-items:center;gap:22px;border-bottom:1px solid #bac7d42e;padding:21px 0;margin:0;font-family:var(--serif);font-size:18px;letter-spacing:.02em}
.profile-topics p>span{font:19px/1 Georgia,serif;color:var(--gold)}
.profile-topics>small{display:block;font-size:11px;color:#c5cdd8;margin-top:18px}
.movie-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:center}
.movie-title{font-size:14px;font-weight:600;margin-top:23px}
.movie-copy .section-body{font-size:14px;margin-top:12px}
.video-frame{aspect-ratio:16/9;position:relative;background:var(--navy);isolation:isolate;overflow:hidden}
.video-frame>picture,.video-frame>.video-poster{display:block;height:100%;width:100%}
.video-poster,.video-frame picture img{height:100%;width:100%;object-fit:cover;object-position:50% 31%}
.video-shade{position:absolute;inset:0;background:#10233d70}
.video-frame.is-pending .video-shade{background:#10233d80}
.video-trigger{display:none;position:absolute;inset:0;width:100%;height:100%;background:transparent;color:#fff;border:0;padding:20px;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-shadow:0 1px 6px #0008}
.has-js .video-trigger{display:flex}
.video-trigger:focus-visible{outline-offset:-8px}
.play-symbol{position:relative;display:block;width:64px;height:64px;border:1px solid #f1deb5;border-radius:50%;background:#10233d55;margin-bottom:4px;transition:background-color .2s,transform .2s}
.play-symbol::after{content:'';position:absolute;left:27px;top:21px;border-left:17px solid #fff;border-top:11px solid transparent;border-bottom:11px solid transparent}
.video-trigger:hover .play-symbol{background:#10233da8;transform:scale(1.04)}
.video-trigger>span:nth-child(2){font-size:16px;letter-spacing:.08em}
.video-trigger>small{font-size:11px;color:#fff}
.video-pending{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;color:#fff;text-shadow:0 1px 4px #0008}
.play-outline{font-size:29px;line-height:1;display:grid;place-items:center;width:62px;height:62px;border:1px solid #ead6ac;border-radius:50%;padding-left:4px}
.video-pending>span:nth-child(2){font-family:var(--serif);font-size:22px;letter-spacing:.07em}
.video-pending>small{color:#fff;font-size:11px;letter-spacing:.16em;border:1px solid #f5e6c88c;padding:2px 12px}
.video-privacy{font-size:11px;color:var(--muted);line-height:1.8;margin-top:10px}
.video-privacy a{display:inline-block;margin-left:6px}
.video-nojs{position:absolute;inset:auto 16px 16px;color:#fff;background:#10233dcc;padding:10px;font-size:13px;text-align:center}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2}
.activity-section{background:var(--ivory)}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post-card{min-width:0;background:#fff;border:1px solid #e7e5df;overflow:hidden}
.post-card-image{aspect-ratio:3/2;display:block;background:var(--navy);overflow:hidden}
.post-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.post-card:hover .post-card-image img{transform:scale(1.025)}
.post-card-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;background:var(--navy);color:var(--gold);font:17px/1.5 Georgia,serif;letter-spacing:.22em;gap:15px}
.placeholder-rule{width:45px;height:1px;background:#d7bb7d88}
.post-card-placeholder small{font:8px/1.5 Arial,sans-serif;letter-spacing:.2em;color:#d1d7df}
.post-card-body{padding:23px 24px 28px}
.post-meta{font-size:11px;display:flex;align-items:center;flex-wrap:wrap;gap:13px;color:var(--muted);margin-bottom:12px}
.post-meta time{font-family:Arial,sans-serif;letter-spacing:.06em}
.category-label{background:var(--ivory);padding:2px 9px;color:#526073;font-size:10px}
.post-card h3{font-size:20px;line-height:1.75;margin-bottom:14px}
.post-card h3 a{text-decoration:none}
.post-card h3 a:hover{text-decoration:underline}
.post-card p{font-size:13px;line-height:2;color:var(--muted)}
.empty-state{background:#fff;border:1px solid #deded6;padding:50px 28px;text-align:center}
.empty-mark{display:block;width:34px;height:27px;border-top:1px solid #b69b69;border-bottom:1px solid #b69b69;margin:0 auto 22px;position:relative}
.empty-mark::after{content:'';position:absolute;left:5px;right:5px;top:12px;height:1px;background:#b69b69}
.empty-state h3{font-size:21px;letter-spacing:.035em}
.empty-state p{font-size:13px;color:var(--muted);margin-top:14px}
.news-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:95px}
.news-grid .section-body{font-size:14px}
.news-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.news-list li{border-bottom:1px solid var(--line);margin:0}
.news-list a{display:flex;align-items:baseline;gap:24px;text-decoration:none;padding:24px 0;font-size:14px;line-height:1.8}
.news-list a:hover{color:var(--gold-dark)}
.news-list time{font:11px/1.8 Arial,sans-serif;color:var(--muted);white-space:nowrap;padding-top:2px}
.news-arrow{margin-left:auto;flex-shrink:0}
.news-empty{padding:32px 0;display:flex;align-items:center;gap:18px;border-block:1px solid var(--line)}
.news-empty p{font-size:14px;color:var(--muted)}
.news-dot{width:6px;height:6px;background:#9b814f;flex-shrink:0}
.site-footer{background:var(--navy);color:#fff}
.footer-contact{background:#142b46;border-bottom:1px solid #fff2;padding:68px 0}
.footer-contact-inner{display:flex;align-items:center;justify-content:space-between;gap:55px}
.footer-contact-text{font-size:13px;max-width:650px;color:#d0d8e2;margin-top:17px}
.footer-contact .button{flex-shrink:0;min-width:205px}
.footer-main{padding-block:68px;display:grid;grid-template-columns:1.1fr 1fr;gap:100px}
.footer-name{font-family:var(--serif);font-size:34px;letter-spacing:.18em;margin-bottom:12px}
.footer-org{font-size:12px;letter-spacing:.04em;color:#e2e6ed;margin-bottom:12px}
.footer-description{font-size:11px;color:#c4ceda;line-height:2;max-width:420px}
.footer-menu{display:grid;grid-template-columns:1fr 1fr;gap:18px 40px;list-style:none;margin:6px 0 0;padding:0}
.footer-menu a{font-size:13px;color:#d9e0e8;text-decoration:none;min-height:28px;display:inline-block}
.footer-menu a:hover{color:var(--gold);text-decoration:underline}
.social-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:25px;font-size:12px}
.social-links a{text-decoration:none}
.footer-bottom{border-top:1px solid #ffffff26;padding-block:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:#c0cbd7}
.footer-bottom small{font-size:10px}
.footer-bottom a{text-decoration:none}
.footer-bottom a:hover{text-decoration:underline}
.back-top{display:flex;gap:20px;align-items:center}
.back-top span{font-size:19px;color:var(--gold)}
.page-hero{background:var(--navy);color:#fff;padding-block:65px 69px}
.page-hero .eyebrow,.single-hero .eyebrow{color:var(--gold)}
.page-hero h1{font-size:42px;letter-spacing:.08em;line-height:1.7}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-block:20px;font-size:11px;color:var(--muted);border-bottom:1px solid #ecece6;line-height:1.8}
.breadcrumbs a{text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline}
.page-intro{margin-bottom:45px;max-width:820px}
.page-featured,.single-featured{margin:0 0 45px}
.page-featured img,.single-featured img{width:100%;height:auto;display:block}
.entry-content{line-height:2.1;font-size:16px;min-width:0}
.entry-content::after{content:'';display:block;clear:both}
.entry-content>*:first-child{margin-top:0}
.entry-content h2{font-size:28px;line-height:1.8;border-bottom:1px solid #d5c5a7;padding-bottom:14px;margin:50px 0 24px}
.entry-content h3{font-size:23px;margin:35px 0 18px}
.entry-content h4{font-size:20px;margin:30px 0 16px}
.entry-content p{margin-block:0 1.55em}
.entry-content a{color:#163f70;text-decoration:underline}
.entry-content a:hover{color:#705326}
.entry-content .wp-block-button__link{color:#fff;text-decoration:none}
.entry-content blockquote{border-left:3px solid var(--gold);background:var(--ivory);padding:25px 30px;margin:30px 0}
.entry-content ul,.entry-content ol{padding-left:1.8em;margin-block:20px}
.entry-content li{margin-block:8px}
.entry-content table{border-collapse:collapse;width:100%;font-size:14px}
.entry-content th,.entry-content td{padding:14px 18px;border:1px solid var(--line);text-align:left}
.entry-content th{background:var(--ivory)}
.entry-content .wp-block-table{overflow-x:auto}
.entry-content .wp-block-image{margin:28px 0}
.entry-content figcaption{font-size:12px;color:var(--muted);line-height:1.8;margin-top:9px}
.entry-content .alignwide{max-width:1200px;width:100%}
.entry-content .alignfull{max-width:100%;width:100%;margin-inline:0}
.entry-content .alignleft{float:left;margin:8px 24px 18px 0;max-width:48%}
.entry-content .alignright{float:right;margin:8px 0 18px 24px;max-width:48%}
.entry-content .aligncenter{margin-inline:auto;display:block}
.entry-content pre{background:var(--ivory);padding:20px;overflow:auto;font-size:13px}
.entry-content code{font-size:.9em}
.entry-content hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.ichikawa-note{background:var(--ivory);border-left:3px solid var(--gold);padding:20px 25px;font-size:14px;color:#63533b}
.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:12px;color:var(--muted)}
.gallery{display:flex;flex-wrap:wrap;gap:20px}.gallery-item{flex:1 1 180px}.bypostauthor{border-left:2px solid var(--gold)}
.profile-page-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:90px;align-items:start}
.profile-aside figure{aspect-ratio:3/4;background:var(--ivory)}
.profile-aside picture,.profile-aside img{display:block;width:100%;height:100%;object-fit:cover}
.profile-person-name{font-family:var(--serif);font-size:30px;letter-spacing:.15em;margin-top:24px;margin-bottom:9px}
.profile-person-role{font-size:12px;color:var(--muted)}
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 40px}
.video-card .post-meta{margin-top:20px}
.video-card h3{font-size:23px;margin-top:10px;margin-bottom:12px}
.video-card h3 a{text-decoration:none}
.video-card>p{font-size:14px;color:var(--muted)}
.video-gallery-featured{max-width:880px;margin-inline:auto}
.video-gallery-featured h3{font-size:24px;margin-top:24px;margin-bottom:14px}
.contact-box{background:var(--ivory);padding:42px 45px;border-top:2px solid var(--gold);margin-bottom:38px}
.contact-box h2{font-size:27px;margin-bottom:20px}
.contact-box>p:not(.eyebrow){font-size:14px;color:var(--muted)}
.contact-details{margin:30px 0 0;font-size:14px;line-height:1.9}
.contact-details>div{display:grid;grid-template-columns:85px minmax(0,1fr);gap:16px;padding:16px 0;border-top:1px solid #b7bfc766}
.contact-details dt{font-weight:600}.contact-details dd{margin:0;overflow-wrap:anywhere}
.footer-contact .contact-details{font-size:12px}
.single-hero{background:var(--navy);color:#fff;padding:66px 0 60px}
.single-hero .post-meta{color:#d4dbe5;margin-block:20px}
.single-hero .post-meta a{border:1px solid #ffffff55;padding:2px 10px;font-size:10px;text-decoration:none}
.single-hero h1{font-size:34px;line-height:1.8;letter-spacing:.04em}
.single-article .video-component{margin-bottom:40px}
.post-tags{font-size:12px;margin-top:30px}
.edit-link{font-size:12px;margin-top:30px}
.post-navigation{border-block:1px solid var(--line);margin:60px 0 0;padding:25px 0}
.post-navigation .nav-links{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.post-navigation a{text-decoration:none;display:flex;flex-direction:column;font-size:13px;line-height:1.9}
.post-navigation .nav-next{text-align:right;grid-column:2}
.nav-direction{font-size:10px;color:var(--muted);margin-bottom:7px}
.related-section{background:var(--ivory)}
.related-section h2{font-size:30px;margin-bottom:36px}
.pagination,.navigation.pagination{margin-top:50px}
.pagination ul{list-style:none;padding:0;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.pagination .page-numbers,.page-links a,.page-links>span{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;border:1px solid var(--line);text-decoration:none;font-size:13px;padding:7px 12px}
.pagination ul.page-numbers{display:flex;border:0;padding:0}
.pagination .current,.page-links>span{background:var(--navy);color:#fff;border-color:var(--navy)}
.pagination .nav-links{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.page-links{display:flex;gap:8px;margin-top:28px}
.search-form{display:flex;align-items:stretch;gap:0;max-width:600px;margin:25px 0}
.search-form input{min-width:0;flex:1;border:1px solid #aeb7c1;padding:12px 16px;border-radius:0;background:#fff;min-height:50px}
.search-form button{background:var(--navy);color:#fff;border:0;padding:12px 25px;font-size:14px}
.search-intro{margin-bottom:50px}
.not-found h1{font-size:33px;margin-bottom:25px}
.not-found .button{margin-top:24px}
.comment-list{list-style:none;padding:0}.comment-list .children{list-style:none;padding-left:25px}.comment-body{padding:25px 0;border-bottom:1px solid var(--line)}.comment-meta{font-size:12px;color:var(--muted)}.comment-author img{margin-right:10px}.comment-content{font-size:14px;margin-top:16px}.comments-area{margin-top:50px}.comments-area h2,.comments-area h3{font-size:24px;margin:30px 0 20px}.comment-form label{display:block;font-size:13px}.comment-form input:not([type=checkbox]):not([type=submit]),.comment-form textarea,.post-password-form input[type=password]{width:100%;max-width:100%;padding:12px;border:1px solid #aeb7c1;border-radius:0}.comment-form input[type=checkbox]{width:18px;height:18px}.comment-form-cookies-consent label{display:inline;margin-left:9px}.comment-form .submit,.post-password-form input[type=submit]{background:var(--navy);border:0;color:#fff;padding:12px 26px;min-height:46px}.comment-notes,.logged-in-as{font-size:12px}.post-password-form label{display:block}.post-password-form input[type=submit]{margin-top:15px}
@media(min-width:1600px){.hero-photo{width:55%}.hero-inner,.hero{min-height:760px}.hero h1{font-size:64px}.hero-copy{width:66%}}
@media(max-width:1200px){.site-nav{gap:23px}.nav-menu{gap:20px}.header-inner{gap:20px}.nav-contact{gap:17px;padding-inline:13px}.message-grid{gap:70px}.hero h1{font-size:48px}.hero-copy{width:68%}.hero-role{font-size:12px}.hero-photo{width:58%}.profile-band-grid{gap:65px}.movie-grid{gap:45px}.section-heading h2,.movie-copy h2,.profile-band h2,.news-grid h2{font-size:32px}.profile-page-grid{grid-template-columns:300px minmax(0,1fr);gap:55px}}
@media(max-width:1100px){
 .container,.container-narrow{width:calc(100% - 72px)}.container-wide{width:calc(100% - 56px)}
 .header-inner{min-height:94px;flex-wrap:wrap}.brand-name{font-size:29px}
 .has-js .nav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:11px;background:transparent;border:0;padding:12px 0 12px 12px;min-width:70px;min-height:48px;color:var(--navy)}
 .nav-toggle-label{font:10px/1 Arial,sans-serif;letter-spacing:.1em}.nav-toggle-lines{position:relative;width:23px;height:15px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.nav-toggle-lines::after{content:'';position:absolute;inset:6px 0 auto;height:1px;background:currentColor}
 .has-js .site-nav{position:absolute;top:100%;left:0;right:0;padding:24px 36px 32px;background:var(--white);border-bottom:1px solid var(--line);box-shadow:0 14px 24px #10233d15;display:none;max-height:calc(100svh - 135px);overflow-y:auto}
 .has-js .site-nav.is-open{display:block}.nav-menu{display:flex;flex-wrap:wrap}.has-js .nav-menu{display:block}.has-js .nav-menu a{font-size:15px;padding:14px 0;border-bottom:1px solid #ecece6}.has-js .nav-contact{margin-top:22px;justify-content:space-between;max-width:340px;padding:13px 18px;font-size:13px}
 .nav-menu .sub-menu{position:static;visibility:visible;opacity:1;box-shadow:none;border:0;padding:0 0 0 18px;background:transparent;min-width:0}.has-js .nav-menu .sub-menu a{font-size:13px;padding:10px 0}.site-nav{padding-bottom:16px;flex-wrap:wrap;width:100%;gap:12px}.nav-menu{gap:12px 24px}
 .section-pad{padding-block:85px}.hero-inner,.hero{min-height:665px}.hero h1{font-size:44px}.hero-subtitle{font-size:14px;letter-spacing:.03em}.hero-name{font-size:37px}.hero-actions{gap:22px}.hero-wash{background:linear-gradient(90deg,#10233d 0%,#10233d 42%,#10233de6 47%,#10233d5c 59%,transparent 75%)}
 .entry-links>a{padding:28px 22px;gap:16px}.entry-number{font-size:27px}.entry-links strong{font-size:18px}.entry-arrow{font-size:16px}
 .message-grid{gap:55px}.message-copy h2{font-size:29px}.section-body{font-size:14px}.section-heading{gap:30px}.section-lead{max-width:350px}
 .policy-grid{gap:16px}.policy-card.is-example,.policy-card>a{padding:24px 22px}.policy-card h3{font-size:18px}.policy-card p{font-size:12px}
 .profile-band-grid{gap:50px}.profile-topics p{font-size:15px;gap:17px}.movie-grid{gap:35px;grid-template-columns:.86fr 1.14fr}.movie-copy h2{font-size:27px}.video-pending>span:nth-child(2){font-size:19px}
 .post-grid{gap:20px}.post-card-body{padding:20px}.post-card h3{font-size:18px}.news-grid{gap:50px}.footer-main{gap:60px}
}
@media(max-width:850px){.hero-photo{width:62%}.hero-copy{width:72%}.hero h1{font-size:38px}.hero-role{max-width:380px;font-size:11px;gap:10px}.hero-identity-label{font-size:8px}.hero-identity{gap:18px}.hero-actions .button{gap:22px;font-size:12px;padding-inline:18px}.hero-video-link{font-size:12px}.hero-scroll{margin-top:35px}.message-grid{gap:44px}.message-copy h2{font-size:25px}.message-photo::before{inset:15px -15px -15px 15px}.policy-grid{grid-template-columns:repeat(2,1fr)}.section-heading{align-items:flex-start}.section-lead{max-width:320px}.profile-band-grid{grid-template-columns:1fr 1fr;gap:40px}.profile-band h2{font-size:28px}.profile-topics p{line-height:1.8;font-size:14px}.movie-grid{grid-template-columns:1fr;gap:35px}.movie-copy .section-body{max-width:600px}.movie-copy .text-link{margin-top:0}.movie-title{margin-top:20px}.movie-grid .video-frame{max-width:100%}.movie-copy h2{font-size:32px}.post-grid{grid-template-columns:repeat(2,1fr)}.post-grid>.post-card:last-child:nth-child(3){grid-column:1/-1;max-width:calc(50% - 10px)}.news-grid{grid-template-columns:1fr;gap:35px}.footer-contact-inner{gap:28px}.footer-contact .button{min-width:180px;gap:18px}.footer-menu{gap:16px 25px}.profile-page-grid{grid-template-columns:230px minmax(0,1fr);gap:38px}.entry-content{font-size:15px}.entry-content h2{font-size:25px}.video-grid{gap:40px 25px}}
@media(max-width:700px){
 .container,.container-narrow{width:calc(100% - 44px)}.container-wide{width:calc(100% - 40px)}.section-pad{padding-block:66px}
 .review-banner{font-size:9px;padding-block:6px;line-height:1.8}.review-banner .container{width:calc(100% - 26px)}.review-banner .container>span:first-child{font-size:8px;padding-right:8px;letter-spacing:.1em}.review-divider{margin-inline:1px}
 .header-inner{min-height:80px;gap:12px}.brand-name{font-size:25px;letter-spacing:.16em}.brand-label{font-size:8px;margin-top:5px}.custom-logo{max-width:205px;max-height:64px}
 .has-js .site-nav{padding:17px 24px 26px;max-height:calc(100svh - 130px)}
 .hero{min-height:0}.hero-inner{min-height:0;padding-top:337px;padding-bottom:32px;display:block}.hero-copy{width:100%;max-width:none}.hero-photo{width:100%;height:430px;bottom:auto}.hero-photo img{object-position:50% 24%}.hero-wash{background:linear-gradient(0deg,#10233d 0%,#10233d 45%,#10233deb 51%,#10233d61 65%,#10233d00 85%)}
 .hero-role{font-size:10px;letter-spacing:.04em;gap:11px;max-width:100%;margin-bottom:15px}.gold-rule{width:23px}.hero h1{font-size:clamp(29px,7.9vw,43px);line-height:1.65;letter-spacing:.025em;margin-bottom:17px}.hero-subtitle{font-size:12px;letter-spacing:.025em;margin-bottom:21px}.hero-identity{gap:20px;margin-bottom:22px}.hero-name{font-size:32px;letter-spacing:.18em}.hero-identity-rule{height:31px}.hero-identity-label{font-size:8px}.hero-actions{gap:22px}.hero-actions .button{font-size:11px;min-height:48px;padding:12px 16px;gap:24px}.hero-video-link{font-size:11px;gap:8px}.mini-play{width:25px;height:25px;font-size:12px}.hero-scroll{font-size:7px;margin-top:27px;gap:12px}.hero-scroll span{width:33px}
 .entry-links{width:100%;padding-inline:15px}.entry-links>a,.entry-links>a:first-child{padding:22px 13px;gap:9px;flex-wrap:wrap}.entry-links>a+a::before{top:22px;bottom:22px}.entry-number{font-size:18px}.entry-links small{font-size:7px;letter-spacing:.08em;margin-bottom:4px}.entry-links strong{font-size:15px;letter-spacing:0}.entry-arrow{display:none}
 .eyebrow{font-size:9px;letter-spacing:.2em;margin-bottom:15px;gap:10px}.eyebrow::before{width:20px}
 .message-grid{grid-template-columns:1fr;gap:53px}.message-photo{width:calc(100% - 14px);max-width:440px;aspect-ratio:5/5.3;margin-inline:auto}.message-photo img{object-position:50% 24%}.message-photo::before{inset:14px -12px -14px 12px}.message-photo figcaption{bottom:17px;left:17px;right:17px;font-size:8px;padding:9px 12px}.message-copy h2{font-size:29px;line-height:1.85;letter-spacing:.04em}.message-signature{font-size:23px;margin-top:22px;margin-bottom:20px}.section-body{margin-block:22px;font-size:14px;line-height:2.1}
 .section-heading{display:block;margin-bottom:32px}.section-heading h2,.movie-copy h2,.news-grid h2,.profile-band h2,.footer-contact h2{font-size:29px;letter-spacing:.06em}.section-heading>.text-link{margin-top:18px}.section-lead{max-width:none;margin-top:20px;font-size:13px}.text-link{font-size:12px;gap:33px;min-height:43px}.section-intro{font-size:13px;margin:-12px 0 26px}
 .sample-notice{display:block;font-size:11px;line-height:1.95;margin-top:-6px;margin-bottom:23px}.sample-notice>span{display:table;margin-bottom:8px;font-size:10px}
 .policy-grid{grid-template-columns:1fr;gap:13px}.policy-card.is-example,.policy-card>a{padding:23px 24px;position:relative}.policy-card h3{font-size:21px;min-height:0;margin:9px 0 13px;line-height:1.7;max-width:100%;padding-right:35px}.policy-number{font-size:24px}.policy-card p{font-size:12px;margin-bottom:17px}.draft-label{font-size:10px;padding-top:11px}.policy-more{font-size:12px;padding-top:12px}.section-end{margin-top:24px}
 .profile-band-grid{grid-template-columns:1fr;gap:40px}.profile-band .section-body{margin-bottom:24px}.profile-topics p{font-size:16px;gap:20px;padding:21px 0}.profile-topics p>span{font-size:18px}.profile-topics>small{font-size:11px}
 .movie-grid{gap:30px}.movie-title{font-size:13px}.movie-copy .section-body{font-size:13px}.video-pending>span:nth-child(2){font-size:19px}.play-outline{width:51px;height:51px;font-size:26px}.video-pending{gap:9px}.video-pending>small{font-size:10px}.play-symbol{width:55px;height:55px}.play-symbol::after{left:22px;top:17px}.video-trigger>span:nth-child(2){font-size:14px}.video-trigger>small{font-size:10px}.video-privacy{font-size:10px;line-height:1.9}
 .post-grid{grid-template-columns:1fr;gap:26px}.post-grid>.post-card:last-child:nth-child(3){grid-column:auto;max-width:none}.post-card-body{padding:23px 24px}.post-card h3{font-size:21px}.post-card p{font-size:13px}.post-meta{font-size:11px;gap:12px}.empty-state{padding:37px 20px}.empty-state h3{font-size:19px;line-height:1.8}.empty-state p{font-size:12px}
 .news-grid{gap:30px}.news-list a{flex-wrap:wrap;gap:8px 14px;padding-block:20px;font-size:14px}.news-list time{flex-basis:100%;font-size:11px}.news-list a>span:nth-child(2){flex:1}.news-empty{padding-block:26px;gap:13px}.news-empty p{font-size:12px}
 .footer-contact{padding-block:50px}.footer-contact-inner{display:block}.footer-contact-text{font-size:12px;line-height:2;margin-top:20px}.footer-contact .button{margin-top:26px;min-width:200px;font-size:12px;min-height:50px}.footer-main{padding-block:45px;grid-template-columns:1fr;gap:37px}.footer-name{font-size:31px}.footer-org{font-size:11px}.footer-description{font-size:11px;line-height:2}.footer-menu{grid-template-columns:1fr 1fr;gap:16px 25px}.footer-menu a{font-size:12px;min-height:30px}.footer-bottom{flex-wrap:wrap;gap:12px 18px;font-size:9px;padding-block:22px}.footer-bottom small{font-size:9px}.back-top{margin-left:auto;gap:10px}
 .page-hero{padding-block:41px 45px}.page-hero h1{font-size:32px;letter-spacing:.06em}.breadcrumbs{font-size:10px;gap:9px;padding-block:16px}.page-intro{margin-bottom:30px}.entry-content{font-size:15px;line-height:2.05}.entry-content h2{font-size:24px;padding-bottom:12px;margin-top:36px;margin-bottom:23px}.entry-content h3{font-size:20px}.entry-content h4{font-size:18px}.entry-content th,.entry-content td{padding:12px;font-size:13px}.entry-content blockquote{padding:20px}.ichikawa-note{font-size:13px;padding:17px 19px}.entry-content .alignleft,.entry-content .alignright{float:none;margin:25px 0;max-width:100%;width:auto}
 .profile-page-grid{grid-template-columns:1fr;gap:45px}.profile-aside{max-width:400px;width:100%;margin-inline:auto}.profile-aside figure{aspect-ratio:4/4.5}.profile-aside img{object-position:50% 25%}.profile-person-name{font-size:29px;margin-top:21px}.profile-person-role{font-size:12px}.video-grid{grid-template-columns:1fr;gap:45px}.video-card h3{font-size:22px}.video-card>p{font-size:13px}.video-gallery-featured h3{font-size:22px}.contact-box{padding:28px 24px}.contact-box h2{font-size:24px}.contact-details{font-size:13px}.contact-details>div{grid-template-columns:1fr;gap:5px;padding-block:14px}
 .single-hero{padding-block:43px}.single-hero h1{font-size:27px;line-height:1.8}.single-hero .post-meta{font-size:11px;margin-block:18px}.single-article .video-component{margin-bottom:30px}.post-navigation .nav-links{gap:24px}.post-navigation a{font-size:12px}.related-section h2{font-size:26px}.page-featured,.single-featured{margin-bottom:30px}.not-found h1{font-size:27px}.search-form input{padding-inline:12px}.search-form button{padding-inline:18px}.comments-area h2,.comments-area h3{font-size:22px}
}
@media(max-width:370px){.container,.container-narrow{width:calc(100% - 36px)}.hero h1{font-size:28px}.hero-role{font-size:9px;letter-spacing:0}.hero-inner{padding-top:310px}.hero-photo{height:400px}.hero-actions{gap:17px}.hero-actions .button{gap:16px;padding-inline:13px}.hero-name{font-size:30px}.entry-links{padding-inline:7px}.entry-links>a,.entry-links>a:first-child{padding-inline:10px;gap:7px}.entry-links strong{font-size:14px}.message-copy h2{font-size:26px}.review-banner .container>span:first-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.review-banner,.site-header,.site-footer,.entry-links,.edit-link,.hero-scroll,.video-trigger,.comments-area{display:none!important}.section-pad{padding-block:25px}.hero,.hero-inner{min-height:0}.hero-inner{padding:30px 0}.hero-copy{width:100%}.hero-photo,.hero-wash{display:none}.hero,.profile-band,.page-hero,.single-hero{color:#000;background:#fff}.hero h1{font-size:30px;text-shadow:none}.hero *,.profile-band *,.page-hero *,.single-hero *{color:#000!important}.container,.container-narrow,.container-wide{width:100%;max-width:none}.post-card,.policy-card,figure{break-inside:avoid}.button{border:1px solid #777!important;background:#fff!important;color:#000!important}.message-grid,.profile-page-grid{gap:30px}.message-photo{max-height:350px}a{text-decoration:underline}}
