/* Publisher identity and readable policy pages. */
.identity-page{max-width:1000px}.identity-page .breadcrumb{margin-bottom:28px}.identity-page h1{max-width:850px}.identity-page>p,.identity-page>ul,.identity-page>ol{max-width:72ch}.identity-page .identity-lead{max-width:70ch;margin-bottom:28px;font-size:1.25rem;line-height:1.7;color:var(--ink)}.identity-page .policy-date{margin-top:-8px;margin-bottom:24px;color:var(--muted);font-size:.875rem;line-height:1.6}.identity-page ul,.identity-page ol{padding-left:24px;margin:18px 0 28px}.identity-page li{padding-left:4px;margin:12px 0;color:var(--muted);font-size:1.0625rem;line-height:1.75;overflow-wrap:anywhere}.identity-page p a,.identity-page li a{text-decoration-thickness:1px}.identity-page .page-contents ul{margin:0;padding:0}.identity-page .page-contents li{margin:0;padding:0}.identity-page h2{line-height:1.3;scroll-margin-top:110px}.identity-page .eyebrow{color:#53613e}.identity-page p{font-size:1.0625rem;line-height:1.75;overflow-wrap:anywhere}.identity-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:32px 0 40px}.identity-principles>div{min-width:0;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff}.identity-principles h2{font-size:1.25rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px}.identity-principles p{font-size:1rem;line-height:1.75;margin:0}.identity-link-panel,.identity-notice{padding:24px 28px;margin:28px 0;border:1px solid #d0dac0;border-radius:14px;background:#f0f3e7}.identity-link-panel h2,.identity-notice h2{font-size:1.375rem;line-height:1.35;margin:0 0 14px}.identity-link-panel p,.identity-notice p{font-size:1rem;line-height:1.75;margin:0;max-width:70ch}.identity-notice{background:#f6f6ed;border-color:#d8dbc6}

/* Creator cards share one readable rhythm on the home page and tool pages. */
.ifc-creator-card{display:flex;align-items:center;gap:24px;min-width:0;padding:28px;margin:28px 0;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:left}.ifc-creator-card>div{min-width:0}.ifc-creator-card .ifc-portrait,.ifc-creator-card .ifc-avatar{width:88px;height:88px;flex-shrink:0;object-fit:cover;border-radius:50%}.ifc-avatar{display:inline-grid;place-items:center;background:#e7eecf;color:#53613e;font-family:var(--font-sans);font-size:29px;font-weight:600}.ifc-creator-card .eyebrow{font-size:.75rem;line-height:1.6;letter-spacing:.07em;color:#53613e}.ifc-creator-card h2{font-size:1.625rem;line-height:1.3;margin:8px 0 12px;letter-spacing:-.025em}.ifc-creator-card h2 a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.ifc-creator-card p,.identity-page .ifc-creator-card p{max-width:65ch;margin:0 0 12px;font-size:1rem;line-height:1.75}.ifc-creator-card .text-link{font-size:.9375rem}.ifc-creator-card.is-compact{align-items:center;gap:16px;padding:18px 20px;margin:24px 0;background:#f3f5eb;border-radius:12px}.ifc-creator-card.is-compact .ifc-portrait,.ifc-creator-card.is-compact .ifc-avatar{width:48px;height:48px;font-size:18px}.ifc-creator-card.is-compact p,.identity-page .ifc-creator-card.is-compact p{margin:0;font-size:.9375rem;line-height:1.6}.ifc-creator-card.is-compact p span{display:block;color:var(--muted);font-size:.875rem;line-height:1.6}.ifc-creator-card.is-compact p>a{display:inline-flex;align-items:center;min-height:44px;margin-top:0;color:var(--ink);font-weight:600}

/* Profile and contact layouts remain wide; long prose stays within a reading measure. */
.identity-profile-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(180px,.65fr);gap:40px;align-items:center;margin-bottom:40px}.identity-profile-hero>div{min-width:0}.identity-profile-hero h1{margin:16px 0 22px}.identity-profile-hero .identity-lead{font-size:1.25rem;line-height:1.7;margin:0 0 20px}.identity-profile-hero .identity-location{font-size:.9375rem;line-height:1.6;color:var(--muted);margin:0}.identity-profile-portrait{display:grid;place-items:center;justify-self:end;width:100%;max-width:290px;aspect-ratio:1/1;overflow:hidden;border:1px solid #d2dcc1;border-radius:24px;background:#e8edda}.identity-profile-portrait .ifc-portrait,.identity-profile-portrait .ifc-avatar{width:100%;height:100%;object-fit:cover;font-size:72px;border-radius:0}.identity-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 36px}.identity-project{display:block;min-width:0;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;transition:border-color .15s}.identity-project:hover{border-color:#879b59}.identity-project h3{font-size:1.375rem;line-height:1.3;color:var(--ink);margin:16px 0 14px;overflow-wrap:anywhere}.identity-project p{font-size:1rem;line-height:1.75;margin:0 0 12px}.identity-project>.text-link{font-size:.9375rem;text-decoration:underline;text-underline-offset:4px}.identity-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 12px}.identity-actions .button{font-size:1rem;min-height:48px}.identity-actions .secondary{background:#fff;color:var(--ink);border-color:var(--control-border)}.identity-actions .secondary:hover{background:#eff3e3}.identity-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:32px 0 36px}.identity-contact{display:flex;flex-direction:column;min-width:0;padding:24px 20px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;overflow-wrap:anywhere;transition:border-color .15s}.identity-contact:hover{border-color:#879b59}.identity-contact strong{font-size:1rem;line-height:1.6;font-weight:600;color:var(--ink);margin:16px 0 12px;overflow-wrap:anywhere}.identity-contact>span:last-child{font-size:.9375rem;line-height:1.7;color:var(--muted)}.identity-page .identity-process{list-style:decimal;padding-left:24px}.identity-process strong{color:var(--ink)}
@media(max-width:800px){.identity-principles,.identity-contact-grid{grid-template-columns:1fr}.identity-principles{gap:14px}.identity-profile-hero{grid-template-columns:minmax(0,1.4fr) minmax(150px,.7fr);gap:28px}.identity-profile-hero .identity-lead{font-size:1.125rem}.identity-contact{padding:24px}.identity-contact strong{font-size:1rem;margin:12px 0 10px}}
@media(max-width:560px){.identity-page .breadcrumb{margin-bottom:24px}.identity-page .identity-lead{font-size:1.125rem;line-height:1.7}.identity-page h1{font-size:2.125rem;line-height:1.2}.identity-page p,.identity-page li{font-size:1.0625rem;line-height:1.75}.identity-page .policy-date{font-size:.875rem;margin-top:-4px}.identity-profile-hero{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.identity-profile-portrait{grid-row:1;justify-self:start;width:150px;max-width:150px;border-radius:20px}.identity-profile-portrait .ifc-avatar{font-size:46px}.identity-profile-hero h1{margin:14px 0 18px}.identity-profile-hero .identity-lead{font-size:1.125rem}.identity-projects{grid-template-columns:1fr}.identity-project{padding:22px}.identity-project h3{font-size:1.25rem}.identity-project p{font-size:1rem}.identity-actions{gap:10px}.identity-actions .button{font-size:1rem;padding:11px 18px}.identity-link-panel,.identity-notice{padding:22px}.ifc-creator-card{align-items:flex-start;gap:16px;padding:22px}.ifc-creator-card .ifc-portrait,.ifc-creator-card .ifc-avatar{width:64px;height:64px;font-size:24px}.ifc-creator-card h2{font-size:1.375rem;line-height:1.3;margin:6px 0 12px}.ifc-creator-card p,.identity-page .ifc-creator-card p{font-size:.9375rem;line-height:1.7}.ifc-creator-card .eyebrow{font-size:.75rem;line-height:1.6}.ifc-creator-card.is-compact{align-items:center;padding:16px;gap:14px}.ifc-creator-card.is-compact p,.identity-page .ifc-creator-card.is-compact p{font-size:.9375rem}.identity-contact-grid{margin-top:24px;gap:14px}}
@media(max-width:380px){.ifc-creator-card:not(.is-compact){flex-direction:column;gap:16px}.ifc-creator-card.is-compact{gap:12px}.identity-actions{flex-direction:column;align-items:stretch}.identity-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.identity-project,.identity-contact{transition:none}}
