@charset "UTF-8";

/* AI writer recruitment page — isolated from the shared site bundle. */
body.aiwriter-focus-page {
  --aw-navy: #0b2d4c;
  --aw-navy-deep: #061b30;
  --aw-teal: #08766e;
  --aw-orange: #f25b16;
  --aw-orange-dark: #b63a00;
  --aw-cream: #fff7ed;
  --aw-paper: #ffffff;
  --aw-mist: #edf7f5;
  --aw-ink: #17283a;
  --aw-body: #3f4a55;
  --aw-muted: #596674;
  --aw-line: #d7dee3;
  color: var(--aw-body);
  background: #fbfaf7;
}

body.aiwriter-focus-page .aiwriter-shell,
body.aiwriter-focus-page .aiwriter-shell * { box-sizing: border-box; }
body.aiwriter-focus-page .aiwriter-shell { overflow: clip; }
body.aiwriter-focus-page .aiwriter-shell figure { margin: 0; }
body.aiwriter-focus-page .aiwriter-shell a:visited { color: inherit; }
body.aiwriter-focus-page .header-pill {
  color: #fff !important;
  background: #111 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.aiwriter-focus-page .header-pill .brand,
body.aiwriter-focus-page .header-pill .brand__name,
body.aiwriter-focus-page .header-pill .site-nav a { color: #fff !important; }
body.aiwriter-focus-page .header-pill .brand__name small { color: #c8c8c8 !important; }
body.aiwriter-focus-page .mobile-drawer__title small,
body.aiwriter-focus-page .mobile-tile__en { color: #8f2b00; }
body.aiwriter-focus-page .mobile-drawer .dm-link {
  color: #fff;
  border-color: #597186;
  background: #173b58;
}
body.aiwriter-focus-page .mobile-drawer .dm-link:hover,
body.aiwriter-focus-page .mobile-drawer .dm-link:focus-visible {
  color: #0b2d4c;
  border-color: #0b2d4c;
  background: #fff;
}
body.aiwriter-focus-page .site-vivid-quick-line {
  display: none !important;
}
body.aiwriter-focus-page .site-vivid-quick-line b { color: #fff; }
body.aiwriter-focus-page .site-vivid-quick-line:hover,
body.aiwriter-focus-page .site-vivid-quick-line:focus-visible {
  color: #0b2d4c;
  background: #fff;
}
body.aiwriter-focus-page .site-vivid-quick-line:hover b,
body.aiwriter-focus-page .site-vivid-quick-line:focus-visible b { color: #0b2d4c; }
body.aiwriter-focus-page .aiwriter-shell .btn {
  border-width: 1px !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  transform: none !important;
}
body.aiwriter-focus-page .aiwriter-shell .btn--orange {
  color: #17283a !important;
  border-color: #ff6b35 !important;
  background: #ff6b35 !important;
}
body.aiwriter-focus-page .aiwriter-shell .btn--orange:hover,
body.aiwriter-focus-page .aiwriter-shell .btn--orange:focus-visible {
  color: #17283a !important;
  border-color: #ff9f73 !important;
  background: #ff9f73 !important;
}
body.aiwriter-focus-page .site-footer .dm-link {
  color: #fff;
  border-color: #6e8395;
  background: #173b58;
}
body.aiwriter-focus-page .site-footer .dm-link:hover,
body.aiwriter-focus-page .site-footer .dm-link:focus-visible {
  color: #0b2d4c;
  border-color: #fff;
  background: #fff;
}

/* Hero */
.aiwriter-focus-hero {
  position: relative;
  min-height: 780px;
  overflow: hidden;
  color: #fff;
  background: var(--aw-navy-deep);
}
.aiwriter-focus-hero__media { position: absolute; inset: 0; }
.aiwriter-focus-hero__media picture { display: block; width: 100%; height: 100%; }
.aiwriter-focus-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.aiwriter-focus-hero__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(6, 27, 48, .84) 0%, rgba(6, 27, 48, .45) 48%, rgba(6, 27, 48, .08) 72%);
  content: "";
}
.aiwriter-focus-hero__inner {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: 780px;
  align-items: center;
  padding-top: 118px;
  padding-bottom: 70px;
}
.aiwriter-focus-hero__copy {
  width: min(650px, 58%);
  padding: clamp(30px, 4vw, 48px);
  color: #fff;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 30px;
  background: var(--aw-navy-deep);
  box-shadow: 0 34px 90px -52px rgba(0,0,0,.9);
}
.aiwriter-focus-hero__label,
.aiwriter-kicker {
  margin: 0 0 14px;
  color: var(--aw-orange-dark);
  font-family: "Space Grotesk", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
  line-height: 1.5;
  text-transform: uppercase;
}
.aiwriter-focus-hero__label { color: #ffb18a; }
.aiwriter-focus-hero h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(43px, 5vw, 68px);
  font-weight: 900;
  letter-spacing: -.035em;
  line-height: 1.18;
}
.aiwriter-hero-title-line { display: block; }
.aiwriter-hero-title-line--accent { color: #ff8a51; }
.aiwriter-focus-hero__lead { margin: 24px 0 0; color: #f4f7f9; font-size: 16px; line-height: 1.9; }
.aiwriter-focus-hero__points { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.aiwriter-focus-hero__points span { padding: 8px 13px; color: #fff; border: 1px solid #5c7287; border-radius: 999px; background: #153b5b; font-size: 12px; font-weight: 800; }
.aiwriter-focus-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.aiwriter-focus-actions .btn { min-height: 52px; }
.aiwriter-focus-actions .btn--ghost { color: #fff; border-color: #7890a5; background: #123654; }
body.aiwriter-focus-page .aiwriter-focus-actions .btn--ghost,
body.aiwriter-focus-page .aiwriter-focus-actions .btn--ghost:hover,
body.aiwriter-focus-page .aiwriter-focus-actions .btn--ghost:focus-visible {
  color: #fff !important;
  border-color: #7890a5 !important;
  background: #123654 !important;
}

/* Page navigation */
.aiwriter-page-nav { position: relative; z-index: 5; color: #fff; background: var(--aw-navy); border-bottom: 1px solid #294c68; }
.aiwriter-page-nav__inner { display: flex; min-height: 64px; align-items: center; gap: 7px; overflow-x: auto; scrollbar-width: none; }
.aiwriter-page-nav__inner::-webkit-scrollbar { display: none; }
.aiwriter-page-nav__inner > span { flex: 0 0 auto; margin-right: 8px; color: #d6e1e9; font-size: 11px; font-weight: 800; }
.aiwriter-page-nav a { flex: 0 0 auto; padding: 8px 12px; color: #fff; border: 1px solid #49677d; border-radius: 999px; background: #173b58; font-size: 12px; font-weight: 800; text-decoration: none; }
.aiwriter-page-nav a:hover { color: var(--aw-navy-deep); background: #fff; }
body.aiwriter-focus-page .aiwriter-shell .aiwriter-page-nav__fees,
body.aiwriter-focus-page .aiwriter-shell .aiwriter-page-nav__fees:visited {
  color: var(--aw-ink) !important;
  border-color: #ff8a51;
  background: #ff8a51;
}
body.aiwriter-focus-page .aiwriter-shell .aiwriter-page-nav__fees:hover,
body.aiwriter-focus-page .aiwriter-shell .aiwriter-page-nav__fees:focus-visible {
  color: var(--aw-ink) !important;
  border-color: #ffb18a;
  background: #ffb18a;
}

/* Shared section rhythm */
.aiwriter-section { position: relative; padding: clamp(76px, 9vw, 118px) 0; color: var(--aw-body); background: #fff; scroll-margin-top: 90px; }
.aiwriter-section--warm { color: var(--aw-body); background: var(--aw-cream); }
.aiwriter-section--ink { color: #e8eef2; background: var(--aw-navy-deep); }
.aiwriter-section--ink h2,
.aiwriter-section--ink h3 { color: #fff; }
.aiwriter-section-head { max-width: 850px; margin-bottom: clamp(32px, 5vw, 54px); }
.aiwriter-section-head--split { display: grid; max-width: none; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(32px, 6vw, 76px); align-items: end; }
.aiwriter-section-title { margin: 0; color: var(--aw-ink); font-size: clamp(34px, 4.6vw, 58px); font-weight: 900; letter-spacing: -.03em; line-height: 1.28; }
.aiwriter-section-lead { color: var(--aw-body); font-size: 17px; line-height: 1.95; }
.aiwriter-section-lead p { margin-bottom: 12px; }
.aiwriter-section--ink .aiwriter-section-lead { color: #dbe5ec; }
.aiwriter-section--ink .aiwriter-kicker,
.aiwriter-manga-compact .aiwriter-kicker,
.aiwriter-final .aiwriter-kicker { color: #ffb18a; }
.aiwriter-mobile-lines > span { display: inline; }

/* Empathy + early comic */
.aiwriter-intro { background: #fff; }
.aiwriter-empathy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.aiwriter-empathy-grid article { min-height: 100%; padding: clamp(25px, 4vw, 38px); color: var(--aw-body); border: 1px solid var(--aw-line); border-radius: 26px; background: #fff; box-shadow: 0 24px 70px -58px rgba(6,27,48,.75); }
.aiwriter-empathy-grid article > span { display: inline-flex; margin-bottom: 16px; padding: 6px 11px; color: var(--aw-navy); border-radius: 999px; background: #e7f0f6; font-size: 11px; font-weight: 900; }
.aiwriter-empathy-grid h3 { margin: 0 0 18px; color: var(--aw-ink); font-size: clamp(24px, 2.7vw, 34px); font-weight: 900; }
.aiwriter-empathy-grid ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.aiwriter-empathy-grid li { position: relative; padding-left: 24px; }
.aiwriter-empathy-grid li::before { position: absolute; top: .55em; left: 2px; color: var(--aw-orange-dark); font-weight: 900; content: "✓"; }
.aiwriter-empathy-grid__answer { border-color: #f4b28f !important; background: #fff6ef !important; }
.aiwriter-empathy-grid__answer p { color: var(--aw-body); }
.aiwriter-empathy-grid__answer strong { display: block; margin-top: 18px; padding: 16px 18px; color: var(--aw-navy-deep); border-left: 4px solid var(--aw-orange); background: #fff; line-height: 1.75; }
.aiwriter-story-comic { width: min(480px, 100%); margin: 54px auto 0 !important; }
.aiwriter-story-comic img { width: 100%; height: auto; border: 1px solid #b9c5ce; border-radius: 22px; background: #fff; box-shadow: 0 28px 78px -58px rgba(6,27,48,.82); }
.aiwriter-story-comic figcaption,
.aiwriter-practice-visual figcaption,
.aiwriter-national-visual figcaption { margin-top: 13px; color: var(--aw-muted); font-size: 13px; line-height: 1.75; text-align: center; }
.aiwriter-three-powers-visual,
.aiwriter-future-visual,
.aiwriter-practice-visual,
.aiwriter-national-visual { width: min(1120px, 100%); margin: 54px auto 0 !important; }
.aiwriter-three-powers-visual picture,
.aiwriter-future-visual picture,
.aiwriter-practice-visual picture,
.aiwriter-national-visual picture { display: block; }
.aiwriter-three-powers-visual img,
.aiwriter-future-visual img,
.aiwriter-practice-visual img,
.aiwriter-national-visual img { width: 100%; height: auto; border: 1px solid #bfcbd3; border-radius: 26px; background: #fff; box-shadow: 0 30px 86px -62px rgba(6,27,48,.88); }

/* Future possibility */
.aiwriter-future { color: var(--aw-body); background: var(--aw-mist); }
.aiwriter-future-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.aiwriter-future-grid article { min-height: 210px; padding: 24px; color: var(--aw-body); border: 1px solid #c6deda; border-radius: 22px; background: #fff; box-shadow: 0 22px 60px -52px rgba(6,27,48,.7); }
.aiwriter-future-grid article > span { color: var(--aw-orange-dark); font-family: "Space Grotesk", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .16em; }
.aiwriter-future-grid h3 { margin: 13px 0 8px; color: var(--aw-navy-deep); font-size: 21px; font-weight: 900; }
.aiwriter-future-grid p { color: var(--aw-body); font-size: 14px; line-height: 1.8; }
.aiwriter-value-strip { display: grid; grid-template-columns: 1fr auto; gap: 26px; align-items: center; margin-top: 34px; padding: 28px; color: #fff; border-radius: 24px; background: var(--aw-navy-deep); }
.aiwriter-value-strip p { margin: 0; color: #fff; }
.aiwriter-value-strip p span { display: block; margin-bottom: 5px; color: #f9b18e; font-size: 12px; font-weight: 900; }
.aiwriter-value-strip p strong { display: block; color: #fff; font-size: clamp(17px, 2vw, 22px); line-height: 1.65; }
.aiwriter-value-strip .btn--dark { color: var(--aw-navy-deep); background: #fff; }
body.aiwriter-focus-page .aiwriter-value-strip .btn--dark,
body.aiwriter-focus-page .aiwriter-value-strip .btn--dark:hover,
body.aiwriter-focus-page .aiwriter-value-strip .btn--dark:focus-visible {
  color: var(--aw-navy-deep) !important;
  border-color: #fff !important;
  background: #fff !important;
}

/* Manga preview and viewer */
.aiwriter-manga-compact { color: #e7edf2; background: var(--aw-navy-deep); }
.aiwriter-manga-compact__intro { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(30px, 6vw, 70px); align-items: center; }
.aiwriter-manga-compact__intro > figure img { width: 100%; height: auto; border: 1px solid #52697c; border-radius: 24px; background: #fff; box-shadow: 0 30px 86px -56px rgba(0,0,0,.82); }
.aiwriter-manga-compact .aiwriter-section-title { color: #fff; }
.aiwriter-manga-compact__intro p { color: #dce6ed; }
.aiwriter-manga-details { margin-top: 34px; }
.aiwriter-manga-details > summary { display: flex; min-height: 60px; align-items: center; justify-content: center; padding: 15px 22px; color: var(--aw-navy-deep); border-radius: 18px; background: #ff7b3c; font-weight: 900; cursor: pointer; list-style: none; }
.aiwriter-manga-details > summary::-webkit-details-marker { display: none; }
.aiwriter-manga-details > summary::after { margin-left: 14px; font-size: 22px; content: "+"; }
.aiwriter-manga-details[open] > summary { margin-bottom: 24px; }
.aiwriter-manga-details[open] > summary::after { content: "−"; }
.aiwriter-manga-compact .roadmap-manga-buttons { display: flex; }
.aiwriter-manga-compact .roadmap-manga-viewer { background: var(--aw-navy); }
.aiwriter-manga-compact .roadmap-manga-kicker { color: #ffb18a; }
.aiwriter-manga-compact .roadmap-manga-nav,
.aiwriter-manga-compact .roadmap-manga-button {
  color: #fff;
  border-color: #7890a5;
  background: #173b58;
}
.aiwriter-manga-compact .roadmap-manga-button { min-width: 120px; min-height: 48px; }
.aiwriter-manga-compact .roadmap-manga-nav:hover,
.aiwriter-manga-compact .roadmap-manga-button:hover,
.aiwriter-manga-compact .roadmap-manga-nav:focus-visible,
.aiwriter-manga-compact .roadmap-manga-button:focus-visible { color: var(--aw-navy-deep); background: #fff; }
.aiwriter-manga-compact .roadmap-manga-nav:disabled,
.aiwriter-manga-compact .roadmap-manga-button:disabled { color: #fff; background: #314c62; opacity: 1; }
.aiwriter-manga-compact .roadmap-manga-episodes button {
  color: #fff;
  border-color: #5d778b;
  background: #173b58;
}
.aiwriter-manga-compact .roadmap-manga-episodes button:hover,
.aiwriter-manga-compact .roadmap-manga-episodes button.is-active,
.aiwriter-manga-compact .roadmap-manga-episodes button:focus-visible { color: #fff; border-color: #ffb18a; background: #7b2d08; }
.aiwriter-manga-compact .roadmap-manga-episodes small,
.aiwriter-manga-compact .roadmap-manga-hint { color: #d8e2e9; }

/* Three steps */
.aiwriter-three-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.aiwriter-three-steps article { position: relative; min-height: 330px; padding: 28px; color: var(--aw-body); border: 1px solid #ead9c9; border-radius: 24px; background: #fff; box-shadow: 0 22px 64px -54px rgba(6,27,48,.7); }
.aiwriter-step-no { display: inline-flex; margin-bottom: 20px; color: var(--aw-orange-dark); font-family: "Space Grotesk", sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .15em; }
.aiwriter-three-steps h3 { margin: 0 0 13px; color: var(--aw-navy-deep); font-size: 23px; font-weight: 900; }
.aiwriter-three-steps p { color: var(--aw-body); font-size: 14px; line-height: 1.85; }
.aiwriter-three-steps small { display: block; color: var(--aw-muted); line-height: 1.75; }
.aiwriter-three-steps blockquote { margin: 16px 0; padding: 14px 15px; color: var(--aw-navy-deep); border-left: 4px solid var(--aw-orange); background: var(--aw-cream); font-size: 13px; font-weight: 800; line-height: 1.7; }
.aiwriter-principle { display: grid; grid-template-columns: .8fr 1.2fr; gap: 26px; align-items: center; margin-top: 24px; padding: 27px 30px; color: #fff; border-radius: 22px; background: var(--aw-navy); }
.aiwriter-principle p { margin: 0; color: #fff; font-size: 20px; font-weight: 900; line-height: 1.6; }
.aiwriter-principle span { color: #e1e9ef; font-size: 13px; line-height: 1.85; }
.aiwriter-featured-story { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 0; margin-top: 34px; overflow: hidden; color: var(--aw-body); border: 1px solid #d6cbbc; border-radius: 26px; background: #fff; box-shadow: 0 28px 78px -58px rgba(6,27,48,.8); text-decoration: none; }
.aiwriter-featured-story figure { min-height: 100%; }
.aiwriter-featured-story img { width: 100%; height: 100%; object-fit: cover; }
.aiwriter-featured-story > div { padding: clamp(25px, 4vw, 42px); }
.aiwriter-featured-story span { color: var(--aw-orange-dark); font-size: 11px; font-weight: 900; }
.aiwriter-featured-story h3 { margin: 12px 0; color: var(--aw-navy-deep); font-size: clamp(24px, 3vw, 34px); font-weight: 900; }
.aiwriter-featured-story p { color: var(--aw-body); }
.aiwriter-featured-story b { color: var(--aw-orange-dark); }

/* Ikelabo Skills */
.aiwriter-skills { background: #fff; }
.aiwriter-skills-role-grid { display: grid; grid-template-columns: 1fr 50px 1fr; gap: 16px; align-items: stretch; margin-bottom: 26px; }
.aiwriter-skills-role-grid article { padding: 26px; color: var(--aw-body); border: 1px solid #c9d8e2; border-radius: 22px; background: #f4f8fb; }
.aiwriter-skills-role-grid article:last-child { border-color: #f1b490; background: #fff5ed; }
.aiwriter-skills-role-grid article > span { display: block; color: var(--aw-orange-dark); font-size: 11px; font-weight: 900; }
.aiwriter-skills-role-grid article strong { display: block; margin: 8px 0; color: var(--aw-navy-deep); font-size: 19px; line-height: 1.55; }
.aiwriter-skills-role-grid article p { color: var(--aw-body); font-size: 13px; line-height: 1.8; }
.aiwriter-skills-role-grid > div { display: grid; place-items: center; color: var(--aw-orange-dark); font-size: 28px; font-weight: 900; }
.aiwriter-capability-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.aiwriter-capability-grid article { min-height: 205px; padding: 25px; color: var(--aw-body); border: 1px solid var(--aw-line); border-radius: 22px; background: #fff; box-shadow: 0 20px 56px -50px rgba(6,27,48,.7); }
.aiwriter-capability-grid article > span { color: var(--aw-orange-dark); font-family: "Space Grotesk", sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .13em; }
.aiwriter-capability-grid h3 { margin: 14px 0 8px; color: var(--aw-navy-deep); font-size: 21px; font-weight: 900; }
.aiwriter-capability-grid p { color: var(--aw-body); font-size: 14px; line-height: 1.8; }
.aiwriter-writing-flow { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 34px; margin-top: 36px; padding: clamp(26px, 4vw, 42px); color: #fff; border-radius: 26px; background: var(--aw-navy); }
.aiwriter-writing-flow__head > span { color: #ffb18a; font-size: 11px; font-weight: 900; }
.aiwriter-writing-flow__head h3 { margin: 10px 0 13px; color: #fff; font-size: clamp(25px, 3vw, 34px); font-weight: 900; }
.aiwriter-writing-flow__head p { color: #e1eaf0; font-size: 13px; line-height: 1.85; }
.aiwriter-writing-flow ol { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.aiwriter-writing-flow li { display: flex; min-height: 65px; align-items: center; gap: 14px; padding: 12px 15px; color: var(--aw-body); border-radius: 15px; background: #fff; }
.aiwriter-writing-flow li b { display: grid; width: 34px; height: 34px; flex: 0 0 auto; place-items: center; color: #fff; border-radius: 50%; background: var(--aw-orange-dark); }
.aiwriter-writing-flow li span { color: var(--aw-body); font-size: 12px; }
.aiwriter-writing-flow li strong { display: block; color: var(--aw-navy-deep); font-size: 15px; }
.aiwriter-skills-cta { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr); gap: 30px; align-items: center; margin-top: 36px; padding: clamp(26px, 4vw, 42px); color: #fff; border-radius: 26px; background: var(--aw-navy-deep); }
.aiwriter-skills-cta > div > span { display: block; color: #ffb18a; font-family: "Space Grotesk", sans-serif; font-size: 11px; font-weight: 700; letter-spacing: .16em; }
.aiwriter-skills-cta > div > strong { display: block; margin: 10px 0; color: #fff; font-size: clamp(20px, 2.6vw, 28px); line-height: 1.55; }
.aiwriter-skills-cta > div > p { color: #e3eaf0; }
.aiwriter-skills-cta__actions { display: grid; gap: 10px; }
.aiwriter-skills-cta__actions .btn { width: 100%; }
.aiwriter-skills-cta__actions .btn--ghost { color: #fff; border-color: #6f879a; background: #173b58; }
body.aiwriter-focus-page .aiwriter-skills-cta__actions .btn--ghost,
body.aiwriter-focus-page .aiwriter-skills-cta__actions .btn--ghost:hover,
body.aiwriter-focus-page .aiwriter-skills-cta__actions .btn--ghost:focus-visible {
  color: #fff !important;
  border-color: #6f879a !important;
  background: #173b58 !important;
}

/* Work examples */
.aiwriter-article-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.aiwriter-article-grid > a { display: grid; grid-template-rows: 210px 1fr; overflow: hidden; color: var(--aw-body); border: 1px solid #3a5266; border-radius: 24px; background: #fff; box-shadow: 0 24px 74px -52px rgba(0,0,0,.8); text-decoration: none; }
.aiwriter-article-grid figure { overflow: hidden; background: #dbe5eb; }
.aiwriter-article-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.aiwriter-article-grid > a:hover img { transform: scale(1.035); }
.aiwriter-article-grid > a > div { padding: 24px; }
.aiwriter-article-grid span { color: var(--aw-orange-dark); font-size: 11px; font-weight: 900; }
.aiwriter-article-grid h3 { margin: 11px 0; color: var(--aw-navy-deep); font-size: 20px; font-weight: 900; }
.aiwriter-article-grid p { color: var(--aw-body); font-size: 13px; line-height: 1.8; }
.aiwriter-article-grid b { color: var(--aw-orange-dark); font-size: 13px; }
.aiwriter-article-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.aiwriter-section--ink .aiwriter-article-actions .btn--ghost { color: #fff; border-color: #71869a; background: #173b58; }
body.aiwriter-focus-page .aiwriter-section--ink .aiwriter-article-actions .btn--ghost,
body.aiwriter-focus-page .aiwriter-section--ink .aiwriter-article-actions .btn--ghost:hover,
body.aiwriter-focus-page .aiwriter-section--ink .aiwriter-article-actions .btn--ghost:focus-visible {
  color: #fff !important;
  border-color: #71869a !important;
  background: #173b58 !important;
}

/* Team */
.aiwriter-team { background: #f4f8fb; }
.aiwriter-team__grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(32px, 6vw, 68px); align-items: center; }
.aiwriter-team__grid > figure:first-child img { width: 100%; min-height: 470px; height: 100%; object-fit: cover; border-radius: 28px; box-shadow: 0 30px 88px -62px rgba(6,27,48,.85); }
.aiwriter-team__grid > div > p { color: var(--aw-body); }
.aiwriter-team ul { display: grid; gap: 10px; margin: 24px 0; padding: 0; list-style: none; }
.aiwriter-team li { display: grid; gap: 3px; padding: 15px 17px; color: var(--aw-body); border-left: 4px solid var(--aw-orange); background: #fff; }
.aiwriter-team li strong { color: var(--aw-navy-deep); }
.aiwriter-team li span { color: var(--aw-body); font-size: 13px; }
.aiwriter-team__note { padding: 20px; color: var(--aw-body) !important; border: 1px solid #c9d7e0; border-radius: 18px; background: #fff; font-size: 13px; line-height: 1.85; }
.aiwriter-national-visual { grid-column: 1 / -1; }

/* Join and pricing */
.aiwriter-join-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.aiwriter-join-grid article { min-height: 210px; padding: 25px; color: var(--aw-body); border: 1px solid #ead7c5; border-radius: 22px; background: #fff; }
.aiwriter-join-grid article > span { color: var(--aw-orange-dark); font-family: "Space Grotesk", sans-serif; font-weight: 700; }
.aiwriter-join-grid h3 { margin: 13px 0 9px; color: var(--aw-navy-deep); font-size: 21px; font-weight: 900; }
.aiwriter-join-grid p { color: var(--aw-body); font-size: 14px; line-height: 1.8; }
.aiwriter-pricing { margin-top: 28px; overflow: hidden; color: var(--aw-body); border: 3px solid var(--aw-orange); border-radius: 28px; background: #fff; box-shadow: 0 34px 90px -54px rgba(6,27,48,.75); scroll-margin-top: 90px; }
.aiwriter-pricing__head { padding: 34px; color: #fff; background: var(--aw-navy); }
.aiwriter-pricing__head .aiwriter-kicker { margin-bottom: 10px; color: #ffb18a; }
.aiwriter-pricing__role-label { display: inline-flex; margin: 0 0 14px; padding: 7px 12px; color: var(--aw-ink); border-radius: 999px; background: #ffb18a; font-size: 12px; font-weight: 900; }
.aiwriter-pricing__head h3 { margin: 0 0 13px; color: #fff; font-size: clamp(29px, 3.4vw, 42px); font-weight: 900; line-height: 1.4; }
.aiwriter-pricing__head > p:last-child { max-width: 49em; margin: 0; color: #e1e9ef; font-size: 15px; line-height: 1.8; }
.aiwriter-pricing__payment-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 28px 34px 30px; background: var(--aw-cream); }
.aiwriter-payment-step { position: relative; padding: 23px; color: var(--aw-body); border: 1px solid #d7c4b1; border-radius: 20px; background: #fff; }
.aiwriter-payment-step--start { border: 2px solid var(--aw-orange); }
.aiwriter-payment-step__timing { min-height: 52px; margin: 0; color: var(--aw-navy-deep); font-size: 14px; font-weight: 900; line-height: 1.55; }
.aiwriter-payment-step__timing span { display: table; margin-bottom: 7px; padding: 3px 8px; color: #fff; border-radius: 999px; background: var(--aw-navy); font-family: "Space Grotesk", sans-serif; font-size: 10px; letter-spacing: .08em; }
.aiwriter-payment-step__price { display: block; margin: 13px 0 9px; color: var(--aw-navy-deep); font-family: "Space Grotesk", sans-serif; font-size: clamp(32px, 3.2vw, 42px); font-weight: 700; line-height: 1.15; }
.aiwriter-payment-step__price small { display: block; margin-top: 5px; color: var(--aw-body); font-family: "Zen Kaku Gothic New", sans-serif; font-size: 13px; font-weight: 900; }
.aiwriter-payment-step > p:last-child { margin: 0; color: var(--aw-body); font-size: 14px; line-height: 1.75; }
.aiwriter-pricing__highlights { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 0 34px 28px; background: var(--aw-cream); }
.aiwriter-pricing-card__note,
.aiwriter-pricing-card__included { display: grid; gap: 4px; margin: 0; padding: 16px 18px; color: var(--aw-body); border: 1px solid #d5dee4; border-radius: 16px; background: #fff; font-size: 14px; line-height: 1.7; }
.aiwriter-pricing-card__note b,
.aiwriter-pricing-card__included b { color: var(--aw-navy-deep); }
.aiwriter-pricing-card__included { color: var(--aw-navy-deep); border-color: #b9d8d4; background: #e9f6f4; font-weight: 700; }
.aiwriter-pricing__action { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 22px; align-items: center; padding: 26px 34px; border-top: 1px solid #efd0bc; border-bottom: 1px solid #efd0bc; background: #fff; }
.aiwriter-pricing__action p { display: grid; gap: 3px; margin: 0; color: var(--aw-body); font-size: 14px; line-height: 1.65; }
.aiwriter-pricing__action p b { color: var(--aw-navy-deep); font-size: 17px; }
.aiwriter-pricing__rewards { padding: 34px; background: #f4f8fb; }
.aiwriter-pricing__rewards-head { max-width: 760px; margin-bottom: 18px; }
.aiwriter-pricing__section-label { display: inline-flex; margin: 0 0 9px; padding: 6px 10px; color: #fff; border-radius: 999px; background: var(--aw-navy); font-size: 11px; font-weight: 900; }
.aiwriter-pricing__rewards h4 { margin: 0 0 9px; color: var(--aw-navy-deep); font-size: clamp(23px, 2.5vw, 31px); line-height: 1.5; }
.aiwriter-pricing__rewards-head > p:last-child { margin: 0; color: var(--aw-body); font-size: 14px; line-height: 1.75; }
.aiwriter-pricing__rewards > .aiwriter-pricing-card__included { margin-bottom: 14px; }
.aiwriter-pricing__reward-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.aiwriter-pricing-item { padding: 22px; color: var(--aw-body); border: 1px solid #d5dee4; border-radius: 18px; background: #fff; }
.aiwriter-pricing-item > span { display: block; color: var(--aw-body); font-size: 13px; font-weight: 900; }
.aiwriter-pricing-item > strong { display: block; margin: 7px 0; color: var(--aw-navy-deep); font-family: "Space Grotesk", sans-serif; font-size: 30px; }
.aiwriter-pricing-item > strong small { margin-left: 5px; font-family: "Zen Kaku Gothic New", sans-serif; font-size: 12px; }
.aiwriter-pricing-item p { margin: 0; color: var(--aw-body); font-size: 13px; line-height: 1.75; }
.aiwriter-pricing__labo { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); gap: 28px; margin: 24px 34px 0; padding: 28px; color: #fff; border-radius: 22px; background: var(--aw-navy-deep); }
.aiwriter-pricing__labo-label { color: #ffb18a !important; font-size: 11px; font-weight: 900; }
.aiwriter-pricing__labo h4 { margin: 8px 0 11px; color: #fff; font-size: 23px; }
.aiwriter-pricing__labo p { color: #e1e9ef; }
.aiwriter-pricing__labo dl { display: grid; margin: 0; }
.aiwriter-pricing__labo dl > div { padding: 12px 0; border-bottom: 1px solid #52687a; }
.aiwriter-pricing__labo dt { color: #cbd7df; font-size: 11px; }
.aiwriter-pricing__labo dd { margin: 3px 0 0; color: #fff; font-weight: 900; }
.aiwriter-pricing__footer { padding: 24px 34px 30px; }
.aiwriter-pricing__footer p { margin: 0; color: var(--aw-body); font-size: 12px; line-height: 1.75; }
body.aiwriter-focus-page .aiwriter-pricing__footer { color: #3f4a55; background: #fff; }
body.aiwriter-focus-page .aiwriter-pricing__footer p { color: #3f4a55 !important; background: #fff; }

/* Final CTA */
.aiwriter-final { position: relative; min-height: 590px; overflow: hidden; color: #fff; background: var(--aw-navy-deep); }
.aiwriter-final__media { position: absolute; inset: 0; }
.aiwriter-final__media picture { display: block; width: 100%; height: 100%; }
.aiwriter-final__media img { width: 100%; height: 100%; object-fit: cover; }
.aiwriter-final__media::after { position: absolute; inset: 0; background: rgba(6, 27, 48, .72); content: ""; }
.aiwriter-final__inner { position: relative; z-index: 1; display: flex; min-height: 590px; flex-direction: column; align-items: center; justify-content: center; padding-top: 78px; padding-bottom: 78px; text-align: center; }
.aiwriter-final__icon { width: 86px; height: 86px; margin-bottom: 18px; border: 4px solid #fff; border-radius: 50%; background: #fff; object-fit: cover; }
.aiwriter-final h2 { margin: 0; color: #fff; font-size: clamp(37px, 5.2vw, 66px); font-weight: 900; line-height: 1.28; }
.aiwriter-final-mainline { display: block; }
.aiwriter-final__inner > p { max-width: 38em; margin: 22px auto; color: #f0f4f6; }

@media (max-width: 980px) {
  .aiwriter-focus-hero__copy { width: min(620px, 72%); }
  .aiwriter-section-head--split { grid-template-columns: 1fr; gap: 18px; }
  .aiwriter-future-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aiwriter-capability-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aiwriter-article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aiwriter-article-grid > a:last-child { grid-column: 1 / -1; grid-template-columns: minmax(260px, .7fr) 1fr; grid-template-rows: 1fr; }
  .aiwriter-team__grid { grid-template-columns: 1fr; }
  .aiwriter-team__grid > figure:first-child img { min-height: 0; max-height: 560px; }
  .aiwriter-pricing__labo { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  body.aiwriter-focus-page .wrap { width: min(100% - 32px, var(--max)); }
  .aiwriter-focus-hero { min-height: 0; padding-bottom: 34px; }
  .aiwriter-focus-hero__media { position: relative; height: min(57vh, 470px); min-height: 390px; }
  .aiwriter-focus-hero__media img { object-position: center top; }
  .aiwriter-focus-hero__media::after { background: linear-gradient(180deg, rgba(6,27,48,.04) 0%, rgba(6,27,48,.2) 58%, var(--aw-navy-deep) 100%); }
  .aiwriter-focus-hero__inner { min-height: 0; margin-top: -118px; padding-top: 0; padding-bottom: 0; }
  .aiwriter-focus-hero__copy { width: 100%; padding: 24px 20px; border-radius: 24px; }
  .aiwriter-focus-hero h1 { font-size: clamp(35px, 10.7vw, 47px); line-height: 1.2; }
  .aiwriter-focus-hero__lead { font-size: 14px; line-height: 1.85; }
  .aiwriter-focus-actions { display: grid; }
  .aiwriter-focus-actions .btn { width: 100%; min-height: 52px; padding-inline: 16px; }
  .aiwriter-page-nav__inner { min-height: 58px; gap: 6px; }
  .aiwriter-page-nav__inner > span { display: none; }
  .aiwriter-page-nav a { min-height: 40px; padding: 8px 11px; }
  .aiwriter-section { padding: 72px 0; scroll-margin-top: 74px; }
  .aiwriter-section-head { margin-bottom: 28px; }
  .aiwriter-section-title { font-size: clamp(31px, 9vw, 42px); }
  .aiwriter-section-lead { font-size: 15px; }
  .aiwriter-mobile-lines > span,
  .aiwriter-mobile-line { display: block; }
  .aiwriter-empathy-grid,
  .aiwriter-future-grid,
  .aiwriter-three-steps,
  .aiwriter-capability-grid,
  .aiwriter-article-grid,
  .aiwriter-join-grid,
  .aiwriter-pricing__payment-flow,
  .aiwriter-pricing__highlights,
  .aiwriter-pricing__action,
  .aiwriter-pricing__reward-grid { grid-template-columns: 1fr; }
  .aiwriter-empathy-grid article,
  .aiwriter-three-steps article,
  .aiwriter-capability-grid article,
  .aiwriter-future-grid article,
  .aiwriter-join-grid article { min-height: 0; padding: 22px 20px; }
  .aiwriter-story-comic { width: 100%; margin-top: 38px !important; }
  .aiwriter-story-comic img,
  .aiwriter-three-powers-visual img,
  .aiwriter-future-visual img,
  .aiwriter-practice-visual img,
  .aiwriter-national-visual img { border-radius: 16px; }
  .aiwriter-three-powers-visual,
  .aiwriter-future-visual,
  .aiwriter-practice-visual,
  .aiwriter-national-visual { margin-top: 38px !important; }
  .aiwriter-value-strip { grid-template-columns: 1fr; padding: 22px 20px; }
  .aiwriter-value-strip .btn { width: 100%; }
  .aiwriter-manga-compact__intro { grid-template-columns: 1fr; gap: 26px; }
  .aiwriter-manga-compact__intro > figure { order: 2; }
  .aiwriter-manga-details > summary { min-height: 54px; text-align: center; }
  .aiwriter-principle,
  .aiwriter-featured-story,
  .aiwriter-skills-role-grid,
  .aiwriter-writing-flow,
  .aiwriter-skills-cta { grid-template-columns: 1fr; }
  .aiwriter-principle { padding: 22px 20px; }
  .aiwriter-featured-story { grid-template-rows: auto 1fr; }
  .aiwriter-featured-story figure { aspect-ratio: 1200 / 630; }
  .aiwriter-featured-story > div { padding: 22px 20px; }
  .aiwriter-skills-role-grid > div { min-height: 32px; }
  .aiwriter-writing-flow { gap: 24px; padding: 22px 18px; }
  .aiwriter-skills-cta { padding: 24px 20px; }
  .aiwriter-article-grid > a,
  .aiwriter-article-grid > a:last-child { grid-column: auto; grid-template-columns: 1fr; grid-template-rows: 190px 1fr; }
  .aiwriter-article-actions { display: grid; }
  .aiwriter-article-actions .btn { width: 100%; }
  .aiwriter-team__grid { gap: 28px; }
  .aiwriter-team__grid > figure:first-child img { border-radius: 20px; }
  .aiwriter-pricing { border-width: 2px; border-radius: 22px; scroll-margin-top: 74px; }
  .aiwriter-pricing__head { padding: 23px 18px 20px; }
  .aiwriter-pricing__role-label { margin-bottom: 10px; }
  .aiwriter-pricing__head h3 { margin-bottom: 9px; font-size: 26px; line-height: 1.38; }
  .aiwriter-pricing__head > p:last-child { font-size: 14px; line-height: 1.7; }
  .aiwriter-pricing__payment-flow { gap: 10px; padding: 16px 16px 18px; }
  .aiwriter-payment-step { padding: 15px 16px; }
  .aiwriter-payment-step__timing { min-height: 0; font-size: 14px; }
  .aiwriter-payment-step__timing span { display: inline-flex; margin: 0 8px 0 0; vertical-align: 1px; }
  .aiwriter-payment-step__price { margin: 8px 0 6px; font-size: 32px; }
  .aiwriter-payment-step__price small { display: inline; margin: 0 0 0 6px; font-size: 12px; }
  .aiwriter-payment-step > p:last-child { font-size: 14px; line-height: 1.65; }
  .aiwriter-pricing__highlights { gap: 10px; padding: 0 16px 18px; }
  .aiwriter-pricing-card__note,
  .aiwriter-pricing-card__included { padding: 14px 15px; font-size: 14px; line-height: 1.65; }
  .aiwriter-pricing__action { gap: 16px; padding: 20px 16px; }
  .aiwriter-pricing__action .btn { width: 100%; }
  .aiwriter-pricing__rewards { padding: 26px 16px; }
  .aiwriter-pricing__rewards h4 { font-size: 23px; }
  .aiwriter-pricing-item { padding: 18px; }
  .aiwriter-pricing__labo { margin: 20px 16px 0; padding: 22px 18px; }
  .aiwriter-pricing__labo-link { width: 100%; }
  .aiwriter-pricing__footer { padding: 22px 16px 26px; }
  .aiwriter-final { min-height: 540px; }
  .aiwriter-final__inner { min-height: 540px; padding-top: 70px; padding-bottom: 70px; }
  .aiwriter-final h2 { font-size: clamp(34px, 10.5vw, 46px); }
  .aiwriter-final .btn { width: 100%; }
}

@media (max-width: 390px) {
  body.aiwriter-focus-page .wrap { width: min(100% - 26px, var(--max)); }
  .aiwriter-focus-hero__media { min-height: 360px; }
  .aiwriter-focus-hero__copy { padding: 22px 17px; }
  .aiwriter-focus-hero h1 { font-size: 34px; }
  .aiwriter-focus-hero__points span { padding: 7px 10px; font-size: 11px; }
  .aiwriter-section { padding: 64px 0; }
  .aiwriter-section-title { font-size: 31px; }
}

@media (prefers-reduced-motion: reduce) {
  .aiwriter-shell *, .aiwriter-shell *::before, .aiwriter-shell *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
