/* Section-level composition: group related information; avoid stacked nested panels. */
.app-v2 .nt-trip-summary.trip-readiness{padding:0;margin:12px 0 16px;border-radius:10px}
.app-v2 .nt-trip-summary>summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;min-height:48px;padding:10px 14px;cursor:pointer;font-size:14px}
.app-v2 .nt-trip-summary>summary::before{content:'▸';font-size:16px}.app-v2 .nt-trip-summary[open]>summary::before{content:'▾'}
.app-v2 .nt-trip-summary>summary>span{margin-left:auto;font-variant-numeric:tabular-nums}.app-v2 .nt-trip-summary>summary>small{color:var(--nt-ember-text);font-size:13px}
.app-v2 .nt-trip-summary-content{padding:14px;border-top:1px solid var(--nt-line)}
.app-v2 .nt-trip-summary .trip-readiness-heading{margin:0 0 12px}.app-v2 .nt-trip-summary .trip-readiness-heading h2{font-size:18px}
.app-v2 .nt-trip-summary .nt-ready-line{margin:0 0 12px;gap:8px}.app-v2 .nt-trip-summary .nt-ready-line li{padding:10px;min-height:0}
.app-v2 .nt-trip-summary .trip-readiness-metrics{margin:0 0 12px}.app-v2 .nt-trip-summary .trip-readiness-metric{padding:10px}
.app-v2 .nt-trip-summary .trip-readiness-metric strong{font-size:18px;line-height:1.3}
.app-v2 .nt-trip-summary .trip-readiness-next{padding:12px;margin:0}.app-v2 .nt-trip-summary .trip-readiness-next p{margin:0 0 8px}
.app-v2.page-trips:not(.creating-trip):not(.trip-edit-mode-active) .trip-detail-banner-section.landing-hero>.container{padding:14px 16px}
.app-v2.page-trips:not(.creating-trip):not(.trip-edit-mode-active) .trip-detail-banner-content .trip-detail-content-wrapper{gap:10px}
.app-v2.page-trips .nt-trip-sections{margin:0 0 16px;padding:0;gap:8px;display:flex;flex-wrap:wrap;align-items:center}
.app-v2.page-trips .nt-trip-sections a{padding:8px 12px;min-height:44px;font-size:14px;white-space:nowrap}
.app-v2.page-trips .trip-detail-content-section .trip-detail-card-header{padding:12px 16px;gap:12px}
.app-v2.page-trips .trip-detail-content-section .trip-detail-card-body{padding:16px}
.app-v2.page-trips .trip-detail-content-section .trip-detail-field-group{margin-bottom:12px;padding:12px}
.app-v2.page-trips .trip-detail-content-section .trip-detail-field-label{margin-bottom:4px;font-size:14px}
.app-v2.page-trips .trip-detail-content-section .trip-detail-field-row{gap:12px}
.app-v2.page-trips .trip-detail-content-section .trip-detail-tab-content{gap:20px}
.app-v2.page-trips .trip-packs-checkbox-list label{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:4px 8px;min-height:44px}
.app-v2.page-trips .trip-packs-checkbox-list label input{width:20px;height:20px;margin:0}
.app-v2.page-trips .trip-packs-checkbox-list label span{margin:0!important}
.app-v2.page-trips .trip-packs-checkbox-list label span:last-child:not(:nth-child(2)){grid-column:2;font-size:13px!important;line-height:1.4}
.app-v2.page-trips .trip-packs-checkbox-list label:hover{background:var(--nt-panel-2)!important;color:var(--nt-text)}
.app-v2.page-404 .empty-state{max-width:600px;margin:32px auto;padding:24px}
/* Public home: concise introduction, useful media, and compact explanatory sections. */
.btt-public-page .btt-public-wrap{max-width:1440px;padding:0 28px}
.btt-public-page .home-hero{gap:32px;padding:32px 0;min-height:0}
.btt-public-page .nt-hero-world{display:none}
.btt-public-page .home-hero h1{font-size:clamp(40px,5vw,68px);line-height:1.06;letter-spacing:-1px;margin:12px 0 18px}
.btt-public-page .home-hero-intro{font-size:17px;line-height:1.6;margin:0 0 20px;max-width:48ch}
.btt-public-page .home-hero-art{min-height:0;height:420px}
.btt-public-page .home-hero-actions{gap:16px;margin-top:0;flex-wrap:wrap}
.btt-public-page .home-hero-note{margin-top:16px}
.btt-public-page .home-eyebrow{font-size:12px;letter-spacing:.08em}
.btt-public-page :is(.nt-watch,.home-workflow){padding:28px 0;margin:0}
.btt-public-page :is(.nt-section-heading,.home-section-heading){margin:0 0 16px;gap:16px}
.btt-public-page :is(.nt-section-heading h2,.home-section-heading h2,.nt-instagram-strip h2){font-size:28px;line-height:1.2;margin:0 0 8px}
.btt-public-page .nt-instagram-strip{margin:24px 0;padding:20px;gap:20px}
.btt-public-page .nt-instagram-strip p{margin:6px 0;line-height:1.5}
.btt-public-page .home-step-grid{gap:16px}.btt-public-page .home-step{padding:18px 18px 0}
.btt-public-page .home-step h3{font-size:20px;margin:14px 0 8px}.btt-public-page .home-step p{font-size:15px;line-height:1.55;margin:0 0 14px}
.btt-public-page .home-step-foot{min-height:44px;padding:12px 0}
.btt-public-page .home-outro{padding:24px;margin:0;gap:20px}.btt-public-page .home-outro h2{font-size:28px}
@media(max-width:768px){
 .app-v2 .nt-trip-summary .nt-ready-line,.app-v2 .nt-trip-summary .trip-readiness-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .app-v2 .nt-trip-summary .trip-readiness-metric strong{font-size:16px}.app-v2 .nt-trip-summary .trip-readiness-metric small{font-size:12px}
 .app-v2 .nt-trip-summary .trip-readiness-scope{display:none}
 .app-v2.page-trips:not(.creating-trip):not(.trip-edit-mode-active) .trip-detail-banner-title-section{gap:10px;margin-bottom:8px}
 .app-v2.page-trips:not(.creating-trip):not(.trip-edit-mode-active) .trip-detail-banner-actions{display:flex;flex-direction:row;flex-wrap:wrap;width:auto;gap:8px;margin:4px 0}
 .app-v2.page-trips:not(.creating-trip):not(.trip-edit-mode-active) .trip-detail-banner-actions button{width:auto;min-width:44px;min-height:44px;padding:8px 12px;flex:0 1 auto}
 .app-v2.page-trips .nt-trip-sections{gap:4px;margin-bottom:12px}.app-v2.page-trips .nt-trip-sections a{padding:8px;font-size:13px}
 .app-v2.page-trips .trip-detail-content-section .trip-detail-card-body{padding:12px}
 .app-v2.page-trips .trip-detail-content-section .trip-detail-card-header{padding:12px}
 .btt-public-page .btt-public-wrap{padding:0 16px}
 .btt-public-page .home-hero{padding:24px 0;gap:20px}
 .btt-public-page .home-hero h1{font-size:42px;margin:10px 0 14px;letter-spacing:-.5px}
 .btt-public-page .home-hero-intro{font-size:16px;margin-bottom:16px}
 .btt-public-page .home-hero-art{height:220px;min-height:0}
 .btt-public-page .home-photo-caption{top:24px;bottom:auto;left:20px}.btt-public-page .home-photo-caption strong{font-size:22px}
 .btt-public-page .home-trail-tag{padding:10px;bottom:12px;left:12px;right:12px}
 .btt-public-page .home-trail-tag span{display:none}
 .btt-public-page .home-photo-route{display:none}
 .btt-public-page :is(.nt-watch,.home-workflow){padding:24px 0}
 .btt-public-page :is(.nt-section-heading h2,.home-section-heading h2,.nt-instagram-strip h2,.home-outro h2){font-size:24px}
 .btt-public-page .nt-instagram-strip{padding:16px;margin:16px 0;gap:12px}
 .btt-public-page .home-step-grid{gap:12px}.btt-public-page .home-step{padding:14px 14px 0}
 .btt-public-page .home-step h3{margin:10px 0 6px;font-size:18px}.btt-public-page .home-step p{font-size:15px;line-height:1.5;margin-bottom:10px}
 .btt-public-page .home-outro{padding:18px;gap:14px}
 .btt-public-page .nt-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .btt-public-page .nt-video-card:first-child{grid-column:auto}.btt-public-page .nt-video-card h3,.btt-public-page .nt-video-card:first-child h3{font-size:14px;line-height:1.4}
 .btt-public-page .nt-video-grid{align-items:start}
 .btt-public-page .nt-video-card :is(h3,span){margin:8px 10px 0}
 .btt-public-page .nt-video-card .nt-kicker{font-size:10px;letter-spacing:.06em}
 .btt-public-page .nt-video-card .nt-data{font-size:11px}
 .btt-public-page .nt-video-card span:last-child{margin-bottom:10px}
}
/* Within readiness, the metrics already convey the four duplicated waypoints. */
.app-v2 .trip-detail-content-section .trip-detail-content-wrapper{gap:12px}
.app-v2 .trip-detail-content-section .nt-trip-sections{margin-bottom:0}
.app-v2 #tab-packing .trip-detail-packing-section{margin-top:0}
.app-v2 .nt-trip-summary .nt-ready-line{display:none}
.app-v2 .nt-trip-summary .trip-readiness-metrics{padding:0;gap:8px;background:transparent}
.app-v2 .nt-trip-summary .trip-readiness-metric{padding:8px;min-height:0;background:var(--nt-reading-inset)}
.app-v2 .nt-trip-summary .trip-readiness-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}
.app-v2 .nt-trip-summary .trip-readiness-actions .btn{width:auto;flex:0 1 auto;min-height:44px;padding:8px 12px;font-size:14px;white-space:normal}
.app-v2 .nt-trip-summary .trip-readiness-footnote{font-size:13px;line-height:1.5;margin:10px 0 0}
@media(max-width:768px){.app-v2 .nt-trip-summary .trip-readiness-actions .btn{flex:1 1 130px}}

