/* Directory, Jobs & Ads — design system. Colours come from Settings → Appearance (CSS variables on :root). */
:root{
  --dja-primary:#1f3b5c; --dja-primary-ink:#fff; --dja-accent:#d4a017; --dja-accent-ink:#1a1a1a;
  --dja-ink:#1c1c1c; --dja-muted:#5f6670; --dja-line:rgba(0,0,0,.12); --dja-bg:#fff; --dja-bg-soft:#f6f7f9;
  --dja-ok:#2e7d32; --dja-warn:#e65100; --dja-bad:#b71c1c;
  --dja-radius:12px; --dja-radius-sm:8px; --dja-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 20px rgba(0,0,0,.06);
  --dja-font:inherit; --dja-font-head:inherit;
}
.dja,.dja-form,.trt-rates,.dja-takeover,.dja-wall,.dja-sponsor,.dja-ad{font-family:var(--dja-font);color:var(--dja-ink)}

/* ---------- Buttons ---------- */
.dja-button,.trt-cta,.trtn-button,.dja-form .gform_button,.dja-form .gform_next_button,.dja-form .gform_previous_button,.dja-cal__day{font-family:var(--dja-font)}
.dja-button,.trt-cta,.trtn-button,.dja-form .gform_button,.dja-form .gform_next_button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.7rem 1.25rem;border:0;border-radius:var(--dja-radius-sm);background:var(--dja-primary);color:var(--dja-primary-ink)!important;font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none!important;cursor:pointer;transition:transform .08s ease,box-shadow .15s ease,background .15s ease;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.dja-button:hover,.trt-cta:hover,.trtn-button:hover,.dja-form .gform_button:hover,.dja-form .gform_next_button:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.14);filter:brightness(1.05)}
.dja-button--ghost,.trt-cta--ghost,.dja-form .gform_previous_button{background:transparent;color:var(--dja-primary)!important;border:2px solid var(--dja-primary);box-shadow:none}
.trt-cta--gold{background:var(--dja-accent);color:var(--dja-accent-ink)!important}
.dja-form .gform_footer,.dja-form .gform_page_footer{gap:.75rem}

