/* Stage 7: native WordPress/Directorist pages, using the approved child-theme design. */
.ttg-service-page { --directorist-color-primary:#006c4a; --directorist-color-body:#526071; --directorist-color-border:#dfe7ef; }
.ttg-service-page .ttg-service-main { max-width:1280px; padding:36px 36px 60px; margin:0 auto!important; }
.ttg-service-page h1.ttg-service-title { margin:0 0 30px; font-size:clamp(32px,3.6vw,44px); line-height:1.2; letter-spacing:-1.4px; }
.ttg-service-page .ttg-service-content { margin:0; min-width:0; }
.ttg-service-page .ttg-service-content > .directorist-container-fluid { padding:0; }
.ttg-service-page .ttg-service-content :is(.directorist-container,.directorist-container-fluid) { max-width:100%; }
.ttg-service-page .directorist-form-element { font-family:inherit; font-size:14px; color:#0f172a; background:#fff; border:1px solid #cbd5e1; border-radius:6px; min-height:46px; padding:11px 13px; box-shadow:none; }
.ttg-service-page textarea.directorist-form-element { min-height:140px; line-height:1.7; }
.ttg-service-page .directorist-form-group > label { font-size:13px; font-weight:700; color:#334155; margin-bottom:8px; }
.ttg-service-page .directorist-form-group { min-width:0; }
.ttg-service-page .select2-container { max-width:100%; }
.ttg-service-page .select2-container .select2-selection { min-height:46px; border-color:#cbd5e1; border-radius:6px; }
.ttg-service-page .select2-container .select2-selection__choice { border-radius:4px; background:#eef3fb; border-color:#d5dce4; font-size:12px; }
.ttg-service-page .directorist-btn { font-family:inherit; font-size:13px; font-weight:700; border-radius:6px; text-decoration:none; }
.ttg-service-page :is(.directorist-btn-primary,.directorist-authentication__form__btn,.directorist-btn--add-listing) { background:#006c4a; color:#fff!important; border-color:#006c4a; }
.ttg-service-page :is(.directorist-btn-primary,.directorist-authentication__form__btn,.directorist-btn--add-listing):hover { background:#00553b; border-color:#00553b; }
.ttg-service-page .ttg-service-content a { overflow-wrap:anywhere; }

/* Authentication remains the existing native sign-in, registration and recovery flow. */
.ttg-service-auth .ttg-service-title { text-align:center; }
.ttg-service-auth .directorist-authentication { width:100%; max-width:560px; flex:0 0 100%; margin-left:auto; margin-right:auto; padding:0; }
.ttg-service-auth .directorist-authentication__form { background:#fff; border:1px solid #dfe7ef; border-radius:9px; padding:32px; box-shadow:0 2px 6px #0f172a03; }
.ttg-service-auth .directorist-authentication__form__toggle-area { background:#eef3fb; color:#526071; font-size:13px; padding:20px; border-radius:0 0 8px 8px; }
.ttg-service-auth .directorist-authentication__btn { color:#006c4a; font-size:13px; font-weight:750; }
.ttg-service-auth .directorist-authentication__form__actions { font-size:12px; gap:12px; flex-wrap:wrap; }

/* Keep the native sidebar, tab panels and management actions. */
.ttg-service-dashboard .directorist-user-dashboard { padding:0; }
.ttg-service-dashboard .directorist-user-dashboard__contents { border:1px solid #dfe7ef; border-radius:9px; background:#fff; overflow:hidden; }
.ttg-service-dashboard .directorist-user-dashboard__nav { background:#fff; border-right:1px solid #dfe7ef; }
.ttg-service-dashboard .directorist-user-dashboard__nav .directorist-tab__nav__link { font-size:13px; color:#334155; }
.ttg-service-dashboard .directorist-user-dashboard__nav .directorist-tab__nav__active { background:#e9f7ef; color:#006c4a; }
.ttg-service-dashboard .directorist-user-dashboard__tab-content { min-width:0; }
.ttg-service-dashboard .directorist-user-dashboard-tab__nav a { font-size:12px; }
.ttg-service-dashboard .directorist-user-dashboard-tabcontent { overflow-x:auto; }
.ttg-service-dashboard .directorist-user-dashboard table { font-size:13px; }
.ttg-service-dashboard .directorist-user-dashboard table h4 { font-size:14px; line-height:1.45; letter-spacing:0; }
.ttg-service-dashboard .directorist-user-dashboard table a { text-decoration:none; }
.ttg-service-dashboard .directorist-user-dashboard__toggle__link { background:#fff; border:1px solid #dfe7ef; border-radius:6px; }

/* Native submission sections and field order are retained. */
.ttg-service-submission .directorist-add-listing-wrapper { padding:0; }
.ttg-service-submission .directorist-content-module { background:#fff; border:1px solid #dfe7ef; border-radius:9px; box-shadow:0 2px 6px #0f172a03; overflow:hidden; }
.ttg-service-submission .directorist-content-module__title { background:#fff; border-bottom:1px solid #edf1f5; padding:20px 26px; }
.ttg-service-submission .directorist-content-module__title h2 { margin:0; font-size:22px; line-height:1.4; letter-spacing:-.6px; }
.ttg-service-submission .directorist-content-module__contents { padding:26px; }
.ttg-service-submission .multistep-wizard__nav { border:1px solid #dfe7ef; border-radius:9px; background:#fff; }
.ttg-service-submission .multistep-wizard__nav__btn { font-family:inherit; font-size:13px; text-decoration:none; }
.ttg-service-submission .directorist-custom-field-checkbox { display:flex; flex-wrap:wrap; column-gap:18px; row-gap:8px; align-items:baseline; }
.ttg-service-submission .directorist-custom-field-checkbox > .directorist-form-label { flex-basis:100%; }
.ttg-service-submission .directorist-custom-field-checkbox > .directorist-checkbox { margin:0; }
.ttg-service-submission .directorist-custom-field-checkbox .directorist-checkbox__label { font-size:13px; }
.ttg-service-submission .directorist-custom-field-btn-more { flex-basis:100%; font-size:12px; }
.ttg-service-submission .directorist-add-listing-form__publish { background:#fff; border:1px solid #dfe7ef; border-radius:9px; padding:28px; }
.ttg-service-submission .directorist-add-listing-form__publish__title { font-size:24px; letter-spacing:-.7px; }
.ttg-service-submission .directorist-add-listing-form__publish__subtitle { font-size:14px; color:#526071; }

/* Existing contact copy and disabled staging form. */
.ttg-service-contact .ttg-contact-intro { gap:48px; margin:0; }
.ttg-service-contact .ttg-contact-intro h2 { font-size:30px; line-height:1.3; letter-spacing:-.8px; }
.ttg-service-contact .ttg-contact-intro p { font-size:15px; line-height:1.8; color:#526071; }
.ttg-service-contact .ttg-eyebrow { font-size:11px; letter-spacing:1.3px; font-weight:750; color:#006c4a; }
.ttg-service-contact .ttg-contact-form { border:1px solid #dfe7ef; border-radius:9px; box-shadow:0 2px 6px #0f172a03; }
.ttg-service-contact .ttg-contact-form :is(input,select,textarea) { border-color:#cbd5e1; border-radius:6px; font-size:14px; color:#0f172a; }
.ttg-service-contact .ttg-contact-form label { font-size:13px; color:#334155; }
.ttg-service-contact .ttg-contact-form .ttg-contact-privacy { font-size:12px; }
.ttg-service-contact .ttg-contact-preview-note { background:#eef3fb; border-color:#006c4a; }
.ttg-service-contact .ttg-contact-form button { background:#006c4a; }

/* Legal text is kept verbatim; only its reading frame changes. */
.ttg-service-legal .ttg-service-main { max-width:1050px; }
.ttg-service-legal .ttg-legal-text { max-width:none; padding:32px 36px; background:#fff; border:1px solid #dfe7ef; border-radius:9px; color:#334155; font-size:15px; line-height:1.85; }
.ttg-service-legal .ttg-legal-text h2 { margin:30px 0 14px; font-size:25px; letter-spacing:-.6px; }

@media(max-width:760px) {
 .ttg-service-page .ttg-service-main { padding:28px 22px 40px; }
 .ttg-service-page h1.ttg-service-title { font-size:33px; margin-bottom:24px; letter-spacing:-1px; }
 .ttg-service-auth .directorist-authentication__form { padding:24px 20px; }
 .ttg-service-contact .ttg-contact-intro { gap:24px; }
 .ttg-service-contact .ttg-contact-form { padding:24px 20px; }
 .ttg-service-submission .directorist-content-module__title { padding:18px; }
 .ttg-service-submission .directorist-content-module__contents { padding:20px 18px; }
 .ttg-service-legal .ttg-legal-text { padding:24px 20px; }
 .ttg-service-dashboard .directorist-user-dashboard__tab-content { padding:18px 12px; }
}

/* The inactive native authentication panel keeps zero height; do not split the row. */
.ttg-service-auth .ttg-service-content .directorist-container-fluid > .directorist-row { display:block; margin-left:0; margin-right:0; }

/* Native inactive panels have zero height; keep their hidden content from extending the page. */
.ttg-service-auth .directorist-authentication:not(.active) { overflow:hidden; }

/* Stage 7 review: persistent account navigation and aligned native controls. */
.ttg-service-dashboard .directorist-user-dashboard__toggle,
.ttg-service-dashboard .directorist-dashboard__nav__close { display:none; }
.ttg-service-auth .directorist-password-group-toggle { top:auto; bottom:0; right:0; transform:none; width:46px; height:46px; display:flex; align-items:center; justify-content:center; padding:0; line-height:1; }
.ttg-service-auth .directorist-authentication__form__toggle-area { display:flex; align-items:center; justify-content:center; gap:6px; padding:14px 16px; min-height:0; line-height:1.5; }
.ttg-service-auth .directorist-authentication__form__toggle-area > p { margin:0; line-height:inherit; }
@media(max-width:1199px) {
 .ttg-service-dashboard .directorist-user-dashboard__contents { display:block; }
 .ttg-service-dashboard .directorist-user-dashboard .directorist-user-dashboard__contents > .directorist-user-dashboard__nav { padding:14px; position:static; transform:none!important; width:100%!important; max-width:none; height:auto; max-height:none; left:auto; top:auto; z-index:auto; visibility:visible; opacity:1; overflow:visible; box-shadow:none; border-right:0; border-bottom:1px solid #dfe7ef; }
 .ttg-service-dashboard .directorist-user-dashboard .directorist-user-dashboard__tab-content { width:100%; margin-left:0; }
}
