.ohs-tm-marketplace,
.ohs-tm-profile{
    --ohs-petrol:#103b4a;
    --ohs-petrol-dark:#0b2d38;
    --ohs-green:#5aa52b;
    --ohs-green-dark:#43831e;
    --ohs-sage:#f6f9f3;
    --ohs-blue-pale:#edf4f6;
    --ohs-line:#dce6e7;
    --ohs-text:#163843;
    --ohs-muted:#61777f;
    color:var(--ohs-text);
    max-width:1100px;
    margin:0 auto;
    font-family:inherit;
}
.ohs-tm-marketplace *,.ohs-tm-profile *{box-sizing:border-box}
.ohs-tm-hero{
    background:linear-gradient(135deg,var(--ohs-petrol),#18566a);
    color:#fff;
    border-radius:18px;
    padding:34px 36px;
    margin:0 0 18px;
}
.ohs-tm-kicker{
    display:block;
    color:#a8d77c;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:12px;
    font-weight:800;
    margin-bottom:5px;
}
.ohs-tm-hero h1,
.ohs-tm-profile h1,
.entry-content .ohs-tm-hero h1,
.entry-content .ohs-tm-profile h1{
    margin:0 !important;
    padding:0 !important;
    font-size:36px !important;
    line-height:1.1 !important;
    font-weight:800 !important;
    color:#fff !important;
}
.ohs-tm-hero p{
    max-width:760px;
    margin:10px 0 0;
    font-size:17px;
    line-height:1.55;
}
.ohs-tm-rate-explainer{
    display:flex;
    gap:24px;
    align-items:center;
    border:1px solid #d9e5d2;
    background:var(--ohs-sage);
    border-radius:14px;
    padding:18px 22px;
    margin:0 0 22px;
}
.ohs-tm-rate-explainer>div{min-width:190px}
.ohs-tm-rate-explainer strong{
    display:block;
    color:var(--ohs-petrol);
    font-size:25px;
    line-height:1.1;
}
.ohs-tm-rate-explainer span{
    display:block;
    color:var(--ohs-muted);
    font-size:13px;
    margin-top:3px;
}
.ohs-tm-rate-explainer p{
    margin:0;
    line-height:1.5;
}
.ohs-tm-filters{
    background:#fff;
    border:1px solid var(--ohs-line);
    border-radius:14px;
    padding:18px;
    margin-bottom:18px;
    box-shadow:0 5px 20px rgba(15,48,63,.05);
}
.ohs-tm-filter-grid{
    display:grid;
    grid-template-columns:1.2fr 1.25fr 1fr 1fr;
    gap:12px;
}
.ohs-tm-field span,
.ohs-tm-request-form label>span{
    display:block;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    color:#4f6971;
    margin-bottom:5px;
}
.ohs-tm-field input,
.ohs-tm-field select,
.ohs-tm-request-form select,
.ohs-tm-request-form textarea{
    display:block;
    width:100%;
    min-height:43px;
    border:1px solid #cbd9dc !important;
    border-radius:8px !important;
    background:#fff;
    color:var(--ohs-text);
    padding:8px 10px;
    box-shadow:none !important;
    font:inherit;
}
.ohs-tm-request-form textarea{resize:vertical}
.ohs-tm-filter-meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-top:1px solid #edf1f2;
    margin-top:14px;
    padding-top:12px;
    color:var(--ohs-muted);
}
.ohs-tm-filter-meta strong{color:var(--ohs-petrol)}
.ohs-tm-link-button{
    border:0;
    background:transparent;
    color:var(--ohs-petrol);
    text-decoration:underline;
    cursor:pointer;
    padding:2px 0;
}
.ohs-tm-list{display:grid;gap:14px}
.ohs-tm-card{
    display:grid;
    grid-template-columns:150px 1fr;
    gap:22px;
    padding:20px;
    background:#fff;
    border:1px solid var(--ohs-line);
    border-radius:14px;
    box-shadow:0 4px 18px rgba(15,48,63,.045);
}
.ohs-tm-card[hidden]{display:none!important}
.ohs-tm-photo{
    width:145px;
    height:170px;
    overflow:hidden;
    border-radius:11px;
    background:#e7eef0;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--ohs-petrol);
    font-size:34px;
    font-weight:800;
}
.ohs-tm-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.ohs-tm-card-heading{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
}
.ohs-tm-card h3{
    margin:0 !important;
    padding:0 !important;
    font-size:23px !important;
    font-weight:800 !important;
    color:var(--ohs-petrol) !important;
    line-height:1.15 !important;
}
.ohs-tm-headline{
    margin:4px 0 0;
    color:var(--ohs-muted);
    font-size:13px;
}
.ohs-tm-status{
    display:inline-block;
    flex:0 0 auto;
    border-radius:999px;
    padding:6px 9px;
    font-size:11px;
    font-weight:800;
}
.ohs-tm-status.is-open{background:#e9f5e2;color:#356f1b}
.ohs-tm-status.is-closed{background:#f2f3f3;color:#68757a}
.ohs-tm-tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:10px 0;
}
.ohs-tm-tags span{
    background:var(--ohs-blue-pale);
    color:#355965;
    border-radius:999px;
    padding:5px 8px;
    font-size:11px;
    line-height:1.2;
}
.ohs-tm-tags-large span{font-size:13px;padding:7px 10px}
.ohs-tm-rates{
    display:grid;
    grid-template-columns:repeat(2,minmax(160px,1fr));
    gap:8px;
    max-width:550px;
    margin:10px 0;
}
.ohs-tm-rates>div{
    border:1px solid #dce7df;
    background:var(--ohs-sage);
    border-radius:9px;
    padding:10px 12px;
}
.ohs-tm-rates>div:first-child{
    background:#f3f8ee;
    border-color:#d7e5cc;
}
.ohs-tm-rates>div:last-child{
    background:#f3f7f8;
    border-color:#d7e2e5;
}
.ohs-tm-rates span,
.ohs-tm-rates small{
    display:block;
    color:var(--ohs-muted);
    font-size:11px;
}
.ohs-tm-rates strong{
    display:block;
    color:var(--ohs-petrol);
    font-size:17px;
    margin-top:2px;
}
.ohs-tm-summary{
    margin:12px 0 9px;
    line-height:1.6;
    color:#38545e;
}
.ohs-tm-availability{
    margin:8px 0;
    font-size:13px;
    color:var(--ohs-muted);
}
.ohs-tm-card-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-top:15px;
}
.ohs-tm-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:9px 16px;
    border:1px solid var(--ohs-green);
    border-radius:7px;
    background:var(--ohs-green);
    color:#fff!important;
    text-decoration:none!important;
    font-weight:800;
    cursor:pointer;
    line-height:1.15;
}
.ohs-tm-button:hover{
    background:var(--ohs-green-dark);
    border-color:var(--ohs-green-dark);
}
.ohs-tm-button-secondary{
    background:#fff;
    color:var(--ohs-petrol)!important;
    border-color:#b9cbcf;
}
.ohs-tm-button-secondary:hover{
    background:#f3f7f8;
    color:var(--ohs-petrol)!important;
}
.ohs-tm-button-block{display:flex;width:100%}
.ohs-tm-pagination{
    display:flex;
    gap:5px;
    justify-content:center;
    margin:20px 0 0;
}
.ohs-tm-pagination button{
    min-width:35px;
    height:35px;
    border:1px solid #cddbdd;
    border-radius:6px;
    background:#fff;
    color:var(--ohs-petrol);
    cursor:pointer;
}
.ohs-tm-pagination button.is-current{
    background:var(--ohs-petrol);
    color:#fff;
    border-color:var(--ohs-petrol);
}
.ohs-tm-no-results,
.ohs-tm-public-empty,
.ohs-tm-admin-warning{
    border:1px solid var(--ohs-line);
    border-radius:12px;
    background:#fff;
    padding:22px;
    margin:18px 0;
}
.ohs-tm-no-results span{display:block;color:var(--ohs-muted);margin-top:3px}
.ohs-tm-admin-warning{background:#fff8df;border-color:#ead28b}
.ohs-tm-back{
    display:inline-block;
    margin:0 0 14px;
    color:var(--ohs-petrol);
    text-decoration:none;
    font-weight:700;
}
.ohs-tm-profile-hero{
    display:grid;
    grid-template-columns:190px 1fr;
    gap:24px;
    align-items:center;
    background:linear-gradient(135deg,var(--ohs-petrol),#18566a);
    color:#fff;
    border-radius:18px;
    padding:24px;
}
.ohs-tm-profile-hero .ohs-tm-kicker{color:#a8d77c}
.ohs-tm-profile-headline{
    margin:7px 0 13px;
    font-size:16px;
    color:#e5f0f3;
}
.ohs-tm-photo-large{
    width:190px;
    height:220px;
    background:#e7eef0;
}
.ohs-tm-rates-profile{max-width:620px}
.ohs-tm-rates-profile>div{background:#fff;color:var(--ohs-text)}
.ohs-tm-profile-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:22px;
    margin-top:22px;
    align-items:start;
}
.ohs-tm-profile-section,
.ohs-tm-request-panel{
    background:#fff;
    border:1px solid var(--ohs-line);
    border-radius:14px;
    padding:20px;
    margin-bottom:14px;
}
.ohs-tm-profile-section h2,
.ohs-tm-request-panel h2{
    margin:0 0 10px;
    color:var(--ohs-petrol);
    font-size:21px;
}
.ohs-tm-copy p{line-height:1.65;margin:0 0 10px}
.ohs-tm-request-panel{
    position:sticky;
    top:24px;
    box-shadow:0 5px 20px rgba(15,48,63,.05);
}
.ohs-tm-request-form label{display:block;margin-bottom:13px}
.ohs-tm-request-price{
    background:var(--ohs-sage);
    border:1px solid #dce7df;
    border-radius:9px;
    padding:11px;
    margin:0 0 13px;
}
.ohs-tm-request-price strong,
.ohs-tm-request-price span,
.ohs-tm-request-price small{
    display:block;
}
.ohs-tm-request-price span{margin-top:4px}
.ohs-tm-request-price small{color:var(--ohs-muted);margin-top:6px}
.ohs-tm-small{
    font-size:12px;
    line-height:1.5;
    color:var(--ohs-muted);
    margin-top:10px;
}
.ohs-tm-notice{
    border-radius:9px;
    padding:12px 14px;
    margin-bottom:14px;
}
.ohs-tm-notice-success{background:#e9f5e2;border:1px solid #b9d7aa;color:#315f1a}
.ohs-tm-notice-error{background:#fff0f0;border:1px solid #e1b0b0;color:#842323}
@media (max-width:900px){
    .ohs-tm-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .ohs-tm-profile-grid{grid-template-columns:1fr}
    .ohs-tm-request-panel{position:static}
}
@media (max-width:650px){
    .ohs-tm-hero{padding:25px 22px}
    .ohs-tm-hero h1,.ohs-tm-profile h1{font-size:30px}
    .ohs-tm-rate-explainer{display:block}
    .ohs-tm-rate-explainer>div{margin-bottom:10px}
    .ohs-tm-filter-grid{grid-template-columns:1fr}
    .ohs-tm-card{grid-template-columns:92px 1fr;gap:13px;padding:13px}
    .ohs-tm-photo{width:92px;height:112px}
    .ohs-tm-card-heading{display:block}
    .ohs-tm-status{margin-top:7px}
    .ohs-tm-rates{grid-template-columns:1fr}
    .ohs-tm-card-actions{grid-column:1/-1}
    .ohs-tm-profile-hero{grid-template-columns:1fr;text-align:left}
    .ohs-tm-photo-large{width:145px;height:170px}
    .ohs-tm-filter-meta{align-items:flex-start}
}

.ohs-tm-identity-gateway label{
    display:block;
    margin:0 0 13px;
}
.ohs-tm-identity-gateway label>span{
    display:block;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    color:#4f6971;
    margin-bottom:5px;
}
.ohs-tm-identity-gateway select{
    display:block;
    width:100%;
    min-height:43px;
    border:1px solid #cbd9dc !important;
    border-radius:8px !important;
    background:#fff;
    color:var(--ohs-text);
    padding:8px 10px;
    box-shadow:none !important;
    font:inherit;
}
.ohs-tm-identity-summary{
    background:var(--ohs-blue-pale);
    border:1px solid #d6e4e8;
    border-radius:9px;
    padding:10px 12px;
    margin:0 0 13px;
}
.ohs-tm-identity-summary strong,
.ohs-tm-identity-summary span{
    display:block;
}
.ohs-tm-identity-summary strong{
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.04em;
    color:#55707a;
    margin-bottom:2px;
}
.ohs-tm-new-customer-note{
    border-top:1px solid #e7edef;
    margin-top:14px;
    padding-top:12px;
}
.ohs-tm-new-customer-note strong,
.ohs-tm-new-customer-note span{
    display:block;
}
.ohs-tm-new-customer-note span{
    color:var(--ohs-muted);
    font-size:12px;
    line-height:1.5;
    margin-top:3px;
}


.ohs-tm-notice-info{
    background:#edf4f6;
    border:1px solid #cbdde2;
    color:#234b58;
}
.ohs-tm-auth-card{
    border-top:1px solid #e5ecee;
    margin-top:16px;
    padding-top:16px;
}
.ohs-tm-auth-card h3{
    margin:0 0 9px !important;
    padding:0 !important;
    color:var(--ohs-petrol) !important;
    font-size:16px !important;
    line-height:1.25 !important;
}
.ohs-tm-auth-card p{
    margin:0 0 11px;
    color:#526a73;
    line-height:1.5;
    font-size:13px;
}
.ohs-tm-auth-card-new{
    margin-top:20px;
}
.ohs-tm-auth-form label{
    display:block;
    margin:0 0 11px;
}
.ohs-tm-auth-form label>span{
    display:block;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    color:#4f6971;
    margin-bottom:5px;
}
.ohs-tm-auth-form input[type="text"],
.ohs-tm-auth-form input[type="email"],
.ohs-tm-auth-form input[type="password"]{
    display:block;
    width:100%;
    min-height:43px;
    border:1px solid #cbd9dc !important;
    border-radius:8px !important;
    background:#fff;
    color:var(--ohs-text);
    padding:8px 10px;
    box-shadow:none !important;
    font:inherit;
}
.ohs-tm-auth-form label small{
    display:block;
    margin-top:4px;
    color:var(--ohs-muted);
    font-size:11px;
}
.ohs-tm-auth-name-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}
.ohs-tm-auth-form .ohs-tm-check{
    display:grid;
    grid-template-columns:18px 1fr;
    gap:8px;
    align-items:start;
    background:#f6f9f3;
    border:1px solid #dce7d5;
    border-radius:8px;
    padding:10px;
}
.ohs-tm-auth-form .ohs-tm-check input{
    margin:2px 0 0;
}
.ohs-tm-auth-form .ohs-tm-check span{
    margin:0;
    font-weight:600;
    line-height:1.4;
}
.ohs-tm-reset-link{
    display:inline-block;
    margin-top:9px;
    font-size:12px;
    color:var(--ohs-petrol);
}
@media (max-width:650px){
    .ohs-tm-auth-name-grid{
        grid-template-columns:1fr;
        gap:0;
    }
}


.ohs-tm-account-type{
    border:0;
    padding:0;
    margin:0 0 16px;
}
.ohs-tm-account-type legend{
    display:block;
    width:100%;
    margin:0 0 7px;
    padding:0;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    color:#4f6971;
}
.ohs-tm-choice{
    display:grid !important;
    grid-template-columns:18px 1fr;
    gap:9px;
    align-items:start;
    padding:10px 11px;
    margin:0 0 7px !important;
    border:1px solid #d6e1e4;
    border-radius:8px;
    background:#fff;
    cursor:pointer;
}
.ohs-tm-choice input{
    margin:3px 0 0;
}
.ohs-tm-choice span,
.ohs-tm-choice strong,
.ohs-tm-choice small{
    display:block;
}
.ohs-tm-choice strong{
    color:var(--ohs-petrol);
    font-size:13px;
}
.ohs-tm-choice small{
    margin-top:2px;
    color:var(--ohs-muted);
    font-size:11px;
    line-height:1.4;
}
.ohs-tm-form-section-title{
    margin:15px 0 9px !important;
    padding:0 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    color:var(--ohs-petrol) !important;
}
.ohs-tm-guardian-fields{
    border-top:1px solid #e6edef;
    margin-top:14px;
    padding-top:1px;
}
.ohs-tm-guardian-fields[hidden]{
    display:none !important;
}
