@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#172e22;--green:#173f2d;--muted:#3e4d40;--cream:#e9eddf;--orange:#a44e28;--line:#aebba7;--white:#fff;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.6;background:#e9eee7}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #d28a50;outline-offset:5px}svg{width:22px;height:22px;vertical-align:middle}i[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-style:normal}button{border:0;background:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif}h2{font-size:36px;letter-spacing:-1.4px;line-height:1.28;font-weight:750}h2 em{font:italic 1.1em var(--serif);font-weight:400;color:var(--orange)}.section{width:min(1240px,calc(100% - 96px));margin:auto}.preview{min-height:34px;background:#eaf0e7;color:#344c37;font-size:11px;display:flex;align-items:center;justify-content:center;gap:7px;padding:5px 20px}.preview button{font-size:11px;text-decoration:underline;margin-left:8px}.preview-dot,.live-dot{width:6px;height:6px;border-radius:50%;background:#698c68;display:inline-block;flex-shrink:0}.header{position:sticky;top:0;z-index:20;background:#fff;;border-bottom:1px solid #e7e8df}.nav-wrap{width:min(1360px,calc(100% - 72px));height:94px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;line-height:1.1;flex-shrink:0}.brand>span:last-child{font-family:'Manrope',Arial,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.7px}.brand em{display:block;font-size:15px;letter-spacing:.2px;font-style:normal;font-weight:550;margin-top:4px}.brand-icon{display:grid;place-items:center;border-radius:13px;width:47px;height:51px;background:var(--green);color:#f8eed7}.brand-icon svg{width:31px;height:31px}nav{display:flex;gap:29px;font-size:13px;font-weight:600}nav a{position:relative;padding:8px 0}nav a:after{content:'';position:absolute;height:1px;background:var(--green);bottom:2px;left:0;right:100%;transition:right .2s}nav a:hover:after{right:0}.pro-button{border:1px solid #809477;border-radius:7px;padding:12px 17px;font-weight:600;font-size:12px;display:flex;gap:16px;align-items:center}.pro-button:hover{background:#edf0e8}.menu-button{display:none}.hero{background:var(--cream);padding:30px 0 32px;position:relative;margin-bottom:32px}.hero-inner{width:min(1240px,calc(100% - 96px));margin:auto;display:grid;grid-template-columns:1.35fr 1fr;gap:38px;align-items:center;padding-bottom:25px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.8px;color:#3c5538;display:flex;gap:7px;align-items:center;margin-bottom:20px}.location-mark{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--orange)}h1{font-size:clamp(40px,3.8vw,55px);line-height:1.09;letter-spacing:-3.3px;font-weight:750;position:relative;width:fit-content}h1>span{color:var(--orange);font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-3.7px;font-size:1.12em}.underline{display:block;width:280px;height:14px;color:#d7a16a;margin-top:2px;margin-left:12px}.hero-desc{font-size:17px;color:#364b3b;line-height:1.85;margin-top:23px}.hero-benefits{display:flex;gap:25px;font-size:13px;font-weight:600;margin-top:22px}.hero-benefits span{display:flex;align-items:center;gap:7px}.hero-benefits svg{width:15px;height:15px;color:#365c30}.hero-art{position:relative;padding:17px 0 15px;max-width:365px;margin-left:auto;width:100%}.village{width:100%;height:auto;display:block;border-radius:29px;transform:rotate(-1.5deg)}.art-label{position:absolute;z-index:1;right:-12px;top:3px;background:#fffef9;padding:14px 20px 14px 36px;box-shadow:0 6px 30px #314c3710;border:1px solid #e4e9de;border-radius:12px;font-size:11px;transform:rotate(3deg);line-height:1.7}.art-label .live-dot{position:absolute;left:19px;top:22px}.art-label strong{font-weight:600}.area-tag{position:absolute;bottom:-3px;left:30px;display:flex;gap:12px;align-items:center;background:#fffef9;padding:14px 18px;border:1px solid #e4e9de;border-radius:12px;box-shadow:0 6px 30px #314c3710;min-width:245px;transform:rotate(-3deg)}.area-tag>i{color:var(--orange)}.area-tag strong,.area-tag span:not(.area-number){display:block;font-size:12px}.area-tag span:not(.area-number){font-size:10px;color:var(--muted)}.area-number{font-family:var(--serif);font-size:30px;margin-left:auto;color:#5c7251}input::placeholder{color:#4c5d45}.primary{background:var(--green);color:white;border:1px solid var(--green);border-radius:7px;font-size:12px;font-weight:650;display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:15px 20px;transition:background .15s,transform .15s}.primary:hover{background:#163a2b;transform:translateY(-1px)}.primary svg{width:18px;height:18px}.dot{width:5px;height:5px;display:inline-block;border-radius:50%}.green{background:#679b68}.amber{background:#c9994b}.results{padding-top:23px;padding-bottom:65px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:29px}.section-top .eyebrow{margin-bottom:11px}.section-top p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:13px}.demo-pill{font-size:12px;border:1px solid #b4a482;color:#64522f;border-radius:30px;padding:6px 11px;white-space:nowrap;margin-bottom:5px}.results-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 13px;font-size:13px;color:#3d4f37}.text-button{font-size:11px;display:inline-flex;gap:8px;align-items:center;justify-content:center;padding:6px 0;text-decoration:underline;text-underline-offset:4px}.text-button svg{width:13px;height:13px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{border:1px solid #8fa085;border-radius:12px;overflow:hidden;background:white;transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}.card:hover{box-shadow:0 12px 25px #2f4c3210;transform:translateY(-3px)}.card-visual{height:146px;position:relative;overflow:hidden;background:#e9ede2}.card-visual>svg{width:100%;height:100%;display:block}.craft-label{position:absolute;left:14px;top:12px;background:#fffef4ed;border-radius:5px;padding:3px 8px;font-size:12px;letter-spacing:.3px;font-weight:650}.fiction-label{position:absolute;right:10px;bottom:8px;font-size:10px;color:#30492b;background:#ffffffbc;padding:1px 6px;border-radius:4px}.card-content{padding:19px 19px 16px;display:flex;flex-direction:column;flex:1}.card-title{font-size:20px;letter-spacing:-.5px;line-height:1.45}.card-place{display:flex;gap:5px;align-items:center;font-size:14px;color:#374c30;margin-top:7px;line-height:1.65}.card-place svg{width:12px;height:12px}.card-description{font-size:16px;color:#34492d;line-height:1.8;margin-top:14px;min-height:58px}.card-zone{margin-top:11px;font-size:15px;color:#384d31;line-height:1.75}.card-zone strong{font-weight:600;color:#2f4328}.card-status{display:flex;gap:6px;align-items:center;font-size:14px;font-weight:600;margin-top:16px;line-height:1.6}.status-now{color:#245729}.status-appointment{color:#8a480b}.status-unavailable{color:#5e554b}.status-stale{color:#45513e}.status-now .dot{background:#377638}.status-appointment .dot{background:#c87516}.status-unavailable .dot{background:#817669}.status-stale .dot{background:#979f90}.status-date{font-size:13px;color:#4a5842;margin:3px 0 17px;line-height:1.75}.card-actions{display:flex;gap:10px;align-items:center;margin-top:auto;border-top:1px solid #b7c6ad;padding-top:14px}.number-button{flex:1;font-size:14px;background:#edf2e7;color:#345b35;border:1px solid #dbe4d2;border-radius:6px;padding:10px 5px;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:600;min-height:46px;line-height:1.5}.number-button svg{width:13px;height:13px}.number-button:hover{background:#e2ebd9}.detail-button{font-size:14px;white-space:nowrap;text-decoration:underline;text-underline-offset:4px;min-height:44px;line-height:1.5}.more{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:28px}.outline{border:1px solid #78926b;border-radius:6px;background:white;padding:12px 21px;display:inline-flex;align-items:center;gap:17px;font-size:11px;font-weight:600}.outline:hover{background:#f0f4eb}.availability-note{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;color:#48553f;font-size:13px;margin-top:23px}.availability-note svg{width:13px;height:13px}.how-section{background:#e4eadb;border-top:1px solid #c2ceb8;border-bottom:1px solid #c2ceb8}.how-inner{padding-top:64px;padding-bottom:65px;display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.how-intro>p:last-child{margin-top:21px;color:#354a31;font-size:15px;line-height:1.9}.steps{display:flex;flex-direction:column;gap:27px}.steps article{display:flex;gap:20px}.step-number{font-family:var(--serif);font-size:26px;color:#87602e;line-height:1.3;min-width:33px}.steps h3{font-size:17px;letter-spacing:-.3px}.steps p{color:#3b4d35;font-size:15px;margin-top:5px;line-height:1.8}.commitments{padding-top:68px;padding-bottom:66px}.commitment-intro{font-size:12px;line-height:1.9}.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:40px}.value-grid article{border-left:1px solid var(--line);padding-left:24px}.value-grid article:first-child{border-left:0;padding-left:0}.value-grid i{width:38px;height:38px;border-radius:11px;background:#f0f3e9;color:#3c5d31;margin-bottom:18px}.value-grid i svg{width:21px;height:21px}.value-grid h3{font-size:16px;letter-spacing:-.3px;margin-bottom:9px}.value-grid p{font-size:15px;color:#3b4d34;line-height:1.9}.pro-section{padding-bottom:64px}.pro-banner{background:#244b3d;color:#f8f5e8;border-radius:16px;position:relative;overflow:hidden;padding:46px 48px;display:flex;justify-content:space-between;gap:35px;align-items:center}.pro-banner:after{content:'';width:370px;height:370px;border:1px solid #52705d;border-radius:50%;position:absolute;right:-220px;top:-100px;pointer-events:none}.pro-banner .eyebrow{color:#dfebcc;margin-bottom:12px}.pro-banner h2{font-size:32px}.pro-banner h2 em{color:#e6b980}.pro-banner p:not(.eyebrow){font-size:15px;color:#f0f5e8;line-height:1.9;margin-top:17px}.pro-symbol{position:absolute;left:47%;top:25px;opacity:.05;transform:rotate(-20deg)}.pro-symbol svg{width:200px;height:200px}.pro-perks{display:flex;gap:20px;margin-top:20px;font-size:13px;color:#f0f5e8}.pro-perks span{display:flex;align-items:center;gap:5px}.pro-perks svg{width:12px;height:12px}.primary.light{background:#f1e9d4;border-color:#f1e9d4;color:#335441}.primary.light:hover{background:#fff8e6}.pro-action{flex-shrink:0;max-width:310px;text-align:center;z-index:1}.pro-action p{font-size:13px!important}.pro-action button{font-size:14px}footer{border-top:1px solid #d5dfd0;background:#fff}.footer-main{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.2fr;gap:34px;padding-top:42px;padding-bottom:37px}.footer-main .brand>span:last-child{font-size:18px}.footer-main .brand em{font-size:12px}.footer-main .brand-icon{width:36px;height:40px;border-radius:10px}.footer-main .brand svg{width:25px;height:25px}.footer-main p{font-size:13px;color:#394c33;margin-top:16px;line-height:1.9}.footer-location{display:block;font-size:12px;color:#4d633f;margin-top:13px}.footer-main h3{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:650;margin:5px 0 15px}.footer-main>div>a:not(.brand),.footer-main button{display:block;padding:0;font-size:10px;color:#394c33;margin-top:9px;text-align:left}.footer-main button:hover,.footer-main a:hover{color:#34583d}.footer-bottom{border-top:1px solid #e3e8db;padding-top:18px;padding-bottom:20px;display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#43563a}.footer-bottom a{font-size:12px}.empty{padding:45px;text-align:center;background:#f6f7f0;border-radius:12px}.empty>i svg{width:30px;height:30px}.empty h3{font-size:18px;margin-top:16px}.empty p{font-size:12px;color:var(--muted);margin:12px auto 22px;max-width:430px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{width:min(690px,calc(100% - 28px));max-height:88dvh;border:1px solid #dce3d5;border-radius:18px;padding:0;color:var(--ink);box-shadow:0 20px 100px #132b3450;overscroll-behavior:contain}dialog::backdrop{background:#172e2860;backdrop-filter:blur(5px)}body.modal-open{overflow:hidden}.dialog-close{position:absolute;right:15px;top:15px;background:#fffef6;border:1px solid #dce3d5;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;z-index:2}.dialog-close svg{width:17px;height:17px}#dialogBody{padding:40px}#dialogBody h2{font-size:30px;padding-right:20px}#dialogBody h3{font-size:15px;margin-top:23px}#dialogBody p,#dialogBody li{font-size:13px;color:#3f5037;line-height:1.85;margin-top:12px}#dialogBody ul{padding-left:18px}#dialogBody .eyebrow{font-size:9px;margin-top:0}#dialogBody .detail-art{margin:-40px -40px 26px;height:190px;overflow:hidden}#dialogBody .detail-art svg{width:100%;height:100%}#dialogBody .detail-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.detail-tags span{background:#f1f4e9;font-size:11px;border-radius:5px;padding:5px 9px}.detail-table{margin-top:16px}.detail-table>div{display:grid;grid-template-columns:150px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.detail-table strong{font-weight:600}.detail-table span{color:var(--muted)}.detail-bottom{display:flex;gap:20px;align-items:center;margin-top:25px}.detail-bottom small{font-size:10px;color:#4a5a40}.notice{background:#f7f3e8;padding:13px 16px;border-radius:7px;font-size:11px!important;color:#6a4e25!important}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:.2s;z-index:100;background:#224b3c;color:#fff;padding:12px 20px;border-radius:9px;font-size:12px;max-width:calc(100% - 32px);box-shadow:0 6px 24px #0002}.toast.show{transform:translate(-50%,0);opacity:1}
@media(min-width:1600px){.hero-inner{padding-top:10px;padding-bottom:25px}.hero-art{max-width:390px}.hero-desc{font-size:17px}nav{font-size:14px}.hero-copy{padding-left:5px}}
@media(max-width:1100px){.nav-wrap{width:calc(100% - 48px);gap:15px}nav{gap:18px;font-size:11px}.brand>span:last-child{font-size:20px}.brand em{font-size:13px}.section,.hero-inner{width:calc(100% - 64px)}.hero-inner{gap:35px}h1{font-size:45px}.hero-desc{font-size:17px}.eyebrow{font-size:9px}.how-inner{gap:60px}.pro-banner{padding:38px 35px}.pro-banner h2{font-size:28px}.pro-perks{gap:12px;font-size:13px}.value-grid{gap:20px}.value-grid article{padding-left:18px}.card-actions{gap:7px}.detail-button{font-size:14px;min-height:44px;line-height:1.5}.card-content{padding:17px 15px}h2{font-size:31px}}
@media(max-width:850px){.nav-wrap{height:78px}.pro-button{margin-left:auto;font-size:11px}.menu-button{display:flex;flex-direction:column;gap:5px;width:35px;height:35px;align-items:center;justify-content:center}.menu-button span{height:2px;width:20px;background:var(--green)}nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fffef9;padding:20px 30px;border-bottom:1px solid var(--line);font-size:14px;box-shadow:0 10px 20px #0001}nav.open{display:flex;flex-direction:column;gap:10px}.hero-inner{gap:26px}.hero{padding-top:30px}h1{font-size:38px;letter-spacing:-2px}.underline{width:215px}.hero-desc{font-size:17px}.hero-benefits{gap:13px;font-size:13px}.hero-art{padding-bottom:0}.art-label{padding:9px 12px 9px 25px;font-size:9px;right:0}.art-label .live-dot{left:12px;top:16px}.area-tag{padding:10px 12px;min-width:205px;left:5px;bottom:-18px}.area-tag strong{font-size:11px}.area-tag span:not(.area-number){font-size:9px}.area-number{font-size:26px}.hero{margin-bottom:27px}.section-top{align-items:flex-start}.demo-pill{font-size:12px}.cards{gap:12px}.card-title{font-size:20px;line-height:1.45}.card-content{padding:14px 12px}.card-visual{height:120px}.card-actions{flex-direction:column;align-items:stretch}.number-button{width:100%;font-size:14px;min-height:46px;line-height:1.5}.detail-button{padding:4px;font-size:14px;min-height:44px;line-height:1.5}.card-description{font-size:16px;min-height:58px;line-height:1.8;color:#34492d}.how-inner{gap:35px}.how-intro h2{font-size:29px}.value-grid{grid-template-columns:repeat(2,1fr);gap:30px}.value-grid article:nth-child(3){border:0;padding-left:0}.pro-banner{gap:25px}.pro-banner h2{font-size:26px}.pro-perks{flex-direction:column;gap:6px;font-size:13px}.pro-action{max-width:240px}.pro-action button{font-size:14px;padding:14px}.footer-main{grid-template-columns:1fr 1fr;row-gap:30px}.commitments .section-top{align-items:flex-end}.commitment-intro{max-width:190px}}
@media(max-width:600px){.section,.hero-inner{width:calc(100% - 36px)}.preview{font-size:9px;padding:6px 12px;gap:5px}.preview-extra{display:none}.preview button{font-size:9px;margin-left:3px}.nav-wrap{width:calc(100% - 32px);height:72px;gap:12px}.brand>span:last-child{font-size:19px}.brand em{font-size:12px}.brand-icon{width:38px;height:42px;border-radius:11px}.brand-icon svg{width:27px;height:27px}.pro-button{border:0;padding:7px 0;font-size:10px;gap:5px}.pro-button span{display:none}.menu-button{width:26px}nav{top:72px}.hero{padding-top:27px;margin-bottom:25px}.hero-inner{display:flex;flex-direction:column;gap:12px;padding-bottom:35px;align-items:stretch}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1.2px;margin-bottom:16px}h1{font-size:53px;letter-spacing:-3px;line-height:1.06}h1>span{display:block;font-size:1.08em;letter-spacing:-3px}.underline{width:255px;margin-top:0}.hero-desc{font-size:17px;line-height:1.85;margin-top:20px;max-width:340px}.desktop-only{display:none}.hero-benefits{font-size:13px;margin-top:13px;gap:22px}.hero-art{margin:0 8px;padding:21px 0 18px}.village{max-height:275px;object-fit:cover;object-position:center}.art-label{top:6px;right:-6px;font-size:9px}.area-tag{left:10px;bottom:0;min-width:214px;padding:10px 14px}.results{padding-top:10px;padding-bottom:42px}.section-top{display:block;margin-bottom:20px}.section-top .eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:10px}h2{font-size:29px;letter-spacing:-1.2px}.section-top p:not(.eyebrow){font-size:15px;margin-top:12px}.demo-pill{display:inline-block;margin-top:15px;font-size:12px}.results-toolbar{font-size:13px;gap:12px;align-items:flex-start}.results-toolbar .text-button{font-size:9px;white-space:nowrap;padding-top:0}.cards{grid-template-columns:1fr;gap:18px}.card-visual{height:160px}.card-content{padding:20px}.card-title{font-size:20px;line-height:1.45}.card-place{font-size:14px;line-height:1.65;color:#374c30}.card-description{font-size:16px;min-height:58px;margin-top:13px;line-height:1.8;color:#34492d}.card-zone{font-size:15px;line-height:1.75;color:#384d31}.card-status{font-size:14px;margin-top:15px;line-height:1.6}.status-date{font-size:13px;line-height:1.75}.card-actions{flex-direction:row;align-items:center;gap:17px}.number-button{font-size:14px;padding:12px;min-height:46px;line-height:1.5}.detail-button{font-size:14px;flex-shrink:0;min-height:44px;line-height:1.5}.craft-label{font-size:12px}.fiction-label{font-size:10px}.more{flex-direction:column;gap:11px;margin-top:23px}.outline{width:100%;justify-content:center;font-size:12px}.more .text-button{font-size:11px}.availability-note{align-items:flex-start;font-size:13px;line-height:1.7;text-align:left;margin-top:18px}.availability-note svg{margin-top:2px}.how-inner{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding-top:40px;padding-bottom:40px}.how-intro .eyebrow{font-size:8px;margin-bottom:13px}.how-intro h2{font-size:29px}.how-intro>p:last-child{font-size:15px;margin-top:16px}.steps{gap:24px}.steps h3{font-size:17px}.steps p{font-size:15px}.step-number{font-size:26px}.commitments{padding-top:42px;padding-bottom:40px}.commitments .section-top{margin-bottom:23px}.commitment-intro{max-width:none;font-size:11px!important}.commitment-intro br{display:none}.value-grid{gap:25px 18px;margin-top:25px}.value-grid article{padding-left:15px}.value-grid h3{font-size:16px;line-height:1.5}.value-grid p{font-size:15px;line-height:1.8}.value-grid i{margin-bottom:12px}.pro-section{padding-bottom:40px}.pro-banner{padding:30px 24px;display:block;border-radius:12px}.pro-banner h2{font-size:29px}.pro-banner .eyebrow{font-size:8px;letter-spacing:1.2px}.pro-banner p:not(.eyebrow){font-size:15px}.pro-perks{flex-direction:column;font-size:13px;gap:7px;margin-top:15px}.pro-action{max-width:none;text-align:left;margin-top:27px}.pro-action button{width:100%;font-size:14px}.pro-action p{text-align:center;line-height:1.8!important;font-size:13px!important}.pro-symbol{left:auto;right:-70px;top:90px}.footer-main{gap:27px 18px;padding-top:31px;padding-bottom:29px}.footer-main>div:first-child{grid-column:1/-1}.footer-main>div:last-child{grid-column:1/-1}.footer-main h3{font-size:14px;margin-bottom:12px}.footer-main button,.footer-main>div>a:not(.brand){font-size:10px;margin-top:12px}.footer-main p{font-size:13px;margin-top:13px}.footer-location{font-size:12px}.footer-bottom{display:block;font-size:12px;line-height:1.9}.footer-bottom a{display:inline-block;margin-top:7px;font-size:12px}#dialogBody{padding:30px 24px}#dialogBody h2{font-size:26px}#dialogBody .detail-art{margin:-30px -24px 24px;height:160px}.detail-table>div{grid-template-columns:110px 1fr;gap:12px;font-size:11px}.detail-bottom{display:block}.detail-bottom button{width:100%}.detail-bottom small{display:block;margin-top:12px}.empty{padding:30px 20px}.empty h3{font-size:17px}.empty p{font-size:11px}.toast{bottom:16px;width:max-content;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:600px){.hero{display:flex;flex-direction:column;margin-bottom:25px;padding-bottom:20px}.hero-inner{display:contents}.hero-copy{order:0;width:calc(100% - 36px);margin:0 auto}.hero-art{order:2;width:calc(100% - 52px);margin:20px auto 0;padding-top:16px}.hero-art .village{max-height:230px}.hero-art .area-tag{bottom:0}h1{font-size:clamp(35px,10.4vw,47px);letter-spacing:-2px}}
@media(max-width:850px) and (min-width:601px){.hero-inner{grid-template-columns:1.35fr 1fr}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}.hero-art{max-width:270px}.hero-desc{font-size:17px}.area-tag{min-width:185px}.art-label{font-size:8px}.hero-copy h1{font-size:36px;letter-spacing:-1.8px}}
@media(max-width:600px){.hero-copy h1>span{letter-spacing:-2px}.hero-art{max-width:365px}.hero-desc{margin-top:15px;font-size:17px}.hero-benefits{margin-top:12px;font-size:13px}}/* Search: clearer fields, readable labels and explicit availability choices. */

