.tr-wrap{max-width:1120px;margin:auto}.tr-hero{background:#edf4f0;padding:3rem 0}.tr-hero h1{max-width:22ch}.tr-intro{max-width:65ch}.tr-tools{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;padding:1.3rem;background:#fff;border:1px solid #d5e1db;border-radius:14px;margin:2rem 0 1rem}.tr-tools label{display:grid;gap:.4rem;font-weight:600}.tr-tools input,.tr-tools select,.tr-intake input,.tr-intake textarea{width:100%;min-width:0;box-sizing:border-box;padding:.8rem;border:1px solid #80978c;border-radius:7px;background:#fff;color:#193e31;font:inherit}.tr-tools .tr-controls{grid-column:1/-1;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.tr-tools .tr-distance{display:flex;align-items:center;gap:.5rem;font-weight:400}.tr-distance input{width:auto}.tr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.tr-card{display:flex;flex-direction:column;align-items:start;padding:1.4rem;background:#fff;border:1px solid #d5e1db;border-radius:12px;text-decoration:none!important;color:#173c2d!important;min-width:0}.tr-card:hover{border-color:#2c7255;box-shadow:0 5px 20px #173c2d12}.tr-card h2{font-size:1.23rem;line-height:1.3;margin:.6rem 0}.tr-card p{margin:.3rem 0 .8rem}.tr-card .tr-open{margin-top:auto;font-weight:600;padding-top:1rem}.tr-place{font-size:.9rem;color:#526a5e}.tr-count{color:#526a5e}.tr-tags{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;list-style:none}.tr-tags li{background:#edf4f0;border-radius:6px;padding:.35rem .7rem}.tr-detail{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:2rem}.tr-contact{padding:1.6rem;background:#edf4f0;border-radius:14px;align-self:start}.tr-contact dt{font-size:.88rem;font-weight:600;margin-top:1.1rem}.tr-contact dd{margin:.3rem 0 0;overflow-wrap:anywhere}.tr-website{display:block;overflow-wrap:anywhere;user-select:text!important}.tr-note{padding:1rem 1.2rem;border-left:3px solid #8eab9b;background:#f5f8f6;margin:1.4rem 0}.tr-source{font-size:.9rem;overflow-wrap:anywhere}.tr-source ul{padding-left:1.2rem}.tr-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin:1.3rem 0}.tr-copy{margin-top:.65rem}.tr-intake{max-width:820px}.tr-intake label{display:grid;gap:.4rem;margin:1rem 0}.tr-intake .tr-check{display:flex;align-items:start;gap:.7rem}.tr-check input{width:auto;margin-top:.35rem}.tr-preview{white-space:pre-wrap;padding:1.5rem;background:#edf4f0;border-radius:12px;overflow-wrap:anywhere}.tr-footer-note{border-top:1px solid #d5e1db;padding-top:1.2rem;font-size:.95rem}.tr-home{padding:2rem;background:#edf4f0;border-radius:14px;margin:2rem auto}.tr-home p{max-width:65ch}.tr-scope{font-size:.94rem;max-width:80ch}.tr-section{padding:2.5rem 0}.tr-wrap [hidden]{display:none!important}.tr-wrap a:focus-visible,.tr-wrap button:focus-visible,.tr-wrap input:focus-visible,.tr-wrap select:focus-visible{outline:3px solid #945d25;outline-offset:3px}
@media(max-width:900px){.tr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tr-detail{grid-template-columns:1fr}.tr-tools{grid-template-columns:1fr 1fr}.tr-tools label:first-child{grid-column:1/-1}}
@media(max-width:550px){.tr-grid,.tr-tools{grid-template-columns:1fr}.tr-hero{padding:2rem 0}.tr-card{padding:1.1rem}.tr-tools label:first-child{grid-column:auto}.tr-contact{padding:1.2rem}.tr-actions .btn{max-width:100%;white-space:normal}}

/* Two primary fields, with optional refinements kept out of the first step. */
.tr-hero{padding:1.6rem 0}.tr-hero h1{margin:.5rem 0;max-width:none}.tr-hero .lead{margin:.6rem 0 0;font-size:1.1rem}.tr-section{padding:1.3rem 0}
.tr-tools{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);margin:0 0 1rem;gap:1rem 1.3rem;padding:1.2rem}
.tr-tools label:first-child{grid-column:auto}.tr-search-options{grid-column:1/-1;display:flex;align-items:baseline;gap:1rem;justify-content:space-between}.tr-search-options details{flex:1}
.tr-search-options summary{cursor:pointer;color:#365e4a;font-size:.92rem;width:fit-content;padding:.15rem 0}.tr-extra-fields{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:.9rem}.tr-extra-fields>label:first-child{flex:1;max-width:30rem;min-width:0}.tr-extra-fields .tr-distance{display:flex;font-weight:400;white-space:nowrap}
.tr-reset{border:0;background:#edf4f0;color:#365e4a;text-decoration:none!important;cursor:pointer;font:inherit;font-size:.92rem;padding:.38rem .7rem;border-radius:999px}.tr-reset:hover{background:#dfece6;color:#1f4f3a}.tr-count{margin:.6rem 0 .25rem;font-weight:600}.tr-location-help{margin:0;font-size:.86rem;color:#526a5e}.tr-proximity{font-weight:600;font-size:.9rem;background:#edf4f0;padding:.25rem .55rem;border-radius:5px;margin-bottom:.6rem}.tr-actions{padding-top:1rem;border-top:1px solid #d5e1db;font-size:.93rem;gap:1rem 1.8rem}
@media(max-width:550px){.tr-tools{grid-template-columns:minmax(0,1fr);padding:1rem;gap:.85rem}.tr-tools label:first-child{grid-column:auto}.tr-extra-fields{display:grid}.tr-hero{padding:1rem 0}.tr-hero h1{font-size:2rem}.tr-search-options summary,.tr-reset{min-height:32px;display:flex;align-items:center}.tr-search-options summary::before{content:'＋';margin-right:.35rem}.tr-search-options details[open] summary::before{content:'−'}}
/* Match field widths to the information requested. */
.tr-tools{width:fit-content;max-width:100%;box-sizing:border-box;grid-template-columns:minmax(0,22rem) 8rem}
.tr-tools label[for="tr-location"],#tr-location{width:8rem;max-width:100%}
@media(max-width:550px){.tr-tools{width:100%;grid-template-columns:minmax(0,1fr)}.tr-tools label[for="tr-location"]{width:8rem}}

.tr-intake input[name="postalcode"]{max-width:8rem}.tr-intake input[type="tel"]{max-width:16rem}.tr-intake input[name="city"]{max-width:25rem}.tr-intake input[type="email"],.tr-intake input[name="name"],.tr-intake input[name="contact"]{max-width:34rem}.tr-intake input[name="existing"]{max-width:34rem}.tr-student{font-size:.88rem;font-weight:600;color:#755324}
.tr-intake .tr-check input,.tr-tools .tr-distance input{flex:0 0 1.125rem;width:1.125rem;height:1.125rem;padding:0}.tr-intake .tr-check span{min-width:0}

/* The service expands 5–100 km automatically and returns at most nine profiles. */
.tr-tools{grid-template-columns:minmax(0,22rem) 8rem}.tr-enhanced .tr-submit{display:none}.tr-result-count{font-weight:600}.tr-tools .tr-extra-fields label{min-width:0}.tr-submit{padding:.4rem .9rem}
@media(max-width:700px){.tr-tools{grid-template-columns:minmax(0,1fr) 8rem;width:100%}.tr-tools label:first-child{grid-column:1}.tr-tools label[for="tr-location"]{grid-column:2}.tr-search-options{flex-wrap:wrap}}
