/* SEO topic pages: editorial design consistent with Duru's warm portfolio */
.topic-page{background:var(--paper);color:var(--ink)}
.topic-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1.15rem clamp(1rem,4vw,3rem);border-bottom:1px solid var(--line)}
.topic-wordmark{font-size:.82rem;font-weight:700;letter-spacing:-.04em;line-height:.9}
.topic-nav{display:flex;flex-wrap:wrap;gap:.45rem}
.topic-nav a{min-height:44px;display:inline-flex;align-items:center;padding:.55rem .8rem;border:1px solid var(--line);border-radius:999px;font-size:.77rem}
.topic-nav a[aria-current=page]{background:var(--ink);color:var(--paper)}
.topic-nav a:focus-visible,.topic-cta:focus-visible,.topic-more a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.topic-crumb{padding:1.25rem clamp(1rem,4vw,3rem) 0;font-size:.77rem;color:#8e6473}
.topic-crumb a{text-decoration:underline;text-underline-offset:.2rem}
.topic-hero{display:grid;grid-template-columns:1fr .87fr;gap:clamp(1.5rem,4vw,5rem);align-items:center;padding:clamp(1.5rem,5vw,5rem) clamp(1rem,4vw,3rem);background:linear-gradient(150deg,#fbf5ef,#f4e2e2)}
.topic-hero h1{max-width:20ch;margin:1.1rem 0 1.5rem;font:normal clamp(2.4rem,4.7vw,4.65rem)/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.045em;overflow-wrap:break-word}
.topic-lead{font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.55;max-width:43rem}
.topic-cta{display:inline-flex;align-items:center;border-bottom:2px solid var(--accent);padding:.55rem 0;font-size:.9rem;font-weight:700;overflow-wrap:anywhere}
.topic-image{margin:0}
.topic-image img{display:block;width:100%;height:auto;max-height:650px;object-fit:contain;background:#ede6e2;border-radius:.85rem}
.topic-image figcaption{padding-top:.6rem;font-size:.7rem;color:#8b6473}
.topic-articles{max-width:1060px;margin:auto;padding:clamp(1.5rem,4vw,4rem) clamp(1rem,4vw,3rem)}
.topic-section{padding:2rem 0;border-bottom:1px solid var(--line);scroll-margin-top:3rem}
.topic-section h2,.topic-contact h2{font:normal clamp(2rem,3.5vw,3.2rem)/1.1 Georgia,serif;letter-spacing:-.04em;margin:1rem 0 1.4rem}
.topic-section p{max-width:73ch;font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.72}
.topic-section a,.topic-contact p a{color:#874963;text-decoration:underline;text-underline-offset:.2rem}
.topic-contact{padding:clamp(1.5rem,4vw,4rem);margin:2rem clamp(1rem,4vw,3rem) 0;background:#f1e1e3;border-radius:.9rem}
.topic-contact p:not(.eyebrow){line-height:1.6}
.topic-comp-card{margin:1.25rem 0;padding:1rem;border:1px solid var(--line);border-radius:.75rem;background:#fff8f5}
.topic-comp-card p{margin:0 0 .75rem}
.topic-comp-card-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
.topic-comp-card-links a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:.55rem .45rem;border:1px solid var(--line);border-radius:.45rem;text-decoration:none;text-align:center;overflow-wrap:anywhere;font-size:.85rem}
.topic-comp-card-links a:hover,.topic-comp-card-links a:focus-visible{background:var(--ink);color:#fff;outline-offset:2px}

.topic-more{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;padding:2rem clamp(1rem,4vw,3rem)}
.topic-more a{display:flex;align-items:center;min-height:65px;padding:1.1rem;border:1px solid var(--line);border-radius:.8rem;background:#fff9f5;font-size:.85rem}
.topic-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:1.1rem clamp(1rem,4vw,3rem);font-size:.7rem;border-top:1px solid var(--line)}
@media(max-width:760px){.topic-nav{width:100%}.topic-nav a{font-size:.71rem;padding:.5rem .64rem}.topic-hero{grid-template-columns:1fr}.topic-hero h1{font-size:clamp(2.15rem,7.5vw,3.2rem);line-height:1.12}.topic-more{grid-template-columns:1fr}}
