.template-hero { background: linear-gradient(135deg,#eef2ff,#e0e7ff); border-bottom:1px solid #c7d2fe; padding:18px 0 52px; }
.breadcrumb { color:var(--gray-500); font-size:.8rem; margin-bottom:30px; }
.breadcrumb a { color:var(--primary); }
.template-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:48px; align-items:center; }
.template-kicker { display:inline-flex; padding:5px 12px; border-radius:999px; background:#fff; color:var(--primary); font-size:.76rem; font-weight:700; margin-bottom:14px; }
.template-hero h1 { color:var(--gray-900); font-size:clamp(2rem,4vw,3.25rem); line-height:1.1; letter-spacing:-.04em; margin-bottom:16px; }
.template-hero__lead { color:var(--gray-600); font-size:1rem; max-width:720px; }
.hero-card { background:rgba(255,255,255,.82); border:1px solid #c7d2fe; border-radius:var(--radius-lg); padding:24px; box-shadow:var(--shadow-md); }
.hero-card strong { display:block; color:var(--gray-900); margin-bottom:8px; }
.hero-card p { color:var(--gray-600); font-size:.84rem; margin-bottom:18px; }
.template-layout { display:grid; grid-template-columns:minmax(0,760px) 260px; gap:44px; align-items:start; }
.template-main h2 { font-size:1.5rem; color:var(--gray-900); margin:42px 0 12px; letter-spacing:-.02em; }
.template-main h2:first-child { margin-top:0; }
.template-main h3 { font-size:1.05rem; color:var(--gray-900); margin:24px 0 8px; }
.template-main p,.template-main li { color:var(--gray-600); font-size:.92rem; line-height:1.8; }
.template-main ul,.template-main ol { padding-left:22px; margin:10px 0 18px; }
.copy-card { border:1.5px solid #c7d2fe; border-radius:var(--radius-lg); background:white; overflow:hidden; box-shadow:var(--shadow); margin:18px 0 28px; }
.copy-card__bar { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:14px 18px; background:var(--primary-light); border-bottom:1px solid #c7d2fe; }
.copy-card__bar strong { color:var(--gray-900); font-size:.88rem; }
.copy-card pre { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; font-size:.86rem; line-height:1.75; color:var(--gray-700); padding:22px; max-height:580px; overflow:auto; }
.template-note { background:#fffbeb; border:1px solid #fde68a; border-radius:var(--radius); padding:16px 18px; color:#92400e !important; }
.template-sidebar { position:sticky; top:82px; }
.side-card { background:white; border:1px solid var(--gray-200); border-radius:var(--radius); padding:20px; margin-bottom:16px; }
.side-card h2 { font-size:.9rem; margin:0 0 12px; }
.side-card ul { list-style:none; padding:0; margin:0; }
.side-card li { margin:9px 0; line-height:1.4; }
.side-card a { color:var(--primary); font-size:.82rem; }
.faq-static { border-top:1px solid var(--gray-200); padding:18px 0; }
.faq-static h3 { margin:0 0 6px; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:16px; }
.related-card { padding:18px; background:white; border:1px solid var(--gray-200); border-radius:var(--radius); }
.related-card strong { display:block; color:var(--gray-900); margin-bottom:5px; font-size:.88rem; }
.related-card span { color:var(--gray-500); font-size:.78rem; }
.footer__links { display:flex; flex-wrap:wrap; justify-content:center; gap:16px; }
.footer__links a { color:var(--gray-300); font-size:.76rem; }
.partners-hero h1 { color:var(--gray-900); font-size:clamp(2rem,4vw,3.25rem); line-height:1.1; letter-spacing:-.04em; margin-bottom:16px; }
.partners-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.partner-card { display:flex; flex-direction:column; gap:7px; min-height:120px; padding:24px; background:white; border:1.5px solid var(--gray-200); border-radius:var(--radius); box-shadow:var(--shadow); transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease); }
.partner-card::after { content:'Visit website ↗'; margin-top:auto; color:var(--primary); font-size:.76rem; font-weight:600; }
.partner-card:hover { transform:translateY(-2px); border-color:#c7d2fe; box-shadow:var(--shadow-md); }
.partner-card strong { color:var(--gray-900); font-size:1rem; }
.partner-card span { color:var(--gray-500); font-size:.8rem; }
.partners-note { max-width:760px; margin:32px auto 0; color:var(--gray-500); text-align:center; font-size:.78rem; }
.legal-page { max-width:820px; }
.legal-page h2 { color:var(--gray-900); font-size:1.35rem; margin:34px 0 10px; }
.legal-page p,.legal-page li { color:var(--gray-600); font-size:.94rem; line-height:1.8; }
.legal-page ul { padding-left:22px; }
.legal-page a { color:var(--primary); text-decoration:underline; text-underline-offset:3px; }
.contact-card,.directory-guidance { background:white; border:1px solid var(--gray-200); border-radius:var(--radius-lg); padding:26px; box-shadow:var(--shadow); }
.contact-card h2 { margin-top:0; }
.contact-email { font-size:1.1rem; font-weight:700; overflow-wrap:anywhere; }
.template-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.template-directory a { display:flex; flex-direction:column; gap:8px; padding:24px; background:white; border:1px solid var(--gray-200); border-radius:var(--radius-lg); box-shadow:var(--shadow); }
.template-directory a:hover { border-color:#c7d2fe; transform:translateY(-2px); }
.template-directory strong { color:var(--gray-900); }
.template-directory span,.directory-guidance p { color:var(--gray-600); font-size:.9rem; line-height:1.65; }
.directory-guidance { margin-top:30px; }
.directory-guidance h2 { margin:0 0 10px; }
@media(max-width:860px){.template-hero__grid,.template-layout{grid-template-columns:1fr}.hero-card{max-width:520px}.template-sidebar{position:static}.related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.partners-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.template-hero{padding-bottom:38px}.template-hero__grid{gap:28px}.related-grid,.partners-grid,.template-directory{grid-template-columns:1fr}.copy-card__bar{align-items:flex-start;flex-direction:column}.copy-card pre{padding:17px}}
