/* Beyond Trail Tales — polish pass r19. Loaded last. Small, additive refinements only. */

/* Trip page: section links read as controls, not underlined text */
.app-v2 .nt-trip-sections { display: flex; flex-wrap: wrap; gap: 8px; padding: 6px 0 14px; border: 0; }
.app-v2 .nt-trip-sections a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; border: 1px solid #59625f; background: transparent; color: #F3F0E8; font-weight: 600; font-size: 15px; text-decoration: none; transition: border-color .18s, color .18s, background-color .18s, transform .18s; }
.app-v2 .nt-trip-sections a:hover, .app-v2 .nt-trip-sections a:focus-visible { border-color: #A6E36E; color: #A6E36E; transform: translateY(-2px); }
.app-v2 .nt-trip-sections a:active { background: #A6E36E; color: #0E1411; transform: none; }

/* Inline icons that replace emoji */
.app-v2 .pl-icon { width: 18px; height: 18px; flex: none; vertical-align: -3px; margin-right: 6px; }
.app-v2 .photo-upload-icon .pl-icon { width: 40px; height: 40px; margin: 0; }
.app-v2 .trip-status-icon:empty { display: none; }

/* Progress bars fill in on load */
@keyframes pl-grow { from { transform: scaleX(0); } }
.app-v2 :is(.trip-detail-packing-progress-fill, .trip-pack-checklist-group-progress-fill, .home-next-progress progress) { transform-origin: left center; animation: pl-grow .9s cubic-bezier(.2,.7,.2,1) both; }

/* Pack builder: remove buttons stay quiet until you reach for them; both searches match */
.app-v2 .pack-item-remove-btn { color: #B4C2B6; border-color: #59625f; transition: color .18s, border-color .18s, background-color .18s; }
.app-v2 .pack-item-remove-btn:hover, .app-v2 .pack-item-remove-btn:focus-visible { color: #0E1411; background-color: #FF6A3D; border-color: #FF6A3D; }
.app-v2 #packed-search-input { background-color: rgb(18, 22, 22); }

/* Basecamp: small tiles answer the pointer */
.app-v2 :is(.home-stat, .home-prep-action) { transition: transform .22s cubic-bezier(.2,.7,.2,1), border-color .22s; }
.app-v2 :is(.home-stat, .home-prep-action):hover { transform: translateY(-3px); border-color: #A6E36E; }

/* Public homepage: video cards */
.btt-public-page .nt-video-card, .app-v2 .nt-video-card { position: relative; overflow: hidden; transition: transform .3s cubic-bezier(.2,.7,.2,1), border-color .3s; }
.nt-video-card img { transition: transform .6s cubic-bezier(.2,.7,.2,1); }
.nt-video-card:hover { transform: translateY(-6px); border-color: #A6E36E; }
.nt-video-card:hover img { transform: scale(1.04); }
.nt-video-card::before { content: ""; position: absolute; left: 14px; top: 14px; z-index: 2; width: 46px; height: 46px; border-radius: 50%; background: rgba(14,20,17,.82); border: 1px solid rgba(243,240,232,.5); transition: background-color .25s, transform .25s; }
.nt-video-card::after { content: ""; position: absolute; left: 32px; top: 28px; z-index: 3; border-left: 13px solid #F3F0E8; border-top: 9px solid transparent; border-bottom: 9px solid transparent; transition: border-left-color .25s; }
.nt-video-card:hover::before { background: #FF6A3D; border-color: #FF6A3D; transform: scale(1.08); }
.nt-video-card:hover::after { border-left-color: #0E1411; }

@media (prefers-reduced-motion: reduce) {
  .app-v2 :is(.trip-detail-packing-progress-fill, .trip-pack-checklist-group-progress-fill, .home-next-progress progress) { animation: none; }
  .nt-video-card, .nt-video-card img, .nt-video-card::before, .app-v2 :is(.home-stat, .home-prep-action), .app-v2 .nt-trip-sections a { transition: none; transform: none !important; }
}

/* ================= r20: screen usage on wide screens =================
   Goal: less stacked chrome, first real content higher on the page. */
@media (min-width: 1100px) {
  /* Shared page top: slimmer context row, title and helper line share one row */
  .app-v2 .nt-workflow { min-height: 0; margin-bottom: 8px; align-items: center; }
  .app-v2 .nt-workflow .nt-workflow-next { min-height: 34px; height: 34px; padding-top: 0; padding-bottom: 0; }
  .app-v2 .page-hero.page-heading .page-hero-text { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 18px; }
  .app-v2 .page-hero.page-heading .page-hero-title { width: auto; max-width: none; margin: 0; }
  .app-v2 .page-hero.page-heading .page-hero-subtitle { margin: 0; }
  .app-v2 .page-hero.page-heading { margin-bottom: 12px; }

  /* Basecamp: greeting and counts share the top row; actions sit on one line */
  .app-v2 .home-dashboard { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px 16px; align-items: center; }
  .app-v2 .home-dashboard > * { grid-column: 1 / -1; margin: 0; }
  .app-v2 .home-dash-heading > a.home-button { display: none; } /* the same button is in the top bar */
  .app-v2 .home-prep-panel { display: flex; align-items: center; gap: 22px; padding: 12px 18px; }
  .app-v2 .home-prep-panel > div:first-child { flex: none; }
  .app-v2 .home-prep-panel .home-eyebrow { display: none; }
  .app-v2 .home-prep-panel h2 { margin: 0; white-space: nowrap; }
  .app-v2 .home-prep-actions { flex: 1; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; margin: 0; }
  .app-v2 .home-season-disclosure[open] > summary { display: none; } /* the line has its own heading */
  .app-v2 .home-season-disclosure[open] { padding-top: 4px; }

  /* Gear: view switch and library summary share a row; one-line category chips */
  .app-v2.page-gear main .container { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px 16px; align-items: center; }
  .app-v2.page-gear main .container > * { grid-column: 1 / -1; min-width: 0; }
  .app-v2.page-gear main .container > .nt-gear-views { grid-column: 1; margin: 0; padding: 0; }
  .app-v2.page-gear main .container > .nt-library-summary:not([open]) { grid-column: 2; margin: 0; }
  .app-v2.page-gear .nt-gear-section-heading { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .app-v2.page-gear .gear-category-filters { gap: 5px; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; padding-bottom: 2px; }
  .app-v2.page-gear .gear-category-filter-btn { padding-left: 9px; padding-right: 9px; flex: none; white-space: nowrap; }

  /* Pack workspace: view switch and save status share a row; tighter title */
  .app-v2.page-packs #pack-view-shell { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px 20px; align-items: center; }
  .app-v2.page-packs #pack-view-shell > * { grid-column: 1 / -1; min-width: 0; }
  .app-v2.page-packs #pack-view-shell > .pack-view-toolbar { grid-column: 1; margin: 0; }
  .app-v2.page-packs #pack-view-shell > .pack-workspace-feedback { grid-column: 2; margin: 0; }
  .app-v2.page-packs .pack-builder-title-compact { font-size: clamp(28px, 2.4vw, 40px); line-height: 1.1; }
  .app-v2.page-packs .pack-builder-header-compact { margin-bottom: 6px; }
}
@media (min-width: 1280px) {
  .app-v2 .home-dashboard > .home-dash-heading { grid-column: 1; grid-row: 1; }
  .app-v2 .home-dashboard > .home-stats { grid-column: 2; grid-row: 1; }
}
@media (min-width: 1400px) {
  /* Trips: search and filters on one row */
  .app-v2.page-trips main .container > section.section { display: grid; grid-template-columns: minmax(280px, 1fr) auto; gap: 12px 18px; align-items: center; }
  .app-v2.page-trips main .container > section.section > * { grid-column: 1 / -1; }
  .app-v2.page-trips main .container > section.section > .nt-trip-search { grid-column: 1; margin: 0; }
  .app-v2.page-trips main .container > section.section > .nt-trips-controls { grid-column: 2; margin: 0; }
}

/* Public media sections — measured from Claude's Landing artboard. */
.btt-public-page .home-announcement{overflow:hidden;border-block:1px solid #2a3a2f;padding:18px 0;margin:12px 0 0}
.home-announcement-track{display:flex;align-items:center;gap:40px;width:max-content;animation:home-ticker 32s linear infinite;font:16px var(--nt-mono);color:#b4c2b6}.home-announcement-track b{color:#ff6a3d}
@keyframes home-ticker{to{transform:translateX(-50%)}}
.btt-public-page .nt-watch{padding:88px 0 40px}
.btt-public-page .nt-watch .nt-section-heading{align-items:flex-end;gap:20px 40px;margin-bottom:28px;flex-wrap:wrap}
.btt-public-page :is(.nt-watch,.home-instagram-section) .nt-kicker{font:14px var(--nt-mono);letter-spacing:.12em;color:#ff9c7a;margin:0 0 10px}
.btt-public-page :is(.nt-watch .nt-section-heading,.nt-instagram-strip) h2{font:400 clamp(38px,5.2vw,72px)/1 var(--nt-display);letter-spacing:.02em;margin:0}
.home-watch-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.btt-public-page .home-watch-actions .nt-video-tabs{display:flex;gap:6px;padding:4px;background:#172019;border:1px solid #2a3a2f;border-radius:999px;margin:0}
.btt-public-page .home-watch-actions .nt-video-tabs button{min-height:44px;padding:0 20px;border:0}
.btt-public-page .home-subscribe{display:inline-flex;align-items:center;min-height:52px;padding:0 24px;border-radius:999px;background:#f3f0e8;color:#0e1411;font-weight:600}
#nt-video-status:empty{display:none}
.btt-public-page .nt-video-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,minmax(200px,1fr));gap:20px}
.btt-public-page .nt-video-grid .nt-video-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-width:0;min-height:200px;padding:20px;border:1px solid #2a3a2f;border-radius:22px;background:#172019;isolation:isolate;aspect-ratio:auto}
.btt-public-page .nt-video-grid .nt-video-card:first-child{grid-row:span 2;min-height:420px;padding:28px;border-radius:28px}
.btt-public-page .nt-video-grid .nt-video-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:brightness(.63)}
.btt-public-page .nt-video-grid .nt-video-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 20%,rgba(14,20,17,.93));border:0}
.btt-public-page .nt-video-grid .nt-video-card:before{content:'▶';display:grid;place-items:center;left:20px;top:20px;width:48px;height:48px;font-size:20px;background:#2a3a2f;color:#f3f0e8;border:0}
.btt-public-page .nt-video-grid .nt-video-card:first-child:before{left:50%;top:42%;transform:translate(-50%,-50%);width:88px;height:88px;font-size:30px;background:#f3f0e8;color:#0e1411}
.btt-public-page .nt-video-grid .nt-video-card h3{margin:0;font:600 17px/1.25 var(--nt-body);color:#f3f0e8}
.btt-public-page .nt-video-grid .nt-video-card:first-child h3{font:400 30px/1.1 var(--nt-display);letter-spacing:.02em}
.btt-public-page .nt-video-grid .nt-video-card .nt-kicker{font-size:13px;margin:0;color:#b4c2b6}
.btt-public-page .nt-video-grid .nt-video-card:first-child .nt-kicker{color:#ff9c7a}
.btt-public-page .nt-video-grid .nt-video-card:not(:first-child) .nt-data{display:none}
.btt-public-page .nt-video-grid .nt-video-card .nt-data{margin:4px 0 0;padding:0;font-size:15px}
.btt-public-page .home-instagram-section{padding:72px 0 56px}
.btt-public-page .home-instagram-section .nt-instagram-strip{padding:0;margin:0 0 36px;display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:20px 40px;background:none;border:0;border-radius:0;box-shadow:none}
.btt-public-page .home-instagram-section .nt-instagram-strip p:not(.nt-kicker){max-width:520px;margin:10px 0 0;font-size:17px;color:#b4c2b6}
.btt-public-page .home-instagram-section .home-button{min-height:52px;padding:0 24px;background:#ff6a3d;color:#0e1411!important;border-radius:999px}
.btt-public-page .home-instagram-feed{width:calc(100vw - 16px);max-width:none;margin:0 0 0 calc(50% - 50vw + 8px);overflow:hidden}
.btt-public-page .home-instagram-feed .ig-photo-rail{padding:62px 0;scrollbar-width:none}
.ig-photo-rail::-webkit-scrollbar{display:none}
.btt-public-page .ig-photo-group{gap:22px;padding-right:22px;align-items:center}
.btt-public-page .ig-photo-card{width:250px;flex-basis:250px;height:250px;border-radius:24px;border-color:#2a3a2f;transform:translateY(0) rotate(-3deg);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.btt-public-page .ig-photo-card:nth-child(6n+2){height:310px;transform:translateY(34px) rotate(2deg)}
.btt-public-page .ig-photo-card:nth-child(6n+3){transform:translateY(-18px) rotate(-1.5deg)}
.btt-public-page .ig-photo-card:nth-child(6n+4){height:310px;transform:translateY(26px) rotate(3deg)}
.btt-public-page .ig-photo-card:nth-child(6n+5){transform:translateY(-30px) rotate(-2deg)}
.btt-public-page .ig-photo-card:nth-child(6n+6){height:310px;transform:translateY(12px) rotate(1.5deg)}
.btt-public-page .ig-photo-card:hover,.btt-public-page .ig-photo-card:focus-visible{transform:rotate(0) scale(1.06);z-index:1}
.btt-public-page .ig-photo-card span{padding:36px 18px 18px;letter-spacing:.12em}
.btt-public-page .ig-controls{justify-content:flex-end;margin:0}
.btt-public-page .ig-controls button{font-size:13px}
@media(max-width:900px){.btt-public-page .nt-video-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.btt-public-page .nt-video-grid .nt-video-card:first-child{grid-column:1/-1;grid-row:auto;min-height:360px}}
@media(max-width:640px){.btt-public-page .nt-watch{padding:48px 0 24px}.btt-public-page .home-instagram-section{padding:48px 0 32px}.btt-public-page .nt-video-grid{gap:12px}.btt-public-page .nt-video-grid .nt-video-card{padding:14px;min-height:220px}.btt-public-page .nt-video-grid .nt-video-card:first-child{padding:22px;min-height:360px}.btt-public-page .home-watch-actions{gap:10px}.btt-public-page .home-instagram-section .nt-instagram-strip{gap:20px}}
@media(prefers-reduced-motion:reduce){.home-announcement-track{animation:none}.btt-public-page .ig-photo-card{transition:none}}

.home-packing-guides,.home-packing-faq{padding:32px 0;border-top:1px solid var(--nt-outline)}
.btt-public-page .home-packing-guides h2,.btt-public-page .home-packing-faq h2{font-size:32px;margin:0 0 20px}
.home-packing-faq details{border-bottom:1px solid var(--nt-outline);padding:14px 0}.home-packing-faq summary{font-weight:600;cursor:pointer;min-height:32px}.home-packing-faq p{max-width:75ch;color:var(--nt-mist);line-height:1.7}
.home-guide{max-width:800px;margin:0 auto;padding:40px 0}.home-guide nav{font-size:14px;margin-bottom:28px}.btt-public-page .home-guide h1{font-size:clamp(36px,5vw,56px);margin:12px 0 24px}.home-guide p{line-height:1.8;color:var(--nt-mist);font-size:17px}.btt-public-page .home-guide h2{font-size:28px;margin:32px 0 12px}.home-guide a{color:var(--nt-moss)}.home-guide li{margin-bottom:12px}
.review-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,5vw,80px);align-items:center;padding:64px 0}.btt-public-page .review-hero h1{font-size:clamp(44px,6vw,80px);line-height:1.05;margin:16px 0 24px;letter-spacing:-.03em}.review-hero p{font-size:18px;line-height:1.7;max-width:55ch;color:#c6d0ca}.review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.review-preview{padding:clamp(24px,4vw,48px);border:1px solid #64726a;border-radius:28px;background:linear-gradient(140deg,#303a36,#1b2420);box-shadow:inset 0 4px #addf71}.review-badge{display:inline-block;border:1px solid #adbf9d;border-radius:99px;padding:7px 14px;color:#c6eea0;font:600 12px/1.4 var(--nt-body);letter-spacing:.1em}.review-preview .review-large{font-size:clamp(36px,4vw,54px);font-weight:700;line-height:1.1;color:#f3f0e8;margin:28px 0 20px}.review-footnote{display:block;border-top:1px solid #5a665e;margin-top:24px;padding-top:18px;font-size:14px;color:#c6d0ca}.review-expect{border-top:1px solid #59665e;padding:36px 0}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0 40px}.review-card{display:block;padding:24px;border:1px solid #56625b;border-radius:18px;background:#202725;color:#f3f0e8}.review-card p{color:#c6d0ca;line-height:1.7}.review-card img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px;margin-bottom:16px}.review-card h2,.review-card h3{font-size:24px!important;margin:12px 0}.review-admin-link{padding-bottom:30px}.review-story figure{margin:24px 0}.review-story img{width:100%;height:auto;border-radius:16px}.review-story figcaption{padding:10px 0;color:#c6d0ca;font-size:14px}.review-prose{white-space:pre-wrap}.review-video{aspect-ratio:16/9;margin-top:24px}.review-video iframe{width:100%;height:100%;border:0;border-radius:12px}.review-admin{max-width:1300px;margin:0 auto;padding:24px 0}.review-studio-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;margin-top:24px}.review-library>a{display:block;padding:12px;margin-bottom:8px;border:1px solid #58665d;border-radius:10px}.review-library small{display:block;color:#bec9c2}.review-editor label{display:grid;gap:8px;margin:0 0 18px}.review-editor input,.review-editor textarea,.review-editor select{width:100%;max-width:100%;box-sizing:border-box}.review-edit-block{min-width:0;border:1px solid #647269;border-radius:16px;padding:20px;margin:0 0 24px;background:#202725}.review-edit-block legend{padding:0 8px;font-weight:600}.review-edit-photo{max-width:240px;max-height:180px;object-fit:contain;margin-bottom:16px}.review-save{display:flex;flex-wrap:wrap;align-items:center;gap:20px;border-top:1px solid #647269;padding:24px 0;margin-top:24px}.review-save label{margin:0}.home-reviews-teaser{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;padding:28px;margin:32px 0;border:1px solid #647269;border-radius:20px;background:#242d28}.home-reviews-teaser h2{margin:8px 0!important;font-size:30px!important}.home-reviews-teaser p{margin:0;color:#c6d0ca}@media(max-width:700px){.review-hero{grid-template-columns:1fr;padding:32px 0}.review-grid{grid-template-columns:1fr;gap:12px}.review-studio-layout{grid-template-columns:1fr}.review-library{max-height:240px;overflow:auto}.review-edit-block{padding:16px}.review-editor .review-actions button{font-size:13px;padding:10px}.review-preview{border-radius:20px}.review-hero .home-button{width:100%}}
.btt-public-page .app-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;max-width:1384px;margin:24px auto 0;padding:24px;border-top:1px solid #56625b;color:#c6d0ca;font-size:13px}