/* ---------- Form shell ---------- */
.dja-form{max-width:860px;margin:0 auto}
.dja-form .gform_wrapper{font-family:var(--dja-font)}
.dja-form .gform_title{font-family:var(--dja-font-head);font-size:1.9rem;margin:0 0 .25rem}
.dja-form .gform_description{color:var(--dja-muted);font-size:1.05rem}
.dja-form .gfield_label,.dja-form legend.gfield_label{font-weight:600;font-size:.95rem;margin-bottom:.35rem;color:var(--dja-ink)}
.dja-form .gfield_description{color:var(--dja-muted);font-size:.86rem;line-height:1.45;padding-top:.3rem}
.dja-form .gfield_required{color:var(--dja-warn)}
.dja-form input[type=text],.dja-form input[type=email],.dja-form input[type=tel],.dja-form input[type=url],.dja-form input[type=number],.dja-form input[type=date],.dja-form select,.dja-form textarea{width:100%;padding:.7rem .85rem;border:1.5px solid var(--dja-line);border-radius:var(--dja-radius-sm);background:#fff;font:inherit;font-size:1rem;color:var(--dja-ink);transition:border-color .15s,box-shadow .15s;box-sizing:border-box}
.dja-form input:focus,.dja-form select:focus,.dja-form textarea:focus{outline:0;border-color:var(--dja-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--dja-primary) 18%,transparent)}
.dja-form textarea{min-height:140px;line-height:1.5}
.dja-form .ginput_container_fileupload input[type=file]{padding:.5rem;border:1.5px dashed var(--dja-line);border-radius:var(--dja-radius-sm);width:100%;background:var(--dja-bg-soft)}
.dja-form .gform_drop_area{border:2px dashed var(--dja-line)!important;border-radius:var(--dja-radius)!important;background:var(--dja-bg-soft)!important;padding:1.4rem!important}
.dja-form .gform_drop_area .button{background:var(--dja-primary);color:#fff;border-radius:var(--dja-radius-sm)}
.dja-form .ginput_preview{font-size:.85rem}

/* Sections as cards */
.dja-form .gsection{border:0;margin:1.75rem 0 .6rem;padding:0}
.dja-form .gsection_title{font-family:var(--dja-font-head);font-size:1.35rem;margin:0;padding:.75rem 1rem;background:var(--dja-primary);color:var(--dja-primary-ink);border-radius:var(--dja-radius) var(--dja-radius) 0 0}
.dja-form .gsection_description{margin:0;padding:.7rem 1rem;background:var(--dja-bg-soft);border:1px solid var(--dja-line);border-top:0;color:var(--dja-muted);font-size:.9rem}
.dja-form .gfield{padding:0 .25rem}
.dja-form .gform_fields{row-gap:1.1rem}

/* Chooser tiles (built by JS from the first checkbox field) */
.dja-chooser{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem;margin:.4rem 0 .2rem}
.dja-chooser label{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.95rem .6rem;border:2px solid var(--dja-line);border-radius:var(--dja-radius);background:#fff;cursor:pointer;text-align:center;font-weight:600;font-size:.88rem;line-height:1.2;transition:border-color .12s,box-shadow .12s,transform .08s;min-height:112px;justify-content:center}
.dja-chooser label:hover{border-color:var(--dja-primary);transform:translateY(-1px)}
.dja-chooser input{position:absolute;opacity:0;width:0;height:0}
.dja-chooser input:checked+label{border-color:var(--dja-primary);background:color-mix(in srgb,var(--dja-primary) 7%,#fff);box-shadow:0 0 0 3px color-mix(in srgb,var(--dja-primary) 22%,transparent)}
.dja-chooser input:focus-visible+label{outline:2px solid var(--dja-primary);outline-offset:2px}
.dja-chooser__icon{width:34px;height:34px;color:var(--dja-primary)}
.dja-chooser__icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dja-chooser__sub{display:block;font-weight:400;font-size:.74rem;color:var(--dja-muted)}

/* Plan cards and checkbox chips */
.dja-plan-cards .gfield_radio label{border-radius:var(--dja-radius);border-color:var(--dja-line);transition:border-color .12s,box-shadow .12s}
.dja-plan-cards .gfield_radio input[type=radio]:checked+label{border-color:var(--dja-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--dja-primary) 22%,transparent);background:color-mix(in srgb,var(--dja-primary) 6%,#fff)}
.dja-plan-card__price{color:var(--dja-primary)}
.dja-pic__hot{fill:var(--dja-accent)}
.dja-form .gfield--type-product .gfield_checkbox,.dja-form .gfield--type-checkbox .gfield_checkbox{display:flex;flex-wrap:wrap;gap:.45rem}
.dja-form .gfield--type-product .gfield_checkbox .gchoice,.dja-form .gfield--type-checkbox .gfield_checkbox .gchoice{margin:0}
.dja-form .gfield--type-product .gfield_checkbox input,.dja-form .gfield--type-checkbox .gfield_checkbox input{position:absolute;opacity:0;width:0;height:0}
.dja-form .gfield--type-product .gfield_checkbox label,.dja-form .gfield--type-checkbox .gfield_checkbox label{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .8rem;border:1.5px solid var(--dja-line);border-radius:999px;background:#fff;font-size:.9rem;cursor:pointer;max-width:none;transition:border-color .12s,background .12s}
.dja-form .gfield--type-product .gfield_checkbox label::before,.dja-form .gfield--type-checkbox .gfield_checkbox label::before{content:"";width:16px;height:16px;border:2px solid var(--dja-line);border-radius:4px;flex:0 0 auto;background:#fff}
.dja-form .gfield--type-product .gfield_checkbox input:checked+label,.dja-form .gfield--type-checkbox .gfield_checkbox input:checked+label{border-color:var(--dja-primary);background:color-mix(in srgb,var(--dja-primary) 8%,#fff)}
.dja-form .gfield--type-product .gfield_checkbox input:checked+label::before,.dja-form .gfield--type-checkbox .gfield_checkbox input:checked+label::before{background:var(--dja-primary);border-color:var(--dja-primary);box-shadow:inset 0 0 0 2px #fff}
.dja-form .gfield--type-radio:not(.dja-plan-cards) .gfield_radio{display:flex;flex-wrap:wrap;gap:.45rem}
.dja-form .gfield--type-radio:not(.dja-plan-cards) .gfield_radio input{position:absolute;opacity:0;width:0;height:0}
.dja-form .gfield--type-radio:not(.dja-plan-cards) .gfield_radio label{display:inline-flex;align-items:center;padding:.5rem .9rem;border:1.5px solid var(--dja-line);border-radius:999px;background:#fff;font-size:.9rem;cursor:pointer;max-width:none}
.dja-form .gfield--type-radio:not(.dja-plan-cards) .gfield_radio input:checked+label{border-color:var(--dja-primary);background:var(--dja-primary);color:var(--dja-primary-ink)}
.dja-form .gfield--type-product .gfield_radio:not(.dja-plan-cards *) label{border-radius:999px}

/* Price meter, summary, totals */
.dja-price-meter{background:var(--dja-bg-soft);border:1px solid var(--dja-line);border-radius:var(--dja-radius-sm)}
.dja-price-meter__total{color:var(--dja-primary)}
.dja-summary{border-radius:var(--dja-radius);box-shadow:var(--dja-shadow);background:#fff}
.dja-summary h4{font-family:var(--dja-font-head)}
.dja-summary__total{color:var(--dja-primary)}
.dja-total-bar{background:var(--dja-primary);color:var(--dja-primary-ink);border-radius:var(--dja-radius) var(--dja-radius) 0 0;box-shadow:0 -4px 16px rgba(0,0,0,.12)}
.dja-countdown{border-radius:var(--dja-radius-sm);background:color-mix(in srgb,var(--dja-accent) 14%,#fff);border-color:color-mix(in srgb,var(--dja-accent) 50%,#fff)}
.dja-nudge{border-radius:var(--dja-radius-sm);background:color-mix(in srgb,var(--dja-primary) 7%,#fff);border-color:color-mix(in srgb,var(--dja-primary) 30%,#fff)}
.dja-nudge button{background:var(--dja-primary);border-radius:var(--dja-radius-sm)}
.dja-form .gform_validation_errors{border-radius:var(--dja-radius-sm)}
.dja-form .gfield_error input,.dja-form .gfield_error textarea,.dja-form .gfield_error select{border-color:var(--dja-bad)}
.dja-form .validation_message{color:var(--dja-bad);font-size:.85rem}
.dja-form .gf_progressbar{background:rgba(0,0,0,.08)}
.dja-form .gf_progressbar_percentage{background:var(--dja-primary)!important;color:#fff}

/* ---------- Listings: cards and lists ---------- */
.dja-card{border-radius:var(--dja-radius);border:1px solid var(--dja-line);box-shadow:var(--dja-shadow);transition:transform .1s,box-shadow .15s;overflow:hidden;padding:0}
.dja-card:hover{transform:translateY(-2px);box-shadow:0 8px 26px rgba(0,0,0,.1)}
.dja-card>*:not(.dja-card__thumb){margin-left:1rem;margin-right:1rem}
.dja-card>*:first-child:not(.dja-card__thumb){margin-top:1rem}
.dja-card>*:last-child{margin-bottom:1rem}
.dja-card__thumb img{border-radius:0;margin:0;aspect-ratio:4/3;object-fit:cover;width:100%}
.dja-card__thumb+.dja-card__title{margin-top:.8rem}
.dja-card__title{font-family:var(--dja-font-head);font-size:1.08rem;line-height:1.3}
.dja-card__title a{color:var(--dja-ink)}
.dja-card__meta{color:var(--dja-muted);font-size:.85rem}
.dja-card__price{color:var(--dja-primary);font-size:1.05rem}
.dja-card--featured{border-color:var(--dja-accent);box-shadow:0 0 0 1px var(--dja-accent) inset,var(--dja-shadow)}
.dja-badge{background:var(--dja-accent);color:var(--dja-accent-ink);border-radius:4px}
.dja-joblist .dja-job,.dja-eventlist .dja-event,.dja-obit{border-bottom:1px solid var(--dja-line);transition:background .12s}
.dja-joblist .dja-job:hover,.dja-eventlist .dja-event:hover,.dja-obit:hover{background:var(--dja-bg-soft)}
.dja-job__title,.dja-event__title,.dja-obit__name{color:var(--dja-ink);font-family:var(--dja-font-head)}
.dja-event__date{border-color:var(--dja-line);background:#fff;border-radius:var(--dja-radius-sm)}
.dja-event__day{color:var(--dja-primary)}
.dja-search{padding:.75rem;background:var(--dja-bg-soft);border-radius:var(--dja-radius);border:1px solid var(--dja-line)}
.dja-search input[type=search],.dja-search select{border:1.5px solid var(--dja-line);border-radius:var(--dja-radius-sm);padding:.6rem .8rem;font:inherit;background:#fff}
.dja-search button{border:0;border-radius:var(--dja-radius-sm);background:var(--dja-primary);color:#fff;font-weight:600;padding:.6rem 1rem;cursor:pointer}
.dja-pagination{justify-content:center}
.dja-pagination .page-numbers{padding:.4rem .7rem;border:1px solid var(--dja-line);border-radius:6px;text-decoration:none;color:var(--dja-ink)}
.dja-pagination .page-numbers.current{background:var(--dja-primary);color:#fff;border-color:var(--dja-primary)}
.dja-single-meta{border-radius:var(--dja-radius);border-color:var(--dja-line);background:var(--dja-bg-soft)}
.dja-single-meta dt{color:var(--dja-muted);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;font-weight:600}
.dja-single-meta dd{font-size:1rem}
.dja-cta .dja-button{margin-right:.4rem}
.dja-empty{color:var(--dja-muted);padding:1rem;border:1px dashed var(--dja-line);border-radius:var(--dja-radius-sm);text-align:center}
.dja-mylistings{border-radius:var(--dja-radius);overflow:hidden;border:1px solid var(--dja-line)}
.dja-mylistings th{background:var(--dja-bg-soft);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:var(--dja-muted)}
.dja-edit input[type=text],.dja-edit textarea{border:1.5px solid var(--dja-line);border-radius:var(--dja-radius-sm);font:inherit}
.dja-notice{border-radius:var(--dja-radius-sm)}
.dja-stats{border-radius:var(--dja-radius)}
.dja-stats__bar{background:var(--dja-primary)}
.dja-loyalty{border-radius:var(--dja-radius);border-left-color:var(--dja-accent);background:color-mix(in srgb,var(--dja-accent) 12%,#fff)}
.dja-loyalty__bar span{background:var(--dja-accent)}

/* ---------- Ads, sponsors, wall ---------- */
.dja-ad__label{color:var(--dja-muted)}
.dja-ad--placeholder .dja-ad__link{border-radius:var(--dja-radius);border-color:var(--dja-line)}
.dja-ad--placeholder .dja-ad__link:hover{border-color:var(--dja-primary);background:color-mix(in srgb,var(--dja-primary) 5%,#fff)}
.dja-ad__ph-cta{color:var(--dja-primary)}
.dja-sponsor{border-radius:var(--dja-radius-sm);border-color:var(--dja-line);background:var(--dja-bg-soft)}
.dja-sponsor--topic{border-left-color:var(--dja-accent)}
.dja-sponsor__label{color:var(--dja-muted)}
.dja-wall{padding:1rem 1.2rem;border:1px solid var(--dja-line);border-radius:var(--dja-radius);background:#fff}
.dja-wall__title{color:var(--dja-muted)}
.dja-wall__item{border-radius:var(--dja-radius-sm);border-color:var(--dja-line);transition:transform .1s}
.dja-wall__item:hover{transform:translateY(-2px)}
.dja-wall__item--ph{color:var(--dja-primary)}
.dja-wall__join{color:var(--dja-primary)}

/* ---------- Rate page ---------- */
.trt-card{border-radius:var(--dja-radius);box-shadow:var(--dja-shadow);border-color:var(--dja-line)}
.trt-card:hover{transform:translateY(-2px);box-shadow:0 8px 26px rgba(0,0,0,.1)}
.trt-card h3{font-family:var(--dja-font-head)}
.trt-price{color:var(--dja-primary)}
.trt-card--hero{border-color:var(--dja-accent);background:linear-gradient(180deg,color-mix(in srgb,var(--dja-accent) 12%,#fff),#fff)}
.trt-tag{background:var(--dja-accent);color:var(--dja-accent-ink)}
.trt-band{background:var(--dja-primary);color:var(--dja-primary-ink);border-radius:var(--dja-radius)}
.trt-why div{border-left-color:var(--dja-accent);background:color-mix(in srgb,var(--dja-accent) 10%,#fff);border-radius:0 var(--dja-radius-sm) var(--dja-radius-sm) 0}
.trt-table{border-radius:var(--dja-radius);overflow:hidden;border:1px solid var(--dja-line)}
.trt-table th{background:var(--dja-bg-soft);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:var(--dja-muted)}
.trt-rates h2{font-family:var(--dja-font-head);position:relative;padding-bottom:.4rem}
.trt-rates h2::after{content:"";position:absolute;left:0;bottom:0;width:48px;height:3px;background:var(--dja-accent);border-radius:2px}

/* ---------- Takeover and archive ---------- */
.dja-tk-preview{border-radius:var(--dja-radius);border-color:var(--dja-line)}
.dja-archive-page__title{font-family:var(--dja-font-head)}
.dja-compact-more{color:var(--dja-primary)}
.dja-cal{border-radius:var(--dja-radius);box-shadow:var(--dja-shadow);border-color:var(--dja-line)}
.dja-cal__day--sel{background:var(--dja-primary);outline-color:var(--dja-primary)}
.dja-issues__row.is-sel{background:var(--dja-primary);border-color:var(--dja-primary)}

/* ---------- Mobile ---------- */
@media (max-width:640px){
  .dja-form .gsection_title{font-size:1.15rem}
  .dja-chooser{grid-template-columns:repeat(2,1fr)}
  .dja-plan-cards .gfield_radio{grid-template-columns:1fr}
  .dja-grid{grid-template-columns:1fr!important}
  .trt-grid{grid-template-columns:1fr}
  .dja-total-bar{border-radius:0;margin:0 -1rem}
  .dja-event{gap:.7rem}
  .dja-single-meta dl{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.dja-card,.trt-card,.dja-button,.trt-cta{transition:none}}
