.freshness-banner{display:flex;align-items:center;justify-content:center;gap:8px;min-height:32px;padding:6px 24px;background:var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:13px;text-align:center}.freshness-dot{width:7px;height:7px;border-radius:50%;background:var(--color-star);flex:none}.freshness-footer{margin:0;color:var(--color-text-muted);font-size:13px}.site-footer{margin-top:64px;padding:42px max(40px,calc((100% - 1280px)/2));border-top:1px solid var(--color-border);background:var(--color-surface)}.site-footer-grid{display:grid;grid-template-columns:1.6fr .8fr 1fr 1fr;gap:32px;max-width:1280px;margin:0 auto}.site-footer-logo{display:flex;align-items:center;gap:9px;margin-bottom:12px;font-family:var(--font-body);font-weight:700;font-size:18px;letter-spacing:-.035em}.site-footer-tagline{margin:0 0 8px;font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--color-text)}.site-footer-brand p{margin:0;max-width:320px;font-size:13px;line-height:1.75;color:var(--color-text-muted)}.site-footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}.site-footer-col h4{margin:0 0 4px;font-size:13px;line-height:1.6;font-weight:600}.site-footer-col a,.site-footer-col .freshness-footer{margin:0;padding:0;font-size:13px;line-height:1.65;color:var(--color-text-muted);text-decoration:none}.site-footer-col a:hover{color:var(--color-text);text-decoration:underline;text-underline-offset:4px}@media (max-width: 900px){.site-footer-grid{grid-template-columns:1.5fr 1fr 1fr}.site-footer-brand{grid-column:1 / -1}.site-footer-brand p{max-width:540px}}@media (max-width: 700px){.site-footer{margin-top:42px;padding:32px 22px}.site-footer-grid{grid-template-columns:1fr 1fr;gap:28px 22px}.site-footer-col:last-child{grid-column:1 / -1}}.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--header-height);padding:0 max(40px,calc((100% - 1280px)/2));background:var(--color-bg);border-bottom:1px solid var(--color-border)}.brand{display:inline-flex;flex:none;align-items:center;gap:9px;font-family:var(--font-body);font-weight:700;font-size:21px;letter-spacing:-.04em;color:var(--color-text);text-decoration:none;white-space:nowrap}.site-header nav{display:flex;flex:none;align-items:center;gap:8px}.site-header>.search-pill{flex:1;min-width:0;max-width:580px}.search-pill{position:relative;display:flex;min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised)}.pill-segment{display:flex;flex:1 1 0;min-width:0;align-items:center;gap:10px;padding:9px 18px;background:none;border:none;border-right:1px solid var(--color-border);text-align:left;color:var(--color-text)}.pill-segment:first-of-type{border-radius:999px 0 0 999px}.pill-segment:last-of-type{flex-grow:.7;border-right:none;border-radius:0 999px 999px 0}.pill-segment:hover,.pill-segment[aria-expanded=true]{background:var(--color-surface)}.pill-icon{color:var(--color-text-muted);flex:none}.pill-text{display:flex;flex-direction:column;gap:2px;min-width:0}.pill-label{font-size:12px;font-weight:600;line-height:1.4}.pill-value{font-size:13px;line-height:1.4;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-pill--card{flex:1 1 0;min-width:0;gap:10px;border:none;border-radius:0;background:transparent}.search-pill--card .pill-segment{flex:1 1 0;min-width:0;min-height:64px;padding:12px 16px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-raised);transition:border-color .2s,background-color .2s}.search-pill--card .pill-segment:hover,.search-pill--card .pill-segment[aria-expanded=true]{border-color:#b8c4ae;background:var(--color-bg)}.search-pill--card .pill-value{font-size:14px}.pill-popover{position:absolute;top:calc(100% + 10px);left:0;display:flex;flex-direction:column;gap:14px;width:360px;max-width:calc(100vw - 44px);max-height:min(650px,72vh);overflow-y:auto;padding:20px;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-popover);z-index:40}.pill-popover.wide{width:620px}.popover-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.popover-heading strong{font-size:14px;font-weight:600}.popover-close{display:grid;place-items:center;flex:none;width:30px;height:30px;padding:0;border:1px solid var(--color-border);border-radius:50%;background:transparent;color:var(--color-text-muted);font-size:21px;line-height:1}.popover-close:hover{background:var(--color-surface)}.site-header .pill-popover{left:50%;transform:translate(-50%)}.calendar-nav{display:flex;justify-content:space-between;margin-bottom:10px}.calendar-nav button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--color-border);border-radius:50%;background:transparent;color:var(--color-text);font-size:16px}.calendar-nav button:disabled{color:#a9b19f;cursor:default}.state-options{display:flex;gap:8px;flex-wrap:wrap}.state-options button{padding:8px 13px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:transparent;color:var(--color-text);font-size:13px}.state-options button.active{background:var(--color-pine);color:var(--color-surface-raised);border-color:var(--color-pine)}.pill-popover input{width:100%;min-width:0;padding:11px 14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:14px}.popover-submit{min-height:42px;padding:10px;background:var(--color-accent);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600}.popover-clear{padding:3px 0;background:none;border:none;color:var(--color-text-muted);font-size:13px;text-decoration:underline;text-underline-offset:4px;align-self:flex-start}.calendar-pair{display:flex;gap:24px}.calendar-month{flex:1;min-width:0}.calendar-month h4{margin:0 0 12px;font-size:14px;font-weight:600;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.calendar-dow{text-align:center;font-size:12px;line-height:1.6;color:var(--color-text-muted)}.calendar-day{height:34px;padding:0;border:none;background:none;border-radius:50%;color:var(--color-text);font-size:13px}.calendar-day:disabled{color:#a9b19f;cursor:default}.calendar-day.selected{background:var(--color-pine);color:var(--color-surface-raised)}.calendar-day.in-range{background:var(--color-surface);border-radius:0}.sites-stepper{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}.sites-stepper button{width:36px;height:36px;padding:0;border-radius:50%;border:1px solid var(--color-border);background:none;color:var(--color-text);font-size:18px}.wishlist-link{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-size:14px;font-weight:500;padding:9px 12px;border-radius:var(--radius-pill)}.wishlist-link:hover{background:var(--color-surface)}.auth-signin{border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text);border-radius:var(--radius-pill);padding:9px 18px;font-weight:600;font-size:14px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.auth-signin:hover{border-color:#b8c4ae;background:var(--color-surface)}.auth-menu{position:relative}.auth-trigger{display:inline-flex;align-items:center;gap:10px;padding:5px 5px 5px 12px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised);cursor:pointer;transition:border-color .15s ease}.auth-trigger:hover{border-color:#b8c4ae}.auth-burger{color:var(--color-text);flex:none}.auth-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;display:block;flex:none}.auth-avatar-fallback{display:flex;align-items:center;justify-content:center;background:var(--color-accent);color:var(--color-surface-raised);font-weight:600;font-size:13px}.auth-avatar-lg{width:40px;height:40px;font-size:16px}.auth-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:264px;max-width:calc(100vw - 44px);padding:8px 0;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface-raised);box-shadow:var(--shadow-popover);z-index:500}.auth-identity{display:flex;align-items:center;gap:12px;padding:10px 16px}.auth-identity-text{display:grid;gap:3px;min-width:0}.auth-identity-name{font-weight:600;font-size:14px}.auth-identity-email{color:var(--color-text-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:168px}.auth-sep{height:1px;background:var(--color-border);margin:6px 0}.auth-item{display:block;width:100%;text-align:left;padding:11px 16px;border:none;background:none;color:var(--color-text);font-size:14px;cursor:pointer}.auth-item:hover{background:var(--color-surface)}a.auth-item{text-decoration:none;color:inherit}@media (max-width: 1100px){.site-header{gap:16px}.site-header .pill-segment{padding:9px 12px}.site-header .pill-icon{display:none}}@media (max-width: 720px){.site-header{flex-wrap:wrap;height:auto;min-height:70px;padding:12px 22px;gap:12px}.brand{font-size:19px}.site-header nav{margin-left:auto;gap:2px}.wishlist-link{font-size:13px;padding:9px 8px}.auth-signin{padding:9px 13px;font-size:13px}.site-header>.search-pill{order:3;flex-basis:100%;max-width:none}.pill-segment{flex:1 1 0;min-width:0;padding:9px 12px;gap:8px}.pill-popover,.pill-popover.wide,.site-header .pill-popover{position:fixed;top:auto;bottom:max(16px,env(safe-area-inset-bottom));left:22px;right:22px;width:auto;min-width:0;max-width:none;max-height:70vh;max-height:70dvh;padding:16px;transform:none;overscroll-behavior:contain}.calendar-pair{flex-direction:column;gap:22px}.search-pill--card{flex-direction:column}.search-pill--card .pill-segment{flex:none}.search-pill--card .pill-icon{display:block}}@media (max-width: 360px){.brand{gap:6px;font-size:18px}.wishlist-link{gap:4px;font-size:12px;padding:8px 5px}.auth-signin{padding:8px 10px;font-size:12px}}@media (prefers-reduced-motion: reduce){.search-pill--card .pill-segment,.auth-signin,.auth-trigger{transition:none}}@media (max-width: 720px){.pill-popover input{font-size:16px}}@media (any-pointer: coarse){.popover-close,.calendar-nav button,.sites-stepper button{width:44px;height:44px}.calendar-day{height:44px}.state-options button,.popover-submit,.popover-clear,.wishlist-link,.auth-signin,.auth-trigger{min-height:44px}.pill-popover input{font-size:16px}}.review-section{margin:38px 0}.review-section h2{font-size:27px;font-weight:400;margin-bottom:18px;line-height:1.25}.review-summary{color:var(--color-text);font-family:var(--font-body);font-weight:500;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}.review-form{display:flex;flex-direction:column;gap:14px;margin-bottom:24px;max-width:560px}.review-star-picker{display:flex;gap:4px}.review-star-picker .star{display:grid;place-items:center;min-width:36px;min-height:36px;border:none;border-radius:8px;background:none;font-size:28px;color:#bdc5b4;cursor:pointer;padding:0}.review-star-picker .star.on{color:#ad782e}.review-form textarea{width:100%;min-height:110px;border:1px solid var(--color-border);border-radius:14px;padding:14px 16px;background:var(--color-surface-raised);color:var(--color-text);font:inherit;font-size:14px;line-height:1.7;resize:vertical}.review-form-actions{display:flex;gap:10px;flex-wrap:wrap}.review-form-actions button{min-height:40px;padding:10px 18px;border-radius:var(--radius-pill);border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-surface-raised);font-size:12px;font-weight:600;cursor:pointer}.review-form-actions button:disabled{opacity:.55;cursor:default}.review-delete{background:var(--color-surface-raised)!important;color:var(--color-danger)!important;border:1px solid #d9bfb3!important}.review-error{color:var(--color-danger);font-size:13px}.review-signin-prompt{min-height:44px;padding:12px 18px;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-accent);font-size:13px;font-weight:600;cursor:pointer;margin-bottom:16px}.review-signin-prompt:hover{background:var(--color-surface)}.review-list{display:flex;flex-direction:column;gap:14px}.review-card{min-width:0;border:1px solid var(--color-border);border-radius:16px;padding:20px;background:var(--color-surface-raised);font-size:13px}.review-card header{display:flex;gap:6px 10px;align-items:baseline;flex-wrap:wrap;margin-bottom:12px;font-size:12px;line-height:1.5}.review-card header strong{font-weight:600}.review-card p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.8;overflow-wrap:anywhere}.review-card-head{display:flex;gap:12px;align-items:center;margin-bottom:12px}.review-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;display:inline-flex;flex-shrink:0}.review-avatar-fallback{align-items:center;justify-content:center;background:var(--color-surface);color:var(--color-accent);font-weight:600}.review-author{font-weight:600;font-size:13px}.review-meta{color:var(--color-text-muted);font-size:11px;line-height:1.7;font-variant-numeric:tabular-nums}.review-stars{color:#9b712f}.review-body{margin:0;line-height:1.8}.review-loading,.review-empty{color:var(--color-text-muted);font-size:14px;line-height:1.7}.review-source-badge{display:inline-flex;margin-left:8px;padding:4px 9px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-family:var(--font-body);font-size:10px;font-weight:600;letter-spacing:0;vertical-align:middle}.review-site-tag{font-size:11px;color:var(--color-text-muted);background:var(--color-surface);border-radius:6px;padding:3px 7px}.camping-signals{margin:18px 0;padding:20px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}.camping-signals h3{margin:0 0 12px;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:0}.camping-signals ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.camping-signals li{font-size:13px;line-height:1.7}.camping-signals>p{margin:14px 0 0;font-size:11px}.signal-topic{display:inline-block;margin-right:6px;padding:2px 8px;border-radius:var(--radius-pill);font-size:10px;font-weight:600;text-transform:capitalize;background:var(--color-bg)}.signal-negative .signal-topic{background:#f2e2d8;color:#8d4b37}.signal-positive .signal-topic{background:#dce6d4;color:#365a3d}.signal-mixed .signal-topic{background:#eee5d0;color:#7a602d}@media (max-width: 720px){.review-card{padding:18px}.review-form textarea{font-size:16px}.review-section h2{font-size:25px}}.photo-carousel{position:relative;width:100%;height:100%}.photo-carousel img{width:100%;height:100%;object-fit:cover}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:32px;height:32px;padding:0;border-radius:50%;border:1px solid rgba(83,102,67,.12);background:#fdfcf7f2;color:var(--color-text);font-size:20px;line-height:1;transition:opacity .15s}.carousel-arrow.prev{left:10px}.carousel-arrow.next{right:10px}.carousel-dots{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:5px}@media (hover: hover){.carousel-arrow,.carousel-dots,.carousel-counter{opacity:0;transition:opacity .15s}.photo-carousel:hover .carousel-arrow,.photo-carousel:hover .carousel-dots,.photo-carousel:hover .carousel-counter,.photo-carousel:focus-within .carousel-arrow,.photo-carousel:focus-within .carousel-dots,.photo-carousel:focus-within .carousel-counter{opacity:1}}.carousel-dots button{width:7px;height:7px;padding:0;border:none;border-radius:50%;background:#ffffffa6;box-shadow:0 0 0 1px #18271d26}.carousel-dots button.active{background:#fffdf5}.carousel-counter{position:absolute;top:10px;left:10px;padding:2px 8px;border-radius:10px;background:#1e2c22b3;color:#fff;font-size:12px;line-height:1.6}.photo-carousel img.carousel-preload{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}@media (prefers-reduced-motion: reduce){.carousel-arrow,.carousel-dots,.carousel-counter{transition:none}}.camp-card{position:relative;min-width:0;height:100%;padding:8px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-raised);box-shadow:0 2px #41523709;transition:border-color .2s ease,box-shadow .2s ease}.camp-card-link{display:block;min-width:0;text-decoration:none;border-radius:10px}.camp-card-photo{position:relative;aspect-ratio:5 / 4;border-radius:10px;overflow:hidden;background:var(--color-surface)}.camp-card-photo img{width:100%;height:100%;object-fit:cover}.camp-card .photo-carousel img{transition:transform .5s var(--ease-out-soft)}.camp-card.hovered{border-color:var(--color-accent)}.camp-card.hovered .camp-card-photo{outline:2px solid var(--color-accent);outline-offset:-2px}.camp-card-body{display:flex;flex-direction:column;gap:2px;padding:14px 6px 10px}.camp-card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.camp-card-title-row h3{min-width:0;min-height:2.8em;margin:0;font-family:var(--font-body);font-size:16px;font-weight:600;line-height:1.4;letter-spacing:-.02em;overflow-wrap:anywhere}.camp-card-rating{flex:none;padding-top:3px;white-space:nowrap;font-size:12px;color:var(--color-text-muted)}.camp-card-rating .muted{display:none}.camp-card-star{color:var(--color-star)}.camp-card-body p{margin:4px 0 0;font-size:13px;line-height:1.6}.muted{color:var(--color-text-muted)}.camp-card-location{order:1}.camp-card-body .camp-card-site-count{order:3;font-size:12px}.camp-card-body .camp-card-availability{order:2;display:flex;align-items:baseline;gap:7px;margin-top:8px;padding-top:9px;border-top:1px solid var(--color-border);font-variant-numeric:tabular-nums}.camp-card-availability.none,.camp-card-availability.untracked{color:var(--color-text-muted)}.camp-card-availability.open,.camp-card-availability.later{font-weight:600;color:var(--color-accent-dark)}.avail-dot{width:7px;height:7px;border-radius:50%;background:var(--color-success);flex:none}.camp-card-availability.later .avail-dot{background:var(--color-star)}.badge{display:inline-block;padding:2px 9px;border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:12px;font-weight:400;color:var(--color-text-muted);background:var(--color-surface)}.heart{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid rgba(83,102,67,.12);border-radius:50%;background:#fdfcf7f2;font-size:16px;color:var(--color-text-muted);transition:background-color .2s,color .2s}.heart.hearted{color:var(--color-danger);background:#fff7e9}@media (any-pointer: coarse){.heart{width:44px;height:44px}}@media (hover: hover){.camp-card:hover{border-color:#c7d0bd;box-shadow:0 5px 16px #40533a0f}.camp-card:hover .photo-carousel img{transform:scale(1.025)}.heart:hover{background:var(--color-surface-raised);color:var(--color-accent)}.heart.hearted:hover{color:var(--color-danger)}}@media (prefers-reduced-motion: reduce){.camp-card,.camp-card .photo-carousel img,.heart{transition:none}.camp-card:hover .photo-carousel img{transform:none}}.account-main{max-width:1000px;margin:0 auto;padding:48px 40px 80px;display:grid;gap:36px}.account-main h1{margin:0;font-size:44px;font-weight:400;letter-spacing:-.035em}.identity-card{display:flex;gap:22px;align-items:center;padding:28px;border:1px solid var(--color-border);border-radius:22px;background:var(--color-surface-raised);box-shadow:0 6px 24px #35443809}.identity-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0}.identity-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--color-surface);color:var(--color-accent);font-weight:600;font-size:26px}.identity-body{min-width:0}.identity-name-row{display:flex;gap:16px;align-items:baseline;flex-wrap:wrap}.identity-name-row h2{margin:0;font-size:28px;font-weight:400;overflow-wrap:anywhere}.identity-edit,.my-review-edit{background:none;border:none;color:var(--color-accent);font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:6px 0}.identity-name-form{display:flex;gap:8px;flex-wrap:wrap}.identity-name-form input,.danger-confirm input{min-width:0;max-width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:14px}.identity-name-form button,.danger-actions button:not(.danger-button){min-height:40px;padding:8px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised);color:var(--color-text);font-size:12px;font-weight:600}.identity-name-form button[type=submit]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-surface-raised)}.identity-error{color:var(--color-danger);margin:6px 0 0;font-size:13px}.identity-stats{font-size:13px;font-weight:500;margin:10px 0 0;font-variant-numeric:tabular-nums}.identity-card p.muted{margin:6px 0 0;font-size:13px;overflow-wrap:anywhere}.my-reviews h2,.wishlist-teaser h2,.review-nudge h2{margin:0 0 18px;font-size:28px;font-weight:400}.my-review-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.my-review-item{display:flex;gap:20px;padding:20px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface-raised)}.my-review-photo{width:96px;height:112px;object-fit:cover;border-radius:12px;flex-shrink:0}.my-review-body{min-width:0;flex:1}.my-review-name{font-size:15px;font-weight:600;text-decoration:none;color:inherit}.my-review-name:hover{text-decoration:underline;text-underline-offset:3px}.my-review-text{margin:8px 0;font-size:14px;line-height:1.7;color:var(--color-text-muted);overflow-wrap:anywhere}.review-nudge{padding:24px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface)}.review-nudge p.muted{margin:0 0 12px;font-size:14px;line-height:1.6}.nudge-list{margin:0;padding-left:18px;font-size:14px}.nudge-list li{margin:8px 0}.nudge-list a{text-underline-offset:3px}.teaser-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.teaser-head>a{font-size:12px;font-weight:600;text-underline-offset:4px}.teaser-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:24px}.danger-zone{border-top:1px solid var(--color-border);padding-top:28px}.danger-button{color:var(--color-danger);border:1px solid #d9bfb3;background:transparent;border-radius:var(--radius-pill);min-height:40px;padding:9px 16px;font-size:12px;font-weight:500;cursor:pointer}.danger-button:disabled{opacity:.5;cursor:default}.danger-confirm{display:grid;gap:14px;max-width:440px;font-size:14px;line-height:1.7}.danger-confirm p{margin:0}.danger-actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 720px){.account-main{padding:32px 22px 56px;gap:28px}.account-main h1{font-size:36px}.identity-card{align-items:flex-start;gap:16px;padding:20px}.identity-avatar{width:52px;height:52px}.identity-name-row{gap:6px 12px}.identity-name-row h2,.my-reviews h2,.wishlist-teaser h2,.review-nudge h2{font-size:25px}.my-review-item{padding:16px;gap:14px}.my-review-photo{width:64px;height:80px}.identity-name-form input,.danger-confirm input{font-size:16px}.review-nudge{padding:20px}}.chip-row{display:flex;align-items:center;gap:10px;padding:18px 24px;overflow-x:auto;border-bottom:1px solid var(--color-border);background:var(--color-bg);scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.chip{display:inline-flex;align-items:center;gap:6px;flex:none;padding:9px 16px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-size:13px;font-weight:500;line-height:1.5;white-space:nowrap;color:var(--color-text-muted);transition:border-color .2s,background-color .2s}.chip:hover{border-color:#bac7b0;background:#e4e9da}.chip.active{background:var(--color-accent);color:var(--color-surface-raised);border-color:var(--color-accent)}@media (any-pointer: coarse){.chip{min-height:44px}}@media (prefers-reduced-motion: reduce){.chip{transition:none}}.map-container{width:100%;height:100%}.map-container .leaflet-tile-pane{filter:saturate(.82) contrast(.97)}.map-container .leaflet-popup-content-wrapper{background:var(--color-bg);border-radius:12px;box-shadow:var(--shadow-popover);color:var(--color-text)}.map-container .leaflet-popup-tip{background:var(--color-bg)}.map-fallback{display:grid;place-items:center;height:100%;color:var(--color-text-muted);background:var(--color-surface)}.map-pill-wrapper{background:none;border:none}.map-dot{display:block;width:11px;height:11px;border-radius:50%;transform:translate(-50%,-50%);background:var(--color-accent);border:2px solid var(--color-bg);box-shadow:var(--shadow-card);position:relative}.map-dot:after{content:"";position:absolute;top:50%;left:50%;width:24px;height:24px;transform:translate(-50%,-50%)}.map-dot.hovered{background:var(--color-text)}.map-pill{width:max-content;max-width:220px;display:flex;flex-direction:column;align-items:center;gap:1px;transform:translate(-50%,-100%);padding:5px 9px;background:var(--color-bg);border-radius:var(--radius-card);box-shadow:var(--shadow-card);text-align:center}.map-pill-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.map-pill-meta{font-size:11px;font-weight:600;color:var(--color-text-muted);white-space:nowrap}.map-pill.hovered{background:var(--color-text);color:var(--color-bg);z-index:10}.map-pill.hovered .map-pill-name{z-index:10}.map-pill.hovered .map-pill-meta{color:inherit}.map-popup{display:grid;gap:6px;text-decoration:none;max-width:200px}.map-popup img{border-radius:8px}.map-container{font-family:var(--font-body)}.map-container .leaflet-popup-content{line-height:1.5}.map-pill-meta{font-variant-numeric:tabular-nums}.browse-page>.chip-row{padding-inline:max(var(--page-gutter),calc((100% - var(--content-width)) / 2))}.browse-body{display:flex;align-items:flex-start;max-width:calc(var(--content-width) + 2 * var(--page-gutter));margin:0 auto;padding:32px var(--page-gutter) 0;gap:28px}.browse-results{flex:1;min-width:0}.browse-heading{margin:0 0 18px;font-size:32px}.browse-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--color-text-muted);margin-bottom:24px}.browse-toolbar p{margin:0;font-variant-numeric:tabular-nums}.browse-toolbar label{display:inline-flex;align-items:center;gap:8px}.browse-toolbar select{padding:8px 10px;border-radius:var(--radius-control);border:1px solid var(--color-border);background:var(--color-surface-raised);font:inherit;color:var(--color-text)}.browse-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:24px 20px}.browse-empty{padding:56px 28px;margin:12px 0;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);color:var(--color-text-muted)}.browse-empty h2{margin:0 0 12px;color:var(--color-text)}.browse-empty p{margin:0;max-width:480px}.browse-map{width:38%;min-width:320px;position:sticky;top:calc(var(--header-height) + 20px);height:calc(100svh - var(--header-height) - 40px);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface)}.map-toggle{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:20;padding:12px 22px;background:var(--color-accent);color:#fff;border:1px solid var(--color-accent-dark);border-radius:var(--radius-pill);font-size:14px;font-weight:600;box-shadow:var(--shadow-card)}.map-toggle:hover{background:var(--color-accent-dark)}@media (max-width: 900px){.browse-body{display:block}.browse-body--map .browse-results{display:none}.browse-map{display:block;position:relative;top:auto;width:100%;min-width:0;height:65svh;min-height:360px}}@media (max-width: 720px){.browse-body{padding-top:28px}.browse-heading{font-size:28px}.browse-toolbar{margin-bottom:20px}.browse-grid{grid-template-columns:1fr;gap:24px}.browse-empty{padding:32px 22px}}.availability-calendar{display:flex;flex-wrap:wrap;gap:24px 20px;padding:24px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface-raised)}.availability-calendar .heatmap-month{flex:1 1 224px;min-width:0;max-width:320px}.availability-calendar .heatmap-month h4{margin:0 0 14px;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:0;font-variant-numeric:tabular-nums}.availability-calendar .heatmap-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.heat-cell{height:32px;display:grid;place-items:center;border-radius:6px;font-family:var(--font-body);font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;color:#26392a}.heat-cell.past{color:var(--color-text-muted);opacity:.55}.heat-cell.booked{background:var(--color-day-booked);color:#854b39}.heat-cell.unavailable{background:var(--color-day-unavailable);color:var(--color-text-muted);text-decoration:line-through}.heat-legend{width:100%;margin:0;font-size:11px;line-height:1.7;color:var(--color-text-muted)}.heat-toggle{width:100%;text-align:left;padding:12px 0 0;border:none;border-top:1px solid var(--color-border);background:none;font-size:12px;font-weight:600;color:var(--color-accent)}.heat-toggle:hover{color:var(--color-accent-dark);text-decoration:underline;text-underline-offset:4px}@media (max-width: 720px){.availability-calendar{padding:20px;gap:24px}.availability-calendar .heatmap-month{max-width:none}.heat-cell{height:36px;font-size:12px}}.avail-strip{display:flex;flex-direction:column;gap:10px}.avail-strip-head{display:flex;justify-content:space-between;gap:8px;font-family:var(--font-body);font-size:10px;font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.avail-strip-cells{display:flex;gap:4px}.avail-strip-cell{flex:1 1 0;min-width:0;height:20px;border-radius:5px;background:var(--color-day-unavailable)}.avail-strip-cell.booked{background:var(--color-day-booked)}.avail-strip-cell.unavailable{background:var(--color-day-unavailable)}.avail-strip-cell.unknown{background:var(--color-surface);border:1px dashed #aebca4}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:18px;background:#000000eb}.lightbox figure{margin:0;max-width:82vw;text-align:center}.lightbox img{max-width:82vw;max-height:82vh;object-fit:contain}.lightbox figcaption{margin-top:10px;display:flex;justify-content:center;gap:16px;color:#d0d0d0;font-size:13px}.lightbox-close{position:absolute;top:20px;right:24px;width:38px;height:38px;border:none;border-radius:50%;background:#ffffff24;color:#fff;font-size:16px}.lightbox-scope{margin-left:12px;padding:1px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.6);font-size:12px}.lightbox-arrow{width:44px;height:44px;border:none;border-radius:50%;background:#ffffff24;color:#fff;font-size:24px;line-height:1}@media (max-width: 720px){.lightbox{gap:0}.lightbox figure{width:100%;max-width:100%}.lightbox img{width:100%;max-width:100%;max-height:72svh}.lightbox-arrow{position:absolute;bottom:24px;width:44px;height:44px}.lightbox-arrow.prev{left:calc(50% - 54px)}.lightbox-arrow.next{right:calc(50% - 54px)}.lightbox figcaption{flex-wrap:wrap;padding:0 22px;gap:8px 16px}}.photo-grid{position:relative;display:grid;gap:8px;border-radius:var(--radius-panel);overflow:hidden;background:var(--color-surface);height:420px}.photo-grid.tiles-5{grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr}.photo-grid.tiles-5 .photo-tile:first-child{grid-row:span 2}.photo-grid.tiles-3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.photo-grid.tiles-3 .photo-tile:first-child{grid-row:span 2}.photo-grid.tiles-1{grid-template-columns:1fr}.photo-tile{position:relative;padding:0;border:none;background:var(--color-surface);cursor:pointer;height:100%;min-width:0;min-height:0;overflow:hidden}.photo-tile img{width:100%;height:100%;object-fit:cover;display:block}@media (prefers-reduced-motion: no-preference){.photo-grid .photo-tile:first-child img{animation:hero-kenburns 30s ease-in-out infinite alternate;transform-origin:62% 38%}}@keyframes hero-kenburns{0%{transform:scale(1)}to{transform:scale(1.08) translate(1%,-.8%)}}.photo-scope-badge{position:absolute;left:8px;bottom:8px;z-index:2;padding:2px 8px;border-radius:999px;background:#141c1899;color:#fff;font-size:12px;pointer-events:none}.photo-grid.tiles-1 .photo-tile img{height:420px}.show-all{position:absolute;right:16px;bottom:16px;z-index:2;padding:9px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);font-size:13px;font-weight:600;box-shadow:var(--shadow-soft)}@media (max-width: 720px){.photo-grid:is(.tiles-1,.tiles-3,.tiles-5){grid-template-columns:1fr;grid-template-rows:1fr;height:auto;aspect-ratio:4 / 3}.photo-grid:is(.tiles-1,.tiles-3,.tiles-5) .photo-tile:first-child{grid-row:1}.photo-grid .photo-tile:not(:first-child){display:none}.photo-grid.tiles-1 .photo-tile img{height:100%}.photo-grid .show-all{right:12px;bottom:12px;font-size:12px}}.same-park h2{margin-bottom:14px}.same-park-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}.same-park-card{display:flex;flex-direction:column;gap:8px;min-width:0;text-decoration:none;color:inherit}.same-park-photo{aspect-ratio:4 / 3;border-radius:var(--radius-card);overflow:hidden;background:var(--color-surface);transition:box-shadow .35s var(--ease-out-soft)}.same-park-photo img{width:100%;height:100%;object-fit:cover;display:block}.same-park-title{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.same-park-title h3{margin:0;font-size:15px;font-weight:600;line-height:1.3}.same-park-title span{font-size:13px;white-space:nowrap}.same-park-meta{font-size:13px}@media (hover: hover){.same-park-card:hover .same-park-photo{box-shadow:var(--shadow-card)}}.detail-page{max-width:calc(var(--content-width) + 2 * var(--page-gutter));margin:0 auto;padding:32px 40px 80px}.detail-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.back-link{display:inline-flex;align-items:center;gap:6px;min-height:40px;font-size:13px;font-weight:500;text-decoration:none;color:var(--color-text-muted)}.back-link:hover{color:var(--color-accent)}.detail-actions{display:flex;gap:8px}.detail-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 16px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-raised);font-size:13px;font-weight:600;color:var(--color-text);transition:background-color .2s,border-color .2s}.detail-pill:hover{background:var(--color-surface);border-color:#b8c3ad}.heart-inline.hearted{color:var(--color-danger);border-color:#ddc5b9;background:#f7eee5}.detail-page h1{max-width:960px;margin:0 0 14px;font-family:var(--font-display);font-size:clamp(32px,3.5vw,46px);font-weight:400;letter-spacing:-.035em;line-height:1.12}.detail-subtitle{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0;font-size:14px;line-height:1.5}.detail-badge{padding:4px 10px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-size:11px;font-weight:600;color:var(--color-text)}.detail-hero{margin:28px 0 36px;view-transition-name:camp-hero}.detail-columns{display:grid;grid-template-columns:minmax(0,1fr) 348px;gap:48px;align-items:start}.detail-main{min-width:0}.info-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;padding:0 0 28px;border-bottom:1px solid var(--color-border)}.info-stat{display:flex;flex-direction:column;gap:5px;min-width:0}.info-stat b{font-family:var(--font-body);font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.45}.info-stat span{font-size:12px;line-height:1.5;color:var(--color-text-muted)}.facility-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px}.facility{display:flex;align-items:center;gap:12px;padding:17px 16px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-raised);font-size:13px;font-weight:500;line-height:1.5;color:var(--color-text)}.facility svg{color:var(--color-accent);flex-shrink:0}.site-type-chips{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0 0}.detail-description{margin:22px 0 0;font-size:14px;line-height:1.8;color:var(--color-text-muted)}.blurb-hint{font-size:12px}.detail-main h2{margin:38px 0 18px;font-size:27px;font-weight:400;letter-spacing:-.025em;line-height:1.2}.not-tracked-panel{padding:22px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);font-size:14px;line-height:1.6}.not-tracked-panel p{margin:0 0 6px}.not-tracked-panel p:last-child{margin-bottom:0;color:var(--color-text-muted)}.ask-row{display:flex;align-items:center;gap:10px;padding:6px 6px 6px 16px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-raised)}.ask-row:focus-within{outline:2px solid var(--color-accent);outline-offset:3px}.ask-row svg{color:var(--color-text-muted);flex:none}.ask-row input{flex:1;min-width:0;padding:8px 0;border:none;background:none;font:inherit;font-size:13px;color:var(--color-text)}.ask-row input:focus{outline:none}.ask-row input::placeholder{color:var(--color-text-muted);opacity:1}.ask-row button{min-height:40px;padding:0 18px;border:none;border-radius:11px;background:var(--color-accent);color:var(--color-surface-raised);font-size:13px;font-weight:600}.ask-row button:hover{background:var(--color-accent-dark)}.ask-answer{margin-top:12px;padding:18px;background:var(--color-surface);border-radius:14px;font-size:14px;line-height:1.7}.detail-map{height:320px;border:1px solid var(--color-border);border-radius:20px;overflow:hidden}.booking-card{position:sticky;top:calc(var(--header-height) + 24px);align-self:start;padding:26px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface-raised);box-shadow:0 10px 30px #3544380f;display:flex;flex-direction:column;gap:18px}.booking-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px}.booking-price-value{font-family:var(--font-body);font-size:30px;font-weight:600;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.booking-price .muted{font-size:13px}.booking-facts{display:flex;justify-content:space-between;gap:12px;padding:16px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg)}.booking-facts>div{min-width:0}.booking-fact-right{text-align:right}.booking-fact-label{display:block;font-size:11px;font-weight:500;color:var(--color-text-muted)}.booking-next{margin:6px 0 0;font-size:13px;line-height:1.5;font-variant-numeric:tabular-nums}.booking-next strong{font-weight:600}.booking-note{margin:0;font-size:11px;line-height:1.6;text-align:left}.booking-cta{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 14px;background:var(--color-accent);color:var(--color-surface-raised);border-radius:var(--radius-pill);font-weight:600;font-size:13px;line-height:1.45;text-align:center;text-decoration:none;transition:background-color .2s}.booking-cta svg{flex-shrink:0}.booking-cta:hover{background:var(--color-accent-dark)}.maps-link{text-align:center;font-size:12px;font-weight:500;text-underline-offset:4px}.detail-reviews{margin-top:8px}.reviews-summary{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;font-size:13px;line-height:1.6}.reviews-score{font-family:var(--font-body);font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.reviews-place{font-weight:600}.review-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:14px;margin-top:18px}.reviews-attribution{margin-top:14px;font-size:12px;line-height:1.6}.badge-fact{background:var(--color-surface);border-color:var(--color-border);color:var(--color-accent-dark)}@media (max-width: 1100px){.detail-columns{gap:32px;grid-template-columns:minmax(0,1fr) 320px}.booking-card{padding:22px}}@media (max-width: 960px){.detail-columns{grid-template-columns:1fr;gap:32px}.booking-card{position:static;order:-1}}@media (max-width: 720px){.detail-page{padding:22px 22px 56px}.detail-topbar{gap:8px;margin-bottom:24px;flex-wrap:wrap}.detail-actions{margin-left:auto}.detail-pill{padding:0 12px;min-height:40px}.detail-page h1{font-size:34px}.detail-subtitle{font-size:12px}.detail-hero{margin:24px 0 28px}.info-strip{gap:18px 20px}.info-stat b{font-size:14px}.detail-main h2{margin-top:32px;font-size:25px}.detail-map{height:280px}.ask-row input{font-size:16px}.booking-card{padding:22px;border-radius:20px}}@media (prefers-reduced-motion: reduce){.detail-pill,.booking-cta{transition:none}}.section-row{min-width:0}.section-row-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.section-row-header h2{margin:0;font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1.25;letter-spacing:-.025em}.section-row-controls{display:flex;flex:none;align-items:center;gap:10px}.show-all-link{font-size:13px;font-weight:500;color:var(--color-pine);text-decoration-thickness:1px;text-underline-offset:5px;white-space:nowrap}.section-arrow{display:grid;place-items:center;width:34px;height:34px;padding:0;border-radius:50%;border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:20px;line-height:1;transition:background-color .2s}.section-arrow:hover{background:var(--color-surface)}.section-arrow[aria-disabled=true]{opacity:.4;cursor:default}.section-row-scroller{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 66px)/4);gap:22px;overflow-x:auto;margin:-4px;padding:4px 4px 12px;scrollbar-width:none}.section-row-scroller::-webkit-scrollbar{display:none}.section-row-item{min-width:0}@media (max-width: 1100px){.section-row-scroller{grid-auto-columns:calc((100% - 2 * 20px) / 3);gap:20px}}@media (max-width: 860px){.section-arrow{display:none}.section-row-scroller{grid-auto-columns:calc((100% - 16px)/2);gap:16px}}@media (max-width: 700px){.section-row-header{gap:16px;margin-bottom:18px}.section-row-header h2{font-size:24px}}@media (max-width: 520px){.section-row-scroller{grid-auto-columns:min(280px,86%)}.section-row-header{flex-wrap:wrap;gap:10px 16px}}@media (any-pointer: coarse){.section-arrow{width:44px;height:44px}.show-all-link{display:inline-flex;align-items:center;min-height:44px}}@media (prefers-reduced-motion: reduce){.section-arrow{transition:none}}.state-tiles{padding:28px 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.state-tiles h2{margin:0 0 22px;font-family:var(--font-display);font-size:28px;line-height:1.25;font-weight:400;letter-spacing:-.025em}.state-tiles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.state-tile{position:relative;display:block;height:280px;border:7px solid var(--color-surface-raised);border-radius:14px;outline:1px solid var(--color-border);overflow:hidden;background:var(--color-surface);color:#fff;text-decoration:none;transition:box-shadow .3s var(--ease-out-soft)}.state-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease-out-soft)}.state-tile-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#23362af0,#23362a0f 80%)}.state-tile-caption{position:absolute;left:20px;right:20px;bottom:20px}.state-tile-caption h3{margin:0;font-family:var(--font-body);font-size:24px;line-height:1.2;font-weight:600;letter-spacing:-.025em}.state-tile-caption p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0 0;font-size:12px;line-height:1.6;color:#f1f2e9}.state-postmark{position:absolute;right:14px;top:14px;display:flex;flex-direction:column;align-items:center;width:78px;padding:5px;border:1px dashed #aab697;background:#f7f4e7f2;transform:rotate(6deg);color:#657459}.state-postmark svg{width:56px;height:43px}.state-postmark span{padding-bottom:3px;font-size:9px;line-height:1.4;letter-spacing:.04em}@media (hover: hover){.state-tile:hover{box-shadow:0 8px 20px #40533a14}.state-tile:hover img{transform:scale(1.025)}}@media (max-width: 860px){.state-tiles-grid{grid-template-columns:1fr;gap:18px}.state-tile{height:230px}}@media (max-width: 700px){.state-tiles{padding:24px 0}.state-tiles h2{font-size:24px;margin-bottom:18px}.state-tile-caption{left:18px;right:18px;bottom:18px}}@media (prefers-reduced-motion: reduce){.state-tile,.state-tile img{transition:none}.state-tile:hover img{transform:none}}.camp-preview{min-height:100vh;background:#f7f6f0;color:#354438;font-family:var(--font-body)}.preview-nav{padding:28px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #dedfd5}.preview-brand{font:25px Georgia,serif;text-decoration:none}.preview-nav>span{font-size:9px;letter-spacing:.15em;color:#828773}.preview-nav>a:last-child{font-size:12px;text-decoration:none}.preview-hero{max-width:1500px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;min-height:650px;align-items:center;padding:28px 4% 40px}.preview-copy{padding:30px 0;position:relative;z-index:1}.preview-eyebrow{font-size:10px;letter-spacing:.17em;color:#79816c}.preview-copy h1{font:normal clamp(42px,4.7vw,70px)/1.12 Georgia,serif;letter-spacing:-.05em;margin:30px 0 24px}.preview-copy h1 em{color:#7b896a;font-weight:400}.preview-copy p{font-size:14px;color:#777c6f;line-height:1.9}.preview-cta{display:inline-flex;gap:40px;margin-top:24px;padding:17px 23px;background:#3d5943;color:#fff;text-decoration:none;border-radius:5px;font-size:12px}.preview-cta:hover{background:#2f4634}.preview-note{margin-top:45px;font-size:10px;color:#858978}.preview-note span{margin-right:15px}.preview-stage{position:relative;height:580px;background:radial-gradient(ellipse at 50% 53%,#e7ecda,transparent 68%);border-radius:30px}.preview-stage.is-evening{background:radial-gradient(ellipse at 50% 53%,#d9d9cb,transparent 68%)}.scene-label{position:absolute;top:28px;left:28px;right:28px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;color:#7b826d}.scene-canvas,.scene-poster{position:absolute;top:35px;right:0;bottom:45px;left:0;width:100%;height:calc(100% - 80px);object-fit:contain}.scene-canvas{opacity:0;cursor:grab;touch-action:pan-y}.scene-canvas.is-ready{opacity:1}.preview-stage:has(.is-ready) .scene-poster{visibility:hidden}.scene-canvas:active{cursor:grabbing}.scene-controls{position:absolute;bottom:10px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:12px}.scene-controls>div{display:flex;align-items:center;gap:10px}.scene-controls span{font-size:10px;color:#79816e}.scene-controls button{border:1px solid #d7dccd;background:#fbfbf5;border-radius:999px;padding:10px 13px;color:#4b5b42;font-size:11px}.scene-controls button:hover{background:#e4e9da}.scene-static-label{position:absolute;bottom:20px;width:100%;text-align:center;font-size:11px;color:#7b826d}.preview-bottom{border-block:1px solid #dedfd5;padding:26px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px}.preview-bottom>span{font-size:9px;letter-spacing:.13em;color:#7d8571}.preview-bottom p{font:22px Georgia,serif;margin:0}.preview-bottom a{font-size:11px;text-decoration:none}.preview-footer{padding:24px 4%;display:flex;justify-content:space-between;gap:20px;color:#8a8d80;font-size:10px}@media (max-width: 900px){.preview-nav>span{display:none}.preview-hero{grid-template-columns:1fr 1.1fr}.preview-stage{height:490px}.scene-controls{gap:6px;flex-wrap:wrap}.preview-bottom p{font-size:18px}}@media (max-width: 700px){.preview-nav{padding:22px}.preview-nav>a:last-child{font-size:10px}.preview-brand{font-size:21px}.preview-hero{display:flex;flex-direction:column;padding:15px 22px 28px}.preview-copy{width:100%;padding-bottom:0}.preview-copy h1{font-size:49px}.preview-stage{width:100%;height:370px}.scene-label{top:15px;left:0;right:0}.preview-note{margin-top:25px}.preview-bottom{align-items:start;flex-direction:column;padding:24px;gap:14px}.preview-footer{padding:24px;flex-direction:column;gap:10px}}.scene-details{position:absolute;top:48px;left:28px;right:28px;display:flex;align-items:center;justify-content:center;gap:8px;z-index:1}.scene-details span{font-size:8px;letter-spacing:.1em;color:#79816e}.scene-details button{background:#fafbf3e8;border:1px solid #d7dccd;border-radius:999px;padding:8px 10px;font-size:10px;color:#4b5b42}.scene-details button:hover{background:#e4e9da}.scene-controls{flex-wrap:wrap;bottom:0;gap:8px}.scene-canvas{touch-action:auto}@media (max-width: 1000px){.scene-details span,.scene-controls span{display:none}}.scene-details{flex-wrap:wrap}.scene-details span{display:none}.preview-stage{height:640px}@media (max-width:700px){.preview-stage{height:390px}}.preview-hero{grid-template-columns:.65fr 1.35fr;max-width:1700px}.preview-stage{height:720px}@media (max-width:700px){.preview-stage{height:420px}}@media (min-width: 701px){.preview-hero{position:relative;display:block;max-width:none;height:max(800px,calc(100svh - 90px));padding:0;isolation:isolate;overflow:hidden}.preview-stage{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:0;background:radial-gradient(ellipse at 65% 55%,#e7ecda,transparent 72%)}.preview-stage.is-evening{background:radial-gradient(ellipse at 65% 55%,#d9d9cb,transparent 72%)}.scene-canvas,.scene-poster{top:42px;right:0;bottom:65px;left:13%;width:87%;height:calc(100% - 107px)}.preview-copy{position:absolute;top:50%;left:4%;transform:translateY(-50%);width:min(35%,460px);padding:35px 0;z-index:3;pointer-events:none}.preview-copy:before{content:"";position:absolute;top:-70px;right:-80px;bottom:-60px;left:-80px;z-index:-1;background:radial-gradient(ellipse at 25% 48%,#f7f6f0f2 20%,#f7f6f0bb 48%,transparent 74%);pointer-events:none}.preview-copy h1{font-size:clamp(48px,5.1vw,78px);text-shadow:0 2px 24px #f7f6f0}.preview-copy p{color:#636d5d}.preview-cta{pointer-events:auto;box-shadow:0 8px 25px #35443812}.scene-label{left:44%;right:4%;top:25px}.scene-details{left:38%;right:3%;top:50px;z-index:4}.scene-controls{left:35%;right:2%;bottom:23px;z-index:4}}@media (min-width: 701px) and (max-width: 1000px){.preview-hero{height:820px}.preview-copy{top:31%;width:40%}.preview-copy h1{font-size:48px}.scene-canvas,.scene-poster{top:150px;right:0;bottom:60px;left:0;width:100%;height:calc(100% - 210px)}.scene-details{left:43%}.scene-controls{left:0}.preview-note{display:none}}@media (min-width: 1001px){.preview-copy{width:min(46vw,680px)}.preview-copy h1{font-size:clamp(48px,4.65vw,72px)}.preview-copy:before{right:-35px;background:radial-gradient(ellipse at 18% 48%,#f7f6f0f2 12%,#f7f6f0a6 42%,transparent 73%)}.scene-canvas,.scene-poster{left:5%;width:95%}}@media (min-width: 701px) and (max-width: 1000px){.preview-copy{width:58%}.preview-copy h1{font-size:clamp(40px,5vw,48px)}}@media (min-width: 701px){.preview-copy:before{content:none}.preview-copy h1{text-shadow:none}.preview-stage:after{content:"";position:absolute;top:-60px;right:-60px;bottom:-60px;left:-60px;z-index:2;pointer-events:none;background:conic-gradient(from 90deg at -12% 10%,transparent 0deg,#fff9e830 9deg,#fff8e54d 14deg,transparent 24deg,#fff5db24 29deg,transparent 38deg),radial-gradient(ellipse at -12% 10%,#fff8e870,#fff4db18 38%,transparent 65%);filter:blur(26px);-webkit-mask-image:linear-gradient(to right,#000 0%,#000b 40%,transparent 83%);mask-image:linear-gradient(to right,#000 0%,#000b 40%,transparent 83%)}.preview-stage.is-evening:after{opacity:.55}}.camp-hero{min-height:0}.camp-hero .landing-search{pointer-events:auto;margin-top:26px;max-width:560px}.camp-hero .landing-search-go{flex-shrink:0}@media (max-width: 700px){.camp-hero .landing-search{width:100%}}@media (max-width: 700px){.camp-hero .search-pill--card{flex-direction:row;gap:6px}.camp-hero .search-pill--card .pill-segment{flex:1;min-width:0;padding:10px 8px}.camp-hero .search-pill--card .pill-icon,.camp-hero .preview-note{display:none}.camp-hero .preview-stage{height:300px}}@media (min-width: 701px) and (prefers-reduced-motion: no-preference){.camp-hero .scene-poster,.camp-hero .scene-static-label{visibility:hidden}.camp-hero .scene-failed .scene-poster,.camp-hero .scene-failed .scene-static-label{visibility:visible}}.camp-hero .scene-canvas{touch-action:auto;cursor:auto}.camp-hero .scene-controls{left:auto;right:4%;bottom:22px;gap:6px;flex-wrap:nowrap}.camp-hero .scene-controls button{width:34px;height:34px;padding:0;border:1px solid transparent;background:transparent;color:#79816e;font-size:20px;display:grid;place-items:center;cursor:pointer}.camp-hero .scene-controls button:hover,.camp-hero .scene-controls button:focus-visible{background:#ffffff90;border-color:#d7dccd;color:#354438}.camp-hero .scene-controls button:focus-visible{outline:2px solid #7b896a;outline-offset:3px}.camp-hero .scene-controls .scene-help{position:relative;display:block}.camp-hero .scene-help button{font:14px Georgia,serif}.camp-hero .scene-controls .scene-help>[role=tooltip]{display:block;position:absolute;bottom:46px;right:0;width:206px;padding:12px 14px;line-height:1.7;font-size:11px;color:#56624e;border:1px solid #e0e3d8;background:#fafaf5;border-radius:10px;box-shadow:0 8px 24px #3544380c;visibility:hidden;opacity:0;pointer-events:none}.camp-hero .scene-help:hover>[role=tooltip],.camp-hero .scene-help:focus-within>[role=tooltip]{visibility:visible;opacity:1}.camp-hero .scene-help>[role=tooltip] span{font:inherit;color:inherit}.camp-hero .scene-help .scene-help-mouse{display:inline}.camp-hero .scene-help .scene-help-touch{display:none}@media (any-pointer: coarse){.camp-hero .scene-help .scene-help-mouse{display:none}.camp-hero .scene-help .scene-help-touch{display:inline}.camp-hero .scene-controls button{width:44px;height:44px}}.camp-hero .scene-canvas{--scene-framing: offset;--scene-fov: 27.4}@media (min-width: 1201px){.camp-hero .preview-hero{height:clamp(620px,calc(100svh - 260px),800px);min-height:620px}.camp-hero .scene-poster{left:38%;width:60%;object-fit:contain}}.camp-hero .scene-static-label{display:none}@media (max-width: 1200px),(max-width: 1400px) and (any-pointer: coarse){.camp-hero .preview-hero{display:grid;grid-template-columns:minmax(0,1fr);height:auto;min-height:0;gap:6px;padding:32px var(--page-gutter) 20px;padding-left:max(var(--page-gutter),env(safe-area-inset-left));padding-right:max(var(--page-gutter),env(safe-area-inset-right));overflow:hidden}.camp-hero .preview-copy{position:relative;inset:auto;transform:none;width:auto;min-width:0;padding:0;pointer-events:auto}.camp-hero .preview-copy h1{font-size:clamp(42px,6.2vw,56px);margin:20px 0}.camp-hero .preview-copy p{margin:0}.camp-hero .preview-stage{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3 / 2;margin:0 0 16px;border-radius:0}.camp-hero .preview-stage:has(.is-ready){margin-bottom:16px}.camp-hero .scene-canvas,.camp-hero .scene-poster{top:0;right:0;bottom:0;left:0;width:100%;height:100%}.camp-hero .scene-canvas{--scene-framing: centered;--scene-fov: 32}.camp-hero .scene-controls{bottom:-12px;right:0}.camp-hero .preview-stage:after{display:none}}@media (max-width: 700px){.camp-hero .preview-copy h1{font-size:clamp(36px,11.5vw,49px)}}@media (min-width: 600px) and (max-width: 1200px) and (orientation: landscape),(min-width: 600px) and (max-width: 1400px) and (orientation: landscape) and (any-pointer: coarse){.camp-hero .preview-hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);column-gap:16px;padding-block:32px 28px}.camp-hero .preview-copy h1{font-size:clamp(28px,3.8vw,46px);margin:16px 0}.camp-hero .preview-copy p{font-size:clamp(12px,1.45vw,14px)}.camp-hero .preview-eyebrow{font-size:9px;letter-spacing:.13em}.camp-hero .preview-stage{aspect-ratio:1.4}.camp-hero .scene-canvas{--scene-fov: 34}}@media (min-width: 600px) and (max-width: 1000px) and (max-height: 500px) and (orientation: landscape){.camp-hero .preview-hero{padding-block:20px 24px}.camp-hero .preview-stage{height:max(190px,calc(100svh - 150px));aspect-ratio:auto}}.landing-sections{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;width:100%;max-width:calc(var(--content-width) + 2 * var(--page-gutter));margin:36px auto 0;padding:0 var(--page-gutter)}.landing-sections .section-row{min-width:0}.landing-search-band{padding:32px max(var(--page-gutter),calc((100% - var(--content-width)) / 2));background:var(--color-surface);border-block:1px solid var(--color-border)}.field-search-heading{margin-bottom:20px}.field-search-heading h2{margin:0}.landing-search{display:flex;align-items:stretch;gap:10px;width:100%;padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-raised);box-shadow:var(--shadow-soft)}.landing-search-go{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 26px;min-height:50px;flex:none;border:none;border-radius:var(--radius-control);background:var(--color-accent);color:#fff;font-size:14px;font-weight:600;transition:background-color .2s}.landing-search-go:hover{background:var(--color-accent-dark)}.field-filters{width:100%;max-width:calc(var(--content-width) + 2 * var(--page-gutter));margin:0 auto;padding-inline:var(--page-gutter)}.field-filters .chip-row{padding:24px 0}@media (max-width: 720px){.landing-search-band{padding-block:28px}.landing-search{flex-direction:column}.landing-search-go{min-height:46px}.landing-search-band .search-pill--card{flex-direction:row;gap:0}.landing-search-band .search-pill--card .pill-segment{flex:1;min-width:0;padding:10px 8px}.landing-search-band .search-pill--card .pill-icon{display:none}.landing-sections{margin-top:28px;gap:36px}}.landing-page .state-tiles{padding-block:32px;border-block:1px solid var(--color-border)}@media (max-width: 720px){.landing-page .state-tiles{padding-block:28px}}.notfound-page{max-width:calc(var(--content-width) + 2 * var(--page-gutter));min-height:100svh;margin:0 auto;padding:30px 40px}.notfound-brand{display:inline-flex;align-items:center;gap:10px;min-height:40px;color:var(--color-accent);font-size:18px;font-weight:600;letter-spacing:-.03em;text-decoration:none}.notfound-main{max-width:720px;padding:clamp(72px,16vh,160px) 0 64px}.notfound-code{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:36px;padding:8px 16px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-accent);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.notfound-main h1{margin:24px 0 18px;font-size:clamp(40px,5vw,64px);font-weight:400;line-height:1.1;letter-spacing:-.035em}.notfound-main p{margin:0;font-size:15px;line-height:1.7;color:var(--color-text-muted)}.notfound-back{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;margin-top:32px;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-surface-raised);font-size:13px;font-weight:600;text-decoration:none}.notfound-back:hover{background:var(--color-accent-dark)}@media (max-width: 720px){.notfound-page{padding:24px 22px}.notfound-main{padding-top:80px}}.status-page{max-width:1040px;margin:0 auto;padding:32px 24px 64px}.status-header{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px}.status-header h1{font-size:1.75rem;margin:0}.status-page h2{font-size:1rem;letter-spacing:.02em;font-family:var(--font-body);font-weight:600;color:var(--color-text-muted);margin:32px 0 12px}.status-badge{border-radius:var(--radius-pill);padding:6px 14px;font-size:.875rem;font-weight:600;color:#fff;background:var(--color-text-muted)}.status-ok{background:var(--color-success)}.status-partial{background:#b26a00}.status-failed{background:var(--color-accent-dark)}.status-running{background:#1c6fd0}.status-stale{background:#7a1fa2}.status-unknown{background:var(--color-text-muted)}.status-warning{border:1px solid #7a1fa2;background:#7a1fa214;border-radius:var(--radius-card);padding:12px 16px;margin:0 0 24px}.status-error{color:var(--color-accent-dark)}.status-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.status-card{border:1px solid var(--color-border);border-radius:var(--radius-card);padding:16px 20px;background:var(--color-bg)}.status-card h2{margin:0 0 8px}.status-metric{font-size:1.5rem;font-weight:600;margin:0 0 12px}.status-card dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:.875rem}.status-card dt{color:var(--color-text-muted)}.status-card dd{margin:0;text-align:right}.status-detail{margin:12px 0 0;font-size:.875rem;color:var(--color-text-muted)}.status-empty{color:var(--color-text-muted);font-size:.875rem;margin:0}.status-reasons{list-style:none;margin:0;padding:0;font-size:.875rem}.status-reasons li{display:flex;justify-content:space-between;padding:2px 0}.trend-strip{display:flex;gap:4px;flex-wrap:wrap}.trend-cell{width:28px;height:28px;border-radius:6px;border:1px solid var(--color-border);background:var(--color-surface)}.trend-ok{background:var(--color-success);border-color:var(--color-success)}.trend-partial{background:#e0a33e;border-color:#b26a00}.trend-failed{background:var(--color-accent);border-color:var(--color-accent-dark)}.trend-unknown{background:repeating-linear-gradient(45deg,#eee,#eee 4px,#fff 4px,#fff 8px)}.trend-none{background:var(--color-surface)}.status-table-wrap{overflow-x:auto}.status-table{width:100%;border-collapse:collapse;font-size:.875rem}.status-table th,.status-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--color-border);white-space:nowrap}.status-table thead th{color:var(--color-text-muted);font-weight:500}.ratio{font-weight:600;margin-right:8px}.ratio-ok{color:var(--color-success)}.ratio-partial{color:#b26a00}.ratio-detail{color:var(--color-text-muted)}.status-footer{margin-top:40px;padding-top:16px;border-top:1px solid var(--color-border);font-size:.8125rem;color:var(--color-text-muted)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wishlist-note{margin-top:14px;display:grid;gap:10px;padding:14px 16px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-raised)}.wishlist-note textarea{width:100%;min-width:0;font:inherit;font-size:14px;line-height:1.6;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg);color:var(--color-text);resize:vertical}.wishlist-note-text{margin:0;font-size:13px;line-height:1.7;color:var(--color-text-muted);white-space:pre-wrap;overflow-wrap:anywhere}.wishlist-note-toggle{justify-self:start;background:none;border:none;color:var(--color-accent);font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:4px 0}.wishlist-note-error{color:var(--color-danger);margin:0;font-size:13px;line-height:1.5}.wishlist-note-actions{display:flex;gap:8px}.wishlist-note-actions button{min-height:36px;padding:8px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-text);font-size:12px;font-weight:600}.wishlist-note-actions button:first-child{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-surface-raised)}.wishlist-note-actions button:disabled{opacity:.55;cursor:default}@media (max-width: 720px){.wishlist-note textarea{font-size:16px}}.wishlist-main{max-width:calc(var(--content-width) + 2 * var(--page-gutter));min-height:65vh;margin:0 auto;padding:48px 40px 80px}.wishlist-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:32px}.wishlist-heading h1{margin:0;font-size:44px;font-weight:400;letter-spacing:-.035em}.wishlist-heading p{margin:0;color:var(--color-text-muted);font-size:13px;font-variant-numeric:tabular-nums}.wishlist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 26px}.wishlist-entry{min-width:0;display:flex;flex-direction:column;gap:12px}.wishlist-entry .camp-card{height:auto;flex:1}.wishlist-empty{display:flex;flex-direction:column;align-items:flex-start;padding:48px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface-raised);box-shadow:0 8px 30px #35443806}.wishlist-empty-icon{display:grid;place-items:center;width:104px;height:96px;margin-bottom:28px;background:var(--color-surface);color:var(--color-accent);border-radius:48% 52% 42% 58%}.wishlist-empty h2{margin:0 0 12px;font-size:32px;font-weight:400;letter-spacing:-.025em;line-height:1.2}.wishlist-empty p{margin:0;color:var(--color-text-muted);font-size:14px;line-height:1.7}.wishlist-empty>a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:28px;padding:12px 22px;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-surface-raised);font-size:13px;font-weight:600;text-decoration:none}.wishlist-empty>a:hover{background:var(--color-accent-dark)}@media (max-width: 1000px){.wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}}@media (max-width: 720px){.wishlist-main{padding:32px 22px 56px}.wishlist-heading{margin-bottom:26px}.wishlist-heading h1{font-size:36px}.wishlist-empty{padding:30px 24px;border-radius:20px}.wishlist-empty h2{font-size:28px}.wishlist-empty-icon{margin-bottom:24px}}@media (max-width: 520px){.wishlist-grid{grid-template-columns:1fr}}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#26312759;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.login-modal{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:26px;padding:32px 36px 36px;width:min(100%,440px);max-height:calc(100dvh - 48px);overflow-y:auto;position:relative;box-shadow:0 24px 80px #26312733;text-align:left}.login-close{display:grid;place-items:center;position:absolute;top:16px;right:16px;width:36px;height:36px;border:1px solid var(--color-border);border-radius:50%;background:var(--color-bg);font-size:24px;cursor:pointer;line-height:1;color:var(--color-text)}.login-close:hover{background:var(--color-surface)}.login-brand{display:grid;place-items:center;width:52px;height:52px;margin:8px 0 24px;border-radius:18px;background:var(--color-surface);font-size:24px;line-height:1;color:var(--color-accent)}.login-title{margin:24px 0;padding-right:12px;font-family:var(--font-display);font-size:32px;font-weight:400;letter-spacing:-.025em;line-height:1.2}.login-brand+.login-title{margin-top:0}.login-sub{margin:-8px 0 24px;color:var(--color-text-muted);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.login-form{display:grid;gap:0;text-align:left}.login-field{display:block;border:1px solid var(--color-border);border-radius:14px;padding:12px 14px;background:var(--color-bg)}.login-field:focus-within{outline:2px solid var(--color-accent);outline-offset:3px}.login-field-label{display:block;font-size:11px;font-weight:500;color:var(--color-text-muted)}.login-field input{width:100%;border:none;outline:none;background:none;color:var(--color-text);font:inherit;font-size:16px;padding:5px 0 0}.login-hint{margin:12px 2px 22px;font-size:11px;line-height:1.7;color:var(--color-text-muted);text-align:left}.login-primary{width:100%;min-height:48px;padding:14px;border:none;border-radius:var(--radius-pill);color:var(--color-surface-raised);font-size:13px;font-weight:600;cursor:pointer;background:var(--color-accent);transition:background-color .2s}.login-primary:hover:not(:disabled){background:var(--color-accent-dark)}.login-primary:disabled{opacity:.6;cursor:default}.login-divider{display:flex;align-items:center;gap:14px;margin:24px 0;color:var(--color-text-muted);font-size:11px}.login-divider:before,.login-divider:after{content:"";flex:1;border-top:1px solid var(--color-border)}.login-socials{display:flex;justify-content:center;gap:18px}.login-social{width:52px;height:52px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-bg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.login-social:hover{background:var(--color-surface)}.login-code{width:100%;box-sizing:border-box;border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg);color:var(--color-text);padding:16px;font-family:var(--font-body);font-size:26px;letter-spacing:.45em;text-align:center;font-variant-numeric:tabular-nums;margin-bottom:18px}.login-code:focus{outline:2px solid var(--color-accent);outline-offset:3px}.login-code-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:22px;margin-top:20px}.login-link{border:none;background:none;font-size:12px;font-weight:500;text-decoration:underline;text-underline-offset:4px;cursor:pointer;color:var(--color-accent);padding:4px 0}.login-link:disabled{opacity:.5;cursor:default}.login-error{color:var(--color-danger);font-size:12px;line-height:1.6;margin:18px 0 0}@media (max-width: 480px){.login-overlay{padding:18px}.login-modal{padding:28px 24px;border-radius:22px;max-height:calc(100dvh - 36px)}.login-title{font-size:29px}}@media (prefers-reduced-motion: reduce){.login-primary{transition:none}}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-vietnamese-wght-normal-CtlIRbEm.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-latin-ext-wght-normal-MQgHevqp.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/public-sans-latin-wght-normal-DdeTHZLK.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-star:var(--color-star)}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.grid\!{display:grid!important}.hidden{display:none}.table{display:table}.grow{flex-grow:1}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}:root{--color-text: #354438;--color-text-muted: #65705e;--color-bg: #f7f6f0;--color-surface: #ecefe3;--color-surface-raised: #fdfcf7;--color-border: #dce1d3;--color-accent: #425e47;--color-accent-dark: #304b36;--color-pine: var(--color-accent);--color-pine-dark: var(--color-accent-dark);--color-star: #a77935;--color-success: #39734e;--color-danger: #ad4936;--color-day-available: rgba(57, 115, 78, .14);--color-day-booked: rgba(173, 73, 54, .13);--color-day-unavailable: rgba(53, 68, 56, .06);--radius-pill: 999px;--radius-control: 10px;--radius-card: 16px;--radius-panel: 20px;--shadow-soft: 0 2px 4px rgba(53, 68, 56, .04);--shadow-card: 0 6px 20px rgba(53, 68, 56, .07);--shadow-popover: 0 12px 36px rgba(53, 68, 56, .12);--font-display: Georgia, "Times New Roman", serif;--font-body: "Public Sans Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-stack: var(--font-body);--content-width: 1280px;--page-gutter: 40px;--header-height: 80px;--ease-out-soft: cubic-bezier(.2, .6, .2, 1)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}::selection{background:#dfe7cf;color:#304b36}a{color:inherit}img{max-width:100%;display:block}h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.025em}h1{font-size:clamp(32px,3vw,42px);line-height:1.18}h2{font-size:28px;line-height:1.25}h3,h4{font-family:var(--font-body);font-weight:600;letter-spacing:-.01em}@media (max-width: 720px){:root{--page-gutter: 22px}h2{font-size:24px}}.page-status{min-height:60vh;display:grid;place-content:center;gap:12px;text-align:center;padding:48px var(--page-gutter);color:var(--color-text-muted)}.page-status button{justify-self:center;padding:10px 22px;border:none;border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;font-weight:600}.page-status h2,.page-status p{margin:0;max-width:560px}.page-status h2{color:var(--color-text)}::view-transition-old(camp-hero),::view-transition-new(camp-hero){animation-duration:.35s;height:100%;overflow:hidden;object-fit:cover}@media (prefers-reduced-motion: reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
