/* Theme skin for retained modules. Their data, disclosures, links and actions
 * remain owned by the existing plugins and saved settings. */
.sakusite-studio :is(.rakko-ad, .sro-rakko, .rakko-mna-block, .rakko-market-search, .csc-card) { font-family: inherit; overflow-wrap: anywhere; }
.sakusite-studio .rakko-ad { margin: 32px 0 !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; }
.sakusite-studio .rakko-ad .rakko-ad__inner {
  position: relative; display: block; padding: 24px 26px !important; border: 1px solid var(--line) !important; border-left: 3px solid var(--blue) !important;
  border-radius: 0 !important; background: #fff !important; color: var(--ink) !important; box-shadow: none !important; transform: none !important;
}
.sakusite-studio .rakko-ad .rakko-ad__inner::before { display: none !important; }
.sakusite-studio .rakko-ad .rakko-ad__top { position: static; display: flex; align-items: center; gap: 12px; margin: 0 0 12px !important; }
.sakusite-studio .rakko-ad .rakko-ad__pill { display: inline-flex; align-items: center; justify-content: center; min-width: 33px; padding: 2px 7px; border: 1px solid #b4c7f2 !important; border-radius: 0; background: #edf3ff !important; color: #024ddd !important; font-size: 11px !important; font-weight: 700; letter-spacing: .04em; line-height: 1.6; }
.sakusite-studio .rakko-ad .rakko-ad__service { padding: 0; border: 0; border-radius: 0; background: none !important; color: #596374 !important; font-size: 12px; font-weight: 600; line-height: 1.6; }
.sakusite-studio .rakko-ad .rakko-ad__link { display: grid; grid-template-columns: minmax(0, 1fr) 40px; gap: 20px; align-items: center; margin: 0; color: var(--ink) !important; text-decoration: none !important; }
.sakusite-studio .rakko-ad .rakko-ad__text { min-width: 0; }
.sakusite-studio .rakko-ad .rakko-ad__headline { display: block; margin: 0; color: var(--ink) !important; font-size: 19px !important; font-weight: 750 !important; line-height: 1.65 !important; text-decoration: none; }
.sakusite-studio .rakko-ad .rakko-ad__body { display: block; margin: 8px 0 0; color: var(--text) !important; font-size: 14px !important; font-weight: 400 !important; line-height: 1.85 !important; opacity: 1; text-decoration: none; }
.sakusite-studio .rakko-ad .rakko-ad__icon { display: inline-grid; place-items: center; width: 40px; height: 40px; border: 1px solid #b4c7f2; border-radius: 0; background: #fff !important; color: var(--blue) !important; box-shadow: none !important; transform: none !important; }
.sakusite-studio .rakko-ad .rakko-ad__svg { width: 20px; height: 20px; fill: currentColor !important; }
.sakusite-studio .rakko-ad .rakko-ad__link:hover .rakko-ad__headline { color: var(--blue) !important; text-decoration: underline; }
.sakusite-studio .rakko-ad .rakko-ad__link:hover .rakko-ad__icon { color: #fff !important; background: var(--blue) !important; border-color: var(--blue); }
.sakusite-studio .rakko-ad a:focus-visible { outline: 3px solid #024ddd; outline-offset: 6px; }
/* Related services, retained marketplace cards and their search controls. */
.sakusite-studio .sro-rakko { --sro-ink: #10151d; --sro-text: #434d5c; --sro-muted: #626e82; --sro-line: #d5dce8; --sro-soft: #f4f7ff; --sro-teal: #024ddd; --sro-coral: #024ddd; --sro-green: #024ddd; --sro-shadow: none; }
.sakusite-studio :is(.sro-revenue-strip, .sro-side-card, .sro-after-card, .sro-home-card, .sro-inline-card, .sro-circulation, .sro-circulation-card, .sro-btn, .sro-chip, .sro-blog-ranking, .sro-blog-ranking__link) { border-radius: 0 !important; background-image: none !important; box-shadow: none !important; }
.sakusite-studio :is(.sro-revenue-strip, .sro-side-card, .sro-after-card, .sro-home-card, .sro-inline-card, .sro-circulation) { border: 1px solid var(--line) !important; background: #f6f8fd !important; }
.sakusite-studio .sro-btn { border-color: var(--blue) !important; color: #fff !important; background: var(--blue) !important; }
.sakusite-studio .sro-btn :is(span, small, strong) { color: inherit !important; }
.sakusite-studio .sro-chip { border-color: #b4c7f2; background: #edf3ff; color: var(--blue); }
.sakusite-studio .sro-blog-ranking__link::after { border-radius: 0; color: var(--blue); background: #edf3ff; }
.sakusite-studio :is(.rakko-market-search__inner, .rakko-mna-block, .rakko-mna-card__inner) { border: 1px solid var(--line) !important; border-radius: 0 !important; background: #fff !important; color: var(--ink) !important; box-shadow: none !important; }
.sakusite-studio :is(.rakko-market-search__inner, .rakko-mna-block) { padding: 24px !important; }
.sakusite-studio :is(.rakko-market-search__title, .rakko-mna-block__title, .rakko-mna-card__title) { color: var(--ink) !important; font-weight: 750 !important; line-height: 1.7 !important; }
.sakusite-studio :is(.rakko-market-search__subtitle, .rakko-market-search__hint, .rakko-mna-block__desc, .rakko-mna-block__note, .rakko-mna-card__meta) { color: var(--text) !important; font-size: 14px !important; line-height: 1.8 !important; }
.sakusite-studio :is(.rakko-market-search__badge, .rakko-market-search__badge-pill, .rakko-market-search__badge-text, .rakko-mna-block__pill, .rakko-mna-card__tag) { border-radius: 0 !important; color: var(--blue) !important; background: #edf3ff !important; }
.sakusite-studio :is(.rakko-market-search__button, .rakko-mna-card__icon) { border: 1px solid var(--blue); border-radius: 0 !important; background: var(--blue) !important; color: #fff !important; box-shadow: none !important; }
.sakusite-studio .rakko-market-search__button-label { color: #fff !important; }
.sakusite-studio .rakko-market-auto-note { padding: 14px 18px !important; border: 1px solid var(--line) !important; border-radius: 0 !important; background: #f6f8fd !important; color: var(--text) !important; font-size: 13px !important; line-height: 1.85 !important; }
.sakusite-studio .rakko-market-search__input { width: 100%; min-width: 0; min-height: 46px; border: 1px solid #b8c4d9 !important; border-radius: 0 !important; background: #fff !important; color: var(--ink) !important; font-size: 16px !important; }
/* Existing Coconala embeds keep their service descriptions and destinations. */
.sakusite-studio .csc-card { --csc-accent: #024ddd !important; --csc-accent2: #024ddd !important; border: 1px solid var(--line) !important; border-radius: 0 !important; background: #fff !important; color: var(--ink) !important; box-shadow: none !important; }
.sakusite-studio .csc-card::before { display: none !important; }
.sakusite-studio .csc-card .csc-top { background: none !important; }
.sakusite-studio .csc-card :is(.csc-title, .csc-title a) { color: var(--ink) !important; font-size: 18px !important; line-height: 1.7 !important; text-decoration: none; }
.sakusite-studio .csc-card :is(.csc-desc, .csc-sub, .csc-note) { color: var(--text) !important; line-height: 1.8 !important; }
.sakusite-studio .csc-card .csc-badge { border-radius: 0 !important; background: #edf3ff !important; color: var(--blue) !important; }
.sakusite-studio .csc-card .csc-btn { border: 1px solid var(--blue) !important; border-radius: 0 !important; background: var(--blue) !important; color: #fff !important; box-shadow: none !important; text-decoration: none !important; }
/* Supporting pages use the same rules, type size and blue action language. */
.sakusite-studio .platform-band { color: var(--ink); background: #f4f7ff; border-block: 1px solid var(--line); }
.sakusite-studio .platform-band :is(h2, p, a) { color: var(--ink); }
.sakusite-studio .platform-band nav a { border-color: #b4c7f2; color: var(--blue); background: #fff; }
.sakusite-studio :is(.responsibility-grid p, .evidence-grid p, .method-grid p, .feature-links p, .case-principles p) { font-size: 15px; line-height: 1.85; }
.sakusite-studio .responsibility-grid article { border-color: var(--line); }
.sakusite-studio :is(.saku-project-scope, .viewer-guide, .media-policy, .sample-library) { border-color: var(--line); border-radius: 0; background-image: none; }
.sakusite-studio .saku-project-scope { border-top: 2px solid var(--blue); background: #f6f8fd; }
.sakusite-studio .saku-project-scope h2 { font-size: clamp(22px, 2vw, 29px); line-height: 1.6; }
.sakusite-studio .saku-project-scope p { font-size: 14px; line-height: 1.9; }
.sakusite-studio .saku-project-heading h1 { font-size: clamp(28px, 3.2vw, 48px); line-height: 1.5; text-wrap: balance; }
.sakusite-studio .saku-article-cta::before, .sakusite-studio .saku-article-cta::after { display: none !important; }
.sakusite-studio .saku-article-cta > div:not(.studio-consultant) > a,
.sakusite-studio .saku-sidebar-sticky-cta .saku-article-cta.is-compact > div:not(.studio-consultant) > a { min-height: 44px; border: 1px solid #fff !important; color: #024ddd !important; background: #fff !important; }
.sakusite-studio .saku-article-cta > div:not(.studio-consultant) > a:hover { color: #003aa7 !important; background: #eaf0ff !important; }
.sakusite-studio .sksc-content-boost { border-left: 3px solid var(--blue) !important; border-radius: 0 !important; background: #f6f8fd !important; box-shadow: none !important; }
.sakusite-studio .sksc-content-boost a { display: inline-flex; align-items: center; min-height: 44px; color: var(--blue) !important; text-decoration: underline !important; }
.sakusite-studio .swtc-inline-article-cta { border: 1px solid var(--line); border-left: 3px solid var(--blue); border-radius: 0; background: #f6f8fd; box-shadow: none; }
.sakusite-studio .swtc-inline-article-cta strong { color: var(--ink); font-size: 18px; font-weight: 750; line-height: 1.7; }
.sakusite-studio .entry-content .swtc-inline-article-cta p { margin-top: 8px; color: var(--text); font-size: 14px; font-weight: 400; line-height: 1.85; }
.sakusite-studio .swtc-inline-article-button { border-radius: 0; background: var(--blue); font-weight: 700; }
.sakusite-studio :is(.saku-search-page-result, .saku-search-page-result a, .saku-post-navigation a) { overflow-wrap: anywhere; }
.sakusite-studio :is(.saku-comments, .saku-contact-form__panel) :is(input:not([type="checkbox"]):not([type="submit"]), textarea) { max-width: 100%; border: 1px solid #b8c4d9; border-radius: 0; background: #fff; color: var(--ink); font-size: 16px; }
.sakusite-studio .comment-list .comment-body { border-color: var(--line); border-radius: 0; background: #f6f8fd; }
.sakusite-studio .comment-list .reply a { color: var(--blue); }
.sakusite-studio :is(.wpcf7-response-output, .wpcf7-not-valid-tip) { font-size: 14px; line-height: 1.8; }
.sakusite-studio :is(.saku-archive-sidebar, .knowledge-layout) .ssc-ranking { --ssc-accent: #024ddd; border-radius: 0; box-shadow: none; }
.sakusite-studio .ssc-ranking__heading > span { color: var(--blue); }
.sakusite-studio .srp-app { --srp-blue: #024ddd; --srp-ink: #10151d; --srp-text: #434d5c; }
.sakusite-studio .srp-app :is(.srp-card, .srp-step-card, .srp-review-card, .srp-service-card, .srp-alert, .srp-message-only, .srp-safety-item) { border-radius: 0; box-shadow: none; }
.sakusite-studio .srp-message-only { border-left: 3px solid var(--blue); border-color: #c6d3f1; background: #f4f7ff; }
.sakusite-studio .srp-message-only :is(span, p) { color: var(--ink); font-size: 14px; line-height: 1.85; }
.sakusite-studio .srp-message-only a { color: var(--blue); text-decoration: underline; }
.sakusite-studio :is(a, button, summary, input, textarea, select):focus-visible { outline: 3px solid #024ddd; outline-offset: 4px; }
@media (max-width: 860px) {
  .sakusite-studio .rakko-market-search__form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .sakusite-studio .rakko-market-search__button { width: 100%; min-height: 46px; }
}
@media (max-width: 520px) {
  .sakusite-studio .rakko-ad .rakko-ad__inner { padding: 18px !important; }
  .sakusite-studio .rakko-ad .rakko-ad__link { grid-template-columns: minmax(0, 1fr) 30px; gap: 12px; }
  .sakusite-studio .rakko-ad .rakko-ad__headline { font-size: 17px !important; }
  .sakusite-studio .rakko-ad .rakko-ad__body { font-size: 13px !important; }
  .sakusite-studio .rakko-ad .rakko-ad__icon { width: 30px; height: 34px; }
  .sakusite-studio :is(.rakko-market-search__inner, .rakko-mna-block) { padding: 18px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .sakusite-studio :is(.rakko-ad__inner, .rakko-ad__icon, .sro-btn, .csc-btn) { transition: none !important; transform: none !important; }
}
