.ip-publication { max-width: 940px; margin: 0 auto; padding: clamp(38px, 7vw, 80px) 22px clamp(50px, 8vw, 100px); color: var(--ip-ink, #12283f); font-size: 18px; overflow-wrap: anywhere; }
.ip-publication-back { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 28px; color: var(--ip-muted, #4b6275); text-decoration: underline; text-underline-offset: 4px; font-size: 16px; }
.ip-publication article { background: #fff; border: 1px solid var(--ip-line, #cedde5); border-radius: 25px; padding: clamp(22px, 5vw, 60px); box-shadow: 0 12px 32px #12283f05; }
.ip-publication h1 { font-size: clamp(32px, 5vw, 58px); line-height: 1.18; letter-spacing: -.04em; margin: 22px 0; color: var(--ip-ink, #12283f); }
.ip-publication-eyebrow { font-size: 16px; color: var(--ip-secondary, #07727e); letter-spacing: .025em; line-height: 1.6; }
.ip-publication-eyebrow span { display: inline-block; margin: 6px 0 0 12px; padding: 5px 11px; border-radius: 20px; color: #813512; background: #fff0e6; font-size: 15px; letter-spacing: 0; }
.ip-publication-intro { font-size: 21px; line-height: 1.7; color: var(--ip-muted, #4b6275); }
.ip-publication-content { margin: 26px 0; font-size: 18px; line-height: 1.85; color: var(--ip-muted, #4b6275); }
.ip-publication-content a { color: var(--ip-secondary, #07727e); text-decoration: underline; text-underline-offset: 3px; }
.ip-publication-content img { height: auto; max-width: 100%; }
.ip-publication-image { margin: 25px 0; }
.ip-publication-image img { height: auto; max-width: 100%; border-radius: 18px; }
.ip-publication-button { display: inline-flex; gap: 25px; align-items: center; justify-content: center; min-height: 48px; max-width: 100%; background: var(--ip-accent, #f26732); color: var(--ip-accent-ink, #12283f) !important; text-decoration: none !important; padding: 15px 23px; border-radius: 12px; font-size: 17px; font-weight: 700; margin-top: 18px; transition: background-color .18s ease, color .18s ease; }
.ip-publication-button:hover { background: var(--ip-ink, #12283f); color: #fff !important; }
.ip-publication-domain { font-size: 16px; color: var(--ip-muted, #4b6275); margin: 13px 0; }
.ip-publication-note { background: var(--ip-tint, #e7f5f4); border-radius: 14px; padding: 20px; font-size: 16px; line-height: 1.7; color: var(--ip-muted, #4b6275); margin-top: 32px; }
.ip-publication a:focus-visible { outline: 3px solid var(--ip-secondary, #07727e); outline-offset: 5px; }
@media (max-width: 540px) { .ip-publication { padding-left: 16px; padding-right: 16px; } .ip-publication article { border-radius: 19px; padding: 23px 20px; } .ip-publication-eyebrow span { margin-left: 0; } .ip-publication-button { width: 100%; } }
