:root{--primary: #1ca798;--primary-dark: #087c71;--mint-soft: #dcf4ef;--ink: #19302e;--muted: #667573;--line: #dfe8e6;--cream: #fff8e9;--radius: 18px;--shadow: 0 10px 35px rgba(25, 48, 46, .09);--shadow-lg: 0 24px 70px rgba(25, 48, 46, .16);color-scheme:light}*{box-sizing:border-box}html{min-width:0;scroll-behavior:smooth}body{min-width:0;margin:0;background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}main,app-root,router-outlet{min-width:0}img,svg{max-width:100%}button,input,textarea,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ffd37a;outline-offset:2px}.section{width:min(1180px,100% - 2.4rem);margin:0 auto;padding:4.5rem 0}.eyebrow{color:var(--primary-dark);font-size:.74rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.7rem}.section-heading h2{margin:.35rem 0 0;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.05em}.section-heading a{color:var(--primary-dark);font-weight:750;text-decoration:none}.page-hero{padding:5rem 1.2rem;text-align:center;background:linear-gradient(135deg,var(--mint-soft),#f9fcfb 55%,var(--cream))}.page-hero.compact h1{margin:.5rem 0;font-size:clamp(2.5rem,5vw,4.4rem);letter-spacing:-.055em}.page-hero p{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.25rem;border:1px solid transparent;border-radius:12px;cursor:pointer;font-weight:750;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--primary);color:#fff;box-shadow:0 8px 22px #1ca79840}.button-primary:hover{background:var(--primary-dark)}.button-secondary{background:#fff;color:var(--ink);border-color:var(--line)}.button-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.button-small{min-height:38px;padding:.5rem .9rem;border-radius:9px;font-size:.82rem}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.listing-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:transform .2s,box-shadow .2s}.listing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.listing-image{position:relative;display:grid;place-items:center;aspect-ratio:16/10;background:var(--mint-soft) center/cover no-repeat;font-size:4rem}.listing-image em{position:absolute;top:.8rem;left:.8rem;border-radius:99px;padding:.3rem .6rem;background:#fff;color:#147851;font-size:.65rem;font-style:normal;font-weight:850;text-transform:uppercase}.listing-body{padding:1.2rem}.listing-body h3{margin:.35rem 0;font-size:1.15rem}.listing-body p{color:var(--muted);font-size:.85rem}.listing-body strong{color:var(--primary-dark)}.listing-location{color:var(--primary-dark);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.notice{margin:1rem 0;padding:.9rem 1rem;border-radius:10px;font-size:.9rem}.notice.error{color:#8f2530;background:#feecee}.notice.success{color:#0f6847;background:#e5f8ef}.empty-state{padding:4rem 1rem;text-align:center;color:var(--muted)}.empty-state>span:first-child{display:block;font-size:4rem}.empty-state h2{color:var(--ink)}app-listing-detail .request-button{width:100%;margin-top:1.4rem}app-listing-detail .request-button:disabled{opacity:.6;cursor:wait}app-listing-detail .request-form{display:grid;grid-template-columns:1fr 90px;gap:.7rem;margin-top:1.3rem}app-listing-detail .request-form label{display:grid;gap:.3rem}app-listing-detail .request-form label>span{color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}app-listing-detail .request-form input,app-listing-detail .request-form select{width:100%;min-width:0;padding:.7rem;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit}app-listing-detail .request-form .message-field,app-listing-detail .request-form .request-button,app-listing-detail .request-error{grid-column:1/-1}app-listing-detail .request-form .request-button{margin-top:0}app-listing-detail .message-field small{font-weight:400;text-transform:none;letter-spacing:0}app-listing-detail .request-error{padding:.6rem;border-radius:8px;background:#feecee;color:#8f2530;font-size:.75rem}app-listing-detail .request-confirmation{display:grid;gap:.2rem;margin-top:1.4rem;padding:.85rem 1rem;border-radius:12px;background:#e5f8ef;color:#0f6847;text-align:center}app-listing-detail .request-confirmation span{font-size:.72rem}@media (max-width: 980px){.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 620px){.section{width:min(100% - 2rem,1180px);padding:3rem 0}.page-hero{padding:3.5rem 1rem}.listing-grid{grid-template-columns:minmax(0,1fr)}.section-heading{align-items:start;flex-direction:column}app-listing-detail .request-form{grid-template-columns:minmax(0,1fr)}app-listing-detail .request-form>*{grid-column:auto!important}}
