/* Public website only. Workspace components keep their existing design. */
body:has(#landing-screen:not(.hidden)), body:has(#auth-screen:not(.hidden)) { background: #fff; color: #182a22; }
#landing-screen, #auth-screen { font-family: system-ui, -apple-system, "Segoe UI", sans-serif; letter-spacing: 0; --text: #182a22; --muted: #52655c; --panel: #fff; --panel-2: #f3f7f5; --line: #dce6df; --gold: #167748; }
#landing-screen { background: #fff; color: #182a22; }
#landing-screen *, #auth-screen * { letter-spacing: 0; }
#landing-screen :is(button,input,select), #auth-screen :is(button,input) { font: inherit; }
#landing-screen :is(input,select), #auth-screen input { background: #fff; color: #182a22; border: 1px solid #b9cbc0; border-radius: 6px; min-height: 46px; box-shadow: none; }
#landing-screen :is(input,select):focus, #auth-screen input:focus { outline: 2px solid #3f9670; outline-offset: 2px; }
#landing-screen :focus-visible, #auth-screen :focus-visible { outline: 2px solid #348b66; outline-offset: 4px; }
#landing-screen .primary-button, #auth-screen .primary-button { background: #187a46; color: #fff; border: 1px solid #187a46; border-radius: 6px; box-shadow: none; min-height: 44px; }
#landing-screen .primary-button:hover, #auth-screen .primary-button:hover { background: #115e36; transform: none; }
#landing-screen .secondary-button, #auth-screen .secondary-button { background: #fff; color: #193d2b; border: 1px solid #b9cbc0; border-radius: 6px; box-shadow: none; }
#landing-screen a { color: #186642; }
#landing-screen .landing-nav { position: sticky; top: 0; width: 100%; max-width: none; min-height: 80px; margin: 0; padding: 12px 4%; border: 0; border-bottom: 1px solid #dce6df; border-radius: 0; background: #fff; color: #182a22; box-shadow: none; z-index: 70; }
#landing-screen .landing-logo-link { color: #133c2b; }
#landing-screen .landing-logo-link img { width: 42px; height: 42px; padding: 0; object-fit: contain; border-radius: 0; }
#landing-screen .landing-nav nav a { color: #43594e; font-weight: 550; text-decoration: none; padding: 8px 0; border-bottom: 2px solid transparent; }
#landing-screen .landing-nav nav a[aria-current="page"] { color: #137447; border-color: #137447; }
#landing-screen .landing-menu-toggle { color: #1c3e2b; background: #fff; border: 1px solid #b9cbc0; border-radius: 6px; width: 44px; height: 44px; padding: 10px; }
#landing-screen .landing-menu-toggle svg { width: 22px; height: 22px; }
#landing-screen .website-mobile-auth { display: none; }
#landing-screen main { width: 100%; max-width: none; margin: 0; padding: 0; }
#landing-screen .landing-section { width: 100%; max-width: none; margin: 0; padding: 64px max(5%, calc((100% - 1200px) / 2)); background: #fff; color: #182a22; border: 0; border-radius: 0; box-shadow: none; }
#landing-screen .landing-section h2 { color: #182a22; font-size: 36px; line-height: 1.2; }
#landing-screen .landing-section :is(p,li) { color: #52655c; line-height: 1.7; }
#landing-screen .eyebrow { color: #23744f; }
body:has(#landing-screen:not(.hidden)) .assistant-launcher { background: #187a46; color: #fff; border-color: #187a46; box-shadow: 0 4px 16px #151c1b14; }
body.website-footer-visible:has(#landing-screen:not(.hidden)) .assistant-launcher { visibility: hidden; pointer-events: none; }
#landing-screen :is(h1,h2,h3,button,a) { font-family: system-ui, -apple-system, "Segoe UI", sans-serif; }
#landing-screen .landing-nav { padding-inline: max(24px, calc((100% - 1280px) / 2)); }
#landing-screen .landing-nav nav { gap: 28px; }
#landing-screen .landing-nav :is(a,button) { font-size: 14px; }
#landing-screen .landing-logo-link .landing-wordmark { font-size: 24px; }
#landing-screen .landing-nav .primary-button { padding-inline: 20px; }
.home-marketplace-intro { display: none; }
body.louer-home #landing-screen .home-hero-content .eyebrow { color: #dcf7e6; }
body.louer-home #landing-screen .landing-hero .landing-actions > a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 13px 18px; text-decoration: none; font-size: 14px; font-weight: 600; }
body.louer-home #landing-screen .landing-hero .landing-actions > .primary-button { color: #fff; }
body.louer-home #landing-screen .landing-hero .landing-actions svg, .home-marketplace-intro a svg { flex: 0 0 18px; width: 18px; height: 18px; }
body.louer-home #landing-screen .home-marketplace-intro { display: block; width: 100%; padding: 64px max(5%, calc((100% - 1200px) / 2)); background: #eef6f8; color: #182a22; }
.home-marketplace-heading { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.home-marketplace-heading > div { max-width: 740px; }
#landing-screen .home-marketplace-intro h2 { font-size: 42px; line-height: 1.15; margin: 14px 0 20px; }
#landing-screen .home-marketplace-intro .home-marketplace-lead { margin: 0 0 12px; color: #243d46; font-size: 22px; font-weight: 600; line-height: 1.4; }
.home-marketplace-heading p { color: #40585e; font-size: 16px; line-height: 1.75; margin: 0; }
.home-marketplace-heading > a { display: inline-flex; align-items: center; justify-content: center; gap: 10px; flex: 0 0 auto; padding: 14px 20px; text-decoration: none; font-size: 14px; font-weight: 600; }
#landing-screen .home-marketplace-heading > a { color: #fff; }
.home-marketplace-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; list-style: none; padding: 32px 0; margin: 36px 0 0; border-block: 1px solid #c5d7dc; }
.home-marketplace-steps li { min-width: 0; }
.home-marketplace-steps > li > svg { display: block; width: 26px; height: 26px; color: #23744f; margin-bottom: 18px; }
.home-marketplace-steps h3 { font-size: 18px; line-height: 1.4; margin: 0 0 10px; }
.home-marketplace-steps p { font-size: 14px; line-height: 1.75; color: #40585e; margin: 0; }
.home-marketplace-business { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-top: 24px; color: #40585e; font-size: 14px; line-height: 1.7; }
.home-marketplace-business > span { max-width: 700px; }
.home-marketplace-business strong { color: #243d46; }
.home-marketplace-business a { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; min-height: 44px; text-underline-offset: 4px; }
@media (max-width: 980px) { .home-marketplace-heading, .home-marketplace-business { flex-direction: column; align-items: flex-start; gap: 24px; } }
@media (max-width: 720px) {
  body.louer-home #landing-screen .home-marketplace-intro { padding: 40px 20px; }
  #landing-screen .home-marketplace-intro h2 { font-size: 30px; }
  #landing-screen .home-marketplace-intro .home-marketplace-lead { font-size: 20px; }
  .home-marketplace-steps { grid-template-columns: 1fr; gap: 24px; margin-top: 28px; padding-block: 28px; }
  .home-marketplace-steps > li > svg { margin-bottom: 12px; }
  .home-marketplace-business a { flex: 1 1 auto; max-width: 100%; }
  body.louer-home #landing-screen .landing-hero .landing-actions > a { max-width: 100%; font-size: 13px; padding: 12px 14px; }
}
.home-product-overview, .home-pricing-actions { display: none; }
body.louer-home #landing-screen .home-product-overview { display: block; width: 100%; padding: 64px max(5%, calc((100% - 1200px) / 2)); background: #f3f6fa; }
body.louer-home .home-product-overview figure { position: relative; margin: 0; }
body.louer-home .home-product-overview figure > img { display: block; width: 100%; height: auto; border: 1px solid #d5dfdd; border-radius: 6px; }
body.louer-home .home-product-overview figcaption { margin-top: 14px; color: #52655c; font-size: 12px; }
body.louer-home #landing-screen #pricing { padding: 72px max(5%, calc((100% - 1200px) / 2)); background: #fff; }
body.louer-home #landing-screen #pricing .landing-section-copy { max-width: 680px; margin-bottom: 32px; }
body.louer-home #landing-screen .landing-pricing { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
body.louer-home #landing-screen .landing-pricing article:first-child { display: none; }
body.louer-home #landing-screen .landing-pricing article { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; padding: 28px; border: 1px solid #d3dfd9; border-radius: 6px; background: #fff; cursor: default; box-shadow: none; transform: none; }
body.louer-home #landing-screen .landing-pricing article:nth-child(3) { border-top: 3px solid #187a46; padding-top: 26px; background: #f5faf7; }
body.louer-home #landing-screen .landing-pricing mark { padding: 0; background: none; color: #17613f; font-size: 14px; font-weight: 600; }
body.louer-home #landing-screen .landing-pricing strong { color: #182a22; font-size: 26px; line-height: 1.4; }
body.louer-home #landing-screen .landing-pricing strong small { font-size: 12px; font-weight: 400; color: #52655c; white-space: nowrap; }
body.louer-home #landing-screen .landing-pricing article > span { color: #43594e; font-size: 14px; line-height: 1.75; }
body.louer-home #landing-screen .landing-pricing article > a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: auto; color: #17613f; font-size: 14px; font-weight: 600; text-underline-offset: 5px; }
body.louer-home #landing-screen .landing-pricing article > a svg, .home-pricing-actions svg { width: 16px; height: 16px; }
body.louer-home #landing-pricing-detail, body.louer-home #pricing > button { display: none; }
body.louer-home #landing-screen .home-pricing-actions { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 28px; }
body.louer-home #landing-screen .home-pricing-actions p { font-size: 13px; margin: 0; }
body.louer-home .home-pricing-actions > a { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; min-height: 44px; color: #17613f; font-size: 14px; font-weight: 600; }
@media (max-width: 720px) {
  body.louer-home #landing-screen .home-product-overview, body.louer-home #landing-screen #pricing { padding: 44px 20px; }
  body.louer-home #landing-screen .landing-pricing { grid-template-columns: 1fr; }
  body.louer-home #landing-screen .home-pricing-actions { align-items: flex-start; flex-direction: column; gap: 12px; }
}
.website-photo-heading { display: none; }
body:is(.public-features-page,.public-pricing-page) #landing-screen :is(#features,#pricing) { padding-top: 0; }
body.public-features-page .features-heading, body.public-pricing-page .pricing-heading { display: flex; position: relative; isolation: isolate; align-items: center; min-height: 390px; margin: 0 calc(-1 * max(5vw, (100vw - 1200px) / 2)) 64px; padding: 56px max(5vw, calc((100vw - 1200px) / 2)); overflow: hidden; background: #173e2c; }
.website-photo-heading > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 55%; z-index: -2; }
.website-photo-heading::after { content: ""; position: absolute; inset: 0; background: rgba(4,24,16,.55); z-index: -1; }
.website-photo-heading > div { max-width: 620px; }
#landing-screen .website-photo-heading .eyebrow { color: #d4f0df; }
.website-photo-heading h1 { color: #fff; font-size: 54px; line-height: 1.1; margin: 16px 0 20px; font-weight: 700; }
#landing-screen .website-photo-heading p { color: #fff; max-width: 490px; font-size: 17px; margin-bottom: 24px; }
.feature-gallery { display: none; }
body.public-features-page .feature-gallery { display: block; margin: 36px 0 52px; }
.website-gallery { position: relative; overflow: hidden; background: #163c2b; }
.website-gallery figure { position: relative; margin: 0; }
.website-gallery figure[hidden] { display: none; }
.website-gallery figure > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.feature-gallery figure { height: 520px; }
.website-gallery figcaption { position: absolute; inset: auto 0 0; padding: 26px 32px 88px; color: #fff; background: rgba(9,35,22,.86); }
.website-gallery figcaption span { font-size: 11px; color: #d3efdf; }
.website-gallery figcaption h3 { color: #fff; font-size: 28px; margin: 10px 0; }
#landing-screen .website-gallery figcaption p { color: #f3faf5; margin: 0; max-width: 680px; font-size: 15px; }
.website-gallery-controls { position: absolute; inset: auto 24px 18px; display: flex; gap: 18px; align-items: center; }
.website-gallery-controls .icon-button { background: #fff; color: #163c2b; width: 38px; height: 38px; border: 0; border-radius: 50%; padding: 9px; }
.website-gallery-controls svg { width: 20px; height: 20px; }
.website-dots { display: flex; gap: 2px; align-items: center; }
.website-dots button { width: 30px; height: 36px; padding: 10px; background: transparent; border: 0; border-radius: 0; box-shadow: none; display: grid; place-items: center; }
.website-dots button::before { content: ""; display: block; width: 8px; height: 8px; border-radius: 50%; background: #90ac9d; transition: background .15s; }
.website-dots button[aria-current="true"]::before { background: #fff; outline: 1px solid #fff; outline-offset: 3px; }
.home-slideshow > .website-dots { position: absolute; top: 16px; left: 20px; z-index: 3; padding: 0 6px; background: rgba(8,25,17,.75); border-radius: 6px; }
.website-industry-copy { color: #52655c; font-size: 15px; line-height: 1.6; max-width: 620px; margin: 18px 0 0; }
.website-gallery .product-preview-slide { background: #edf4f0; }
.feature-gallery .product-preview-slide { height: auto; }
.feature-gallery .product-preview-slide > img { height: auto; max-height: none; object-fit: contain; padding: 0; }
.feature-gallery .product-preview-slide figcaption { position: relative; height: auto; padding: 24px 32px 88px; background: #edf4f0; color: #173e2c; }
.website-gallery .product-preview-slide figcaption :is(span,h3) { color: #173e2c; }
#landing-screen .website-gallery .product-preview-slide figcaption p { color: #52655c; }
.website-preview-open { position: absolute; z-index: 2; top: 18px; right: 18px; width: 40px; height: 40px; padding: 10px; border: 1px solid #71897b; border-radius: 6px; background: #fff; color: #1b5836; }
.website-preview-open svg { width: 20px; height: 20px; }
.feature-gallery:has(.product-preview-slide:not([hidden])) .website-dots button[aria-current="true"]::before { background: #176d43; outline-color: #176d43; }
.feature-gallery:has(.product-preview-slide:not([hidden])) .website-gallery-controls .icon-button { background: #176d43; color: #fff; }
.website-preview-dialog { width: min(1200px, calc(100% - 32px)); max-width: none; max-height: calc(100svh - 32px); padding: 0; border: 1px solid #c7d9ce; border-radius: 8px; background: #fff; color: #173e2c; overflow: auto; }
.website-preview-dialog::backdrop { background: rgba(8,24,16,.75); }
.website-preview-dialog > div { position: sticky; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 20px; background: #fff; border-bottom: 1px solid #dce6df; }
.website-preview-dialog h2 { margin: 0; font: 600 18px system-ui; }
.website-preview-dialog button { background: #edf4f0; color: #173e2c; border: 0; border-radius: 5px; width: 40px; height: 40px; padding: 10px; }
.website-preview-dialog button svg { width: 20px; height: 20px; }
.website-preview-dialog > img { display: block; width: 100%; height: auto; }
#landing-screen .landing-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0 36px; }
#landing-screen .landing-card-grid article { background: transparent; box-shadow: none; border: 0; border-top: 1px solid #dce6df; border-radius: 0; padding: 26px 0; color: #182a22; }
#landing-screen .landing-card-grid article svg { width: 24px; height: 24px; color: #187a46; margin-bottom: 8px; }
#landing-screen .landing-card-grid article strong { font-size: 18px; color: #182a22; }
#landing-screen .landing-card-grid article span { color: #52655c; font-size: 14px; line-height: 1.65; }
#landing-screen .feature-deep-dive { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 48px; margin-top: 40px; }
#landing-screen .feature-deep-dive article { background: none; border: 0; border-top: 1px solid #dce6df; border-radius: 0; padding: 28px 0; box-shadow: none; }
#landing-screen .feature-deep-dive h3 { font-size: 23px; color: #182a22; line-height: 1.3; }
#landing-screen .feature-spotlight { border: 0; border-radius: 0; background: #eaf6f0; box-shadow: none; padding: 36px; }
#landing-screen .feature-spotlight h3 { font-size: 28px; color: #182a22; }
.website-billing-switch, .website-plan-alternatives, .website-pricing-faq { display: none; }
body.public-pricing-page #pricing > :is(.eyebrow,h2,.landing-section-copy,.landing-pricing,.international-pricing-note) { display: none; }
body.public-pricing-page .website-billing-switch { display: flex; width: fit-content; flex-wrap: wrap; margin: 0 auto 36px; border: 1px solid #c5d6cc; padding: 4px; border-radius: 8px; gap: 4px; }
.website-billing-switch legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.website-billing-switch label { position: relative; cursor: pointer; margin: 0; display: block; }
.website-billing-switch input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.website-billing-switch label > span { display: flex; align-items: center; gap: 12px; padding: 12px 20px; font-size: 14px; font-weight: 600; border-radius: 5px; }
.website-billing-switch small { font-size: 11px; font-weight: 400; }
.website-billing-switch input:checked + span { background: #173e2c; color: #fff; }
.website-billing-switch input:focus-visible + span { outline: 2px solid #348b66; outline-offset: 2px; }
body.public-pricing-page #landing-pricing-detail { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; border: 0; background: transparent; padding: 0; }
#landing-screen .pricing-comparison-card { display: flex; flex-direction: column; min-width: 0; padding: 28px; border: 1px solid #d6e2d9; border-radius: 8px; background: #fff; color: #182a22; box-shadow: none; }
#landing-screen .pricing-comparison-card.recommended-plan { border: 2px solid #22824f; background: #f1f9f4; padding: 27px; }
#landing-screen .pricing-comparison-card .package-badge { background: none; border: 0; padding: 0; color: #23744f; font-size: 11px; text-transform: uppercase; }
#landing-screen .pricing-comparison-card h3 { font-size: 25px; margin: 18px 0 10px; }
#landing-screen .pricing-comparison-card > strong { font-size: 29px; line-height: 1.25; color: #182a22; }
#landing-screen .pricing-comparison-card > p { min-height: 78px; font-size: 14px; }
#landing-screen .pricing-comparison-card ul { padding: 0; list-style: none; margin: 12px 0 20px; display: grid; gap: 10px; }
#landing-screen .pricing-comparison-card li { font-size: 13px; }
#landing-screen .pricing-comparison-card details { padding: 16px 0; border-top: 1px solid #dce6df; margin-top: auto; }
.pricing-comparison-card summary { cursor: pointer; font-size: 13px; color: #216b46; font-weight: 600; }
.pricing-comparison-card > button { width: 100%; margin-top: 14px; }
body.public-pricing-page .website-plan-alternatives { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; margin: 52px 0; padding: 36px 0; border-block: 1px solid #dce6df; }
.website-plan-alternatives article { min-width: 0; }
.website-plan-alternatives svg { width: 24px; height: 24px; color: #23744f; }
.website-plan-alternatives h3 { font-size: 21px; }
.website-plan-alternatives p { font-size: 14px; }
.website-plan-alternatives a { display: inline-flex; align-items: center; gap: 8px; }
.website-plan-alternatives a svg { width: 18px; }
body.public-pricing-page .website-pricing-faq { display: block; max-width: 820px; margin: 64px auto; }
.website-pricing-faq details { border-bottom: 1px solid #dce6df; padding: 22px 0; }
.website-pricing-faq summary { cursor: pointer; font-weight: 600; font-size: 17px; }
.website-pricing-faq p { font-size: 14px; }
.marketplace-heading-art { display: none; }
body.public-marketplace-page #louer-marketplace { position: relative; padding-top: 64px; }
body.public-marketplace-page .marketplace-heading-art { display: block; position: absolute; right: 5%; top: 32px; width: 240px; height: 150px; overflow: hidden; border-radius: 6px; }
.marketplace-heading-art img { width: 100%; height: 100%; object-fit: cover; }
body.public-marketplace-page :is(#landing-marketplace-title,#landing-marketplace-copy) { max-width: calc(100% - 280px); }
body.public-marketplace-page #landing-marketplace-title { font-size: 42px; }
body.public-marketplace-page :is(.marketplace-brief-grid,.marketplace-brief-link) { display: none; }
#landing-screen .landing-marketplace-tools { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 10px; background: #f2f7f4; padding: 20px; border: 1px solid #dce6df; border-radius: 6px; margin-top: 36px; }
#landing-screen .landing-marketplace-tools :is(input,select,button) { min-width: 0; width: 100%; font-size: 13px; }
#landing-screen .marketplace-category-chips { display: flex; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 8px; gap: 8px; }
#landing-screen .marketplace-category-chip { flex: 0 0 auto; background: #fff; border: 1px solid #c7d9cc; color: #1f5135; border-radius: 5px; padding: 10px 16px; }
#landing-screen .marketplace-category-chip.active { background: #176d43; border-color: #176d43; color: #fff; }
#landing-screen .marketplace-trust-strip { background: #f3f6fa; color: #3b5363; border: 0; border-radius: 0; padding: 16px 20px; box-shadow: none; font-size: 12px; }
#landing-screen .landing-pricing span,
#landing-screen .international-pricing-note,
#landing-screen .international-pricing-note strong { color: #344e3f; }
/* Override the legacy dark form theme, including its important text colour. */
#landing-screen .landing-marketplace-tools :is(input,select) { color: #182a22 !important; -webkit-text-fill-color: #182a22; color-scheme: light; border-color: #71897b; opacity: 1; }
#landing-screen .landing-marketplace-tools option { background: #fff; color: #182a22; }
#landing-screen .landing-marketplace-tools input::placeholder { color: #52655c; -webkit-text-fill-color: #52655c; opacity: 1; }
#landing-screen .marketplace-trust-strip strong { color: #243f31; }
#landing-screen .marketplace-trust-strip span { color: #344e3f; background: #fff; border-color: #71897b; border-radius: 5px; font-weight: 500; }
#landing-screen .marketplace-category-chip:not(.active),
#landing-screen .landing-marketplace-tools button:not(.primary) { border-color: #71897b; }
#landing-screen .landing-marketplace-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; gap: 24px; }
#landing-screen .landing-marketplace-card, #landing-screen .landing-marketplace-card.verified-business { display: block; border: 1px solid #dce6df; border-radius: 8px; background: #fff; color: #182a22; overflow: hidden; box-shadow: none; transform: none; }
#landing-screen .landing-marketplace-card::after, #landing-screen .marketplace-image-button::after { display: none; }
#landing-screen .landing-marketplace-card .marketplace-image-button { height: 220px; min-height: 0; padding: 0; width: 100%; background: #f3f6f4; border: 0; border-radius: 0; overflow: hidden; }
#landing-screen .marketplace-image-button img { width: 100%; height: 100%; min-height: 0; object-fit: contain; transition: transform .25s ease; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) { #landing-screen .marketplace-image-button:hover img { transform: scale(1.04); } }
#landing-screen .marketplace-image-badge { background: #fff; color: #31483b; font-size: 10px; border: 1px solid #dae5dd; border-radius: 4px; padding: 6px 8px; }
#landing-screen .landing-marketplace-card > div { padding: 22px; background: #fff; }
#landing-screen .landing-marketplace-card h3 { font-size: 19px; color: #182a22; margin: 14px 0 8px; line-height: 1.3; overflow-wrap: anywhere; }
#landing-screen .landing-marketplace-card p { font-size: 13px; }
#landing-screen .verified-marketplace-badge { color: #206b42; background: #e9f5ed; border: 0; font-size: 10px; padding: 5px 8px; }
#landing-screen .public-marketplace-meta { flex-wrap: wrap; gap: 6px; }
#landing-screen .public-marketplace-meta span { color: #52655c; border: 0; background: #f1f5f3; border-radius: 4px; font-size: 11px; padding: 6px 8px; }
#landing-screen .public-marketplace-footer { display: flex; flex-direction: column; align-items: stretch; gap: 16px; margin-top: 18px; border-top: 1px solid #e2ebe5; padding-top: 18px; }
#landing-screen .public-marketplace-footer > strong { font-size: 22px; color: #182a22; overflow-wrap: anywhere; }
#landing-screen .public-marketplace-footer > strong small { font-size: 12px; color: #52655c; }
#landing-screen .public-actions { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; width: 100%; }
#landing-screen .public-actions button { padding: 10px 12px; font-size: 12px; white-space: normal; min-height: 44px; }
#landing-screen .marketplace-placeholder { background: #edf4f0; color: #3a5d49; height: 100%; font-size: 20px; }
.website-pagination { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 8px; margin: 30px 0; font-size: 13px; color: #52655c; }
.website-pagination:empty { display: none; }
.website-pagination button { min-width: 40px; height: 40px; border: 1px solid #ccdcd1; border-radius: 5px; background: #fff; color: #185332; padding: 8px; }
.website-pagination button[aria-current="page"] { color: #fff; background: #176d43; border-color: #176d43; }
.website-pagination svg { width: 18px; height: 18px; }
.website-pagination span { margin-right: 12px; }
#landing-screen .landing-footer { display: block; margin: 0; padding: 0 max(5%, calc((100% - 1200px) / 2)) 40px; border: 0; border-radius: 0; background: #151c1b; color: #d2dcd7; box-shadow: none; }
#landing-screen .landing-footer::after { content: none; display: none; }
#landing-screen .landing-footer :is(a,p,span,strong) { color: #d2dcd7; }
#landing-screen .landing-footer :is(a,button) { display: inline-flex; align-items: center; gap: 8px; width: fit-content; min-height: 40px; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; color: #d2dcd7; font: 400 14px/1.6 system-ui, sans-serif; text-decoration: none; text-align: left; box-shadow: none; text-underline-offset: 5px; }
#landing-screen .landing-footer :is(a,button):hover { color: #fff; text-decoration: underline; }
#landing-screen .landing-footer :is(a,button):focus-visible { outline: 2px solid #d4f4e2; outline-offset: 5px; }
#landing-screen .landing-footer svg { width: 16px; height: 16px; flex: 0 0 16px; }
#landing-screen .footer-invitation { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 56px 0; border-bottom: 1px solid #3b4641; }
#landing-screen .footer-invitation > div { display: block; }
#landing-screen .footer-invitation .footer-kicker { color: #a5c8b4; font-size: 12px; }
#landing-screen .footer-invitation h2 { margin: 14px 0 12px; max-width: 600px; color: #f6faf7; font-size: 34px; font-weight: 600; line-height: 1.2; }
#landing-screen .landing-footer p { margin: 0; max-width: 55ch; color: #b8c9c0; font-size: 14px; font-weight: 400; line-height: 1.75; }
#landing-screen .footer-invitation .footer-invitation-actions { display: flex; flex-direction: column; align-items: center; gap: 12px; flex: 0 0 auto; }
#landing-screen .footer-invitation .footer-start-link { justify-content: center; min-height: 48px; padding: 12px 20px; border: 1px solid #d7f3e3; border-radius: 6px; background: #d7f3e3; color: #173b2b; font-weight: 600; }
#landing-screen .footer-invitation .footer-start-link:hover { background: #fff; border-color: #fff; text-decoration: none; }
#landing-screen .footer-directory { display: grid; grid-template-columns: minmax(240px,1.5fr) minmax(150px,1fr) minmax(150px,1fr) minmax(140px,1fr); gap: 44px; padding: 48px 0; }
#landing-screen .landing-footer-brand { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
#landing-screen .landing-footer-brand .footer-brand-link { gap: 12px; min-height: 48px; }
#landing-screen .footer-brand-link img { width: 44px; height: 44px; padding: 0; object-fit: contain; border-radius: 6px; background: #fff; }
#landing-screen .footer-brand-link span { font-size: 24px; font-weight: 750; color: #f6faf7; }
#landing-screen .landing-footer-brand p { max-width: 31ch; }
#landing-screen .landing-footer-brand .footer-contact-link { color: #e2f0e8; font-weight: 500; }
#landing-screen .footer-location { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: #b8c9c0; }
#landing-screen .footer-link-group { display: flex; flex-direction: column; align-items: flex-start; gap: 0; min-width: 0; }
#landing-screen .footer-link-group h3 { margin: 6px 0 16px; color: #f6faf7; font-size: 14px; font-weight: 600; text-transform: none; }
#landing-screen .footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 0 44px; border-top: 1px solid #3b4641; }
#landing-screen .footer-bottom p, #landing-screen .footer-bottom :is(a,button) { font-size: 12px; }
#landing-screen .footer-bottom > div { display: flex; align-items: center; gap: 28px; }
#landing-screen .footer-bottom p span { display: inline-block; color: #b8c9c0; }
body:not(.louer-home):not(.public-features-page):not(.public-pricing-page) #landing-screen .footer-invitation { display: none; }
@media (max-width: 1000px) {
  #landing-screen .footer-directory { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
  #landing-screen .landing-footer-brand { grid-column: 1/-1; }
  #landing-screen .footer-invitation h2 { font-size: 30px; }
}
@media (max-width: 600px) {
  #landing-screen .landing-footer { padding-inline: 24px; }
  #landing-screen .footer-invitation { align-items: flex-start; flex-direction: column; gap: 24px; padding: 40px 0; }
  #landing-screen .footer-invitation h2 { font-size: 28px; }
  #landing-screen .footer-invitation .footer-invitation-actions { align-items: flex-start; }
  #landing-screen .footer-directory { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 20px; padding: 36px 0; }
  #landing-screen .footer-legal-links { grid-column: 1/-1; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 20px; }
  #landing-screen .footer-legal-links h3 { grid-column: 1/-1; }
  #landing-screen .footer-link-group :is(a,button) { min-height: 44px; font-size: 13px; }
  #landing-screen .footer-bottom { align-items: flex-start; flex-direction: column; gap: 12px; }
  #landing-screen .footer-bottom > div { flex-wrap: wrap; gap: 10px 24px; }
}
#landing-screen :is(.legal-copy,.status-check-card,.plan-payment-card,.faq-list,.demo-note-panel) { color: #182a22; background: #f5f8f6; border-color: #dce6df; border-radius: 6px; box-shadow: none; }
#landing-screen .legal-document { max-width: 820px; margin-top: 32px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; gap: 20px; }
#landing-screen .legal-document :is(h3,strong) { color: #182a22; }
#landing-screen .legal-document h3 { font-size: 21px; line-height: 1.4; margin-top: 20px; }
#landing-screen .legal-document :is(p,li,span) { color: #52655c; }
#landing-screen .legal-page:not(#faqs-page) { max-width: 1200px; margin-inline: auto; }
#landing-screen .legal-page > h2 { color: #182a22; font-size: 36px; line-height: 1.2; margin: 12px 0 26px; }
.legal-related { display: flex; flex-wrap: wrap; gap: 4px 22px; border-bottom: 1px solid #c8d7cf; margin-bottom: 32px; }
#landing-screen .legal-related a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; color: #52655c; text-decoration: none; border-bottom: 2px solid transparent; font: 500 14px system-ui; }
#landing-screen .legal-related a[aria-current="page"] { color: #175f3c; border-bottom-color: #187a46; }
.legal-reader { display: grid; grid-template-columns: 240px minmax(0,1fr); align-items: start; gap: 48px; }
.legal-contents { position: sticky; top: 105px; min-width: 0; border-top: 2px solid #187a46; padding-top: 16px; font-family: system-ui, sans-serif; }
.legal-contents summary { color: #243f31; font-size: 14px; font-weight: 600; padding: 8px 0 16px; cursor: pointer; }
.legal-contents nav { display: grid; gap: 2px; max-height: calc(100svh - 210px); overflow-y: auto; overscroll-behavior: contain; padding-right: 12px; }
#landing-screen .legal-contents a { display: block; padding: 9px 0; color: #40594b; font-size: 12px; line-height: 1.5; text-decoration: none; border-bottom: 1px solid #e0e9e3; overflow-wrap: anywhere; }
#landing-screen .legal-contents a:hover { color: #145c36; text-decoration: underline; }
#landing-screen .legal-reader .legal-document { max-width: 740px; width: 100%; margin: 0; gap: 18px; font-family: system-ui, sans-serif; }
#landing-screen .legal-reader .legal-document > p:first-child { margin-bottom: 12px; padding: 12px 16px; background: #f1f6f3; border-left: 3px solid #187a46; font-size: 13px; }
#landing-screen .legal-reader .legal-document h3 { font-size: 21px; font-weight: 600; margin: 24px 0 0; scroll-margin-top: 120px; letter-spacing: 0; }
#landing-screen .legal-reader .legal-document :is(p,li) { font-size: 15px; line-height: 1.85; color: #344d40; overflow-wrap: anywhere; }
#landing-screen .legal-reader .legal-document a { color: #166340; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 980px) {
  .legal-reader { grid-template-columns: 1fr; gap: 24px; }
  .legal-contents { position: static; border: 1px solid #b3c8bb; border-radius: 6px; padding: 8px 16px; background: #f6f9f7; }
  .legal-contents summary { padding: 10px 0; }
  .legal-contents nav { max-height: 320px; }
  #landing-screen .legal-page > h2 { font-size: 28px; }
  #landing-screen .legal-reader .legal-document :is(p,li) { font-size: 15px; line-height: 1.8; }
  #landing-screen .legal-reader .legal-document h3 { font-size: 19px; }
}
@media print { .legal-related,.legal-contents { display: none; } .legal-reader { display: block; } }
#landing-screen .faq-document details { border-bottom: 1px solid #dce6df; padding: 20px 0; }
#landing-screen .faq-document summary { cursor: pointer; color: #182a22; }
#landing-screen .faq-document summary h3 { display: inline; padding: 0; border: 0; margin: 0; font-size: 17px; }
#landing-screen .faq-document details p { margin-top: 16px; }
#landing-screen .legal-grid article, #landing-screen .demo-story-grid article { background: transparent; border: 0; border-top: 1px solid #dce6df; border-radius: 0; box-shadow: none; color: #182a22; }
#landing-screen .demo-story-grid strong { color: #182a22; }
#auth-screen { position: relative; display: grid; grid-template-columns: minmax(0,1fr) minmax(460px,560px); align-items: stretch; padding: 0; background: #fff; min-height: 100svh; overflow: visible; }
#auth-screen.hidden { display: none; }
#auth-screen .auth-gallery { position: sticky; top: 0; align-self: start; height: 100svh; width: 100%; }
.auth-gallery figure { height: 100%; }
.auth-gallery figure > img { object-position: 58% center; }
.auth-gallery figcaption { padding: 36px 40px 92px; }
.auth-gallery h2 { font-size: 42px; line-height: 1.15; margin: 16px 0; color: #fff; }
.auth-gallery p { color: #e4f2e9; font-size: 15px; }
.auth-gallery > .website-dots { position: absolute; left: 30px; bottom: 26px; }
.auth-gallery .product-preview-slide > img { height: calc(100% - 210px); padding: 0; object-fit: contain; object-position: center; }
.auth-gallery .product-preview-slide figcaption { height: 210px; padding: 20px 28px 58px; background: #173e2c; }
.auth-gallery .product-preview-slide h2 { font-size: 30px; }
.auth-gallery .product-preview-slide figcaption span { color: #d3efdf; }
#auth-screen .auth-card { width: 100%; max-width: 560px; min-height: 100svh; padding: 32px 48px 64px; background: #fff; border: 0; border-radius: 0; box-shadow: none; gap: 24px; align-content: start; color: #182a22; }
.auth-brand-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-bottom: 24px; }
#auth-screen .auth-logo { width: 38px; height: 38px; object-fit: contain; }
#auth-screen .landing-logo-link { color: #163e29; }
#auth-screen .landing-wordmark { font-size: 21px; }
.auth-home-link { display: inline-flex; align-items: center; gap: 4px; color: #42604d; font-size: 12px; text-decoration: none; }
.auth-home-link svg { width: 16px; height: 16px; }
#auth-screen h1 { font-size: 30px; line-height: 1.2; margin: 12px 0; color: #182a22; }
#auth-screen #auth-intro { font-size: 14px; line-height: 1.6; color: #52655c; margin: 0; }
#auth-screen .eyebrow { color: #23744f; font-size: 11px; }
#auth-screen .auth-tabs { display: flex; border: 0; border-bottom: 1px solid #dce6df; border-radius: 0; background: none; padding: 0; gap: 24px; }
#auth-screen .auth-tab { width: auto; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: none; color: #62786b; box-shadow: none; padding: 12px 0; font-size: 14px; }
#auth-screen .auth-tab.active { color: #176d43; border-color: #176d43; }
#auth-screen #auth-form { gap: 18px; }
#auth-screen label { font-size: 13px; color: #344e3f; font-weight: 550; gap: 8px; }
#auth-screen input { font-size: 14px; padding: 12px; width: 100%; }
#auth-screen input[type="checkbox"] { width: 18px; min-height: 18px; height: 18px; accent-color: #187a46; }
#auth-screen .password-field input { padding-right: 68px; }
#auth-screen .password-toggle { background: transparent; color: #286845; font-size: 12px; border: 0; box-shadow: none; }
#auth-screen .legal-acknowledgement { background: #f5f8f6; padding: 12px; border: 0; border-radius: 5px; }
#auth-screen .legal-acknowledgement span { font-size: 11px; line-height: 1.6; font-weight: 400; }
#auth-screen a { color: #176d43; }
#auth-screen .password-requirements { background: #f5f8f6; border-color: #dce6df; color: #52655c; font-size: 12px; }
#auth-screen .text-button { color: #176d43; }
@media (max-width: 1000px) {
  #landing-screen .landing-marketplace-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #landing-screen .pricing-comparison-card { padding: 20px; }
  #landing-screen .pricing-comparison-card.recommended-plan { padding: 19px; }
  #auth-screen { grid-template-columns: minmax(0,1fr) minmax(400px,52%); }
  #auth-screen .auth-card { padding-inline: 30px; }
}
@media (max-width: 900px) {
  #landing-screen .landing-nav nav { background: #fff; border: 1px solid #dce6df; border-radius: 8px; box-shadow: 0 12px 24px #10281d12; }
  #landing-screen .landing-nav-actions { display: none !important; }
  #landing-screen .website-mobile-auth { display: block; }
}
@media (max-width: 720px) {
  #landing-screen .landing-nav { min-height: 68px; padding: 10px 16px; }
  #landing-screen .landing-nav nav { background: #fff; padding: 16px 20px; box-shadow: 0 12px 24px #10281d12; }
  #landing-screen .landing-nav-actions { display: none; }
  body.landing-menu-open #landing-screen .landing-nav-actions { display: flex; background: #fff; }
  #landing-screen .landing-section { padding: 40px 20px; }
  #landing-screen .landing-section h2 { font-size: 29px; }
  body.public-features-page .features-heading, body.public-pricing-page .pricing-heading { min-height: 340px; margin: 0 -20px 40px; padding: 40px 24px; }
  .website-photo-heading h1 { font-size: 38px; }
  #landing-screen .website-photo-heading p { font-size: 15px; }
  .feature-gallery figure { height: 440px; }
  .website-gallery figcaption { padding: 20px 20px 78px; }
  .website-gallery figcaption h3 { font-size: 23px; }
  .website-gallery-controls { left: 18px; right: 18px; }
  #landing-screen .landing-card-grid, #landing-screen .feature-deep-dive { grid-template-columns: 1fr; }
  #landing-screen .feature-spotlight { padding: 24px; }
  body.public-pricing-page #landing-pricing-detail { grid-template-columns: 1fr; gap: 18px; }
  #landing-screen .pricing-comparison-card { padding: 26px; }
  #landing-screen .pricing-comparison-card.recommended-plan { padding: 25px; }
  #landing-screen .pricing-comparison-card > p { min-height: 0; }
  .website-billing-switch label > span { padding: 10px 14px; gap: 6px; }
  .website-billing-switch small { max-width: 95px; line-height: 1.3; font-size: 10px; }
  body.public-pricing-page .website-plan-alternatives { grid-template-columns: 1fr; gap: 28px; }
  body.public-marketplace-page .marketplace-heading-art { position: static; width: 100%; height: 140px; margin-bottom: 26px; }
  body.public-marketplace-page :is(#landing-marketplace-title,#landing-marketplace-copy) { max-width: 100%; }
  body.public-marketplace-page #landing-marketplace-title { font-size: 32px; }
  #landing-screen .landing-marketplace-tools { grid-template-columns: 1fr 1fr; padding: 14px; gap: 8px; margin-top: 24px; }
  #landing-marketplace-search { grid-column: 1 / -1; }
  #landing-screen .landing-marketplace-tools :is(input,select,button) { font-size: 12px; }
  #landing-screen .landing-marketplace-grid { grid-template-columns: 1fr; gap: 22px; }
  #landing-screen .landing-marketplace-card .marketplace-image-button { height: 240px; }
  #landing-screen .marketplace-trust-strip { display: grid; gap: 8px; }
  #auth-screen { grid-template-columns: 1fr; }
  #auth-screen .auth-gallery { position: relative; height: 180px; }
  .auth-gallery figure > img { object-position: center 40%; }
  .auth-gallery figcaption { inset: 0; padding: 18px 24px 46px; background: rgba(6,32,18,.44); }
  .auth-gallery h2 { font-size: 25px; margin: 8px 0; }
  .auth-gallery figcaption :is(span,p) { display: none; }
  .auth-gallery > .website-dots { left: 14px; bottom: 8px; }
  .auth-gallery > .website-dots { padding-inline: 6px; background: rgba(8,25,17,.7); border-radius: 6px; }
  #auth-screen .auth-gallery:has(.product-preview-slide:not([hidden])) { height: 340px; }
  .auth-gallery .product-preview-slide > img { height: 100%; padding: 0; }
  .auth-gallery .product-preview-slide figcaption { display: none; }
  #auth-screen .auth-card { max-width: none; min-height: 0; padding: 24px 24px 90px; gap: 20px; }
  .auth-brand-row { padding-bottom: 8px; }
  #auth-screen h1 { font-size: 27px; }
}
@media (prefers-reduced-motion: reduce) { #landing-screen *, #auth-screen * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }

#landing-screen .legal-contact { display: flex; flex-wrap: wrap; gap: 16px 28px; padding: 24px 0; margin-top: 32px; border-top: 1px solid #ccd9d1; }
#landing-screen .legal-contact a { color: #17613f; font-size: 13px; text-underline-offset: 4px; }
#landing-screen .legal-document li { margin-block: 10px; padding-left: 4px; }
#landing-screen .legal-document > p:first-child { border-left: 3px solid #278563; border-radius: 0; }
#landing-screen .legal-contents a:focus-visible, #landing-screen .legal-related a:focus-visible, #landing-screen .legal-contact a:focus-visible { outline: 2px solid #17613f; outline-offset: 4px; }
@media (max-width: 720px) { #landing-screen .legal-contact { display: grid; grid-template-columns: 1fr; gap: 16px; } }

#landing-screen .website-plan-comparison { display: none; margin-block: 40px; min-width: 0; width: 100%; max-width: 100%; }
body.public-pricing-page #landing-screen .website-plan-comparison { display: block; }
#landing-screen .website-plan-table-scroll { min-width: 0; width: 100%; max-width: 100%; overflow-x: auto; border-block: 1px solid #cad5cf; }
#landing-screen .website-plan-comparison table { width: 100%; min-width: 660px; border-collapse: collapse; color: #202b25; background: #fff; font: 14px/1.5 system-ui, sans-serif; }
#landing-screen .website-plan-comparison th, #landing-screen .website-plan-comparison td { padding: 16px; text-align: left; border-bottom: 1px solid #dce3df; }
#landing-screen .website-plan-comparison thead { background: #edf4f1; }
#landing-screen .website-plan-comparison th { font-weight: 600; }
#landing-screen .website-plan-comparison > p { max-width: 800px; color: #46564d; font-size: 14px; }
#landing-screen .marketplace-loading { grid-column: 1 / -1; color: #34483c; }
#landing-screen .marketplace-skeletons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 16px; }
#landing-screen .marketplace-skeletons > div { min-height: 280px; border: 1px solid #cbd8d0; border-radius: 8px; background: #e9efeb; }
@media (max-width: 720px) { #landing-screen .marketplace-skeletons { grid-template-columns: 1fr; } #landing-screen .marketplace-skeletons > div { min-height: 200px; } }
