/*
 * TradeNest Core: styles for the parts that are not Elementor widgets (search form, results line,
 * no-results box, submission confirmation, Directorist's add-listing form).
 * Colours and fonts come from the Elementor Global Colours / Global Fonts (Site Settings), so changing
 * a global colour there updates these parts too.
 */
:root{
  --tn-ink:var(--e-global-color-tnink,#1B1F24);
  --tn-ink2:var(--e-global-color-tnink2,#2A3038);
  --tn-text:var(--e-global-color-tntext,#2A3038);
  --tn-muted:var(--e-global-color-tnmuted,#5B6470);
  --tn-line:var(--e-global-color-tnline,#E2DED6);
  --tn-chalk:var(--e-global-color-tnchalk,#F6F4EF);
  --tn-white:var(--e-global-color-tnwhite,#FFFFFF);
  --tn-mist:var(--e-global-color-tnmist,#E4EBF4);
  --tn-tang:var(--e-global-color-tntang,#F26A21);
  --tn-tang-dk:var(--e-global-color-tntangdk,#B5410E);
  --tn-tang-soft:var(--e-global-color-tntangsoft,#FDE6D8);
  --tn-cobalt:var(--e-global-color-tncobalt,#2448C8);
  --tn-green:var(--e-global-color-tngreen,#0B6B34);
  --tn-red:var(--e-global-color-tnred,#B42318);
  --tn-h:var(--e-global-typography-tnh3-font-family,"Schibsted Grotesk"),system-ui,sans-serif;
  --tn-b:var(--e-global-typography-tnbody-font-family,"Public Sans"),system-ui,sans-serif;
}

/* ---------- buttons used inside shortcodes */
.tn-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:15px 26px;font:700 16px/1 var(--tn-h);text-decoration:none;cursor:pointer;background:var(--tn-ink);color:var(--tn-white)!important;transition:background .15s,transform .15s}
.tn-btn:hover,.tn-btn:focus{background:var(--tn-ink2);color:var(--tn-white);transform:translateY(-1px)}
.tn-btn--line{background:transparent!important;color:var(--tn-ink)!important;border:2px solid var(--tn-ink)!important;padding:13px 24px}
.tn-btn--line:hover,.tn-btn--line:focus{background:var(--tn-ink);color:var(--tn-white)!important}

/* ---------- search form */
.tn-search{background:var(--tn-white);border:1px solid var(--tn-line);border-radius:20px;padding:10px;display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:6px;box-shadow:0 22px 50px -24px rgba(27,31,36,.35);font-family:var(--tn-b)}
.tn-search--bar{box-shadow:0 12px 30px -22px rgba(27,31,36,.35)}
.tn-search--hero{grid-template-columns:1fr 1fr auto;max-width:640px}
.tn-search--hero .tn-fld--q{grid-column:1/-1;border-bottom:1px solid var(--tn-line);border-radius:12px 12px 0 0}
.tn-search--hero .tn-fld--q+.tn-fld{border-left:0}
.tn-fld{display:flex;flex-direction:column;justify-content:center;padding:8px 16px;border-radius:12px;min-width:0}
.tn-fld+.tn-fld{border-left:1px solid var(--tn-line)}
.tn-fld label{font:700 12px/1 var(--tn-h);letter-spacing:.06em;text-transform:uppercase;color:var(--tn-muted);margin:0 0 6px}
.tn-search .tn-fld input,.tn-search .tn-fld select{border:0!important;outline:0;background:transparent!important;box-shadow:none!important;font:500 16px/1.3 var(--tn-b);color:var(--tn-ink);padding:2px 22px 2px 0!important;width:100%;min-height:0;height:auto;border-radius:0;-webkit-appearance:none;appearance:none}
.tn-search .tn-fld select{cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231B1F24' stroke-width='2'/%3E%3C/svg%3E") right 2px center no-repeat!important}
.tn-search .tn-fld input::placeholder{color:#79818C;opacity:1}
.tn-fld:focus-within{background:var(--tn-chalk)}
.tn-search__go{display:flex;align-items:center;gap:14px}
.tn-search .tn-btn{min-height:58px;border-radius:14px;padding:0 28px;background:var(--tn-tang);color:var(--tn-ink)!important}
.tn-search .tn-btn:hover,.tn-search .tn-btn:focus{background:var(--tn-ink);color:var(--tn-white)!important}
.tn-reset{font:700 15px/1 var(--tn-h);color:var(--tn-cobalt);text-decoration:underline;text-underline-offset:3px;padding:0 6px 0 0}
.tn-reset:hover{color:var(--tn-ink)}

/* ---------- results line and chips */
.tn-results{display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;font-family:var(--tn-b);color:var(--tn-muted);font-size:15px}
.tn-results__count{margin:0}
.tn-results__count strong{color:var(--tn-ink);font:700 18px/1.3 var(--tn-h)}
.tn-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tn-chip{display:inline-flex;align-items:center;gap:8px;background:var(--tn-ink);color:var(--tn-white)!important;border-radius:999px;padding:7px 8px 7px 14px;font:600 14px/1 var(--tn-h);text-decoration:none}
.tn-chip span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.2);font-size:15px}
.tn-chip:hover span{background:var(--tn-tang);color:var(--tn-ink)}
.tn-clear{font:700 15px/1 var(--tn-h);color:var(--tn-cobalt)!important;text-decoration:underline;text-underline-offset:3px}

/* ---------- no results */
.tn-empty{background:var(--tn-white);border:2px dashed var(--tn-line);border-radius:22px;padding:48px 24px;text-align:center;margin-top:22px;color:var(--tn-muted);font-family:var(--tn-b)}
.tn-empty h2{font:700 24px/1.2 var(--tn-h);color:var(--tn-ink);margin:14px 0 8px}
.tn-empty p{max-width:480px;margin:0 auto 20px;font-size:16px;line-height:1.6}
.tn-empty__acts{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:0!important}

/* ---------- services list on profiles */
.tn-svc{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tn-svc li{background:var(--tn-chalk);border:1px solid var(--tn-line);border-radius:10px;padding:8px 12px;font:500 15px/1.3 var(--tn-b);color:var(--tn-ink)}

/* ---------- submission confirmation */
.tn-done{background:var(--tn-white);border:1px solid var(--tn-line);border-radius:22px;padding:44px 40px;font-family:var(--tn-b);color:var(--tn-text);max-width:760px;margin:0 auto}
.tn-done__ic{width:60px;height:60px;border-radius:18px;background:var(--tn-tang-soft);color:var(--tn-tang-dk);display:grid;place-items:center;margin-bottom:18px}
.tn-done h2{font:800 30px/1.15 var(--tn-h);color:var(--tn-ink);margin:0 0 12px}
.tn-done p,.tn-done li{font-size:17px;line-height:1.6}
.tn-done ul{margin:0 0 22px;padding-left:20px}
.tn-done__acts{display:flex;gap:12px;flex-wrap:wrap;margin:0}

/* ---------- honeypot */
.tn-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ---------- Directorist add-listing form, matched to the site */
.tn-submit-form{--directorist-color-primary:var(--tn-ink);--directorist-color-primary-rgb:27,31,36;--directorist-color-btn-primary-bg:var(--tn-ink);--directorist-color-dark:var(--tn-ink);--directorist-color-body:var(--tn-text);--directorist-color-border:var(--tn-line);font-family:var(--tn-b)}
.tn-submit-form .directorist-add-listing-wrapper,.tn-submit-form .directorist-add-listing-form{background:transparent;padding:0;box-shadow:none}
.tn-submit-form .directorist-container-fluid{padding:0}
.tn-submit-form .directorist-content-module{border:1px solid var(--tn-line);border-radius:22px;background:var(--tn-white);margin-bottom:22px;box-shadow:none}
.tn-submit-form .directorist-content-module__title{padding:22px 28px;border-bottom:1px solid var(--tn-line)}
.tn-submit-form .directorist-content-module__title h2{font:700 21px/1.2 var(--tn-h);color:var(--tn-ink)}
.tn-submit-form .directorist-content-module__contents{padding:24px 28px 8px}
.tn-submit-form .directorist-form-group{margin-bottom:22px}
.tn-submit-form label,.tn-submit-form .directorist-form-label{font:700 15px/1.35 var(--tn-h)!important;color:var(--tn-ink)!important;margin-bottom:8px;display:inline-block}
.tn-submit-form .directorist-form-element,.tn-submit-form input[type=text],.tn-submit-form input[type=email],.tn-submit-form input[type=tel],.tn-submit-form input[type=url],.tn-submit-form textarea,.tn-submit-form select{border:1.5px solid var(--tn-line)!important;border-radius:12px!important;padding:12px 14px!important;font:400 16px/1.45 var(--tn-b)!important;color:var(--tn-ink)!important;background:var(--tn-white)!important;min-height:50px;box-shadow:none!important}
.tn-submit-form textarea{min-height:120px}
.tn-submit-form .directorist-form-element:focus,.tn-submit-form input:focus,.tn-submit-form textarea:focus{border-color:var(--tn-cobalt)!important;outline:3px solid rgba(36,72,200,.18)!important}
.tn-submit-form .select2-container--default .select2-selection--single,.tn-submit-form .select2-container--default .select2-selection--multiple{border:1.5px solid var(--tn-line)!important;border-radius:12px!important;min-height:50px;padding:6px 8px}
.tn-submit-form .directorist-form-required{color:var(--tn-red)}
.tn-submit-form .select2-container{width:100%!important}
.tn-submit-form .select2-container--default .select2-selection--single{display:flex;align-items:center;background:var(--tn-white)}
.tn-submit-form .select2-container .select2-selection__rendered{font:400 16px/1.45 var(--tn-b)!important;color:var(--tn-ink)!important;padding:4px 30px 4px 6px!important}
.tn-submit-form .select2-container .select2-selection__placeholder{color:#79818C!important}
.tn-submit-form .select2-container .select2-selection__arrow{height:48px!important;right:8px!important}
.tn-submit-form .ezmu__btn{background:var(--tn-ink)!important;color:var(--tn-white)!important;border-radius:999px!important;padding:13px 22px!important;font:700 15px/1 var(--tn-h)!important;width:auto!important;height:auto!important;min-width:0}
.tn-submit-form .ezmu__btn:hover{background:var(--tn-ink2)!important}
.tn-submit-form .directorist-form-description,.tn-submit-form .directorist-form-group__description,.tn-submit-form small{color:var(--tn-muted);font-size:14px}
.tn-submit-form .directorist-form-submit__btn,.tn-submit-form .directorist-btn-primary,.tn-submit-form .directorist-btn{background:var(--tn-tang)!important;border-color:var(--tn-tang)!important;color:var(--tn-ink)!important;border-radius:999px!important;font:700 17px/1 var(--tn-h)!important;padding:18px 34px!important;min-height:0;height:auto}
.tn-submit-form .directorist-form-submit__btn:hover,.tn-submit-form .directorist-btn-primary:hover{background:var(--tn-ink)!important;border-color:var(--tn-ink)!important;color:var(--tn-white)!important}
.tn-submit-form .directorist-add-listing-form__action{border:1px solid var(--tn-line);border-radius:22px;background:var(--tn-white);padding:28px}
.tn-submit-form .directorist-add-listing-form__publish{display:none}
.tn-submit-form .directorist-alert-danger,.tn-submit-form .atbdp_errors,.tn-submit-form .directorist-form-alert{border-radius:12px}
.tn-submit-form .directorist-alert,.tn-submit-form #listing_notifier .atbdp_success{font-size:16px}
.tn-submit-form .atbdp_success{display:block;background:#E3F5EA;color:var(--tn-green);border-radius:12px;padding:12px 16px;font-weight:600}
.tn-submit-form .atbdp_errors,.tn-submit-form .atbdp_error{display:block;background:#FDECEA;color:var(--tn-red);border-radius:12px;padding:12px 16px;font-weight:600}
.tn-submit-form .directorist-add-listing-form__privacy{margin:6px 0 20px}
.tn-submit-form .directorist-checkbox__label{font:400 15px/1.5 var(--tn-b)!important;color:var(--tn-text)!important}
.tn-submit-form .directorist-checkbox__label a{color:var(--tn-cobalt);text-decoration:underline}
.tn-submit-form .directorist-add-listing-wrapper .directorist-col-lg-4,.tn-submit-form .multistep-wizard__nav,.tn-submit-form .default-add-listing-bottom-nav{display:none}
/* Directorist adds the hidden section menu's width as left padding when the page scrolls. */
.tn-submit-form .multistep-wizard__content{padding-inline-start:0!important}

@media (max-width:1024px){
  .tn-search{grid-template-columns:1fr 1fr}
  .tn-fld--q{grid-column:1/-1}
  .tn-fld+.tn-fld{border-left:0}
  .tn-fld--q+.tn-fld{border-top:1px solid var(--tn-line)}
  .tn-fld:nth-child(3){border-top:1px solid var(--tn-line);border-left:1px solid var(--tn-line)}
  .tn-search__go{grid-column:1/-1}
  .tn-search .tn-btn{width:100%}
}
@media (max-width:767px){
  .tn-search{grid-template-columns:1fr;padding:8px}
  .tn-fld{padding:12px 14px;border-radius:0}
  .tn-search--hero .tn-fld--q{border-radius:12px 12px 0 0}
  .tn-fld+.tn-fld,.tn-fld:nth-child(3){border-left:0;border-top:1px solid var(--tn-line)}
  .tn-search__go{flex-direction:column;align-items:stretch}
  .tn-reset{text-align:center;padding:6px 0}
  .tn-done{padding:30px 22px}
  .tn-done h2{font-size:25px}
  .tn-submit-form .directorist-content-module__title,.tn-submit-form .directorist-content-module__contents{padding-left:18px;padding-right:18px}
  .tn-submit-form .directorist-add-listing-form__action{padding:20px 18px}
  .tn-submit-form .directorist-form-submit__btn{width:100%}
}
