.ll-box{background:#fff;color:var(--ink);border-radius:var(--r);padding:1.1rem 1.2rem 1.2rem;max-width:30rem;margin:0 0 1.4rem;box-shadow:var(--shadow)}
.ll-box fieldset{border:0;margin:0;padding:0;min-width:0}
.ll-box legend{font:800 1.25rem/1.2 var(--display);padding:0;margin:0 0 .2rem;color:var(--ink)}
.ll-sub{font-size:.98rem;margin:0 0 .8rem;color:var(--muted)}
.ll-row{display:flex;gap:.8rem;align-items:center;margin-bottom:.6rem}
.ll-row label{font-weight:700;font-size:.98rem}
.ll-money{display:flex;align-items:center;gap:.2rem;border:2px solid var(--pine);border-radius:12px;padding:0 .7rem;background:#fff;flex:0 0 auto}
.ll-money span{font-weight:700;font-size:1.1rem}
.ll-money input{width:5.2rem;border:0;font:700 1.2rem var(--body);padding:.55rem 0;color:var(--ink);background:transparent;min-height:44px}
.ll-money input:focus-visible{outline:none}
.ll-money:focus-within{outline:3px solid var(--sun);outline-offset:2px}
#ll-range{width:100%;accent-color:var(--pine);height:44px;margin:0;flex:1 1 auto;min-width:0}
.ll-tog{display:flex;gap:.5rem;flex-wrap:wrap}
.ll-tog button{flex:1 1 7rem;min-height:44px;border-radius:999px;border:2px solid var(--pine);background:#fff;color:var(--pine-dk);font:700 1rem var(--body);cursor:pointer}
.ll-tog button[aria-pressed=true]{background:var(--pine);color:#fff}
.ll-go{margin-top:.8rem;width:100%}
#what-it-buys{padding:clamp(2.4rem,5vw,4rem) 0;background:var(--cream)}
#what-it-buys[hidden]{display:none}
#what-it-buys h2{margin-bottom:.4rem}
.ll-status{font-weight:700;font-size:1.15rem;margin:0 0 1.4rem;color:var(--ink)}
.ll-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));gap:1.2rem;align-items:start}
.ll-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.2rem;box-shadow:0 6px 18px rgba(23,59,51,.08);min-width:0}
.ll-card[hidden]{display:none}
.ll-top{display:flex;justify-content:space-between;gap:.6rem;align-items:flex-start}
.ll-card h3{font:800 1.45rem/1.15 var(--display);margin:0}
.ll-ctry{margin:.1rem 0 .6rem;color:var(--muted);font-size:.98rem}
.ll-badge{font-weight:700;font-size:.85rem;padding:.2rem .7rem;border-radius:999px;white-space:nowrap}
.ll-budget{background:var(--sand);color:#5B3A06}
.ll-comfortable{background:var(--mint);color:var(--pine-dk)}
.ll-luxury{background:var(--pine-dk);color:#fff}
.ll-big{font:800 1.7rem/1.1 var(--display);color:var(--pine);margin:.2rem 0 .3rem}
.ll-left,.ll-pick{margin:.2rem 0;font-size:1rem}
.ll-more,.ll-all{margin-top:.8rem;min-height:44px;padding:.5rem 1.2rem;border-radius:999px;border:2px solid var(--pine);background:#fff;color:var(--pine-dk);font:700 1rem var(--body);cursor:pointer}
.ll-more:hover,.ll-all:hover{background:var(--mint)}
.ll-allp{text-align:center;margin:1.4rem 0 0}
.ll-det{margin-top:1rem;border-top:1px solid var(--line);padding-top:.8rem;font-size:1rem}
.ll-det[hidden]{display:none}
.ll-sec{margin-bottom:1rem}
.ll-sec h4{font:800 1.05rem/1.2 var(--display);margin:0 0 .4rem}
.ll-sec p,.ll-sec ul{margin:.2rem 0}
.ll-sec ul{padding-left:1.1rem}
.ll-k{font-weight:700;font-size:.9rem;margin-top:.5rem!important}
.ll-tbl{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.35}
.ll-tbl th,.ll-tbl td{text-align:left;padding:.4rem .3rem;border-bottom:1px solid var(--line);vertical-align:top}
.ll-tbl thead th{font-size:.85rem}
.ll-amt{white-space:nowrap;font-weight:700}
.ll-tbl tfoot th,.ll-tbl tfoot td{border-bottom:0;font-weight:700}
.ll-tag{display:inline-block;margin-left:.4rem;font-size:.78rem;font-weight:700;background:var(--sand);color:#5B3A06;border-radius:6px;padding:0 .4rem}
.ll-note{font-size:.92rem}
.ll-nowrap{margin-top:2rem}
.ll-nowrap h3{font:800 1.3rem var(--display);margin:0 0 .5rem}
.ll-no{padding-left:1.1rem;font-size:1rem}
.ll-no li{margin:.3rem 0}
.ll-foot{margin-top:1.8rem;font-size:.95rem;max-width:70ch}
.ll-err{font-weight:700}
.ll-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ll-card a{overflow-wrap:anywhere}
@media (max-width:700px){.ll-box{max-width:none}.ll-tbl{font-size:.9rem}.ll-tbl th,.ll-tbl td{padding:.35rem .2rem}}
@media (prefers-reduced-motion:reduce){.ll-box *,#what-it-buys *{transition:none!important;scroll-behavior:auto!important}}
.ll-chk{display:flex;gap:.6rem;align-items:flex-start;margin:.7rem 0 0;font-size:.98rem;line-height:1.35;cursor:pointer}
.ll-chk input{width:22px;height:22px;margin:0;flex:0 0 auto;accent-color:var(--pine)}
.ll-area{font-size:.92rem}

#nomads{padding:clamp(2.4rem,5vw,4rem) 0;background:var(--sand)}
#nomads .intro{color:var(--ink)}
.nm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:1rem}
.nm-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.1rem;min-width:0}
.nm-card h3{font:800 1.3rem/1.15 var(--display);margin:0}
.nm-ctry{margin:.1rem 0 .4rem;color:var(--muted);font-size:.95rem}
.nm-big{font:800 1.5rem/1.1 var(--display);color:var(--pine);margin:.2rem 0 .4rem}
.nm-sm{margin:.25rem 0;font-size:.98rem;line-height:1.45}
.nm-lk{font-weight:700}
.nm-days{margin:.5rem 0 0;font-size:.95rem;border-top:1px solid var(--line);padding-top:.5rem}
.nm-card a,.nm-loop a,.nm-yt a{overflow-wrap:anywhere}
.nm-loop,.nm-yt{margin-top:1.6rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.2rem}
.nm-loop h3,.nm-yt h3{font:800 1.35rem/1.2 var(--display);margin:0 0 .5rem}
.nm-legs,.nm-leads{padding-left:1.1rem}
.nm-legs li,.nm-leads li{margin:.3rem 0}
.nm-tot{font-weight:700;font-size:1.1rem}
.nm-warn{font-weight:700;color:var(--rust)}
.nm-more{margin-top:1.4rem;font-weight:700}
