/* Erametsaoksjon: dark teal, teal and rust (client design 10/2026). */
:root {
  --emo-deep: #003f37; --emo-teal: #005953; --emo-teal-hover: #00706a; --emo-rust: #a65a29; --emo-rust-hover: #8e4a1f;
  --emo-rust-deep: #8b4a2c; --emo-rust-light: #b06641; --emo-gold: #e0a961; --emo-eyebrow: #b8693a; --emo-dot: #e39b5d;
  --emo-soft: #e8f1f0; --emo-soft-2: #f4f8f7; --emo-sand: #f5ebe2; --emo-red: #d1342b; --emo-red-hover: #b52a22;
  --emo-ink: #26332f; --emo-head: #023b34; --emo-muted: #6d7874; --emo-line: #e3eae8;
  --emo-font-head: 'Plus Jakarta Sans', 'Mulish', sans-serif;
  /* Names used by older rules and the account pages. */
  --emo-green: var(--emo-teal); --emo-green-ink: var(--emo-teal); --emo-orange: var(--emo-rust); --emo-orange-ink: var(--emo-rust-hover); --emo-yellow: var(--emo-gold);
}
body { --wp--preset--color--primary: #005953; --wp--preset--color--secondary: #e8f1f0; --wp--preset--color--tertiary: #f4f8f7; color: var(--emo-ink); }
body h1, body h2, body h3, body h4, body .wp-block-heading { font-family: var(--emo-font-head); letter-spacing: -.01em; }
body h1, body h2, body h3, body h4 { color: var(--emo-head); }
body .wp-block-button__link { border-radius: .45rem; font-family: var(--emo-font-head); font-weight: 700; }

/* Shared pieces */
.emo-eyebrow { margin: 0 0 .6rem !important; color: var(--emo-eyebrow); font-family: var(--emo-font-head); font-size: .8rem !important; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
.emo-section-title { margin: 0 !important; color: var(--emo-head) !important; font-size: clamp(1.8rem, 3.2vw, 2.6rem) !important; font-weight: 800; line-height: 1.15; }
.emo-arrow-link { color: var(--emo-teal) !important; font-family: var(--emo-font-head); font-weight: 700; text-underline-offset: 4px; }
.emo-button-teal, .emo-button-outline { display: inline-block; padding: .9rem 1.8rem; border-radius: .45rem; font-family: var(--emo-font-head); font-weight: 700; text-decoration: none !important; cursor: pointer; }
.emo-button-teal { background: var(--emo-teal); color: #fff !important; }
.emo-button-teal:hover { background: var(--emo-teal-hover); }
.emo-button-outline { border: 1.5px solid var(--emo-teal); background: #fff; color: var(--emo-teal) !important; font-size: 1rem; }
.emo-button-outline:hover { background: var(--emo-soft); }
.emo-tag { display: inline-block; padding: .3rem .7rem; border-radius: 999px; background: #fff; color: var(--emo-head); font-family: var(--emo-font-head); font-size: .72rem; font-weight: 700; line-height: 1.2; white-space: nowrap; }
.emo-tag.is-hot { background: var(--emo-rust); color: #fff; }
.emo-image-placeholder { display: block; background: var(--emo-soft); }

/* Header: contacts on white, auction categories on the dark bar. */
.emo-header { color: var(--emo-ink); }
.emo-header a { text-decoration: none !important; }
.emo-header-inner { display: flex; align-items: center; gap: 1.5rem 2.5rem; max-width: 80rem; margin: 0 auto; padding: 0 1.5rem; box-sizing: border-box; }
.emo-header-top { background: #fff; }
.emo-header-top .emo-header-inner { min-height: 5.6rem; }
.emo-header-logo { flex: none; }
.emo-header-logo .wp-block-site-logo { margin: 0; }
.emo-header-contacts { display: flex; gap: 2rem; }
.emo-header-contact { display: flex; flex-direction: column; color: var(--emo-ink) !important; line-height: 1.3; }
.emo-header-contact small { color: var(--emo-muted); font-size: .8rem; }
.emo-header-contact strong { font-size: 1.05rem; font-weight: 600; white-space: nowrap; }
.emo-header-actions { display: flex; align-items: center; gap: 1.75rem; margin-left: auto; }
.emo-header-account { display: flex; align-items: center; gap: .5rem; white-space: nowrap; color: var(--emo-teal) !important; font-family: var(--emo-font-head); font-weight: 700; }
.emo-header-account .emo-icon { width: 1.35rem; height: 1.35rem; }
.emo-header-calc { display: inline-flex; align-items: center; gap: .55rem; padding: .8rem 1.3rem; border-radius: .45rem; background: var(--emo-rust); color: #fff !important; font-family: var(--emo-font-head); font-weight: 700; }
.emo-header-calc:hover { background: var(--emo-rust-hover); }
.emo-header-calc .emo-icon { width: 1.1rem; height: 1.1rem; }
.emo-header-bar { background: var(--emo-deep); color: #fff; }
.emo-header-bar .emo-header-inner { justify-content: space-between; align-items: stretch; gap: .5rem 1.5rem; min-height: 4rem; }
.emo-header-bar ul { display: flex; align-items: stretch; margin: 0; padding: 0; list-style: none; }
.emo-header-bar ul > li { display: flex; margin: 0; }
.emo-header-cats { gap: .2rem; }
.emo-header-cats a { display: flex; align-items: center; gap: .55rem; padding: 0 .8rem; color: #fff !important; font-family: var(--emo-font-head); font-size: .88rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; white-space: nowrap; }
.emo-header-cats a:hover, .emo-header-cats a.is-active, .emo-header-links > li > a:hover, .emo-header-sub-toggle:hover, .has-sub.is-open > .emo-header-sub-toggle { background: #ffffff14; }
.emo-header-count { display: grid; place-items: center; min-width: 1.5rem; height: 1.5rem; padding: 0 .35rem; border-radius: 999px; background: #ffffff1f; color: var(--emo-gold); font-size: .72rem; font-weight: 700; }
.emo-header-cats a.is-buy { margin: 0 .3rem; border: solid transparent; border-width: .55rem 0; border-radius: .45rem / .95rem; background: var(--emo-red); background-clip: padding-box; }
.emo-header-cats a.is-buy:hover { background-color: var(--emo-red-hover); }
.emo-header-cats a.is-buy .emo-header-count { background: #fff; color: var(--emo-red); }
.emo-header-links { gap: .4rem; }
.emo-header-links li { position: relative; }
.emo-header-links > li > a { display: flex; flex-direction: column; justify-content: center; padding: 0 .8rem; color: #fff !important; line-height: 1.25; }
.emo-header-sub-toggle { display: flex; align-items: center; gap: .45rem; margin: 0; padding: 0 .8rem; border: 0; border-radius: 0; background: transparent; color: #fff; font: inherit; line-height: 1.25; text-align: left; cursor: pointer; }
.emo-header-sub-toggle > span { display: flex; flex-direction: column; }
/* Same as the other header links: the subtitle is not shown. */
.emo-header-sub-toggle small { display: none; }
.emo-header-sub-toggle svg { flex: none; width: 1.1rem; height: 1.1rem; transition: transform .15s; }
.emo-header-sub-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.emo-header-sub-toggle:focus-visible { outline: 2px solid var(--emo-gold); outline-offset: -2px; }
.emo-header-links strong { font-family: var(--emo-font-head); font-size: .88rem; letter-spacing: .04em; text-transform: uppercase; }
.emo-header-links small { color: #ffffffb3; font-size: .76rem; white-space: nowrap; }
.emo-header-sub { position: absolute; top: 100%; left: 0; z-index: 30; display: none !important; flex-direction: column; align-items: stretch !important; min-width: 13rem; padding: .5rem 0 !important; border-radius: .45rem; background: #fff; box-shadow: 0 12px 30px #0000002e; }
.emo-header-sub a { padding: .55rem 1rem; color: var(--emo-ink) !important; font-size: .95rem; }
.emo-header-sub a:hover { background: var(--emo-soft); }
.has-sub.is-open > .emo-header-sub { display: flex !important; }

/* Footer */
.emo-footer { background: var(--emo-deep); color: #fff; }
.emo-footer a { color: #fff !important; text-decoration: underline !important; text-underline-offset: 3px; }
.emo-footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; max-width: 80rem; margin: 0 auto; padding: 3.5rem 1.5rem; box-sizing: border-box; }
.emo-footer-logo img { filter: brightness(0) invert(1); }
.emo-footer-logo .wp-block-site-logo { margin: 0; }
.emo-footer-links { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem 1.8rem; }
.emo-footer-contacts { display: flex; flex-direction: column; align-items: flex-end; gap: .35rem; margin: 0 !important; }
.emo-footer-bottom { border-top: 1px solid #ffffff1f; }
.emo-footer-bottom p { max-width: 80rem; margin: 0 auto !important; padding: 1.4rem 1.5rem; box-sizing: border-box; color: #ffffffb3; font-size: .9rem; }
footer.wp-block-template-part { margin-top: 0 !important; }

/* Category tiles (list and auction page) */
.emo-tiles ul { display: flex; justify-content: center; gap: 1.5rem 3rem; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.emo-tiles li { margin: 0; }
.emo-tiles a { display: flex; flex-direction: column; align-items: center; gap: .7rem; color: var(--emo-teal) !important; text-decoration: none !important; font-size: .98rem; }
.emo-tile-icon { position: relative; display: grid; place-items: center; width: 4.4rem; height: 4.4rem; border-radius: .7rem; background: var(--emo-soft); transition: transform .15s; }
.emo-tiles a:hover .emo-tile-icon { transform: translateY(-2px); }
.emo-tile-svg { width: 2.1rem; height: 2.1rem; }
.emo-tile-count { position: absolute; top: -.6rem; left: -.6rem; display: grid; place-items: center; min-width: 1.5rem; height: 1.5rem; padding: 0 .25rem; border-radius: 999px; background: var(--emo-deep); color: #fff; font-size: .75rem; font-weight: 700; }
.emo-tiles a.is-active .emo-tile-count { background: var(--emo-rust); }
.emo-tile-label { padding: .25rem .8rem; border-radius: .45rem; }
.emo-tiles a.is-active .emo-tile-label { background: var(--emo-teal); color: #fff; font-weight: 700; }

/* Auction list: hero with statistics and the map. */
.emo-env { max-width: none !important; margin-top: 0 !important; margin-bottom: 0 !important; color: var(--emo-ink); }
.emo-hero { position: relative; overflow: hidden; background: var(--emo-teal); color: #fff; padding: 3.5rem 1.5rem; }
.emo-hero::before { content: ''; position: absolute; left: -18rem; bottom: -30rem; width: 46rem; height: 46rem; border-radius: 50%; background: #004a43; }
.emo-hero-inner { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 30rem); align-items: center; gap: 2rem; max-width: 78rem; margin: 0 auto; }
.emo-hero-title { margin: 0 0 1rem !important; color: #fff !important; font-size: clamp(2.2rem, 4.5vw, 3.4rem) !important; font-weight: 800; line-height: 1.1; }
.emo-hero-stats { max-width: 40rem; margin: 0 0 2rem !important; color: #ffffffe6; font-size: 1.1rem; line-height: 1.6; }
.emo-hero-stats strong { color: var(--emo-gold); font-weight: 700; }
.emo-hero-button { display: inline-flex; align-items: center; gap: .8rem; padding: .85rem 1.1rem .85rem 1.3rem; border: 0; border-radius: .45rem; background: var(--emo-rust); color: #fff !important; font: 700 1rem var(--emo-font-head); text-decoration: none !important; cursor: pointer; }
.emo-hero-button span { display: grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: .3rem; background: #ffffff33; font-size: 1.2rem; line-height: 1; }
.emo-hero-button:hover { background: var(--emo-rust-hover); }
.emo-hero-map .emo-map { margin: 0; }

/* Estonia map: white land, a dot per auction; hovering a dot shows the card next to it. */
.emo-map { position: relative; max-width: 44rem; margin: 0 auto; }
.emo-map-svg { display: block; width: 100%; height: auto; }
.emo-map-land polygon { fill: #fff; stroke: #fff; stroke-width: 2; stroke-linejoin: round; }
.emo-map-border polyline { fill: none; stroke: #dbe3e1; stroke-width: 2; stroke-linejoin: round; }
.emo-map-dot { position: absolute; z-index: 1; display: grid; place-items: center; width: .9rem; height: .9rem; margin: -.45rem 0 0 -.45rem; border-radius: 50%; background: var(--emo-dot); box-shadow: 0 0 0 3px #e39b5d40; cursor: pointer; outline: none; }
.emo-map-dot.is-group { width: 1.5rem; height: 1.5rem; margin: -.75rem 0 0 -.75rem; }
.emo-map-count { color: #fff; font-size: .75rem; font-weight: 700; }
.emo-map-dot:hover, .emo-map-dot:focus-visible, .emo-map-dot:has(:focus-visible) { z-index: 10; box-shadow: 0 0 0 5px #e39b5d73; }
/* The card is part of the dot and starts right at its edge (the transparent padding fills the space between them),
   so it stays open while the pointer moves from the dot onto the card and closes when the pointer leaves both. */
.emo-map-pop { position: absolute; top: 50%; right: 100%; display: none; padding-right: .7rem; transform: translateY(-50%); cursor: default; }
.emo-map-dot.is-west .emo-map-pop { right: auto; left: 100%; padding: 0 0 0 .7rem; }
.emo-map-dot:hover .emo-map-pop, .emo-map-dot:focus-visible .emo-map-pop, .emo-map-dot:has(:focus-visible) .emo-map-pop { display: block; }
.emo-map-pop-inner { display: flex; flex-direction: column; gap: .6rem; width: 15.5rem; max-height: 24rem; overflow: auto; }
.emo-map-card { display: flex; flex-direction: column; overflow: hidden; border-radius: .6rem; background: #fff; box-shadow: 0 14px 34px #0000003d; color: var(--emo-ink) !important; text-align: left; text-decoration: none !important; }
.emo-map-card-image { display: block; width: 100%; height: 6.5rem; object-fit: cover; }
.emo-map-card-body { display: flex; flex-direction: column; gap: .15rem; padding: .75rem .9rem .85rem; font-size: .8rem; line-height: 1.35; }
.emo-map-card-kind { color: var(--emo-teal); font-family: var(--emo-font-head); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.emo-map-card-body strong { color: var(--emo-head); font-family: var(--emo-font-head); font-size: 1.05rem; }
.emo-map-card-place { color: var(--emo-muted); }
.emo-map-card-foot { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; margin-top: .45rem; }
.emo-map-card-foot b { color: var(--emo-teal); font-family: var(--emo-font-head); font-size: 1.15rem; }
.emo-map-card-foot small { color: var(--emo-rust); font-size: .75rem; font-weight: 700; white-space: nowrap; }
.emo-map-card:hover strong { text-decoration: underline; }

/* Auction list body */
.emo-env-body { max-width: 52rem; margin: 2.5rem auto 4.5rem; padding: 0 1.25rem; }
.emo-env-body > .emo-tiles { margin-bottom: 2rem; padding-bottom: 1.8rem; border-bottom: 2px solid var(--emo-line); }
.emo-toolbar { display: flex; justify-content: flex-end; align-items: flex-start; gap: .6rem; margin-bottom: 1.25rem; }
.emo-filters { position: relative; }
.emo-filters summary { display: flex; align-items: center; gap: .45rem; padding: .6rem 1rem; border-radius: .45rem; background: var(--emo-soft); color: var(--emo-teal); font-weight: 700; cursor: pointer; list-style: none; }
.emo-filters summary::-webkit-details-marker { display: none; }
.emo-filters summary::before { content: ''; width: 1rem; height: .8rem; background: linear-gradient(currentColor, currentColor) 0 0 / 100% 2px no-repeat, linear-gradient(currentColor, currentColor) 50% 50% / 65% 2px no-repeat, linear-gradient(currentColor, currentColor) 50% 100% / 30% 2px no-repeat; }
.emo-filters-panel { position: absolute; right: 0; z-index: 5; display: flex; flex-direction: column; gap: .8rem; min-width: 15rem; margin-top: .4rem; padding: .9rem; border-radius: .45rem; background: #fff; box-shadow: 0 8px 24px #0000001f; font-size: .9rem; }
.emo-filters-panel label { display: flex; flex-direction: column; gap: .35rem; }
.emo-subscribe { padding: .6rem .8rem; border-radius: .45rem; background: var(--emo-rust); color: #fff !important; font-weight: 700; text-align: center; text-decoration: none !important; }
.emo-toolbar select { min-width: 13rem; padding: .6rem .75rem; border: 1px solid #d5dedb; border-radius: .45rem; background: #fff; font: inherit; }
.emo-empty { padding: 2rem; border-radius: .6rem; background: var(--emo-soft-2); text-align: center; }
.emo-rows { display: flex; flex-direction: column; gap: 1rem; margin: 0; padding: 0; list-style: none; }
.emo-rows li { margin: 0; }
.emo-row { display: grid; grid-template-columns: 1fr 12rem; overflow: hidden; border: 1px solid var(--emo-line); border-radius: .7rem; background: #fff; color: var(--emo-ink) !important; text-decoration: none !important; transition: box-shadow .15s; }
.emo-row:hover { box-shadow: 0 8px 24px #0000001a; }
.emo-row-main { display: flex; flex-direction: column; }
.emo-row-title { padding: 1.1rem 1.2rem 0; color: var(--emo-teal); font-family: var(--emo-font-head); font-size: 1.2rem; font-weight: 800; }
.emo-row-location { padding: .15rem 1.2rem 0; color: var(--emo-muted); font-size: .85rem; }
.emo-row-facts { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; padding: 1.2rem 1.2rem 1rem; }
.emo-row-band { background: var(--emo-soft-2); }
.emo-fact { display: flex; flex-direction: column; }
.emo-fact strong { color: var(--emo-ink); font-size: 1rem; font-weight: 700; }
.emo-fact span { color: var(--emo-muted); font-size: .8rem; }
.emo-fact.is-buy strong { color: var(--emo-red); }
.emo-row-codes { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; padding: .8rem 1.2rem 1rem; font-size: .78rem; }
.emo-row-side { display: flex; flex-direction: column; border-left: 1px solid var(--emo-line); }
.emo-row-media { position: relative; display: block; }
.emo-row-media .emo-tag { position: absolute; top: .55rem; left: .55rem; }
.emo-row-image { display: block; width: 100%; height: 7.6rem; object-fit: cover; }
.emo-row-price { display: flex; flex-direction: column; align-items: flex-end; padding: .9rem 1rem 0; }
.emo-row-price strong { color: var(--emo-teal); font-family: var(--emo-font-head); font-size: 1.35rem; font-weight: 800; }
.emo-row-price span { color: var(--emo-muted); font-size: .8rem; }
.emo-row-end { display: flex; justify-content: flex-end; align-items: center; gap: .45rem; padding: .6rem 1rem 1rem; font-size: .82rem; font-weight: 700; }
.emo-row-end .emo-icon { width: 1rem; height: 1rem; color: var(--emo-rust); }
.emo-result-label { align-self: flex-end; margin: .5rem 1rem 0; padding: .25rem .6rem; border-radius: .35rem; background: #eef0ef; color: var(--emo-ink); font-size: .8rem; font-weight: 700; }
.emo-result-label.is-sold { background: var(--emo-soft); color: var(--emo-teal); }
.emo-result-label.is-buy { background: var(--emo-red); color: #fff; }
.emo-show-more { margin: 1.75rem 0 0 !important; text-align: center; }

/* Front page cards */
.emo-teaser { max-width: 78rem; margin: 0 auto; }
.emo-teaser-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem 2rem; flex-wrap: wrap; margin-bottom: 2rem; }
.emo-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.emo-cards li { margin: 0; }
.emo-card { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid var(--emo-line); border-radius: .8rem; background: #fff; color: var(--emo-ink) !important; text-decoration: none !important; transition: box-shadow .15s, transform .15s; }
.emo-card:hover { box-shadow: 0 12px 30px #00000017; transform: translateY(-2px); }
.emo-card-media { position: relative; display: block; }
.emo-card-image { display: block; width: 100%; height: 11.5rem; object-fit: cover; }
.emo-card-tags { position: absolute; top: .8rem; left: .8rem; right: .8rem; display: flex; justify-content: space-between; gap: .5rem; }
.emo-card-body { display: flex; flex: 1; flex-direction: column; padding: 1.3rem 1.4rem 1.4rem; }
.emo-card-title { color: var(--emo-head); font-family: var(--emo-font-head); font-size: 1.25rem; font-weight: 800; }
.emo-card-place { margin-top: .15rem; color: var(--emo-muted); font-size: .85rem; }
.emo-card-facts { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin: 1rem 0 1.2rem; }
.emo-card-foot { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--emo-line); }
.emo-card-foot small { display: block; color: var(--emo-muted); font-size: .75rem; }
.emo-card-price b { color: var(--emo-teal); font-family: var(--emo-font-head); font-size: 1.5rem; font-weight: 800; }
.emo-card-end { text-align: right; font-size: .82rem; }
.emo-teaser-more { margin: 2rem 0 0 !important; text-align: center; }

/* Front page hero: title, consultation form and the map on a forest photo. */
.emo-front-hero { min-height: 0 !important; padding: 4.5rem 1.5rem !important; }
.emo-front-hero > .wp-block-cover__inner-container { max-width: 78rem !important; margin: 0 auto; }
.emo-front-hero-inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); align-items: center; gap: 2.5rem; }
.emo-front-hero-inner > * { margin: 0 !important; }
.emo-front-title { margin: 0 0 1.8rem !important; color: #fff !important; font-size: clamp(2.3rem, 4.6vw, 3.6rem) !important; font-weight: 800; line-height: 1.08; }
.emo-front-lead .emo-lead-title { font-size: 1.6rem !important; }
.emo-front-summary { margin: 1.6rem 0 0 !important; }
.emo-front-summary a { color: #fff !important; font-weight: 600; text-decoration: underline; text-decoration-color: #ffffff66; text-underline-offset: 4px; }
.emo-front-summary a span:first-child { color: var(--emo-gold); }
.emo-front-map .emo-map { max-width: 34rem; }
.emo-front-hero p:empty, .emo-calc-section p:empty { display: none; }

/* Consultation form (front page hero and pop-up). */
.emo-lead { display: flex; flex-direction: column; gap: 1rem; color: #fff; text-align: left; }
.emo-lead-title { margin: 0 !important; color: #fff !important; font-size: clamp(1.4rem, 2.6vw, 1.8rem) !important; font-weight: 700; line-height: 1.2; }
.emo-lead-intro { margin: 0 !important; color: #ffffffd9; font-size: .98rem; }
.emo-lead-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem 1rem; }
.emo-lead-grid label { display: flex; flex-direction: column; gap: .35rem; margin: 0; }
.emo-lead-label { color: #ffffffe6; font-size: .82rem; font-weight: 700; }
.emo-lead input[type=text], .emo-lead input[type=email], .emo-lead input[type=tel] { box-sizing: border-box; width: 100%; height: 3rem; padding: 0 1rem; border: 1px solid #ffffff2e; border-radius: .45rem; background: #ffffff1a; color: #fff; font: inherit; }
.emo-lead input:focus { outline: 2px solid var(--emo-gold); outline-offset: 1px; }
.emo-lead-consent { display: flex; align-items: center; gap: .6rem; font-size: .92rem; }
.emo-lead-consent input { width: 1.2rem; height: 1.2rem; margin: 0; accent-color: var(--emo-rust); }
.emo-lead-consent a { color: inherit !important; text-decoration: underline; }
.emo-lead-submit { align-self: flex-start; padding: .85rem 1.7rem; border: 0; border-radius: .45rem; background: var(--emo-rust); color: #fff; font: 700 1rem var(--emo-font-head); cursor: pointer; }
.emo-lead-submit:hover { background: var(--emo-rust-hover); }
.emo-lead-done, .emo-lead-error { margin: 0 !important; padding: .7rem 1rem; border-radius: .45rem; font-weight: 600; }
.emo-lead-done { background: var(--emo-soft); color: var(--emo-teal); }
.emo-lead-error { background: #fff0f0; color: #b52f2f; }
.emo-lead-trap { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.emo-lead-dialog { box-sizing: border-box; width: min(40rem, calc(100vw - 2rem)); max-width: calc(100% - 2rem); max-height: calc(100dvh - 2rem); overflow: auto; padding: 2.2rem; border: 0; border-radius: .8rem; background: var(--emo-deep); box-shadow: 0 24px 70px #0006; }
.emo-lead-dialog::backdrop { background: #001f1b99; }
.emo-lead-close { position: absolute; top: .6rem; right: .8rem; border: 0; background: none; color: #fff; font-size: 1.8rem; line-height: 1; cursor: pointer; }

/* Front page sections */
.emo-front-auctions { padding: 5rem 1.5rem !important; background: #fff; }
.emo-calc-section { position: relative; overflow: hidden; padding: 5rem 1.5rem !important; background: var(--emo-deep); color: #fff; }
.emo-calc-section::after { content: ''; position: absolute; right: -8rem; bottom: -14rem; width: 30rem; height: 30rem; border-radius: 50%; border: 5rem solid #ffffff0a; }
.emo-calc-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; gap: 3rem; max-width: 78rem; margin: 0 auto; }
.emo-calc-inner > * { margin: 0 !important; }
.emo-calc-section .emo-eyebrow { color: var(--emo-gold); }
.emo-calc-title { margin: 0 0 1rem !important; color: #fff !important; font-size: clamp(1.9rem, 3.4vw, 2.6rem) !important; font-weight: 800; }
.emo-calc-text p:not(.emo-eyebrow) { max-width: 30rem; color: #ffffffd9; }
.emo-why, .emo-sell { padding: 5rem 1.5rem !important; background: #fff; }
.emo-why { border-bottom: 1px solid var(--emo-line); }
.emo-why > *, .emo-sell > * { max-width: 78rem; margin-left: auto !important; margin-right: auto !important; }
.emo-why .emo-section-title { margin-bottom: 2.5rem !important; text-align: center; }
.emo-why-grid, .emo-sell-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.emo-why-grid > *, .emo-sell-grid > * { margin: 0 !important; }
.emo-why-card { padding: 1.8rem; border: 1px solid var(--emo-line); border-radius: .8rem; }
.emo-why-card::before { content: ''; display: block; width: 3rem; height: 3rem; margin-bottom: 1.2rem; border-radius: .6rem; background: var(--emo-teal) var(--emo-why-icon) center / 1.5rem no-repeat; }
.emo-why-card.is-team { --emo-why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0a961' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='9' cy='8' r='3.2'/%3E%3Cpath d='M3 19c0-3.3 2.7-5.5 6-5.5s6 2.2 6 5.5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M16.5 13.6c2.6.2 4.5 2.1 4.5 4.9'/%3E%3C/svg%3E"); }
.emo-why-card.is-tree { --emo-why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0a961' stroke-width='1.8' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M12 3 6.5 11H9l-4 6h14l-4-6h2.5z'/%3E%3Cpath d='M12 17v4'/%3E%3C/svg%3E"); }
.emo-why-card.is-chart { --emo-why-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0a961' stroke-width='1.8' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M4 4v16h16'/%3E%3Cpath d='m7 15 4-4 3 3 5-6'/%3E%3C/svg%3E"); }
.emo-why-card h3 { margin: 0 0 .6rem !important; font-size: 1.2rem !important; font-weight: 800; }
.emo-why-card p { margin: 0 !important; color: var(--emo-muted); font-size: .95rem; }
.emo-sell .emo-section-title { margin-bottom: 2.5rem !important; }
.emo-sell-card { position: relative; overflow: hidden; display: flex; flex-direction: column; min-height: 15rem; padding: 2rem; border-radius: .8rem; background: var(--emo-teal); color: #fff; }
.emo-sell-card::after { content: ''; position: absolute; right: -6rem; bottom: -9rem; width: 17rem; height: 17rem; border-radius: 50%; background: var(--emo-deep); }
.emo-sell-card.is-cut { background: var(--emo-deep); }
.emo-sell-card.is-cut::after { background: var(--emo-teal); }
.emo-sell-card.is-field { background: var(--emo-rust-deep); }
.emo-sell-card.is-field::after { background: var(--emo-rust-light); }
.emo-sell-card > * { position: relative; z-index: 1; }
.emo-sell-card h3 { margin: 0 0 .8rem !important; color: #fff !important; font-size: 1.5rem !important; font-weight: 800; }
.emo-sell-card p { margin: 0 !important; color: #ffffffd9; font-size: .95rem; }
.emo-sell-card .emo-sell-link { margin-top: auto !important; padding-top: 1.5rem; }
.emo-sell-link a { color: var(--emo-gold) !important; font-weight: 700; text-decoration: none !important; }
.emo-sell-card.is-field .emo-sell-link a { color: #fff !important; }
.emo-sell-link a::after { content: ''; position: absolute; inset: 0; z-index: 2; }

/* Price calculator (separate plugin): its colour variables, and on the front page one white card in the dark section. */
.calculator-standalone, .maahinna-calculator-modal { --mh-background: #ffffff; --mh-text: #26332f; --mh-primary: #005953; --mh-secondary: #8a9592; --mh-line: #e3eae8; --mh-white: #ffffff; --mh-choice-active: #005953; --mh-choice-border: #9fb1ad; }
.emo-calc-section .calculator-standalone, .emo-calc-section .calculator-standalone .kalkulaator, .emo-calc-section .calculator-standalone .kalkulaator .container { background: transparent !important; color: var(--emo-ink); }
.emo-calc-section .calculator-standalone .kalkulaator { min-height: 0 !important; margin: 0 !important; padding: 0 !important; }
.emo-calc-section .calculator-standalone .kalkulaator > h2 { display: none; }
.emo-calc-section .calculator-standalone .kalkulaator .container, .emo-calc-section .calculator-standalone .kalkulaator .row { max-width: none !important; margin: 0 !important; padding: 0 !important; }
.emo-calc-section .calculator-standalone #multiStepForm { max-width: none !important; margin: 0 !important; padding: 2rem 2.2rem 1.8rem !important; border-radius: .8rem; background: #fff !important; box-shadow: 0 20px 50px #00000033; }
.emo-calc-section .calculator-standalone .kalkulaator .vali { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
.emo-calc-section .calculator-standalone .kalkulaator .vali > .col { padding: 0 !important; }
.emo-calc-section .calculator-standalone .kalkulaator h3 { margin: 0 0 1.2rem !important; padding: 0 !important; color: var(--emo-head) !important; font: 800 1.25rem/1.3 var(--emo-font-head) !important; text-align: left !important; }
.emo-calc-section .calculator-standalone .steps-container { display: flex; align-items: center; max-width: none !important; margin: 0 0 1.8rem !important; padding: 0 !important; counter-reset: emo-step; }
.emo-calc-section .calculator-standalone .steps-container .step { display: flex; flex: 1; align-items: center; margin: 0 !important; padding: 0 !important; text-align: left; counter-increment: emo-step; }
.emo-calc-section .calculator-standalone .steps-container .step:last-child { flex: none; }
.emo-calc-section .calculator-standalone .steps-container .step:not(:last-child)::after { content: ''; position: static !important; flex: 1; width: auto !important; height: 2px !important; margin: 0 .6rem; transform: none !important; background: var(--emo-line) !important; }
.emo-calc-section .calculator-standalone .steps-container .step.active:not(:last-child)::after { background: var(--emo-teal) !important; }
.emo-calc-section .calculator-standalone .step-icon { display: grid !important; place-items: center; flex: none; width: 2rem !important; height: 2rem !important; margin: 0 !important; border: 1.5px solid #cfd8d5; border-radius: 50%; background: #fff !important; }
.emo-calc-section .calculator-standalone .step-icon img { display: none !important; }
.emo-calc-section .calculator-standalone .step-icon::before { content: counter(emo-step); color: var(--emo-muted); font-size: .8rem; font-weight: 700; line-height: 1; }
.emo-calc-section .calculator-standalone .step.active .step-icon { border-color: var(--emo-teal); background: var(--emo-teal) !important; }
.emo-calc-section .calculator-standalone .step.active .step-icon::before { color: #fff; }
.emo-calc-section .calculator-standalone .calculation-type-step form { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; padding: 0 !important; }
.emo-calc-section .calculator-standalone .calculation-type-step .calculation-choice-row { gap: .8rem; min-height: 3.6rem !important; margin: 0 !important; padding: 0 1.1rem !important; border: 1.5px solid var(--emo-line); border-radius: .5rem; }
.emo-calc-section .calculator-standalone .calculation-choice-row:has(input:checked) { border-color: var(--emo-teal); background: var(--emo-soft); }
.emo-calc-section .calculator-standalone .custom-radio-input { width: 1.2rem !important; height: 1.2rem !important; flex-basis: 1.2rem !important; border-width: 1.5px !important; border-radius: 50% !important; }
.emo-calc-section .calculator-standalone .custom-radio-input:checked { border-color: var(--emo-teal) !important; background: var(--emo-teal) !important; box-shadow: inset 0 0 0 3px #fff; }
.emo-calc-section .calculator-standalone .custom-radio-label { flex: 1; color: var(--emo-ink); font-size: 1rem !important; }
.emo-calc-section .calculator-standalone .kalkulaator .vali .nupp { grid-column: 1 / -1; display: flex; justify-content: flex-end; margin-top: .4rem; padding: 0 !important; }
.emo-calc-section .calculator-standalone .btn-orange { display: inline-flex; align-items: center; gap: .5rem; padding: .8rem 1.6rem !important; border: 0 !important; border-radius: .45rem !important; background: var(--emo-rust) !important; color: #fff !important; font-family: var(--emo-font-head); font-weight: 700; }
.emo-calc-section .calculator-standalone .btn-orange:hover { background: var(--emo-rust-hover) !important; }
.emo-calc-section .calculator-standalone .btn-orange svg { width: .9rem; fill: currentColor; }
.emo-calc-section .calculator-standalone .btn-orange:disabled { opacity: .55; }
.emo-calc-section .calculator-standalone .btn:not(.btn-orange) { border-radius: .45rem; }
.calculator-standalone .vali, .calculator-standalone .vali *:not(h3), .maahinna-calculator-modal .modal-body { font-family: 'Mulish', sans-serif !important; }
.calculator-standalone .btn-orange:hover, .calculator-standalone .btn-lae:hover, .maahinna-calculator-modal .btn-orange:hover, .maahinna-calculator-modal .btn-lae:hover { background: var(--emo-teal-hover); }
.emo-calc-section .calculator-standalone .btn-orange:disabled, .emo-calc-section .calculator-standalone .btn-orange.disabled { background: var(--emo-rust) !important; color: #fff !important; box-shadow: none !important; opacity: .5; }

/* The calculator plugin's custom CSS setting uses the old palette with !important: the section's rules are more specific. */
.emo-calc-section .calculator-standalone .kalkulaator .vali { color: var(--emo-ink) !important; }
.emo-calc-section .calculator-standalone input[type="radio"], .emo-calc-section .calculator-standalone input[type="checkbox"] { accent-color: var(--emo-teal) !important; }
.emo-calc-section .calculator-standalone input[type="checkbox"] { border-color: #9fb1ad !important; }
.emo-calc-section .calculator-standalone input[type="checkbox"]:checked { border-color: var(--emo-teal) !important; background-color: var(--emo-teal) !important; }
.emo-calc-section .calculator-standalone .btn-orange { font-size: 1rem !important; font-weight: 700 !important; font-family: var(--emo-font-head) !important; }
.emo-calc-section .calculator-standalone .btn-secondary { border: 1.5px solid var(--emo-teal) !important; border-radius: .45rem !important; background: #fff !important; color: var(--emo-teal) !important; font-weight: 700; }
.emo-calc-section .calculator-standalone .btn-secondary:hover { background: var(--emo-soft) !important; color: var(--emo-teal) !important; }
.emo-calc-section .calculator-standalone .alert, .emo-calc-section .calculator-standalone .vali p[style*="background-color"], .emo-calc-section .calculator-standalone .kalkulaator .vali .alert.alert-success, .emo-calc-section .calculator-standalone .kalkulaator .vali .alert.alert-warning, .emo-calc-section .calculator-standalone .radio-container { border-radius: .5rem; background: var(--emo-soft) !important; color: var(--emo-ink) !important; }
.emo-calc-section .calculator-standalone .form-control { border: 1px solid #cfd8d5 !important; border-radius: .45rem; color: var(--emo-ink) !important; }
.emo-calc-section .calculator-standalone .form-control:focus { border-color: var(--emo-teal) !important; box-shadow: 0 0 0 2px #00595324 !important; }
.emo-calc-section .calculator-standalone #results > div:hover { background: var(--emo-soft) !important; }
.emo-calc-section .calculator-standalone .steps-container .step:not(:last-child)::after { background: var(--emo-line) !important; }
.emo-calc-section .calculator-standalone .steps-container .step.active:not(:last-child)::after, .emo-calc-section .calculator-standalone .steps-container .step.completed:not(:last-child)::after { background: var(--emo-teal) !important; }

/* Seller and buyer pages */
.emo-page { margin-top: 0 !important; margin-bottom: 0 !important; }
.emo-page > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.emo-page-hero { padding: 4rem 1.5rem 4.5rem !important; background: var(--emo-deep); color: #fff; }
.emo-page-hero.is-rust { background: var(--emo-rust-deep); }
.emo-page-hero-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 3rem; max-width: 78rem; margin: 0 auto; }
.emo-page-hero-inner > * { margin: 0 !important; }
.emo-page-hero .emo-eyebrow { color: var(--emo-gold); }
.emo-page-hero.is-rust .emo-eyebrow { color: #f3d3bd; }
.emo-page-hero h1 { margin: 0 0 1.2rem !important; color: #fff !important; font-size: clamp(2.4rem, 5vw, 3.6rem) !important; font-weight: 800; line-height: 1.05; }
.emo-page-hero-lead { max-width: 30rem; margin: 0 !important; color: #ffffffd9; font-size: 1.05rem; line-height: 1.65; }
.emo-page-hero-buttons { margin-top: 1.8rem !important; gap: .8rem; }
.emo-btn-primary .wp-block-button__link { padding: .85rem 1.4rem; background: var(--emo-rust); color: #fff; }
.emo-btn-primary .wp-block-button__link:hover { background: var(--emo-rust-hover); }
.emo-btn-ghost .wp-block-button__link { padding: calc(.85rem - 1px) 1.4rem; border: 1px solid #ffffff80; background: transparent; color: #fff; }
.emo-btn-ghost .wp-block-button__link:hover { background: #ffffff14; }
.emo-btn-white .wp-block-button__link { padding: .85rem 1.4rem; background: #fff; color: var(--emo-rust-deep); }
.emo-page-hero-image { margin: 0 !important; }
.emo-page-hero-image img { display: block; width: 100%; height: 22rem; border-radius: .9rem; object-fit: cover; }
.emo-page-cover { min-height: 0 !important; padding: 5rem 1.5rem !important; }
.emo-page-cover > .wp-block-cover__inner-container { max-width: 78rem !important; margin: 0 auto; }
.emo-page-cover h1 { margin: 0 0 1.2rem !important; color: #fff !important; font-size: clamp(2.6rem, 5.5vw, 4rem) !important; font-weight: 800; }
.emo-page-cover .emo-eyebrow { color: var(--emo-gold); }
.emo-page-cover p:not(.emo-eyebrow) { max-width: 36rem; color: #ffffffd9; font-size: 1.15rem; }
.emo-page-body { max-width: 78rem; margin: 0 auto !important; padding: 4.5rem 1.5rem 5rem; box-sizing: border-box; }
.emo-page-body > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.emo-page-body > * + * { margin-top: 1.25rem !important; }
.emo-page-body > .emo-check-box, .emo-page-body > .emo-sand-box, .emo-page-body > .emo-cta, .emo-page-body > .emo-process-title { margin-top: 3.5rem !important; }
.emo-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.emo-info-grid > * { margin: 0 !important; }
.emo-info-card { padding: 1.8rem 2rem; border: 1px solid var(--emo-line); border-radius: .8rem; background: #fff; }
.emo-info-card.is-wide { grid-column: 1 / -1; }
.emo-info-card h2, .emo-info-card h3 { margin: 0 0 .8rem !important; font-size: 1.3rem !important; font-weight: 800; }
.emo-info-card p { margin: 0 !important; color: #55615d; font-size: .98rem; line-height: 1.7; }
.emo-info-card p + p { margin-top: .7rem !important; }
.emo-check-box { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem 3rem; padding: 2.2rem 2.4rem; border-radius: .8rem; background: var(--emo-soft); }
.emo-check-box > * { margin: 0 !important; }
.emo-check-box h2 { margin: 0 0 .8rem !important; font-size: 1.5rem !important; font-weight: 800; }
.emo-check-box p { margin: 0 !important; color: #55615d; }
.emo-checklist { margin: 0 !important; padding: 0 !important; list-style: none; }
.emo-checklist li { position: relative; margin: 0 0 .85rem; padding-left: 1.9rem; }
.emo-checklist li:last-child { margin-bottom: 0; }
.emo-checklist li::before { content: ''; position: absolute; left: .1rem; top: .35rem; width: .8rem; height: .45rem; border: solid var(--emo-rust); border-width: 0 0 2px 2px; transform: rotate(-45deg); }
.emo-process-title { margin-bottom: 1.5rem !important; font-size: clamp(1.8rem, 3vw, 2.4rem) !important; font-weight: 800; }
.emo-page-body > .emo-process { margin-top: 0 !important; }
.emo-process { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0 !important; padding: 0 !important; list-style: none; counter-reset: emo-process; }
.emo-process li { position: relative; margin: 0; padding: 1.3rem 1.4rem 1.3rem 3.2rem; border: 1px solid var(--emo-line); border-radius: .7rem; background: #fff; color: #55615d; font-size: .96rem; line-height: 1.6; counter-increment: emo-process; }
.emo-process li::before { content: counter(emo-process); position: absolute; left: 1.4rem; top: 1.2rem; color: var(--emo-rust); font-family: var(--emo-font-head); font-size: 1.3rem; font-weight: 800; }
.emo-note-dark { padding: 1.8rem 2rem; border-radius: .8rem; background: var(--emo-deep); color: #fff; }
.emo-note-dark h3 { margin: 0 0 .6rem !important; color: #fff !important; font-size: 1.1rem !important; font-weight: 800; }
.emo-note-dark p { margin: 0 !important; color: #ffffffd9; font-size: .96rem; line-height: 1.7; }
.emo-sand-box { padding: 2.2rem 2.4rem; border-radius: .8rem; background: var(--emo-sand); }
.emo-sand-box > * { margin: 0 !important; }
.emo-sand-box h2 { margin: 0 0 .7rem !important; font-size: 1.6rem !important; font-weight: 800; }
.emo-sand-box > p { max-width: 44rem; color: #55615d; }
.emo-sand-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1.5rem !important; }
.emo-sand-grid > * { margin: 0 !important; }
.emo-sand-card { padding: 1.4rem 1.5rem; border-radius: .6rem; background: #fff; }
.emo-sand-card h3 { margin: 0 0 .5rem !important; color: var(--emo-rust-deep) !important; font-size: 1.05rem !important; font-weight: 800; }
.emo-sand-card p { margin: 0 !important; color: #55615d; font-size: .94rem; line-height: 1.65; }
.emo-cta { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem 3rem; padding: 2.6rem 3rem; border-radius: .9rem; background: var(--emo-teal); color: #fff; }
.emo-cta::after { content: ''; position: absolute; right: -9rem; top: -6rem; width: 26rem; height: 26rem; border-radius: 50%; background: var(--emo-deep); }
.emo-cta > * { position: relative; z-index: 1; margin: 0 !important; }
.emo-cta h2 { margin: 0 0 .6rem !important; color: #fff !important; font-size: clamp(1.6rem, 3vw, 2.1rem) !important; font-weight: 800; }
.emo-cta p { margin: 0 !important; max-width: 44rem; color: #ffffffd9; }
.emo-cta .wp-block-buttons { flex: none; }
.emo-steps-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.emo-steps-grid > * { margin: 0 !important; }
.emo-step-card { padding: 1.8rem 2rem; border: 1px solid var(--emo-line); border-radius: .8rem; background: #fff; }
.emo-step-card.is-wide { grid-column: 1 / -1; }
.emo-step-num { display: grid; place-items: center; width: 3.4rem; height: 3.4rem; margin: 0 0 1.5rem !important; border-radius: 50%; background: var(--emo-teal); color: var(--emo-gold); font-family: var(--emo-font-head); font-size: 1.35rem; font-weight: 800; }
.emo-step-card.is-wide .emo-step-num { background: var(--emo-rust); color: #fff; }
.emo-step-card p:not(.emo-step-num) { margin: 0 !important; color: #55615d; font-size: 1.02rem; line-height: 1.65; }

/* My account: tabs, Logi välja on the right. */
.woocommerce-account .entry-content > .woocommerce, .woocommerce-account .woocommerce { max-width: 78rem; margin: 0 auto; }
.woocommerce-account .woocommerce-MyAccount-navigation { float: none !important; width: auto !important; margin: 0 0 2.2rem !important; padding-bottom: 1.2rem; border-bottom: 2px solid var(--emo-line); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 !important; padding: 0 !important; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: .75rem 1.3rem; border: 1px solid transparent; border-radius: .5rem; background: var(--emo-soft); color: var(--emo-teal) !important; font-family: var(--emo-font-head); font-weight: 700; text-decoration: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: #d9e8e6; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: var(--emo-teal); color: #fff !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout { margin-left: auto !important; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a { border-color: var(--emo-line) !important; background: #fff !important; color: var(--emo-rust) !important; }
.woocommerce-account .woocommerce-MyAccount-content { float: none !important; width: auto !important; }
.emo-account-title { max-width: 78rem; margin: 3rem auto 2rem !important; color: var(--emo-head) !important; font-size: clamp(2.2rem, 4vw, 2.8rem) !important; font-weight: 800; }
.emo-portal.is-eid { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1rem 1.8rem; padding: 2rem 2.2rem; border: 1px solid var(--emo-line); border-radius: .9rem; background: #fff; }
.emo-portal.is-eid::before { content: ''; width: 3.6rem; height: 3.6rem; border-radius: .7rem; background: var(--emo-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0a961' stroke-width='1.8' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M6 3h8l4 4v14H6z'/%3E%3Cpath d='M14 3v4h4'/%3E%3Cpath d='M9 16c1-1.5 2-1.5 3 0s2 1.5 3 0'/%3E%3C/svg%3E") center / 1.7rem no-repeat; grid-row: span 2; }
.emo-portal.is-eid h2 { margin: 0 !important; color: var(--emo-head) !important; font-size: 1.5rem !important; font-weight: 800; }
.emo-portal.is-eid p { margin: 0 !important; color: #55615d; grid-column: 2; }
.emo-portal-eid { grid-column: 3; grid-row: 1 / span 2; padding: .95rem 1.6rem; border-radius: .5rem; background: var(--emo-rust); color: #fff !important; font-family: var(--emo-font-head); font-weight: 700; text-decoration: none !important; white-space: nowrap; }
.emo-portal-eid:hover { background: var(--emo-rust-hover); }
/* Roles: "Vali roll" after login, the role line on Minu konto and on the auction page. */
.emo-role-picker { max-width: 34rem; margin: 2rem auto; padding: 2.2rem; border: 1px solid var(--emo-line); border-radius: .9rem; background: #fff; text-align: center; }
.emo-role-picker h1 { margin: 0 0 .5rem !important; font-size: 1.8rem !important; font-weight: 800; }
.emo-role-picker > p { margin: 0 0 1.4rem; color: var(--emo-muted); }
.emo-role-picker ul { display: grid; gap: .7rem; margin: 0; padding: 0; list-style: none; }
.emo-role { display: flex; align-items: center; gap: 1rem; width: 100%; padding: 1rem 1.1rem; border: 1px solid var(--emo-line); border-radius: .6rem; background: #fff; color: var(--emo-ink); font: inherit; text-align: left; cursor: pointer; }
.emo-role:hover:not(:disabled), .emo-role:focus-visible { border-color: var(--emo-teal); background: var(--emo-soft-2); }
.emo-role.is-current { border-color: var(--emo-teal); }
.emo-role:disabled { cursor: default; background: var(--emo-soft-2); }
.emo-role:disabled .emo-role-icon { background: #9aa8a4; color: #fff; }
.emo-role-status, .emo-role-wait { color: var(--emo-rust-deep); font-size: .85rem; font-weight: 600; }
.emo-role-icon { display: grid; flex: none; place-items: center; width: 2.8rem; height: 2.8rem; border-radius: .55rem; background: var(--emo-teal); color: var(--emo-gold); }
.emo-role-icon svg { width: 1.4rem; height: 1.4rem; }
.emo-role-text { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.emo-role-text strong { color: var(--emo-head); font-family: var(--emo-font-head); }
.emo-role-text small { color: var(--emo-muted); font-size: .85rem; }
.emo-role-arrow { color: var(--emo-teal); font-size: 1.6rem; line-height: 1; }
.emo-role-add { margin: 1.3rem 0 0; }
.emo-role-add a, .emo-role-bar a, .emo-role-back a, .emo-role-line a { color: var(--emo-teal) !important; font-weight: 700; }
.emo-role-bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .5rem 1.5rem; margin: 0 0 1.5rem; padding: .9rem 1.2rem; border-radius: .6rem; background: var(--emo-soft-2); }
.emo-role-bar p { margin: 0 !important; }
.emo-role-bar p + p { display: flex; gap: 1.2rem; }
.emo-role-bar p.emo-role-wait { display: block; flex-basis: 100%; }
.emo-role-back { margin: 0 0 1rem; }
.emo-role-line { margin: .5rem 0 0; color: var(--emo-muted); font-size: .9rem; }
/* Minu konto: clients sign in only with eID, so the "või" divider and the password block heading go. */
.emo-eid-entry .emo-login-divider, .emo-eid-entry .emo-password-login > .emo-account-title { display: none; }

/* Oksjonite lisamine (/oksjoni-lisamine/): large, plain form for staff. */
.emo-ed { max-width: 52rem; margin: 2rem auto; font-size: 1.08rem; }
.emo-ed [hidden] { display: none !important; }
.emo-ed h1 { margin: 0 !important; font-size: 2rem !important; font-weight: 800; }
.emo-ed h2 { margin: 1.6rem 0 1rem !important; font-size: 1.45rem !important; }
.emo-ed a { color: var(--emo-teal) !important; font-weight: 700; }
.emo-ed a.emo-ed-button { color: #fff !important; }
.emo-ed a.emo-ed-button.is-light { color: var(--emo-teal) !important; }
.emo-ed-top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: .5rem 1rem; margin-bottom: 1.2rem; }
.emo-ed-top p { margin: 0; color: var(--emo-muted); }
.emo-ed-notice { padding: .9rem 1.1rem; border-radius: .5rem; background: var(--emo-soft); color: var(--emo-head); font-weight: 600; }
.emo-ed-notice.is-error { background: #fdecea; color: #8c1d16; }
.emo-ed-notice ul { margin: .4rem 0 0; padding-left: 1.3rem; font-weight: 500; }
.emo-ed-button { display: inline-block; padding: .9rem 1.6rem; border: 2px solid var(--emo-teal); border-radius: .5rem; background: var(--emo-teal); color: #fff !important; font: inherit; font-family: var(--emo-font-head); font-weight: 700; text-decoration: none !important; cursor: pointer; }
.emo-ed-button:hover { background: var(--emo-teal-hover); }
.emo-ed-button.is-light { background: #fff; color: var(--emo-teal) !important; }
.emo-ed-button.is-light:hover { background: var(--emo-soft-2); }
.emo-ed-delete { margin-left: auto; padding: .9rem .4rem; border: 0; background: none; color: #a32a22; font: inherit; font-weight: 700; text-decoration: underline; cursor: pointer; }
.emo-ed-table { width: 100%; border-collapse: collapse; }
.emo-ed-table th, .emo-ed-table td { padding: .75rem .6rem; border-bottom: 1px solid var(--emo-line); text-align: left; vertical-align: top; }
.emo-ed-actions a { margin-right: .8rem; white-space: nowrap; }
.emo-ed-step { margin: 0 0 1.4rem; padding: 1.4rem 1.5rem; border: 1px solid var(--emo-line); border-radius: .8rem; background: #fff; }
.emo-ed-step legend { display: flex; align-items: center; gap: .6rem; padding: 0 .4rem; color: var(--emo-head); font-family: var(--emo-font-head); font-size: 1.2rem; font-weight: 800; }
.emo-ed-step legend span { display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: var(--emo-teal); color: #fff; font-size: 1rem; }
.emo-ed-field { display: flex; flex-direction: column; gap: .35rem; margin: 0 0 1rem; }
.emo-ed-field label, .emo-ed-label, .emo-ed-search label { margin: 0; color: var(--emo-head); font-weight: 700; }
.emo-ed-field small, .emo-ed-hint { color: var(--emo-muted); font-size: .92rem; }
.emo-ed input:not([type=radio]):not([type=checkbox]):not([type=file]), .emo-ed textarea { box-sizing: border-box; width: 100%; padding: .75rem .85rem; border: 1.5px solid #b9c6c2; border-radius: .45rem; background: #fff; color: var(--emo-ink); font: inherit; }
.emo-ed input:focus, .emo-ed textarea:focus { border-color: var(--emo-teal); outline: 2px solid var(--emo-teal); outline-offset: 0; }
.emo-ed-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 0 1.2rem; }
.emo-ed-when { display: flex; gap: .5rem; }
.emo-ed-when input[type=time] { max-width: 8rem; }
.emo-ed-kinds { display: grid; grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); gap: .6rem; margin-bottom: 1.2rem; }
.emo-ed-kind { position: relative; cursor: pointer; }
.emo-ed-kind input { position: absolute; opacity: 0; }
.emo-ed-kind span { display: block; padding: .9rem; border: 2px solid var(--emo-line); border-radius: .55rem; text-align: center; font-weight: 700; }
.emo-ed-kind input:checked + span { border-color: var(--emo-teal); background: var(--emo-soft); color: var(--emo-head); }
.emo-ed-kind input:focus-visible + span { outline: 2px solid var(--emo-teal); outline-offset: 2px; }
.emo-ed-rubrics { margin: 0 0 1.2rem; }
.emo-ed-rubrics > div { display: flex; flex-wrap: wrap; gap: .5rem 1.4rem; margin: .4rem 0 .3rem; }
.emo-ed-rubrics label { display: flex; align-items: center; gap: .4rem; cursor: pointer; }
.emo-ed-rubrics input { width: 1.2rem; height: 1.2rem; accent-color: var(--emo-teal); }
.emo-ed-search > div { display: flex; gap: .5rem; margin-top: .35rem; }
.emo-ed-results { margin: .5rem 0 1rem; padding: 0; list-style: none; }
.emo-ed-results li { margin: 0 0 .35rem; color: var(--emo-muted); }
.emo-ed-results button { width: 100%; padding: .6rem .8rem; border: 1px solid var(--emo-line); border-radius: .45rem; background: var(--emo-soft-2); color: var(--emo-head); font: inherit; text-align: left; cursor: pointer; }
.emo-ed-results button:hover { border-color: var(--emo-teal); }
.emo-ed-map { position: relative; max-width: 34rem; margin-top: .6rem; border-radius: .6rem; background: var(--emo-soft-2); cursor: crosshair; }
.emo-ed-map svg { display: block; width: 100%; height: auto; }
.emo-ed-pin { position: absolute; width: 1.2rem; height: 1.2rem; border: 3px solid #fff; border-radius: 50%; background: var(--emo-rust); box-shadow: 0 2px 6px #0006; transform: translate(-50%, -50%); pointer-events: none; }
.emo-ed-files { display: flex; flex-wrap: wrap; gap: .8rem; margin: .4rem 0 1.2rem; padding: 0; list-style: none; }
.emo-ed-files li { display: flex; flex-direction: column; gap: .3rem; width: 9rem; font-size: .92rem; }
.emo-ed-files img { width: 9rem; height: 6.5rem; object-fit: cover; border-radius: .4rem; }
.emo-ed-files li.is-doc span { padding: .6rem; border-radius: .4rem; background: var(--emo-soft-2); word-break: break-all; }
.emo-ed-more summary { color: var(--emo-head); font-family: var(--emo-font-head); font-weight: 800; cursor: pointer; }
.emo-ed-more[open] summary { margin-bottom: 1rem; }
.emo-ed-submit { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; margin-top: 1rem; }
.emo-ed-login { max-width: 26rem; padding: 2rem; border: 1px solid var(--emo-line); border-radius: .9rem; background: #fff; }
.emo-ed-login form p { display: flex; flex-direction: column; gap: .35rem; }
.emo-ed-login form .login-remember { flex-direction: row; }
.emo-ed-login #wp-submit { padding: .9rem 1.6rem; border: 0; border-radius: .5rem; background: var(--emo-teal); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }

/* Account tables (Pakkumised, Müügid, Teavitused) */
.woocommerce-account .emo-steps { display: none; }
.emo-account-views { display: flex; gap: .5rem; margin: .5rem 0 1rem; }
.emo-account-views a { padding: .4rem .9rem; border-radius: .45rem; background: var(--emo-soft); color: var(--emo-teal) !important; text-decoration: none !important; font-size: .9rem; }
.emo-account-views a.is-active { background: var(--emo-teal); color: #fff !important; font-weight: 700; }
.emo-legend { display: flex; flex-wrap: wrap; gap: .4rem 1.5rem; font-size: .85rem; color: var(--emo-muted); }
.emo-legend span::before { content: ''; display: inline-block; width: .7rem; height: .7rem; margin-right: .4rem; border-radius: .15rem; vertical-align: -1px; }
.emo-legend .is-high::before { background: var(--emo-teal); }
.emo-legend .is-low::before { background: var(--emo-red); }
.emo-legend .is-open::before { background: var(--emo-rust); }
.emo-account-table { width: 100%; border-collapse: collapse; font-size: .92rem; }
.emo-account-table th, .emo-account-table td { padding: .7rem .6rem; border-bottom: 1px solid var(--emo-line); text-align: left; vertical-align: top; }
.emo-account-table th { color: var(--emo-muted); font-size: .8rem; font-weight: 600; }
.emo-account-table td:first-child { border-left: 4px solid transparent; }
.emo-account-table tr.is-high td:first-child { border-left-color: var(--emo-teal); }
.emo-account-table tr.is-low td:first-child { border-left-color: var(--emo-red); }
.emo-account-table tr.is-open td:first-child { border-left-color: var(--emo-rust); }
.emo-account-table small { display: block; color: var(--emo-muted); }
.emo-account-table tr.is-high .emo-state { color: var(--emo-teal); font-weight: 700; }
.emo-account-table tr.is-low .emo-state { color: var(--emo-red); font-weight: 700; }
.emo-account-table .emo-result-label { display: inline-block; margin: 0; }
.emo-account-empty, .emo-account-notice { padding: 1.2rem; border-radius: .6rem; background: var(--emo-soft-2); text-align: center; }
.emo-account-notice { background: var(--emo-soft); color: var(--emo-teal); }
.emo-account-button, .emo-subscription-form button { padding: .75rem 1.3rem; border: 0; border-radius: .45rem; background: var(--emo-rust); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.emo-subscriptions { margin: 0 0 1.5rem; padding: 0; list-style: none; }
.emo-subscriptions li { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .6rem .8rem; border-bottom: 1px solid var(--emo-line); }
.emo-subscription-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .8rem; }
.emo-subscription-form label { display: flex; flex-direction: column; gap: .3rem; font-size: .9rem; }
.emo-subscription-form select { min-width: 12rem; padding: .55rem; }
.emo-subscription-form.is-remove button { padding: .35rem .8rem; background: #eef0ef; color: var(--emo-ink); font-weight: 600; }

.emo-env .screen-reader-text, .emo-detail-wrap .screen-reader-text, .emo-lead .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }

@media (max-width: 1280px) {
  .emo-header-links small { display: none; }
  .emo-header-contacts { gap: 1.4rem; }
}
@media (max-width: 1100px) {
  .emo-header-contact small { display: none; }
  .emo-header-cats a { padding: 0 .55rem; }
  .emo-front-hero-inner, .emo-calc-inner { grid-template-columns: 1fr; }
  .emo-header-top .emo-header-inner { gap: 1rem 1.4rem; }
  .emo-header-actions { gap: 1.2rem; }
}
@media (max-width: 1000px) {
  .emo-header-bar .emo-header-inner { flex-wrap: wrap; }
  .emo-header-calc span { display: none; }
  .emo-header-contacts { gap: 1rem; }
}
@media (max-width: 900px) {
  .emo-page-hero-inner, .emo-check-box { grid-template-columns: 1fr; }
  .emo-page-hero-image img { height: 16rem; }
  .emo-why-grid, .emo-sell-grid, .emo-sand-grid, .emo-steps-grid, .emo-process { grid-template-columns: 1fr; }
  .emo-cta { flex-direction: column; align-items: flex-start; padding: 2rem; }
  .emo-footer-inner { flex-direction: column; text-align: center; }
  .emo-footer-contacts { align-items: center; }
  .emo-portal.is-eid { grid-template-columns: auto 1fr; }
  .emo-portal-eid { grid-column: 1 / -1; grid-row: auto; justify-self: start; }
}
@media (max-width: 860px) {
  .emo-header-top .emo-header-inner { flex-wrap: wrap; min-height: 0; padding-top: .8rem; padding-bottom: .8rem; }
  .emo-header-contacts { order: 3; width: 100%; justify-content: space-between; }
  .emo-header-contact strong { font-size: .9rem; }
  .emo-header-calc span { display: none; }
  .emo-header-bar .emo-header-inner { flex-direction: column; align-items: stretch; gap: .2rem; padding-top: .6rem; padding-bottom: .6rem; }
  .emo-header-cats a, .emo-header-links > li > a, .emo-header-sub-toggle { padding: .5rem .6rem; font-size: .82rem; }
  .emo-header-cats, .emo-header-links { flex-wrap: wrap; }
  .emo-header-sub a { min-height: 2.75rem; box-sizing: border-box; }
  .emo-header-cats a.is-buy { border-width: .2rem 0; border-radius: .45rem / .6rem; }
  .emo-hero-inner { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .emo-hero { padding: 2.5rem 1.25rem; }
  .emo-tiles ul { gap: 1rem 1.4rem; }
  .emo-tile-icon { width: 3.6rem; height: 3.6rem; }
  .emo-tile-svg { width: 1.8rem; height: 1.8rem; }
  .emo-tiles a { font-size: .8rem; }
  .emo-row { grid-template-columns: 1fr; }
  .emo-row-side { order: -1; border-left: 0; }
  .emo-row-image { height: 10rem; }
  .emo-toolbar select { min-width: 0; }
  .emo-toolbar { flex-wrap: wrap; justify-content: flex-start; }
  .emo-toolbar > label { min-width: 0; max-width: 100%; }
  .emo-toolbar select { max-width: 100%; }
  .emo-filters-panel { left: 0; right: auto; width: min(17rem, calc(100vw - 2.5rem)); min-width: 0; box-sizing: border-box; }
  .emo-filters-panel select { width: 100%; }
  .emo-lead-dialog { padding: 1.25rem; }
  .emo-lead-grid, .emo-cards, .emo-calc-section .calculator-standalone .calculation-type-step form { grid-template-columns: 1fr; }
  .emo-info-grid { grid-template-columns: 1fr; }
  .emo-map-pop-inner { width: 13rem; }
  .emo-front-hero, .emo-page-cover { padding: 3rem 1.25rem !important; }
  .emo-front-auctions, .emo-calc-section, .emo-why, .emo-sell { padding: 3.5rem 1.25rem !important; }
  .emo-page-body { padding: 3rem 1.25rem 3.5rem; }
  .emo-calc-section #multiStepForm { padding: 1.4rem !important; }
  .woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout { margin-left: 0 !important; }
  .emo-account-table thead { display: none; }
  .emo-account-table tr { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--emo-line); }
  .emo-account-table td { border: 0; }
  .emo-account-table td:first-child { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .emo-header-inner { padding: 0 1rem; }
  .emo-header-contacts { gap: .8rem; }
  .emo-header-contact strong { font-size: .82rem; white-space: nowrap; }
  .emo-header-bar .emo-header-cats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .3rem; min-width: 0; margin: 0 !important; padding: .1rem 0 .3rem !important; overflow: visible; }
  .emo-header-cats li { min-width: 0; }
  .emo-header-cats a { justify-content: space-between; gap: .35rem; width: 100%; min-height: 2.75rem; padding: .5rem .6rem; box-sizing: border-box; font-size: .76rem; white-space: normal; }
  .emo-header-cats a > span:first-child { min-width: 0; }
  .emo-header-count { flex: none; }
  .emo-header-cats a.is-buy { margin: 0; border: 0; border-radius: .45rem; padding: .5rem .6rem; }
  .emo-header-actions { gap: 1rem; }
  .emo-header-logo img { width: 110px !important; height: auto !important; }
  .emo-header-calc { padding: .7rem .8rem; }
}
@media (max-width: 360px) {
  .emo-header-top .emo-header-inner { gap: .6rem .75rem; }
  .emo-header-logo img { width: 90px !important; }
  .emo-header-actions { gap: .5rem; }
  .emo-header-account { gap: .35rem; font-size: .85rem; }
  .emo-header-calc { justify-content: center; min-width: 2.75rem; min-height: 2.75rem; padding: .6rem .7rem; box-sizing: border-box; }
  .emo-front-title { font-size: clamp(1.7rem, 8.5vw, 1.9rem) !important; hyphens: none; }
}

/* Full-width sections: the theme sets width:100% on them, which leaves a gap on the right next to the negative margins. */
.has-global-padding > .wp-block-group.alignfull.has-global-padding.is-layout-constrained { width: auto; }