.search-shell{position:relative;width:min(1240px,calc(100% - 96px));margin:0 auto;background:#fff;padding:26px 28px 20px;border:1px solid #b9c9ae;border-radius:13px;box-shadow:0 10px 30px #203b2b0d;scroll-margin-top:120px}.search-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:18px}.field{min-width:0;padding:12px 15px;border:1px solid #a8b99e;border-radius:8px;background:#fafcf7}.field:focus-within{border-color:#224b3c;box-shadow:0 0 0 2px #224b3c22}.field label{font-size:13px;font-weight:750;color:#243d33;display:block;line-height:1.5;margin-bottom:7px}.input-line{display:flex;align-items:center;gap:9px}.input-line>i{color:#4f6949}.input-line svg{width:20px;height:20px}.input-line input{border:0;background:transparent;width:100%;min-width:0;font-size:16px;padding:4px 0;line-height:1.6;color:#263f30}.input-line input::placeholder{color:#42563a;opacity:1}.input-line input:focus-visible{outline:2px solid #224b3c;outline-offset:3px;border-radius:2px}.input-line button{min-width:36px;min-height:36px;display:grid;place-items:center;background:#edf3e7;border:1px solid #b1c3a5;border-radius:6px;color:#365a32}.search-submit{height:86px;padding:16px 21px;font-size:14px;font-weight:750;border-radius:8px;background:#224b3c;color:#fff;box-shadow:0 2px 0 #123325}.search-submit:hover{background:#153c2b}.search-submit svg{width:20px;height:20px}.search-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;border-top:1px solid #dbe3d5;margin-top:20px;padding-top:17px}.filters{border:0;margin:0;padding:0;min-width:0}.filters legend{padding:0;font-size:13px;font-weight:650;color:#46563d;margin-bottom:11px}.filter-options{display:flex;gap:10px;flex-wrap:wrap}.filters label{position:relative;cursor:pointer}.filters input{position:absolute;opacity:0;width:1px;height:1px}.filters label>span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:45px;padding:11px 15px;border:1.5px solid #829b73;border-radius:7px;background:#fff;color:#294e30;font-size:13px;font-weight:650;line-height:1.45;transition:background .15s,border-color .15s}.filters label:hover>span{background:#edf3e7;border-color:#315b35}.filters input:checked+span{background:#224b3c;border-color:#224b3c;color:#fff;box-shadow:0 2px 4px #183d2720}.filters input:checked+span .dot{background:#f3d19d;box-shadow:0 0 0 2px #fff3}.filters input:focus-visible+span{outline:3px solid #bd633c;outline-offset:3px}.filters .dot{width:7px;height:7px}.search-note{color:#415d38;font-size:12px;display:flex;align-items:center;gap:7px;white-space:nowrap;margin-bottom:12px}.search-note svg{width:16px;height:16px}.search-message{color:#8c431e;font-size:13px;line-height:1.7}.search-message:not(:empty){padding-top:15px}.town-choices{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.town-choices button{border:1px solid #688a58;background:#edf3e7;color:#244b31;border-radius:6px;padding:10px 14px;font-size:13px;min-height:44px}.quick-searches{display:flex;gap:8px 16px;flex-wrap:wrap;align-items:center;font-size:12px;color:#3c5132;border-top:1px solid #dfe6d8;margin-top:17px;padding-top:12px}.quick-searches button{font-size:12px;line-height:1.5;color:#355f33;text-decoration:underline;text-underline-offset:3px;padding:4px 0}.quick-searches button:hover{color:#994822}
@media(max-width:1100px){.search-shell{width:calc(100% - 64px);padding:23px}.search-form{gap:13px}.field{padding:11px 12px}.field label{font-size:12px}.search-submit{font-size:13px;padding:15px 17px;height:83px}.search-note{display:none}.filters label>span{font-size:12px;padding:11px 13px}}
@media(max-width:850px){.search-form{grid-template-columns:1fr 1fr;align-items:stretch}.search-submit{grid-column:1/-1;min-height:50px;height:auto;font-size:14px}.field label{font-size:12px}.input-line input{font-size:16px}.filters legend{font-size:12px}.filter-options{gap:8px}.filters label>span{font-size:12px;padding:11px 12px}.search-bottom{margin-top:17px;padding-top:15px}.quick-searches{font-size:11px}.quick-searches button{font-size:11px}}
@media(max-width:600px){.search-shell{width:calc(100% - 36px);order:1;transform:none;margin:20px auto 0;padding:19px 16px 16px}.search-form{display:flex;flex-direction:column;gap:13px;align-items:stretch}.field{padding:12px}.field label{font-size:12px;margin-bottom:7px;line-height:1.6}.input-line input{font-size:16px;line-height:1.6;padding:4px 0}.input-line{gap:8px}.input-line svg{width:19px;height:19px}.input-line button{min-width:34px;min-height:34px}.search-submit{min-height:51px;font-size:14px;padding:14px 10px}.search-bottom{display:block;margin-top:18px;padding-top:15px}.filters legend{font-size:12px;margin-bottom:10px}.filter-options{display:flex;flex-direction:column;gap:9px}.filters label{width:100%}.filters label>span{min-height:46px;padding:12px 8px;font-size:13px}.search-note{display:flex;justify-content:center;font-size:11px;margin:14px 0 0}.quick-searches{font-size:11px;gap:7px 10px;line-height:1.7;margin-top:15px;padding-top:12px}.quick-searches>span{width:100%;font-weight:650}.quick-searches button{font-size:11px;text-align:left}.search-message{font-size:12px}.town-choices button{font-size:12px}}/* Artisan details expand inside the results, below the selected row. */

.detail-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;font-size:14px;line-height:1.5}.detail-button svg{width:14px;height:14px;transition:transform .18s}.detail-button[aria-expanded=true] svg{transform:rotate(180deg)}.card.is-open{border-color:#64855a;box-shadow:0 0 0 1px #64855a}.card.is-open .detail-button{color:#234c2d;font-weight:700;font-size:14px;min-height:44px;line-height:1.5}.inline-detail{grid-column:1/-1;position:relative;min-width:0;background:#fff;border:1px solid #b4c5a7;border-top:3px solid #456d3c;border-radius:10px;padding:27px 29px 18px;scroll-margin-top:115px}.inline-detail:before{content:'';position:absolute;width:14px;height:14px;background:#fff;border-top:2px solid #456d3c;border-left:2px solid #456d3c;transform:translateX(-50%) rotate(45deg);top:-10px;left:calc((var(--pointer-column) + .5)*100%/var(--row-columns))}.inline-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;border-bottom:1px solid #dce4d5;padding-bottom:20px;margin-bottom:23px}.inline-detail-heading .eyebrow{font-size:10px;color:#3d5b30;margin-bottom:8px}.inline-detail-heading h3{font-size:25px;line-height:1.4;letter-spacing:-.6px}.inline-detail-heading h3:focus{outline:none}.inline-location{display:flex;gap:7px;align-items:center;font-size:13px;color:#3c5133;margin-top:7px}.inline-location svg{width:15px;height:15px}.inline-close{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 12px;border:1px solid #9eb58e;border-radius:6px;background:#fff;font-size:12px;color:#33582d;font-weight:600;flex-shrink:0}.inline-close:hover{background:#e9f0e1}.inline-close svg{width:16px;height:16px}.inline-detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:38px}.inline-detail h4{font-family:Manrope,Arial,sans-serif;font-size:15px;font-weight:750;color:#2b4531;margin:22px 0 9px}.inline-conditions h4{margin-top:0}.inline-main>p{font-size:14px;color:#354b2d;line-height:1.85}.inline-status{font-size:14px;font-weight:650;display:flex;gap:8px;align-items:center}.inline-date{font-size:13px!important;margin-top:6px}.inline-detail .detail-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.inline-detail .detail-tags span{background:#edf2e5;border:1px solid #d0ddc3;border-radius:5px;color:#3e5c32;padding:6px 9px;font-size:12px}.inline-detail dl{margin:0}.inline-detail dl>div{padding:12px 0;border-bottom:1px solid #dce4d5;display:grid;grid-template-columns:135px 1fr;gap:16px;align-items:start}.inline-detail dt{font-size:12px;font-weight:650;color:#374f2e;line-height:1.7}.inline-detail dd{margin:0;font-size:13px;line-height:1.8;color:#3b5031}.inline-contact{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;margin-top:23px}.inline-contact .primary{font-size:13px;min-height:44px}.inline-contact>span{font-size:11px;color:#3b512f}.inline-notice{font-size:11px;line-height:1.8;color:#75633f;background:#f3efdf;border:1px solid #e3dcc5;border-radius:6px;padding:10px 13px;margin-top:24px}.inline-bottom-close{display:flex;justify-content:flex-end;margin-top:11px}.inline-bottom-close .text-button{font-size:12px;color:#345b2f;min-height:36px}.inline-bottom-close svg{transform:rotate(180deg)}
@media(max-width:850px){.inline-detail{padding:24px}.inline-detail-layout{gap:25px}.inline-detail dl>div{grid-template-columns:1fr;gap:3px}.inline-detail-heading h3{font-size:23px}.inline-close{font-size:11px}.detail-button{white-space:normal;font-size:14px;min-height:44px;line-height:1.5}}
@media(max-width:600px){.detail-button{font-size:14px;min-height:44px;white-space:nowrap;line-height:1.5}.inline-detail{padding:20px 17px 14px;border-radius:8px;scroll-margin-top:90px}.inline-detail:before{width:12px;height:12px;top:-9px}.inline-detail-heading{flex-direction:column;gap:14px;margin-bottom:20px;padding-bottom:17px}.inline-detail-heading h3{font-size:23px}.inline-detail-heading .eyebrow{font-size:9px;letter-spacing:1.2px}.inline-location{font-size:12px}.inline-close{font-size:12px;width:100%;justify-content:center;min-height:44px}.inline-detail-layout{grid-template-columns:1fr;gap:26px}.inline-main>p{font-size:14px}.inline-status{font-size:13px}.inline-date{font-size:13px!important}.inline-detail h4{font-size:15px}.inline-detail dl>div{grid-template-columns:1fr;gap:4px;padding:11px 0}.inline-detail dt{font-size:13px}.inline-detail dd{font-size:14px}.inline-detail .detail-tags span{font-size:12px}.inline-contact{display:block}.inline-contact .primary{width:100%;font-size:14px}.inline-contact>span{display:block;text-align:center;margin-top:10px;font-size:11px}.inline-notice{font-size:11px;padding:11px;margin-top:20px}.inline-bottom-close .text-button{font-size:12px;min-height:44px}.card.is-open:hover{transform:none}}/* Availability is displayed once, with its last update, in each card body. */

.card-status{display:flex;align-items:center;align-self:flex-start;gap:9px;max-width:100%;min-height:40px;padding:9px 11px;border:1px solid;border-radius:7px;font-size:14px;font-weight:750;line-height:1.6;margin-top:15px}.card-status .dot{width:9px;height:9px;flex-shrink:0}.card-status.status-now{color:#245729;background:#e5f2e0;border-color:#7ea276}.card-status.status-appointment{color:#8a480b;background:#fff1df;border-color:#d79942}.card-status.status-stale{color:#465568;background:#edf1f7;border-color:#9baaba}.card-status.status-unavailable{color:#5e554b;background:#f0ede8;border-color:#b3a99c}.card-status.status-now .dot{background:#377638}.card-status.status-appointment .dot{background:#c87516}.card-status.status-stale .dot{background:#667a91}.card-status.status-unavailable .dot{background:#817669}.status-date{font-size:13px;line-height:1.75;color:#3f5233;margin-top:7px;margin-bottom:17px}
@media(max-width:850px){.card-status{font-size:14px;padding:9px;gap:7px;line-height:1.6}.status-date{font-size:13px;line-height:1.75}}
@media(max-width:600px){.card-status{font-size:14px;min-height:43px;padding:10px 12px;gap:9px;line-height:1.6}.status-date{font-size:13px;line-height:1.75}}/* Keep the enlarged card actions comfortable on small screens. */


.card-title{overflow-wrap:anywhere}.card-actions{gap:12px}.card-place svg{width:16px;height:16px}.number-button svg{width:16px;height:16px}.card .detail-button{white-space:normal}.card-content{padding:22px}.card-status{margin-top:17px}.status-date{margin-top:9px;margin-bottom:20px}.card-zone{margin-top:14px}.card-actions{padding-top:17px}.craft-label{padding:5px 9px}
@media(max-width:1100px){.card-content{padding:18px}}
@media(max-width:600px){.card-content{padding:21px}.card-actions{flex-direction:column;align-items:stretch;gap:8px}.number-button{width:100%;padding:12px}.card .detail-button{justify-content:center;width:100%}.card-description{min-height:0}}/* One availability label on the image; the trade belongs to the written profile. */

.card-visual .card-status{position:absolute;left:13px;top:12px;margin:0;max-width:calc(100% - 26px);font-size:14px;line-height:1.5;min-height:40px;padding:9px 11px;box-shadow:0 2px 7px #1b382014;z-index:1}.card-trade{font-size:12px;font-weight:750;line-height:1.6;letter-spacing:1.15px;text-transform:uppercase;color:#34512a;margin:0 0 7px}.card-content .card-zone{margin-bottom:22px}
@media(max-width:850px){.card-visual .card-status{left:10px;top:10px;max-width:calc(100% - 20px);font-size:13px;padding:8px 9px;gap:7px}.card-trade{font-size:12px;letter-spacing:.9px}}
@media(max-width:600px){.card-visual .card-status{left:13px;top:12px;max-width:calc(100% - 26px);font-size:14px;min-height:42px;padding:9px 11px;gap:9px}.card-trade{font-size:13px;letter-spacing:1px}}/* Contrast: dark reading text, white cards and clear action hierarchy. */


body{font-weight:450}.results{background:transparent}.card{background:#fff;box-shadow:0 3px 10px #1f3e2512}.card:hover{box-shadow:0 7px 18px #1b3b2425}.card-actions .number-button{background:#19472e;color:#fff;border-color:#19472e;font-weight:700}.card-actions .number-button:hover{background:#0f3521;border-color:#0f3521}.card .detail-button{color:#21462b;font-weight:650}.text-button{color:#294b2b}.outline{color:#214128;font-weight:650}.pro-button{color:#24482c;font-weight:700}.header{border-bottom-color:#bcc9b1}.section-top .eyebrow{color:#3a5433}.hero-desc{color:#354a35}.hero-benefits{color:#28432d}.commitment-intro{color:#3a4c31!important}.footer-main button,.footer-main>div>a:not(.brand){font-size:13px;line-height:1.75;color:#33482c}.footer-main button:hover,.footer-main a:hover{color:#163e21;text-decoration:underline;text-underline-offset:3px}.footer-bottom{border-top-color:#aebda1}.pro-banner{background:#193d2c}.pro-banner p:not(.eyebrow){color:#f1f5ea}.pro-perks{color:#eef5e5}.inline-detail{background:#fff;border-color:#829974}.inline-main>p,.inline-detail dd{color:#344a2d}.empty{border:1px solid #afc09f}.empty p{color:#3c5033}.how-section{background:#e4eadb}.preview{color:#354d32;background:#dfe8d7}.availability-note{color:#415539}.fiction-label{background:#fffffff2;color:#3e5134}.search-shell{box-shadow:0 5px 19px #1f3f2217}
@media(max-width:600px){.hero-desc{font-size:16px}.hero-benefits{font-size:12px}.value-grid p{font-size:14px}.value-grid h3{font-size:15px}.footer-main button,.footer-main>div>a:not(.brand){font-size:13px}}/* Availability is a secondary search refinement, not the primary action. */

.filters legend{font-size:12px;font-weight:550;color:#4c5d42;margin-bottom:9px}.filter-options{gap:7px}.filters label>span{min-height:36px;padding:7px 11px;font-size:12px;font-weight:550;border:1px solid #a7b89b;border-radius:6px;background:#fff;color:#39532f;box-shadow:none}.filters label:hover>span{background:#f0f5e9;border-color:#6d8a5d}.filters input:checked+span{background:#e5eedb;border-color:#63834f;color:#244b2a;box-shadow:none;font-weight:700}.filters input:checked+span .dot{box-shadow:none;background:#3b723a}.filters .dot{width:6px;height:6px}.search-bottom{padding-top:13px;margin-top:17px}.search-note{margin-bottom:9px;font-size:11px}
@media(max-width:600px){.filters legend{font-size:12px}.filter-options{gap:7px}.filters label>span{font-size:12px;min-height:38px;padding:8px 10px}.search-note{margin:12px 0 0;font-size:11px}}

/* Separate welcome illustration and search; preserve the stronger reading contrast. */
.hero .hero-art .village{filter:contrast(1.16) saturate(1.1);box-shadow:0 0 0 1px #91a780,0 5px 17px #28412a13}.hero .art-label,.hero .area-tag{background:#fff;border-color:#9caf8c;color:#213d28}.hero .area-tag span:not(.area-number){color:#3e5534}.hero .area-number{color:#526f41}.hero .hero-inner{padding-bottom:25px}.hero .search-shell{background:#fff;border-color:#829a70}.filters label>span{min-height:32px;padding:5px 10px;font-size:11px}.filters legend{font-size:11px}.filter-options{gap:7px}.card-visual .card-status{font-size:12px;min-height:32px;padding:6px 9px;gap:7px;line-height:1.5}.card-visual .card-status .dot{width:7px;height:7px}
@media(max-width:850px){.card-visual .card-status{font-size:12px;min-height:32px;padding:6px 8px}.hero .hero-inner{padding-bottom:25px}}
@media(max-width:600px){.hero .hero-inner{padding-bottom:0}.hero .search-shell{margin:20px auto 0}.filters label>span{font-size:12px;min-height:36px;padding:6px 10px}.filters legend{font-size:12px}.card-visual .card-status{font-size:12px;min-height:34px;padding:7px 9px}.hero .hero-art{margin-top:20px}.hero .hero-art .village{filter:contrast(1.16) saturate(1.1)}}
/* A quieter availability tag, inset from the image edge. */
.card-visual .card-status{left:22px;top:13px;max-width:calc(100% - 44px);font-size:11px;min-height:28px;padding:4px 8px;gap:6px;line-height:1.5;box-shadow:0 1px 3px #193a2312}.card-visual .card-status .dot{width:6px;height:6px}
/* White outside margins lighten the page while the sections retain their contrast. */
body{background:#fff}main,footer{width:calc(100% - 40px);max-width:1500px;margin-left:auto;margin-right:auto}main{background:#e9eee7}
@media(max-width:1100px){main,footer{width:calc(100% - 24px)}.card-visual .card-status{left:18px;max-width:calc(100% - 36px)}}
@media(max-width:600px){main,footer{width:100%;max-width:none}.card-visual .card-status{left:22px;top:13px;max-width:calc(100% - 44px);font-size:11px;min-height:29px;padding:5px 8px}}

/* Editable search choices and optional, explicit location. */
.input-line select{border:0;background:#fff;width:100%;min-width:0;font:inherit;font-size:16px;line-height:1.6;padding:4px 24px 4px 0;color:#183c2d;cursor:pointer}.input-line select:focus-visible{outline:2px solid #224b3c;outline-offset:3px;border-radius:2px}.location-controls{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;margin-top:8px}.location-controls .around-label{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;margin:0;cursor:pointer}.around-label input{accent-color:#224b3c;width:17px;height:17px;margin:0}.location-controls>span{font-size:12px;line-height:1.5;color:#405444}.location-help{font-size:12px;line-height:1.6;color:#405444;margin:15px 0 0}.location-status{font-size:14px;font-weight:600;line-height:1.6;color:#224b3c;margin:8px 0 0}.location-status:empty{display:none}.place-field{align-self:stretch}.search-submit{align-self:center}.around-label input:focus-visible{outline:2px solid #224b3c;outline-offset:3px}

.back-to-top{position:fixed;right:24px;bottom:24px;width:46px;height:46px;display:grid;place-items:center;border:1px solid #fff;border-radius:50%;background:#224b3c;color:#fff;box-shadow:0 3px 12px #163d2933;z-index:40;cursor:pointer}.back-to-top svg{width:22px;height:22px}.back-to-top:hover{background:#123c2d}.back-to-top:focus-visible{outline:3px solid #b34f2d;outline-offset:3px}.back-to-top[hidden]{display:none}@media(max-width:1100px){.back-to-top{display:none}}

.header .pro-button{background:#dcebcf;color:#224b3c;border-color:#6d8a5d}.header .pro-button:hover{background:#cbdcbb;border-color:#466b3c}.input-line select{background:transparent}.search-form>.field{align-self:stretch}

/* Clear search frames and white availability controls. */
.search-form>.field{border:2px solid #9eaf9b;background:#fff}.search-form>.field:focus-within{border-color:#9eaf9b;box-shadow:none}.filters label>span{background:#fff;border-color:#829579;color:#2b4531}.filters label:hover>span{background:#fff;border-color:#224b3c}.filters input:checked+span{background:#fff;color:#224b3c;border-color:#224b3c;box-shadow:inset 0 0 0 1px #224b3c;font-weight:700}.filters input:checked+span:after{content:'✓';font-size:12px;line-height:1}.filters input[value="appointment"]:checked+span .dot{background:#a86c0d}.filters input[value="now"]:checked+span .dot{background:#367532}

/* Gentle feedback on the artisan entry point. */
.header .pro-button{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.header .pro-button:focus-visible{outline:2px solid #224b3c;outline-offset:3px;box-shadow:0 3px 9px #224b3c1c}@media(hover:hover) and (pointer:fine){.header .pro-button:hover{transform:translateY(-1px);box-shadow:0 3px 9px #224b3c1c}}@media(prefers-reduced-motion:reduce){.header .pro-button{transition:none}.header .pro-button:hover{transform:none}}

.empty-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin-top:22px}.empty-actions button{margin-top:0;max-width:100%}.nearby-notice{padding:16px 18px;margin:0 0 24px;background:#fff;border:1px solid #829579;border-left:4px solid #a86c0d;border-radius:7px;color:#263f30;font-size:14px;line-height:1.7}.nearby-notice[hidden]{display:none}.card-distance{font-size:13px;font-weight:650;color:#345338;margin:8px 0 0}@media(max-width:600px){.empty-actions{flex-direction:column;align-items:stretch}.empty-actions button{width:100%;font-size:13px}.nearby-notice{padding:13px;font-size:13px}}

.card-visual>.artisan-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.card-visual:has(.artisan-photo) .fiction-label{background:#fffffff2;color:#243d33}.card-visual:has(.artisan-photo) .card-status{box-shadow:0 1px 5px #16362830}

.card-visual:has(.artisan-photo){height:180px}

/* Optional portrait or complete business logo in the expanded profile. */
.profile-heading-identity{display:flex;align-items:center;gap:20px;min-width:0}.profile-heading-text{min-width:0}.profile-identity{margin:0;flex:0 0 88px;text-align:center}.profile-avatar{width:88px;height:88px;flex:0 0 88px;border:1px solid #a7b89b;background:#fff;overflow:hidden;box-sizing:border-box}.profile-avatar img{display:block;width:100%;height:100%}.profile-avatar--photo{border-radius:50%}.profile-avatar--photo img{object-fit:contain;object-position:center}.profile-avatar--logo{border-radius:12px;padding:7px}.profile-avatar--logo img{object-fit:contain}.profile-identity figcaption{font-size:10px;line-height:1.5;color:#465d49;margin-top:5px}.profile-avatar--empty{display:grid;place-items:center;background:#edf3e7;color:#557354;border-radius:50%}.profile-avatar--empty svg{width:34px;height:34px}.profile-heading-text h3{overflow-wrap:anywhere}@media(max-width:600px){.profile-heading-identity{align-items:flex-start;gap:12px}.profile-identity{flex-basis:64px}.profile-avatar{width:64px;height:64px;flex-basis:64px}.profile-identity figcaption{font-size:9px}.profile-avatar--logo{padding:5px;border-radius:9px}.profile-heading-text h3{font-size:20px}.profile-heading-text .eyebrow{font-size:9px;letter-spacing:.6px}.profile-heading-text .inline-location{align-items:flex-start;line-height:1.6}.profile-heading-text .inline-location svg{flex-shrink:0;margin-top:3px}}

.inline-main>.inline-status-description{margin:8px 0 0;font-size:14px;line-height:1.75;color:#263f30}

/* Consistent reading size within expanded artisan profiles. */
.inline-detail .inline-main>p:not(.inline-date),.inline-detail .inline-status,.inline-detail .inline-location,.inline-detail dt,.inline-detail dd,.inline-detail .detail-tags span,.inline-detail .inline-contact .primary,.inline-detail .inline-close,.inline-detail .inline-bottom-close .text-button,.inline-detail .profile-reviews>.card-rating{font-size:14px;line-height:1.75}.inline-detail .inline-contact>span{font-size:12px;line-height:1.75}.inline-detail .inline-date{font-size:13px!important;line-height:1.75}

@media(min-width:851px){.search-form>.search-submit{align-self:start}}

/* Persistent outlines identify the editable search controls. */
.search-form .input-line{border:1px solid #a8b8a3;border-radius:6px;background:#fff;padding:7px 10px;transition:border-color .15s}.search-form .input-line:hover{border-color:#6f8967}.search-form .input-line:focus-within{border-color:#224b3c;box-shadow:inset 0 0 0 1px #224b3c}.search-form .input-line input:focus-visible,.search-form .input-line select:focus-visible{outline:none}

.professional-info p{margin:0 0 10px}.professional-info p:last-child{margin-bottom:0}

.profile-professional{margin-top:26px;padding-top:22px;border-top:1px solid #c6d3ba}.inline-detail .profile-professional h4{margin:0 0 14px}.profile-professional p{font-size:14px;line-height:1.75;color:#3b5031}.profile-professional .professional-info{display:grid;grid-template-columns:1fr 1fr;column-gap:38px;row-gap:10px}.profile-professional .professional-info p{margin:0}.profile-professional .professional-info p:first-child{grid-row:span 2}@media(max-width:600px){.profile-professional .professional-info{grid-template-columns:1fr;gap:14px}.profile-professional .professional-info p:first-child{grid-row:auto}}

.inline-status .availability-icon{width:17px;height:17px;flex-shrink:0}.inline-status.status-stale{color:#45576e}

/* Contact modal follows the existing site typography and palette. */
nav .nav-contact{font:inherit;position:relative;padding:8px 0;text-align:left}nav .nav-contact:hover{text-decoration:underline;text-underline-offset:5px}
dialog.contact-dialog{width:min(850px,calc(100% - 28px))}.contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;margin-top:26px}.contact-layout h3{font-size:17px;line-height:1.4;margin:0 0 16px}.contact-coordinates{padding-right:24px;border-right:1px solid #d2ddcb}.contact-coordinates p{font-size:14px}.contact-phone{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:700;line-height:1.5;margin:20px 0 12px;color:#224b3c}.contact-phone svg{width:20px;height:20px}.contact-email{font-size:14px;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.contact-artisan-note{margin-top:25px!important;padding-top:18px;border-top:1px solid #d2ddcb;color:#405444}.contact-form{min-width:0;display:flex;flex-direction:column;gap:13px}.contact-form h3{margin:0 0 3px}.contact-form>label:not(.contact-consent){font-size:14px;font-weight:600;display:flex;flex-direction:column;gap:5px}.contact-form label>span{font-weight:400}.contact-form input:not([type=checkbox]):not([type=hidden]),.contact-form textarea{width:100%;border:1px solid #9eaf9b;border-radius:6px;padding:9px 11px;background:#fff;color:#172e22;font:inherit;font-size:16px;min-width:0}.contact-form textarea{resize:vertical;min-height:108px;max-height:300px}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:2px solid #224b3c;outline-offset:2px}.contact-form .contact-consent{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.6}.contact-consent input{width:17px;height:17px;flex-shrink:0;accent-color:#224b3c;margin:2px 0 0}.contact-form .contact-privacy{font-size:12px!important;line-height:1.65!important;margin:0!important;color:#405444}.contact-form .primary{align-self:start;min-height:44px}.contact-form .primary:disabled{opacity:.7;cursor:wait}.contact-form .contact-status{font-size:13px!important;line-height:1.7!important;margin:0!important;color:#245729}.contact-form .contact-status.is-error{color:#8a480b}.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:600px){.contact-layout{grid-template-columns:minmax(0,1fr);gap:24px}.contact-coordinates{padding:0 0 22px;border-right:0;border-bottom:1px solid #d2ddcb}.contact-artisan-note{margin-top:16px!important}.contact-form .primary{width:100%;justify-content:center}}

.contact-facebook{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;border-radius:6px;font-size:13px}.contact-facebook svg{width:17px;height:17px}.contact-facebook:hover{background:#edf3e7;border-color:#224b3c}

.contact-logo{margin:0 0 14px;color:#f8eed7}

.contact-brand{margin:0 0 20px}.contact-brand>span:last-child{font-size:21px}.contact-brand em{font-size:14px}.footer-share{text-align:center;padding:12px 0 28px}.footer-share h3{font-family:inherit;font-size:11px;font-weight:650;letter-spacing:1.4px;text-transform:uppercase;color:#405444;margin:0 0 14px}.share-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:9px}.share-buttons a,.share-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 12px;border:1px solid #a8b99e;border-radius:6px;background:#fff;color:#224b3c;font-size:12px;font-weight:600;line-height:1.5}.share-buttons a:hover,.share-buttons button:hover{background:#edf3e7;border-color:#224b3c}.share-buttons svg{width:17px;height:17px;flex-shrink:0}@media(max-width:600px){.share-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;max-width:360px;margin:auto}.share-buttons a,.share-buttons button{padding:10px 8px}.footer-share{padding:8px 0 25px}.contact-brand{gap:10px}.contact-brand>span:last-child{font-size:20px}}

.share-link-field{width:100%;border:1px solid #9eaf9b;border-radius:6px;padding:12px;font:inherit;color:#224b3c;background:#fff}

.inline-conditions .profile-rate-entry{margin:0;font-size:14px;line-height:1.7}.profile-rate-detail{display:block;margin-top:3px;font-size:13px;color:#485e42}

.profile-professional .professional-declaration{margin:16px 0 0;padding-top:12px;border-top:1px solid #dde4d7;font-size:13px;line-height:1.65;color:#4b6045}

.artisan-profile-banner{position:relative;overflow:hidden;border-radius:12px;margin-bottom:24px;background:#e6eddf}.artisan-profile-banner>img{display:block;width:100%;height:clamp(150px,23vw,300px);object-fit:cover;object-position:center}.profile-avatar--logo img{object-fit:contain;background:white}.header #navigation{gap:clamp(12px,1.7vw,29px)}.header .pro-button{flex-shrink:0;white-space:nowrap}@media(max-width:1100px){.header #navigation{gap:12px}}@media(max-width:650px){.artisan-profile-banner>img{height:160px}.header .pro-button{font-size:11px;padding:10px 12px}}
@media(min-width:851px) and (max-width:1100px){.header #navigation{display:none;position:absolute;top:94px;left:0;right:0;background:#fffef9;padding:20px 30px;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #0001;font-size:14px}.header #navigation.open{display:flex;flex-direction:column;gap:10px}.header .pro-button{margin-left:auto}.header .menu-button{display:flex;flex-direction:column;gap:5px;width:35px;height:35px;align-items:center;justify-content:center;flex-shrink:0}.header .menu-button span{height:2px;width:20px;background:var(--green)}}@media(max-width:380px){.header .pro-button{font-size:10px;padding:8px;gap:4px}.header .nav-wrap{gap:8px}}

.artisan-default-banner>svg{display:block;width:100%;height:clamp(150px,23vw,300px)}.artisan-banner-caption{position:absolute;left:14px;bottom:12px;padding:4px 9px;border-radius:5px;background:#ffffffed;color:#35513d;font-size:12px}.artisan-default-banner-help{margin:-10px 0 24px;font-size:14px;color:#52664a}.artisan-private-header .nav-wrap{height:auto;min-height:94px;padding:14px 0;flex-wrap:wrap}.artisan-private-header #navigation{display:flex!important;position:static;gap:20px;align-items:center;flex-wrap:wrap;padding:0;border:0;box-shadow:none;background:transparent;font-size:14px}.artisan-private-header #navigation form{margin:0}.artisan-private-header #navigation button{border:1px solid #718965;border-radius:7px;padding:10px 15px;background:#eef4e7;color:#183d2e;font-weight:650}.artisan-private-header #navigation button:hover{background:#dce8d0}@media(max-width:650px){.artisan-default-banner>svg{height:160px}.artisan-private-header .nav-wrap{justify-content:center;gap:12px;min-height:0}.artisan-private-header #navigation{justify-content:center;gap:12px;font-size:12px}.artisan-private-header #navigation button{padding:8px 12px}.artisan-banner-caption{font-size:10px;left:8px;bottom:8px}}

.artisan-private-header #navigation .artisan-preview-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border-radius:7px;background:#183d2e;color:#fff;font-weight:650;white-space:nowrap}.artisan-private-header #navigation .artisan-preview-link:hover{background:#285740}@media(max-width:650px){.artisan-private-header #navigation .artisan-preview-link{padding:8px 12px}}

.artisan-zone-full{margin-top:8px}.artisan-zone-full summary{cursor:pointer;text-decoration:underline}.artisan-zone-full p{max-height:240px;overflow:auto;padding:10px 0}

.inline-conditions dd{white-space:pre-line}

/* Présentation du fondateur : portrait discret, lisible sur mobile. */
.founder-profile{display:flex;align-items:flex-start;gap:22px;margin:24px 0}.founder-profile>img{display:block;width:140px;height:auto;max-width:100%;flex-shrink:0;border-radius:14px;border:1px solid #bcc9b1}.founder-profile>div{min-width:0}.founder-profile h3{margin:0 0 5px}.founder-role{font-weight:650;color:#466449;margin:0 0 14px!important}.founder-profile p:last-child{margin-bottom:0}.founder-approach{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.founder-new-tab{font-size:12px;font-weight:400}@media(max-width:600px){.founder-profile{flex-direction:column;gap:16px}.founder-profile>img{width:120px}.founder-approach{max-width:100%;line-height:1.6}}

#dialogBody .charter-values{margin:20px 0}#dialogBody .charter-values>div{padding:14px 0;border-bottom:1px solid #d3dfcd}#dialogBody .charter-values dd{margin:6px 0 0;line-height:1.7}

.artisan-fiche-share{padding:22px 0;margin-top:20px;border-top:1px solid #d3dfcd}.artisan-fiche-share h4{margin:0 0 10px}.artisan-fiche-share>p{font-size:13px;line-height:1.7}.artisan-share-buttons{display:flex;flex-wrap:wrap;gap:10px}.artisan-share-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;font-size:13px;line-height:1.5;text-decoration:none;margin:0}.artisan-share-button svg{width:18px;height:18px;flex-shrink:0}@media(max-width:600px){.artisan-share-buttons{gap:8px}.artisan-share-button{flex-wrap:wrap}}

/* Largeur de la capture de référence, sur grand écran. */
@media(min-width:1101px){main,footer{width:calc(100% - 40px);max-width:1500px;margin-left:auto;margin-right:auto}}

/* Élargir uniquement le blanc extérieur : aucune largeur de contenu ne change. */
@media(min-width:601px){
 main{--artiselia-fond-retrait:clamp(6px,calc((100% - 1240px)/4 - 28px),37px);background:linear-gradient(to right,#fff 0 var(--artiselia-fond-retrait),#e9eee7 var(--artiselia-fond-retrait) calc(100% - var(--artiselia-fond-retrait)),#fff calc(100% - var(--artiselia-fond-retrait)) 100%)}
 .hero{background:linear-gradient(to right,#fff 0 var(--artiselia-fond-retrait),var(--cream) var(--artiselia-fond-retrait) calc(100% - var(--artiselia-fond-retrait)),#fff calc(100% - var(--artiselia-fond-retrait)) 100%)}
 .how-section{background:linear-gradient(to right,#fff 0 var(--artiselia-fond-retrait),#e4eadb var(--artiselia-fond-retrait) calc(100% - var(--artiselia-fond-retrait)),#fff calc(100% - var(--artiselia-fond-retrait)) 100%)}
}

/* Retirer les séparateurs qui dépassaient du fond coloré, sans modifier les hauteurs. */
.how-section{border-top-color:transparent;border-bottom-color:transparent}
footer{border-top-color:transparent}
/* Réserver des gouttières symétriques malgré la barre de défilement du bureau. */
@media(min-width:601px){html{scrollbar-gutter:stable both-edges}}

/* Pictogramme Artisélia, dans les emplacements du logo existant. */
.brand-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.demo-inactive{opacity:.65;pointer-events:none}

main:has(> .public-stats) {
    padding-bottom: clamp(24px, 4vw, 42px);
}
.public-stats {
    padding: 22px clamp(18px, 3vw, 34px);
    border: 1px solid #d3dcd0;
    border-radius: 14px;
    background: #fbfcf8;
}
.public-stats-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px 32px;
}
.public-stats-heading h2 {
    margin: 4px 0 0;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.2;
}
.public-stats-total {
    display: grid;
    gap: 3px;
    color: var(--green);
    text-align: right;
}
.public-stats-total span,
.public-stats-card span {
    font-size: 14px;
}
.public-stats-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
}
.public-stats-filters label {
    display: grid;
    flex: 0 1 240px;
    gap: 5px;
    font-size: 14px;
    font-weight: 650;
}
.public-stats-filters select,
.public-stats-filters input[type="search"] {
    min-width: 0;
    width: 100%;
    padding: 8px 10px;
    border: 1px solid var(--line);
    border-radius: 7px;
    background: white;
    color: var(--ink);
    font: inherit;
}
.public-stats-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
}
.public-stats-card {
    display: grid;
    gap: 4px;
    padding: 12px 15px;
    border: 1px solid #d3dcd0;
    border-radius: 9px;
    background: #f2f5ed;
}
.public-stats [hidden] {
    display: none;
}
.public-stats strong[data-public-count] {
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.15;
    font-variant-numeric: tabular-nums;
    height: 1.15em;
    overflow: hidden;
}
.public-stats-roll,
.public-stats-roll > span {
    display: block;
}
.public-stats-note {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: 13px;
}
.public-stats-note:empty {
    display: none;
}
@media (max-width: 600px) {
    .public-stats-heading {
        flex-wrap: wrap;
    }
    .public-stats-total {
        text-align: left;
    }
    .public-stats-filters label {
        flex: 1 1 100%;
    }
    .public-stats-grid {
        grid-template-columns: 1fr;
    }
}

#tarifs-artisans .pro-action summary {
    cursor: pointer;
    text-underline-offset: 4px;
}
#tarifs-artisans .pro-action summary:hover,
#tarifs-artisans .pro-action summary:focus-visible {
    text-decoration: underline;
}

.demo-catalogue-link {
    display: inline-block;
    padding-block: .35rem;
    font-weight: 650;
    text-decoration: underline;
    text-underline-offset: .22em;
}
.demo-catalogue-link:hover,
.demo-catalogue-link:focus-visible {
    text-decoration-thickness: 2px;
}
#tarifs-artisans .pro-action .demo-catalogue-link {
    color: #fff1ce;
}
