@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap";:root{--ink:#273c36;--muted:#60746d;--cream:#fffbf5;--paper:#fffefa;--line:#dce5dd;--orange:#f47a50;--yellow:#ffd76c;--mint:#bfe3d2;--serif:Fraunces,Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);margin:0;line-height:1.45}button,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.nav{justify-content:space-between;align-items:center;max-width:1280px;height:78px;margin:auto;padding:0 38px;display:flex}.brand{letter-spacing:-.8px;font-size:20px;font-weight:700}.brand span{color:var(--orange);place-items:center;margin-right:5px;font-size:22px;display:inline-grid}.nav nav{align-items:center;gap:28px;font-size:14px;font-weight:600;display:flex}.nav nav a:hover{color:var(--orange)}.saved-nav{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:99px;padding:8px 12px}.current-region{border:2px solid var(--orange);color:var(--ink);text-transform:uppercase;letter-spacing:.45px;background:#fffefa;border-radius:9px;align-items:center;gap:7px;padding:7px 9px;font-size:10px;font-weight:800;display:flex}.current-region select{border:0;border-left:1px solid var(--line);color:var(--ink);font:700 12px var(--sans);outline-color:var(--orange);background:0 0;max-width:165px;padding-left:7px}.languages{border:1px solid var(--line);background:#fffefa;border-radius:99px;align-items:center;gap:2px;padding:3px;display:flex}.languages span{margin:0 3px;font-size:12px}.languages button{color:var(--muted);font:700 10px var(--mono);background:0 0;border:0;border-radius:99px;padding:5px 6px}.languages button.selected{background:var(--ink);color:#fff}.saved-nav b{background:var(--ink);color:#fff;border-radius:50%;margin-left:4px;padding:1px 5px;font-size:11px}.hero{background:#f8e9d8;grid-template-columns:1.02fr .98fr;gap:35px;min-height:570px;padding:62px max(38px,50vw - 602px);display:grid;overflow:hidden}.hero-copy{padding-top:20px}.eyebrow{font:500 10px var(--mono);letter-spacing:1.5px;color:#667a72;margin:0 0 14px}.hero h1,.finder h2,.why h2,.saved-section h2{font:600 clamp(50px,6vw,78px)/.94 var(--serif);letter-spacing:-3px;margin:0}.hero h1 em,.why h2 em{color:var(--orange);font-weight:500}.intro{color:#385149;max-width:420px;margin:28px 0;font-size:18px;line-height:1.55}.cta{background:var(--ink);color:#fff;border-radius:99px;align-items:center;gap:24px;padding:15px 20px 15px 23px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 5px #273c361f}.cta span{font-size:20px}.trust{color:#6c7a70;margin-top:20px;font-size:12px}.hero-art{background:#b9ded4;border-radius:220px 220px 20px 20px;align-self:end;height:430px;position:relative;overflow:hidden}.sun-disc{background:#ffda73;border-radius:50%;width:160px;height:160px;position:absolute;top:30px;right:45px}.cloud{opacity:.8;background:#eaf6ee;border-radius:50px;width:75px;height:20px;position:absolute}.c1{top:90px;left:50px}.c2{top:185px;right:28px;transform:scale(.65)}.hill{border-radius:50% 50% 0 0;position:absolute;bottom:-70px}.h1{background:#7cb99b;width:500px;height:240px;left:-100px}.h2{background:#5c9d82;width:430px;height:210px;right:-120px}.person{background:var(--orange);text-align:center;color:#f9c5a9;border-radius:45px 45px 15px 15px;width:80px;height:145px;padding-top:7px;font-size:52px;position:absolute;bottom:73px;box-shadow:inset 0 -18px #0000000a}.p1{background:#ef936a;width:100px;height:190px;left:37%}.p2{transform-origin:bottom;background:#f5d4a3;left:21%;transform:scale(.6)}.p3{transform-origin:bottom;background:#467f78;right:15%;transform:scale(.7)}.kite{color:#ed7f58;font-size:70px;position:absolute;top:38px;left:20%;transform:rotate(-18deg)}.finder{max-width:1204px;margin:0 auto;padding:110px 38px}.finder-head{justify-content:space-between;align-items:end;display:flex}.region-spotlight{color:var(--ink);font:700 10px var(--mono);letter-spacing:1px;text-transform:uppercase;background:#fff2e8;border:1px solid #efb39c;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:25px 0 -6px;padding:12px 14px 12px 17px;display:flex}.region-spotlight label{background:var(--paper);border-radius:8px;align-items:center;gap:8px;min-width:190px;padding:7px 10px;display:flex;box-shadow:0 1px #273c3614}.region-spotlight select{min-width:0;color:var(--ink);font:700 14px var(--sans);outline-color:var(--orange);background:0 0;border:0;flex:1}.region-pin{color:var(--orange);font-size:16px}.finder h2,.why h2,.saved-section h2{letter-spacing:-2px;font-size:48px}.filter-toggle{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:10px 14px;font-weight:600;display:none}.filter-apply{display:none}.filters{background:var(--paper);border:1px solid var(--line);border-radius:14px;grid-template-columns:1.15fr .8fr .8fr 1fr auto;align-items:end;gap:12px;margin-top:30px;padding:16px;display:grid;box-shadow:0 9px 30px #233b330d}.filters label{color:var(--muted);text-transform:uppercase;letter-spacing:.7px;font-size:11px;font-weight:700}.filters .saved-filter{text-transform:none;letter-spacing:0;color:var(--ink);white-space:nowrap;align-items:center;gap:7px;padding:8px 2px;display:flex}.filters .saved-filter input{width:auto;accent-color:var(--orange);margin:0}.filters select{width:100%;color:var(--ink);outline-color:var(--orange);background:0 0;border:0;padding:6px 0 0;font-weight:600;display:block}.clear{color:var(--muted);background:0 0;border:0;align-self:center;padding:7px;font-size:13px;text-decoration:underline}.results{color:var(--muted);margin:34px 0 17px;font-size:14px}.results b{color:var(--ink)}.cards{grid-template-columns:repeat(3,1fr);gap:23px;display:grid}.card{background:var(--paper);border:1px solid var(--line);border-radius:13px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #273c361a}.card-link{cursor:pointer;height:100%;display:block}.card-link:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}.card-image{place-items:center;height:160px;display:grid;position:relative}.card-icon{filter:drop-shadow(0 4px #00000012);font-size:62px}.forest{background:#bbdcc6}.coral{background:#ffbaa1}.sun{background:#ffe394}.meadow{background:#cce6af}.blue{background:#b6d5eb}.peach{background:#ffd1a8}.lavender{background:#d8c7ec}.aqua{background:#a9deda}.wave{background:#a9d9e5}.pink{background:#f5b9c5}.heart{width:34px;height:34px;color:var(--ink);background:#fffdfa;border:0;border-radius:50%;font-size:21px;line-height:1;position:absolute;top:12px;right:12px}.heart.active{color:#e8655c}.date-pill{font:500 10px var(--mono);letter-spacing:.3px;background:#fffefa;border-radius:99px;align-items:center;gap:7px;padding:5px 9px;display:flex;position:absolute;bottom:12px;left:12px}.date-pill b{border-left:1px solid var(--line);color:var(--orange);padding-left:7px;font-weight:700}.card-body{padding:18px}.card-top{color:#647a72;font-size:11px;font-family:var(--mono);justify-content:space-between;gap:8px;display:flex}.card-top p{margin:0}.card-top span{white-space:nowrap;color:#496459}.card h3{font:600 22px/1.1 var(--serif);letter-spacing:-.6px;margin:11px 0 6px}.venue{color:var(--muted);margin:0;font-size:12px}.badges{flex-wrap:wrap;gap:5px;margin:14px 0 12px;display:flex}.badges span{color:#4a675c;background:#eef5ef;border-radius:5px;padding:4px 7px;font-size:10px;font-weight:700}.note{color:#50675f;min-height:39px;margin:0 0 14px;font-size:13px}.source-language{color:#71857d;margin:8px 0 0;font-size:10px;font-weight:600}.source-link{color:var(--ink);text-underline-offset:3px;margin-top:14px;font-size:12px;font-weight:700;text-decoration:underline;display:inline-block}.source-link:hover{color:var(--orange)}.source-promise{color:#4c665d;max-width:470px;margin:-12px 0 19px;font-size:13px;line-height:1.5}.source-popover{color:var(--ink);text-underline-offset:3px;cursor:help;font-weight:700;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;position:relative}.source-popover-card{z-index:10;border:1px solid var(--line);background:#fffefa;border-radius:9px;width:270px;padding:12px;font-size:12px;font-weight:500;text-decoration:none;display:none;position:absolute;top:calc(100% + 9px);left:0;box-shadow:0 10px 24px #273c3626}.source-popover:hover .source-popover-card,.source-popover:focus .source-popover-card{gap:7px;display:grid}.source-popover-card a{text-underline-offset:2px;text-decoration:underline}.source-popover-card a:hover{color:var(--orange)}.empty{text-align:center;background:#fffefa;border:1px dashed #bdcfc3;border-radius:13px;padding:60px 20px}.empty span{font-size:38px}.empty h3{font:600 28px var(--serif);margin:10px 0}.empty p{color:var(--muted);max-width:430px;margin:0 auto 20px}.small{border:0;font-size:13px}.why{background:#d5ead9;grid-template-columns:.85fr 1.15fr;gap:80px;padding:100px max(38px,50vw - 602px);display:grid}.why-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.why article{border-top:1px solid #9fc5ae;padding-top:18px}.why article span{color:#e87550;font-size:29px}.why h3{font:600 18px var(--serif);margin:14px 0 7px}.why article p{color:#4d6960;margin:0;font-size:13px}.saved-section{justify-content:space-between;align-items:center;max-width:1204px;margin:auto;padding:95px 38px;display:flex}.saved-section h2{margin-bottom:14px}.saved-section p:not(.eyebrow){color:var(--muted);margin:0;font-size:15px}.saved-hearts{font:48px var(--serif);letter-spacing:4px;color:var(--orange)}.saved-list-button{background:var(--ink);color:#fff;border:0;border-radius:99px;margin-top:18px;padding:11px 16px;font-size:13px;font-weight:700}.saved-list-button:hover{background:var(--orange)}.cards .card:last-child:nth-child(3n+1){grid-column:2}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:30px max(38px,50vw - 602px);font-size:12px;display:flex}footer .brand{color:var(--ink)}footer p{margin:0}footer button{color:var(--ink);background:0 0;border:0;font-size:12px;font-weight:700}@media (width<=780px){.cards .card:last-child:nth-child(3n+1){grid-column:auto}.nav{flex-wrap:wrap;gap:8px;height:auto;min-height:64px;padding:9px 20px}.nav nav{flex-wrap:nowrap;justify-content:space-between;gap:6px;width:100%;min-width:0}.nav nav a{display:none}.current-region{white-space:nowrap;flex:1;min-width:0;padding:6px 7px;font-size:9px}.current-region select{flex:1;min-width:0;max-width:none;font-size:11px}.languages{flex:none;margin-left:0}.languages button{padding:5px 4px}.saved-nav{padding:7px 9px}.hero{min-height:auto;padding:35px 20px 0;display:block}.hero-copy{padding:0}.hero h1{letter-spacing:-2.5px;font-size:53px}.intro{margin:22px 0;font-size:16px}.hero-art{border-radius:140px 140px 0 0;height:270px;margin:45px -20px 0}.finder{padding:70px 20px}.region-spotlight{flex-direction:column;align-items:stretch;gap:8px;margin:18px 0 0}.region-spotlight label{width:100%;min-width:0}.finder h2,.why h2,.saved-section h2{font-size:39px}.filter-toggle{display:block}.filters{grid-template-columns:1fr;margin-top:16px;display:none}.filters.open{display:grid}.filter-apply{background:var(--ink);color:#fff;text-align:center;border:0;border-radius:99px;padding:12px 16px;font-weight:700;display:block}.clear{text-align:left;padding-left:0}.cards{grid-template-columns:1fr;gap:17px}.card-image{height:180px}.why{padding:65px 20px;display:block}.why-grid{grid-template-columns:1fr;gap:28px;margin-top:38px}.why article{padding-top:14px}.saved-section{padding:65px 20px;display:block}.saved-hearts{margin-top:25px;font-size:48px}footer{padding:24px 20px}footer p{display:none}.hero-art .p1{left:37%}}@media (width>=781px) and (width<=1000px){.cards{grid-template-columns:repeat(2,1fr)}.hero{padding-left:30px;padding-right:30px}.why{gap:35px;padding-left:30px;padding-right:30px}}.admin-page{background:#f7eee3;min-height:100vh}.admin-nav{justify-content:space-between;align-items:center;max-width:1120px;margin:auto;padding:24px 28px;font-size:14px;font-weight:700;display:flex}.admin-nav>a:last-child{border-bottom:1px solid var(--ink)}.admin-hero{background:#b9ded4;border-radius:22px;max-width:1120px;margin:35px auto 0;padding:65px 55% 65px 28px}.admin-hero h1{font:600 clamp(42px,5vw,68px)/.94 var(--serif);letter-spacing:-2px;margin:0}.admin-hero em{color:var(--orange);font-weight:500}.admin-hero>p:last-child{color:#385149;line-height:1.6}.admin-grid{grid-template-columns:.8fr 1.2fr;gap:22px;max-width:1120px;margin:28px auto;padding:0 28px;display:grid}.admin-card,.source-list{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:25px}.admin-card h2,.source-list h2{font:600 28px var(--serif);margin:0 0 8px}.admin-card>p{color:var(--muted);margin:0 0 20px;font-size:13px}.admin-card label,.admin-form label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin:13px 0;font-size:11px;font-weight:700;display:block}.admin-card input,.admin-card select{border:1px solid var(--line);width:100%;color:var(--ink);font:500 14px var(--sans);background:#fffefa;border-radius:7px;margin-top:6px;padding:10px;display:block}.admin-form .checkbox{text-transform:none;letter-spacing:0;align-items:center;gap:8px;display:flex}.admin-form .checkbox input{width:auto;margin:0}.admin-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.admin-button,.sync-button{background:var(--ink);color:#fff;border:0;border-radius:8px;padding:11px 14px;font-size:13px;font-weight:700}.admin-button:disabled,.sync-button:disabled{opacity:.45;cursor:not-allowed}.source-list{max-width:1120px;margin:0 auto 70px}.admin-message{color:#426355;background:#edf5ee;border-radius:8px;padding:12px 14px;font-size:13px}.source-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:17px 0;display:flex}.source-row strong{font:600 18px var(--serif)}.source-row p,.source-row small{color:var(--muted);margin:4px 0;font-size:12px}.source-row a{font-size:12px;font-weight:700;text-decoration:underline}.source-row>div:last-child{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.source-error{color:#b04d42!important}@media (width<=780px){.admin-page .languages{margin-left:0}.admin-hero{border-radius:16px;margin:10px 20px 0;padding:45px 24px}.admin-grid{grid-template-columns:1fr;padding:0 20px}.source-list{margin:0 20px 50px}.source-row{flex-direction:column;align-items:flex-start}.source-row>div:last-child{align-items:flex-start}}
