/* =========================================================
   AOHANA V57.20 — AUTHORITATIVE THEME + MOBILE LAYER
   One dark-mode system. Loaded last on all primary Aohana pages.
   ========================================================= */

:root {
  --aohana-brand-green: #6c9400;
  --aohana-cta-green: #b7f329;
  --aohana-light-bg: #ffffff;
  --aohana-light-soft: #f5f7f3;
  --aohana-dark-bg: #10120f;
  --aohana-dark-surface: #151813;
  --aohana-dark-surface-2: #1a1e18;
  --aohana-dark-line: #2b3128;
  --aohana-dark-text: #f5f7f2;
  --aohana-dark-muted: #b6bdb3;
  --page-bg: #ffffff;
  --surface: #ffffff;
  --surface-soft: #f5f7f3;
  --surface-raised: #ffffff;
  --text-primary: #151815;
  --text-secondary: #555d56;
  --border-subtle: #dfe5dc;
  --brand-accent: #6c9400;
  --focus-ring: #8fbd1d;
}

html {
  background: var(--aohana-light-bg);
}

html[data-theme="dark"] {
  background: var(--aohana-dark-bg);
  --page-bg: #10120f;
  --surface: #151813;
  --surface-soft: #121510;
  --surface-raised: #1a1e18;
  --text-primary: #f5f7f2;
  --text-secondary: #bec5ba;
  --border-subtle: #30372d;
  --brand-accent: #9bc42d;
  --focus-ring: #b7f329;
}

html[data-theme="dark"] body {
  background: var(--aohana-dark-bg) !important;
  color: var(--aohana-dark-text) !important;
}

/* Prevent inherited legacy dark styles from producing a flash in light mode. */
html[data-theme="light"] body {
  color-scheme: light;
}

