@import url('https://fonts.googleapis.com/css2?family=Rethink+Sans:wght@400;500;600;700;800&display=swap');
/* Shared Luwy brand lockup. Load last on every public page. */
:root { --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif; --serif:"Archivo","Inter",system-ui,sans-serif; }
body { font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif; }
h1,h2,h3,h4 { font-family:"Archivo","Inter",system-ui,sans-serif; }
.site-nav,.auth-bar,.topbar {
  background:#2F2219 !important; color:#F7F3EA !important;
  border-bottom:1px solid rgba(247,243,234,.16) !important; backdrop-filter:none;
}
.site-nav :is(a,button,.brand,.nav-toggle), .auth-bar :is(a,button,.brand), .topbar :is(a,button,.brand) { color:#F7F3EA; }
:is(.site-nav,.auth-bar,.topbar) .brand {
  display:inline-flex; align-items:baseline; color:#F7F3EA !important;
  font-family:"Archivo","Inter",system-ui,sans-serif; font-weight:900;
  letter-spacing:-.075em; line-height:1; text-transform:lowercase; white-space:nowrap;
}
:is(.site-nav,.auth-bar,.topbar) .brand span { color:#F7F3EA !important; }
:is(.site-nav,.auth-bar,.topbar) .brand::after {
  content:"."; color:#FBE39D; display:inline-block; margin-left:.015em;
  text-shadow:0 1px 0 rgba(0,0,0,.16);
}
:is(.site-nav,.auth-bar,.topbar) nav a,
:is(.site-nav,.auth-bar,.topbar) .btn.ghost { color:rgba(247,243,234,.88) !important; }
:is(.site-nav,.auth-bar,.topbar) nav a:hover,
:is(.site-nav,.auth-bar,.topbar) .btn.ghost:hover { color:#FBE39D !important; }
:is(.site-nav,.auth-bar,.topbar) .btn.primary {
  background:#FBE39D !important; color:#2F2219 !important;
  border-color:transparent !important; box-shadow:none !important;
}
:is(.site-nav,.auth-bar,.topbar) .btn.primary:hover { background:#F7F3EA !important; color:#2F2219 !important; }
@media(prefers-reduced-motion:reduce) {
  .site-nav,.auth-bar,.topbar,:is(.site-nav,.auth-bar,.topbar) * { transition-duration:.01ms !important; }
}


/* ---------------------------------------------------------------------------
   Luwy quality pass — Oct 12
   Contrast first, accent second. Do not use raster logo files for the wordmark.
--------------------------------------------------------------------------- */
:root {
  --lwy-cocoa:#604531;
  --lwy-espresso:#2F2219;
  --lwy-cream:#F7F3EA;
  --lwy-snow:#D7DEEB;
  --lwy-seafoam:#C0DDD9;
  --lwy-butter:#FBE39D;
  --lwy-accent-teal:#3D756D;
  --lwy-rust:#A9442D;
  --lwy-radius-card:20px;
  --lwy-radius-control:12px;
}

/* Header lockup: cream wordmark on espresso; cocoa wordmark on light navigation. */
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) {
  border-top:0!important;
  border-bottom:1px solid rgba(247,243,234,.16)!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand,
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand span {
  color:#F7F3EA!important;
  font-family:"Archivo","Inter",system-ui,sans-serif!important;
  font-size:clamp(1.65rem,2vw,1.95rem)!important;
  font-weight:900!important;
  letter-spacing:-.075em!important;
  line-height:1!important;
  text-shadow:none!important;
  opacity:1!important;
  filter:none!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand::after {
  content:"."!important;
  color:#FBE39D!important;
  margin-left:.015em;
  text-shadow:none!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .btn.ghost {
  background:#F7F3EA!important;
  background-image:none!important;
  border:1px solid #F7F3EA!important;
  color:#2F2219!important;
  opacity:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .btn.ghost:hover {
  background:#D7DEEB!important;
  border-color:#D7DEEB!important;
  color:#2F2219!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .btn.primary {
  background:#FBE39D!important;
  background-image:none!important;
  border:1px solid #FBE39D!important;
  color:#2F2219!important;
  opacity:1!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .btn.primary:hover {
  background:#F7F3EA!important;
  border-color:#F7F3EA!important;
  color:#2F2219!important;
}

/* Light navigation areas (onboarding and the app's left rail). */
.lwy-art-directed .side .app-brand,
.lwy-art-directed .ob-top .brand,
.lwy-art-directed .site-footer .brand {
  color:#604531!important;
  font-family:"Archivo","Inter",system-ui,sans-serif!important;
  font-weight:900!important;
  letter-spacing:-.075em!important;
  opacity:1!important;
  filter:none!important;
}
.lwy-art-directed .side .app-brand span,
.lwy-art-directed .ob-top .brand span,
.lwy-art-directed .site-footer .brand span { color:#604531!important; }
.lwy-art-directed .side .app-brand::after,
.lwy-art-directed .ob-top .brand::after,
.lwy-art-directed .site-footer .brand::after {
  content:"."!important;
  color:#604531!important;
  margin-left:.015em;
  text-shadow:none!important;
}
html[data-theme="dark"] .lwy-art-directed .side .app-brand,
html[data-theme="dark"] .lwy-art-directed .side .app-brand span { color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .side .app-brand::after { color:#FBE39D!important; }

/* Sign in / sign up: one clean vector-like wordmark, no blue raster placeholder. */
.lwy-art-directed .auth-solo .auth-bar { display:none!important; }
.lwy-art-directed .auth-solo .auth-mark {
  display:inline-flex!important;
  align-items:baseline!important;
  gap:0!important;
  width:max-content!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 2px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#604531!important;
  font-family:"Archivo","Inter",system-ui,sans-serif!important;
  font-size:28px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.075em!important;
  text-indent:0!important;
  text-transform:lowercase!important;
  overflow:visible!important;
}
.lwy-art-directed .auth-solo .auth-mark img { display:none!important; }
.lwy-art-directed .auth-solo .auth-mark span {
  display:inline!important;
  color:#604531!important;
  font:inherit!important;
  letter-spacing:inherit!important;
  text-indent:0!important;
  opacity:1!important;
}
.lwy-art-directed .auth-solo .auth-mark::after {
  content:"."!important;
  color:#604531!important;
  font:inherit!important;
  margin-left:.015em;
}
.lwy-art-directed .auth-card {
  border:1px solid rgba(47,34,25,.14)!important;
  border-top:1px solid rgba(47,34,25,.14)!important;
  border-radius:20px!important;
  box-shadow:0 18px 54px -44px rgba(47,34,25,.26)!important;
}
.lwy-art-directed .auth-card .auth-note,
.lwy-art-directed .auth-solo .auth-note {
  background:transparent!important;
  border:0!important;
  border-top:1px solid rgba(47,34,25,.12)!important;
  border-radius:0!important;
  color:#51443A!important;
  padding:14px 0 0!important;
}
.lwy-art-directed .auth-card .auth-note a { color:#604531!important; font-weight:700!important; text-decoration:underline; text-underline-offset:3px; }
.lwy-art-directed .auth-card :is(input,textarea,select) {
  color:#2F2219!important;
  background:#FFFEFC!important;
  border-color:rgba(47,34,25,.24)!important;
}
.lwy-art-directed .auth-card :is(input,textarea,select)::placeholder { color:#71665D!important; opacity:1!important; }
.lwy-art-directed .auth-card .btn.primary {
  color:#F7F3EA!important;
  background:#604531!important;
  border:1px solid #604531!important;
  border-radius:12px!important;
}
.lwy-art-directed .auth-card .btn.primary:hover { background:#2F2219!important; }

/* Remove unexplained accent stripes. Use a badge or a small icon to signal importance. */
.lwy-art-directed .auth-card,
.lwy-art-directed .page-home .home-next,
.lwy-art-directed .plan.featured {
  border-top:1px solid var(--lwy-line,rgba(47,34,25,.14))!important;
}
.lwy-art-directed .page-home .home-next {
  border-radius:20px!important;
  padding-top:clamp(22px,3vw,32px)!important;
}
.lwy-art-directed .page-home .home-next .nx-ico {
  background:color-mix(in srgb,#D7DEEB 48%,#F7F3EA)!important;
  color:#2F2219!important;
  border:1px solid rgba(47,34,25,.12)!important;
}
.lwy-art-directed .page-home .home-next .nx-go {
  background:#D7DEEB!important;
  color:#2F2219!important;
  border:1px solid #D7DEEB!important;
  border-radius:12px!important;
  font-weight:800!important;
}
.lwy-art-directed .page-home .home-next .nx-go:hover { background:#D7DEEB!important; }

/* One consistent geometry for true cards; controls stay smaller, pills stay round. */
.lwy-art-directed :is(.auth-card,.setup,.doc-card,.state-card,.plan-card,.plan-pick,.plan,
  .feature-card,.evidence-card,.ev-card,.evc,.research-card,.proof-card,.quote-row,
  .preview,.pcard,.tp-card,.ms,.mh-card,.dk-card,.scene-card,.goal-card,.practice-card,
  .rank-row,.lg-row,.fq-card,.fq-neutral,.friend-result,.xp-hero,.skill-row,.weak-card,
  .weak-spot,.weakspot-card,.panel,.card,.home-weekwrap,.hh-main,.home-plan,.home-grid .tile) {
  border-radius:20px!important;
}
.lwy-art-directed :is(.btn,.btn-primary,button.primary,.field,.select,input,textarea,select,
  .item.sc,.habit-row,.role-card,.face,.turn-flag,.notice,.state-card .check-ring) {
  border-radius:12px!important;
}
.lwy-art-directed :is(.btn,.btn-primary,button.primary,.item.sc,.habit-row) { min-height:44px; }
.lwy-art-directed :is(.card,.panel,.scene-card,.goal-card,.practice-card,.tp-card,.ms,.mh-card,.dk-card) {
  border:1px solid var(--lwy-line,rgba(47,34,25,.14))!important;
}

/* Personal practice cards: selected colours now work as accents, not washed-out PNGs
   or giant saturated panels. Keep the face quiet and the chosen colour visible in details. */
.lwy-art-directed .pcard {
  --pc-accent:#604531;
  background:color-mix(in srgb,var(--pc-bg,#F7F3EA) 17%,#FBF8F2)!important;
  color:#2F2219!important;
  border:1px solid rgba(47,34,25,.15)!important;
  border-radius:20px!important;
  box-shadow:0 8px 24px rgba(47,34,25,.08)!important;
}
.lwy-art-directed .pcard[data-style="honey"] { --pc-accent:#B78A20; }
.lwy-art-directed .pcard[data-style="teal"] { --pc-accent:#3D756D; }
.lwy-art-directed .pcard[data-style="brick"] { --pc-accent:#5A6680; }
.lwy-art-directed .pcard[data-style="glow"] { --pc-accent:#604531; }
.lwy-art-directed .pcard[data-style="ink"] {
  --pc-accent:#604531;
  background:color-mix(in srgb,#2F2219 12%,#FBF8F2)!important;
}
.lwy-art-directed .pcard .pcard-mark {
  display:inline-flex!important;
  align-items:baseline!important;
  width:max-content!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  background:none!important;
  color:#604531!important;
  font-family:"Archivo","Inter",system-ui,sans-serif!important;
  font-size:clamp(20px,2.2vw,25px)!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.075em!important;
  text-indent:0!important;
  text-transform:lowercase!important;
  overflow:visible!important;
  filter:none!important;
  opacity:1!important;
}
.lwy-art-directed .pcard .pcard-mark::after {
  content:"."!important;
  color:var(--pc-accent)!important;
  margin-left:.015em;
}
.lwy-art-directed .pcard .pcard-mark i { display:none!important; }
.lwy-art-directed .pcard :is(.pcard-kind,.pcard-title,.pcard-facts dt,.pcard-foot) { color:#51443A!important; opacity:1!important; }
.lwy-art-directed .pcard .pcard-kind::before {
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  margin:0 7px 1px 0;
  border-radius:50%;
  background:var(--pc-accent);
}
.lwy-art-directed .pcard .pcard-name { color:#2F2219!important; }
.lwy-art-directed .pcard .pcard-facts { border-top:1px solid rgba(47,34,25,.16)!important; }
html[data-theme="dark"] .lwy-art-directed .pcard {
  background:color-mix(in srgb,var(--pc-bg,#2F2219) 12%,#3B2C21)!important;
  color:#F7F3EA!important;
  border-color:rgba(247,243,234,.18)!important;
}
html[data-theme="dark"] .lwy-art-directed .pcard .pcard-mark,
html[data-theme="dark"] .lwy-art-directed .pcard .pcard-name { color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .pcard :is(.pcard-kind,.pcard-title,.pcard-facts dt,.pcard-foot) { color:#E6DCD0!important; }
html[data-theme="dark"] .lwy-art-directed .pcard .pcard-facts { border-color:rgba(247,243,234,.2)!important; }

/* Make Simulate the obvious next action without colouring entire pages. */
.lwy-art-directed .side .nav button[data-page="simulate"] {
  background:color-mix(in srgb,#D7DEEB 38%,#F7F3EA)!important;
  color:#2F2219!important;
  border:1px solid color-mix(in srgb,#3D756D 22%,transparent)!important;
  border-radius:14px!important;
  font-weight:800!important;
}
.lwy-art-directed .side .nav button[data-page="simulate"] svg { color:#3D756D!important; }
.lwy-art-directed .page-home .home-grid .tile[data-k="simulate"] {
  background:color-mix(in srgb,#D7DEEB 24%,var(--card,#F7F3EA))!important;
  border:1px solid color-mix(in srgb,#3D756D 26%,var(--lwy-line,transparent))!important;
  border-left:1px solid color-mix(in srgb,#3D756D 26%,var(--lwy-line,transparent))!important;
}
.lwy-art-directed .page-home .home-grid .tile[data-k="simulate"] .ti-ico {
  background:#D7DEEB!important;
  color:#2F2219!important;
  border:1px solid rgba(47,34,25,.12)!important;
}
.lwy-art-directed .sim-page .sim-actions .btn.primary,
.lwy-art-directed #simBody .sim-actions .btn.primary {
  background:#604531!important;
  color:#F7F3EA!important;
  border-color:#604531!important;
}
.lwy-art-directed .sim-page :is(.item.sc,.habit-row,.scene-card,.role-card,.goal-card) {
  border-radius:16px!important;
}
.lwy-art-directed .sim-page .item.sc:focus-visible,
.lwy-art-directed #simBody .item.sc:focus-visible {
  outline:3px solid #3D756D!important;
  outline-offset:3px!important;
}

/* Progress, score and feedback: colour belongs in the data, not in giant surfaces. */
.lwy-art-directed :is(.meter .bar,.su-bar,.su-progress .su-bar,.xp,.xp-hero .bar,
  .progress-track,.score-track,.score-bar,.hchart .track,.hchart .bar-track) {
  background:#E4DED4!important;
  border-radius:999px!important;
  overflow:hidden;
}
.lwy-art-directed :is(.meter .bar i,.su-bar i,.su-bar span,.su-progress .su-bar i,
  .progress-fill,.score-bar i,.hchart .bar i) {
  background:#3D756D!important;
  border-radius:999px!important;
}
.lwy-art-directed .preview .meter:nth-child(1) .bar i { background:#604531!important; }
.lwy-art-directed .preview .meter:nth-child(2) .bar i { background:#3D756D!important; }
.lwy-art-directed .preview .meter.neg .bar i { background:#A9442D!important; }
.lwy-art-directed :is(.meter .val,.score-value,.score-num) { color:#2F2219!important; font-variant-numeric:tabular-nums; }
.lwy-art-directed :is(.success,.good,.status-success,.delta-up) { color:#2F2219; }
.lwy-art-directed :is(.success .icon,.good .icon,.status-success .icon) { color:#3D756D!important; }
.lwy-art-directed :is(.error,.danger,.status-error,.delta-down,.meter.neg) { color:#A9442D; }
.lwy-art-directed :is(.badge,.chip,.pill) { border-radius:999px!important; }
.lwy-art-directed :is(.badge,.chip,.pill).selected,
.lwy-art-directed :is(.badge,.chip,.pill)[aria-pressed="true"] {
  background:#D7DEEB!important;
  color:#2F2219!important;
  border-color:rgba(47,34,25,.18)!important;
}
.lwy-art-directed :is(a,button,input,textarea,select,[tabindex]):focus-visible {
  outline:3px solid #3D756D!important;
  outline-offset:3px!important;
}
.lwy-art-directed :is(.muted,.small,.lead,.page .muted,.page .small) {
  color:color-mix(in srgb,var(--ink,#2F2219) 76%,var(--paper,#F7F3EA))!important;
  opacity:1!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.muted,.small,.lead,.page .muted,.page .small) {
  color:#E6DCD0!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.meter .val,.score-value,.score-num) { color:#F7F3EA!important; }
@media(max-width:700px) {
  .lwy-art-directed :is(.auth-card,.setup,.doc-card,.state-card,.plan-card,.plan,.feature-card,
    .evidence-card,.ev-card,.evc,.research-card,.proof-card,.quote-row,.preview,.pcard,.tp-card,
    .ms,.mh-card,.dk-card,.scene-card,.goal-card,.practice-card,.rank-row,.lg-row,.panel,.card) {
    border-radius:18px!important;
  }
  .lwy-art-directed .auth-solo .auth-mark { font-size:26px!important; }
}


/* Card mark is built from live text, never the low-resolution PNG wordmarks. */
.lwy-art-directed .pcard .pcard-mark {
  font-size:0!important;
}
.lwy-art-directed .pcard .pcard-mark::before {
  content:"luwy"!important;
  display:inline-block!important;
  color:#604531!important;
  font-family:"Archivo","Inter",system-ui,sans-serif!important;
  font-size:clamp(20px,2.2vw,25px)!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.075em!important;
  text-indent:0!important;
}
.lwy-art-directed .pcard .pcard-mark::after {
  font-size:clamp(20px,2.2vw,25px)!important;
  font-family:"Archivo","Inter",system-ui,sans-serif!important;
  font-weight:900!important;
  line-height:1!important;
}
html[data-theme="dark"] .lwy-art-directed .pcard .pcard-mark::before { color:#F7F3EA!important; }

/* UI contrast repair — 12 Oct 2026
   Scoped to the signed-in app so the public marketing art direction is unchanged.
   Keep labels readable against the actual surface in both theme modes. */
.app {
  color: var(--ink, #2F2219);
  color-scheme: light;
}
html[data-theme="dark"] .app { color-scheme: dark; }

.app :is(button, a, [role="button"]) {
  -webkit-tap-highlight-color: transparent;
}
.app :is(button, a, [role="button"]):not(:disabled):not([aria-disabled="true"]) {
  opacity: 1;
}
.app :is(button, a, [role="button"]):focus-visible {
  outline: 3px solid #3D756D !important;
  outline-offset: 3px !important;
}

/* Primary actions always have a clear, high-contrast label. */
.app :is(.btn.primary, .btn-primary, .btn-primary-action, button.primary, .primary-action) {
  background: #604531 !important;
  background-image: none !important;
  color: #F7F3EA !important;
  border: 1px solid #604531 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.app :is(.btn.primary, .btn-primary, .btn-primary-action, button.primary, .primary-action):hover {
  background: #4F3827 !important;
  color: #FFFFFF !important;
}
.app :is(.btn.ghost, .btn.outline, .btn.soft, .btn.quiet, .btn.secondary, .btn-secondary) {
  background: var(--surface, #FFFFFF) !important;
  background-image: none !important;
  color: var(--ink, #2F2219) !important;
  border: 1px solid var(--line, #D9D2C8) !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
.app :is(.btn.ghost, .btn.outline, .btn.soft, .btn.quiet, .btn.secondary, .btn-secondary):hover {
  background: var(--surface-2, #ECE5D7) !important;
  color: var(--ink, #2F2219) !important;
}
html[data-theme="dark"] .app :is(.btn.ghost, .btn.outline, .btn.soft, .btn.quiet, .btn.secondary, .btn-secondary) {
  background: #3B2C21 !important;
  color: #F7F3EA !important;
  border-color: #6C5948 !important;
}

/* Sidebar and topbar controls must remain visible over their own surfaces. */
.app .side .nav button,
.app .side .side-foot button,
.app .topbar-tools .iconbtn,
.app .topbar .iconbtn {
  color: var(--ink, #2F2219) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
.app .side .nav button svg,
.app .side .side-foot button svg,
.app .topbar-tools .iconbtn svg,
.app .topbar .iconbtn svg { stroke: currentColor; opacity: 1; }
.app .side .nav button.active,
.app .side .nav button[aria-current="page"],
.app .side .nav button[aria-pressed="true"] {
  color: var(--ink, #2F2219) !important;
  background: var(--surface-2, #ECE5D7) !important;
}
html[data-theme="dark"] .app .side .nav button.active,
html[data-theme="dark"] .app .side .nav button[aria-current="page"],
html[data-theme="dark"] .app .side .nav button[aria-pressed="true"] {
  background: #4A3A2C !important;
  color: #F7F3EA !important;
}

/* App forms: readable text, labels, placeholders, and visible boundaries. */
.app :is(input, textarea, select, .field, .select) {
  color: var(--ink, #2F2219);
  background-color: var(--surface, #FFFFFF);
  border-color: var(--line, #D9D2C8);
}
.app :is(input, textarea, select)::placeholder {
  color: var(--muted, #5E5058);
  opacity: 1;
}
html[data-theme="dark"] .app :is(input, textarea, select, .field, .select) {
  color: #F7F3EA;
  background-color: #3B2C21;
  border-color: #6C5948;
}
html[data-theme="dark"] .app :is(input, textarea, select)::placeholder {
  color: #D6C8B4;
  opacity: 1;
}
.app :is(label, .field-label, .form-label) { color: var(--ink, #2F2219); opacity: 1; }
html[data-theme="dark"] .app :is(label, .field-label, .form-label) { color: #F7F3EA; }

/* Status chips and secondary copy should never rely on opacity alone. */
.app :is(.muted, .small, .hint, .helper, .field-hint, .empty-state, .subtext) {
  color: var(--muted, #5E5058);
  opacity: 1;
}
html[data-theme="dark"] .app :is(.muted, .small, .hint, .helper, .field-hint, .empty-state, .subtext) {
  color: #D6C8B4;
  opacity: 1;
}
.app :is(.pill, .chip, .badge, .tag) { opacity: 1; }
.app :is(.pill, .chip, .badge, .tag) :is(span, b, strong, small) { opacity: 1; }

/* Progress tracks remain visible even when empty; fill keeps a distinct success hue. */
.app :is(.progress-track, .score-track, .score-bar, .meter .bar, .su-bar, .xp .bar) {
  background: #E4DED4;
  border: 1px solid rgba(47,34,25,.10);
}
.app :is(.progress-fill, .score-bar i, .meter .bar i, .su-bar i, .xp .bar i) {
  background: #3D756D;
}
html[data-theme="dark"] .app :is(.progress-track, .score-track, .score-bar, .meter .bar, .su-bar, .xp .bar) {
  background: #514233;
  border-color: #6C5948;
}
html[data-theme="dark"] .app :is(.progress-fill, .score-bar i, .meter .bar i, .su-bar i, .xp .bar i) {
  background: #8FC9BD;
}

/* Prevent long labels and buttons from being clipped on narrow screens. */
.app :is(button, .btn, a[role="button"]) { max-width: 100%; }
.app :is(button, .btn, a[role="button"]) { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 700px) {
  .app .page :is(button, .btn, a[role="button"]) { min-height: 44px; }
  .app .page :is(.btn.primary, .btn-primary, .btn-primary-action, button.primary, .primary-action) { min-height: 48px; }
}

/* Final contrast corrections: the app topbar stays espresso in both themes,
   so its controls must stay cream; never inherit the page's dark ink token. */
.lwy-art-directed .app .topbar .topbar-tools .iconbtn,
.lwy-art-directed .app .topbar .iconbtn {
  color: #F7F3EA !important;
  opacity: 1 !important;
}
.lwy-art-directed .app .topbar .topbar-tools .iconbtn svg,
.lwy-art-directed .app .topbar .iconbtn svg {
  color: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
}

/* Child spans often carry their own stale theme colour; make button labels
   and icons inherit the accessible foreground selected for the control. */
.lwy-art-directed .app :is(.btn.primary, .btn-primary, .btn-primary-action, button.primary, .primary-action,
  .btn.ghost, .btn.outline, .btn.soft, .btn.quiet, .btn.secondary, .btn-secondary)
  :is(span, b, strong, small, em) {
  color: inherit !important;
  opacity: 1 !important;
}

/* Busy primary actions use a cream spinner on cocoa, including in dark mode. */
.lwy-art-directed .app :is(.btn.primary, .btn-primary, .btn-primary-action, button.primary, .primary-action)[aria-busy="true"]::after {
  border-color: rgba(247,243,234,.32) !important;
  border-top-color: #F7F3EA !important;
}

/* Keyboard focus must remain perceptible against dark surfaces as well as paper. */
html[data-theme="dark"] .lwy-art-directed .app :is(a,button,input,textarea,select,[tabindex]):focus-visible {
  outline-color: #FBE39D !important;
}



/* ---------------------------------------------------------------------------
   Luwy site-wide quality pass (2026-10-13)
   Canonical palette, Rethink Sans, contrast-safe status feedback and real logo
   assets. This file is loaded last across public pages and the app.
--------------------------------------------------------------------------- */
:root {
  --sans:"Rethink Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"Rethink Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --lwy-cocoa:#604531;
  --lwy-espresso:#2F2219;
  --lwy-cream:#F7F3EA;
  --lwy-snow:#D7DEEB;
  --lwy-seafoam:#C0DDD9;
  --lwy-butter:#FBE39D;
  --lwy-neutral:#5E5058;
  --lwy-hairline:#D9D2C8;
  --lwy-error-ink:#604531;
  --lwy-error-surface:#ECE5D7;
}
html,body,.lwy-art-directed { font-family:"Rethink Sans",system-ui,-apple-system,"Segoe UI",sans-serif!important; }
.lwy-art-directed :is(h1,h2,h3,h4,h5,h6,.brand,.eyebrow,button,.btn,input,textarea,select) {
  font-family:"Rethink Sans",system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
.lwy-art-directed :is(h1,h2) { font-weight:800!important; letter-spacing:-.03em!important; }
.lwy-art-directed :is(h3,h4,h5,h6) { font-weight:700!important; letter-spacing:-.015em!important; }

/* A real wordmark asset replaces CSS-text approximations. Cream on espresso,
   cocoa on light surfaces. The accessible link name remains in the HTML. */
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand {
  display:inline-block!important;
  width:88px!important;
  height:40px!important;
  padding:0!important;
  overflow:hidden!important;
  background:transparent url("/brand/luwy-cream.png?v=20261013a") left center / contain no-repeat!important;
  color:transparent!important;
  font-size:0!important;
  letter-spacing:0!important;
  line-height:0!important;
  text-shadow:none!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand span { display:inline!important; color:transparent!important; font-size:0!important; }
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand::before,
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand::after { content:none!important; display:none!important; }
.lwy-art-directed .app .side .app-brand,
.lwy-art-directed .ob-top .brand,
.lwy-art-directed .site-footer .brand {
  display:inline-block!important;
  width:82px!important;
  height:38px!important;
  padding:0!important;
  overflow:hidden!important;
  background:transparent url("/brand/luwy-cocoa.png?v=20261013a") left center / contain no-repeat!important;
  color:transparent!important;
  font-size:0!important;
  letter-spacing:0!important;
  line-height:0!important;
  text-shadow:none!important;
}
.lwy-art-directed .app .side .app-brand span,
.lwy-art-directed .ob-top .brand span,
.lwy-art-directed .site-footer .brand span { color:transparent!important; font-size:0!important; }
.lwy-art-directed .app .side .app-brand::before,
.lwy-art-directed .app .side .app-brand::after,
.lwy-art-directed .ob-top .brand::before,
.lwy-art-directed .ob-top .brand::after,
.lwy-art-directed .site-footer .brand::before,
.lwy-art-directed .site-footer .brand::after { content:none!important; display:none!important; }
html[data-theme="dark"] .lwy-art-directed .app .side .app-brand,
html[data-theme="dark"] .lwy-art-directed .ob-top .brand,
html[data-theme="dark"] .lwy-art-directed .site-footer .brand {
  background-image:url("/brand/luwy-cream.png?v=20261013a")!important;
}
/* The sign-in mark is the supplied wordmark image, not a typed imitation or app icon. */
.lwy-art-directed .auth-solo .auth-mark {
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 8px!important;
  background:transparent!important;
}
.lwy-art-directed .auth-solo .auth-mark img {
  display:block!important;
  width:124px!important;
  height:56px!important;
  max-width:100%!important;
  object-fit:contain!important;
  content:url("/brand/luwy-cocoa.png?v=20261013a")!important;
}
.lwy-art-directed .auth-solo .auth-mark span { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
html[data-theme="dark"] .lwy-art-directed .auth-solo .auth-mark img {
  content:url("/brand/luwy-cream.png?v=20261013a")!important;
}

/* Remove colour-only failure states. A weak answer is coaching feedback, not an
   error: use readable cocoa/ink and warm neutral surfaces. */
.lwy-art-directed {
  --brick:var(--lwy-error-ink);
  --alert:var(--lwy-error-ink);
  --alert-bg:var(--lwy-error-surface);
}
.lwy-art-directed :is(.doubt,.score-doubt,.metric-doubt,.status-doubt,.failure,.failed,.is-bad,.state-bad,.score-negative,.negative-score) {
  color:var(--lwy-error-ink)!important;
}
.lwy-art-directed :is(.doubt,.score-doubt,.metric-doubt,.status-doubt,.failure,.failed,.is-bad,.state-bad,.score-negative,.negative-score) :is(span,b,strong,small,label) {
  color:inherit!important;
}
.lwy-art-directed :is(.doubt-bar,.score-doubt-bar,.failure-bar,.negative-bar,.score-bar.bad,.meter.bad,.meter.negative) :is(i,b,span,.fill) {
  background-color:var(--lwy-cocoa)!important;
}
.lwy-art-directed :is(.error,.error-text,.error-message,.field-error,.form-error,.validation-error,.fmsg.bad,[aria-invalid="true"] + .fmsg) {
  color:var(--lwy-error-ink)!important;
}
.lwy-art-directed :is(.error,.error-message,.form-error,.validation-error) {
  background-color:var(--lwy-error-surface);
  border-color:var(--lwy-hairline);
}
.lwy-art-directed :is(.score-number,.score-value,.metric-value,.metric-number,.score-row strong,.score-metric strong,.score-card strong,.stat-value,.stat-number) {
  color:var(--lwy-espresso)!important;
  opacity:1!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.score-number,.score-value,.metric-value,.metric-number,.score-row strong,.score-metric strong,.score-card strong,.stat-value,.stat-number) {
  color:var(--lwy-cream)!important;
}
.lwy-art-directed :is(.muted,.small,.hint,.helper,.field-hint,.subtext,.secondary-text,.caption,.score-label,.metric-label) { opacity:1!important; }
.lwy-art-directed :is(input,textarea,select,[contenteditable="true"]) {
  font-family:"Rethink Sans",system-ui,-apple-system,"Segoe UI",sans-serif!important;
  color:var(--lwy-espresso)!important;
  background-color:#FFFFFF!important;
  border-color:var(--lwy-hairline)!important;
}
.lwy-art-directed :is(input,textarea,select,[contenteditable="true"])::placeholder { color:#66584F!important; opacity:1!important; }
html[data-theme="dark"] .lwy-art-directed :is(input,textarea,select,[contenteditable="true"]) {
  color:var(--lwy-cream)!important;
  background-color:#3B2C21!important;
  border-color:#6C5948!important;
}
html[data-theme="dark"] .lwy-art-directed :is(input,textarea,select,[contenteditable="true"])::placeholder { color:#D6C8B4!important; opacity:1!important; }
.lwy-art-directed :is(label,.field-label,.form-label) { opacity:1!important; }
.lwy-art-directed :is(.progress-track,.score-track,.score-bar,.meter .bar,.su-bar,.xp .bar) {
  background-color:#E7E1D8;
  border-color:#D9D2C8;
}
.lwy-art-directed :is(.progress-fill,.score-bar i,.meter .bar i,.su-bar i,.xp .bar i) { background-color:#4E9389; }
.lwy-art-directed :is(.score-bar.doubt,.score-bar.negative,.score-track.doubt,.meter.doubt .bar,.doubt .score-bar) { background-color:#E7E1D8!important; }
.lwy-art-directed :is(.score-bar.doubt i,.score-bar.negative i,.score-track.doubt i,.meter.doubt .bar i,.doubt .score-fill) { background-color:#604531!important; }
html[data-theme="dark"] .lwy-art-directed :is(.progress-track,.score-track,.score-bar,.meter .bar,.su-bar,.xp .bar) { background-color:#514233; border-color:#6C5948; }
html[data-theme="dark"] .lwy-art-directed :is(.progress-fill,.score-bar i,.meter .bar i,.su-bar i,.xp .bar i) { background-color:#D7DEEB; }
.lwy-art-directed :is(.btn.primary,.btn-primary,button.primary,[type=submit]) {
  background:#604531!important;
  color:#F7F3EA!important;
  border-color:#604531!important;
}
.lwy-art-directed :is(.btn.primary,.btn-primary,button.primary,[type=submit]) :is(span,b,strong,small) { color:inherit!important; }
html[data-theme="dark"] .lwy-art-directed :is(.btn.primary,.btn-primary,button.primary,[type=submit]) {
  background:#F7F3EA!important;
  color:#2F2219!important;
  border-color:#F7F3EA!important;
}
.lwy-art-directed :is(.btn.secondary,.btn.outline,.btn.ghost,button.secondary) {
  color:#604531!important;
  border-color:#B8A99A!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.btn.secondary,.btn.outline,.btn.ghost,button.secondary) {
  color:#F7F3EA!important;
  border-color:#8D7966!important;
}
.lwy-art-directed :is(a,button,input,textarea,select,[tabindex]):focus-visible {
  outline:3px solid #604531!important;
  outline-offset:3px!important;
}
html[data-theme="dark"] .lwy-art-directed :is(a,button,input,textarea,select,[tabindex]):focus-visible {
  outline-color:#FBE39D!important;
}
@media(max-width:700px) {
  .lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand { width:82px!important; height:38px!important; }
}
@media(prefers-reduced-motion:reduce) {
  .lwy-art-directed *, .lwy-art-directed *::before, .lwy-art-directed *::after {
    animation-duration:.01ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.01ms!important;
  }
}


/* Home-page practice example: make both attempts equally legible and feedback
   candid without using red or blame as a shortcut for difficulty. */
.lwy-art-directed .sim-demo .preview {
  background:#FFFFFF!important;
  color:#2F2219!important;
  border:1px solid #D9D2C8!important;
  box-shadow:0 8px 24px rgba(47,34,25,.06)!important;
}
.lwy-art-directed .sim-demo .preview :is(.preview-head,.who,.meter,.meter .val) { color:#2F2219!important; opacity:1!important; }
.lwy-art-directed .sim-demo .preview .preview-head span { color:#5E5058!important; }
.lwy-art-directed .sim-demo .bubble.ai {
  background:#ECE5D7!important;
  color:#2F2219!important;
}
.lwy-art-directed .sim-demo .bubble.me {
  background:#2F2219!important;
  color:#F7F3EA!important;
}
.lwy-art-directed .sim-demo .meter .bar { background:#E7E1D8!important; }
.lwy-art-directed .sim-demo .meter:not(.neg) .bar i { background:#604531!important; }
.lwy-art-directed .sim-demo .meter.neg,
.lwy-art-directed .sim-demo .meter.neg > span:first-child,
.lwy-art-directed .sim-demo .meter.neg .val { color:#604531!important; }
.lwy-art-directed .sim-demo .meter.neg .bar i { background:#604531!important; }
.lwy-art-directed .sim-demo .turn-flag {
  background:#F3E9D7!important;
  color:#2F2219!important;
  border:1px solid #E7D5B3!important;
}
html[data-theme="dark"] .lwy-art-directed .sim-demo .preview {
  background:#3B2C21!important;
  color:#F7F3EA!important;
  border-color:#6C5948!important;
}
html[data-theme="dark"] .lwy-art-directed .sim-demo .preview :is(.preview-head,.who,.meter,.meter .val,.preview-head span) { color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .sim-demo .bubble.ai { background:#514233!important; color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .sim-demo .bubble.me { background:#241A12!important; color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .sim-demo .meter .bar { background:#514233!important; }
html[data-theme="dark"] .lwy-art-directed .sim-demo .meter.neg,
html[data-theme="dark"] .lwy-art-directed .sim-demo .meter.neg > span:first-child,
html[data-theme="dark"] .lwy-art-directed .sim-demo .meter.neg .val { color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .sim-demo .meter.neg .bar i { background:#B8A99A!important; }
html[data-theme="dark"] .lwy-art-directed .sim-demo .turn-flag { background:#514233!important; color:#F7F3EA!important; border-color:#6C5948!important; }


/* Status treatment is consistent in the hero, retry demo and in-app practice:
   a difficult score is informational, not a danger alert. */
.lwy-art-directed :is(.meter.neg,.meter.negative,.meter.doubt,.score-neg,.score-negative,.status-negative,.state-negative) {
  color:#604531!important;
}
.lwy-art-directed :is(.meter.neg,.meter.negative,.meter.doubt,.score-neg,.score-negative,.status-negative,.state-negative) > :is(span,label,strong) {
  color:inherit!important;
  opacity:1!important;
}
.lwy-art-directed :is(.meter.neg,.meter.negative,.meter.doubt,.score-neg,.score-negative,.status-negative,.state-negative) :is(.bar i,.fill,.score-fill,.progress-fill) {
  background:#604531!important;
}
.lwy-art-directed .preview .meter .val { color:#2F2219!important; opacity:1!important; }
.lwy-art-directed .preview .meter.neg .val,
.lwy-art-directed .preview .meter.neg > span:first-child { color:#604531!important; }
.lwy-art-directed .preview .meter.neg .bar i { background:#604531!important; }
html[data-theme="dark"] .lwy-art-directed :is(.meter.neg,.meter.negative,.meter.doubt,.score-neg,.score-negative,.status-negative,.state-negative) {
  color:#F7F3EA!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.meter.neg,.meter.negative,.meter.doubt,.score-neg,.score-negative,.status-negative,.state-negative) :is(.bar i,.fill,.score-fill,.progress-fill) {
  background:#B8A99A!important;
}
html[data-theme="dark"] .lwy-art-directed .preview .meter .val { color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .preview .meter.neg .val,
html[data-theme="dark"] .lwy-art-directed .preview .meter.neg > span:first-child { color:#F7F3EA!important; }


/* Red is not a general-purpose score colour in Luwy. Reserve it nowhere in
   routine coaching states; errors still have text, borders and accessible focus. */
.lwy-art-directed { --lwy-rust:#604531; }
.lwy-art-directed :is(.danger,.status-error,.delta-down) {
  color:#604531!important;
}
.lwy-art-directed :is(.danger,.status-error,.delta-down) :is(span,b,strong,small,svg) {
  color:inherit!important;
  stroke:currentColor!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.danger,.status-error,.delta-down) {
  color:#F7F3EA!important;
}


/* October 13 corrective pass: visible active navigation, exact card colours,
   and legible copy on light cards within dark editorial sections. */
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) nav :is(a.active,a[aria-current="page"],a[aria-current="true"]) {
  background:#FBE39D!important; color:#2F2219!important; border-color:#FBE39D!important;
  border-radius:999px!important; text-decoration:none!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) nav :is(a.active,a[aria-current="page"],a[aria-current="true"]) * { color:#2F2219!important; }

/* Research cards are white surfaces inside dark sections: use ink, not cream. */
.lwy-art-directed .evc,
.lwy-art-directed :is(.feature-card,.feature-tile,.pricing-card,.price-card,.plan-card,.pricing-tier,.faq-card,.faq-item,.moment-card,.hard-moment-card,.research-card,.method-card,.proof-card) { color:#2F2219!important; }
.lwy-art-directed .evc { background:#FFFFFF!important; border-color:#D9D2C8!important; }
.lwy-art-directed .evc :is(h1,h2,h3,h4,h5,h6,p,li,small,span,div,strong,b,em) { color:#2F2219!important; opacity:1!important; }
.lwy-art-directed .evc :is(a,.evc-feat,.evc-tag) { color:#604531!important; opacity:1!important; text-decoration-color:#B8A99A; }
.lwy-art-directed .evc .evc-tag { background:#FBE39D!important; border-color:#E7D5B3!important; }
.lwy-art-directed :is(.feature-card,.feature-tile,.pricing-card,.price-card,.plan-card,.pricing-tier,.faq-card,.faq-item,.moment-card,.hard-moment-card,.research-card,.method-card,.proof-card) :is(h1,h2,h3,h4,h5,h6,p,li,small,span,strong,b) { color:inherit; opacity:1; }
.lwy-art-directed :is(.feature-card,.feature-tile,.pricing-card,.price-card,.plan-card,.pricing-tier,.faq-card,.faq-item,.moment-card,.hard-moment-card,.research-card,.method-card,.proof-card) :is(a,.eyebrow,.tag,.badge) { color:#604531!important; opacity:1!important; }

/* Streak is a status, not a low-contrast decoration. */
.lwy-art-directed .top-streak { background:#FBE39D!important; color:#2F2219!important; border:1px solid #E7D5B3!important; opacity:1!important; box-shadow:none!important; }
.lwy-art-directed .top-streak :is(span,b,strong,small,svg) { color:#2F2219!important; fill:#604531!important; stroke:#604531!important; opacity:1!important; }
html[data-theme="dark"] .lwy-art-directed .top-streak { background:#FBE39D!important; color:#2F2219!important; }
html[data-theme="dark"] .lwy-art-directed .top-streak :is(span,b,strong,small,svg) { color:#2F2219!important; fill:#604531!important; stroke:#604531!important; }

/* Supplied logo artwork already includes its dot. Never synthesize another. */
.lwy-art-directed :is(.brand,.app-brand,.pcard-mark,.auth-mark)::before,
.lwy-art-directed :is(.brand,.app-brand,.pcard-mark,.auth-mark)::after { content:none!important; display:none!important; }
.lwy-art-directed .pcard-mark i { display:none!important; }

/* Card colours are literal, not tinted by a white overlay. Black is a card-only choice. */
.lwy-art-directed .pcard::after { display:none!important; content:none!important; background:none!important; }
.lwy-art-directed .pcard[data-style="claret"] { --pc-bg:#604531; --pc-ink:#F7F3EA; --pc-soft:#F7F3EA; --pc-line:rgba(247,243,234,.28); background:#604531!important; background-image:none!important; color:#F7F3EA!important; }
.lwy-art-directed .pcard[data-style="glow"] { --pc-bg:#F7F3EA; --pc-ink:#2F2219; --pc-soft:#51443A; --pc-line:rgba(47,34,25,.22); background:#F7F3EA!important; background-image:none!important; color:#2F2219!important; }
.lwy-art-directed .pcard[data-style="honey"] { --pc-bg:#FBE39D; --pc-ink:#2F2219; --pc-soft:#51443A; --pc-line:rgba(47,34,25,.22); background:#FBE39D!important; background-image:none!important; color:#2F2219!important; }
.lwy-art-directed .pcard[data-style="teal"] { --pc-bg:#D7DEEB; --pc-ink:#2F2219; --pc-soft:#344F4B; --pc-line:rgba(47,34,25,.22); background:#D7DEEB!important; background-image:none!important; color:#2F2219!important; }
.lwy-art-directed .pcard[data-style="brick"] { --pc-bg:#D7DEEB; --pc-ink:#2F2219; --pc-soft:#41475A; --pc-line:rgba(47,34,25,.22); background:#D7DEEB!important; background-image:none!important; color:#2F2219!important; }
.lwy-art-directed .pcard[data-style="ink"] { --pc-bg:#000000; --pc-ink:#F7F3EA; --pc-soft:#F7F3EA; --pc-line:rgba(247,243,234,.34); background:#000000!important; background-image:none!important; color:#F7F3EA!important; border:1px solid #514233!important; box-shadow:0 12px 28px rgba(0,0,0,.18)!important; }
.lwy-art-directed .pcard :is(.pcard-kind,.pcard-name,.pcard-title,.pcard-facts dt,.pcard-facts dd,.pcard-foot) { color:var(--pc-ink)!important; opacity:1!important; }
.lwy-art-directed .pcard[data-style="ink"] .pcard-mark,
.lwy-art-directed .pcard[data-style="claret"] .pcard-mark { background-image:url("/brand/luwy-cream.png?v=20261013b")!important; }
.lwy-art-directed .pcard:is([data-style="glow"],[data-style="honey"],[data-style="teal"],[data-style="brick"]) .pcard-mark { background-image:url("/brand/luwy-cocoa.png?v=20261013b")!important; }
.lwy-art-directed .chip.swatch[data-style="ink"] i { background:#000000!important; border:1px solid #8D7966!important; }
.lwy-art-directed .chip.swatch[data-style="claret"] i { background:#604531!important; }
.lwy-art-directed .chip.swatch[data-style="glow"] i { background:#F7F3EA!important; }
.lwy-art-directed .chip.swatch[data-style="honey"] i { background:#FBE39D!important; }
.lwy-art-directed .chip.swatch[data-style="teal"] i { background:#D7DEEB!important; }
.lwy-art-directed .chip.swatch[data-style="brick"] i { background:#D7DEEB!important; }
.lwy-art-directed :is(.pcard,.pcard *) { font-family:"Rethink Sans",system-ui,-apple-system,"Segoe UI",sans-serif!important; }


/* Navigation hover/focus must pair the highlighted butter surface with ink.
   Earlier legacy hover rules set butter text, which disappears on a light pill. */
.lwy-art-directed .site-nav nav a:hover,
.lwy-art-directed .site-nav nav a:focus-visible {
  background:#FBE39D!important;
  color:#2F2219!important;
  border-color:#FBE39D!important;
  text-decoration:none!important;
}
.lwy-art-directed .site-nav nav a:hover *,
.lwy-art-directed .site-nav nav a:focus-visible * { color:#2F2219!important; }



/* Consolidated responsive legibility pass — 13 Oct 2026 */
/* Single shared stylesheet pass. Keep all changes presentational; do not touch app role logic. */
:root {
  --lwy-cocoa:#604531;
  --lwy-snow:#D7DEEB;
  --lwy-seafoam:#C0DDD9;
  --lwy-butter:#FBE39D;
  --lwy-cream:#F7F3EA;
  --lwy-espresso:#2F2219;
  --lwy-readable-muted:#5B5047;
}

/* Editorial wrapping: avoid mid-word breaks and lonely final words where possible. */
.lwy-art-directed :is(p,li,.lead,.subtitle,.description,.plan-description,.feature-description,
  .faq-answer,.quote,.quote-text,.hero-copy,.section-copy,.card-copy,.hard-moment-copy) {
  text-wrap: pretty;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
  line-height: 1.6;
}
.lwy-art-directed :is(h1,h2,h3,h4,.hero-title,.section-title,.plan-title,.feature-title) {
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
  line-height: 1.15;
}
.lwy-art-directed :is(p,li,.lead,.subtitle,.description) > :is(a,strong,em,span) {
  overflow-wrap: inherit;
  word-break: inherit;
}
.lwy-art-directed :is(img,svg,video,canvas) { max-width:100%; }
.lwy-art-directed :is(.container,.section,.section-inner,.hero-inner,.pricing-grid,.plans-grid) {
  min-width:0;
}
.lwy-art-directed :is(.card,.plan,.plan-card,.feature-card,.faq-card,.hard-moment-card,
  .pricing-card,.pricing-tier,.quote-card,.testimonial,.feature,.moment-card) {
  min-width:0;
  overflow-wrap:normal;
}
.lwy-art-directed :is(.card,.plan,.plan-card,.feature-card,.faq-card,.hard-moment-card,
  .pricing-card,.pricing-tier,.quote-card,.testimonial,.feature,.moment-card) :is(p,li) {
  max-width:68ch;
}

/* Never let hover, active, selected, visited or disabled styles erase labels. */
.lwy-art-directed :is(a,button,[role="button"],input[type="button"],input[type="submit"]) {
  opacity:1;
  text-shadow:none;
  -webkit-text-fill-color:currentColor;
}
.lwy-art-directed :is(a,button,[role="button"],input[type="button"],input[type="submit"]):is(:hover,:focus,:focus-visible,:active,[aria-pressed="true"],[aria-current="page"]) {
  text-shadow:none;
  -webkit-text-fill-color:currentColor;
}
.lwy-art-directed :is(button,a,[role="button"]):disabled,
.lwy-art-directed :is(button,a,[role="button"])[aria-disabled="true"] {
  opacity:1;
  cursor:not-allowed;
}
.lwy-art-directed :is(a,button,[role="button"]):focus-visible {
  outline:3px solid #3D756D!important;
  outline-offset:3px!important;
}
.lwy-art-directed :is(a,button,[role="button"]):is(:hover,:active) {
  transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease;
}

/* Public navigation stays dark, therefore its logo must stay cream. */
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) {
  background:#2F2219!important;
  color:#F7F3EA!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand,
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand span {
  color:#F7F3EA!important;
}
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand::after { color:#FBE39D!important; }
/* Light surfaces use cocoa; dark surfaces use cream. Do not double-render the logo dot. */
.lwy-art-directed :is(.site-footer,.footer,.side,.ob-top) .brand,
.lwy-art-directed :is(.site-footer,.footer,.side,.ob-top) .brand span {
  color:#604531!important;
}
.lwy-art-directed :is(.site-footer,.footer,.side,.ob-top) .brand::after { color:#604531!important; }
html[data-theme="dark"] .lwy-art-directed :is(.site-footer,.footer,.side,.ob-top) .brand,
html[data-theme="dark"] .lwy-art-directed :is(.site-footer,.footer,.side,.ob-top) .brand span {
  color:#F7F3EA!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.site-footer,.footer,.side,.ob-top) .brand::after { color:#FBE39D!important; }

/* Restore a varied but restrained brand palette on pricing and difficult-moment content. */
.lwy-art-directed :is(.plan.featured,.plan-card.featured,.pricing-card.featured,.pricing-tier.featured,
  [data-featured="true"],.recommended-plan) {
  background:color-mix(in srgb,#D7DEEB 24%,#F7F3EA)!important;
  border:1px solid color-mix(in srgb,#3D756D 42%,#F7F3EA)!important;
  box-shadow:0 10px 28px rgba(47,34,25,.08)!important;
}
.lwy-art-directed :is(.plan.featured,.plan-card.featured,.pricing-card.featured,.pricing-tier.featured,
  [data-featured="true"],.recommended-plan) :is(.badge,.eyebrow,.plan-label,.plan-tag) {
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  padding:.3rem .65rem;
  border-radius:999px;
  background:#D7DEEB!important;
  color:#2F2219!important;
  font-weight:800;
}
.lwy-art-directed :is(.price,.price-value,.plan-price,.pricing-price,.highlight-stat,.stat-value) {
  color:#604531;
  font-variant-numeric:tabular-nums;
}
.lwy-art-directed :is(.plan,.plan-card,.pricing-card,.pricing-tier) :is(.btn.primary,.btn-primary,button.primary) {
  background:#604531!important;
  color:#F7F3EA!important;
  border-color:#604531!important;
}
.lwy-art-directed :is(.plan,.plan-card,.pricing-card,.pricing-tier) :is(.btn.primary,.btn-primary,button.primary):is(:hover,:focus-visible,:active) {
  background:#2F2219!important;
  color:#F7F3EA!important;
  border-color:#2F2219!important;
}
.lwy-art-directed :is(.hard-moments,.hard-moments-page,.page-hard-moments,#hardMoments) {
  --moment-accent:#3D756D;
}
.lwy-art-directed :is(.hard-moments,.hard-moments-page,.page-hard-moments,#hardMoments)
  :is(.eyebrow,.kicker,.moment-label,.step-number,.feature-number) {
  color:#2F2219!important;
  background:#D7DEEB;
  border-radius:8px;
  padding:.22rem .5rem;
  font-weight:800;
}
.lwy-art-directed :is(.hard-moments,.hard-moments-page,.page-hard-moments,#hardMoments)
  :is(.highlight,.text-highlight,mark,.key-takeaway) {
  color:#2F2219!important;
  background:#FBE39D!important;
  border-radius:4px;
  padding:.05em .22em;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.lwy-art-directed :is(.hard-moments,.hard-moments-page,.page-hard-moments,#hardMoments)
  :is(.card,.moment-card,.feature-card,.step-card) {
  border:1px solid rgba(47,34,25,.15);
  box-shadow:0 8px 24px rgba(47,34,25,.045);
}
.lwy-art-directed :is(.hard-moments,.hard-moments-page,.page-hard-moments,#hardMoments)
  :is(.card,.moment-card,.feature-card,.step-card):nth-child(3n+2) {
  background:color-mix(in srgb,#D7DEEB 34%,#F7F3EA);
}
.lwy-art-directed :is(.hard-moments,.hard-moments-page,.page-hard-moments,#hardMoments)
  :is(.card,.moment-card,.feature-card,.step-card):nth-child(3n) {
  background:color-mix(in srgb,#D7DEEB 25%,#F7F3EA);
}

/* Text contrast in both themes; don't apply pale text to pale surfaces. */
.lwy-art-directed :is(.site-footer,.footer) { color:#2F2219; }
.lwy-art-directed :is(.site-footer,.footer) :is(p,li,small,.muted,.subtext) { color:#5B5047; opacity:1; }
html[data-theme="dark"] .lwy-art-directed :is(.site-footer,.footer) { color:#F7F3EA; }
html[data-theme="dark"] .lwy-art-directed :is(.site-footer,.footer) :is(p,li,small,.muted,.subtext) { color:#E6DCD0; }
html[data-theme="dark"] .lwy-art-directed :is(.plan.featured,.plan-card.featured,.pricing-card.featured,
  .pricing-tier.featured,[data-featured="true"],.recommended-plan) {
  background:color-mix(in srgb,#3D756D 24%,#2F2219)!important;
  border-color:#5C928A!important;
  color:#F7F3EA!important;
}
html[data-theme="dark"] .lwy-art-directed :is(.price,.price-value,.plan-price,.pricing-price,.highlight-stat,.stat-value) { color:#FBE39D; }
html[data-theme="dark"] .lwy-art-directed :is(.hard-moments,.hard-moments-page,.page-hard-moments,#hardMoments)
  :is(.card,.moment-card,.feature-card,.step-card):is(:nth-child(3n+2),:nth-child(3n)) {
  color:#F7F3EA;
  border-color:rgba(247,243,234,.18);
}
@media(max-width:760px) {
  .lwy-art-directed :is(p,li,.lead,.subtitle,.description,.plan-description,.feature-description,
    .faq-answer,.quote,.quote-text,.hero-copy,.section-copy,.card-copy,.hard-moment-copy) {
    line-height:1.62;
    text-wrap:pretty;
  }
  .lwy-art-directed :is(h1,h2,h3,.hero-title,.section-title,.plan-title,.feature-title) {
    text-wrap:balance;
    max-width:100%;
  }
  .lwy-art-directed :is(.pricing-grid,.plans-grid) {
    grid-template-columns:minmax(0,1fr);
  }
}
@media(prefers-reduced-motion:reduce) {
  .lwy-art-directed :is(a,button,[role="button"]) { transition:none!important; }
}



/* Final consolidated audit corrections — 13 Oct 2026 */
/* These selectors match the actual public-site markup (site-nav, plan, quote-row,
   band, hero, site-footer) as well as the signed-in app. Visual-only: no role logic. */

/* Use the supplied wordmark artwork: the dot is already part of the image. */
.lwy-art-directed :is(.site-nav,.auth-bar,.topbar) .brand,
.lwy-art-directed .app .topbar .brand {
  display:inline-block!important;
  width:78px!important;
  height:32px!important;
  min-width:78px!important;
  flex:0 0 78px!important;
  overflow:hidden!important;
  padding:0!important;
  font-size:0!important;
  line-height:0!important;
  letter-spacing:0!important;
  text-indent:-9999px!important;
  color:transparent!important;
  background:transparent url("/brand/luwy-cream.png?v=20261013c") left center / contain no-repeat!important;
}
.lwy-art-directed :is(.site-footer,.footer,.side,.ob-top,.auth-solo) :is(.brand,.app-brand,.auth-mark) {
  display:inline-block!important;
  width:78px!important;
  height:32px!important;
  min-width:78px!important;
  overflow:hidden!important;
  padding:0!important;
  font-size:0!important;
  line-height:0!important;
  letter-spacing:0!important;
  text-indent:-9999px!important;
  color:transparent!important;
  background:transparent url("/brand/luwy-cocoa.png?v=20261013c") left center / contain no-repeat!important;
}
.lwy-art-directed .site-footer .brand::before,
.lwy-art-directed .site-footer .brand::after,
.lwy-art-directed .site-nav .brand::before,
.lwy-art-directed .site-nav .brand::after,
.lwy-art-directed .topbar .brand::before,
.lwy-art-directed .topbar .brand::after,
.lwy-art-directed .side .app-brand::before,
.lwy-art-directed .side .app-brand::after,
.lwy-art-directed .ob-top .brand::before,
.lwy-art-directed .ob-top .brand::after,
.lwy-art-directed .auth-solo .auth-mark::before,
.lwy-art-directed .auth-solo .auth-mark::after {
  content:none!important;
  display:none!important;
}
html[data-theme="dark"] .lwy-art-directed .app .side .app-brand,
html[data-theme="dark"] .lwy-art-directed .app .topbar .brand {
  background-image:url("/brand/luwy-cream.png?v=20261013c")!important;
}
html[data-theme="dark"] .lwy-art-directed .site-footer .brand,
html[data-theme="dark"] .lwy-art-directed .ob-top .brand {
  background-image:url("/brand/luwy-cream.png?v=20261013c")!important;
}

/* Actual pricing markup uses .plan, .price and .pill, not just generic card names. */
.lwy-art-directed .plan {
  min-width:0!important;
  overflow-wrap:normal;
  border:1px solid rgba(47,34,25,.15)!important;
  box-shadow:0 8px 24px rgba(47,34,25,.055)!important;
}
.lwy-art-directed .plan.featured {
  background:#E7F0ED!important;
  border:1px solid #8DB8B0!important;
  border-top:3px solid #3D756D!important;
}
.lwy-art-directed .plan .price,
.lwy-art-directed .plan .price span { color:#604531!important; }
.lwy-art-directed .plan .pill,
.lwy-art-directed .plan .pill.dot {
  display:inline-flex;
  align-items:center;
  width:fit-content;
  max-width:100%;
  padding:.35rem .7rem;
  border-radius:999px!important;
  background:#D7DEEB!important;
  color:#2F2219!important;
  opacity:1!important;
}
.lwy-art-directed .plan .btn.primary,
.lwy-art-directed .plan a.btn.primary,
.lwy-art-directed .plan button.primary {
  background:#604531!important;
  color:#F7F3EA!important;
  border:1px solid #604531!important;
}
.lwy-art-directed .plan .btn.primary:is(:hover,:focus-visible,:active),
.lwy-art-directed .plan a.btn.primary:is(:hover,:focus-visible,:active),
.lwy-art-directed .plan button.primary:is(:hover,:focus-visible,:active) {
  background:#2F2219!important;
  color:#F7F3EA!important;
  border-color:#2F2219!important;
}
.lwy-art-directed .billing-toggle button { color:#2F2219!important; }
.lwy-art-directed .billing-toggle button[aria-pressed="true"] {
  background:#604531!important;
  color:#F7F3EA!important;
}
.lwy-art-directed .billing-toggle button:hover:not([aria-pressed="true"]) {
  background:#D7DEEB!important;
  color:#2F2219!important;
}
.lwy-art-directed .price-note,
.lwy-art-directed .trial-note,
.lwy-art-directed .trial-list { color:#51443A; }
html[data-theme="dark"] .lwy-art-directed .plan {
  background:#3B2C21!important;
  border-color:#6C5948!important;
  color:#F7F3EA!important;
}
html[data-theme="dark"] .lwy-art-directed .plan.featured {
  background:#29423F!important;
  border-color:#5C928A!important;
  color:#F7F3EA!important;
}
html[data-theme="dark"] .lwy-art-directed .plan :is(h1,h2,h3,h4,p,li,small,.plan-for,.plan-description) { color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .plan .price,
html[data-theme="dark"] .lwy-art-directed .plan .price span { color:#FBE39D!important; }
html[data-theme="dark"] .lwy-art-directed .price-note,
html[data-theme="dark"] .lwy-art-directed .trial-note,
html[data-theme="dark"] .lwy-art-directed .trial-list { color:#E6DCD0!important; }

/* Actual Hard Moments markup is .quote-list > .quote-row inside .band. */
.lwy-art-directed .quote-list { display:grid; gap:0; }
.lwy-art-directed .quote-row {
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(20px,4vw,48px);
  align-items:start;
  padding:clamp(22px,3vw,34px) 0;
  border-top:1px solid rgba(47,34,25,.16)!important;
  border-radius:0!important;
  background:transparent!important;
}
.lwy-art-directed .quote-row > * { min-width:0; }
.lwy-art-directed .quote-row .eyebrow {
  display:inline-flex;
  width:fit-content;
  padding:.28rem .55rem;
  margin-bottom:10px;
  border-radius:8px;
  background:#D7DEEB!important;
  color:#2F2219!important;
  opacity:1!important;
}
.lwy-art-directed .quote-row q {
  display:block;
  color:#2F2219!important;
  text-wrap:pretty;
  overflow-wrap:normal;
  line-height:1.4;
}
.lwy-art-directed .quote-row p,
.lwy-art-directed .quote-row li { color:#51443A!important; }
.lwy-art-directed .quote-row b,
.lwy-art-directed .quote-row strong { color:#604531!important; }
.lwy-art-directed .quote-row:nth-child(3n+2) > div:first-child { position:relative; }
.lwy-art-directed .quote-row:nth-child(3n+2) q {
  text-decoration:underline;
  text-decoration-color:#D7DEEB;
  text-decoration-thickness:.16em;
  text-underline-offset:.14em;
}
.lwy-art-directed .quote-row:nth-child(3n) .eyebrow { background:#D7DEEB!important; }
@media(max-width:700px) {
  .lwy-art-directed .quote-row {
    grid-template-columns:minmax(0,1fr);
    gap:12px;
    padding:22px 0;
  }
  .lwy-art-directed .quote-row q { font-size:clamp(1.15rem,5vw,1.45rem); }
}

/* Site-wide readable states for the real public page elements. */
.lwy-art-directed .site-nav nav a {
  color:#F7F3EA!important;
  opacity:1!important;
}
.lwy-art-directed .site-nav nav a:is(:hover,:focus-visible,:active,[aria-current="page"]) {
  background:#FBE39D!important;
  color:#2F2219!important;
  border-radius:999px;
  text-decoration:none!important;
}
.lwy-art-directed .site-nav nav a:is(:hover,:focus-visible,:active,[aria-current="page"]) * { color:#2F2219!important; }
.lwy-art-directed .site-nav .btn.ghost {
  background:#F7F3EA!important;
  color:#2F2219!important;
  border:1px solid #F7F3EA!important;
}
.lwy-art-directed .site-nav .btn.ghost:is(:hover,:focus-visible,:active) {
  background:#D7DEEB!important;
  color:#2F2219!important;
}
.lwy-art-directed .site-nav .btn.primary {
  background:#FBE39D!important;
  color:#2F2219!important;
  border:1px solid #FBE39D!important;
}
.lwy-art-directed .site-nav .btn.primary:is(:hover,:focus-visible,:active) {
  background:#F7F3EA!important;
  color:#2F2219!important;
  border-color:#F7F3EA!important;
}
.lwy-art-directed .site-footer {
  background:#F7F3EA!important;
  color:#2F2219!important;
  border-top:1px solid rgba(47,34,25,.14);
}
.lwy-art-directed .site-footer a {
  color:#604531!important;
  opacity:1!important;
  text-decoration-color:rgba(96,69,49,.45);
  text-underline-offset:3px;
}
.lwy-art-directed .site-footer a:is(:hover,:focus-visible,:active) {
  color:#2F2219!important;
  text-decoration:underline!important;
}
.lwy-art-directed .site-footer :is(p,small,span) { color:#51443A; }
.lwy-art-directed :is(.hero,.band,.prose,.wrap,.narrow) { min-width:0; }
.lwy-art-directed :is(.hero,.band,.prose) :is(p,li,dd,dt) {
  text-wrap:pretty;
  overflow-wrap:normal;
  word-break:normal;
  line-height:1.65;
}
.lwy-art-directed :is(.hero,.band,.prose) :is(h1,h2,h3,h4) {
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}
.lwy-art-directed :is(.hero,.band,.prose) a:not(.btn) {
  text-underline-offset:3px;
  text-decoration-thickness:1px;
}
.lwy-art-directed :is(.hero,.band,.prose) :is(a,button,summary):focus-visible {
  outline:3px solid #3D756D!important;
  outline-offset:3px!important;
}
.lwy-art-directed :is(.hero,.band,.prose) summary {
  cursor:pointer;
  color:#2F2219;
}
.lwy-art-directed :is(.hero,.band,.prose) summary:hover { color:#604531; }
.lwy-art-directed :is(.hero,.band,.prose) :is(button,a,.btn):disabled,
.lwy-art-directed :is(.hero,.band,.prose) :is(button,a,.btn)[aria-disabled="true"] {
  opacity:1!important;
}
html[data-theme="dark"] .lwy-art-directed .quote-row q,
html[data-theme="dark"] .lwy-art-directed .quote-row p,
html[data-theme="dark"] .lwy-art-directed .quote-row li { color:#F7F3EA!important; }
html[data-theme="dark"] .lwy-art-directed .quote-row .eyebrow { color:#2F2219!important; }
html[data-theme="dark"] .lwy-art-directed .site-footer {
  background:#2F2219!important;
  color:#F7F3EA!important;
}
html[data-theme="dark"] .lwy-art-directed .site-footer a,
html[data-theme="dark"] .lwy-art-directed .site-footer :is(p,small,span) { color:#F7F3EA!important; }

/* The public logo files already contain the dot. Hide text and pseudo-elements together. */
.lwy-art-directed .site-nav .brand,
.lwy-art-directed .site-footer .brand {
  background-position:left center!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
}

/* Shared controls: consistent padding and visible back state. */
.lwy-art-directed .site-nav .actions .btn { border-radius:16px!important; padding:12px 22px!important; }
.lwy-art-directed .site-nav .btn.ghost:is(:hover,:focus-visible,:active),
.lwy-art-directed .site-nav .btn.primary:is(:hover,:focus-visible,:active) { background:#F7F3EA!important; color:#2F2219!important; }
.lwy-art-directed .pain-wrong { color:#604531!important; }
.lwy-art-directed .hero .lead > span { display:block; margin-top:2px; }
.lwy-art-directed .quote-list { border:0!important; border-top:0!important; }
.lwy-art-directed .quote-row { border:0!important; border-top:0!important; box-shadow:none!important; background:#FFFEFC!important; }
.lwy-art-directed .quote-row + .quote-row { border-top:0!important; }
.lwy-art-directed .quote-row q { display:block; background:transparent!important; background-image:none!important; box-shadow:none!important; border:0!important; font-weight:700!important; }
.lwy-art-directed .quote-row q::before,.lwy-art-directed .quote-row q::after { background:transparent!important; }
.lwy-art-directed .quote-row .eyebrow,.lwy-art-directed .quote-row:nth-child(3n) .eyebrow,.lwy-art-directed .quote-row:nth-child(3n+2) .eyebrow { background:#D7DEEB!important; color:#2F2219!important; border-color:#D7DEEB!important; }
.lwy-art-directed .quote-row b,.lwy-art-directed .quote-row strong { color:#526C96!important; font-weight:700!important; }
.lwy-art-directed .quote-row .link-arrow,.lwy-art-directed .quote-row a:not(.btn) { color:#604531!important; }
.lwy-art-directed .cta-band .wrap { text-align:center!important; }
.lwy-art-directed .cta-band .cta-row { justify-content:center!important; }
.lwy-art-directed .cta-band .btn,.lwy-art-directed .cta-band .btn.lg { border-radius:16px!important; }
.lwy-art-directed .quote-row p,.lwy-art-directed .quote-row li { color:#51443A!important; }

/* Oct 13 visual correction — no question highlights, consistent controls, centred CTA and cocoa footer. */
.lwy-art-directed .quote-list > .quote-row:nth-child(n) q,
.lwy-art-directed .quote-list > .quote-row:nth-child(n) q * {
 background:transparent!important;background-image:none!important;box-shadow:none!important;
 text-decoration:none!important;text-decoration-color:transparent!important;text-decoration-thickness:0!important;
 border:0!important;font-weight:700!important;
}
.lwy-art-directed .quote-list > .quote-row:nth-child(n) q::before,
.lwy-art-directed .quote-list > .quote-row:nth-child(n) q::after { content:none!important;display:none!important; }
.lwy-art-directed .quote-list > .quote-row:nth-child(n) .eyebrow {
 background:#D7DEEB!important;background-image:none!important;color:#2F2219!important;border:0!important;box-shadow:none!important;
}
.lwy-art-directed .quote-list,.lwy-art-directed .quote-list::before,
.lwy-art-directed .quote-list > .quote-row,.lwy-art-directed .quote-list > .quote-row::before,
.lwy-art-directed .quote-list > .quote-row + .quote-row { border:0!important;border-top:0!important;box-shadow:none!important; }
.lwy-art-directed .quote-list > .quote-row:nth-child(n) {
 background:#FFFEFC!important;border-radius:22px!important;margin-bottom:18px!important;padding:32px 36px!important;
}
.lwy-art-directed .quote-list > .quote-row:nth-child(n) b,
.lwy-art-directed .quote-list > .quote-row:nth-child(n) strong { color:#526C96!important;font-weight:700!important; }
.lwy-art-directed .quote-list > .quote-row:nth-child(n) a:not(.btn),
.lwy-art-directed .quote-list > .quote-row:nth-child(n) .link-arrow { color:#604531!important; }
.lwy-art-directed .site-nav .actions .btn,.lwy-art-directed .site-nav .wrap > .lwy-back {
 min-height:52px!important;border-radius:999px!important;padding:0 26px!important;box-sizing:border-box!important;
}
.lwy-art-directed .site-nav .wrap > .lwy-back,
.lwy-art-directed .site-nav .wrap > .lwy-back:is(:hover,:focus,:focus-visible,:active) {
 background:#F7F3EA!important;color:#2F2219!important;border:1px solid #F7F3EA!important;
 opacity:1!important;visibility:visible!important;text-decoration:none!important;box-shadow:none!important;
}
.lwy-art-directed .site-nav .wrap > .lwy-back svg { stroke:#2F2219!important; }
.lwy-art-directed .site-nav .actions .btn.ghost { background:#F7F3EA!important;color:#2F2219!important;border:1px solid #F7F3EA!important; }
.lwy-art-directed .site-nav .actions .btn.primary { background:#FBE39D!important;color:#2F2219!important;border:1px solid #FBE39D!important; }
.lwy-art-directed .site-nav .actions .btn:is(:hover,:focus-visible,:active) { background:#F7F3EA!important;color:#2F2219!important;border-color:#F7F3EA!important; }
.lwy-art-directed .cta-band .wrap > * { text-align:center!important;margin-left:auto!important;margin-right:auto!important; }
.lwy-art-directed .cta-band .cta-row { justify-content:center!important; }
.lwy-art-directed .cta-band .btn,.lwy-art-directed .cta-band .btn.lg,
.lwy-art-directed .hero .cta-row .btn.primary.lg { border-radius:999px!important; }
.lwy-art-directed .site-footer {
 background:#604531!important;color:#F7F3EA!important;border-top:1px solid rgba(247,243,234,.18)!important;
}
.lwy-art-directed .site-footer a,.lwy-art-directed .site-footer :is(p,small,span) { color:#F7F3EA!important;opacity:1!important; }
.lwy-art-directed .site-footer .brand,.lwy-art-directed .site-footer .brand span,
.lwy-art-directed .site-footer .brand::before,.lwy-art-directed .site-footer .brand::after {
 color:#F7F3EA!important;-webkit-text-fill-color:#F7F3EA!important;background-image:none!important;
 font-size:inherit!important;text-indent:0!important;opacity:1!important;text-shadow:none!important;
}
.lwy-art-directed .site-footer .brand::after { content:none!important;display:none!important; }
html[data-theme="dark"] .lwy-art-directed .site-footer { background:#604531!important; }
@media(max-width:640px) {
 .lwy-art-directed .quote-list > .quote-row:nth-child(n) { padding:22px 20px!important; }
 .lwy-art-directed .site-nav .actions .btn { min-height:46px!important;padding:0 17px!important; }
 .lwy-art-directed .site-nav .wrap > .lwy-back { min-height:46px!important;padding:0 14px!important; }
}



/* Public navigation controls: one consistent, readable pill treatment. */
.lwy-art-directed .site-nav .actions .btn,
.lwy-art-directed .site-nav .wrap > .lwy-back,
.lwy-art-directed .site-nav .wrap > a.btn {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  height:40px!important;
  min-height:40px!important;
  padding:8px 14px!important;
  border-radius:40px!important;
  font-family:"Rethink Sans",sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.lwy-art-directed .site-nav .actions .btn { width:auto!important; }
/* Hero copy is one continuous paragraph, wrapping naturally at the available width. */
.lwy-art-directed.root-home .hero .lead .hero-copy-break { display:none!important; }
.lwy-art-directed.root-home .hero .lead {
  width:100%!important;
  max-width:none!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-wrap:initial!important;
}
/* Footer uses the supplied wordmark image; never add a second decorative dot. */
.lwy-art-directed .site-footer .footer-brand {
  display:inline-flex!important;align-items:center!important;flex:0 0 78px!important;
  width:78px!important;min-width:78px!important;height:32px!important;padding:0!important;
  overflow:hidden!important;background:none!important;color:transparent!important;
  font-size:0!important;line-height:0!important;text-indent:0!important;
}
.lwy-art-directed .site-footer .footer-brand img {
  display:block!important;width:78px!important;height:32px!important;
  object-fit:contain!important;object-position:left center!important;
}
.lwy-art-directed .site-footer .footer-brand::before,
.lwy-art-directed .site-footer .footer-brand::after { content:none!important;display:none!important; }

/* Final CTA alignment and consistent public button sizing/motion. */
.lwy-art-directed.root-home .site-nav .actions .btn,
.lwy-art-directed.pain-points-page .site-nav .actions .btn,
.lwy-art-directed.root-home .site-nav .wrap > .lwy-back,
.lwy-art-directed.pain-points-page .site-nav .wrap > .lwy-back,
.lwy-art-directed .site-nav .actions .btn,
.lwy-art-directed .site-nav .wrap > .lwy-back {
  height:40px!important;
  min-height:40px!important;
  padding:8px 14px!important;
  border-radius:40px!important;
  box-sizing:border-box!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.lwy-art-directed .site-nav .actions .btn,
.lwy-art-directed .site-nav .wrap > .lwy-back,
.lwy-art-directed .m-cta .btn,
.lwy-art-directed .m-cta .m-sign,
.lwy-art-directed .btn.primary,
.lwy-art-directed .btn.ghost {
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease!important;
  transform-origin:center!important;
}
@media (hover:hover) and (pointer:fine) {
  .lwy-art-directed .site-nav .actions .btn:hover,
  .lwy-art-directed .site-nav .wrap > .lwy-back:hover,
  .lwy-art-directed .m-cta .btn:hover,
  .lwy-art-directed .m-cta .m-sign:hover,
  .lwy-art-directed .btn.primary:hover,
  .lwy-art-directed .btn.ghost:hover {
    transform:scale(1.035)!important;
  }
}
@media (prefers-reduced-motion:reduce) {
  .lwy-art-directed .site-nav .actions .btn,
  .lwy-art-directed .site-nav .wrap > .lwy-back,
  .lwy-art-directed .m-cta .btn,
  .lwy-art-directed .m-cta .m-sign,
  .lwy-art-directed .btn.primary,
  .lwy-art-directed .btn.ghost {
    transition:none!important;
  }
}
/* Centre the complete Hard Moments closing CTA, not just its heading. */
.lwy-art-directed.pain-points-page .cta-band .wrap {
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.lwy-art-directed.pain-points-page .cta-band .wrap > h2,
.lwy-art-directed.pain-points-page .cta-band .wrap > p,
.lwy-art-directed.pain-points-page .cta-band .wrap > .cta-row {
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  align-self:center!important;
}
.lwy-art-directed.pain-points-page .cta-band .cta-row {
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
}

/* Oct 14 global UX repair: consistent wordmark, persistent mobile menu,
   compact arrow-only back controls and tighter Hard Moments spacing. */
body.lwy-art-directed:has(.site-nav) { padding-top:68px!important; }
body.lwy-art-directed .site-nav {
  position:fixed!important; top:0!important; left:0!important; right:0!important;
  width:100%!important; z-index:1000!important; transform:none!important;
}
body.lwy-art-directed .site-nav .brand {
  display:block!important; flex:0 0 92px!important; width:92px!important; min-width:92px!important;
  height:34px!important; min-height:34px!important; padding:0!important; margin:0!important;
  overflow:hidden!important; background:transparent url("/brand/luwy-cream.png?v=20261014a") left center / contain no-repeat!important;
  color:transparent!important; font-size:0!important; line-height:0!important; text-indent:-9999px!important; letter-spacing:0!important;
}
body.lwy-art-directed .site-nav .brand span,
body.lwy-art-directed .site-nav .brand::before,
body.lwy-art-directed .site-nav .brand::after { display:none!important; content:none!important; }
body.lwy-art-directed .site-footer .brand {
  display:block!important; flex:0 0 78px!important; width:78px!important; min-width:78px!important;
  height:32px!important; min-height:32px!important; padding:0!important; margin:0!important; overflow:hidden!important;
  background:transparent url("/brand/luwy-cream.png?v=20261014a") left center / contain no-repeat!important;
  color:transparent!important; font-size:0!important; line-height:0!important; text-indent:-9999px!important; letter-spacing:0!important;
}
body.lwy-art-directed .site-footer .brand span,
body.lwy-art-directed .site-footer .brand::before,
body.lwy-art-directed .site-footer .brand::after { display:none!important; content:none!important; }
body.lwy-art-directed .auth-solo .auth-mark {
  display:block!important; width:124px!important; height:56px!important; min-width:124px!important; min-height:56px!important;
  padding:0!important; margin:0 0 2px!important; border:0!important; border-radius:0!important;
  background:transparent url("/brand/luwy-cocoa.png?v=20261014a") left center / contain no-repeat!important;
  color:transparent!important; font-size:0!important; line-height:0!important; text-indent:-9999px!important; overflow:hidden!important;
}
body.lwy-art-directed .auth-solo .auth-mark img,
body.lwy-art-directed .auth-solo .auth-mark span,
body.lwy-art-directed .auth-solo .auth-mark::before,
body.lwy-art-directed .auth-solo .auth-mark::after { display:none!important; content:none!important; }
body.lwy-art-directed .lwy-back,
body.lwy-art-directed .site-nav .lwy-back {
  display:inline-flex!important; align-items:center!important; justify-content:center!important;
  flex:0 0 32px!important; width:32px!important; min-width:32px!important; height:36px!important; min-height:36px!important;
  padding:0!important; margin:0 6px 0 0!important; border:0!important; border-radius:0!important;
  background:transparent!important; box-shadow:none!important; color:#F7F3EA!important; font-size:0!important; line-height:0!important;
}
body.lwy-art-directed .lwy-back span { display:none!important; }
body.lwy-art-directed .lwy-back svg { width:22px!important; height:22px!important; stroke:#F7F3EA!important; stroke-width:2!important; }
body.lwy-art-directed .lwy-back:hover,
body.lwy-art-directed .lwy-back:focus-visible,
body.lwy-art-directed .lwy-back:active { background:transparent!important; color:#F7F3EA!important; opacity:1!important; }
body.lwy-art-directed.pain-points-page .hero { padding-bottom:28px!important; }
@media(max-width:900px) {
  body.lwy-art-directed:has(.site-nav) { padding-top:66px!important; }
  body.lwy-art-directed .site-nav,
  body.lwy-art-directed .site-nav.open {
    position:fixed!important; top:0!important; left:0!important; right:0!important; bottom:auto!important;
    inset-inline:0!important; height:auto!important; max-height:100dvh!important; overflow:visible!important;
    background:#2F2219!important; z-index:10000!important;
  }
  body.lwy-art-directed .site-nav .wrap,
  body.lwy-art-directed .site-nav.open .wrap {
    display:flex!important; flex-direction:row!important; flex-wrap:wrap!important; align-items:center!important;
    justify-content:space-between!important; gap:10px!important; width:100%!important; height:auto!important;
    min-height:66px!important; padding:10px 16px!important; background:#2F2219!important;
  }
  body.lwy-art-directed .site-nav .nav-toggle {
    display:inline-grid!important; order:2!important; flex:0 0 44px!important; width:44px!important; min-width:44px!important;
    height:44px!important; margin-left:auto!important; place-items:center!important; padding:0!important; position:relative!important;
    background:#604531!important; border:1px solid rgba(247,243,234,.3)!important; border-radius:50%!important;
    color:#F7F3EA!important; transform:none!important; z-index:2!important; touch-action:manipulation!important;
  }
  body.lwy-art-directed .site-nav nav,
  body.lwy-art-directed .site-nav .actions {
    display:none!important; position:static!important; width:100%!important; max-width:none!important;
    height:auto!important; max-height:none!important; opacity:1!important; visibility:visible!important;
    transform:none!important; pointer-events:auto!important; background:transparent!important;
  }
  body.lwy-art-directed .site-nav.open nav {
    order:3!important; display:flex!important; flex:1 0 100%!important; flex-direction:column!important;
    align-items:stretch!important; gap:2px!important; padding:8px 0 4px!important; margin:0!important;
  }
  body.lwy-art-directed .site-nav.open nav a {
    display:flex!important; align-items:center!important; width:100%!important; min-height:46px!important;
    padding:10px 12px!important; border:0!important; border-radius:10px!important; background:transparent!important;
    color:#F7F3EA!important; font:600 16px/1.25 var(--sans)!important;
  }
  body.lwy-art-directed .site-nav.open nav a:hover,
  body.lwy-art-directed .site-nav.open nav a:focus-visible,
  body.lwy-art-directed .site-nav.open nav a[aria-current="page"] { background:#604531!important; color:#FBE39D!important; }
  body.lwy-art-directed .site-nav.open .actions {
    order:4!important; display:flex!important; flex:1 0 100%!important; flex-direction:column!important;
    align-items:stretch!important; gap:8px!important; padding:6px 0 8px!important; margin:0!important;
  }
  body.lwy-art-directed .site-nav.open .actions a {
    display:inline-flex!important; align-items:center!important; justify-content:center!important; width:100%!important;
    min-height:46px!important; padding:10px 14px!important;
  }
  body.lwy-art-directed .site-nav .brand { flex-basis:82px!important; width:82px!important; min-width:82px!important; height:30px!important; }
  body.lwy-art-directed.pain-points-page .hero { padding-bottom:24px!important; }
}


/* Oct 14 mobile/tablet refinement: footer links form a compact, predictable grid.
   The arrow control is reset after every shared/page stylesheet so it cannot inherit
   pill-button backgrounds or padding. */
@media (max-width: 900px) {
  body.lwy-art-directed .site-footer {
    padding: 28px 0 calc(30px + env(safe-area-inset-bottom))!important;
  }
  body.lwy-art-directed .site-footer .wrap {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:start!important;
    justify-content:stretch!important;
    column-gap:18px!important;
    row-gap:14px!important;
  }
  body.lwy-art-directed .site-footer .wrap > .brand {
    grid-column:1 / -1!important;
    margin:0 0 4px!important;
  }
  body.lwy-art-directed .site-footer .wrap > .spacer { display:none!important; }
  body.lwy-art-directed .site-footer .wrap > a:not(.brand) {
    display:block!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
  body.lwy-art-directed .site-footer .wrap > a[href^="mailto:"] {
    grid-column:1 / -1!important;
    margin-top:3px!important;
  }
  body.lwy-art-directed .site-footer .wrap > span:last-child {
    grid-column:1 / -1!important;
    margin-top:2px!important;
  }
}
@media (max-width: 520px) {
  body.lwy-art-directed .site-footer { font-size:16px!important; }
  body.lwy-art-directed .site-footer .wrap { column-gap:14px!important; row-gap:12px!important; }
}

/* Universal back-arrow reset. Keep it visible on the espresso header and never render a pill. */
body.lwy-art-directed .lwy-back,
body.lwy-art-directed .site-nav .wrap > a.lwy-back,
body.lwy-art-directed .auth-bar .lwy-back {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 32px!important;
  width:32px!important;
  min-width:32px!important;
  max-width:32px!important;
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  margin:0 8px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline-offset:3px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#F7F3EA!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:0!important;
  text-decoration:none!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:visible!important;
  cursor:pointer!important;
}
body.lwy-art-directed .lwy-back::before,
body.lwy-art-directed .lwy-back::after { display:none!important; content:none!important; }
body.lwy-art-directed .lwy-back span { display:none!important; }
body.lwy-art-directed .lwy-back svg {
  display:block!important;
  flex:none!important;
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  min-height:24px!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  fill:none!important;
  stroke:#F7F3EA!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  opacity:1!important;
  visibility:visible!important;
}
body.lwy-art-directed .lwy-back:hover,
body.lwy-art-directed .lwy-back:focus,
body.lwy-art-directed .lwy-back:active {
  background:transparent!important;
  background-color:transparent!important;
  color:#F7F3EA!important;
  box-shadow:none!important;
}
@media(max-width:520px) {
  body.lwy-art-directed .lwy-back,
  body.lwy-art-directed .site-nav .wrap > a.lwy-back,
  body.lwy-art-directed .auth-bar .lwy-back {
    width:32px!important; min-width:32px!important; max-width:32px!important;
    height:36px!important; min-height:36px!important; padding:0!important;
    margin-right:4px!important;
  }
}

/* Oct 14 shared shell. Navigation animation is scoped to main below to prevent snapshot layers from overlapping. */
@view-transition { navigation:auto; }
html{scroll-behavior:smooth}
body.lwy-art-directed .site-nav,.root-home.lwy-art-directed .site-nav{box-sizing:border-box!important;background:#2F2219!important;color:#F7F3EA!important;border-bottom:1px solid rgba(247,243,234,.16)!important;box-shadow:none!important}
body.lwy-art-directed .site-nav .wrap,.root-home.lwy-art-directed .site-nav .wrap{box-sizing:border-box!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:clamp(12px,1.5vw,22px)!important;width:100%!important;max-width:1280px!important;min-height:76px!important;height:76px!important;margin:0 auto!important;padding:14px clamp(20px,3.2vw,44px)!important;background:#2F2219!important}
body.lwy-art-directed .site-nav .brand,.root-home.lwy-art-directed .site-nav .brand{display:block!important;flex:0 0 92px!important;width:92px!important;min-width:92px!important;height:34px!important;min-height:34px!important;padding:0!important;margin:0!important;background:transparent url("/brand/luwy-cream.png?v=20261014a") left center/contain no-repeat!important;color:transparent!important;font-size:0!important;line-height:0!important;text-indent:-9999px!important;letter-spacing:0!important;overflow:hidden!important}
body.lwy-art-directed .site-nav .brand *,.root-home.lwy-art-directed .site-nav .brand *{display:none!important}
body.lwy-art-directed .site-nav nav,.root-home.lwy-art-directed .site-nav nav{display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:center!important;gap:clamp(12px,1.6vw,24px)!important;min-width:0!important;height:auto!important;margin:0!important;padding:0!important}
body.lwy-art-directed .site-nav nav a,.root-home.lwy-art-directed .site-nav nav a{display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;min-height:40px!important;padding:8px 0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:rgba(247,243,234,.9)!important;font:600 14px/1.2 "Rethink Sans",system-ui,sans-serif!important;text-decoration:none!important;box-shadow:none!important}
body.lwy-art-directed .site-nav nav a:hover,body.lwy-art-directed .site-nav nav a[aria-current="page"],.root-home.lwy-art-directed .site-nav nav a:hover,.root-home.lwy-art-directed .site-nav nav a[aria-current="page"]{color:#FBE39D!important}
body.lwy-art-directed .site-nav .actions,.root-home.lwy-art-directed .site-nav .actions{display:flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;margin:0!important;padding:0!important}
body.lwy-art-directed .site-nav .actions .btn,.root-home.lwy-art-directed .site-nav .actions .btn{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;height:42px!important;padding:0 16px!important;margin:0!important;border-radius:999px!important;font:700 13px/1 "Rethink Sans",system-ui,sans-serif!important;white-space:nowrap!important}
body.lwy-art-directed .site-nav .wrap>.lwy-back,body.lwy-art-directed .site-nav .wrap>.lwy-back svg,body.lwy-art-directed .site-nav .wrap>.lwy-back svg path{color:#F7F3EA!important;stroke:#F7F3EA!important;background:transparent!important;background-color:transparent!important;background-image:none!important;box-shadow:none!important;opacity:1!important;visibility:visible!important}
body.lwy-art-directed .site-nav .wrap>.lwy-back svg{width:24px!important;height:24px!important}
body.lwy-art-directed .site-nav .wrap:has(>.lwy-back) .brand{margin-left:24px!important}
@media(max-width:900px){
body.lwy-art-directed .site-nav,.root-home.lwy-art-directed .site-nav,body.lwy-art-directed .site-nav.open{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:auto!important;height:auto!important;max-height:100dvh!important;overflow:visible!important;z-index:10000!important}
body.lwy-art-directed .site-nav .wrap,.root-home.lwy-art-directed .site-nav .wrap,body.lwy-art-directed .site-nav.open .wrap{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;max-width:none!important;min-height:66px!important;height:auto!important;margin:0!important;padding:10px 16px!important}
body.lwy-art-directed .site-nav .brand,.root-home.lwy-art-directed .site-nav .brand{flex:0 0 82px!important;width:82px!important;min-width:82px!important;height:30px!important;min-height:30px!important}
body.lwy-art-directed .site-nav nav,body.lwy-art-directed .site-nav .actions,.root-home.lwy-art-directed .site-nav nav,.root-home.lwy-art-directed .site-nav .actions{display:none!important}
body.lwy-art-directed .site-nav.open nav,.root-home.lwy-art-directed .site-nav .wrap.menu-open nav{display:flex!important;order:3!important;flex:1 0 100%!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:2px!important;margin:0!important;padding:8px 0 4px!important}
body.lwy-art-directed .site-nav.open nav a,.root-home.lwy-art-directed .site-nav .wrap.menu-open nav a{display:flex!important;justify-content:flex-start!important;width:100%!important;min-height:44px!important;padding:10px 12px!important;font-size:15px!important}
body.lwy-art-directed .site-nav.open .actions,.root-home.lwy-art-directed .site-nav .wrap.menu-open .actions{display:flex!important;order:4!important;flex:1 0 100%!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;padding:6px 0 8px!important}
body.lwy-art-directed .site-nav.open .actions .btn,.root-home.lwy-art-directed .site-nav .wrap.menu-open .actions .btn{width:100%!important;height:44px!important;min-height:44px!important}
body.lwy-art-directed .site-nav .wrap:has(>.lwy-back) .brand{margin-left:0!important}
body.lwy-art-directed .site-footer{padding:24px 0 calc(24px + env(safe-area-inset-bottom))!important}
body.lwy-art-directed .site-footer .wrap{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:10px!important;row-gap:4px!important;align-items:start!important;justify-content:stretch!important}
body.lwy-art-directed .site-footer .wrap>.brand{grid-column:1/-1!important;margin:0 0 2px!important}
body.lwy-art-directed .site-footer .wrap>.spacer{display:none!important}
body.lwy-art-directed .site-footer .wrap>a:not(.brand){display:block!important;min-width:0!important;margin:0!important;padding:1px 0!important;line-height:1.2!important}
body.lwy-art-directed .site-footer .wrap>a[href^="mailto:"]{grid-column:1/-1!important;margin-top:4px!important}
body.lwy-art-directed .site-footer .wrap>span:last-child{grid-column:1/-1!important;margin-top:4px!important}
}


/* Desktop nav hover/current states: preserve readable labels and use one consistent pill shape. */
@media(min-width:901px){
 body.lwy-art-directed .site-nav nav a,
 .root-home.lwy-art-directed .site-nav nav a{
   box-sizing:border-box!important;
   border-radius:999px!important;
   padding:9px 13px!important;
   min-height:40px!important;
   background:transparent!important;
   color:#F7F3EA!important;
   transition:background-color .15s ease,color .15s ease!important;
 }
 body.lwy-art-directed .site-nav nav a:hover,
 body.lwy-art-directed .site-nav nav a:focus-visible,
 body.lwy-art-directed .site-nav nav a[aria-current="page"],
 .root-home.lwy-art-directed .site-nav nav a:hover,
 .root-home.lwy-art-directed .site-nav nav a:focus-visible,
 .root-home.lwy-art-directed .site-nav nav a[aria-current="page"]{
   background:#FBE39D!important;
   color:#2F2219!important;
   border-radius:999px!important;
   box-shadow:none!important;
   text-decoration:none!important;
 }
 body.lwy-art-directed .site-nav nav a::before,
 body.lwy-art-directed .site-nav nav a::after,
 .root-home.lwy-art-directed .site-nav nav a::before,
 .root-home.lwy-art-directed .site-nav nav a::after{content:none!important;display:none!important}
}


/* Oct 14 mobile headline sizing + true seafoam retry section */
@media(max-width:760px) {
  body.lwy-art-directed .problem-title,
  body.lwy-art-directed .problem-title span,
  body.lwy-art-directed .problem-title .problem-arrives {
    font-size:clamp(2.05rem, 7.2vw, 3.15rem)!important;
    line-height:1.03!important;
    letter-spacing:-.065em!important;
    font-weight:800!important;
    max-width:100%!important;
    width:auto!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    text-wrap:pretty!important;
  }
  body.lwy-art-directed .problem-title span {
    display:block!important;
  }
}
body.lwy-art-directed #simulate {
  background:#D9E9DF!important;
  background-color:#D9E9DF!important;
  background-image:none!important;
  color:#2F2219!important;
}
body.lwy-art-directed #simulate::before,
body.lwy-art-directed #simulate::after {
  background:#D9E9DF!important;
  background-color:#D9E9DF!important;
  background-image:none!important;
}
body.lwy-art-directed #simulate .wrap,
body.lwy-art-directed #simulate .retry-title,
body.lwy-art-directed #simulate .lead,
body.lwy-art-directed #simulate p,
body.lwy-art-directed #simulate .eyebrow {
  color:#2F2219!important;
}
body.lwy-art-directed #simulate .sim-demo .preview,
body.lwy-art-directed #simulate .sim-demo .preview-head,
body.lwy-art-directed #simulate .sim-demo .bubble,
body.lwy-art-directed #simulate .sim-demo .turn-flag {
  /* Keep the demo readable against the new seafoam surface. */
  box-shadow:none;
}


/* Shared navigation lock: identical geometry on Home and every public marketing page.
   Explicitly restore link text because legacy homepage rules were shrinking active labels
   into blank yellow blocks. */
@media (min-width:901px) {
  body.lwy-art-directed .site-nav,
  body.root-home.lwy-art-directed .site-nav {
    height:76px!important; min-height:76px!important; background:#2F2219!important;
  }
  body.lwy-art-directed .site-nav .wrap,
  body.root-home.lwy-art-directed .site-nav .wrap {
    box-sizing:border-box!important; width:100%!important; max-width:1280px!important;
    min-height:76px!important; height:76px!important; margin:0 auto!important;
    padding:14px clamp(20px,3.2vw,44px)!important; display:flex!important;
    flex-wrap:nowrap!important; align-items:center!important; justify-content:space-between!important;
    gap:clamp(12px,1.5vw,22px)!important; position:relative!important;
  }
  body.lwy-art-directed .site-nav .brand,
  body.root-home.lwy-art-directed .site-nav .brand {
    display:block!important; flex:0 0 92px!important; width:92px!important; min-width:92px!important;
    height:34px!important; min-height:34px!important; margin:0!important; padding:0!important;
    background:transparent url("/brand/luwy-cream.png?v=20261014a") left center/contain no-repeat!important;
    color:transparent!important; font-size:0!important; line-height:0!important; overflow:hidden!important;
  }
  body.lwy-art-directed .site-nav nav,
  body.root-home.lwy-art-directed .site-nav nav {
    display:flex!important; flex:1 1 auto!important; align-items:center!important;
    justify-content:center!important; gap:clamp(8px,1.15vw,18px)!important;
    min-width:0!important; margin:0!important; padding:0!important;
  }
  body.lwy-art-directed .site-nav nav a,
  body.root-home.lwy-art-directed .site-nav nav a {
    display:inline-flex!important; align-items:center!important; justify-content:center!important;
    flex:0 0 auto!important; width:auto!important; min-width:max-content!important; max-width:none!important;
    min-height:40px!important; height:40px!important; box-sizing:border-box!important;
    padding:9px 13px!important; margin:0!important; border:0!important; border-radius:999px!important;
    background:transparent!important; color:#F7F3EA!important; opacity:1!important; visibility:visible!important;
    font:600 14px/1.2 "Rethink Sans",system-ui,sans-serif!important; letter-spacing:normal!important;
    text-indent:0!important; white-space:nowrap!important; text-decoration:none!important;
    box-shadow:none!important; overflow:visible!important;
  }
  body.lwy-art-directed .site-nav nav a:hover,
  body.lwy-art-directed .site-nav nav a:focus-visible,
  body.lwy-art-directed .site-nav nav a[aria-current="page"],
  body.root-home.lwy-art-directed .site-nav nav a:hover,
  body.root-home.lwy-art-directed .site-nav nav a:focus-visible,
  body.root-home.lwy-art-directed .site-nav nav a[aria-current="page"] {
    background:#FBE39D!important; color:#2F2219!important; border-radius:999px!important;
    opacity:1!important; visibility:visible!important; box-shadow:none!important;
  }
  body.lwy-art-directed .site-nav nav a::before,
  body.lwy-art-directed .site-nav nav a::after,
  body.root-home.lwy-art-directed .site-nav nav a::before,
  body.root-home.lwy-art-directed .site-nav nav a::after { content:none!important; display:none!important; }
  body.lwy-art-directed .site-nav .actions,
  body.root-home.lwy-art-directed .site-nav .actions {
    display:flex!important; flex:0 0 auto!important; align-items:center!important;
    justify-content:flex-end!important; gap:10px!important; margin:0!important; padding:0!important;
  }
  body.lwy-art-directed .site-nav .actions .btn,
  body.root-home.lwy-art-directed .site-nav .actions .btn {
    display:inline-flex!important; align-items:center!important; justify-content:center!important;
    box-sizing:border-box!important; min-height:42px!important; height:42px!important;
    padding:0 16px!important; margin:0!important; border-radius:999px!important;
    font:700 13px/1 "Rethink Sans",system-ui,sans-serif!important; white-space:nowrap!important;
  }
  body.lwy-art-directed .site-nav .wrap:has(>.lwy-back) .brand,
  body.root-home.lwy-art-directed .site-nav .wrap:has(>.lwy-back) .brand { margin-left:0!important; }
}


/* Next.js homepage uses a wrapper div rather than body.lwy-art-directed; match the shared shell explicitly. */
@media(min-width:901px){
 .root-home.lwy-art-directed .site-nav{height:76px!important;min-height:76px!important;background:#2F2219!important;color:#F7F3EA!important}
 .root-home.lwy-art-directed .site-nav .wrap{box-sizing:border-box!important;width:100%!important;max-width:1280px!important;min-height:76px!important;height:76px!important;margin:0 auto!important;padding:14px clamp(20px,3.2vw,44px)!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:clamp(12px,1.5vw,22px)!important;position:relative!important}
 .root-home.lwy-art-directed .site-nav .brand{display:block!important;flex:0 0 92px!important;width:92px!important;min-width:92px!important;height:34px!important;min-height:34px!important;margin:0!important;padding:0!important;background:transparent url("/brand/luwy-cream.png?v=20261014a") left center/contain no-repeat!important;color:transparent!important;font-size:0!important;line-height:0!important;overflow:hidden!important}
 .root-home.lwy-art-directed .site-nav nav{display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:center!important;gap:clamp(8px,1.15vw,18px)!important;min-width:0!important;margin:0!important;padding:0!important}
 .root-home.lwy-art-directed .site-nav nav a{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:auto!important;min-width:max-content!important;max-width:none!important;min-height:40px!important;height:40px!important;box-sizing:border-box!important;padding:9px 13px!important;margin:0!important;border:0!important;border-radius:999px!important;background:transparent!important;color:#F7F3EA!important;opacity:1!important;visibility:visible!important;font:600 14px/1.2 "Rethink Sans",system-ui,sans-serif!important;letter-spacing:normal!important;text-indent:0!important;white-space:nowrap!important;text-decoration:none!important;box-shadow:none!important;overflow:visible!important}
 .root-home.lwy-art-directed .site-nav nav a:hover,.root-home.lwy-art-directed .site-nav nav a:focus-visible,.root-home.lwy-art-directed .site-nav nav a[aria-current="page"]{background:#FBE39D!important;color:#2F2219!important;border-radius:999px!important;opacity:1!important;visibility:visible!important;box-shadow:none!important}
 .root-home.lwy-art-directed .site-nav nav a::before,.root-home.lwy-art-directed .site-nav nav a::after{content:none!important;display:none!important}
 .root-home.lwy-art-directed .site-nav .actions{display:flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;margin:0!important;padding:0!important}
 .root-home.lwy-art-directed .site-nav .actions .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;min-height:42px!important;height:42px!important;padding:0 16px!important;margin:0!important;border-radius:999px!important;font:700 13px/1 "Rethink Sans",system-ui,sans-serif!important;white-space:nowrap!important}
}


/* Final shared mobile/tablet footer rhythm: clear link spacing, compact contact/copyright pair. */
@media (max-width:900px){
 body.lwy-art-directed .site-footer{padding:30px 0 calc(30px + env(safe-area-inset-bottom))!important}
 body.lwy-art-directed .site-footer .wrap{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:start!important;justify-content:stretch!important;
  column-gap:22px!important;row-gap:12px!important;
 }
 body.lwy-art-directed .site-footer .wrap>.brand{grid-column:1/-1!important;margin:0 0 7px!important}
 body.lwy-art-directed .site-footer .wrap>.spacer{display:none!important}
 body.lwy-art-directed .site-footer .wrap>a:not(.brand):not([href^="mailto:"]){
  display:block!important;min-width:0!important;margin:0!important;padding:0!important;
  line-height:1.35!important;overflow-wrap:anywhere!important
 }
 body.lwy-art-directed .site-footer .wrap>.footer-links{
  grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:22px!important;row-gap:12px!important;margin:0!important;padding:0!important
 }
 body.lwy-art-directed .site-footer .wrap>.footer-links a{
  display:block!important;margin:0!important;padding:0!important;line-height:1.35!important;min-width:0!important
 }
 body.lwy-art-directed .site-footer .wrap>a[href^="mailto:"],
 body.lwy-art-directed .site-footer .wrap>.footer-support{
  grid-column:1/-1!important;margin-top:9px!important;margin-bottom:0!important;padding:0!important;line-height:1.35!important
 }
 body.lwy-art-directed .site-footer .wrap>span:last-child,
 body.lwy-art-directed .site-footer .wrap>.footer-copy{
  grid-column:1/-1!important;margin-top:-8px!important;padding:0!important;line-height:1.35!important
 }
}
@media(max-width:520px){
 body.lwy-art-directed .site-footer{font-size:16px!important}
 body.lwy-art-directed .site-footer .wrap{column-gap:16px!important;row-gap:12px!important}
 body.lwy-art-directed .site-footer .wrap>.footer-links{column-gap:16px!important;row-gap:12px!important}
}

/* Home headline: both lines share one type size and weight on mobile/tablet. */
@media(max-width:760px){
 body.root-home.lwy-art-directed .problem-title{
  font-size:clamp(2.35rem,8.2vw,3.15rem)!important;
  line-height:1.02!important;letter-spacing:-.065em!important;font-weight:800!important
 }
 body.root-home.lwy-art-directed .problem-title>span,
 body.root-home.lwy-art-directed .problem-title>.problem-arrives{
  display:block!important;font-size:inherit!important;line-height:inherit!important;
  letter-spacing:inherit!important;font-weight:inherit!important
 }
}


/* Instant page navigation: no captured snapshots, fades, slides, or text-layer overlap. */
@view-transition { navigation: none !important; }
::view-transition-old(root),
::view-transition-new(root),
::view-transition-old(luwy-page-content),
::view-transition-new(luwy-page-content),
::view-transition-old(luwy-shared-header),
::view-transition-new(luwy-shared-header) {
  animation: none !important;
}


/* Enforce identical mobile typography for both lines of the problem headline. */
.problem-title,
.problem-title > span,
.problem-title > .problem-arrives {
  font-size: inherit;
}
@media (max-width: 760px) {
  .problem-title {
    font-size: clamp(2.35rem, 8.2vw, 3.15rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.065em !important;
    font-weight: 800 !important;
  }
  .problem-title > span,
  .problem-title > .problem-arrives {
    display: block !important;
    font-size: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    font-weight: inherit !important;
  }
}


/* Guides: match the shared Luwy shell, use only brand type, and give practical content an editorial layout. */
body.luwy-guides-page {
  font-family: "Inter", system-ui, sans-serif !important;
  color: #2F2219;
}
body.luwy-guides-page :is(h1,h2,h3,h4,.eyebrow,.item b,.answer b) {
  font-family: "Archivo", system-ui, sans-serif !important;
}
body.luwy-guides-page .hero {
  padding-block: clamp(52px, 7vw, 92px) !important;
}
body.luwy-guides-page .hero .wrap,
body.luwy-guides-page main .prose {
  width: min(100% - 48px, 900px) !important;
  max-width: 900px !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}
body.luwy-guides-page .hero h1,
body.luwy-guides-page .prose h1 {
  max-width: 16ch !important;
  font-size: clamp(2.5rem, 5.5vw, 4.6rem) !important;
  line-height: .99 !important;
  letter-spacing: -.045em !important;
  font-weight: 800 !important;
  text-wrap: balance;
}
body.luwy-guides-page .lead {
  max-width: 58ch;
  font-size: clamp(1.05rem, 1.5vw, 1.25rem) !important;
  line-height: 1.65 !important;
  color: #6D5D51 !important;
}
body.luwy-guides-page .rows {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 14px !important;
}
body.luwy-guides-page .item {
  display: flex !important;
  min-height: 170px;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  padding: 24px !important;
  border: 1px solid #DED3C6 !important;
  border-radius: 18px !important;
  background: #FBF8F2 !important;
  color: #2F2219 !important;
  text-decoration: none !important;
  transition: border-color .16s ease, transform .16s ease, background .16s ease;
}
body.luwy-guides-page .item:hover {
  border-color: #8B654A !important;
  background: #FFFDF8 !important;
  transform: translateY(-2px);
}
body.luwy-guides-page .item b {
  display: block;
  margin-bottom: 10px;
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: 700;
}
body.luwy-guides-page .item small {
  display: block;
  color: #6D5D51 !important;
  font-size: .96rem;
  line-height: 1.55;
}
body.luwy-guides-page .item .go {
  flex: 0 0 auto;
  color: #6B4B35 !important;
  font-weight: 700;
}
body.luwy-guides-page .prose {
  padding-block: clamp(40px, 6vw, 76px) !important;
  font-size: 1.05rem;
  line-height: 1.75;
}
body.luwy-guides-page .prose h2 {
  margin-top: 38px !important;
  margin-bottom: 12px !important;
  font-size: clamp(1.5rem, 3vw, 2rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em;
}
body.luwy-guides-page .prose h3 {
  margin-top: 24px !important;
  font-size: 1.15rem !important;
  line-height: 1.25 !important;
}
body.luwy-guides-page .answer {
  margin-block: 18px !important;
  padding: 22px 24px !important;
  border: 1px solid #E2D1A5 !important;
  border-left: 4px solid #B78C4E !important;
  border-radius: 12px !important;
  background: #F8EAC4 !important;
  color: #2F2219 !important;
  line-height: 1.65;
}
body.luwy-guides-page .answer b {
  display: block;
  margin-bottom: 6px;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
body.luwy-guides-page .prose :is(ul,ol) {
  padding-left: 24px;
}
body.luwy-guides-page .prose li {
  padding-left: 4px;
  margin-block: 7px;
}
body.luwy-guides-page .cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid #DED3C6;
}
body.luwy-guides-page .updated {
  color: #7D6B5E;
  font-size: .85rem;
}
body.luwy-guides-page .site-footer {
  background: #2F2219 !important;
}
@media (max-width: 680px) {
  body.luwy-guides-page .hero .wrap,
  body.luwy-guides-page main .prose {
    width: calc(100% - 40px) !important;
  }
  body.luwy-guides-page .rows {
    grid-template-columns: minmax(0,1fr) !important;
  }
  body.luwy-guides-page .item {
    min-height: auto;
    padding: 20px !important;
  }
  body.luwy-guides-page .hero h1,
  body.luwy-guides-page .prose h1 {
    font-size: clamp(2.35rem, 11vw, 3.5rem) !important;
  }
  body.luwy-guides-page .answer {
    padding: 18px !important;
  }
}


/* Guides refinement: brand-only type, restrained back link, clean card grid and intentional line breaks. */
body.luwy-guides-page {
  font-family: "Rethink Sans", sans-serif !important;
}
body.luwy-guides-page :is(p,li,small,.lead,.updated,.answer) {
  font-family: "Rethink Sans", sans-serif !important;
}
body.luwy-guides-page :is(h1,h2,h3,h4,.eyebrow,.item b,.answer b,.guide-back) {
  font-family: "Archivo", sans-serif !important;
}
body.luwy-guides-page .guide-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 28px;
  padding: 10px 0;
  border: 0;
  background: transparent;
  color: #F7F3EA !important;
  text-decoration: none;
  font-size: .92rem;
  font-weight: 600;
  letter-spacing: .01em;
}
body.luwy-guides-page .hero .guide-back {
  color: #6B4B35 !important;
}
body.luwy-guides-page .guide-back:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}
body.luwy-guides-page .rows {
  border: 0 !important;
  border-top: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.luwy-guides-page .rows::before,
body.luwy-guides-page .rows::after {
  content: none !important;
  display: none !important;
}
body.luwy-guides-page .item {
  border: 1px solid #DED3C6 !important;
  border-top: 1px solid #DED3C6 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
body.luwy-guides-page .item .t {
  flex: 1 1 auto;
  min-width: 0;
}
body.luwy-guides-page .item b {
  max-width: 100%;
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
body.luwy-guides-page .keep-together {
  white-space: nowrap;
}
body.luwy-guides-page .guide-keyword {
  color: #84592B !important;
  font-family: "Archivo", sans-serif !important;
  font-weight: 800;
}
body.luwy-guides-page .prose h1 em,
body.luwy-guides-page .hero h1 em,
body.luwy-guides-page .prose .editorial-accent {
  font-family: "Playfair Display", serif !important;
  font-style: italic !important;
  font-weight: 500 !important;
}
body.luwy-guides-page .item .go {
  padding-top: 3px;
  white-space: nowrap;
}
@media (max-width: 680px) {
  body.luwy-guides-page .guide-back {
    margin-bottom: 22px;
  }
  body.luwy-guides-page .keep-together {
    white-space: normal;
    text-wrap: nowrap;
  }
  body.luwy-guides-page .item {
    gap: 14px;
  }
  body.luwy-guides-page .item b {
    font-size: 1.12rem;
    line-height: 1.22;
  }
}


/* Guides editorial art direction v2 — header back control and a distinct visual voice per guide. */
body.luwy-guides-page {
  --guide-accent: #B78C6E;
  --guide-accent-ink: #613627;
  --guide-wash: #F5EADD;
  --guide-line: #DED0C1;
}
body.guide-interview { --guide-accent:#4E8278; --guide-accent-ink:#315E56; --guide-wash:#E7F0EC; --guide-line:#C6DCD5; }
body.guide-raise { --guide-accent:#C58B3A; --guide-accent-ink:#704619; --guide-wash:#FAEBCB; --guide-line:#E9D5AA; }
body.guide-disagree { --guide-accent:#815A78; --guide-accent-ink:#603F59; --guide-wash:#F1E7EF; --guide-line:#DCC9D8; }
body.guide-fillers { --guide-accent:#7C8B5C; --guide-accent-ink:#4C5B35; --guide-wash:#EDF0E3; --guide-line:#D2D9C2; }

/* Compact back symbol belongs in the shared header, not in the page copy. */
body.luwy-guides-page .site-nav .wrap {
  display:flex;
  align-items:center;
}
body.luwy-guides-page .guide-header-back {
  display:inline-flex;
  flex:0 0 38px;
  width:38px;
  height:38px;
  align-items:center;
  justify-content:center;
  margin-right:14px;
  border:1px solid rgba(247,243,234,.32);
  border-radius:50%;
  padding:0;
  background:transparent;
  color:#F7F3EA !important;
  text-decoration:none !important;
  transition:background .18s ease, border-color .18s ease, transform .18s ease;
}
body.luwy-guides-page .guide-header-back svg {
  display:block;
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.luwy-guides-page .guide-header-back:hover {
  background:rgba(247,243,234,.12);
  border-color:#F7F3EA;
  transform:translateX(-2px);
}
body.luwy-guides-page .guide-back { display:none !important; }

/* Library: editorial masthead, varied card color notes, stronger hierarchy. */
body.guides-library .hero {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 88% 12%, rgba(225,158,78,.18), transparent 28%),
    linear-gradient(135deg,#F7F3EA 0%,#F3E9D9 100%) !important;
}
body.guides-library .hero .wrap {
  position:relative;
  z-index:1;
  padding-top:8px;
}
body.guides-library .hero .eyebrow {
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#84592B !important;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.guides-library .hero .eyebrow::before {
  content:"";
  display:inline-block;
  width:22px;
  height:2px;
  background:#E19E4E;
}
body.guides-library .hero h1 {
  max-width:12ch !important;
  margin-block:18px 20px;
  font-size:clamp(3rem,6.2vw,5.4rem) !important;
  letter-spacing:-.065em !important;
}
body.guides-library .hero h1 em {
  color:#4E8278;
  font-family:"Playfair Display",serif !important;
  font-weight:500;
}
body.guides-library .lead {
  max-width:54ch;
}
body.guides-library .rows {
  margin-top:36px !important;
  gap:16px !important;
}
body.guides-library .item {
  position:relative;
  min-height:210px;
  overflow:hidden;
  flex-direction:column;
  justify-content:space-between;
  gap:24px;
  padding:26px !important;
  border:1px solid var(--guide-line) !important;
  border-radius:16px !important;
  background:#FBF8F2 !important;
}
body.guides-library .item::before {
  content:"";
  position:absolute;
  left:0; top:0; bottom:0;
  width:4px;
  background:var(--card-accent,#B78C6E);
}
body.guides-library .item:nth-child(1) { --card-accent:#4E8278; background:#F4F8F5 !important; }
body.guides-library .item:nth-child(2) { --card-accent:#C58B3A; background:#FCF7EB !important; }
body.guides-library .item:nth-child(3) { --card-accent:#815A78; background:#F8F2F7 !important; }
body.guides-library .item:nth-child(4) { --card-accent:#7C8B5C; background:#F5F7EF !important; }
body.guides-library .item .t { width:100%; }
body.guides-library .item b {
  max-width:22ch;
  margin-bottom:12px;
  font-size:1.34rem;
  line-height:1.18;
  letter-spacing:-.025em;
}
body.guides-library .item small {
  font-size:1rem;
  line-height:1.58;
}
body.guides-library .item .go {
  display:inline-flex;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  margin-top:auto;
  padding:8px 0 2px;
  border-bottom:1px solid var(--card-accent);
  color:var(--card-accent) !important;
}
body.guides-library .item:hover {
  transform:translateY(-3px);
  box-shadow:0 12px 30px rgba(68,45,28,.07) !important;
}

/* Article pages: colored editorial masthead, numbered sections and a memorable takeaway panel. */
body.luwy-guides-page:not(.guides-library) main {
  background:linear-gradient(180deg,var(--guide-wash) 0, #F7F3EA 380px) !important;
}
body.luwy-guides-page:not(.guides-library) .prose {
  position:relative;
  max-width:850px !important;
  padding-top:clamp(52px,7vw,88px) !important;
  padding-bottom:clamp(56px,8vw,100px) !important;
}
body.luwy-guides-page:not(.guides-library) .prose > .eyebrow {
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--guide-accent-ink) !important;
  font-family:"Archivo",sans-serif !important;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
body.luwy-guides-page:not(.guides-library) .prose > .eyebrow::before {
  content:"";
  width:24px;
  height:2px;
  background:var(--guide-accent);
}
body.luwy-guides-page:not(.guides-library) .prose h1 {
  max-width:17ch !important;
  margin:18px 0 26px !important;
  font-size:clamp(2.7rem,5.7vw,4.65rem) !important;
  line-height:.99 !important;
  letter-spacing:-.06em !important;
  text-wrap:balance;
}
body.luwy-guides-page:not(.guides-library) .prose h1 .keep-together {
  white-space:normal;
  text-wrap:pretty;
}
body.luwy-guides-page:not(.guides-library) .answer {
  position:relative;
  margin:28px 0 34px !important;
  padding:25px 28px 26px !important;
  border:1px solid var(--guide-line) !important;
  border-left:0 !important;
  border-radius:4px 16px 16px 4px !important;
  background:#FFFCF6 !important;
  box-shadow:0 10px 28px rgba(68,45,28,.055);
}
body.luwy-guides-page:not(.guides-library) .answer::before {
  content:"";
  position:absolute;
  top:0; bottom:0; left:0;
  width:5px;
  background:var(--guide-accent);
  border-radius:4px 0 0 4px;
}
body.luwy-guides-page:not(.guides-library) .answer b {
  color:var(--guide-accent-ink) !important;
  letter-spacing:.12em;
}
body.luwy-guides-page:not(.guides-library) .prose h2 {
  display:flex;
  align-items:baseline;
  gap:12px;
  margin-top:44px !important;
  padding-bottom:12px;
  border-bottom:1px solid var(--guide-line);
  font-size:clamp(1.6rem,3.3vw,2.2rem) !important;
  letter-spacing:-.04em !important;
}
body.luwy-guides-page:not(.guides-library) .prose h2::after {
  content:"";
  display:inline-block;
  flex:0 0 26px;
  height:2px;
  background:var(--guide-accent);
  order:-1;
}
body.luwy-guides-page:not(.guides-library) .prose li b,
body.luwy-guides-page:not(.guides-library) .guide-keyword {
  color:var(--guide-accent-ink) !important;
  font-family:"Archivo",sans-serif !important;
  font-weight:800;
}
body.luwy-guides-page:not(.guides-library) .prose blockquote,
body.luwy-guides-page:not(.guides-library) .prose pre {
  padding:20px 24px;
  border-left:3px solid var(--guide-accent);
  background:var(--guide-wash);
  border-radius:0 12px 12px 0;
}
body.luwy-guides-page:not(.guides-library) .cta-row {
  border-top:2px solid var(--guide-line);
}
@media (max-width:680px) {
  body.luwy-guides-page .site-nav .wrap { gap:0; }
  body.luwy-guides-page .guide-header-back {
    width:34px; height:34px; flex-basis:34px; margin-right:10px;
  }
  body.guides-library .hero h1 { font-size:clamp(2.65rem,11vw,3.7rem) !important; }
  body.guides-library .item { min-height:0; padding:22px !important; gap:20px; }
  body.luwy-guides-page:not(.guides-library) .prose h1 { font-size:clamp(2.5rem,10vw,3.7rem) !important; }
  body.luwy-guides-page:not(.guides-library) .answer { padding:22px 20px 22px !important; }
  body.luwy-guides-page:not(.guides-library) .prose h2 { margin-top:34px !important; }
}


/* Guides visual correction: restore Luwy's core palette and standard chevron treatment. */
body.luwy-guides-page {
  --guide-accent: #B78C6E;
  --guide-accent-ink: #613627;
  --guide-wash: #F5EADD;
  --guide-line: #DED0C1;
}
body.guide-interview { --guide-accent:#8BB9B0; --guide-accent-ink:#315E56; --guide-wash:#DCEBEC; --guide-line:#C7DCDD; }
body.guide-raise { --guide-accent:#E19E4E; --guide-accent-ink:#704619; --guide-wash:#FCD8A2; --guide-line:#EBD3A7; }
body.guide-disagree { --guide-accent:#8BB9B0; --guide-accent-ink:#315E56; --guide-wash:#E3F0EB; --guide-line:#C7DDD5; }
body.guide-fillers { --guide-accent:#613627; --guide-accent-ink:#613627; --guide-wash:rgba(97,54,39,.065); --guide-line:rgba(97,54,39,.20); }

/* Use the simple left chevron used by the rest of the Luwy site. */
body.luwy-guides-page .guide-header-back {
  border:0 !important;
  border-radius:8px !important;
  width:36px !important;
  height:42px !important;
  flex-basis:36px !important;
  margin-right:12px !important;
  color:#F5EADD !important;
  background:transparent !important;
}
body.luwy-guides-page .guide-header-back svg {
  width:22px !important;
  height:22px !important;
  stroke-width:2.4 !important;
}
body.luwy-guides-page .guide-header-back:hover {
  transform:translateX(-2px);
  background:rgba(245,234,221,.08) !important;
}

/* Remove the decorative line before the Guides eyebrow. */
body.guides-library .hero .eyebrow::before {
  display:none !important;
  content:none !important;
}

/* Return the guide library to a simpler Luwy layout, with brand-colored cards. */
body.guides-library .hero {
  background:linear-gradient(135deg,#F7F3EA 0%,#F5EADD 100%) !important;
}
body.guides-library .hero h1 {
  max-width:none !important;
  width:100% !important;
  font-size:clamp(3rem,5.6vw,5.2rem) !important;
  letter-spacing:-.06em !important;
  text-wrap:balance;
}
body.guides-library .hero h1 em {
  display:inline !important;
  white-space:nowrap;
  color:#4E8278 !important;
  font-family:"Playfair Display",serif !important;
  font-style:italic !important;
  font-weight:500 !important;
}
body.guides-library .rows {
  gap:16px !important;
  border:0 !important;
  border-top:0 !important;
  padding-top:0 !important;
}
body.guides-library .item {
  min-height:205px !important;
  border:1px solid rgba(97,54,39,.16) !important;
  border-radius:14px !important;
  box-shadow:none !important;
  padding:25px !important;
}
body.guides-library .item:nth-child(1) {
  --card-accent:#4E8278;
  background:#DCEBEC !important; /* snowblue */
}
body.guides-library .item:nth-child(2) {
  --card-accent:#4E8278;
  background:#DDEDE5 !important; /* seafoam */
}
body.guides-library .item:nth-child(3) {
  --card-accent:#84592B;
  background:#FCD8A2 !important; /* brand butter yellow */
}
body.guides-library .item:nth-child(4) {
  --card-accent:#613627;
  background:rgba(97,54,39,.065) !important; /* translucent cocoa roast */
}
body.guides-library .item::before {
  width:3px !important;
  background:var(--card-accent) !important;
}
body.guides-library .item b {
  color:#2F2219 !important;
}
body.guides-library .item .go {
  color:var(--card-accent) !important;
  border-color:var(--card-accent) !important;
}
body.guides-library .item:hover {
  transform:translateY(-2px);
  box-shadow:0 8px 22px rgba(68,45,28,.06) !important;
}

/* Let the italic second sentence use the available width; wrap only at spaces on small screens. */
body.guides-library .hero .wrap {
  width:min(100% - 48px, 1120px) !important;
  max-width:1120px !important;
}
body.guides-library .hero h1 em {
  max-width:none !important;
}
@media (min-width:681px) {
  body.guides-library .hero h1 em {
    white-space:nowrap !important;
  }
}
@media (max-width:680px) {
  body.guides-library .hero .wrap {
    width:calc(100% - 40px) !important;
  }
  body.guides-library .hero h1 {
    font-size:clamp(2.45rem,10.5vw,3.7rem) !important;
  }
  body.guides-library .hero h1 em {
    white-space:normal !important;
    text-wrap:pretty;
  }
  body.guides-library .item { min-height:0 !important; }
}


/* Final Guides brand system: exact palette, restrained surfaces, no gradients or decorative subtitle rules. */
body.luwy-guides-page {
  --cocoa-roast:#604531;
  --snow-blue:#D7DEEB;
  --seafoam:#C0DDD9;
  --butter-yellow:#FBE39D;
  --warm-cream:#F7F3EA;
  --espresso:#2F2219;
  --guide-accent:var(--cocoa-roast);
  --guide-accent-ink:var(--cocoa-roast);
  --guide-wash:var(--warm-cream);
  --guide-line:rgba(96,69,49,.20);
  background:var(--warm-cream) !important;
  color:var(--espresso) !important;
  font-family:"Rethink Sans",sans-serif !important;
}
body.luwy-guides-page :is(p,li,small,.lead,.updated,.answer) {
  font-family:"Rethink Sans",sans-serif !important;
}
body.luwy-guides-page :is(h1,h2,h3,h4,.eyebrow,.item b,.answer b,.guide-keyword) {
  font-family:"Archivo",sans-serif !important;
}
body.luwy-guides-page .hero,
body.luwy-guides-page main {
  background:var(--warm-cream) !important;
  background-image:none !important;
}
body.luwy-guides-page .hero .eyebrow::before,
body.luwy-guides-page .prose > .eyebrow::before,
body.luwy-guides-page .prose h2::after {
  display:none !important;
  content:none !important;
}
body.luwy-guides-page .hero h1 {
  font-family:"Rethink Sans",sans-serif !important;
  color:var(--espresso) !important;
  max-width:none !important;
  width:100% !important;
}
body.luwy-guides-page .hero h1 em,
body.luwy-guides-page .prose h1 em,
body.luwy-guides-page .prose h2 em,
body.luwy-guides-page .prose h3 em {
  font-family:"Playfair Display",serif !important;
  font-style:italic !important;
  font-weight:500 !important;
}
body.luwy-guides-page .hero h1 em { color:var(--cocoa-roast) !important; }
body.luwy-guides-page .prose h1 {
  font-family:"Rethink Sans",sans-serif !important;
}
body.luwy-guides-page .prose h2,
body.luwy-guides-page .prose h3 {
  font-family:"Rethink Sans",sans-serif !important;
  border-bottom:0 !important;
}
body.luwy-guides-page .prose strong,
body.luwy-guides-page .prose b,
body.luwy-guides-page .item b,
body.luwy-guides-page .answer b {
  font-family:"Archivo",sans-serif !important;
}
body.luwy-guides-page .lead,
body.luwy-guides-page .prose,
body.luwy-guides-page .item small {
  color:#604531 !important;
}

/* All guide cards stay warm cream; only Read and key emphasis carry the page accent. */
body.guides-library .hero {
  background:var(--warm-cream) !important;
  background-image:none !important;
}
body.guides-library .item,
body.guides-library .item:nth-child(1),
body.guides-library .item:nth-child(2),
body.guides-library .item:nth-child(3),
body.guides-library .item:nth-child(4) {
  background:var(--warm-cream) !important;
  border:1px solid rgba(96,69,49,.18) !important;
  border-radius:14px !important;
  box-shadow:none !important;
}
body.guides-library .item::before { display:none !important; content:none !important; }
body.guides-library .item .go {
  color:var(--guide-accent) !important;
  border-color:var(--guide-accent) !important;
  font-family:"Archivo",sans-serif !important;
  font-weight:700 !important;
}
body.guide-interview { --guide-accent:#D7DEEB; --guide-accent-ink:#604531; }
body.guide-raise { --guide-accent:#FBE39D; --guide-accent-ink:#604531; }
body.guide-disagree { --guide-accent:#C0DDD9; --guide-accent-ink:#604531; }
body.guide-fillers { --guide-accent:#604531; --guide-accent-ink:#604531; }
body.luwy-guides-page:not(.guides-library) .answer,
body.luwy-guides-page:not(.guides-library) .prose blockquote,
body.luwy-guides-page:not(.guides-library) .prose pre {
  background:var(--warm-cream) !important;
  border-color:var(--guide-accent) !important;
  box-shadow:none !important;
}
body.luwy-guides-page:not(.guides-library) .answer::before { background:var(--guide-accent) !important; }
body.luwy-guides-page:not(.guides-library) .answer b,
body.luwy-guides-page:not(.guides-library) .prose li b,
body.luwy-guides-page:not(.guides-library) .guide-keyword {
  color:var(--guide-accent-ink) !important;
}
body.luwy-guides-page:not(.guides-library) .prose h2 { border-bottom:0 !important; }


/* restrained brand-colour treatment for the simulator's category tiles */
.lwy-art-directed .tp-grid .tp-card,
.tp-grid .tp-card {
  background:#F5EADD!important;
  color:#2F2219!important;
  border:1px solid rgba(47,34,25,.13)!important;
  box-shadow:0 3px 10px rgba(47,34,25,.045)!important;
}
.tp-grid .tp-card:nth-child(3n + 2) { background:#F2EDEB!important; }
.tp-grid .tp-card:nth-child(3n) { background:#FCF2D9!important; }
.tp-grid .tp-card .tp-ic {
  background:rgba(255,255,255,.58)!important;
  color:#613627!important;
  border:1px solid rgba(97,54,39,.08)!important;
}
.tp-grid .tp-card .tp-n,
.tp-grid .tp-card .tp-t,
.tp-grid .tp-card .tp-s { color:#2F2219!important; }
.tp-grid .tp-card:hover {
  border-color:rgba(97,54,39,.32)!important;
  box-shadow:0 7px 18px rgba(47,34,25,.08)!important;
}
.tp-grid .tp-card:focus-visible {
  outline:3px solid #B78C6E!important;
  outline-offset:3px!important;
}


/* Canonical practice-card lockup and exact six-colour palette (Oct 16).
   Use the supplied transparent wordmark assets only; never draw "luwy" with text or add a backing plate. */
.lwy-art-directed .pcard .pcard-mark,
.lwy-art-directed .pcard[data-style] .pcard-mark {
  display:inline-block!important;
  flex:none!important;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-position:left center!important;
  background-size:contain!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
  filter:none!important;
  font-size:0!important;
  line-height:0!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
}
.lwy-art-directed .pcard .pcard-mark::before,
.lwy-art-directed .pcard .pcard-mark::after,
.lwy-art-directed .pcard .pcard-mark i,
.lwy-art-directed .pcard .pcard-mark img { content:none!important; display:none!important; }
.lwy-art-directed .pcard[data-style="claret"] {
  --pc-bg:#604531!important; --pc-ink:#F7F3EA!important; --pc-soft:rgba(247,243,234,.82)!important; --pc-line:rgba(247,243,234,.28)!important;
  background:#604531!important; background-color:#604531!important; background-image:none!important; color:#F7F3EA!important;
}
.lwy-art-directed .pcard[data-style="glow"] {
  --pc-bg:#F7F3EA!important; --pc-ink:#2F2219!important; --pc-soft:rgba(47,34,25,.78)!important; --pc-line:rgba(47,34,25,.2)!important;
  background:#F7F3EA!important; background-color:#F7F3EA!important; background-image:none!important; color:#2F2219!important;
}
.lwy-art-directed .pcard[data-style="honey"] {
  --pc-bg:#FBE39D!important; --pc-ink:#2F2219!important; --pc-soft:rgba(47,34,25,.78)!important; --pc-line:rgba(47,34,25,.2)!important;
  background:#FBE39D!important; background-color:#FBE39D!important; background-image:none!important; color:#2F2219!important;
}
.lwy-art-directed .pcard[data-style="teal"] {
  --pc-bg:#C0DDD9!important; --pc-ink:#2F2219!important; --pc-soft:rgba(47,34,25,.78)!important; --pc-line:rgba(47,34,25,.2)!important;
  background:#C0DDD9!important; background-color:#C0DDD9!important; background-image:none!important; color:#2F2219!important;
}
.lwy-art-directed .pcard[data-style="brick"] {
  --pc-bg:#D7DEEB!important; --pc-ink:#2F2219!important; --pc-soft:rgba(47,34,25,.78)!important; --pc-line:rgba(47,34,25,.2)!important;
  background:#D7DEEB!important; background-color:#D7DEEB!important; background-image:none!important; color:#2F2219!important;
}
.lwy-art-directed .pcard[data-style="ink"] {
  --pc-bg:#2F2219!important; --pc-ink:#F7F3EA!important; --pc-soft:rgba(247,243,234,.82)!important; --pc-line:rgba(247,243,234,.28)!important;
  background:#2F2219!important; background-color:#2F2219!important; background-image:none!important; color:#F7F3EA!important;
}
.lwy-art-directed .pcard[data-style] :is(.pcard-kind,.pcard-name,.pcard-title,.pcard-facts dt,.pcard-facts dd,.pcard-foot) { color:var(--pc-ink)!important; opacity:1!important; }
.lwy-art-directed .pcard[data-style="claret"] .pcard-mark,
.lwy-art-directed .pcard[data-style="ink"] .pcard-mark { --pc-logo:url(/brand/luwy-cream.png?v=20261016palette2)!important; background-image:url(/brand/luwy-cream.png?v=20261016palette2)!important; }
.lwy-art-directed .pcard:is([data-style="glow"],[data-style="honey"],[data-style="teal"],[data-style="brick"]) .pcard-mark { --pc-logo:url(/brand/luwy-cocoa.png?v=20261016palette2)!important; background-image:url(/brand/luwy-cocoa.png?v=20261016palette2)!important; }
.lwy-art-directed .chip.swatch[data-style="claret"] i { background:#604531!important; }
.lwy-art-directed .chip.swatch[data-style="glow"] i { background:#F7F3EA!important; }
.lwy-art-directed .chip.swatch[data-style="honey"] i { background:#FBE39D!important; }
.lwy-art-directed .chip.swatch[data-style="teal"] i { background:#C0DDD9!important; }
.lwy-art-directed .chip.swatch[data-style="brick"] i { background:#D7DEEB!important; }
.lwy-art-directed .chip.swatch[data-style="ink"] i { background:#2F2219!important; border:1px solid #8D7966!important; }
.lwy-art-directed .pcard::after { display:none!important; content:none!important; background:none!important; }
