:root{--rust-text:#e08a5f}#app-mode{z-index:250;background:var(--charcoal);flex-direction:column;transition:transform .4s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;inset:0;transform:translateY(100%)}#app-mode.is-open{transform:translateY(0)}.app-scroll{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.timeline-list{padding:1.5rem 0 4rem;position:relative}.timeline-intro{text-align:center;padding:0 6% 1.5rem}.timeline-intro h2{margin-bottom:.5rem;font-size:1.3rem}.timeline-intro p{opacity:.75;font-size:.9rem}.timeline-item{cursor:pointer;align-items:stretch;padding:0 6%;display:flex;position:relative}.timeline-rail{flex-direction:column;flex-shrink:0;align-items:center;width:34px;display:flex;position:relative}.timeline-rail:before{content:"";background:rgba(var(--gold-rgb), .25);width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-item:first-child .timeline-rail:before{top:50%}.timeline-item:last-child .timeline-rail:before{bottom:50%}.timeline-node{z-index:1;background:var(--charcoal);border:2px solid var(--gold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;margin:1.1rem 0;font-size:1rem;display:flex;position:relative}.timeline-tile{cursor:pointer;background-position:50%;background-size:cover;border-radius:14px;flex:1;min-height:92px;margin:.5rem 0 .5rem 1rem;transition:transform .25s;position:relative;overflow:hidden}.timeline-tile:active{transform:scale(.98)}.timeline-tile:before{content:"";background:linear-gradient(100deg, rgba(var(--charcoal-rgb), .88) 0%, rgba(var(--charcoal-rgb), .55) 55%, rgba(var(--charcoal-rgb), .15) 100%);transition:background .25s;position:absolute;inset:0}.timeline-tile:hover:before{background:linear-gradient(100deg, rgba(var(--charcoal-rgb), .75) 0%, rgba(var(--charcoal-rgb), .4) 55%, rgba(var(--charcoal-rgb), .05) 100%)}.timeline-tile-content{z-index:1;height:100%;color:var(--white);justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.3rem;display:flex;position:relative}.timeline-tile-text .label{text-transform:uppercase;letter-spacing:1px;text-shadow:0 1px 4px #0006;margin-bottom:.3rem;font-family:Cinzel,serif;font-size:1rem;display:block}.timeline-tile-text .blurb{opacity:.9;text-shadow:0 1px 4px #0006;font-size:.82rem;line-height:1.4}.timeline-tile-arrow{opacity:.85;flex-shrink:0;font-size:1.3rem}.topic-detail{max-width:920px;margin:0 auto;padding:1.5rem 6% 4rem;display:none}.topic-detail.is-active{display:block}.topic-detail-header{align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.topic-detail-icon{font-size:2.2rem}.topic-detail-header h2{color:var(--gold);margin-bottom:.3rem;font-size:1.3rem}.topic-detail-header p{opacity:.8;font-size:.9rem}.layer-heading{text-transform:uppercase;letter-spacing:1.5px;color:var(--rust-text);align-items:center;gap:.6rem;margin:2rem 0 1rem;font-family:Cinzel,serif;font-size:.72rem;display:flex}.layer-heading .layer-num{background:var(--rust);color:var(--white);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-family:Inter,sans-serif;font-size:.68rem;display:inline-flex}.layer-heading:first-of-type{margin-top:0}.cta-section{border:1px solid rgba(var(--gold-rgb), .4);background:linear-gradient(180deg, rgba(var(--gold-rgb), .09), rgba(var(--gold-rgb), .02));border-radius:18px;margin:2.2rem 0 2rem;padding:1.4rem 1.3rem 1.6rem}.cta-section .layer-heading{color:var(--gold);margin:0 0 1.1rem;font-size:1rem}.cta-section .layer-heading .layer-num{background:var(--gold);width:24px;height:24px;font-size:.75rem}.planner-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem;display:grid}.planner-card{background:var(--glass);border:1px solid rgba(var(--gold-rgb), .2);color:var(--white);border-radius:14px;flex-direction:column;padding:1.4rem;text-decoration:none;display:flex}.planner-card h3{color:var(--gold);margin-bottom:.5rem;font-size:1rem}.planner-card .fact{opacity:.85;margin-bottom:.3rem;font-size:.85rem;line-height:1.5}.planner-card .btn{align-self:flex-start;margin-top:.8rem;padding:.45rem .9rem;font-size:.78rem}.planner-card.is-placeholder{opacity:.85;border-style:dashed}.offer-badge{background:rgba(var(--gold-rgb), .15);color:var(--gold);text-transform:uppercase;letter-spacing:.5px;border-radius:50px;margin-bottom:.5rem;padding:.2rem .55rem;font-size:.68rem;display:inline-block}.deeper-groups{flex-direction:column;gap:1.6rem;display:flex}.deeper-group-label{text-transform:uppercase;letter-spacing:1px;color:var(--white);opacity:.65;align-items:center;gap:.5rem;margin-bottom:.7rem;padding-left:.1rem;font-family:Inter,sans-serif;font-size:.78rem;font-weight:600;display:flex}.deeper-group-label:after{content:"";background:#ffffff1a;flex:1;height:1px}.deeper-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;display:grid}.deeper-card{height:190px;color:var(--white);border:1px solid rgba(var(--gold-rgb), .2);background-position:50%;background-size:cover;border-radius:14px;text-decoration:none;transition:transform .25s,box-shadow .25s;display:block;position:relative;overflow:hidden}.deeper-card:before{content:"";background:linear-gradient(180deg, rgba(var(--charcoal-rgb), .15) 30%, rgba(var(--charcoal-rgb), .92) 100%);transition:background .25s;position:absolute;inset:0}.deeper-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px #0006}.deeper-card:hover:before{background:linear-gradient(180deg, rgba(var(--charcoal-rgb), .05) 30%, rgba(var(--charcoal-rgb), .85) 100%)}.deeper-card-content{z-index:1;flex-direction:column;justify-content:flex-end;height:100%;padding:1rem 1.1rem;display:flex;position:relative}.deeper-card .tag{text-transform:uppercase;letter-spacing:.8px;color:var(--rust-text);text-shadow:0 1px 5px #000000d9,0 1px 2px #000000e6;margin-bottom:.4rem;font-size:.65rem;font-weight:600}.deeper-card h3{color:var(--white);text-transform:none;letter-spacing:normal;margin-bottom:.3rem;font-family:Inter,sans-serif;font-size:.95rem}.deeper-card p{opacity:.85;font-size:.78rem;line-height:1.4}.platform-cards{scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:rgba(var(--gold-rgb), .5) transparent;gap:1.1rem;padding-bottom:.9rem;display:flex;overflow-x:auto}.platform-cards::-webkit-scrollbar{height:6px}.platform-cards::-webkit-scrollbar-track{background:0 0}.platform-cards::-webkit-scrollbar-thumb{background:rgba(var(--gold-rgb), .4);border-radius:10px}.platform-cards::-webkit-scrollbar-thumb:hover{background:rgba(var(--gold-rgb), .65)}.platform-card{scroll-snap-align:start;background:var(--glass);border:1px solid rgba(var(--gold-rgb), .2);color:var(--white);border-radius:14px;flex-direction:column;flex:0 0 250px;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.platform-card:hover{border-color:rgba(var(--gold-rgb), .5);transform:translateY(-3px);box-shadow:0 8px 22px #00000059}.platform-card-banner{background:rgba(var(--gold-rgb), .1);border-bottom:1px solid rgba(var(--gold-rgb), .2);justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1.1rem;display:flex}.platform-card-banner h3{color:var(--white);text-transform:none;letter-spacing:normal;margin:0;font-family:Inter,sans-serif;font-size:.92rem}.platform-card-body{flex-direction:column;flex:1;padding:1.1rem;display:flex}.platform-card-body p{opacity:.85;margin-bottom:.9rem;font-size:.85rem;line-height:1.5}.platform-card-body .btn{align-self:flex-start;margin-top:auto}.platform-card-features{flex-direction:column;gap:.45rem;margin:0 0 .9rem;padding:0;list-style:none;display:flex}.platform-card-features li{opacity:.9;padding-left:1.3rem;font-size:.82rem;line-height:1.4;position:relative}.platform-card-features li:before{content:"✓";color:var(--gold);font-size:.8rem;font-weight:600;position:absolute;top:0;left:0}.platform-card-highlight{border-color:rgba(var(--gold-rgb), .6);box-shadow:0 0 0 1px rgba(var(--gold-rgb), .25), 0 8px 24px #00000059}.platform-card-highlight .platform-card-banner{background:rgba(var(--gold-rgb), .18)}.platform-card-tag{background:var(--gold);color:var(--charcoal);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:50px;padding:.2rem .5rem;font-family:Inter,sans-serif;font-size:.62rem;font-weight:700;display:inline-block}.topic-map-wrap{border:1px solid rgba(var(--gold-rgb), .2);border-radius:14px;margin:1.2rem 0 0;position:relative;overflow:hidden}.topic-map{background:var(--glass);width:100%;height:260px}.topic-map-caption{opacity:.6;background:rgba(var(--charcoal-rgb), .6);padding:.6rem 1rem;font-size:.72rem}.leaflet-marker-pin{background:var(--gold);color:var(--charcoal);border:2px solid var(--charcoal);border-radius:50% 50% 50% 0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;display:flex;transform:rotate(-45deg);box-shadow:0 2px 6px #0006}.leaflet-marker-pin span{transform:rotate(45deg)}.leaflet-popup-content-wrapper{background:var(--charcoal);color:var(--white);border-radius:8px}.leaflet-popup-content{margin:.6rem .8rem;font-family:Inter,sans-serif;font-size:.82rem}.leaflet-popup-content strong{color:var(--gold)}.leaflet-popup-tip{background:var(--charcoal)}.planner-general p{opacity:.85;max-width:68ch;margin-bottom:1rem;font-size:.9rem;line-height:1.7}.planner-readmore{flex-direction:column;gap:.5rem;margin-top:.8rem;list-style:none;display:flex}.planner-readmore a{color:var(--white);background:var(--glass);border-left:3px solid var(--rust);border-radius:10px;align-items:center;gap:.5rem;padding:.55rem .8rem;font-size:.85rem;text-decoration:none;display:flex}.planner-readmore .browse-all{border-left-color:var(--gold);font-weight:600}.planner-recommendations{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem;display:grid}.planner-radar-item{border:1px dashed rgba(var(--gold-rgb), .35);opacity:.85;border-radius:14px;padding:1.2rem 1.4rem}.planner-radar-item .tag{text-transform:uppercase;letter-spacing:1px;color:var(--rust-text);margin-bottom:.4rem;font-size:.62rem;display:inline-block}.planner-radar-item h4{margin-bottom:.4rem;font-family:Inter,sans-serif;font-size:.9rem}.planner-radar-item p{opacity:.8;font-size:.82rem;line-height:1.5}.no-recs-note{opacity:.6;font-size:.85rem;font-style:italic}#about-screen{text-align:left}#about-screen h2{color:var(--gold);margin-bottom:1.2rem;font-size:1.3rem}#about-bio{opacity:.85;max-width:68ch;margin-bottom:1.5rem;font-size:.92rem;line-height:1.75}#about-social{flex-wrap:wrap;gap:.8rem;display:flex}#about-social a{flex:none;padding:.7rem 1.2rem}