/* ---------- Shared navigation ---------- */
.aohana-theme-toggle {
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  display: inline-grid;
  place-items: center;
  border: 1px solid #dde2d9;
  border-radius: 999px;
  background: #fff;
  color: #171917;
  cursor: pointer;
  padding: 0;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.aohana-theme-toggle:hover {
  transform: translateY(-1px);
  border-color: #cbd2c5;
  background: #f7f9f5;
}

.aohana-theme-icon {
  font-size: 19px;
  line-height: 1;
}

.aohana-theme-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

html[data-theme="dark"] .unified-header,
html[data-theme="dark"] .unified-mobile-menu {
  background: #121510 !important;
  color: var(--aohana-dark-text) !important;
  border-color: var(--aohana-dark-line) !important;
}

html[data-theme="dark"] .unified-nav a,
html[data-theme="dark"] .unified-mobile-menu a {
  color: #e9ede7 !important;
}

html[data-theme="dark"] .unified-nav a:hover,
html[data-theme="dark"] .unified-nav a[aria-current="page"],
html[data-theme="dark"] .unified-mobile-menu a:hover {
  color: #9bc42d !important;
}

html[data-theme="dark"] .unified-mobile-menu a {
  border-color: var(--aohana-dark-line) !important;
}

/* Subtle brand illumination in dark mode — enough separation without a neon halo. */
html[data-theme="dark"] .unified-brand-symbol {
  filter: drop-shadow(0 0 7px rgba(183, 243, 41, .28));
}

html[data-theme="dark"] .unified-brand-wordmark {
  filter: drop-shadow(0 0 5px rgba(183, 243, 41, .12));
}

html[data-theme="dark"] .unified-menu-button,
html[data-theme="dark"] .aohana-theme-toggle {
  background: #171b15 !important;
  border-color: #343b31 !important;
  color: #f3f5f1 !important;
}

html[data-theme="dark"] .unified-menu-button span {
  background: #f3f5f1 !important;
}

html[data-theme="dark"] .unified-quote,
html[data-theme="dark"] .unified-mobile-menu .mobile-quote {
  background: var(--aohana-cta-green) !important;
  color: #111 !important;
}

/* ---------- Shared page text ---------- */
html[data-theme="dark"] main :where(h1, h2, h3, h4, h5, h6, strong) {
  color: var(--aohana-dark-text);
}

html[data-theme="dark"] main :where(p, li, dd) {
  color: var(--aohana-dark-muted);
}

html[data-theme="dark"] main :where(small, .muted) {
  color: #9ea69b;
}

html[data-theme="dark"] :where(hr) {
  border-color: var(--aohana-dark-line);
}

/* ---------- Homepage ---------- */
html[data-theme="dark"] .v57-wrap,
html[data-theme="dark"] .v57-hero,
html[data-theme="dark"] .v57-section {
  background: var(--aohana-dark-bg) !important;
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .v57-section.soft {
  background: #141713 !important;
}

html[data-theme="dark"] .v57-hero h1,
html[data-theme="dark"] .v57-title h2,
html[data-theme="dark"] .v57-card h3,
html[data-theme="dark"] .v57-project-card h3,
html[data-theme="dark"] .v57-process h3,
html[data-theme="dark"] .v57-review h2 {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .v57-hero p,
html[data-theme="dark"] .v57-title p,
html[data-theme="dark"] .v57-card p,
html[data-theme="dark"] .v57-project-card p,
html[data-theme="dark"] .v57-process p,
html[data-theme="dark"] .v57-review p {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .v57-card,
html[data-theme="dark"] .v57-project-card,
html[data-theme="dark"] .v57-process article,
html[data-theme="dark"] .v57-verified {
  background: var(--aohana-dark-surface) !important;
  border-color: var(--aohana-dark-line) !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .v57-hero-art {
  background:
    radial-gradient(circle at 58% 45%, rgba(183,243,41,.10), transparent 34%),
    linear-gradient(145deg,#171b15,#11140f) !important;
  border-color: #2d3528 !important;
}

html[data-theme="dark"] .v57-tech-card,
html[data-theme="dark"] .v57-tech-label {
  background: #171b15 !important;
  border-color: #343c30 !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.20) !important;
}

html[data-theme="dark"] .v57-tech-card {
  color: #9bc42d !important;
}

html[data-theme="dark"] .v57-tech-card small,
html[data-theme="dark"] .v57-tech-label {
  color: #c6ccc3 !important;
}

html[data-theme="dark"] .v57-btn.alt {
  color: #f4f6f2 !important;
  background: transparent !important;
  border-color: #4b5447 !important;
}

html[data-theme="dark"] .v57-cta {
  background: #171b15 !important;
  color: var(--aohana-dark-text) !important;
}

/* ---------- Services ---------- */
html[data-theme="dark"] .service-detail-shell {
  background: var(--aohana-dark-bg) !important;
}

html[data-theme="dark"] .service-detail-heading h2,
html[data-theme="dark"] .service-group-title h3,
html[data-theme="dark"] .service-detail-visual h4 {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .service-detail-heading p,
html[data-theme="dark"] .service-group-title p,
html[data-theme="dark"] .service-detail-copy p,
html[data-theme="dark"] .service-detail-copy li,
html[data-theme="dark"] .service-note {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .service-jump a {
  background: #171b15 !important;
  border-color: #323a2f !important;
  color: #e7ebe4 !important;
}

html[data-theme="dark"] .service-detail-card,
html[data-theme="dark"] .service-detail-copy,
html[data-theme="dark"] .service-detail-visual {
  background: var(--aohana-dark-surface) !important;
  border-color: var(--aohana-dark-line) !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .service-detail-visual {
  background: linear-gradient(145deg,#171b15,#131611) !important;
}

/* ---------- Work ---------- */
html[data-theme="dark"] .work-page,
html[data-theme="dark"] .work-hero,
html[data-theme="dark"] .work-section {
  background: var(--aohana-dark-bg) !important;
}

html[data-theme="dark"] .work-section.alt {
  background: #141713 !important;
}

html[data-theme="dark"] .work-hero h1,
html[data-theme="dark"] .work-section-head h2,
html[data-theme="dark"] .website-copy h3,
html[data-theme="dark"] .creative-copy h3,
html[data-theme="dark"] .capability strong {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .work-hero p,
html[data-theme="dark"] .work-section-head p,
html[data-theme="dark"] .website-copy > p,
html[data-theme="dark"] .creative-copy p,
html[data-theme="dark"] .capability span {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .work-eyebrow,
html[data-theme="dark"] .work-section-head small,
html[data-theme="dark"] .project-number,
html[data-theme="dark"] .creative-copy small,
html[data-theme="dark"] .creative-link {
  color: #9bc42d !important;
}

html[data-theme="dark"] .work-hero-note {
  background: var(--aohana-dark-surface) !important;
  color: var(--aohana-dark-muted) !important;
  border-left-color: #9bc42d !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .work-hero-note strong {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .website-project,
html[data-theme="dark"] .creative-project,
html[data-theme="dark"] .capabilities-strip {
  background: var(--aohana-dark-surface) !important;
  border-color: var(--aohana-dark-line) !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .capability {
  background: var(--aohana-dark-surface) !important;
}

html[data-theme="dark"] .capabilities-strip {
  gap: 1px !important;
  background: var(--aohana-dark-line) !important;
}

html[data-theme="dark"] .website-preview {
  background: #151914 !important;
}

html[data-theme="dark"] .browser-frame {
  border-color: #30372d !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.22) !important;
}

html[data-theme="dark"] .browser-top {
  background: #1c201a !important;
  border-color: #30372d !important;
}

html[data-theme="dark"] .browser-top small {
  color: #aeb5aa !important;
}

html[data-theme="dark"] .project-detail-grid div,
html[data-theme="dark"] .creative-meta span,
html[data-theme="dark"] .project-features span {
  border-color: #32382f !important;
  background: #171b15 !important;
  color: #c7cdc3 !important;
}

html[data-theme="dark"] .work-button.secondary {
  color: #e9ede6 !important;
  border-color: #485044 !important;
}

html[data-theme="dark"] .work-cta {
  background: #171b15 !important;
}

/* ---------- About ---------- */
html[data-theme="dark"] .about-official,
html[data-theme="dark"] .about-official-hero,
html[data-theme="dark"] .about-statement,
html[data-theme="dark"] .about-story-official,
html[data-theme="dark"] .about-values-official,
html[data-theme="dark"] .about-next {
  background: var(--aohana-dark-bg) !important;
}

html[data-theme="dark"] .about-editorial .about-story-official,
html[data-theme="dark"] .about-editorial .about-values-official {
  background: #141713 !important;
}

html[data-theme="dark"] .about-hero-grid h1,
html[data-theme="dark"] .about-statement h2,
html[data-theme="dark"] .about-section-heading h2,
html[data-theme="dark"] .timeline-body h3,
html[data-theme="dark"] .official-values h3,
html[data-theme="dark"] .about-next h2 {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .about-hero-intro p,
html[data-theme="dark"] .about-section-heading p,
html[data-theme="dark"] .timeline-body p,
html[data-theme="dark"] .official-values p,
html[data-theme="dark"] .about-next p {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .about-capability-strip span,
html[data-theme="dark"] .about-statement-grid p:not(.lead),
html[data-theme="dark"] .about-model-grid > div > p,
html[data-theme="dark"] .about-process-list small {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .about-statement-grid .lead,
html[data-theme="dark"] .timeline-body h3,
html[data-theme="dark"] .about-process-list strong {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .about-kicker,
html[data-theme="dark"] .about-section-no,
html[data-theme="dark"] .about-capability-strip b,
html[data-theme="dark"] .timeline-index,
html[data-theme="dark"] .official-values span,
html[data-theme="dark"] .about-text-link {
  color: #9bc42d !important;
}

html[data-theme="dark"] .timeline-body small {
  color: #9ea69b !important;
}

html[data-theme="dark"] .about-capability-strip,
html[data-theme="dark"] .official-timeline article,
html[data-theme="dark"] .official-values,
html[data-theme="dark"] .official-values article {
  border-color: var(--aohana-dark-line) !important;
}

html[data-theme="dark"] .about-editorial .official-values article,
html[data-theme="dark"] .about-editorial .official-timeline article,
html[data-theme="dark"] .about-editorial .about-capability-strip,
html[data-theme="dark"] .about-editorial .about-capability-strip > div {
  border-color: var(--aohana-dark-line) !important;
}

html[data-theme="dark"] .about-model {
  background: #11140f !important;
}

html[data-theme="dark"] .about-process-list > div {
  border-color: #333a30 !important;
}

/* ---------- Reviews ---------- */
html[data-theme="dark"] .reviews-pro-page,
html[data-theme="dark"] .reviews-pro-hero,
html[data-theme="dark"] .reviews-pro-section {
  background: var(--aohana-dark-bg) !important;
}

html[data-theme="dark"] .reviews-pro-how {
  background: #161b12 !important;
  border-color: #31382d !important;
}

html[data-theme="dark"] .reviews-pro-hero h1,
html[data-theme="dark"] .reviews-pro-heading h2,
html[data-theme="dark"] .reviews-pro-invite h2,
html[data-theme="dark"] .reviews-pro-step h3 {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .reviews-pro-lead,
html[data-theme="dark"] .reviews-pro-trust p,
html[data-theme="dark"] .reviews-pro-heading p,
html[data-theme="dark"] .reviews-pro-step p,
html[data-theme="dark"] .reviews-pro-invite-copy > p,
html[data-theme="dark"] .reviews-pro-note span,
html[data-theme="dark"] .reviews-pro-page .reviews-loading,
html[data-theme="dark"] .reviews-pro-page .reviews-empty {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .reviews-pro-page .public-reviews-grid,
html[data-theme="dark"] .reviews-pro-steps,
html[data-theme="dark"] .reviews-pro-step,
html[data-theme="dark"] .reviews-pro-page .review-card,
html[data-theme="dark"] .reviews-pro-page .public-review,
html[data-theme="dark"] .reviews-pro-page .public-review-card {
  border-color: #333a30 !important;
}

html[data-theme="dark"] .reviews-pro-page .review-card,
html[data-theme="dark"] .reviews-pro-page .public-review,
html[data-theme="dark"] .reviews-pro-page .public-review-card {
  background: var(--aohana-dark-surface) !important;
}

html[data-theme="dark"] .reviews-pro-page .public-review blockquote,
html[data-theme="dark"] .reviews-pro-page .public-review-meta strong {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .reviews-pro-page .public-review.is-featured {
  background: linear-gradient(125deg, #171c13 0%, #11140f 72%) !important;
  border-top-color: #6c9400 !important;
}

html[data-theme="dark"] .reviews-pro-page .public-review-meta {
  border-color: #333a30 !important;
}

html[data-theme="dark"] .reviews-pro-page .public-review-service {
  border-color: #46503f !important;
  color: #cbd5c3 !important;
}

html[data-theme="dark"] .reviews-pro-page .review-gate {
  background: #151914 !important;
  border-color: #343b31 !important;
}

html[data-theme="dark"] .reviews-pro-trust {
  background: #151914 !important;
  border-color: #343b31 !important;
  border-top-color: #6c9400 !important;
}

html[data-theme="dark"] .reviews-pro-trust li {
  border-color: #343b31 !important;
}

html[data-theme="dark"] .reviews-pro-trust li small,
html[data-theme="dark"] .reviews-pro-page .public-review-meta small,
html[data-theme="dark"] .reviews-pro-page .reviews-empty span {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .reviews-text-link,
html[data-theme="dark"] .reviews-pro-page .reviews-empty strong {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .reviews-pro-cta a.reviews-cta-secondary {
  background: #11140f !important;
  border-color: #596356 !important;
  color: #eef2eb !important;
}

html[data-theme="dark"] .reviews-pro-cta a.reviews-cta-secondary:hover {
  border-color: #8fbd14 !important;
  color: #fff !important;
}

html[data-theme="dark"] .reviews-pro-page .review-form input,
html[data-theme="dark"] .reviews-pro-page .review-form select,
html[data-theme="dark"] .reviews-pro-page .review-form textarea {
  background: #10130f !important;
  color: #f3f5f1 !important;
  border-color: #3a4237 !important;
}

html[data-theme="dark"] .reviews-pro-cta {
  background: #171b15 !important;
  color: var(--aohana-dark-text) !important;
}

/* Keep the requested review accent EXACTLY #6C9400 in both modes. */
html[data-theme="dark"] .reviews-pro-kicker,
html[data-theme="dark"] .reviews-pro-heading .label,
html[data-theme="dark"] .reviews-pro-step > span,
html[data-theme="dark"] .reviews-page .unified-nav a[aria-current="page"] {
  color: #6c9400 !important;
}

/* ---------- Pricing + Contact ---------- */
html[data-theme="dark"] .pc-page,
html[data-theme="dark"] .pc-hero,
html[data-theme="dark"] .pc-pricing,
html[data-theme="dark"] .pc-contact,
html[data-theme="dark"] .pc-faq {
  background: var(--aohana-dark-bg) !important;
}

html[data-theme="dark"] .pc-hero h1,
html[data-theme="dark"] .pc-section-head h2,
html[data-theme="dark"] .pc-plan h3,
html[data-theme="dark"] .pc-cost strong,
html[data-theme="dark"] .pc-other-services h3,
html[data-theme="dark"] .pc-contact-intro h2,
html[data-theme="dark"] .pc-contact-details strong,
html[data-theme="dark"] .pc-faq summary {
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] .pc-hero-note p,
html[data-theme="dark"] .pc-section-head > p,
html[data-theme="dark"] .pc-plan p,
html[data-theme="dark"] .pc-price-table ul,
html[data-theme="dark"] .pc-other-services p,
html[data-theme="dark"] .pc-contact-intro > p,
html[data-theme="dark"] .pc-faq details p {
  color: var(--aohana-dark-muted) !important;
}

html[data-theme="dark"] .pc-price-table,
html[data-theme="dark"] .pc-price-table article,
html[data-theme="dark"] .pc-other-services,
html[data-theme="dark"] .pc-other-services article,
html[data-theme="dark"] .pc-faq details {
  border-color: var(--aohana-dark-line) !important;
}

html[data-theme="dark"] .pc-price-table article,
html[data-theme="dark"] .pc-other-services article {
  background: var(--aohana-dark-surface) !important;
}

html[data-theme="dark"] .pc-price-table .pc-featured {
  background: #182013 !important;
}

html[data-theme="dark"] .pc-form-wrap {
  background: var(--aohana-dark-surface) !important;
  border-color: #333a30 !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .pc-form label {
  color: #d9ded6 !important;
}

html[data-theme="dark"] .pc-form input,
html[data-theme="dark"] .pc-form select,
html[data-theme="dark"] .pc-form textarea {
  background: #0f120e !important;
  color: #f3f5f1 !important;
  border-color: #3a4237 !important;
}

html[data-theme="dark"] .pc-form input::placeholder,
html[data-theme="dark"] .pc-form textarea::placeholder {
  color: #858d82 !important;
}

html[data-theme="dark"] .pc-form select option {
  background: #151813;
  color: #f3f5f1;
}

/* ---------- Legal / generic pages ---------- */
html[data-theme="dark"] :where(.page-hero, .page-section, .legal-page, .legal-section, .legal-card) {
  background: var(--aohana-dark-bg) !important;
  color: var(--aohana-dark-text) !important;
}

html[data-theme="dark"] :where(.page-hero, .page-section, .legal-page, .legal-section, .legal-card) p {
  color: var(--aohana-dark-muted) !important;
}

/* ---------- Footer ---------- */
html[data-theme="dark"] .global-footer,
html[data-theme="dark"] .detail-footer {
  background: #0d0f0c !important;
  color: #e6eae3 !important;
  border-color: #2a3027 !important;
}

html[data-theme="dark"] .global-footer p,
html[data-theme="dark"] .global-footer a,
html[data-theme="dark"] .global-footer-meta,
html[data-theme="dark"] .detail-footer p,
html[data-theme="dark"] .detail-footer a {
  color: #aeb5aa !important;
}

html[data-theme="dark"] .global-footer a:hover,
html[data-theme="dark"] .detail-footer a:hover {
  color: #c8de79 !important;
}

/* ---------- Modal/form system ---------- */
html[data-theme="dark"] :where(.contact-modal, .modal-panel, .email-chooser, .project-modal) {
  background: #151813 !important;
  color: var(--aohana-dark-text) !important;
  border-color: #343b31 !important;
}

html[data-theme="dark"] :where(.contact-modal, .modal-panel, .email-chooser, .project-modal) input,
html[data-theme="dark"] :where(.contact-modal, .modal-panel, .email-chooser, .project-modal) textarea,
html[data-theme="dark"] :where(.contact-modal, .modal-panel, .email-chooser, .project-modal) select {
  background: #0f120e !important;
  color: var(--aohana-dark-text) !important;
  border-color: #3b4338 !important;
}

/* ---------- MOBILE UX ---------- */
@media (max-width: 980px) {
  .unified-header {
    height: 72px !important;
    padding: 0 16px !important;
    gap: 10px !important;
  }

  .unified-brand {
    min-width: 0;
  }

  .unified-brand-symbol {
    width: 30px !important;
    height: 30px !important;
  }

  .unified-brand-wordmark {
    width: 104px !important;
    max-width: 31vw;
  }

  .aohana-theme-toggle,
  .unified-menu-button {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
  }

  .aohana-theme-toggle {
    margin-left: auto;
  }

  .unified-menu-button {
    margin-left: 0 !important;
  }

  .unified-mobile-menu nav {
    padding: 8px 18px 20px !important;
  }

  .unified-mobile-menu a {
    min-height: 48px;
    display: flex;
    align-items: center;
    font-size: 15px;
  }

  .unified-mobile-menu .mobile-quote {
    justify-content: center;
  }

  body {
    overflow-x: hidden;
  }

  main,
  section {
    max-width: 100%;
  }

  img,
  video,
  iframe,
  svg {
    max-width: 100%;
  }

  .v57-container,
  .service-detail-wrap,
  .work-section-inner,
  .work-hero-inner,
  .about-official .section-pad,
  .reviews-pro-inner,
  .reviews-pro-hero-inner,
  .pc-hero,
  .pc-pricing,
  .pc-contact,
  .pc-faq {
    width: min(100%, 100%) !important;
  }

  .v57-hero {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    padding-top: 44px !important;
  }

  .v57-hero h1 {
    font-size: clamp(38px, 10vw, 58px) !important;
    letter-spacing: -.045em !important;
  }

  .v57-hero-art {
    min-height: 350px !important;
  }

  .v57-grid3,
  .v57-process,
  .creative-grid,
  .capabilities-strip {
    grid-template-columns: 1fr 1fr !important;
  }

  .service-detail-card,
  .service-detail-card.reverse {
    grid-template-columns: .8fr 1.2fr !important;
  }

  .website-project,
  .website-project:nth-child(even) {
    grid-template-columns: 1fr !important;
  }

  .website-project:nth-child(even) .website-preview,
  .website-project:nth-child(even) .website-copy {
    order: initial !important;
  }

  .website-preview,
  .website-copy {
    min-width: 0;
  }

  .about-hero-grid,
  .about-statement-grid,
  .about-section-heading,
  .about-model-grid,
  .about-next {
    grid-template-columns: 1fr !important;
  }

  .about-capability-strip,
  .official-values {
    grid-template-columns: 1fr 1fr !important;
  }

  .pc-price-table article {
    grid-template-columns: minmax(135px,.5fr) 1fr !important;
  }

  .pc-contact {
    grid-template-columns: 1fr !important;
    gap: 48px !important;
  }
}

@media (max-width: 680px) {
  html {
    scroll-padding-top: 78px;
  }

  .unified-brand-wordmark {
    width: 96px !important;
  }

  .v57-container,
  .service-detail-wrap,
  .work-section-inner,
  .work-hero-inner {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .v57-section,
  .work-section,
  .reviews-pro-section,
  .pc-pricing,
  .pc-contact,
  .pc-faq {
    padding-top: 62px !important;
    padding-bottom: 62px !important;
  }

  .v57-grid3,
  .v57-process,
  .creative-grid,
  .capabilities-strip,
  .about-capability-strip,
  .official-values,
  .reviews-pro-page .public-reviews-grid,
  .reviews-pro-steps {
    grid-template-columns: 1fr !important;
  }

  .v57-card,
  .v57-process article {
    padding: 24px !important;
  }

  .service-detail-card,
  .service-detail-card.reverse {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  .service-detail-visual,
  .service-detail-copy {
    padding: 28px 24px !important;
  }

  .service-detail-visual {
    min-height: 210px !important;
  }

  .service-detail-heading h2,
  .work-hero h1,
  .about-hero-grid h1,
  .reviews-pro-hero h1,
  .pc-hero h1 {
    font-size: clamp(40px, 12vw, 54px) !important;
    line-height: 1 !important;
  }

  .work-hero,
  .reviews-pro-hero,
  .pc-hero,
  .about-official-hero {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .browser-view {
    height: clamp(300px, 96vw, 430px) !important;
  }

  .browser-view iframe {
    transform-origin: top left !important;
  }

  .website-copy {
    padding: 28px 24px !important;
  }

  .project-detail-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  .project-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .work-button {
    width: 100%;
    justify-content: center;
  }

  .official-timeline article {
    grid-template-columns: 52px 1fr !important;
  }

  .timeline-body {
    grid-template-columns: 1fr !important;
    padding-left: 18px !important;
  }

  .reviews-pro-hero-inner,
  .reviews-pro-invite {
    gap: 34px !important;
  }

  .reviews-pro-page .review-card,
  .reviews-pro-page .public-review,
  .reviews-pro-page .public-review-card,
  .reviews-pro-step,
  .reviews-pro-page .review-gate {
    padding: 24px !important;
  }

  .pc-price-table {
    border-left: 0 !important;
    border-right: 0 !important;
  }

  .pc-price-table article,
  .pc-price-table .pc-featured {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    padding: 26px 0 !important;
  }

  .pc-price-table article > * {
    min-width: 0;
  }

  .pc-cost {
    text-align: left !important;
  }

  .pc-other-services {
    grid-template-columns: 1fr !important;
  }

  .pc-other-services article,
  .pc-other-services article + article {
    border-left: 0 !important;
    border-top: 1px solid #e2e7de;
  }

  html[data-theme="dark"] .pc-other-services article,
  html[data-theme="dark"] .pc-other-services article + article {
    border-color: var(--aohana-dark-line) !important;
  }

  .pc-form-row {
    grid-template-columns: 1fr !important;
  }

  .pc-form input,
  .pc-form select,
  .pc-form textarea,
  .reviews-pro-page .review-form input,
  .reviews-pro-page .review-form select,
  .reviews-pro-page .review-form textarea {
    width: 100%;
    min-width: 0;
    font-size: 16px !important;
  }

  .pc-submit,
  .reviews-pro-page .review-submit {
    width: 100%;
    min-height: 50px;
  }

  .global-footer-inner,
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

@media (max-width: 390px) {
  .unified-header {
    padding: 0 12px !important;
  }

  .unified-brand-symbol {
    width: 28px !important;
    height: 28px !important;
  }

  .unified-brand-wordmark {
    width: 88px !important;
  }

  .aohana-theme-toggle,
  .unified-menu-button {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }

  .v57-container,
  .service-detail-wrap,
  .work-section-inner,
  .work-hero-inner,
  .work-hero,
  .reviews-pro-hero,
  .pc-hero,
  .about-official-hero {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .v57-hero h1,
  .work-hero h1,
  .about-hero-grid h1,
  .reviews-pro-hero h1,
  .pc-hero h1 {
    font-size: 40px !important;
  }

  .project-detail-grid {
    grid-template-columns: 1fr !important;
  }

  .browser-view {
    height: 315px !important;
  }
}

/* Touch devices: remove hover-only movement that can feel jumpy. */
@media (hover: none) {
  .aohana-theme-toggle:hover,
  .unified-quote:hover,
  .work-button:hover,
  .service-detail-card:hover .service-detail-icon {
    transform: none !important;
  }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  .aohana-theme-toggle,
  .unified-header,
  .unified-mobile-menu,
  .service-detail-card,
  .website-project,
  .creative-project {
    transition: none !important;
  }
}

/* V57.22 — deterministic vector icons and final phone-fit pass */
.aohana-card-icon,.aohana-service-icon,.aohana-theme-icon svg{display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.aohana-card-icon{width:30px;height:30px;margin:auto}.aohana-service-icon{width:34px;height:34px}.aohana-theme-icon svg{width:20px;height:20px}
.v57-tech-card{display:grid!important;place-items:center;align-content:center}.v57-tech-card small{display:block}
html,body{max-width:100%;overflow-x:clip}img,video,svg{max-width:100%}main{min-width:0}
.v571-browser iframe,.browser-view iframe{max-width:none}
html[data-theme="dark"] .v571-site-card{background:#151813!important;border-color:var(--aohana-dark-line)!important}
html[data-theme="dark"] .v571-browser{background:#10130f!important}
html[data-theme="dark"] .v571-browserbar{background:#1b1f19!important;border-color:#30372d!important}
html[data-theme="dark"] .v571-browserbar i{background:#596255!important}
html[data-theme="dark"] .v571-browserbar span{color:#aeb5aa!important}
html[data-theme="dark"] .v571-site-meta{background:#151813!important}
html[data-theme="dark"] .v571-site-meta h3{color:var(--aohana-dark-text)!important}
html[data-theme="dark"] .v571-site-meta p{color:var(--aohana-dark-muted)!important}

/* Portfolio: asymmetric editorial hierarchy using shared semantic theme tokens. */
.portfolio-showcase{background:var(--surface-soft)!important;color:var(--text-primary);padding-block:clamp(76px,8vw,118px)!important}
.portfolio-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(40px,8vw,110px);align-items:end;margin-bottom:54px;text-align:left}
.portfolio-heading>div>span{display:block;color:var(--brand-accent);font-size:12px;font-weight:800;letter-spacing:.16em;margin-bottom:18px}
.portfolio-heading h2{max-width:720px;font-size:clamp(40px,5.2vw,68px);line-height:.98;letter-spacing:-.055em;margin:0;color:var(--text-primary)}
.portfolio-heading p{color:var(--text-secondary);font-size:17px;line-height:1.7;margin:0 0 24px}
.portfolio-all-link{display:inline-flex;align-items:center;gap:14px;color:var(--text-primary);font-weight:800;border-bottom:1px solid var(--border-subtle);padding-bottom:8px}.portfolio-all-link:hover{color:var(--brand-accent);border-color:var(--brand-accent)}
.portfolio-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.8fr);gap:24px;align-items:stretch}
.portfolio-supporting{display:grid;grid-template-rows:1fr 1fr;gap:24px;min-width:0}
.portfolio-project{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--surface);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:12px;text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.portfolio-project:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--brand-accent) 45%,var(--border-subtle));box-shadow:0 18px 46px rgba(16,25,14,.09)}
.portfolio-browser{min-width:0;background:var(--surface-raised);border-bottom:1px solid var(--border-subtle)}
.portfolio-browserbar{height:36px;display:flex;align-items:center;gap:6px;padding:0 12px;background:var(--surface);border-bottom:1px solid var(--border-subtle)}
.portfolio-browserbar i{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--text-secondary) 35%,transparent)}.portfolio-browserbar span{font-size:10px;color:var(--text-secondary);margin-left:6px}
.portfolio-viewport{height:245px;overflow:hidden;position:relative;background:var(--surface-raised)}.portfolio-featured .portfolio-viewport{height:500px}
.portfolio-viewport iframe{display:block;width:1440px;height:900px;max-width:none;border:0;pointer-events:none;transform:scale(.34);transform-origin:top left}.portfolio-featured .portfolio-viewport iframe{transform:scale(.58)}
.portfolio-meta{display:grid;grid-template-columns:1fr auto;gap:14px 24px;align-items:end;padding:24px;color:var(--text-primary);flex:1}.portfolio-featured .portfolio-meta{grid-template-columns:180px 1fr auto;padding:30px 32px}
.portfolio-meta>span{align-self:start;color:var(--brand-accent);font-size:10px;font-weight:800;letter-spacing:.12em}.portfolio-meta h3{font-size:clamp(22px,2vw,31px);line-height:1.1;margin:0 0 8px;color:var(--text-primary)}.portfolio-meta p{font-size:14px;line-height:1.55;margin:0;color:var(--text-secondary)}.portfolio-meta strong{color:var(--text-primary);font-size:13px;white-space:nowrap}
html[data-theme="dark"] .portfolio-project:hover{box-shadow:0 18px 46px rgba(0,0,0,.25)}
@media(max-width:980px){.portfolio-heading{grid-template-columns:1fr;gap:24px}.portfolio-heading h2{max-width:760px}.portfolio-heading>div:last-child{max-width:680px}.portfolio-layout{grid-template-columns:1fr}.portfolio-supporting{grid-template-columns:1fr 1fr;grid-template-rows:auto}.portfolio-featured .portfolio-viewport{height:440px}.portfolio-featured .portfolio-viewport iframe{transform:scale(.52)}}
@media(max-width:680px){.portfolio-heading{margin-bottom:34px}.portfolio-heading h2{font-size:clamp(34px,10.5vw,46px)}.portfolio-heading p{font-size:16px}.portfolio-supporting{grid-template-columns:1fr}.portfolio-featured .portfolio-viewport,.portfolio-viewport{height:clamp(270px,76vw,350px)}.portfolio-featured .portfolio-viewport iframe,.portfolio-viewport iframe{transform:scale(.34)}.portfolio-featured .portfolio-meta,.portfolio-meta{grid-template-columns:1fr auto;padding:22px}.portfolio-featured .portfolio-meta>span,.portfolio-meta>span{grid-column:1/-1}.portfolio-featured .portfolio-meta p{max-width:34rem}}
@media(max-width:390px){.portfolio-showcase{padding-block:58px!important}.portfolio-layout,.portfolio-supporting{gap:16px}.portfolio-featured .portfolio-viewport,.portfolio-viewport{height:265px}.portfolio-featured .portfolio-viewport iframe,.portfolio-viewport iframe{transform:scale(.29)}.portfolio-featured .portfolio-meta,.portfolio-meta{padding:20px}.portfolio-meta h3{font-size:23px}}
.unified-header>*{min-width:0}.unified-brand{min-width:0}.unified-mobile-menu{max-height:calc(100dvh - 76px);overflow-y:auto}
button,a,input,select,textarea{touch-action:manipulation}.unified-menu-button,.aohana-theme-toggle{min-width:44px;min-height:44px}
@media(max-width:680px){
  .v57-hero{min-height:auto!important;padding:54px 20px 62px!important;grid-template-columns:1fr!important;gap:38px!important}
  .v57-hero h1{font-size:clamp(38px,11.5vw,54px)!important;line-height:.98!important;letter-spacing:-.055em!important;overflow-wrap:anywhere}
  .v57-hero p{font-size:16px!important;line-height:1.65!important}.v57-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .v57-hero-actions .v57-btn{width:100%!important;justify-content:center!important;text-align:center}
  .v57-hero-art{width:100%!important;min-height:0!important;height:clamp(300px,88vw,390px)!important}
  .v57-tech-card{transform:scale(.86);transform-origin:center}.v57-tech-label{max-width:calc(100% - 32px);white-space:normal!important;text-align:center}
  .v57-title h2,.work-section-head h2,.about-section-heading h2,.reviews-pro-heading h2,.pc-section-head h2{font-size:clamp(30px,9vw,42px)!important;line-height:1.05!important;overflow-wrap:anywhere}
  .website-project,.creative-project,.pc-contact-grid,.about-hero-grid,.about-statement-grid,.about-model-grid{grid-template-columns:1fr!important}
  .website-preview{padding:16px!important}.creative-visual{min-height:280px!important}.global-footer nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px 20px!important}
  .pc-form label,.reviews-pro-page .review-form label{max-width:100%}.pc-form textarea{min-height:140px}
}
@media(max-width:430px){.unified-header{gap:8px!important;padding-inline:14px!important}.unified-brand{gap:7px!important}.unified-brand-wordmark{width:90px!important}.unified-brand-symbol{width:29px!important;height:29px!important}.aohana-theme-toggle,.unified-menu-button{width:42px!important;height:42px!important;flex-basis:42px!important}.v57-container,.service-detail-wrap,.work-section-inner,.work-hero-inner{padding-inline:18px!important}.v57-card,.v57-process article,.website-copy,.reviews-pro-step{padding:22px!important}}
@media(max-width:360px){.unified-header{padding-inline:10px!important}.unified-brand-wordmark{width:78px!important}.unified-brand-symbol{width:27px!important;height:27px!important}.aohana-theme-toggle,.unified-menu-button{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex-basis:40px!important}.v57-hero{padding-inline:16px!important}.v57-hero h1,.work-hero h1,.about-hero-grid h1,.reviews-pro-hero h1,.pc-hero h1{font-size:36px!important}.v57-section,.work-section,.reviews-pro-section,.pc-pricing,.pc-contact,.pc-faq{padding-block:52px!important}.global-footer nav{grid-template-columns:1fr!important}}
@media(max-width:320px){.unified-brand-wordmark{width:70px!important}.unified-brand-symbol{width:25px!important;height:25px!important}.unified-header{gap:6px!important;padding-inline:8px!important}.v57-hero h1,.work-hero h1,.about-hero-grid h1,.reviews-pro-hero h1,.pc-hero h1{font-size:33px!important}.v57-container,.service-detail-wrap,.work-section-inner,.work-hero-inner,.work-hero,.reviews-pro-hero,.pc-hero,.about-official-hero{padding-inline:14px!important}.v57-card,.v57-process article,.website-copy,.reviews-pro-step,.reviews-pro-page .review-gate{padding:20px!important}}
