:root{--ink:#111827;--muted:#687386;--line:#ece8e3;--bg:#f8f7f5;--card:#fff;--brand:#ff5a5f;--brand2:#ff7a59;--dark:#132238;--green:#177d6e;--gold:#b9822b;--blue:#3b6fe8;--shadow:0 14px 40px rgba(16,24,40,.09);--safe:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,a{font:inherit}button{color:inherit}.explore-app{width:min(100%,760px);margin:auto;min-height:100vh;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.02)}.app-topbar{height:calc(66px + env(safe-area-inset-top,0px));padding:calc(10px + env(safe-area-inset-top,0px)) 14px 8px;display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(18px);border-bottom:1px solid rgba(236,232,227,.9)}.back-btn,.circle-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;display:grid;place-items:center;text-decoration:none}.brand-lockup{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;text-align:left}.brand-dot{width:11px;height:11px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand2));box-shadow:0 0 0 5px #fff1ed}.brand-lockup small,.brand-lockup b{display:block}.brand-lockup small{font-size:9px;letter-spacing:.13em;font-weight:800;color:#8a7f74}.brand-lockup b{font-size:17px;letter-spacing:-.03em}.icon{width:20px;height:20px;display:block}.screen{display:none;padding:14px 14px calc(94px + var(--safe));min-height:calc(100vh - 66px)}.screen.active{display:block}.home-search{height:58px;background:#f6f3ef;border:1px solid #eee8e2;border-radius:18px;display:flex;align-items:center;gap:12px;padding:0 15px;margin-bottom:14px}.home-search span{color:#6f6a66}.home-search b,.home-search small{display:block}.home-search b{font-size:13px}.home-search small{font-size:10px;color:var(--muted);margin-top:2px}.hero-card{position:relative;height:430px;border-radius:28px;overflow:hidden;background-image:var(--hero);background-size:cover;background-position:center;box-shadow:0 18px 48px rgba(17,24,39,.14)}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,34,.05) 22%,rgba(10,20,34,.15) 48%,rgba(10,20,34,.88) 100%)}.hero-content{position:absolute;left:22px;right:22px;bottom:22px;color:#fff}.hero-tag{display:inline-flex;padding:7px 9px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.12);backdrop-filter:blur(10px);border-radius:999px;font-size:9px;letter-spacing:.11em;font-weight:850}.hero-content h1{font-size:42px;line-height:.94;letter-spacing:-.055em;margin:12px 0 10px}.hero-content p{margin:0;max-width:520px;font-size:13px;line-height:1.55;color:rgba(255,255,255,.83)}.hero-cta{display:flex;gap:8px;margin-top:17px}.hero-cta button{border:0;border-radius:14px;padding:11px 14px;font-size:12px;font-weight:800;background:#fff;color:#172033}.hero-cta .hero-ghost{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;backdrop-filter:blur(8px)}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:13px 0 21px}.quick-actions button{border:0;background:#fff;padding:12px 6px;border-radius:18px;display:grid;place-items:center;gap:5px;box-shadow:0 5px 22px rgba(17,24,39,.06);border:1px solid #f0ece8}.quick-actions button>span{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#fff3f0;color:#e95655}.quick-actions b{font-size:11px}.quick-actions small{font-size:8px;color:var(--muted);white-space:nowrap}.content-section{margin-top:22px}.section-heading,.screen-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.section-heading{margin:0 2px 10px}.section-heading small,.screen-head small{display:block;color:#8a7f74;font-size:9px;letter-spacing:.11em;font-weight:800}.section-heading h2,.screen-head h1{margin:4px 0 0;letter-spacing:-.045em}.section-heading h2{font-size:22px}.screen-head{align-items:center;margin:2px 2px 16px}.screen-head h1{font-size:29px;line-height:1}.section-heading button{border:0;background:none;color:#db5551;font-size:11px;font-weight:800}.featured-rail,.story-rail{display:flex;gap:11px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 1px 8px;scrollbar-width:none}.featured-rail::-webkit-scrollbar,.story-rail::-webkit-scrollbar{display:none}.featured-card{flex:0 0 74%;scroll-snap-align:start;border:0;border-radius:22px;overflow:hidden;background:#fff;text-align:left;box-shadow:0 8px 28px rgba(17,24,39,.08);border:1px solid #eee9e4;padding:0}.featured-photo{height:182px;background:#e9e6e1 center/cover no-repeat;position:relative}.featured-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(0,0,0,.25))}.featured-card .copy{padding:13px}.featured-card .copy small{color:#9b7352;font-size:8px;font-weight:850;letter-spacing:.08em}.featured-card .copy h3{margin:5px 0 4px;font-size:18px;letter-spacing:-.025em}.featured-card .copy p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.history-banner{margin-top:18px;padding:20px;border-radius:25px;background:linear-gradient(135deg,#132238,#263d5b);color:#fff;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end;position:relative;overflow:hidden}.history-banner:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-80px;top:-70px}.history-banner small{font-size:9px;letter-spacing:.12em;color:#ffd6c5;font-weight:800}.history-banner h2{font-size:23px;line-height:1.05;letter-spacing:-.04em;margin:8px 0}.history-banner p{font-size:11px;line-height:1.5;color:rgba(255,255,255,.72);max-width:470px}.history-banner span{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:800}.history-year{font-size:40px;font-weight:900;opacity:.17;letter-spacing:-.06em}.story-tile{flex:0 0 66%;border:1px solid #eee9e4;background:#fff;border-radius:20px;padding:15px;text-align:left;box-shadow:0 7px 22px rgba(17,24,39,.05)}.story-tile span{font-size:8px;letter-spacing:.1em;color:#8f6d50;font-weight:850}.story-tile h3{font-size:17px;margin:8px 0 5px}.story-tile p{font-size:11px;line-height:1.45;color:var(--muted);margin:0 0 12px}.story-tile b{font-size:10px;color:#db5551}.festival-card{height:300px;margin-top:20px;border-radius:26px;overflow:hidden;position:relative;background:var(--festival) center/cover no-repeat;color:#fff}.festival-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,16,26,.05),rgba(8,16,26,.82))}.festival-copy{position:absolute;left:18px;right:18px;bottom:18px}.festival-copy span{font-size:8px;letter-spacing:.12em;font-weight:800}.festival-copy h2{font-size:27px;letter-spacing:-.04em;margin:7px 0}.festival-copy p{font-size:11px;line-height:1.5;color:rgba(255,255,255,.78);max-width:480px}.festival-copy b{display:flex;align-items:center;gap:5px;font-size:11px}.passport-mini-card{margin-top:16px;border-radius:22px;border:1px solid #eee9e4;background:#fff;padding:13px;display:grid;grid-template-columns:56px 1fr 24px;align-items:center;gap:12px;box-shadow:0 7px 22px rgba(17,24,39,.05)}.passport-badge{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--brand) var(--p,0%),#f0ece8 0);font-size:12px;font-weight:900;position:relative}.passport-badge:after{content:"";position:absolute;width:42px;height:42px;background:#fff;border-radius:50%}.passport-badge{color:transparent}.passport-badge::before{content:attr(data-pct);position:absolute;z-index:2;color:var(--ink)}.passport-mini-card small{font-size:8px;letter-spacing:.1em;color:#8a7f74;font-weight:850}.passport-mini-card h3{margin:3px 0 3px;font-size:16px}.passport-mini-card p{font-size:10px;color:var(--muted);margin:0}.filter-chips,.story-tabs{display:flex;gap:7px;overflow-x:auto;margin-bottom:14px;scrollbar-width:none}.filter-chips button,.story-tabs button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:800}.filter-chips button.active,.story-tabs button.active{background:#172033;color:#fff;border-color:#172033}.place-list,.story-list{display:grid;gap:12px}.place-card{display:grid;grid-template-columns:122px minmax(0,1fr);gap:13px;border:1px solid #eee9e4;border-radius:21px;background:#fff;padding:8px;text-align:left;box-shadow:0 6px 24px rgba(17,24,39,.05)}.place-thumb{height:128px;border-radius:16px;background:#e9e6e1 center/cover no-repeat;position:relative;overflow:hidden}.place-thumb.no-photo{background:linear-gradient(135deg,#efe9e2,#e7efe9)}.place-thumb span{position:absolute;left:8px;bottom:8px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);font-size:8px;font-weight:850;padding:5px 7px;border-radius:999px}.place-copy{padding:5px 5px 3px 0;min-width:0}.place-copy small{font-size:8px;color:#8c745f;font-weight:800;letter-spacing:.07em}.place-copy h3{font-size:18px;margin:6px 0 5px;letter-spacing:-.03em}.place-copy p{font-size:11px;line-height:1.45;color:var(--muted);margin:0 0 9px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.place-meta{display:flex;gap:6px;flex-wrap:wrap}.place-meta span{font-size:8px;background:#f7f4f1;border-radius:999px;padding:5px 7px;color:#71675f}.passport-hero{background:linear-gradient(135deg,#15253d,#29435f);border-radius:26px;color:#fff;padding:18px;display:grid;grid-template-columns:86px 1fr;gap:16px;align-items:center}.passport-ring{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ff7a59 var(--pct,0%),rgba(255,255,255,.13) 0);position:relative}.passport-ring:after{content:"";position:absolute;width:62px;height:62px;border-radius:50%;background:#1b304b}.passport-ring span{position:relative;z-index:1;font-size:15px;font-weight:900}.passport-hero small{font-size:8px;letter-spacing:.1em;color:#ffc5b3}.passport-hero h2{margin:4px 0;font-size:23px}.passport-hero p{font-size:10px;color:rgba(255,255,255,.72);margin:0}.stamp-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.stamp-card{border:1px solid #eee9e4;background:#fff;border-radius:20px;padding:14px;text-align:left;min-height:132px}.stamp-card .stamp-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#f4f1ed;color:#8c8278}.stamp-card.done .stamp-icon{background:#fff0ec;color:#e45a55}.stamp-card b{display:block;font-size:13px;margin-top:10px}.stamp-card small{display:block;font-size:9px;line-height:1.35;color:var(--muted);margin-top:3px}.stamp-card i{font-style:normal;font-size:9px;color:#a29488;display:block;margin-top:8px}.stamp-card.done i{color:#177d6e}.journey-section{margin-top:24px}.trail-stack{display:grid;gap:9px}.trail-card{border:1px solid #eee9e4;background:#fff;border-radius:20px;padding:14px;text-align:left}.trail-card .top{display:flex;justify-content:space-between;gap:8px}.trail-card .top span,.trail-card .top b{font-size:8px}.trail-card .top span{color:#8a7f74;letter-spacing:.09em;font-weight:800}.trail-card h3{font-size:17px;margin:8px 0 4px}.trail-card p{font-size:10px;line-height:1.45;color:var(--muted);margin:0 0 10px}.trail-card strong{font-size:10px;color:#dc5651}.story-feature{height:280px;border-radius:25px;position:relative;background:var(--story-bg) center/cover no-repeat;overflow:hidden;color:#fff;margin-bottom:14px}.story-feature-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,34,.08),rgba(10,20,34,.82))}.story-feature>div:last-child{position:absolute;left:18px;right:18px;bottom:18px}.story-feature span{font-size:8px;letter-spacing:.11em;font-weight:850}.story-feature h2{font-size:26px;line-height:1.04;margin:7px 0}.story-feature p{font-size:10px;line-height:1.5;color:rgba(255,255,255,.76);max-width:500px}.story-card{border:1px solid #eee9e4;background:#fff;border-radius:20px;padding:14px;text-align:left;display:grid;grid-template-columns:44px 1fr auto;gap:11px;align-items:center}.story-card .story-icon{width:44px;height:44px;border-radius:14px;background:#fff3ef;color:#e25b56;display:grid;place-items:center}.story-card h3{font-size:15px;margin:0 0 3px}.story-card p{font-size:9.5px;line-height:1.4;color:var(--muted);margin:0}.story-card .meta{font-size:8px;color:#9a887b;margin-top:5px}.story-card .read{font-size:18px;color:#a39a91}.info-card{min-height:270px;border-radius:26px;background:var(--photo) center/cover no-repeat;position:relative;overflow:hidden;color:#fff}.info-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,16,26,.08),rgba(8,16,26,.82))}.info-card>div{position:absolute;z-index:1;left:18px;right:18px;bottom:18px}.info-card small{font-size:8px;letter-spacing:.11em;font-weight:850}.info-card h2{font-size:25px;margin:7px 0}.info-card p{font-size:10px;line-height:1.5;color:rgba(255,255,255,.78)}.more-menu{display:grid;gap:8px;margin-top:12px}.more-menu button{border:1px solid #eee9e4;background:#fff;border-radius:18px;padding:12px;display:grid;grid-template-columns:42px minmax(0,1fr) 22px;align-items:center;gap:10px;text-align:left}.more-menu button>span{width:42px;height:42px;border-radius:14px;background:#f6f2ee;color:#705f50;display:grid;place-items:center}.more-menu b,.more-menu small{display:block}.more-menu b{font-size:13px}.more-menu small{font-size:9px;color:var(--muted);margin-top:2px}.fact-card{margin-top:16px;border:1px solid #eee9e4;border-radius:22px;padding:15px;background:#fff}.fact-card>small{font-size:8px;letter-spacing:.1em;color:#8a7f74;font-weight:850}.fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.fact-grid div{background:#f8f6f3;border-radius:15px;padding:10px}.fact-grid b{display:block;font-size:22px}.fact-grid span{font-size:8.5px;line-height:1.3;color:var(--muted)}.app-bottom-nav{position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:max(8px,var(--safe));width:min(calc(100% - 16px),744px);height:70px;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:5px;background:rgba(255,255,255,.96);backdrop-filter:blur(22px);border:1px solid #ece7e2;border-radius:24px;box-shadow:0 16px 48px rgba(16,24,40,.16)}.app-bottom-nav button{border:0;background:transparent;border-radius:18px;color:#7d8695;display:grid;place-items:center;align-content:center;gap:3px}.app-bottom-nav button span{height:22px}.app-bottom-nav button small{font-size:8.5px;font-weight:800}.app-bottom-nav button.active{color:var(--brand);background:#fff2ef}.sheet{border:0;padding:0;width:min(100%,760px);max-width:none;margin:auto 0 0 50%;transform:translateX(-50%);border-radius:28px 28px 0 0;background:#fff;color:var(--ink);max-height:90vh;overflow:auto;box-shadow:0 -24px 70px rgba(16,24,40,.22)}.sheet::backdrop{background:rgba(16,24,40,.45);backdrop-filter:blur(4px)}.sheet-grabber{width:38px;height:4px;border-radius:99px;background:#e4dfda;margin:9px auto}.sheet-hero{height:260px;background:#eae6e1 center/cover no-repeat;position:relative}.sheet-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,20,34,.78))}.sheet-hero .title{position:absolute;z-index:1;left:18px;right:18px;bottom:16px;color:#fff}.sheet-hero .title span{font-size:8px;letter-spacing:.1em;font-weight:850}.sheet-hero h2{font-size:29px;margin:6px 0}.sheet-body{padding:17px 17px calc(28px + var(--safe))}.sheet-lead{font-size:14px;line-height:1.6;margin:0 0 14px;color:#354154}.sheet-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.sheet-facts div{background:#f7f4f1;border-radius:14px;padding:10px}.sheet-facts small,.sheet-facts b{display:block}.sheet-facts small{font-size:7.5px;letter-spacing:.08em;color:#8c8177}.sheet-facts b{font-size:10px;margin-top:3px}.sheet-section{margin-top:18px}.sheet-section small{font-size:8px;letter-spacing:.1em;color:#8a7f74;font-weight:850}.sheet-section h3{font-size:18px;margin:5px 0 7px}.sheet-section p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}.source-box{margin-top:18px;background:#f8f6f3;border-radius:15px;padding:12px;font-size:9px;line-height:1.45;color:#746a62}.sheet-actions{display:flex;gap:8px;margin-top:18px}.sheet-actions button{flex:1;border:0;border-radius:14px;padding:11px;font-weight:800;font-size:11px;background:#f5f2ef}.sheet-actions .primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff}.toast{position:fixed;z-index:100;left:50%;bottom:92px;transform:translate(-50%,14px);background:#172033;color:#fff;padding:10px 13px;border-radius:13px;font-size:10px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}.search-overlay{display:grid;gap:8px}.search-overlay input{height:48px;border-radius:15px;border:1px solid var(--line);padding:0 13px;font-size:16px}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.plan-grid button{border:1px solid var(--line);background:#fff;border-radius:16px;padding:13px;text-align:left}.plan-grid b,.plan-grid small{display:block}.plan-grid b{font-size:13px}.plan-grid small{font-size:9px;color:var(--muted);margin-top:2px}.itinerary{margin-top:12px;display:grid;gap:7px}.itinerary div{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;background:#f8f6f3;border-radius:14px;padding:9px}.itinerary span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:9px;font-weight:800}.itinerary b{font-size:11px}@media(min-width:761px){body{padding:18px 0}.explore-app{border-radius:30px;overflow:hidden;min-height:calc(100vh - 36px)}.app-topbar{top:18px}.app-bottom-nav{bottom:20px}.sheet{bottom:0}}@media(max-width:390px){.hero-card{height:390px}.hero-content h1{font-size:38px}.quick-actions small{display:none}.featured-card{flex-basis:82%}.story-tile{flex-basis:74%}.place-card{grid-template-columns:108px minmax(0,1fr)}.place-thumb{height:118px}.stamp-grid{gap:7px}.fact-grid{grid-template-columns:1fr 1fr}.fact-grid div:last-child{grid-column:1/-1}}

/* OKM40 v24 identity link */
.brand-lockup{display:flex;align-items:center;gap:9px}
.brand-okm-mini{width:36px;height:28px;object-fit:contain;background:#fff;border:1px solid #eee5df;border-radius:9px;padding:2px}


/* ===== Explore Longsa v30 — desktop application layout ===== */
html,body,button,input,select,textarea{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,"Noto Sans",sans-serif;
  font-synthesis:none;
}
h1,h2,h3,h4{font-family:inherit}
.desktop-explore-nav{display:none}

@media (min-width:1024px){
  :root{
    --brand:#c72c3a;
    --brand2:#8e1f2a;
    --bg:#f6f3f0;
    --line:#e7dfda;
    --ink:#17181c;
    --muted:#676c75;
    --shadow:0 12px 30px rgba(25,19,18,.07);
  }
  html,body{min-height:100%;background:var(--bg);}
  body{padding:0!important;overflow-x:hidden;}
  .explore-app{
    width:100%!important;
    max-width:none!important;
    min-height:100vh!important;
    margin:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:var(--bg)!important;
    overflow:visible!important;
  }
  .app-topbar{
    height:68px!important;
    top:0!important;
    padding:0 max(24px,calc((100vw - 1440px)/2 + 24px))!important;
    display:grid!important;
    grid-template-columns:auto minmax(190px,auto) minmax(430px,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
    background:rgba(255,255,255,.94)!important;
    border-bottom:1px solid var(--line)!important;
    backdrop-filter:blur(18px) saturate(1.1)!important;
    box-shadow:none!important;
  }
  .back-btn{
    width:38px!important;height:38px!important;border-radius:12px!important;
    border:1px solid var(--line)!important;background:#fff!important;
    transition:.16s ease;
  }
  .back-btn:hover{background:#fff4f4!important;border-color:#edcfd2!important;color:var(--brand)!important;transform:translateX(-1px)}
  .brand-lockup{justify-content:flex-start!important;gap:10px!important;min-width:205px!important;text-align:left!important}
  .brand-okm-mini{width:42px!important;height:34px!important;border:0!important;border-radius:0!important;padding:0!important;background:transparent!important}
  .brand-lockup small{font-size:9px!important;letter-spacing:.12em!important;color:#8a7771!important}
  .brand-lockup b{font-size:17px!important;line-height:1.1!important;color:var(--ink)!important}
  .desktop-explore-nav{display:flex!important;justify-content:center!important;align-items:center!important;gap:4px!important}
  .desktop-explore-nav button{
    min-height:38px!important;border:0!important;background:transparent!important;border-radius:11px!important;
    padding:0 13px!important;color:#686d76!important;font-size:12px!important;font-weight:760!important;cursor:pointer!important;
    transition:.16s ease;
  }
  .desktop-explore-nav button:hover{background:#f7f2ef!important;color:#8e1f2a!important}
  .desktop-explore-nav button.active{background:#fff0f1!important;color:var(--brand)!important}
  .circle-btn{width:38px!important;height:38px!important;border-radius:12px!important;box-shadow:none!important;transition:.16s ease}
  .circle-btn:hover{background:#fff4f4!important;color:var(--brand)!important;border-color:#edcfd2!important}
  .app-bottom-nav{display:none!important}
  #appMain{width:100%;max-width:1440px;margin:0 auto;}
  .screen{
    padding:22px 24px 42px!important;
    min-height:calc(100vh - 68px)!important;
  }
  .screen.active{display:block!important}
  .home-search{
    width:min(520px,100%);height:46px!important;border-radius:14px!important;margin:0 0 14px!important;
    background:#fff!important;box-shadow:none!important;border:1px solid var(--line)!important;
  }
  .home-search:hover{border-color:#d9ceca!important}
  .home-search b{font-size:12px!important}.home-search small{font-size:9.5px!important}

  /* Discover: compact, high-value desktop composition */
  .screen[data-screen="home"].active{
    display:grid!important;
    grid-template-columns:minmax(0,1.42fr) minmax(320px,.58fr)!important;
    grid-template-areas:
      "search search"
      "hero side"
      "featured featured"
      "history festival"
      "stories passport"!important;
    gap:16px 18px!important;
    align-items:start!important;
  }
  .screen[data-screen="home"] .home-search{grid-area:search!important}
  .screen[data-screen="home"] .hero-card{grid-area:hero!important}
  .screen[data-screen="home"] .quick-actions{grid-area:side!important}
  .screen[data-screen="home"]>.content-section:first-of-type{grid-area:featured!important}
  .screen[data-screen="home"]>.history-banner{grid-area:history!important}
  .screen[data-screen="home"]>.content-section:nth-of-type(2){grid-area:stories!important}
  .screen[data-screen="home"]>.festival-card{grid-area:festival!important}
  .screen[data-screen="home"]>.passport-mini-card{grid-area:passport!important}

  .hero-card{
    height:318px!important;border-radius:24px!important;box-shadow:0 16px 36px rgba(24,17,17,.11)!important;
  }
  .hero-content{left:24px!important;right:24px!important;bottom:22px!important;max-width:620px!important}
  .hero-content h1{font-size:44px!important;line-height:.96!important;margin:10px 0 8px!important}
  .hero-content p{font-size:12px!important;line-height:1.5!important;max-width:520px!important}
  .hero-cta{margin-top:13px!important}.hero-cta button{padding:10px 13px!important;border-radius:12px!important}

  .quick-actions{
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:0!important;
    align-self:start!important;
  }
  .quick-actions button{
    min-height:96px!important;border-radius:18px!important;padding:14px!important;
    display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;grid-template-rows:auto auto!important;
    justify-items:start!important;align-items:center!important;column-gap:11px!important;row-gap:2px!important;
    text-align:left!important;box-shadow:none!important;background:#fff!important;border:1px solid var(--line)!important;
    transition:.16s ease;
  }
  .quick-actions button:hover{transform:translateY(-1px);border-color:#ddceca!important;box-shadow:0 8px 18px rgba(24,17,17,.05)!important}
  .quick-actions button>span{grid-row:1/3!important;width:40px!important;height:40px!important;border-radius:13px!important;background:#fff0f1!important;color:var(--brand)!important}
  .quick-actions b{font-size:12px!important;align-self:end!important}
  .quick-actions small{font-size:9px!important;white-space:normal!important;align-self:start!important}

  .content-section{margin-top:0!important}
  .section-heading{margin:0 0 10px!important;align-items:center!important}
  .section-heading small,.screen-head small{font-size:9px!important;letter-spacing:.11em!important;color:#8b746d!important}
  .section-heading h2{font-size:20px!important;margin-top:3px!important}
  .section-heading button{font-size:11px!important;color:var(--brand)!important}
  .featured-rail{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;
    overflow:visible!important;padding:0!important;
  }
  .featured-card{width:auto!important;min-width:0!important;flex:auto!important;border-radius:18px!important;box-shadow:none!important;border:1px solid var(--line)!important;transition:.16s ease}
  .featured-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(24,17,17,.06)!important}
  .featured-photo{height:142px!important}
  .featured-card .copy{padding:12px!important}
  .featured-card .copy h3{font-size:16px!important;margin:4px 0!important}
  .featured-card .copy p{font-size:10.5px!important;-webkit-line-clamp:2!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;overflow:hidden!important}

  .history-banner,.festival-card{
    min-height:210px!important;height:210px!important;margin-top:0!important;border-radius:22px!important;
  }
  .history-banner{padding:20px!important;background:linear-gradient(145deg,#171b22,#273242)!important}
  .history-banner h2{font-size:22px!important;max-width:500px!important}
  .history-banner p{font-size:10.5px!important;max-width:500px!important}
  .history-year{font-size:52px!important}
  .festival-copy h2{font-size:23px!important}
  .festival-copy p{font-size:10.5px!important;max-width:430px!important}

  .story-rail{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;
    overflow:visible!important;padding:0!important;
  }
  .story-tile{width:auto!important;min-width:0!important;flex:auto!important;min-height:154px!important;border-radius:18px!important;box-shadow:none!important;border:1px solid var(--line)!important;padding:14px!important;transition:.16s ease}
  .story-tile:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(24,17,17,.05)!important}
  .story-tile h3{font-size:15px!important;margin:6px 0 4px!important}
  .story-tile p{font-size:10.5px!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .passport-mini-card{
    margin-top:0!important;min-height:154px!important;height:100%!important;border-radius:20px!important;box-shadow:none!important;
    border:1px solid var(--line)!important;background:linear-gradient(180deg,#fff,#fff8f7)!important;padding:16px!important;
    align-self:stretch!important;
  }

  /* Shared screen headings */
  .screen-head{margin:2px 0 14px!important;align-items:center!important}
  .screen-head h1{font-size:28px!important;line-height:1.05!important}
  .filter-chips,.story-tabs{margin-bottom:14px!important;overflow:visible!important;flex-wrap:wrap!important}
  .filter-chips button,.story-tabs button{padding:8px 12px!important;font-size:10px!important}
  .filter-chips button.active,.story-tabs button.active{background:#17181c!important;border-color:#17181c!important}

  /* Places: three-column app cards */
  .place-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  .place-card{
    grid-template-columns:126px minmax(0,1fr)!important;min-height:150px!important;border-radius:18px!important;
    box-shadow:none!important;border:1px solid var(--line)!important;padding:8px!important;transition:.16s ease!important;
  }
  .place-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(24,17,17,.05)!important;border-color:#ddceca!important}
  .place-thumb{height:132px!important;border-radius:14px!important}
  .place-copy h3{font-size:16px!important;margin:5px 0 4px!important}
  .place-copy p{font-size:10px!important;-webkit-line-clamp:3!important;margin-bottom:7px!important}
  .place-copy small,.place-meta span{font-size:8px!important}

  /* Passport: split summary + collection, trails beneath */
  .screen[data-screen="passport"].active{
    display:grid!important;grid-template-columns:340px minmax(0,1fr)!important;grid-template-areas:
      "head head"
      "hero stamps"
      "trails trails"!important;gap:14px 18px!important;align-items:start!important;
  }
  .screen[data-screen="passport"] .screen-head{grid-area:head!important;margin-bottom:0!important}
  .screen[data-screen="passport"] .passport-hero{grid-area:hero!important;min-height:206px!important;border-radius:22px!important;align-content:center!important;background:linear-gradient(145deg,#171b22,#293444)!important}
  .screen[data-screen="passport"] .stamp-grid{grid-area:stamps!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:0!important}
  .stamp-card{min-height:98px!important;border-radius:16px!important;box-shadow:none!important}
  .screen[data-screen="passport"] .journey-section{grid-area:trails!important;margin-top:4px!important}
  .trail-stack{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
  .trail-card{min-height:150px!important;border-radius:18px!important;box-shadow:none!important}

  /* Stories: editorial feature left, compact story registry right */
  .screen[data-screen="stories"].active{
    display:grid!important;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr)!important;grid-template-areas:
      "head head"
      "feature tabs"
      "feature list"!important;gap:12px 18px!important;align-items:start!important;
  }
  .screen[data-screen="stories"] .screen-head{grid-area:head!important;margin-bottom:0!important}
  .screen[data-screen="stories"] .story-feature{grid-area:feature!important;height:430px!important;min-height:430px!important;margin:0!important;border-radius:22px!important;position:sticky!important;top:88px!important}
  .screen[data-screen="stories"] .story-tabs{grid-area:tabs!important;margin:0!important;align-self:end!important}
  .screen[data-screen="stories"] .story-list{grid-area:list!important;grid-template-columns:1fr!important;gap:8px!important}
  .story-card{min-height:90px!important;border-radius:16px!important;box-shadow:none!important;border:1px solid var(--line)!important;padding:12px!important;transition:.16s ease}
  .story-card:hover{background:#fffaf9!important;border-color:#ddceca!important}
  .story-card h3{font-size:14px!important;margin:0 0 3px!important}
  .story-card p{font-size:10.5px!important;line-height:1.4!important;margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}

  /* Plan & Know: one feature + compact utility grid */
  .screen[data-screen="more"].active{
    display:grid!important;grid-template-columns:minmax(340px,.85fr) minmax(0,1.15fr)!important;grid-template-areas:
      "head head"
      "people menu"
      "facts facts"!important;gap:14px 18px!important;align-items:start!important;
  }
  .screen[data-screen="more"] .screen-head{grid-area:head!important;margin-bottom:0!important}
  .screen[data-screen="more"] .people-card{grid-area:people!important;min-height:310px!important;height:310px!important;margin:0!important;border-radius:22px!important}
  .screen[data-screen="more"] .more-menu{grid-area:menu!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:0!important}
  .more-menu button{min-height:145px!important;border-radius:18px!important;box-shadow:none!important;border:1px solid var(--line)!important;padding:14px!important;align-items:flex-start!important}
  .screen[data-screen="more"] .fact-card{grid-area:facts!important;margin-top:0!important;border-radius:20px!important;box-shadow:none!important;border:1px solid var(--line)!important}
  .fact-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

  /* Desktop details become an inspector, not a mobile bottom sheet */
  .sheet{
    width:min(520px,42vw)!important;
    height:100dvh!important;max-height:none!important;
    margin:0 0 0 auto!important;
    transform:none!important;
    border-radius:24px 0 0 24px!important;
    overflow:auto!important;
    box-shadow:-24px 0 70px rgba(16,24,40,.18)!important;
  }
  .sheet-grabber{display:none!important}
  .sheet-hero{height:245px!important}
  .sheet-body{padding:18px 20px 28px!important}
  .sheet::backdrop{background:rgba(17,18,20,.26)!important;backdrop-filter:blur(2px)!important}
}

@media (min-width:1024px) and (max-width:1199px){
  .app-topbar{grid-template-columns:auto minmax(170px,auto) 1fr auto!important;padding-left:18px!important;padding-right:18px!important;gap:10px!important}
  .brand-lockup small{display:none!important}
  .desktop-explore-nav button{padding:0 9px!important;font-size:11px!important}
  .screen{padding-left:18px!important;padding-right:18px!important}
  .screen[data-screen="home"].active{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)!important}
  .featured-rail{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .place-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .story-rail{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media (min-width:1440px){
  .screen{padding-left:32px!important;padding-right:32px!important}
  .hero-card{height:332px!important}
  .featured-photo{height:156px!important}
  .place-card{grid-template-columns:138px minmax(0,1fr)!important}
  .place-thumb{height:138px!important}
}
.site-credit{margin:8px 18px calc(86px + var(--safe));padding:16px 8px 10px;border-top:1px solid #ece8e3;display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap}
.site-credit p{margin:0;color:#7a7578;font-size:11px;line-height:1.55}
.site-credit p:first-child{text-align:left}
.site-credit p:last-child{text-align:right;margin-left:auto}
.site-credit a{color:#c92935;font-weight:750;text-decoration:none}
.site-credit a:hover{text-decoration:underline}
@media(min-width:900px){.site-credit{margin-bottom:28px}}
