:root{--app-bg:#eff3f6;--app-blue:#142d47;--app-gold:#e5bd83;--app-line:#d8e2e8}
body{background:var(--app-bg)}.app-view[hidden],.directory-panel[hidden]{display:none!important}.app-header{background:#0a1d31;box-shadow:0 7px 30px #0b243526}.app-header .desktop-nav a.active{color:#f4d5a0}.app-main{min-height:calc(100dvh - 75px)}.app-view{min-height:calc(100dvh - 75px)}.app-view.section{padding:45px 0 90px}.app-view .wrap{max-width:1120px}.app-view h1,.app-view h2,.app-view h3{letter-spacing:-.035em}.eyeline{font-size:10px;font-weight:800;letter-spacing:.19em;color:#a1723b}.view-top{margin-bottom:27px}.view-top h1{font:normal clamp(38px,4.2vw,58px)/1.08 var(--serif);margin:8px 0 12px;color:#10263c}.view-top p{color:#657583;max-width:650px;margin:0}.app-view button,.app-view a{touch-action:manipulation}.app-view button:disabled{cursor:not-allowed;opacity:.6}
.home-view{background:linear-gradient(#eff3f6,#e9f0f4)}.app-hero.hero{min-height:0;background:linear-gradient(90deg,rgba(8,25,43,.96),rgba(8,25,43,.78) 48%,rgba(8,25,43,.24)),url('assets/miami-event.webp') center 58%/cover no-repeat}.hero-inner{min-height:325px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:38px;padding-bottom:43px}.hero-inner h1{font:normal clamp(46px,5.3vw,70px)/1.02 var(--serif);margin:15px 0 12px;color:#fff;max-width:690px}.hero-inner p{color:#d3dce5;max-width:590px;margin:0;font-size:15px}.hero-inner .hero-cta{margin-top:22px}.hero-inner .button{min-height:42px}.dashboard{padding-top:34px;padding-bottom:60px}.home-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.home-heading h2{font:normal 33px var(--serif);margin:5px 0 0}.date-pill{border:1px solid #cad9e4;background:#ffffffaa;border-radius:100px;padding:7px 12px;font-size:10px;font-weight:800;letter-spacing:.12em;color:#587083}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-card{min-height:163px;text-align:left;position:relative;padding:20px 18px;border-radius:17px;background:linear-gradient(135deg,#ffffffdd,#ffffffa8);border:1px solid #fff;box-shadow:0 14px 34px #16344d13;backdrop-filter:blur(12px);color:#143047;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}.quick-card:hover,.action-tile:hover{transform:translateY(-3px);box-shadow:0 18px 38px #16344d22}.quick-card.featured{background:linear-gradient(135deg,#183b57,#102b45);color:#fff;border-color:#6384a2}.quick-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#e7f0f4;color:#47708a;font-size:10px;font-weight:900;letter-spacing:.1em;margin-bottom:auto}.featured .quick-icon{background:#e7bf87;color:#18354e}.quick-card strong{font-size:16px;line-height:1.2}.quick-card small{color:#728495;font-size:11px;margin-top:4px}.quick-card.featured small{color:#c2d3df}.quick-card .arrow{position:absolute;right:19px;top:20px;color:#a27d4c}.dashboard-row{display:grid;grid-template-columns:1.4fr .85fr;gap:14px;margin-top:15px}.spotlight-card,.weather-card,.glass-panel{background:linear-gradient(135deg,#ffffffeb,#f8fbfdcf);border:1px solid #fff;box-shadow:0 14px 34px #16344d12;backdrop-filter:blur(14px);border-radius:18px}.spotlight-card{padding:25px 27px;background:linear-gradient(115deg,#dfeaf0,#f8f7f0)}.spotlight-card h3{font:normal 27px var(--serif);margin:7px 0}.spotlight-card p{font-size:12px;color:#6a7a87;max-width:410px;margin:0 0 12px}.line-button{border:0;border-bottom:1px solid #a47742;color:#8b612e;background:none;padding:5px 0;font-size:12px;font-weight:750;text-align:left;display:inline-block}.line-button:hover{color:#4b351f}.weather-card{padding:23px}.weather-content{margin-top:10px}.weather-big{font:normal 34px var(--serif);color:#102e49}.weather-content p{font-size:11px;color:#6e7d88;margin:5px 0}.weather-content a{font-size:11px;color:#866132;text-decoration:underline}.weather-mark{display:inline-block;margin-right:8px;color:#d99b50}.home-shortcuts{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.home-shortcuts button{border:1px solid #d0dde5;background:#ffffffaa;color:#385771;border-radius:99px;padding:9px 14px;font-size:11px;font-weight:700}.home-shortcuts button:hover{background:#fff}
.agenda-section,.connect-view,.travel-view,.more-view{background:linear-gradient(145deg,#eff3f6,#e8f0f3)}.agenda-section .day-tabs{margin-top:20px}.agenda-section .schedule{border-left-color:#c8d8e0}.agenda-section .session{border-radius:12px;box-shadow:0 9px 24px #17364e0c}.agenda-section .schedule-note{margin-bottom:14px}.agenda-section .day-tab{border-radius:13px}.agenda-section .day-tab[aria-selected=true]{background:#153550}.people-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.person{border-radius:14px;box-shadow:0 8px 24px #16344d0e}.person .portrait{height:130px}.directory-tabs{display:flex;gap:6px;background:#e2eaf0;padding:5px;border-radius:14px;width:max-content;max-width:100%;margin-bottom:22px}.directory-tabs button{border:0;border-radius:10px;background:transparent;color:#597286;padding:10px 18px;font-size:12px;font-weight:800}.directory-tabs button.active{background:#fff;color:#183a55;box-shadow:0 4px 13px #12334b15}.directory-intro{padding:28px;margin-bottom:16px}.directory-intro h2{font:normal 30px var(--serif);margin:7px 0}.directory-intro p{color:#6c7c88;font-size:13px;max-width:690px}.directory-search{max-width:330px;margin-bottom:16px}.attendee-grid,.sponsor-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.directory-empty{grid-column:1/-1;border:1px dashed #b8ccd7;border-radius:14px;padding:28px;background:#ffffff96;color:#627787;font-size:13px}.directory-card{background:#fff;border:1px solid #e1eaf0;border-radius:15px;padding:20px;box-shadow:0 8px 24px #16344d0a}.directory-card h3{font:normal 22px var(--serif);margin:4px 0}.directory-card p{font-size:12px;color:#6c7b87}.directory-card a{font-size:11px;font-weight:750;color:#8c622e;display:inline-block;margin:6px 9px 0 0}.directory-card .badge{font-size:9px;color:#8f6a3c;letter-spacing:.13em;font-weight:800}.sponsor-directory+.line-button{margin-top:19px}
.travel-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:15px}.action-tile{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #fff;border-radius:16px;padding:16px 19px;box-shadow:0 10px 24px #16344d10;transition:transform .18s,box-shadow .18s}.action-tile.primary{background:linear-gradient(120deg,#163b57,#244c67);color:#fff}.tile-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#e5edf1;color:#567790;font-size:24px;flex:none}.primary .tile-icon{background:#e8c38d;color:#17314a}.action-tile strong{font-size:13px}.action-tile small{display:block;color:#7b8b96;font-size:11px;margin-top:2px}.action-tile.primary small{color:#cdd9e2}.travel-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:15px}.travel-guide{padding:27px}.panel-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}.step-kicker{font-size:10px;font-weight:900;letter-spacing:.18em;color:#a37642}.shuttle-badge{font-size:10px;font-weight:700;color:#2d6b60;background:#e4f3ee;border-radius:99px;padding:6px 10px}.travel-guide h2,.hotel-panel h2,.volunteers h2,.more-card h2{font:normal 29px var(--serif);margin:10px 0 15px}.arrival-steps{list-style:none;padding:0;margin:0}.arrival-steps li{display:flex;gap:13px;padding:13px 0;border-top:1px solid #e7edf0}.arrival-steps li>span{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:#e2eaf0;color:#3d627b;font-size:10px;font-weight:800}.arrival-steps strong{font-size:13px}.arrival-steps p{font-size:12px;line-height:1.5;color:#6b7b87;margin:3px 0 0}.panel-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.button-outline-dark{border-color:#b6c8d1;background:#fff;color:#27465d}.fine-print{font-size:10px;line-height:1.45;color:#8996a0}.travel-side{display:grid;gap:15px;align-content:start}.hotel-panel{padding:25px}.hotel-panel p{font-size:13px;color:#6c7b85}.hotel-links{display:grid;gap:10px;margin-top:17px}.hotel-links a{color:#805c31;font-size:12px;font-weight:700}.volunteers{margin-top:17px;padding:25px}.volunteers p{font-size:12px;color:#6b7c89}.volunteer-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:19px 0}.volunteer-card{border:1px solid #dae5ec;background:#f8fbfd;border-radius:13px;padding:16px}.volunteer-card strong{display:block;font-size:13px}.volunteer-card small{color:#788a96}.volunteer-card a{display:inline-block;margin-top:8px;color:#895f30;font-size:11px;font-weight:750}.travel-bottom{font-size:11px;color:#7a8a96;padding:15px 4px}
.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.more-card{padding:28px;min-height:280px}.more-card p{font-size:13px;color:#6b7b87;max-width:430px}.more-card .button{margin-top:15px}.more-view .essentials{margin-top:17px;border-radius:18px;box-shadow:0 14px 34px #16344d12}.more-view .resources{grid-template-columns:220px 1fr}.more-view .share-banner{border-radius:17px}.more-view .share-banner h2{font:normal 28px var(--serif);margin:5px 0}.footer{padding:20px 0 85px}.app-bottom-nav{grid-template-columns:repeat(5,1fr)}.app-bottom-nav a.active{color:#f0c887}.app-bottom-nav a span{font-size:20px}.app-bottom-nav small{font-size:9px}
.optin-dialog{width:min(480px,calc(100vw - 24px));border:0;border-radius:16px;padding:25px;max-height:calc(100dvh - 30px);overflow:auto;box-shadow:0 30px 80px #06172869}.optin-dialog::backdrop{background:#07172cc7}.optin-dialog h2{font:normal 30px var(--serif);margin:5px 0}.optin-dialog p{font-size:12px;color:#647684}.optin-dialog label:not(.check-row){display:block;margin-top:11px}.optin-dialog label span{display:block;font-size:11px;font-weight:700;margin-bottom:4px}.optin-dialog input:not([type=checkbox]){width:100%;border:1px solid #ccd9e1;border-radius:7px;padding:10px}.optin-dialog .check-row{display:flex;align-items:start;gap:8px;margin-top:12px}.optin-dialog .check-row span{font-size:11px;font-weight:450;margin:0}.optin-dialog .button{margin-top:18px;width:100%}
@media(max-width:900px){.quick-grid{grid-template-columns:repeat(2,1fr)}.dashboard-row,.travel-grid{grid-template-columns:1fr}.travel-side{grid-template-columns:1fr 1fr}.attendee-grid,.sponsor-directory{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.app-header{height:62px}.app-view{min-height:calc(100dvh - 62px)}.app-view.section{padding:29px 0 92px}.app-hero.hero{background:linear-gradient(90deg,rgba(8,25,43,.96),rgba(8,25,43,.74)),url('assets/miami-event.webp') 62% center/cover no-repeat}.hero-inner{min-height:275px;padding:30px 20px}.hero-inner h1{font-size:43px}.hero-inner p{font-size:12px;max-width:320px}.hero-inner .hero-cta{display:flex;gap:8px;width:100%}.hero-inner .button{flex:1;padding:9px;font-size:11px;gap:3px}.dashboard{padding-top:24px}.home-heading h2{font-size:28px}.date-pill{font-size:8px;padding:5px 7px}.quick-grid{gap:9px}.quick-card{min-height:142px;padding:14px;border-radius:15px}.quick-card strong{font-size:14px}.quick-card small{font-size:10px}.quick-card .arrow{top:14px;right:14px}.dashboard-row,.travel-side,.travel-actions,.more-grid{grid-template-columns:1fr}.spotlight-card,.weather-card,.glass-panel{border-radius:15px}.spotlight-card,.weather-card{padding:20px}.home-shortcuts button{font-size:10px}.view-top h1{font-size:37px}.view-top p{font-size:12px}.people-grid,.attendee-grid,.sponsor-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-tabs{width:100%}.directory-tabs button{flex:1;padding:9px 5px;font-size:11px}.directory-intro{padding:20px}.directory-intro h2{font-size:25px}.travel-guide,.hotel-panel,.volunteers,.more-card{padding:21px}.travel-guide h2,.hotel-panel h2,.volunteers h2,.more-card h2{font-size:26px}.panel-heading{align-items:start;flex-direction:column}.shuttle-badge{font-size:9px}.volunteer-grid{grid-template-columns:1fr 1fr}.more-view .resources{display:block}.app-bottom-nav{height:calc(67px + env(safe-area-inset-bottom))}.app-bottom-nav a{gap:0}.app-bottom-nav a span{font-size:18px}.app-bottom-nav small{font-size:8px}.mila-launcher{bottom:calc(79px + env(safe-area-inset-bottom))}.mila-panel{bottom:calc(72px + env(safe-area-inset-bottom))}.footer{padding-bottom:100px}}
@media(max-width:360px){.hero-inner h1{font-size:38px}.quick-card{min-height:150px}.date-pill{display:none}.people-grid,.attendee-grid,.sponsor-directory{grid-template-columns:1fr 1fr}.volunteer-grid{grid-template-columns:1fr}.travel-guide .panel-buttons .button{width:100%}}
