
/* Warm, accessible presentation; behavior remains in app.js/chat.js. */
:root{font-family:"Segoe UI",Arial,system-ui,sans-serif;color:#233c37;background:#faf8f2}
.layout{grid-template-columns:224px minmax(0,1fr)}
.sidebar{background:#edf2e8;color:#28483e;padding:27px 14px;border-right:1px solid #dfe6d9}
.brand{font-size:24px;letter-spacing:.2px;padding:5px 8px}.brand i{color:#b75a36}
.tagline{font-size:11px;line-height:1.5;padding:8px 9px 28px;color:#526b60}
.nav{color:#345246;font-size:15px;font-weight:600;padding:13px 14px;border-radius:12px}
.nav.active{background:#d1e1ca;color:#234f3c}.nav:hover{background:#dfe9d9}
.main{padding:24px 32px 48px;max-width:1500px;width:100%;margin:0 auto}
.top{gap:10px;margin-bottom:26px}.top input{background:#fffef9;border:1px solid #c6d3c4;border-radius:14px;padding:14px 16px;color:#253e35}
.top button,.primary{background:#38634e;border-radius:12px;padding:13px 20px;font-weight:600}
.top button:hover,.primary:hover{background:#2a503d}.top .login{color:#365c48;background:#fffef9;border:1px solid #b6c7b0}
.content{display:block}.right{display:none}.muted{color:#56695f}.subtle{color:#586d61;line-height:1.5}
.site-hero{grid-template-columns:1fr 1.1fr;background:#f0eadc;border:1px solid #e7dfcc;border-radius:24px;margin:0 0 26px}
.site-hero-copy{padding:36px 30px;color:#284b3b;align-self:center}
.site-hero h1{font-size:clamp(34px,3.7vw,54px);font-weight:750;line-height:1.08;letter-spacing:-1.8px;margin:15px 0 20px}
.site-hero p{font-size:16px;line-height:1.6}.site-hero .eyebrow{font-size:10px;letter-spacing:1.4px;color:#78512f}
.site-hero figure,.site-hero .slides{min-height:430px}.site-hero .slides{height:100%}
.hero-actions{gap:10px}.hero-actions button{font-size:14px;padding:12px 14px}
.secondary{background:#fffdf6;color:#365943;border:1px solid #bdcbb5;border-radius:10px}
.sectionhead{margin:27px 0 17px}.sectionhead h2{font-size:25px;color:#294a3a}.sectionhead p{font-size:14px;margin:7px 0}
.sectionhead select{background:#fffef9;border:1px solid #c6d3c4;border-radius:10px;padding:10px;color:#3d594b}
#homeList,#searchList,#regionList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.listing{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:0;background:#fffefb;border:1px solid #e2e5d8;border-radius:19px;overflow:hidden;box-shadow:0 5px 18px #273d2610}
.thumb{width:100%;height:174px;border-radius:0;flex-shrink:0;background:#e9efdf;color:#486444;object-fit:contain}
.thumb.placeholder{display:flex;flex-direction:column;justify-content:center;gap:9px;background:linear-gradient(135deg,#e7efdf,#f1ead6)}
.thumb-icon{font-size:43px;line-height:1}.thumb-label{font-size:12px;color:#55694c}
.listing .meta{padding:21px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.listing h3{font-size:20px;line-height:1.3;margin:3px 0;color:#294638}
.listing p{line-height:1.5;font-size:14px;margin:2px 0;color:#586b5b}
.listing .location{font-weight:650;color:#385a45}.listing .description{margin-top:6px}
.badge{order:-1;background:#f2e9d7;color:#775432;border-radius:30px;font-size:11px;font-weight:650;padding:5px 10px;margin:0 0 3px}
.contact-button{width:100%;margin-top:14px;border:1px solid #bdceb6;border-radius:10px;background:#eaf1e5;color:#31543d;padding:11px 14px;font-size:14px;font-weight:650;text-align:center}
.contact-button:hover{background:#dce8d5}
.panel,.empty{background:#fffefb;border:1px solid #e2e5d8;border-radius:18px;padding:24px}
.panel input,.panel select,.panel textarea{background:#fffefb;border-color:#c8d3c1;color:#263f34;border-radius:10px}
.panel label{font-size:14px}.panel h2{color:#2f523e}.empty{grid-column:1/-1}
.notice:empty{display:none}.notice{background:#edf3e7;border-radius:10px;padding:12px 16px;line-height:1.5;color:#305a41}
.sponsor-preview{padding:18px 22px;background:#f7f4eb;border-color:#dfddcd;margin:22px 0}
.sponsor-preview .adlabel{float:none}.sponsor-preview h2{color:#52614d;font-size:16px}
.sponsor-preview p{font-size:13px}.sponsor-preview-note{font-size:11px;flex-shrink:1}
#messageList{background:#f1f4ec}.chat-message{border-color:#dbe3d3}.chat-message.own{background:#e7efdd}
.conversation-button.selected{background:#e8f0df;border-color:#779866}#verificationPending{background:#f3efdf}
button,a,input,textarea,select{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a15b21;outline-offset:3px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.listing{transition:box-shadow .2s ease,transform .2s ease}.listing:hover{transform:translateY(-2px);box-shadow:0 9px 25px #273d261b}button{transition:background-color .18s ease}}
@media(max-width:1100px){.main{padding:20px}.site-hero{grid-template-columns:1fr}.site-hero-copy{padding:29px}.site-hero figure,.site-hero .slides{min-height:0}.site-hero .slides{aspect-ratio:3/2}.site-hero h1{font-size:42px}}
@media(max-width:720px){.layout{display:block}.sidebar{padding:16px 14px 12px;border-right:0;border-bottom:1px solid #dfe6d9}.brand{font-size:25px}.tagline{padding:4px 8px 11px}.nav{font-size:12px;padding:10px 9px;margin:2px 0}.main{padding:18px 14px 36px}.top{gap:8px;margin-bottom:18px}.top input{flex-basis:65%;font-size:15px;padding:12px}.top button{padding:11px 15px;font-size:13px}.top .login{max-width:100%;overflow-wrap:anywhere}.site-hero{border-radius:20px}.site-hero-copy{padding:27px 23px}.site-hero h1{font-size:39px}.site-hero p{font-size:15px}.hero-actions button{font-size:12px;padding:12px}.sectionhead h2{font-size:23px}.sectionhead select{margin-top:9px}#homeList,#searchList,#regionList{grid-template-columns:1fr;gap:17px}.thumb{height:180px}.listing .meta{padding:20px}.sponsor-preview{padding:16px}.panel{padding:19px}.chat-layout{gap:10px}.verification-page{margin:25px 12px}.site-hero .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.listing,button,.slide{transition:none!important;animation:none!important}}

.app-development{margin:24px 0}.app-development h2{font-size:23px;margin:0 0 10px}.app-development p{line-height:1.6;margin:8px 0}.app-development p:last-child{margin-bottom:0}
