@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@200;300;400;500;600;700;800&family=Roboto:wght@300;400;500;700&display=swap");
[hidden] { display: none !important; }
:root {
  --coral: #ff765f;
  --coral-dark: #f45b48;
  --accent-soft: #f7f3ee;
  --accent-ink: #6f5a52;
  --blush: #fff6f4;
  --blush-2: #fff1ee;
  --card-bg: #fff;
  --ink: #242424;
  --muted: #6f746f;
  --line: #e7e3dc;
  --white: #fff;
  --shadow: 0 5px 18px rgba(63,35,28,.06);
  --font-heading: "Montserrat", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --font-body: "Roboto", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: #F8F6F0; color: var(--ink); font-family: var(--font-body); font-size: 15px; line-height: 1.65; }
a { color: inherit; }
h1,h2,h3,.brand,.eyebrow,small,button,.primary,.page-card span,.feature span,.mockup-top strong,.mockup-grid span { font-family: var(--font-heading); }
.seo-page .site-header { height: 64px; padding: 0 max(28px, calc((100% - 1200px)/2)); display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #eee; background: #fff; position: sticky; top: 0; z-index: 20; }
.brand { font-size: 19px; font-weight: 650; color: var(--ink); text-decoration: none; display: flex; align-items: center; gap: 9px; white-space: nowrap; line-height: 1.1; }
.brand:before { content: "✣"; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: linear-gradient(135deg,#ff3e22,#ff735d); color: #fff; font-size: 19px; box-shadow: 0 4px 12px #ff765f44; }
.seo-page .nav-toggle, .seo-page .nav-button { display: none; }
.seo-page .nav { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.seo-page .nav a { font: 600 13px/1 var(--font-heading); color: #706762; text-decoration: none; }
.seo-page .nav a:hover { color: var(--coral-dark); }
.seo-page main { max-width: 1200px; margin: auto; padding: 40px 28px 90px; }
.auth { min-height: calc(100vh - 145px); display: grid; grid-template-columns: 1.15fr .7fr; gap: 80px; align-items: center; }
.landing-copy { min-width: 0; }
.index-hero { display: block; min-height: auto; max-width: 900px; padding: 32px 0 30px; }
.auth h1, .landing h1 { font-size: 54px; line-height: 1.08; margin: 11px 0 20px; letter-spacing: -2px; font-weight: 600; }
h1 { font-weight: 600; }
h2 { margin: 0 0 14px; font-size: 25px; line-height: 1.18; letter-spacing: 0; font-weight: 550; }
h3 { margin: 0; font-size: 22px; font-weight: 550; }
.eyebrow, small { font-size: 11px; letter-spacing: 1.2px; color: var(--accent-ink); font-weight: 600; text-transform: uppercase; }
.lead { font-size: 18px; line-height: 1.6; color: var(--muted); max-width: 620px; }
.card, article, .faq details, .page-card, .feature, .example-card, .mockup { background: var(--card-bg); border: 1px solid var(--line); border-radius: 16px; padding: 25px; box-shadow: var(--shadow); }
.card h2 { font-size: 27px; margin: 0 0 22px; }
form { display: block; }
label { display: block; color: #666; font-size: 13px; margin: 15px 0; }
input, textarea, select { width: 100%; border: 1px solid #e6ddda; background: #fff; padding: 12px 14px; border-radius: 10px; color: var(--ink); font: inherit; margin-top: 7px; outline: none; transition: .15s; }
input:focus, textarea:focus, select:focus { border-color: #ff9b89; box-shadow: 0 0 0 3px #ff765f18; }
.primary { border: 0; background: var(--coral); color: #fff; padding: 12px 18px; border-radius: 10px; font-weight: 600; cursor: pointer; box-shadow: 0 5px 12px #ff765f24; width: 100%; white-space: normal; line-height: 1.25; }
.primary:hover { background: var(--coral-dark); transform: translateY(-1px); }
.link { border: 0; background: none; color: var(--coral-dark); cursor: pointer; width: 100%; padding: 10px; }
.landing-character { margin: 30px 0 0; max-width: 620px; }
.landing-character img { display: block; width: min(100%, 480px); height: auto; object-fit: contain; object-position: left bottom; border-radius: 16px; background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow); }
.landing-character figcaption { max-width: 480px; color: #7d736e; font-size: 14px; line-height: 1.55; margin: 10px 0 0; }
.text-section { display: grid; grid-template-columns: 34% 1fr; gap: 42px; padding: 48px 0; border-top: 1px solid var(--line); }
.intro-section { border-top: 0; }
.text-flow p { margin-top: 0; font-size: 16px; color: #4f4742; }
.product-panel { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 30px; align-items: stretch; margin: 24px 0 48px; padding: 34px; background: var(--blush); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.product-copy ul { padding-left: 20px; }
.mockup { padding: 24px; background: #fff; display: grid; gap: 18px; }
.mockup-top { display: flex; justify-content: space-between; gap: 16px; color: var(--muted); font-size: 14px; }
.progress-line { height: 12px; background: #f0e8e5; border-radius: 999px; overflow: hidden; }
.progress-line span { display: block; height: 100%; background: linear-gradient(90deg,#d99283,#ff765f); }
.mockup-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.mockup-grid span { padding: 12px; background: var(--blush-2); border: 1px solid #f0dfd9; border-radius: 10px; font-weight: 600; color: #9a564a; }
blockquote { margin: 0; padding-left: 16px; border-left: 4px solid var(--coral); color: #4f4742; }
.feature-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 36px 0; }
.feature { padding: 24px; }
.feature span { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; margin-bottom: 16px; border-radius: 11px; background: var(--blush-2); color: #9a564a; font-weight: 600; }
.feature h2, article h2 { font-size: 23px; }
.content-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 40px 0; }
li { margin: 8px 0; }
.example-section { display: grid; grid-template-columns: 38% 1fr; gap: 26px; align-items: start; margin: 42px 0; padding: 34px; background: #23211d; color: #fff; border-radius: 16px; }
.example-section h2, .example-section .eyebrow { color: #fff; }
.example-section p { color: #efe8e5; }
.example-card { box-shadow: none; color: var(--ink); padding: 24px; }
.example-line { display: grid; grid-template-columns: 120px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.example-line:last-child { border-bottom: 0; }
.mid-cta { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; margin: 42px 0; padding: 28px 30px; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.mid-cta h2 { margin-bottom: 8px; }
.mid-cta p { margin: 0; color: var(--muted); }
.mid-cta a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 11px 17px; border-radius: 11px; background: linear-gradient(135deg,#ff8b75,#ff6e57); color: #fff; font: 700 14px/1 var(--font-heading); text-decoration: none; box-shadow: 0 5px 12px #ff765f2b; white-space: nowrap; }
.mid-cta a:hover { background: var(--coral-dark); transform: translateY(-1px); }
.wide-image { display: grid; grid-template-columns: 46% 1fr; gap: 30px; align-items: center; margin: 42px 0; }
.wide-image img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 16px; border: 1px solid var(--line); background: #fff; box-shadow: var(--shadow); }
.timeline { margin: 42px 0; }
.timeline-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.timeline-grid div { padding: 20px; background: #fff; border-left: 5px solid var(--coral); border-radius: 16px; box-shadow: var(--shadow); }
.checklist, .faq, .keyword-block { margin: 42px 0; }
.ticks { display: flex; flex-wrap: wrap; gap: 10px; }
.ticks span { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 9px 13px; font-weight: 600; color: #5d625c; font-family: var(--font-heading); }
.keyword-block { padding: 28px; background: var(--blush); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.keyword-block p { margin-bottom: 0; color: #706762; }
.tool-hero { display: grid; grid-template-columns: minmax(0, .9fr) minmax(340px, .7fr); gap: 34px; align-items: center; padding: 42px 0 18px; }
.tool-hero__copy { display: grid; gap: 14px; align-content: center; }
.tool-hero h1 { max-width: 760px; }
.tool-hero .landing-character { margin: 0; }
.tool-hero .landing-character img { width: 100%; max-height: 360px; object-fit: cover; object-position: center; }
.tool-hero .landing-character figcaption { max-width: none; padding: 11px 13px; background: #fff; border: 1px solid var(--line); border-radius: 12px; }
.tool-hero__media { display: grid; gap: 12px; }
.tool-hero__note { padding: 16px 18px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); }
.tool-hero__note strong { display: block; margin-bottom: 5px; font: 600 15px/1.3 var(--font-heading); }
.tool-hero__note p { margin: 0; color: var(--muted); line-height: 1.55; }
.tool-hero__points { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 2px; }
.tool-hero__points span { padding: 9px 12px; background: #fff; border: 1px solid var(--line); border-radius: 999px; color: var(--accent-ink); font: 600 13px/1.2 var(--font-heading); }
.smart-promo { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; margin: 32px 0 42px; padding: 26px 28px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); }
.smart-promo h2 { margin-bottom: 8px; }
.smart-promo p { margin: 0; color: var(--muted); }
.smart-promo a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 11px 17px; border-radius: 10px; background: var(--coral); color: #fff; font: 600 14px/1.2 var(--font-heading); text-decoration: none; box-shadow: 0 5px 12px #ff765f24; white-space: nowrap; }
.smart-promo a:hover { background: var(--coral-dark); transform: translateY(-1px); }
.template-tool { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 16px; align-items: start; margin: 36px 0 42px; padding: 30px; background: #fff; border: 1px solid #e1d8d1; border-radius: 14px; box-shadow: 0 16px 42px rgba(63,35,28,.08); }
.template-tool__intro { grid-column: 1 / -1; max-width: 820px; }
.template-tool__intro p { color: var(--muted); }
.template-tool__form, .template-tool__preview, .template-tool__result { min-width: 0; padding: 22px; background: #fffaf8; border: 1px solid #eaded9; border-radius: 14px; box-shadow: 0 8px 18px rgba(63,35,28,.04); }
.template-tool__form { display: grid; gap: 14px; }
.template-tool__form label { margin: 0; }
.template-tool__form textarea { resize: vertical; min-height: 118px; }
.template-tool__preview, .template-tool__result { display: grid; gap: 14px; background: #fff; }
.template-tool__preview h3, .template-tool__result h3 { margin: 0; font-size: 21px; line-height: 1.35; font-weight: 520; }
.template-tool__preview ul { display: grid; gap: 9px; margin: 0; padding-left: 20px; color: #4f4742; line-height: 1.55; }
.template-tool__preview li { padding-left: 2px; }
.template-tool__result { grid-column: 1 / -1; scroll-margin-top: 84px; }
.template-tool__result pre { margin: 0; padding: 18px; white-space: pre-wrap; overflow-wrap: anywhere; background: #fffaf8; border: 1px solid var(--line); border-radius: 10px; color: #554b45; font: 400 14px/1.62 var(--font-body); }
.template-tool__result .smart-tool__actions { grid-template-columns: repeat(3, minmax(0, 180px)); justify-content: start; }
.template-tool__result .smart-tool__save, .template-tool__result .smart-tool__copy { width: 100%; min-width: 0; }
.result-save-note { margin: 0; color: #6b5f58; font-size: 15px; line-height: 1.55; }
.related-tools { display: grid; grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr); gap: 22px; align-items: start; margin: 34px 0 42px; padding: 26px; background: #fff; border: 1px solid #e1d8d1; border-radius: 14px; box-shadow: 0 12px 30px rgba(63,35,28,.055); }
.related-tools h2 { margin: 0 0 8px; font-size: clamp(25px,3vw,36px); line-height: 1.14; font-weight: 650; }
.related-tools p { margin: 0; color: #6b5f58; line-height: 1.58; }
.related-tools__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; min-width: 0; }
.related-tools__card { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 14px; align-items: center; min-width: 0; min-height: 124px; padding: 16px; color: var(--ink); text-decoration: none; background: #fffaf8; border: 1px solid #eaded9; border-radius: 10px; box-shadow: 0 8px 18px rgba(63,35,28,.035); }
.related-tools__card:hover { border-color: #d7b9af; transform: translateY(-1px); }
.related-tools__image { width: 104px; aspect-ratio: 4 / 3; border-radius: 8px; overflow: hidden; background: #fff; border: 1px solid #eaded9; display: block; }
.related-tools__image img { width: 100%; height: 100%; object-fit: contain; object-position: center; display: block; }
.related-tools__body { display: grid; gap: 6px; min-width: 0; }
.related-tools__body em { color: var(--accent-ink); font: 500 12px/1.2 var(--font-heading); font-style: normal; }
.related-tools__card strong { font: 600 17px/1.35 var(--font-heading); overflow-wrap: anywhere; }
.related-tools__card small { color: #6b5f58; font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
.hub-primary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 22px; align-items: center; margin: 32px 0 42px; padding: 26px 28px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); }
.hub-primary h2 { margin: 0 0 8px; font-size: clamp(25px,3vw,36px); line-height: 1.14; font-weight: 650; }
.hub-primary p { margin: 0; color: var(--muted); line-height: 1.6; }
.hub-primary a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 11px 17px; border-radius: 10px; background: var(--coral); color: #fff; font: 600 14px/1.2 var(--font-heading); text-decoration: none; box-shadow: 0 5px 12px #ff765f24; white-space: nowrap; }
.hub-grid-section { display: grid; grid-template-columns: minmax(220px, .62fr) minmax(0, 1.38fr); gap: 22px; align-items: start; margin: 34px 0 42px; }
.hub-grid-section h2 { margin: 0 0 8px; font-size: clamp(25px,3vw,36px); line-height: 1.14; font-weight: 650; }
.hub-grid-section p { margin: 0; color: #6b5f58; line-height: 1.58; }
.hub-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; min-width: 0; }
.hub-card { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 14px; align-items: center; min-width: 0; min-height: 124px; padding: 16px; color: var(--ink); text-decoration: none; background: #fff; border: 1px solid #eaded9; border-radius: 10px; box-shadow: 0 8px 18px rgba(63,35,28,.04); }
.hub-card:hover { border-color: #d7b9af; transform: translateY(-1px); }
.hub-card__image { width: 104px; aspect-ratio: 4 / 3; border-radius: 8px; overflow: hidden; background: #fff; border: 1px solid #eaded9; display: block; }
.hub-card__image img { width: 100%; height: 100%; object-fit: contain; object-position: center; display: block; }
.hub-card__body { display: grid; gap: 6px; min-width: 0; }
.hub-card__body em { color: var(--accent-ink); font: 500 12px/1.2 var(--font-heading); font-style: normal; }
.hub-card__body strong { font: 600 17px/1.35 var(--font-heading); overflow-wrap: anywhere; }
.hub-card__body small { color: #6b5f58; font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
.scenario-example { display: grid; grid-template-columns: minmax(220px, .62fr) minmax(0, 1.38fr); gap: 22px; align-items: start; margin: 34px 0 42px; padding: 26px; background: #fff; border: 1px solid #e1d8d1; border-radius: 14px; box-shadow: 0 12px 30px rgba(63,35,28,.055); }
.scenario-example h2 { margin: 0 0 8px; font-size: clamp(25px,3vw,36px); line-height: 1.14; font-weight: 650; }
.scenario-example blockquote { margin: 0; padding: 20px 22px; background: #fffaf8; border: 1px solid #eaded9; border-left: 5px solid var(--coral); border-radius: 12px; color: #4f4742; font-size: 18px; line-height: 1.6; }
.smart-tool { display: grid; gap: 22px; margin: 36px 0 42px; padding: 30px; background: #fff; border: 1px solid #e1d8d1; border-radius: 14px; box-shadow: 0 16px 42px rgba(63,35,28,.08); }
.smart-tool__intro p { color: var(--muted); }
.smart-tool__workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.smart-tool__form, .smart-tool__result { display: grid; gap: 14px; min-width: 0; padding: 22px; background: #fffaf8; border: 1px solid #eaded9; border-radius: 14px; box-shadow: 0 8px 18px rgba(63,35,28,.04); }
.smart-tool__form > label, .advanced-tool__form > label { margin: 0; }
.smart-tool__form textarea { resize: vertical; min-height: 116px; }
.smart-tool__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.smart-tool__result h3 { margin: 0; font-size: 21px; line-height: 1.35; font-weight: 550; }
.smart-tool__result dl { display: grid; gap: 10px; margin: 0; }
.smart-tool__result dl div { padding: 12px; background: #fff; border: 1px solid var(--line); border-radius: 10px; }
.smart-tool__result dt { margin-bottom: 4px; color: var(--accent-ink); font-weight: 600; font-family: var(--font-heading); }
.smart-tool__result dd { margin: 0; color: var(--ink); }
.smart-tool__actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; }
.smart-tool__save, .smart-tool__copy { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 11px 16px; border-radius: 10px; font-weight: 600; text-decoration: none; cursor: pointer; font-family: var(--font-heading); }
.smart-tool__save { background: var(--coral); color: #fff; box-shadow: 0 5px 12px #ff765f24; }
.smart-tool__save:hover { background: var(--coral-dark); }
.smart-tool__copy { border: 1px solid var(--line); background: #fff; color: var(--accent-ink); font-size: 14px; }
.example-fill { justify-self: start; min-height: 40px; padding: 9px 13px; border: 1px solid #eaded9; border-radius: 10px; background: #fff; color: var(--accent-ink); font: 600 13px/1.2 var(--font-heading); cursor: pointer; }
.example-fill:hover { border-color: #ffd0c3; color: var(--coral-dark); transform: translateY(-1px); }
.advanced-tool { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); align-items: start; }
.advanced-tool .smart-tool__intro { grid-column: 1 / -1; max-width: 820px; }
.advanced-tool__form, .advanced-tool__result { min-width: 0; padding: 22px; background: #fffaf8; border: 1px solid #eaded9; border-radius: 14px; box-shadow: 0 8px 18px rgba(63,35,28,.04); }
.advanced-tool__form { display: grid; gap: 14px; }
.field-hint { display: block; margin-top: 5px; color: var(--muted); font-size: 13px; line-height: 1.45; font-weight: 400; }
.advanced-tool__result { display: grid; gap: 12px; background: #fff; scroll-margin-top: 84px; }
.tool-options { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.tool-options legend { padding: 0 6px; color: var(--accent-ink); font: 600 13px/1 var(--font-heading); }
.tool-options label { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 8px 10px; border: 1px solid var(--line); border-radius: 999px; background: #fffaf8; color: #5d5651; }
.tool-options input { width: auto; margin: 0; }
.advanced-output { display: grid; gap: 10px; }
.advanced-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.advanced-card { padding: 13px 14px; box-shadow: none; }
.advanced-card h4 { margin: 0 0 5px; font: 600 15px/1.25 var(--font-heading); color: var(--accent-ink); }
.advanced-card p { margin: 0; color: #4f4742; line-height: 1.45; white-space: pre-line; }
.week-board__note { margin: 0; padding: 11px 13px; border-left: 3px solid var(--coral); background: #fff7f4; color: #665b55; font-size: 13px; }
.week-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.week-day { min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 10px; background: #fffaf8; box-shadow: none; }
.week-day h4 { display: flex; align-items: center; gap: 8px; margin: 0 0 7px; color: var(--accent-ink); font: 600 15px/1.25 var(--font-heading); }
.week-day h4 span { display: inline-grid; place-items: center; flex: 0 0 32px; min-height: 28px; border-radius: 7px; background: var(--coral); color: #fff; font-size: 12px; }
.week-day ul { display: grid; gap: 4px; margin: 0; padding-left: 18px; color: #5d5651; font-size: 14px; line-height: 1.35; }
.week-day li { overflow-wrap: anywhere; }
.habit-grid { display: grid; grid-template-columns: repeat(10, 1fr); gap: 6px; }
.habit-grid span { display: grid; place-items: center; aspect-ratio: 1; border: 1px solid var(--line); border-radius: 8px; background: #fffaf8; color: var(--accent-ink); font: 600 12px/1 var(--font-heading); }
.inline-signup { display: grid; gap: 18px; align-items: start; margin: 46px 0; padding: 28px 30px; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.inline-signup p { margin: 0; color: var(--muted); }
.inline-form { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)) minmax(170px,.8fr); gap: 10px; align-items: end; }
.inline-form label { margin: 0; }
.inline-form input { margin-top: 7px; }
.inline-form .primary { width: auto; min-width: 0; min-height: 47px; padding: 12px 16px; white-space: normal; }
.faq { display: grid; gap: 12px; }
.faq details { padding: 18px 20px; }
summary { cursor: pointer; font-weight: 600; color: var(--ink); font-family: var(--font-heading); }
.page-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.page-card { display: grid; gap: 8px; padding: 18px; text-decoration: none; font-weight: 600; }
.page-card small { color: var(--muted); font-weight: 500; font-size: 14px; line-height: 1.45; letter-spacing: 0; text-transform: none; }
.page-card--media { grid-template-columns: 74px minmax(0, 1fr); align-items: center; gap: 14px; min-height: 116px; }
.page-card__image { width: 74px; aspect-ratio: 1; border-radius: 8px; overflow: hidden; background: #fff4ee; border: 1px solid #eaded9; display: block; }
.page-card__image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.page-card__body { display: grid; gap: 7px; min-width: 0; }
.page-card__top { display: grid; grid-template-columns: minmax(0, 1fr) 28px; align-items: start; gap: 10px; }
.page-card__top b { min-width: 0; color: var(--ink); font-size: 16px; line-height: 1.25; font-weight: 650; }
.page-card__top em { width: 28px; height: 28px; border-radius: 8px; display: inline-grid; place-items: center; background: #fff1ec; color: var(--coral-dark); font-style: normal; font-size: 12px; font-weight: 700; border: 1px solid #ffd7cb; }
.seo-page .legal-footer { max-width: 1200px; margin: 0 auto 34px; padding: 18px 28px 0; border-top: 1px solid #e8ded8; color: #7d736e; font-size: 13px; line-height: 1.55; }
.legal-footer p { margin: 6px 0; }
.legal-footer a { color: var(--coral-dark); font-weight: 600; text-decoration: none; }
.legal-footer a:hover { text-decoration: underline; }
@media (max-width: 800px) {
  .seo-page .site-header { min-height: 62px; height: auto; padding: 10px 16px; align-items: center; gap: 10px; }
  .brand { font-size: 17px; }
  .brand:before { width: 30px; height: 30px; border-radius: 9px; font-size: 17px; }
  .seo-page .nav-button { display: block; position: relative; width: 38px; height: 38px; margin-left: auto; border: 1px solid #eaded9; border-radius: 12px; background: #fff8f5; cursor: pointer; }
  .seo-page .nav-button span, .seo-page .nav-button:before, .seo-page .nav-button:after { content: ""; position: absolute; left: 9px; width: 18px; height: 2px; border-radius: 99px; background: var(--coral-dark); transition: .18s; transform-origin: center; }
  .seo-page .nav-button:before { top: 13px; }
  .seo-page .nav-button span { top: 18px; }
  .seo-page .nav-button:after { top: 23px; }
  .seo-page .nav-toggle:checked + .nav-button span { opacity: 0; }
  .seo-page .nav-toggle:checked + .nav-button:before { top: 18px; transform: rotate(45deg); }
  .seo-page .nav-toggle:checked + .nav-button:after { top: 18px; transform: rotate(-45deg); }
  .seo-page .nav { position: absolute; left: 16px; right: 16px; top: calc(100% + 8px); display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 8px; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 14px 34px rgba(63,35,28,.12); }
  .seo-page .nav-toggle:checked ~ .nav { display: flex; }
  .seo-page .nav a { display: block; padding: 12px 13px; border-radius: 10px; font-size: 13px; }
  .seo-page .nav a:hover { background: var(--blush); }
  .seo-page main { padding: 28px 16px 70px; }
  .auth, .product-panel, .text-section, .content-grid, .feature-row, .example-section, .mid-cta, .wide-image, .timeline-grid, .smart-promo, .smart-tool, .smart-tool__workspace, .smart-tool__grid, .smart-tool__actions, .inline-signup, .inline-form, .page-list, .template-tool, .related-tools, .related-tools__grid, .hub-primary, .hub-grid-section, .hub-card-grid, .scenario-example { grid-template-columns: 1fr; }
  .auth { gap: 28px; min-height: auto; }
  .auth h1 { font-size: 39px; letter-spacing: -1px; }
  .tool-hero { grid-template-columns: 1fr; gap: 16px; padding: 24px 0 4px; }
  .tool-hero__copy { gap: 10px; }
  .tool-hero__points { gap: 7px; }
  .tool-hero__points span { font-size: 12px; padding: 8px 10px; }
  .tool-hero__note { padding: 14px; }
  .tool-hero .landing-character { grid-column: auto; grid-row: auto; }
  .tool-hero .landing-character img { max-height: none; aspect-ratio: 4/3; }
  .tool-hero h1 { font-size: 36px; line-height: 1.12; }
  .smart-tool, .template-tool { padding: 18px; gap: 16px; margin: 24px 0 34px; }
  .template-tool__form, .template-tool__preview, .template-tool__result { padding: 16px; }
  .template-tool__result .smart-tool__actions { grid-template-columns: 1fr; }
  .related-tools { padding: 18px; gap: 16px; margin: 24px 0 34px; }
  .related-tools__card { grid-template-columns: 82px minmax(0, 1fr); min-height: 108px; padding: 14px; }
  .related-tools__image { width: 82px; }
  .hub-primary { padding: 18px; gap: 16px; margin: 24px 0 34px; }
  .hub-primary a { width: 100%; white-space: normal; text-align: center; }
  .hub-card { grid-template-columns: 82px minmax(0, 1fr); min-height: 108px; padding: 14px; }
  .hub-card__image { width: 82px; }
  .scenario-example { padding: 18px; gap: 16px; margin: 24px 0 34px; }
  .scenario-example blockquote { padding: 16px; font-size: 16px; }
  .advanced-tool, .advanced-grid, .week-board { grid-template-columns: 1fr; }
  .advanced-tool__form, .advanced-tool__result { padding: 16px; }
  .week-board div { min-height: auto; }
  .habit-grid { grid-template-columns: repeat(6, 1fr); }
  .smart-tool__form, .smart-tool__result { padding: 16px; }
  .smart-tool__result h3 { font-size: 19px; }
  .smart-tool__save, .smart-tool__copy { width: 100%; white-space: normal; text-align: center; }
  .page-card--media { grid-template-columns: 58px minmax(0, 1fr); min-height: 104px; padding: 14px; }
  .page-card__image { width: 58px; }
  .page-card__top b { font-size: 15px; }
  .lead { font-size: 18px; }
  .example-line { grid-template-columns: 1fr; }
  .landing-character img { width: 100%; object-position: center bottom; }
  .mid-cta a, .smart-promo a, .inline-form .primary { width: 100%; }
  .example-fill { width: 100%; justify-self: stretch; }
}

/* Unified editorial styling for planning tools */
body.seo-page{background:#fff;color:#171a20;font-family:"Segoe UI",Roboto,Arial,sans-serif}
.seo-page main{width:min(1156px,calc(100% - 32px));margin:0 auto}
.seo-page .index-hero{width:auto;margin:0;padding:58px 0 38px;border-bottom:1px solid #d8dde5;background:#fff}
.seo-page .index-hero h1{max-width:920px;font:300 46px/1.08 "Segoe UI",Roboto,Arial,sans-serif;letter-spacing:-.8px;color:#171a20}
.seo-page .index-hero .lead{max-width:820px;color:#535b67;font-weight:300;line-height:1.6}
.seo-page .eyebrow{color:#d92f17;font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:500;letter-spacing:.6px}
.seo-page .tool-hero__points{gap:0;border:1px solid #d8dde5;border-radius:6px;overflow:hidden}
.seo-page .tool-hero__points span{border:0;border-right:1px solid #d8dde5;border-radius:0;background:#f7f8fa;color:#4e5661;font-weight:400}
.seo-page .tool-hero__points span:last-child{border-right:0}
.seo-page .tools-featured,.seo-page .tools-group{width:auto;margin:0;padding:38px 0;border-bottom:1px solid #d8dde5;background:#fff}
.seo-page .intent-tools{display:grid;grid-template-columns:minmax(0,.58fr) minmax(0,1fr);gap:24px;align-items:start;width:auto;margin:0;padding:34px 0;border-bottom:1px solid #d8dde5;background:#fff}
.seo-page .intent-tools h2{margin:8px 0 10px;color:#171a20;font:300 30px/1.15 "Segoe UI",Roboto,Arial,sans-serif!important}
.seo-page .intent-tools p{margin:0;color:#59616d;font:300 15px/1.55 "Segoe UI",Roboto,Arial,sans-serif}
.seo-page .intent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:1px;background:#d8dde5;border:1px solid #d8dde5;border-radius:7px;overflow:hidden}
.seo-page .intent-grid a{display:grid;gap:7px;min-width:0;padding:17px 18px;background:#fff;color:#171a20;text-decoration:none}
.seo-page .intent-grid a:hover{background:#fff8f6}
.seo-page .intent-grid b{font:400 17px/1.25 "Segoe UI",Roboto,Arial,sans-serif}
.seo-page .intent-grid small{color:#626b77;font:300 14px/1.45 "Segoe UI",Roboto,Arial,sans-serif;letter-spacing:0;text-transform:none}
.seo-page .tools-featured h2,.seo-page .tools-group h2{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:300;color:#171a20}
.seo-page .page-list{gap:1px;background:#d8dde5;border:1px solid #d8dde5;border-radius:8px;overflow:hidden}
.seo-page .page-card{border:0;border-radius:0;background:#fff;box-shadow:none}
.seo-page .page-card:hover{transform:none;background:#fff8f6;box-shadow:none}
.seo-page .page-card__image img{border-radius:5px}
.seo-page .page-card__top b{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:400;color:#20242b}
.seo-page .page-card__top em{border-radius:4px;background:#fff1ee;color:#d92f17;font-style:normal}
.seo-page .page-card small{color:#626b77;font-weight:300;line-height:1.5}
.seo-page .tool-shell,.seo-page .tool-card,.seo-page .result-card{border-color:#cfd6df;border-radius:8px;background:#fff;box-shadow:none}
.seo-page button,.seo-page .button{border-radius:5px;box-shadow:none}
@media(max-width:760px){.seo-page main{width:min(100% - 24px,1156px)}.seo-page .index-hero{padding:34px 0 28px}.seo-page .index-hero h1{font-size:34px;letter-spacing:0}.seo-page .tool-hero__points{display:grid;grid-template-columns:1fr 1fr}.seo-page .tool-hero__points span{border-right:1px solid #d8dde5;border-bottom:1px solid #d8dde5}.seo-page .tool-hero__points span:nth-child(2n){border-right:0}.seo-page .tool-hero__points span:nth-last-child(-n+2){border-bottom:0}.seo-page .page-list{grid-template-columns:1fr}}

/* Generator workspaces follow the shared editorial system */
.seo-page .tool-hero{border-bottom:1px solid #d8dde5}
.seo-page .tool-hero h1{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:300;letter-spacing:-.7px}
.seo-page .tool-hero__points{display:flex;gap:8px;border:0;border-radius:0;overflow:visible}
.seo-page .tool-hero__points span{border:1px solid #cfd6df!important;border-radius:5px!important;background:#f7f8fa!important;color:#4e5661!important;font:400 13px/1.2 "Segoe UI",Roboto,Arial,sans-serif!important}
.seo-page .tool-hero__note,.seo-page .landing-character img,.seo-page .tool-hero .landing-character figcaption{border-color:#cfd6df;border-radius:6px;background:#fff;box-shadow:none}
.seo-page .smart-tool,.seo-page .template-tool,.seo-page .advanced-tool,.seo-page .related-tools,.seo-page .hub-primary,.seo-page .scenario-example,.seo-page .inline-signup{border:1px solid #cfd6df;border-radius:8px;background:#fff;box-shadow:none}
.seo-page .smart-tool__form,.seo-page .smart-tool__result,.seo-page .template-tool__form,.seo-page .template-tool__preview,.seo-page .template-tool__result,.seo-page .advanced-tool__form,.seo-page .advanced-tool__result{border:1px solid #d8dde5;border-radius:6px;background:#f7f8fa;box-shadow:none}
.seo-page .smart-tool__result,.seo-page .template-tool__preview,.seo-page .template-tool__result,.seo-page .advanced-tool__result{background:#fff}
.seo-page input,.seo-page textarea,.seo-page select{border-color:#cfd6df;border-radius:5px;background:#fff;box-shadow:none}
.seo-page input:focus,.seo-page textarea:focus,.seo-page select:focus{border-color:#ff3b1f;box-shadow:0 0 0 2px rgba(255,59,31,.08)}
.seo-page .primary,.seo-page .smart-tool__save,.seo-page .mid-cta a,.seo-page .hub-primary a{border-radius:5px;background:#ff3b1f;color:#fff;box-shadow:none}
.seo-page .primary:hover,.seo-page .smart-tool__save:hover,.seo-page .mid-cta a:hover,.seo-page .hub-primary a:hover{background:#e92e13;transform:none}
.seo-page .example-fill,.seo-page .smart-tool__copy{border:1px solid #cfd6df;border-radius:5px;background:transparent;color:#353a42;font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:400}
.seo-page .smart-tool__result dl div,.seo-page .tool-options,.seo-page .tool-options label,.seo-page .week-day,.seo-page .habit-grid span{border-color:#d8dde5;border-radius:5px;background:#fff}
.seo-page .related-tools__card,.seo-page .hub-card{border-color:#d8dde5;border-radius:6px;background:#fff;box-shadow:none}
.seo-page .related-tools__card:hover,.seo-page .hub-card:hover{background:#fff8f6;transform:none}
.seo-page .legal-footer{width:min(1156px,calc(100% - 32px))!important;box-sizing:border-box;margin:0 auto 34px!important;padding:20px 0 0!important;border-top:1px solid #d8dde5!important;background:transparent!important;color:#69717e!important;font:300 13px/1.55 "Segoe UI",Roboto,Arial,sans-serif!important}
.seo-page .legal-footer a{color:#db321a!important;font-weight:500!important}
@media(max-width:760px){.seo-page .tool-hero__points{display:flex;flex-wrap:wrap}.seo-page .tool-hero__points span{border:1px solid #cfd6df!important}.seo-page .legal-footer{width:min(100% - 24px,1156px)!important;padding-left:0!important;padding-right:0!important}}

/* Stronger shared navigation */
.seo-page .brand{font-weight:600}
.seo-page .nav a{font-weight:600}
@media (min-width: 801px) and (max-width: 1060px) {
  .inline-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .inline-form .primary { width: 100%; }
}

/* PlanCeli SEO pages footer guard: keep legal footer aligned with the site grid. */
.seo-page .legal-footer {
  box-sizing: border-box;
  width: min(1200px, calc(100% - 56px));
  margin: 0 auto 34px;
  padding: 18px 0 0;
  border-top: 1px solid #e8ded8;
  color: #7d736e;
  font-size: 13px;
  line-height: 1.55;
}

/* Unified PlanCeli header and footer */
.seo-page .site-header{height:64px;min-height:64px;padding:0 max(28px,calc((100% - 1200px)/2));background:#fff;border-bottom:1px solid #d8dde5;box-shadow:none}
.seo-page .brand{display:flex;align-items:center;gap:10px;color:#1b1e24;font-family:"Segoe UI",Roboto,Arial,sans-serif;font-size:18px;font-weight:400;letter-spacing:-.15px;white-space:nowrap}
.seo-page .brand:before{content:"";display:block;width:34px;height:34px;flex:0 0 34px;border-radius:8px;background:#ff3b1f url('/logo-mark.svg') center/34px 34px no-repeat;box-shadow:0 4px 12px rgba(255,59,31,.18)}
.seo-page .nav a{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:400;color:#3f454e}
.seo-page .nav a:hover{color:#ff3b1f}
.seo-page .legal-footer{max-width:1200px;margin:0 auto 34px;padding:20px 28px 0;border-top:1px solid #d8dde5;color:#69717e;font-weight:300}
.seo-page .legal-footer a{color:#db321a;font-weight:400}
@media(max-width:760px){.seo-page .site-header{height:auto;min-height:62px;padding:10px 16px;align-items:center}.seo-page .brand{font-size:16px}.seo-page .brand:before{width:32px;height:32px;flex-basis:32px;background-size:32px 32px}.seo-page .legal-footer{padding:18px 16px 0}}
@media (max-width: 800px) {
  .seo-page .legal-footer {
    width: calc(100% - 32px);
    margin-bottom: 22px;
  }
}

/* Final shared guards */
.seo-page .brand,.seo-page .nav a{font-weight:600}
.seo-page .legal-footer{width:min(1156px,calc(100% - 32px))!important;max-width:none!important;box-sizing:border-box;margin:0 auto 34px!important;padding:20px 0 0!important;border-top:1px solid #d8dde5!important;background:transparent!important;color:#69717e!important;font:300 13px/1.55 "Segoe UI",Roboto,Arial,sans-serif!important}
.seo-page .legal-footer a{color:#db321a!important;font-weight:500!important}
@media(max-width:760px){.seo-page .legal-footer{width:min(100% - 24px,1156px)!important;padding-left:0!important;padding-right:0!important}}

/* The public header must remain identical to the main service on every SEO and tool page. */
.seo-page .site-header{height:64px!important;min-height:64px!important;padding:0 max(28px,calc((100% - 1200px)/2))!important;background:#fff!important;border-bottom:1px solid #d8dde5!important;box-shadow:none!important;backdrop-filter:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;position:sticky!important;top:0!important;z-index:50!important}
.seo-page .site-header .brand{display:flex!important;align-items:center!important;gap:10px!important;color:#1b1e24!important;text-decoration:none!important;font-family:"Segoe UI",Roboto,Arial,sans-serif!important;font-size:18px!important;font-weight:600!important;line-height:1!important;letter-spacing:-.15px!important;white-space:nowrap!important}
.seo-page .site-header .brand:before{content:""!important;display:block!important;width:34px!important;height:34px!important;flex:0 0 34px!important;border-radius:8px!important;background:#ff3b1f url('/logo-mark.svg') center/34px 34px no-repeat!important;box-shadow:0 4px 12px rgba(255,59,31,.18)!important}
.seo-page .site-header .nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:18px!important;flex-wrap:wrap!important;margin-left:auto!important}
.seo-page .site-header .nav a{display:inline-flex!important;align-items:center!important;min-height:34px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#343941!important;text-decoration:none!important;font-family:"Segoe UI",Roboto,Arial,sans-serif!important;font-size:14px!important;font-weight:400!important;line-height:1.15!important;letter-spacing:0!important;white-space:nowrap!important}
.seo-page .site-header .nav a:hover,.seo-page .site-header .nav a:focus-visible{color:#ff3b1f!important;background:transparent!important}
.seo-page .site-header .nav-toggle,.seo-page .site-header .nav-button{display:none!important}
@media(max-width:800px){.seo-page .site-header{height:auto!important;min-height:58px!important;padding:10px 14px!important;align-items:center!important}.seo-page .site-header .brand{font-size:16px!important}.seo-page .site-header .brand:before{width:32px!important;height:32px!important;flex-basis:32px!important;background-size:32px 32px!important}.seo-page .site-header .nav-button{display:block!important;position:relative!important;width:38px!important;height:38px!important;margin-left:auto!important;border:1px solid #d8dde5!important;border-radius:8px!important;background:#fff!important;cursor:pointer!important;flex:0 0 auto!important}.seo-page .site-header .nav-button span,.seo-page .site-header .nav-button:before,.seo-page .site-header .nav-button:after{content:""!important;position:absolute!important;left:9px!important;width:18px!important;height:2px!important;border-radius:99px!important;background:#343941!important;transition:.18s!important;transform-origin:center!important}.seo-page .site-header .nav-button:before{top:13px!important}.seo-page .site-header .nav-button span{top:18px!important}.seo-page .site-header .nav-button:after{top:23px!important}.seo-page .site-header .nav-toggle:checked + .nav-button span{opacity:0!important}.seo-page .site-header .nav-toggle:checked + .nav-button:before{top:18px!important;transform:rotate(45deg)!important}.seo-page .site-header .nav-toggle:checked + .nav-button:after{top:18px!important;transform:rotate(-45deg)!important}.seo-page .site-header .nav{position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 8px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:8px!important;background:#fff!important;border:1px solid #d8dde5!important;border-radius:8px!important;box-shadow:0 16px 36px rgba(22,25,30,.14)!important}.seo-page .site-header .nav-toggle:checked ~ .nav{display:flex!important}.seo-page .site-header .nav a{display:block!important;min-height:0!important;padding:12px 13px!important;border-radius:6px!important;font-size:14px!important}.seo-page .site-header .nav a:hover,.seo-page .site-header .nav a:focus-visible{background:#fff5f2!important;color:#d92f17!important}}

/* Tablet polish for tool/template pages. Keeps related cards readable instead of squeezed. */
.seo-page .related-tools,
.seo-page .related-tools__grid,
.seo-page .related-tools__card,
.seo-page .related-tools__body,
.seo-page .smart-tool,
.seo-page .advanced-tool,
.seo-page .template-tool,
.seo-page .hub-card,
.seo-page .page-card{
  min-width:0;
}
.seo-page .related-tools__card strong,
.seo-page .related-tools__card small,
.seo-page .hub-card strong,
.seo-page .hub-card small,
.seo-page .page-card strong,
.seo-page .page-card small{
  overflow-wrap:anywhere;
}
.seo-page .related-tools__card small,
.seo-page .hub-card small,
.seo-page .page-card small{
  color:#5f5751;
  font-size:14px;
  font-weight:400;
  line-height:1.45;
  letter-spacing:0;
  text-transform:none;
}
.seo-page .result-save-note--conversion{padding:12px 14px;border:1px solid #ffd1c7;border-left:3px solid #ff3b1f;border-radius:6px;background:#fff8f6;color:#4f5661;font:300 14px/1.5 "Segoe UI",Roboto,Arial,sans-serif}
.seo-page .seo-conversion-panel{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid #d8dde5;border-radius:6px;background:#fffaf8}
.seo-page .seo-conversion-panel strong{display:block;margin:0 0 4px;color:#171a20;font:500 16px/1.3 "Segoe UI",Roboto,Arial,sans-serif}
.seo-page .seo-conversion-panel p{margin:0;color:#59616d;font:300 14px/1.45 "Segoe UI",Roboto,Arial,sans-serif}
.seo-page .seo-conversion-panel__example{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border:1px solid #cfd6df;border-radius:5px;background:#fff;color:#353a42;font:400 13px/1.2 "Segoe UI",Roboto,Arial,sans-serif;cursor:pointer;white-space:nowrap}
.seo-page .seo-conversion-panel__example:hover{border-color:#ffb4a5;color:#d72d15}
.seo-page .smart-tool__actions{grid-template-columns:minmax(160px,220px) minmax(128px,170px);justify-content:start}
.seo-page .smart-tool__save,.seo-page .smart-tool__copy{width:100%;min-width:0;text-align:center;white-space:normal}
.seo-page .seo-landing-start{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:26px 0 34px;padding:20px 22px;border:1px solid #d8dde5;border-radius:8px;background:#fff;box-shadow:none}
.seo-page .seo-landing-start h2{margin:0 0 8px;color:#171a20;font:400 25px/1.18 "Segoe UI",Roboto,Arial,sans-serif}
.seo-page .seo-landing-start p{margin:0;color:#59616d;font:300 15px/1.5 "Segoe UI",Roboto,Arial,sans-serif}
.seo-page .seo-landing-start .eyebrow{margin:0 0 8px;color:#9a3a2e;font:500 12px/1.2 "Segoe UI",Roboto,Arial,sans-serif;text-transform:none;letter-spacing:0}
.seo-page .seo-landing-start__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
.seo-page .seo-landing-start__primary,.seo-page .seo-landing-start__secondary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border-radius:5px;font:400 14px/1.2 "Segoe UI",Roboto,Arial,sans-serif;text-decoration:none;white-space:nowrap}
.seo-page .seo-landing-start__primary{border:1px solid #ff3b1f;background:#ff3b1f;color:#fff}
.seo-page .seo-landing-start__secondary{border:1px solid #cfd6df;background:#fff;color:#353a42}
.seo-page .legal-footer>p:first-child{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}
.seo-page .legal-footer>p:first-child a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:32px;
  padding:7px 12px;
  border:1px solid #d8dde5;
  border-radius:999px;
  background:#fff;
  color:#343a44!important;
  font-weight:400!important;
  text-decoration:none!important;
}
.seo-page .legal-footer>p:first-child a::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#ff3b1f;
  box-shadow:0 0 0 4px rgba(255,59,31,.08);
}
.seo-page .legal-footer>p:first-child a:hover{
  border-color:#ffb4a6;
  background:#fff7f4;
  color:#db321a!important;
}
@media (min-width:761px) and (max-width:1180px){
  .seo-page main{
    width:min(100% - 40px,1156px);
  }
  .seo-page .tool-hero{
    grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);
    gap:24px;
  }
  .seo-page .intent-tools{
    grid-template-columns:1fr;
    gap:18px;
  }
  .seo-page .advanced-tool,
  .seo-page .template-tool,
  .seo-page .related-tools,
  .seo-page .hub-grid-section,
  .seo-page .hub-primary{
    grid-template-columns:1fr;
    gap:18px;
  }
  .seo-page .related-tools__grid,
  .seo-page .hub-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .seo-page .related-tools__card,
  .seo-page .hub-card{
    grid-template-columns:92px minmax(0,1fr);
    align-items:start;
    min-height:0;
    padding:14px;
  }
  .seo-page .related-tools__image,
  .seo-page .hub-card__image{
    width:92px;
  }
  .seo-page .smart-tool__actions{
    grid-template-columns:repeat(2,minmax(0,220px));
    justify-content:start;
  }
}
@media (min-width:761px) and (max-width:920px){
  .seo-page .tool-hero{
    grid-template-columns:1fr;
  }
  .seo-page .tool-hero .landing-character img{
    max-height:420px;
  }
  .seo-page .related-tools__grid,
  .seo-page .hub-card-grid{
    grid-template-columns:1fr;
  }
  .seo-page .related-tools__card,
  .seo-page .hub-card{
    grid-template-columns:120px minmax(0,1fr);
  }
  .seo-page .related-tools__image,
  .seo-page .hub-card__image{
    width:120px;
  }
}
@media(max-width:520px){
  .seo-page .intent-grid{
    grid-template-columns:1fr;
  }
  .seo-page .related-tools__card,
  .seo-page .hub-card{
    grid-template-columns:1fr!important;
  }
  .seo-page .related-tools__image,
  .seo-page .hub-card__image{
    width:100%!important;
    aspect-ratio:16/9;
  }
  .seo-page .smart-tool__actions{
    grid-template-columns:1fr;
  }
  .seo-page .seo-conversion-panel{
    grid-template-columns:1fr;
    gap:12px;
  }
  .seo-page .seo-conversion-panel__example{
    width:100%;
  }
  .seo-page .seo-landing-start{
    grid-template-columns:1fr;
    padding:18px;
  }
  .seo-page .seo-landing-start__actions{
    justify-content:stretch;
  }
  .seo-page .seo-landing-start__primary,
  .seo-page .seo-landing-start__secondary{
    width:100%;
    white-space:normal;
    text-align:center;
  }
}

/* LOW_DEMAND page additions contain only a card grid, without the usual intro column. */
.seo-page .related-tools[data-low-demand-fix$="-links"]{
  grid-template-columns:1fr;
}
.seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__card{
  grid-template-columns:88px minmax(0,1fr);
  align-items:start;
  min-height:0;
  padding:14px;
}
.seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__image{
  width:88px;
}
@media(max-width:920px){
  .seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__grid{
    grid-template-columns:1fr;
  }
  .seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__card{
    grid-template-columns:112px minmax(0,1fr);
  }
  .seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__image{
    width:112px;
  }
}
@media(max-width:520px){
  .seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__card{
    grid-template-columns:84px minmax(0,1fr)!important;
  }
  .seo-page .related-tools[data-low-demand-fix$="-links"] .related-tools__image{
    width:84px!important;
    aspect-ratio:4/3;
  }
}
/* Tools hub: same quiet visual language as the PlanCeli workspace and materials. */
.tools-page{background:#fff;color:#202329}
.tools-page main{width:min(1200px,calc(100% - 56px));box-sizing:border-box}
.tools-page .tools-hub-hero{padding:40px 0 28px}
.tools-page .tools-hub-hero h1{max-width:850px;margin:7px 0 11px;color:#15181d;font:600 38px/1.12 "Segoe UI",Roboto,Arial,sans-serif;letter-spacing:-.55px}
.tools-page .tools-hub-hero .lead{max-width:760px;margin:0;color:#69717e;font:300 15px/1.58 "Segoe UI",Roboto,Arial,sans-serif}
.tools-page .tool-hero__points{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px;border:0;border-radius:0;overflow:visible}
.tools-page .tool-hero__points span{min-height:0;padding:6px 10px;border:1px solid #dfeceb!important;border-radius:999px!important;background:#f6fbfa!important;color:#4f7470!important;font:500 12px/1.2 "Segoe UI",Roboto,Arial,sans-serif!important}
.tools-page .tools-cluster-map{box-sizing:border-box;width:auto;margin:0;padding:30px 0 34px;border-bottom:1px solid #d8dde5;background:#fff}
.tools-page .tools-cluster-map__intro{max-width:760px;margin-bottom:20px}
.tools-page .tools-cluster-map__intro h2,.tools-page .intent-tools h2,.tools-page .tools-featured h2,.tools-page .tools-group h2{color:#202329;font-family:"Segoe UI",Roboto,Arial,sans-serif!important;font-weight:500!important;letter-spacing:-.25px}
.tools-page .tools-cluster-map__intro h2{margin:7px 0 10px;font-size:28px!important;line-height:1.15!important}
.tools-page .tools-cluster-map__intro p,.tools-page .intent-tools p{color:#69717e;font-size:14px;line-height:1.55}
.tools-page .tools-cluster-map__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tools-page .tools-cluster-map article{display:flex;min-width:0;flex-direction:column;gap:9px;padding:19px;border:1px solid #d8dde5;border-radius:9px;background:#fff;box-shadow:none;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.tools-page .tools-cluster-map article:hover{border-color:#ffc0b5;transform:translateY(-2px);box-shadow:0 10px 24px rgba(35,40,48,.05)}
.tools-page .tools-cluster-map h3{margin:0;font-size:18px;font-weight:600}
.tools-page .tools-cluster-map article p{margin:0 0 4px}
.tools-page .tools-cluster-map article a{display:block;color:#454c56;font-size:13px;font-weight:500;text-decoration:none}
.tools-page .tools-cluster-map article a:hover{color:#d92f17;text-decoration:none}
.tools-page .materials-promo{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:24px;width:auto;margin:26px 0 0;padding:24px 26px;border:1px solid #d8dde5;border-left:4px solid #ff3b1f;border-radius:9px;background:#fff8f6}
.tools-page .materials-promo h2{margin:4px 0 6px;color:#202329;font:600 23px/1.25 "Segoe UI",Roboto,Arial,sans-serif}
.tools-page .materials-promo p{color:#69717e;font:300 14px/1.5 "Segoe UI",Roboto,Arial,sans-serif}
.tools-page .materials-promo>a{flex:0 0 auto;min-height:40px;padding:0 17px;border-radius:6px;background:#ff3b1f;color:#fff;font:600 13px/40px "Segoe UI",Roboto,Arial,sans-serif;text-decoration:none}
.tools-page .intent-tools{gap:30px;padding:34px 0}
.tools-page .intent-tools h2,.tools-page .tools-featured h2,.tools-page .tools-group h2{font-size:25px!important;line-height:1.25!important}
.tools-page .intent-grid{gap:10px;padding:0;border:0;background:transparent;overflow:visible}
.tools-page .intent-grid a{padding:17px 18px;border:1px solid #d8dde5;border-radius:8px;background:#fff}
.tools-page .intent-grid a:hover{border-color:#ffc0b5;background:#fff8f6}
.tools-page .intent-grid b{font-size:16px;font-weight:600}
.tools-page .tools-featured,.tools-page .tools-group{padding:34px 0}
.tools-page .page-list{gap:12px;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}
.tools-page .page-card{min-height:104px;padding:15px;border:1px solid #d8dde5;border-radius:8px;background:#fff;transition:border-color .16s ease,background .16s ease}
.tools-page .page-card:hover{border-color:#ffc0b5;background:#fff8f6}
.tools-page .page-card__image{border-color:#e3e6eb;border-radius:6px;background:#f7f8fa}
.tools-page .page-card__top b{font-size:15px;font-weight:600}
.tools-page .page-card__top em{border:1px solid #ffd9d1;border-radius:5px;background:#fff4f1;color:#d92f17}
.tools-page .page-card small{color:#69717e;font-size:13px;font-weight:300;line-height:1.45}
@media(max-width:920px){.tools-page main{width:min(100% - 40px,1200px)}.tools-page .tools-cluster-map__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tools-page .intent-tools{grid-template-columns:1fr;gap:18px}}
@media(max-width:640px){.tools-page main{width:min(100% - 24px,1200px)}.tools-page .tools-hub-hero{padding:28px 0 22px}.tools-page .tools-hub-hero h1{font-size:30px;letter-spacing:-.3px}.tools-page .tools-cluster-map{padding:24px 0}.tools-page .tools-cluster-map__intro h2{font-size:24px!important}.tools-page .tools-cluster-map__grid{grid-template-columns:1fr}.tools-page .tools-cluster-map article{padding:16px}.tools-page .materials-promo{align-items:stretch;flex-direction:column;margin-top:18px;padding:20px 17px}.tools-page .materials-promo h2{font-size:21px}.tools-page .materials-promo>a{width:100%;box-sizing:border-box;text-align:center}.tools-page .intent-grid{grid-template-columns:1fr}.tools-page .tools-featured,.tools-page .tools-group{padding:28px 0}.tools-page .page-list{grid-template-columns:1fr}.tools-page .page-card{grid-template-columns:62px minmax(0,1fr);min-height:94px;padding:12px}.tools-page .page-card__image{width:62px}}