/* One compact photo invitation instead of two large empty panels. */
.app-v2 #tab-photos .photo-gallery-empty{padding:12px 0;min-height:0;background:transparent;border:0;}
.app-v2 #tab-photos .photo-gallery-empty-text{margin:0;font-size:14px;}
.app-v2 #tab-photos .photo-upload-zone{padding:20px;min-height:0;}

.app-v2.page-trips #tab-photos .photo-gallery-empty{padding:12px 0!important;min-height:0!important;}
.app-v2 #tab-photos .photo-upload-icon{display:none;}
.app-v2.page-trips #tab-photos .photo-upload-zone{padding:20px!important;}
.app-v2 #tab-photos .photo-upload-title{font-size:18px;margin:0 0 8px;}
/* Public hero uses the same animated world as the brand, with room for its orbit. */
.btt-public-page .home-hero-art.home-logo-stage{display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#24382c 0%,#17221c 48%,#101713 78%);border:1px solid var(--nt-outline);box-shadow:none;aspect-ratio:auto}
.home-logo-stage>.nt-logo>span{font-size:clamp(120px,15vw,190px)!important}
@media(max-width:768px){.btt-public-page .home-hero-art.home-logo-stage{height:260px}.home-logo-stage>.nt-logo>span{font-size:130px!important}}
@media(max-width:360px){.home-logo-stage>.nt-logo>span{font-size:115px!important}}

.home-instagram-feed{display:grid;justify-items:center;gap:12px;margin:0 0 28px}.home-instagram-feed p{font-size:14px;color:var(--nt-mist);margin:0;text-align:center}.home-instagram-feed a{color:var(--nt-moss)}

/* Continuous Instagram photo row from the original homepage reference. */
.home-instagram-feed{display:block;margin:0 0 32px;min-width:0}
.ig-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;font-size:14px;color:var(--nt-mist)}
.ig-controls button{background:transparent;border:1px solid var(--nt-outline);border-radius:20px;padding:8px 14px;min-height:44px;color:var(--nt-moss);cursor:pointer}
.ig-photo-rail{display:flex;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--nt-outline) transparent;padding-bottom:12px;overscroll-behavior-x:contain}
.ig-photo-group{display:flex;flex:none;gap:16px;padding-right:16px}
.ig-photo-card{position:relative;display:block;flex:0 0 240px;width:240px;height:280px;overflow:hidden;border:1px solid var(--nt-outline);border-radius:14px;background:var(--nt-panel)}
.ig-photo-card img{width:100%;height:100%;object-fit:cover;display:block}
.ig-photo-card span{position:absolute;bottom:0;left:0;right:0;padding:32px 14px 14px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;font:13px var(--nt-mono)}
.ig-photo-card:focus-visible,.ig-photo-rail:focus-visible{outline:2px solid var(--nt-moss);outline-offset:3px}
@media(max-width:640px){.ig-photo-card{width:200px;flex-basis:200px;height:235px}.ig-controls{font-size:13px}.ig-controls button{white-space:nowrap}}
.btt-public-page .home-instagram-feed .ig-photo-rail{width:100%;max-width:100%;min-width:0;justify-self:stretch}.home-instagram-feed{overflow:hidden}
