/* Private visual direction. Existing routes, map layers, counter and access checks retained. */
@font-face{font-family:Jakarta;src:url('/refonte/PlusJakartaSans.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
:root{--font-ui:Jakarta,DM,system-ui,sans-serif;--green:#173e30;--accent:#247749;--muted:#52695d;--line:#dfe8dd;--cream:#fcfdf9}
body{font-family:var(--font-ui);background:var(--cream);font-size:15px;line-height:1.55}button,input,select,textarea{font-family:inherit}h1,h2,h3{font-family:var(--font-ui);font-weight:750;letter-spacing:-.045em}h1 em,h2 em,h3 em{font:inherit;color:#27804b;letter-spacing:inherit}h1{line-height:1.12}h2{line-height:1.2}.ui-symbol{width:24px;height:24px;flex:none;vertical-align:middle}.header{max-width:1600px;margin:0 auto;height:90px;padding:18px clamp(20px,4vw,64px);gap:24px;background:var(--cream);border-bottom:1px solid var(--line)}.header .brand{flex:0 1 218px;margin-right:auto}.header .brand-logo{width:218px;max-width:100%;aspect-ratio:11/2;object-fit:cover}.header nav{gap:22px;font-size:13px;align-items:center}.header nav a{display:inline-flex;align-items:center;min-height:44px;border:0;white-space:nowrap;color:#506458}.header nav a[aria-current=page]{color:#1b603d;font-weight:800;text-decoration:underline;text-underline-offset:7px}.header .account{display:inline-flex;align-items:center;gap:8px;border-radius:14px;padding:10px 14px;white-space:nowrap;font-size:12px}.header .account span{margin:0}.header .account .ui-symbol{width:19px;height:19px}.header .menu-button{display:inline-grid;place-items:center;border-radius:14px;padding:0;width:44px;height:44px;min-width:44px;background:#fff}.header .brand svg{background:none}
.button{font-weight:700;transition:background .15s,box-shadow .15s;gap:12px;border-radius:14px}.button.green{background:#227547;color:#fff}.button.coral{background:#ffe4da;color:#673b2e}.button.violet{background:#6954b2;color:#fff}.button.outline{border-color:#bacbbe;background:#fff}.button:hover{filter:none;box-shadow:0 4px 16px #24482f12}.quiet:hover{background:#eff5e8}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #6550ad;outline-offset:4px}.text-button .ui-symbol{width:18px;height:18px}input,select,textarea{border-radius:12px;border-color:#c5d4c6}summary{cursor:pointer}.eyebrow{font-size:10px;letter-spacing:.09em;font-weight:750}
/* The landing page is compact; the published map has its full width. */
.map-screen{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.85fr);grid-template-areas:'intro mascot' 'quick quick' 'map map' 'counter counter' 'organise organise';gap:24px;max-width:1440px;margin:0 auto;padding:40px clamp(20px,4vw,64px) 28px;min-height:0}.map-screen .intro{grid-area:intro;padding:8px 12px 0 0;display:block;min-width:0}.map-screen .intro h1{font-family:var(--font-ui);font-size:clamp(38px,4.2vw,58px);line-height:1.12;max-width:780px;font-weight:800;letter-spacing:-.05em;margin:0 0 20px}.map-screen .intro h1 em{font-style:normal;font-weight:800}.map-screen .intro-text{font-size:18px;line-height:1.6;max-width:49ch;margin:0 0 24px}.map-screen .intro .actions{display:flex}.map-screen .intro .actions .home-plant-action{display:inline-flex!important;min-height:54px;background:#227547;color:#fff;border:0;box-shadow:none;font-size:15px;padding:14px 22px;gap:10px;width:auto;border-radius:16px}.map-screen .intro-availability{font-size:12px;line-height:1.6;margin:14px 0 0;color:#52695d}.home-how{margin-top:1px;max-width:560px}.home-how summary{font-size:13px;padding:8px 0;min-height:40px}.home-how ol{font-size:14px}.refonte-mascot{grid-area:mascot;border-radius:26px;background:#f0f7e2;padding:30px 24px;display:flex;align-items:center;position:relative;overflow:hidden;align-self:stretch;min-height:244px}.refonte-mascot>div{width:70%;position:relative;z-index:1}.refonte-mascot h2{font-size:clamp(22px,2.2vw,30px);margin:0 0 14px;font-weight:800;letter-spacing:-.045em}.refonte-mascot p{font-size:14px;line-height:1.6;margin:0 0 8px;color:#526c54;max-width:25ch}.refonte-mascot .text-button{font-size:13px;gap:8px;font-weight:750;text-decoration:none}.refonte-mascot img{width:39%;height:auto;position:absolute;right:2%;bottom:12%;object-fit:contain;max-height:200px}.refonte-quick{grid-area:quick;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:2px 0 6px}.refonte-quick-card{display:flex;align-items:center;gap:14px;border:1px solid #e2e9d9;border-radius:22px;padding:23px 20px;min-height:116px;transition:box-shadow .15s}.refonte-quick-card:hover{box-shadow:0 7px 20px #1e4b2c0d;border-color:#b8c9ac}.refonte-quick-card.lime{background:#f0f8dd}.refonte-quick-card.lilac{background:#f2eefb}.refonte-quick-card.sand{background:#fff5e3}.refonte-quick-symbol{display:grid;place-items:center;flex:none;width:42px;height:46px;color:#2f6b49}.lilac .refonte-quick-symbol{color:#6851a4}.sand .refonte-quick-symbol{color:#8c6435}.refonte-quick-symbol .ui-symbol{width:30px;height:30px;stroke-width:1.65}.refonte-quick-card strong{display:block;font-size:16px;font-weight:800;line-height:1.35;letter-spacing:-.035em}.refonte-quick-card small{display:block;font-size:12px;line-height:1.5;color:#52675b;margin-top:6px}.refonte-quick-card>.ui-symbol{margin-left:auto;width:18px;height:18px}.map-screen .map-area{grid-area:map;width:100%;height:570px;min-height:0;align-self:auto;margin:0;border:1px solid #d1e6ee;border-radius:28px;background:#edf8ff}.map-screen #map{inset:0}.map-screen .map-modes{width:auto}.map-screen .map-modes button{font-size:12px;min-height:44px;padding:10px 15px}.map-screen .map-modes .ui-symbol{width:18px;height:18px;stroke-width:1.7}.map-screen .search-box>.ui-symbol{width:20px;height:20px}.map-screen .map-toolbar{top:24px;left:24px;right:24px}.map-screen .search-box{width:min(100%,560px)}.map-screen .search-box input{font-size:16px;padding:14px 12px}.map-screen .map-list{display:inline-flex;align-items:center;min-height:44px}.map-screen .map-caption{font-size:11px}.map-screen .map-legend{font-size:11px}.map-screen .map-controls{top:150px}.map-screen .map-view-links{top:150px}.map-screen .map-botanical{width:150px}.map-screen .map-sun{width:90px}.home-counter{grid-area:counter;width:100%;padding:0!important}.home-counter .plantation-counter{margin:0}.home-share{padding:16px 4px 0}.home-share>div>span{display:none}.home-share strong{font-size:14px}.home-organise{grid-area:organise;grid-column:1/-1;display:flex;margin:0;padding:24px 30px;gap:24px;background:#f6f3fb;border:1px solid #e8e2f2}.home-organise-icon{width:60px;height:60px;display:grid;place-items:center;background:#eae4f7}.home-organise-icon .ui-symbol{width:32px;height:32px}.home-organise>div:last-child{flex:1}.home-organise h2{font-size:25px;margin:0 0 6px}.home-organise p:not(.eyebrow){margin:0 0 10px;font-size:14px}.home-organise .button{font-size:13px}
/* Secondary information remains reachable without repeating the introduction. */
.home-purpose{max-width:1312px;margin:10px auto 25px;display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:32px clamp(24px,4vw,54px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent}.home-purpose h2{font-size:24px;margin:0 0 12px}.home-purpose p{font-size:14px;color:#52695d;margin-bottom:6px;max-width:60ch}.home-latest{max-width:1440px;padding:32px clamp(20px,4vw,64px) 44px;margin:auto;border-top:0}.home-latest h2{font-size:30px;letter-spacing:-.04em}.root-card{border-radius:20px;background:#fff}.root-card strong{font-size:16px}.root-nav{width:44px;height:44px}.home-origin{padding-top:36px}.home-origin h2{font-size:32px}.home-origin p:not(.eyebrow){font-size:15px}.content-screen{max-width:1240px;padding:48px 32px 60px}.content-screen>h1,.page-heading h1{font-size:clamp(34px,4.2vw,52px);line-height:1.13;max-width:850px;font-weight:800}.content-screen>h1 em,.page-heading h1 em{font-style:normal;font-weight:800}.page-heading{gap:24px;margin-bottom:28px}.page-heading p,.lead{font-size:16px;line-height:1.6}.page-heading .button{font-size:13px;min-height:46px}.work-search,.supply-search,.nearby-picker{background:#f5f8ef;border:1px solid var(--line);border-radius:22px;padding:24px}.works-page .work-row{background:white;border:1px solid var(--line);border-radius:22px;padding:24px;margin:12px 0;gap:20px}.works-page .work-row h3{font-size:23px}.works-page .date-block{border-radius:15px;background:#efeafa}.works-page .work-row .button{font-size:13px}.work-organise{border-radius:22px}.supply-disclosure{font-size:13px;max-width:82ch;color:#52695d}.supply-result{border-radius:22px;overflow:hidden}.supply-result .nursery-body h2{font-size:27px}.supply-free{border:1px solid #dce6cb;border-radius:22px;padding:25px;background:#f5f9ed}.supply-free h2{font-size:27px}.ranking-categories{gap:12px}.ranking-categories button{border-radius:18px}.rank-row{font-size:14px}.rank-row a{font-weight:650}.resources-step,.guide-grid article,.press-resource-grid article{border-radius:20px}.resources-check{border-radius:24px}.nearby-page h1{font-size:clamp(34px,4vw,50px)}.nearby-page h2{font-size:27px}.nearby-page p{line-height:1.6}.nearby-group{border-radius:20px}.nearby-item,.nearby-plant-card{border-radius:16px}.refonte-menu{display:grid;grid-template-columns:1fr 1fr;gap:28px 30px}.refonte-menu h3{font-size:13px;font-weight:750;color:#62745b;letter-spacing:0;margin:0 0 5px}.refonte-menu .menu-links a,.refonte-menu .menu-links button{font-size:15px;min-height:44px;padding:10px 0;border-bottom:1px solid #edf1e9;text-align:left;line-height:1.4}.refonte-menu .menu-links{display:grid;gap:0}footer{background:#f0f5e9;border-top:1px solid #dce7d6;max-width:none;padding:40px clamp(20px,4vw,64px);gap:32px}footer nav{font-size:12px;gap:8px 22px}footer nav a,footer nav button{min-height:34px;display:inline-flex;align-items:center;text-align:left}footer>div{max-width:420px}footer p{font-size:13px;color:#52695d}footer b{font-size:24px}footer .participation-status{font-size:12px}.bottom-nav{display:none}
body.map-focused .map-screen{display:block;padding:0;max-width:none}body.map-focused .refonte-quick,body.map-focused .refonte-mascot{display:none}body.map-focused .map-screen .map-area{width:100%;height:calc(100svh - 90px);min-height:540px;border:0;border-radius:0}
@media(min-width:761px) and (max-width:1100px){.header{gap:15px;padding-inline:25px}.header .brand{flex-basis:185px}.header nav{gap:13px;font-size:12px}.header .account{padding:10px;font-size:11px}.map-screen{padding:28px 28px 24px;grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr);gap:20px}.map-screen .intro h1{font-size:42px}.map-screen .intro-text{font-size:16px}.refonte-quick-card{padding:18px 14px;gap:8px}.refonte-quick-card strong{font-size:14px}.refonte-quick-symbol{width:30px}.refonte-quick-card>.ui-symbol{width:15px}.map-screen .map-area{height:520px}.refonte-mascot{padding:24px 20px}.refonte-mascot h2{font-size:24px}.refonte-mascot p{font-size:13px}}
@media(max-width:900px){.header nav{display:none}.header .account{display:inline-flex}.header .brand{flex-basis:205px}}
@media(max-width:760px){body{padding-bottom:calc(82px + env(safe-area-inset-bottom));font-size:15px}.header{height:72px;padding:14px 18px;gap:8px}.header .brand{flex:0 1 195px}.header .brand-logo{width:195px;max-width:58vw}.header .account{display:none}.header .menu-button{width:44px;height:44px;border:1px solid #dfe7d9;border-radius:13px;margin-left:auto}.map-screen{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:'intro' 'quick' 'map' 'counter' 'mascot' 'organise';gap:20px;padding:22px 16px 20px;min-height:0}.map-screen .intro{padding:0 6px;display:block}.map-screen .intro h1{font-size:clamp(30px,8.1vw,39px);line-height:1.14;letter-spacing:-.045em;margin-bottom:15px;max-width:560px}.map-screen .intro-text{font-size:16px;line-height:1.6;max-width:37ch;margin-bottom:18px}.map-screen .intro .actions{display:flex}.map-screen .intro .actions .home-plant-action{width:100%;min-height:52px;font-size:14px;padding:13px 15px;justify-content:center}.map-screen .intro-availability{font-size:12px;line-height:1.5;margin-top:12px}.home-how summary{font-size:13px;min-height:44px}.refonte-quick{grid-template-columns:1fr 1fr;gap:10px;margin:0}.refonte-quick-card{display:grid;grid-template-columns:1fr 18px;gap:8px 5px;align-items:start;border-radius:20px;min-height:160px;padding:16px}.refonte-quick-symbol{width:32px;height:32px;grid-column:1;grid-row:1;display:block}.refonte-quick-symbol .ui-symbol{width:27px;height:27px}.refonte-quick-card>span:nth-child(2){grid-column:1/-1;grid-row:2}.refonte-quick-card strong{font-size:14px;line-height:1.4}.refonte-quick-card small{font-size:12px;line-height:1.5;margin-top:5px}.refonte-quick-card>.ui-symbol{grid-column:2;grid-row:1;width:16px;height:16px}.refonte-quick-card:last-child{grid-column:1/-1;grid-template-columns:32px 1fr 18px;min-height:92px;align-items:center;gap:12px}.refonte-quick-card:last-child>span:nth-child(2){grid-column:2;grid-row:1}.refonte-quick-card:last-child>.ui-symbol{grid-column:3}.map-screen .map-area{width:100%;height:420px;margin:0;min-height:0;border-radius:22px}.map-screen .map-toolbar{top:12px;left:12px;right:12px;gap:8px}.map-screen .search-box input{padding:12px 8px;font-size:16px}.map-screen .map-modes{width:100%;border-radius:16px}.map-screen .map-modes button{font-size:11px;min-height:44px;padding:7px 4px;gap:4px}.map-screen .map-modes .ui-symbol{width:15px;height:15px}.map-screen .map-label-long{display:none}.map-screen .map-label-short{display:inline}.map-screen .map-controls{top:132px;right:10px;gap:7px}.map-screen .map-view-links{top:132px;left:10px}.map-screen .map-view-links a{font-size:11px;min-height:44px}.map-screen .map-caption{bottom:72px;font-size:9px;left:12px;right:12px}.map-screen .map-caption>span{max-width:60%}.map-screen .map-legend{bottom:40px;left:10px;right:10px;padding:6px 3px;font-size:9px;gap:6px;justify-content:center;line-height:1.4}.map-screen .map-list{display:inline-flex;bottom:5px;right:10px;padding:6px 10px;min-height:30px;font-size:10px;border:0;background:transparent;text-decoration:underline;text-underline-offset:3px}.map-screen .map-botanical{width:65px;bottom:100px}.map-screen .map-sun{width:40px;top:125px;right:60px}.map-screen .home-counter{padding:0!important}.home-share{padding:14px 2px 0}.home-share strong{font-size:13px}.home-share-button{font-size:12px;min-height:44px}.refonte-mascot{min-height:230px;padding:24px;border-radius:24px}.refonte-mascot h2{font-size:27px;margin-bottom:12px}.refonte-mascot p{font-size:14px;max-width:25ch;margin:0 0 7px}.refonte-mascot img{width:35%;right:3%;bottom:15%;max-height:174px}.refonte-mascot>div{width:70%}.refonte-mascot .text-button{font-size:13px}.home-organise{margin:0;padding:22px;gap:14px;display:block;border-radius:22px}.home-organise-icon{display:none}.home-organise h2{font-size:23px}.home-organise p:not(.eyebrow){font-size:14px}.home-organise .button{font-size:13px;width:100%;margin-top:4px}.home-purpose{display:grid;grid-template-columns:1fr;gap:20px;margin:0 22px;padding:24px 0}.home-purpose h2{font-size:23px;margin-bottom:9px}.home-purpose p{font-size:14px;line-height:1.6;margin-bottom:0}.home-latest{padding:28px 22px}.home-latest h2{font-size:27px}.home-latest #latest{margin-top:12px}.home-origin{padding:28px 22px 36px}.home-origin h2{font-size:28px}.home-origin p:not(.eyebrow){font-size:14px}.content-screen{padding:28px 20px 38px}.content-screen>h1,.content-screen .page-heading h1{font-size:34px;line-height:1.15;font-weight:800;margin:8px 0 14px}.content-screen .page-heading p,.content-screen .lead{font-size:15px}.content-screen .page-heading{gap:14px}.content-screen .page-heading>.button{font-size:13px}.work-search,.supply-search,.nearby-picker{border-radius:20px;padding:18px}.work-row{border-radius:20px}.works-page .work-row{grid-template-columns:52px minmax(0,1fr);gap:14px;padding:18px;margin:12px 0}.works-page .work-row h3{font-size:20px}.works-page .work-row p{font-size:13px}.works-page .work-row>.button{grid-column:2;min-height:44px;font-size:13px}.date-block strong{font-size:27px}.supply-free{padding:22px}.supply-free h2{font-size:24px}.supply-disclosure{font-size:12px}.supply-result .nursery-body h2{font-size:25px}.ranking-categories{gap:7px}.ranking-categories button{font-size:13px}.refonte-menu{grid-template-columns:1fr;gap:24px}.refonte-menu .menu-links a,.refonte-menu .menu-links button{font-size:15px;min-height:44px}.refonte-menu h3{font-size:12px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:700;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;padding:7px 7px calc(7px + env(safe-area-inset-bottom));height:calc(74px + env(safe-area-inset-bottom));gap:2px;background:#fffffffa;border-top:1px solid #e1e8dc;box-shadow:0 -3px 20px #193e2b09}.bottom-nav>a,.bottom-nav>button,.bottom-nav .plant-nav{height:auto;width:auto;margin:0;transform:none;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;border:0;border-radius:13px;min-width:0;min-height:54px;padding:5px 1px;font-size:10px;line-height:1.2;color:#4c6555;background:none;box-shadow:none}.bottom-nav>a span,.bottom-nav>button span{font-size:10px;line-height:1.2;white-space:nowrap}.bottom-nav .ui-symbol{width:23px;height:23px;stroke-width:1.7}.bottom-nav .plant-nav{background:#e9f4cc;color:#245d38}.bottom-nav .plant-nav .ui-symbol{width:26px;height:26px}.bottom-nav [aria-current=page]{background:#eff5e6;color:#1e5d3b}.bottom-nav [aria-current=page] span{font-weight:750}footer{padding:30px 22px}footer nav{gap:8px 16px;font-size:12px}.content-screen input:not([type=checkbox]),.content-screen select,.content-screen textarea{font-size:16px}body.map-focused .map-screen{padding:0}body.map-focused .map-screen .map-area{width:100%;margin:0;height:calc(100svh - 146px - env(safe-area-inset-bottom));min-height:480px;border:0;border-radius:0}body.map-focused .map-screen .map-list{min-height:36px}#toast{bottom:calc(90px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.refonte-quick-card,.button{transition:none}}

/* Keep empty states concise; actual cards determine the layout. */
.map-screen .intro{background:transparent}
@media(min-width:761px){.root-carousel{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}

/* Free plants: the visitor search comes before contribution by an organisation. */
#screen-annuaire{max-width:1240px;margin:0 auto;padding:40px clamp(20px,4vw,48px) 48px}.distributions-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:26px}.distributions-heading h1{font-size:clamp(30px,3.8vw,46px);line-height:1.14;margin:0 0 14px;letter-spacing:-.045em}.distributions-heading p:not(.eyebrow){font-size:15px;line-height:1.6;max-width:58ch;color:#52695d;margin:0}.distributions-heading .eyebrow{margin-bottom:12px}.directory-languages{flex:none;margin-top:6px;padding:4px;border-radius:12px}.directory-languages button{font-size:11px;min-height:40px;padding:8px 12px;border-radius:9px}.distribution-contribute{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:34px;padding:22px 0 0;border-top:1px solid #dce6d8}.distribution-contribute h2{font-size:15px;letter-spacing:-.02em;margin:0 0 7px}.distribution-contribute p{font-size:13px;color:#5b6e60;margin:0}.distribution-contribute .text-button{font-size:12px;white-space:nowrap}
@media(max-width:760px){#screen-annuaire{padding:24px 18px 34px}.distributions-heading{display:block;margin-bottom:20px}.distributions-heading h1{font-size:32px}.distributions-heading p:not(.eyebrow){font-size:14px}.directory-languages{display:inline-flex;margin-top:15px}.directory-languages button{min-height:44px}.distribution-contribute{display:block;margin-top:25px;padding-top:20px}.distribution-contribute .text-button{margin-top:6px}}
