/* NANIMONO AGENT extends the existing service editorial components only. */
body[data-page="nanimono-agent"] .lf-hero-frame { --hero-focus:70% 32%; }
body[data-page="nanimono-agent"] .lf-hero-frame[data-hero-layout] .lf-hero-layout > h1 { font-size:clamp(31px,2.65vw,38px); }
body[data-page="nanimono-agent"] .lf-hero-frame h1 .ag-descriptor { margin:0 0 9px; color:#555; font:500 10px/1.6 var(--lf-sans); letter-spacing:.09em; }
.ag-editorial .ag-accent { color:var(--lf-accent,#174777); }
.ag-editorial .ag-philosophy h2 { font-size:clamp(32px,3.7vw,52px); line-height:1.55; }
.ag-editorial .ag-philosophy .sd-section-head { margin-bottom:30px; }
.ag-editorial .ag-philosophy .sd-reading { max-width:720px; }
.ag-editorial .ag-note { max-width:860px; margin:24px 0 0; padding-top:18px; border-top:1px solid #ddd; color:#555; font-size:12px; line-height:1.9; }
body[data-page="nanimono-agent"] .ag-approach { grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.ag-editorial .ag-audience { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:56px; align-items:center; }
.ag-editorial .ag-photo img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.ag-editorial .ag-company-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:56px; align-items:start; }
.ag-editorial .ag-points { list-style:none; padding:0; margin:24px 0; }
.ag-editorial .ag-points li { padding:11px 0; border-top:1px solid #ddd; font-size:14px; font-weight:500; }
.ag-editorial .ag-points li:last-child { border-bottom:1px solid #ddd; }
.ag-editorial .ag-company-layout .ag-points { margin-top:0; }
.ag-editorial .vb-ecosystem p { font-size:12px; line-height:1.9; margin-top:12px; }
.ag-editorial .vb-ecosystem [aria-current="page"] { border-top-color:var(--lf-accent,#174777); }
.ag-editorial .ag-faq { max-width:900px; }
.ag-editorial .ag-faq details { border-top:1px solid #ccc; padding:0; }
.ag-editorial .ag-faq details:last-child { border-bottom:1px solid #ccc; }
.ag-editorial .ag-faq summary { cursor:pointer; padding:20px 8px; font-size:15px; font-weight:600; line-height:1.8; }
.ag-editorial .ag-faq details > div { padding:0 8px 22px; font-size:14px; line-height:2; }
.ag-editorial .ag-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-top:28px; }
.ag-editorial .ag-final-copy { display:flex; flex-direction:row-reverse; justify-content:space-between; align-items:center; gap:48px; }
.ag-editorial .ag-wordmark { flex:0 0 210px; width:210px; height:105px; object-fit:contain; }
.ag-editorial .ag-status { max-width:none; }
.ag-editorial .ag-status > strong { display:block; margin-bottom:8px; font-size:13px; color:#333; }
.ag-editorial .ag-status p+p { margin-top:8px; }
.ag-editorial .ag-status a { text-decoration:underline; text-underline-offset:4px; }
@media(min-width:700px) and (max-width:1023px) {
 body[data-page="nanimono-agent"] .lf-hero-frame[data-hero-layout] .lf-hero-layout > h1 { font-size:28px; }
 .ag-editorial .ag-audience,.ag-editorial .ag-company-layout { gap:32px; }
 body[data-page="nanimono-agent"] .ag-approach { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 32px; }
}
@media(max-width:699px) {
 body[data-page="nanimono-agent"] .lf-hero-frame[data-hero-layout] .lf-hero-layout > h1 { font-size:28px; }
 body[data-page="nanimono-agent"] .lf-hero-frame h1 .ag-descriptor { font-size:9px; margin-bottom:8px; }
 body[data-page="nanimono-agent"] .lf-hero-actions { gap:10px; }
 body[data-page="nanimono-agent"] .lf-hero-actions .btn { flex:1 1 145px; padding-inline:8px; font-size:11px; }
 .ag-editorial .ag-audience,.ag-editorial .ag-company-layout { grid-template-columns:minmax(0,1fr); gap:26px; }
 body[data-page="nanimono-agent"] .ag-approach { grid-template-columns:minmax(0,1fr); gap:0; }
 .ag-editorial .ag-approach li { display:grid; grid-template-columns:66px minmax(0,1fr); gap:18px; }
 .ag-editorial .ag-approach li > span { margin:4px 0 0; }
 .ag-editorial .ag-note { margin-top:20px; font-size:12px; }
 .ag-editorial .ag-philosophy h2 { font-size:30px; }
 .ag-editorial .vb-ecosystem p { grid-column:2; margin-top:6px; }
 .ag-editorial .ag-photo img { aspect-ratio:16/10; }
 .ag-editorial .ag-final-copy { flex-direction:column; align-items:flex-start; gap:16px; }
 .ag-editorial .ag-wordmark { flex:0 0 auto; width:170px; height:85px; }
 .ag-editorial .ag-actions { display:grid; grid-template-columns:1fr; gap:12px; }
 .ag-editorial .ag-actions .btn { width:100%; }
 .ag-editorial .ag-faq summary { font-size:14px; }
}
